/*
Theme Name: PDC
*/

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

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

body {
  line-height: 1;
}

ol,
ul {
  list-style: none;
}

blockquote,
q {
  quotes: none;
}

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

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

.clearfix:after {
  content: ".";
  display: block;
  clear: both;
  height: 0;
  visibility: hidden;
}

body {
  font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo,
    "Helvetica Neue", Helvetica, Arial, sans-serif;
}

body a,
html a {
  color: #000;
  text-decoration: none;
  font-weight: 500;
}

body img,
html img {
  margin: 0;
  padding: 0;
  vertical-align: bottom;
  max-width: 100%;
  height: auto;
}

html {
  position: relative;
  min-height: 100%;
}

body {
  /*margin-bottom: 100px;*/
  margin-bottom: 627px;
}

.sp {
  display: none;
}

.pc {
  display: block;
}

header {
  position: fixed;
  width: 100%;
  height: 152px;
  border-bottom: 1px solid #e6e6e6;
  background: #fff;
  z-index: 4;
}

header .head_wrap {
  position: relative;
  width: 1200px;
  height: 152px;
  margin: 0 auto;
}

header .head_wrap h1 {
  width: 65px;
  position: relative;
  padding: 26px 40px;
  -webkit-transition: opacity 0.2s linear;
  transition: opacity 0.2s linear;
}

header .head_wrap h1:hover {
  opacity: 0.6;
  filter: alpha(opacity=60);
  -webkit-transition: opacity 0.2s linear;
  transition: opacity 0.2s linear;
}

header .head_wrap h1 img {
  width: 100%;
  height: auto;
}

header .head_wrap p {
  width: 65px;
  position: relative;
  padding: 26px 40px;
  -webkit-transition: opacity .2s linear;
  transition: opacity .2s linear;
}

header .head_wrap p:hover {
  opacity: 0.6;
  filter: alpha(opacity=60);
  -webkit-transition: opacity .2s linear;
  transition: opacity .2s linear;
}

header .head_wrap p img {
  width: 100%;
  height: auto;
}
header .head_wrap nav .gl_menu {
  position: relative;
  margin-top: 5px;
}

header .head_wrap nav .gl_menu li {
  float: left;
  padding-left: 16px;
}

header .head_wrap nav .gl_menu li.nx_link--sp {
  display: none;
}

header .head_wrap nav .gl_menu li.active a,
header .head_wrap nav .gl_menu li.active .gl_menu_item {
  color: #0056a8;
}

header .head_wrap nav .gl_menu li a,
header .head_wrap nav .gl_menu li .gl_menu_item {
  position: relative;
  display: block;
  padding: 0 20px;
  font-size: 10px;
  z-index: 1;
  text-align: center;
  -webkit-transition: color 0.2s linear;
  transition: color 0.2s linear;
}

header .head_wrap nav .gl_menu li a:hover,
header .head_wrap nav .gl_menu li .gl_menu_item:hover {
  color: #0056a8;
  -webkit-transition: color 0.2s linear;
  transition: color 0.2s linear;
}

header .head_wrap nav .gl_menu li a span,
header .head_wrap nav .gl_menu li .gl_menu_item span {
  font-size: 17px;
  font-family: "Roboto Condensed", sans-serif;
  display: block;
  margin-bottom: 4px;
  font-weight: 700;
}

header .head_wrap nav .gl_menu li a.sp {
  display: none;
}

header .head_wrap nav .gl_menu li div {
  position: relative;
  display: block;
  text-align: center;
  cursor: pointer;
  -webkit-transition: color 0.2s linear;
  transition: color 0.2s linear;
}
header .head_wrap nav .gl_menu li div:hover {
  color: #0056a8;
  -webkit-transition: color 0.2s linear;
  transition: color 0.2s linear;
}

header .head_wrap nav .gl_menu li div .nx_link {
  position: absolute;
  top: 0;
  left: 20px;
  padding-top: 45px;
  display: none;
}
header .head_wrap nav .gl_menu li div .nx_link a {
  font-size: 13px;
  color: #fff;
  display: block;
  background-color: rgba(4, 89, 169, 0.9);
  padding: 25px;
  width: 240px;
  text-align: left;
  border-top: 1px solid #4b95da;
  opacity: 1;
  transition: opacity 0.2s ease;
}
header .head_wrap nav .gl_menu li div .nx_link a:hover {
  opacity: 0.8;
  transition: opacity 0.2s ease;
}
header .head_wrap nav .gl_menu li div .nx_link a:first-child {
  border-top: none;
}
header .head_wrap nav .gl_menu li div:hover .nx_link {
  display: block;
}

header .head_wrap nav .gl_tp {
  position: absolute;
  top: 14px;
  right: 170px;
}
header .head_wrap nav .gl_tp .gl_btn {
  float: left;
  display: inline-block;
  padding: 18px;
  background-color: #0459a9;
  color: #fff;
  font-size: 14px;
  border-radius: 5px;
  transition: background-color 0.2s ease;
}
header .head_wrap nav .gl_tp .gl_btn:hover {
  background-color: #ff760b;
  transition: background-color 0.2s ease;
}
header .head_wrap nav .gl_tp .gl_tel {
  float: left;
  font-size: 11px;
  margin-top: 4px;
  margin-left: 30px;
}
header .head_wrap nav .gl_tp .gl_tel span {
  display: block;
  font-size: 30px;
  color: #0459a9;
  font-family: "Roboto Condensed", sans-serif;
  margin-top: 3px;
  font-weight: bold;
}

header .head_wrap .glass {
  position: absolute;
  top: 30px;
  cursor: pointer;
  right: 110px;
  width: 20px;
  height: 20px;
  padding: 0;
}

header .head_wrap .glass img {
  position: absolute;
  /*top: 48px;
  right: 30px;*/
  width: 20px;
  height: 20px;
  -webkit-transition: opacity 0.1s linear;
  transition: opacity 0.1s linear;
}

header .head_wrap .glass img.on {
  opacity: 0;
  filter: alpha(opacity=0);
}

header .head_wrap .glass img.close {
  opacity: 0;
  filter: alpha(opacity=0);
}

header .head_wrap .glass img.active {
  opacity: 1;
  filter: alpha(opacity=100);
  -webkit-transition: opacity 0.1s linear;
  transition: opacity 0.1s linear;
}

header .head_wrap .glass img.passive {
  opacity: 0;
  filter: alpha(opacity=0);
  -webkit-transition: opacity 0.1s linear;
  transition: opacity 0.1s linear;
}

header .head_wrap .glass:hover .off {
  opacity: 0;
  filter: alpha(opacity=0);
}

header .head_wrap .glass:hover .on {
  opacity: 1;
  filter: alpha(opacity=100);
}

header .head_wrap .glass:hover .passive {
  opacity: 0;
  filter: alpha(opacity=0);
}

header .head_wrap .search {
  display: none;
  position: absolute;
  top: 65px;
  right: 0;
  padding: 8px;
  background: #0056a8;
  z-index: 2;
}

header .head_wrap .search input[type="search"] {
  border-radius: 4px;
  border: none;
  padding: 6px;
  color: #4f4f4f;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  outline: none;
}

.topic_path {
  padding-top: 153px;
  width: 100%;
  height: 30px;
  border-bottom: 1px solid #e6e6e6;
  margin-bottom: 30px;
}

.topic_path ul {
  max-width: 1120px;
  min-width: 1120px;
  margin: 0 auto;
  padding: 0 40px;
}

.topic_path ul li {
  display: inline-block;
  font-size: 10px;
  line-height: 30px;
  color: #505050;
}

.topic_path ul li a {
  text-decoration: underline;
  -webkit-transition: opacity 0.2s linear;
  transition: opacity 0.2s linear;
  color: #505050;
}

.topic_path ul li a:hover {
  opacity: 0.6;
  filter: alpha(opacity=60);
  -webkit-transition: opacity 0.2s linear;
  transition: opacity 0.2s linear;
}

.topic_path ul li:not(:last-child):after {
  content: ">";
  padding-left: 6px;
}

#home .contents h2 {
  font-size: 13px;
  margin-bottom: 20px;
}

#home .contents h2 span {
  display: inline-block;
  font-size: 44px;
  font-family: "Roboto Condensed", sans-serif;
  letter-spacing: 1px;
  letter-spacing: 0.12rem;
  margin-bottom: 12px;
  vertical-align: -5px;
  margin-right: 10px;
}

#home .contents .line {
  width: 30px;
  height: 2px;
  background: #0056a8;
  margin-bottom: 30px;
}

.contents .works .works_wrap ul .commercial .bd_lb,
.contents .works .works_wrap ul .commercial .bd_lt,
.contents .works .works_wrap ul .commercial .bd_rt,
.contents .works .works_wrap ul .commercial .bd_rb {
  background: #f8599d;
}

.contents .works .works_wrap ul .large .bd_lb,
.contents .works .works_wrap ul .large .bd_lt,
.contents .works .works_wrap ul .large .bd_rt,
.contents .works .works_wrap ul .large .bd_rb {
  background: #1c6be3;
}

.contents .works .works_wrap ul .public .bd_lb,
.contents .works .works_wrap ul .public .bd_lt,
.contents .works .works_wrap ul .public .bd_rt,
.contents .works .works_wrap ul .public .bd_rb {
  background: #7fc702;
}

.contents .works .works_wrap ul .traffic .bd_lb,
.contents .works .works_wrap ul .traffic .bd_lt,
.contents .works .works_wrap ul .traffic .bd_rt,
.contents .works .works_wrap ul .traffic .bd_rb {
  background: #fc7f04;
}

.contents .works .works_wrap ul .movie .bd_lb,
.contents .works .works_wrap ul .movie .bd_lt,
.contents .works .works_wrap ul .movie .bd_rt,
.contents .works .works_wrap ul .movie .bd_rb {
  background: #fe325d;
}

.contents .works .works_wrap ul .office .bd_lb,
.contents .works .works_wrap ul .office .bd_lt,
.contents .works .works_wrap ul .office .bd_rt,
.contents .works .works_wrap ul .office .bd_rb {
  background: #029563;
}

.contents .works .works_wrap ul .others .bd_lb,
.contents .works .works_wrap ul .others .bd_lt,
.contents .works .works_wrap ul .others .bd_rt,
.contents .works .works_wrap ul .others .bd_rb {
  background: #8018a2;
}

.contents .works .works_wrap ul .store .bd_lb,
.contents .works .works_wrap ul .store .bd_lt,
.contents .works .works_wrap ul .store .bd_rt,
.contents .works .works_wrap ul .store .bd_rb {
  background: #000;
}
/**/
.works .works_wrap ul .commercial .wo_fot p.project {
  background-color: #f8599d;
}

.works .works_wrap ul .large .wo_fot p.project {
  background-color: #1c6be3;
}

.works .works_wrap ul .public .wo_fot p.project {
  background-color: #7fc702;
}

.works .works_wrap ul .traffic .wo_fot p.project {
  background-color: #fc7f04;
}

.works .works_wrap ul .movie .wo_fot p.project {
  background-color: #fe325d;
}

.works .works_wrap ul .office .wo_fot p.project {
  background-color: #029563;
}

.works .works_wrap ul .others .wo_fot p.project {
  background-color: #8018a2;
}
/**/
.works_list h2,
.works_detail h2,
.news_list h2,
.news_detail h2,
.contact_top h2,
.contact_form h2,
.contact_privacy h2,
.contact_conform h2,
.about h2,
.corporate h2,
.__corporate h2,
.service_top h2,
.service_detail h2,
.recruit_top h2,
.recruit_privacy h2,
.recruit_message h2,
.recruit_interview h2,
.carrier_top h2,
.recruit_job h2,
.download h2,
.mailmagazine h2 {
  font-size: 14px;
  margin-bottom: 18px;
  letter-spacing: 1px;
  letter-spacing: 0.12rem;
}

.works_list h2 span,
.works_detail h2 span,
.news_list h2 span,
.news_detail h2 span,
.contact_top h2 span,
.contact_form h2 span,
.contact_privacy h2 span,
.contact_conform h2 span,
.about h2 span,
.corporate h2 span,
.__corporate h2 span,
.service_top h2 span,
.service_detail h2 span,
.recruit_top h2 span,
.recruit_privacy h2 span,
.recruit_message h2 span,
.recruit_interview h2 span,
.carrier_top h2 span,
.recruit_job h2 span,
.download h2 span,
.mailmagazine h2 span {
  display: inline;
  font-size: 38px;
  font-family: "Roboto Condensed", sans-serif;
  padding-right: 10px;
  vertical-align: -5px;
}

.works_list h2 span:after,
.works_detail h2 span:after,
.news_list h2 span:after,
.news_detail h2 span:after,
.contact_top h2 span:after,
.contact_form h2 span:after,
.contact_privacy h2 span:after,
.contact_conform h2 span:after,
.about h2 span:after,
.corporate h2 span:after,
.__corporate h2 span:after,
.service_top h2 span:after,
.service_detail h2 span:after,
.recruit_top h2 span:after,
.recruit_privacy h2 span:after,
.recruit_message h2 span:after,
.recruit_interview h2 span:after,
.carrier_top h2 span:after,
.recruit_job h2 span:after,
.download h2 span:after,
.mailmagazine h2 span:after {
  content: "/";
  margin-left: 8px;
}

.works_list .line,
.works_detail .line,
.news_list .line,
.news_detail .line,
.contact_top .line,
.contact_form .line,
.contact_privacy .line,
.contact_conform .line,
.about .line,
.corporate .line,
.__corporate .line,
.service_top .line,
.service_detail .line,
.recruit_top .line,
.recruit_privacy .line,
.recruit_message .line,
.recruit_interview .line,
.carrier_top .line,
.recruit_job .line,
.download .line,
.mailmagazine .line {
  width: 30px;
  height: 2px;
  background: #0056a8;
  margin-bottom: 54px;
}

footer {
  position: absolute;
  bottom: 0;
  width: 100%;
  background: #00000b;
}

footer .footer_wrap {
  width: 100%;
  max-width: 1120px;
  min-width: 1120px;
  position: relative;
  margin: 0 auto;
  background: #00000b;
  overflow: hidden;
  padding: 30px 40px;
}

footer .footer_wrap .ft_navi {
  width: 372px;
  float: left;
}

footer .footer_wrap .ft_navi .ft_navi_list {
  margin: 30px 0;
}

footer .footer_wrap .ft_navi .ft_navi_list a {
  font-size: 14px;
  color: #fff;
  opacity: 1;
  transition: opacity 0.2s linear;
}
footer .footer_wrap .ft_navi .ft_navi_list a:before {
  content: "";
  display: inline-block;
  vertical-align: 0;
  margin-right: 8px;
  width: 8px;
  height: 11px;
  background: url("img/common/arrow_right.svg") no-repeat center center;
  background-size: 8px 11px;
}
footer .footer_wrap .ft_navi .ft_navi_list a:hover {
  opacity: 0.6;
  transition: opacity 0.2s linear;
}

footer .footer_wrap .ft_dtnavi {
  margin: 15px 0 0 35px;
}

footer .footer_wrap .ft_dtnavi .ft_dtnavi_list {
  margin: 10px 0;
}

footer .footer_wrap .ft_dtnavi .ft_dtnavi_list a {
  font-size: 12px;
  color: #fff;
  opacity: 1;
  transition: opacity 0.2s linear;
}
footer .footer_wrap .ft_dtnavi .ft_dtnavi_list a:before {
  display: none;
}

footer .footer_wrap .ft_dtnavi .ft_dtnavi_list a:hover {
  opacity: 0.6;
  transition: opacity 0.2s linear;
}

footer .copyright {
  width: 100%;
  display: block;
  font-size: 10px;
  color: #fff;
  font-family: "Roboto Condensed", sans-serif;
  letter-spacing: 0.1em;
  padding: 30px 0;
  margin: 0 auto;
  text-align: center;
  border-top: 1px solid #191919;
}

.pagetop {
  position: absolute;
  bottom: 670px;
  right: 40px;
  cursor: pointer;
  width: 40px;
  -webkit-transition: opacity 0.3s linear;
  transition: opacity 0.3s linear;
}

.pagetop img {
  width: 100%;
}

.pagetop:hover {
  opacity: 0.6;
  filter: alpha(opacity=60);
  -webkit-transition: opacity 0.3s linear;
  transition: opacity 0.3s linear;
}

@media screen and (min-width: 768px) {
  header .head_wrap nav .gl_menu li.nx_link--sp {
    display: none !important;
  }
}

@media screen and (max-width: 768px) {
  body {
    margin-bottom: 0;
  }
  .sp {
    display: block;
  }
  .pc {
    display: none;
  }
  a {
    background: transparent;
    -webkit-touch-callout: none;
    -webkit-tap-highlight-color: transparent;
  }
  a:hover {
    -webkit-tap-highlight-color: #f0f0f0;
    background: #f0f0f0;
  }
  header {
    position: fixed;
    z-index: 4;
    height: 50px;
  }
  header .head_wrap {
    max-width: 100%;
    min-width: 100%;
    height: 50px;
  }
  header .head_wrap .search_sp {
    display: block;
  }
  header .head_wrap p {
    width: 54px;
    height: 29.8906px;
    position: absolute;
    top: 50%;
    left: 3.648%;
    margin-top: -14.5px;
    padding: 0;
    z-index: 2;
  }
  header .head_wrap p img {
    width: 100%;
    height: auto;
  }
  header .head_wrap p a {
    display: block;
    width: 100%;
    height: 100%;
  }
  header .head_wrap p:hover {
    opacity: 1;
    filter: alpha(opacity=100);
  }
  header .head_wrap .gl_menu_sp {
    width: 24px;
    height: 21px;
    position: absolute;
    right: 3.648%;
    top: 15px;
  }
  header .head_wrap .close {
    background: url("img/common/header/btn_menu_x.png") no-repeat center top;
    -webkit-background-size: contain;
    background-size: contain;
  }
  header .head_wrap .close .menu-trigger {
    display: none;
  }
  header .head_wrap .menu-trigger span {
    display: inline-block;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
  }
  header .head_wrap .menu-trigger {
    position: relative;
    width: 24px;
    height: 20px;
    border-bottom: 1px solid #e6e6e6;
  }
  header .head_wrap .menu-trigger span {
    position: absolute;
    left: 0;
    width: 100%;
    height: 3px;
    background-color: #000;
  }
  header .head_wrap .menu-trigger span:nth-of-type(1) {
    top: 0;
  }
  header .head_wrap .menu-trigger span:nth-of-type(2) {
    top: 50%;
    left: 50%;
    -webkit-transform: translate3d(-50%, -50%, 0);
    transform: translate3d(-50%, -50%, 0);
  }
  header .head_wrap .menu-trigger span:nth-of-type(3) {
    bottom: 0;
  }
  header .head_wrap nav .global_menu {
    width: 100%;
    position: absolute;
    top: 51px;
    background: #fff;
    display: none;
  }
  header .head_wrap nav .gl_menu {
    clear: both;
    position: static;
    background: #fff;
  }
  header .head_wrap nav .gl_menu li {
    width: 50%;
    float: left;
    text-align: center;
    font-size: 12px;
    background: #fff;
    margin: 0;
    padding: 0;
  }
  header .head_wrap nav .gl_menu li a,
  header .head_wrap nav .gl_menu li .gl_menu_wrap {
    padding: 0;
    display: block;
    padding: 15px 0;
    border-top: 1px solid #e6e6e6;
    border-left: 1px solid #e6e6e6;
  }
  header .head_wrap nav .gl_menu li .gl_menu_wrap {
    position: relative;
  }
  header .head_wrap nav .gl_menu li .gl_menu_wrap:before,
  header .head_wrap nav .gl_menu li .gl_menu_wrap:after {
    content: "";
    position: absolute;
    right: 10px;
    top: 50%;
    width: 9px;
    height: 1px;
    background-color: #000;
    transition: transform 0.2s ease;
  }
  header .head_wrap nav .gl_menu li .gl_menu_wrap:after {
    transform: rotate(90deg);
  }
  header .head_wrap nav .gl_menu li .gl_menu_wrap[data-is-open="true"]:after {
    transform: rotate(0);
  }
  header .head_wrap nav .gl_menu li .gl_menu_wrap[data-is-open="true"] .nx_link {
    display: none;
  }
  header .head_wrap nav .gl_menu li.nx_link--sp {
    display: none;
    background-color: #0459a9;
    padding: 16px 0;
    width: 100%;
  }

  header .head_wrap nav .gl_menu li.nx_link--sp p {
    display: inline-flex;
    justify-content: center;
  }

  header .head_wrap nav .gl_menu li.nx_link--sp p a {
    color: #fff;
    border: none;
    padding: 4px 24px;
    padding-left: 32px;
    background: url("./img/common/circleArrow--blue.svg") center left 16px no-repeat;
    background-size: 12px auto;
    font-size: 12px;
    display: inline-block;
    position: relative;
  }
  header .head_wrap nav .gl_menu li.nx_link--sp p a:before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    width: 1px;
    height: 100%;
    background-color: #fff;
  }
  header .head_wrap nav .gl_menu li.nx_link--sp p a:first-child:before {
    display: none;
  }

  header .head_wrap nav .gl_menu li a.sp {
    display: block;
  }
  header .head_wrap nav .gl_menu li span {
    display: block;
    font-size: 20px;
    font-family: "Roboto Condensed", sans-serif;
    margin-bottom: 4px;
    font-weight: 700;
  }
  header .head_wrap nav .gl_menu li div {
  }
  header .head_wrap nav .gl_menu li div .nx_link {
    display: none;
  }
  header .head_wrap nav .gl_menu li div:hover .nx_link {
    display: none;
  }

  header .head_wrap nav .gl_tp {
    position: relative;
    top: auto;
    right: auto;
  }
  header .head_wrap nav .gl_tp .gl_btn {
    float: left;
    display: block;
    width: 50%;
    padding: 10px 0;
    background-color: #0459a9;
    color: #fff;
    font-size: 12px;
    line-height: 1.4;
    border-radius: 0;
    text-align: center;
    transition: none;
  }
  header .head_wrap nav .gl_tp .gl_btn:hover {
    background-color: #0459a9;
    transition: none;
  }
  header .head_wrap nav .gl_tp .gl_tel {
    float: left;
    display: block;
    width: 50%;
    font-size: 10px;
    margin: 0;
    margin-top: 10px;
    text-align: center;
  }
  header .head_wrap nav .gl_tp .gl_tel span {
    display: block;
    font-size: 22px;
    color: #0459a9;
    font-family: "Roboto Condensed", sans-serif;
    margin-top: 3px;
    font-weight: bold;
  }

  header .head_wrap nav .northamerica {
    position: relative;
    top: auto;
    right: auto;
    background: #fff;
    width: 100%;
    border-top: 1px solid #e6e6e6;
  }
  header .head_wrap nav .northamerica a {
    margin-top: 0;
    font-size: 16px;
    position: static;
    width: 100%;
    display: block;
    padding: 18px 0;
    text-align: center;
    font-family: "Roboto Condensed", sans-serif;
    letter-spacing: 0.1em;
    font-weight: bold;
    border-bottom: 1px solid #e6e6e6;
  }
  header .head_wrap nav .search_sp {
    width: 100%;
    background: #fff;
    padding: 14px 0;
    border-bottom: 1px solid #e6e6e6;
  }
  header .head_wrap nav .search_sp input,
  header .head_wrap nav .search_sp button,
  header .head_wrap nav .search_sp textarea,
  header .head_wrap nav .search_sp select {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    margin: 0;
    padding: 0;
    background: none;
    border: none;
    border-radius: 0;
    outline: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
  }
  header .head_wrap nav .search_sp input[type="submit"] {
    float: left;
    display: block;
    width: 26px;
    height: 26px;
    padding: 0;
    margin-top: 10px;
    background: url("img/common/header/icon_glass_off.png") no-repeat 0 0;
    -webkit-background-size: contain;
    background-size: contain;
    border: none;
    color: transparent;
    font-size: 0;
    outline: none;
    margin-left: 5.208%;
  }
  header .head_wrap nav .search_sp .search_area {
    float: right;
    width: 77.994%;
    height: 45px;
    background: #0056a9;
    margin-right: 5.208%;
  }
  header .head_wrap nav .search_sp .search_area input[type="search"] {
    font-size: 14px;
    display: block;
    width: 95%;
    margin: 9px auto;
    height: 26px;
    padding: 10px;
    border: none;
    background: #fff;
    border-radius: 4px;
    outline: none;
  }
  .contents {
    overflow: hidden;
    padding: 80px 0 40px 0;
  }
  #home .contents {
    padding-bottom: 0;
  }
  #home .contents h2 {
    font-size: 13px;
    margin-bottom: 14px;
    font-size: 0.98em;
  }
  #home .contents h2 span {
    display: block;
    font-size: 38px;
    font-family: "Roboto Condensed", sans-serif;
  }
  #home .contents .line {
    width: 30px;
    height: 2px;
    background: #0056a8;
    margin-bottom: 18px;
  }
  .works_list h2,
  .works_detail h2,
  .news_list h2,
  .news_detail h2,
  .news_detail h2,
  .about h2,
  .corporate h2,
  .__corporate h2,
  .service_top h2,
  .service_detail h2,
  .contact_top h2,
  .contact_privacy h2,
  .contact_form h2,
  .contact_conform h2,
  .recruit_top h2,
  .recruit_privacy h2,
  .recruit_message h2,
  .recruit_interview h2,
  .carrier_top h2,
  .recruit_job h2,
  .download h2,
  .mailmagazine h2 {
    font-size: 0.8em;
    margin-bottom: 12px;
  }
  .works_list h2 span,
  .works_detail h2 span,
  .news_list h2 span,
  .news_detail h2 span,
  .news_detail h2 span,
  .about h2 span,
  .corporate h2 span,
  .__corporate h2 span,
  .service_top h2 span,
  .service_detail h2 span,
  .contact_top h2 span,
  .contact_privacy h2 span,
  .contact_form h2 span,
  .contact_conform h2 span,
  .recruit_top h2 span,
  .recruit_privacy h2 span,
  .recruit_message h2 span,
  .recruit_interview h2 span,
  .carrier_top h2 span,
  .recruit_job h2 span,
  .download h2 span,
  .mailmagazine h2 span {
    display: inline;
    font-size: 36px;
    font-family: "Roboto Condensed", sans-serif;
    padding-right: 10px;
  }
  .works_list .line,
  .works_detail .line,
  .news_list .line,
  .news_detail .line,
  .news_detail .line,
  .about .line,
  .corporate .line,
  .service_top .line,
  .service_detail .line,
  .contact_top .line,
  .contact_privacy .line,
  .contact_form .line,
  .contact_conform .line,
  .recruit_top .line,
  .recruit_privacy .line,
  .recruit_message .line,
  .recruit_interview .line,
  .carrier_top .line,
  .recruit_job .line,
  .download .line,
  .mailmagazine .line {
    width: 30px;
    height: 2px;
    background: #0056a8;
    margin-bottom: 26px;
  }

  footer {
    position: relative;
    bottom: auto;
    width: 100%;
    background: #00000b;
  }

  footer .footer_wrap {
    width: 100%;
    max-width: 100%;
    min-width: 100%;
    position: relative;
    margin: 0 auto;
    background: #00000b;
    overflow: hidden;
    padding: 0;
  }

  footer .footer_wrap .ft_navi {
    width: 100%;
    float: none;
  }

  footer .footer_wrap .ft_navi .ft_navi_list {
    margin: 0;
  }

  footer .footer_wrap .ft_navi .ft_navi_list a {
    display: block;
    font-size: 14px;
    padding: 25px 15px;
    color: #fff;
    border-bottom: 1px solid #1f1f1f;
    opacity: 1;
    transition: opacity 0.2s linear;
  }
  footer .footer_wrap .ft_navi .ft_navi_list a:before {
    margin-right: 8px;
  }
  footer .footer_wrap .ft_navi .ft_navi_list a:hover {
    opacity: 0.6;
    transition: opacity 0.2s linear;
  }

  footer .footer_wrap .ft_dtnavi {
    display: none;
  }

  footer .footer_wrap .ft_dtnavi .ft_dtnavi_list {
    margin: 10px 0;
  }

  footer .footer_wrap .ft_dtnavi .ft_dtnavi_list a {
    font-size: 12px;
    color: #fff;
    opacity: 1;
    transition: opacity 0.2s linear;
  }
  footer .footer_wrap .ft_dtnavi .ft_dtnavi_list a:before {
    display: none;
  }

  footer .footer_wrap .ft_dtnavi .ft_dtnavi_list a:hover {
    opacity: 0.6;
    transition: opacity 0.2s linear;
  }

  footer .copyright {
    width: 100%;
    display: block;
    font-size: 10px;
    color: #fff;
    font-family: "Roboto Condensed", sans-serif;
    letter-spacing: 0.1em;
    padding: 30px 0;
    margin: 0 auto;
    text-align: center;
    border-top: 1px solid #191919;
  }
  .pagetop {
    position: absolute;
    bottom: 940px;
    right: 2.864%;
    cursor: pointer;
    width: 8.463%;
    -webkit-transition: none;
    transition: none;
  }
  .pagetop img {
    width: 100%;
  }
  .pagetop:hover {
    opacity: 1;
    filter: alpha(opacity=100);
    -webkit-transition: none;
    transition: none;
  }
}

.home {
  padding-top: 153px;
}

.main {
  max-width: 1120px;
  min-width: 1120px;
  margin: 0 auto;
  height: 355px;
  overflow: hidden;
}

.main ul {
  position: relative;
}

.main ul li {
  float: left;
  width: 100%;
  overflow: hidden;
}

.main ul li img {
  width: 100%;
  height: auto;
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear;
}

.main ul li .main_wrap {
  position: absolute;
  top: 50%;
  left: 13%;
  margin-top: -111px;
  color: #fff;
}

.main ul li .main_wrap .caseparent {
}

.main ul li .main_wrap .case {
  display: inline-block;
  font-size: 15px;
  background: rgba(0, 0, 0, 0.6);
  line-height: 2;
  padding: 0 10px;
}

.main ul li .main_wrap .tiparent {
  margin-top: 16px;
}
.main ul li .main_wrap .title {
  display: inline-block;
  font-size: 45px;
  margin-bottom: 38px;
  background: rgba(0, 0, 0, 0.6);
  line-height: 1.4;
  padding: 0 10px;
}

.main ul li .main_wrap .main_btn {
  position: relative;
  width: 230px;
  height: 38px;
  margin-top: 10px;
  border-radius: 4px;
}

.main ul li .main_wrap .main_btn .arrow {
  position: absolute;
  top: 50%;
  margin-top: -7.5px;
  right: 7px;
  width: 13px;
  height: 13px;
  border: 1px solid #fff;
  border-radius: 50%;
  background: url("img/common/arrow_white.svg") no-repeat center center;
  -webkit-background-size: 3px 4px;
  background-size: 3px 4px;
}

.main ul li .main_wrap .main_btn a {
  background: rgba(0, 0, 0, 0.5);
  vertical-align: bottom;
  position: relative;
  font-size: 11px;
  display: block;
  width: 230px;
  height: 38px;
  border: 1px solid #fff;
  border-radius: 4px;
  color: #fff;
  text-align: center;
  line-height: 38px;
  -webkit-transition: all 0.3s linear;
  transition: all 0.3s linear;
}

.main ul li .main_wrap .main_btn a:hover {
  background: #0056a8;
  border: 1px solid rgba(255, 255, 255, 0);
  -webkit-transition: all 0.3s linear;
  transition: all 0.3s linear;
}

.main ul li .main_wrap .main_about_btn {
  margin-top: 36px;
}

.pickup {
  padding: 80px 0;
}

.pickup .pickup_wrap {
  position: relative;
  max-width: 1120px;
  min-width: 1120px;
  margin: 0 auto 36px;
  padding: 0 40px;
}

.pickupitem {
  overflow: hidden;
}

.pickupitem .pickupitem_list {
  width: 25%;
  float: left;
}

.pickupitem .pickupitem_link {
  position: relative;
  display: block;
}
.pickupitem .pickupitem_link:before {
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  background-color: #00274e;
  opacity: 0.2;
  transition: opacity 0.3s ease;
}
.pickupitem .pickupitem_link:hover:before {
  opacity: 0.8;
  transition: opacity 0.3s ease;
}

.pickupitem .pickupitem_link img {
  width: 100%;
}

.pickupitem .pickupitem_link p {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  color: #fff;
  font-size: 18px;
  white-space: nowrap;
}

.service {
}

.service .service_wrap {
  position: relative;
  max-width: 1120px;
  min-width: 1120px;
  margin: 0 auto;
  padding: 80px 40px;
}

.service .service_wrap p {
  font-size: 14px;
  line-height: 1.8em;
}

.service .service_list {
  overflow: hidden;
}

.service .service_list li {
  width: 33.3333%;
  float: left;
}

.service .service_list li a {
  position: relative;
  display: block;
}
.service .service_list li a:before {
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  background-color: #00274e;
  opacity: 0.2;
  transition: opacity 0.3s ease;
}
.service .service_list li a:hover:before {
  opacity: 0.8;
  transition: opacity 0.3s ease;
}

.service .service_list li a img {
  width: 100%;
}

.service .service_list li a p {
  position: absolute;
  top: 50%;
  left: 10%;
  transform: translate(0, -50%);
  color: #fff;
  font-size: 17px;
  line-height: 1.4;
  text-align: center;
  width: 80%;
}

.works {
  width: 100%;
  background: #f2f2f2;
  padding-bottom: 60px;
}

.works .works_wrap {
  position: relative;
  max-width: 1120px;
  min-width: 1120px;
  margin: 0 auto;
  padding: 0 40px;
  background: #f2f2f2;
}

#home .works .works_wrap {
  padding: 80px 40px;
}
.works .works_wrap p {
  line-height: 1.6;
}

/* .works .works_wrap ul {
  min-width: 1120px;
  padding-top: 30px;
} */

.works .works_wrap .list_infinite_item li,
.works .works_wrap .category li {
  position: relative;
  width: 33.333%;
  float: left;
  overflow: hidden;
  -webkit-transition: -webkit-transform 0.2s linear;
  transition: transform 0.2s linear;
}

.works .works_wrap .list_infinite_item a, 
.works .works_wrap .category a{
  display: block;
  width: 100%;
  height: 100%;
}

.works .works_wrap ul li p {
  line-height: 1.4;
}

.works .works_wrap ul li .bg_grd {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  background: -webkit-gradient(
    linear,
    left top,
    left bottom,
    from(bottom),
    color-stop(#000),
    color-stop(10%, rgba(0, 0, 0, 0.6)),
    color-stop(40%, transparent)
  );
  background: linear-gradient(bottom, #000, rgba(0, 0, 0, 0.6) 10%, transparent 40%);
}

.works .works_wrap ul li .bd_lb {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 10px;
  height: 0;
  -webkit-transition: all 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: all 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
}

.works .works_wrap ul li .bd_lt {
  position: absolute;
  top: 0;
  left: 0;
  width: 0;
  height: 10px;
  -webkit-transition: all 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: all 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
}

.works .works_wrap ul li .bd_rt {
  position: absolute;
  top: 0;
  right: 0;
  width: 10px;
  height: 0;
  -webkit-transition: all 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: all 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
}

.works .works_wrap ul li .bd_rb {
  position: absolute;
  bottom: 0;
  right: 0;
  width: 0;
  height: 10px;
  -webkit-transition: all 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: all 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
}

.works .works_wrap ul li:hover .bd_lb {
  height: 100%;
  -webkit-transition: all 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: all 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
}

.works .works_wrap ul li:hover .bd_lt {
  width: 100%;
  -webkit-transition: all 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: all 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
}

.works .works_wrap ul li:hover .bd_rt {
  height: 100%;
  -webkit-transition: all 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: all 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
}

.works .works_wrap ul li:hover .bd_rb {
  width: 100%;
  -webkit-transition: all 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: all 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
}

.works .works_wrap ul li p {
  color: #fff;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.works .works_wrap ul li .wo_fot {
  width: 100%;
  position: absolute;
  bottom: 0;
  left: 0;
  background-color: rgba(0, 22, 44, 0.5);
}

.works .works_wrap ul li .wo_fot p.project {
  display: inline-block;
  padding: 8px 20px;
  font-size: 14px;
  color: #fff;
  background-color: #000;
}
.works .works_wrap ul li .wo_fot p.client {
  font-size: 18px;
  padding: 20px;
}

.works .works_wrap ul li img {
  width: 100%;
  height: auto;
  vertical-align: bottom;
}

.news {
  position: relative;
  max-width: 1120px;
  min-width: 1120px;
  margin: 0 auto;
  padding: 86px 40px 118px;
}

.list_link {
  position: absolute;
  top: 90px;
  right: 40px;
  width: 240px;
  height: 54px;
}

.list_link a {
  position: relative;
  display: block;
  width: 240px;
  height: 54px;
  font-size: 15px;
  text-align: center;
  line-height: 54px;
  background-color: #008ae1;
  color: #fff;
  border-radius: 4px;
  transition: background-color 0.3s ease;
}

.list_link a .arrow {
  position: absolute;
  top: 50%;
  right: 15px;
  width: 8px;
  height: 11px;
  margin-top: -6px;
  background: url("img/common/arrow_right.svg") no-repeat center center;
  background-size: 8px 11px;
}

.list_link a:hover {
  background-color: #0072d3;
  transition: background-color 0.3s ease;
}

.news ul {
  width: 100%;
  margin-bottom: 30px;
}

.news ul li {
  border-bottom: 1px solid #000;
}

.news ul li:first-child {
  border-top: 1px solid #000;
}

.news ul li .news_date {
  width: 80px;
  display: block;
  margin-left: 35px;
  float: left;
  font-size: 12px;
  font-family: "Roboto", sans-serif;
  color: #0056a9;
  letter-spacing: 0.2em;
}

.news ul li .news_article {
  width: 84%;
  display: block;
  float: left;
  margin-left: 25px;
  font-size: 14px;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}

.news ul li a {
  display: block;
  height: 68px;
  line-height: 68px;
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear;
}

.news ul li a:hover {
  opacity: 0.6;
  filter: alpha(opacity=60);
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear;
}

.news ul li a:hover .news_article {
  color: #0056a9;
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear;
}

.news .news_fb {
  position: relative;
  width: 360px;
  height: 40px;
  margin: 0 auto;
}

.news .news_fb a {
  position: absolute;
  display: block;
  width: 360px;
  height: 40px;
  background: #3d5a99;
  border-radius: 4px;
  font-size: 12px;
  color: #fff;
  line-height: 40px;
  text-align: center;
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear;
}

.news .news_fb a .fb_icon {
  position: absolute;
  width: 11px;
  height: 19px;
  top: 50%;
  left: 17px;
  margin-top: -10px;
  background: url("img/icon_fb.png") no-repeat center center;
  -webkit-background-size: 100% auto;
  background-size: 100% auto;
}

.news .news_fb a .arrow {
  position: absolute;
  top: 50%;
  right: 8px;
  margin-top: -7px;
  width: 12px;
  height: 12px;
  border: 1px solid #fff;
  border-radius: 50%;
  background: url("img/common/arrow_white.svg") no-repeat center center;
  -webkit-background-size: 3px auto;
  background-size: 3px auto;
}

.news .news_fb a:hover {
  background: #bcbcbc;
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear;
}

.contact p {
  font-size: 14px;
}

.contact .contact_wrap {
  max-width: 1120px;
  min-width: 1120px;
  margin: 0 auto;
  padding: 86px 40px 82px;
}

.contact .contact_wrap .contact_text {
  font-size: 14px;
  line-height: 1.8em;
  margin-bottom: 20px;
}

.contact .contact_wrap .small {
  font-size: 12px;
  margin-bottom: 30px;
  line-height: 1.8em;
}

.contact .contact_wrap .email,
.contact .contact_wrap .date {
  letter-spacing: 0.1em;
  line-height: 1.8;
}

.contact .contact_wrap .email {
  margin-bottom: 1em;
  margin-left: 0.2em;
  width: 145px;
}

.contact .contact_wrap .email img {
  width: 100%;
}

.contact .contact_wrap .email a {
  text-decoration: underline;
}

.contact .contact_wrap .email a:hover {
  text-decoration: none;
}

.contact .contact_wrap .contact_link a {
  color: #0056a8;
  position: relative;
  font-size: 12px;
  display: block;
  width: 206px;
  height: 38px;
  border: 1px solid #000;
  border-radius: 4px;
  line-height: 38px;
  text-align: center;
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear;
}

.contact .contact_wrap .contact_link a:hover {
  background: #0056a8;
  color: #fff;
  border: 1px solid #f2f2f2;
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear;
}

.contact .contact_wrap .contact_link a .arrow {
  position: absolute;
  top: 50%;
  right: 7px;
  margin-top: -7.5px;
  width: 13px;
  height: 13px;
  border-radius: 50%;
  border: 1px solid #0056a8;
  background: url("img/common/arrow_blue.svg") no-repeat center center;
  -webkit-background-size: 3px auto;
  background-size: 3px auto;
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear;
}

.contact .contact_wrap .contact_link a:hover .arrow {
  position: absolute;
  top: 50%;
  right: 7px;
  margin-top: -7.5px;
  width: 13px;
  height: 13px;
  border-radius: 50%;
  border: 1px solid #fff;
  background: url("img/common/arrow_white.svg") no-repeat center center;
  -webkit-background-size: 3px auto;
  background-size: 3px auto;
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear;
}

.access {
  width: 100%;
  background: #f2f2f2;
}

.access_wrap {
  max-width: 1120px;
  min-width: 1120px;
  margin: 0 auto;
  padding: 86px 40px 125px;
  background: #f2f2f2;
}

.access_wrap #map-canvas {
  width: 100%;
  height: 358px;
  margin-bottom: 24px;
}

.access_wrap p {
  font-size: 13px;
  line-height: 1.6em;
}

.access_wrap p.address {
  font-size: 14px;
}

.access_wrap p.tel {
  margin-bottom: 24px;
}

.access_wrap .map_img {
  width: 100%;
  margin-bottom: 24px;
}
.access_wrap .map_img img {
  width: 100%;
}
.access_wrap .map_img .pc {
  display: block;
}
.access_wrap .map_img .sp {
  display: none;
}

.access_wrap p.map_link {
  float: right;
  text-align: right;
  margin-bottom: 20px;
}

.access_wrap p.map_link a {
  border-bottom: 1px solid #000;
  -webkit-transition: opacity 0.2s linear;
  transition: opacity 0.2s linear;
}

.access_wrap p.map_link a:hover {
  border: none;
}

@media screen and (max-width: 768px) {
  .home {
    padding-top: 50px;
  }
  .home .top_title span {
    letter-spacing: -0.04em;
  }
  .main {
    max-width: 100%;
    min-width: 100%;
    margin: 0 auto;
    height: auto;
    overflow: hidden;
  }
  .main ul li {
    width: 100%;
    overflow: visible;
  }
  .main ul li img {
    width: 100%;
    -webkit-transition: none;
    transition: none;
  }
  .main ul li:hover img {
    -webkit-transform: none;
    -ms-transform: none;
    transform: none;
    -webkit-transition: none;
    transition: none;
  }
  .main ul li .main_wrap {
    position: absolute;
    width: 320px;
    top: 50%;
    left: 50%;
    margin-top: 0;
    transform: translate(-55%, -55%);
    color: #fff;
  }
  .main ul li .main_wrap .case {
    width: auto;
    max-width: 75%;
    display: inline-block;
    font-size: 12px !important;
    padding: 4px 10px;
    background: rgba(0, 0, 0, 0.6);
    line-height: 1.4;
  }
  .main ul li .main_wrap .caseparent {
  }

  .main ul li .main_wrap .tiparent {
    margin: 0;
  }
  .main ul li .main_wrap .title {
    width: auto;
    max-width: 75%;
    margin: 10px 0;
    display: inline-block;
    font-size: 20px;
    background: rgba(0, 0, 0, 0.6);
    line-height: 1.2;
    padding: 4px 10px;
  }

  .main ul li .main_wrap .main_btn {
    width: auto;
    height: auto;
    margin-top: 0;
  }
  .main ul li .main_wrap .main_btn .arrow {
    position: absolute;
    top: 50%;
    margin-top: -6.5px;
    right: 7px;
    width: 11px;
    height: 11px;
    border: 1px solid #fff;
    border-radius: 50%;
    background: url("img/common/arrow_white.svg") no-repeat center center;
    -webkit-background-size: 3px auto;
    background-size: 3px auto;
  }
  .main ul li .main_wrap .main_btn a {
    font-size: 11px;
    display: inline-block;
    padding: 2px 25px 2px 10px;
    width: auto;
    height: auto;
    border: 1px solid #fff;
    border-radius: 4px;
    color: #fff;
    text-align: center;
    line-height: 30px;
    -webkit-transition: none;
    transition: none;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
  }
  .main ul li .main_wrap .main_btn a:hover {
    background: none;
    border: 1px solid #fff;
    -webkit-transition: none;
    transition: none;
  }

  .pickup {
    padding: 60px 0;
  }

  .pickup .pickup_wrap {
    position: relative;
    width: 100%;
    max-width: 89.583%;
    min-width: 89.583%;
    margin: 0 auto;
    padding: 0;
  }

  .pickupitem {
    overflow: hidden;
  }

  .pickupitem .pickupitem_list {
    width: 100%;
    float: none;
  }

  .pickupitem .pickupitem_link {
    position: relative;
    display: block;
  }
  .pickupitem .pickupitem_link:before {
    content: "";
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    background-color: #00274e;
    opacity: 0.2;
    transition: none;
  }
  .pickupitem .pickupitem_link:hover:before {
    opacity: 0.2;
    transition: none;
  }

  .pickupitem .pickupitem_link img {
    width: 100%;
  }

  .pickupitem .pickupitem_link p {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    color: #fff;
    font-size: 18px;
    white-space: nowrap;
  }

  .service {
    padding: 0;
    margin: 0;
  }
  .service .service_wrap {
    position: relative;
    max-width: 89.583%;
    min-width: 89.583%;
    margin: 0 auto;
    padding: 60px 0;
  }
  .service .service_wrap p {
    font-size: 0.8em;
  }

  .service .service_list {
    max-width: 100%;
    min-width: 100%;
    width: 100%;
    height: auto;
  }
  .service .service_list {
    overflow: hidden;
    margin-top: 15px;
  }

  .service .service_list li {
    width: auto;
    float: none;
    border: #dfdfdf 1px solid;
    border-top: none;
  }
  .service .service_list li:first-child {
    border-top: #dfdfdf 1px solid;
  }

  .service .service_list li a {
    position: relative;
    display: block;
    padding: 10px 0;
  }
  .service .service_list li a:before {
    display: none;
  }
  .service .service_list li a:hover:before {
    opacity: 0;
    transition: none;
  }

  .service .service_list li a img {
    display: none;
  }

  .service .service_list li a p {
    position: relative;
    top: inherit;
    left: inherit;
    transform: translate(0, 0);
    color: #fff;
    font-size: 15px;
    line-height: 1.4;
    text-align: center;
    width: 100%;
    color: #008ae1;
  }
  .works {
    width: 100%;
    padding: 0;
    margin: 0;
    background: #f2f2f2;
  }
  .works .works_wrap {
    position: relative;
    max-width: 89.583%;
    min-width: 89.583%;
    margin: 0 auto;
    padding: 60px 0;
    background: none;
  }
  #home .works .works_wrap {
    padding: 60px 0;
  }
  .works .works_wrap p {
    font-size: 14px;
    line-height: 1.6;
  }
  .works .works_wrap ul {
    min-width: 100%;
    padding-top: 10px;
  }
  .works .works_wrap ul li {
    position: relative;
    overflow: hidden;
    -webkit-transition: none;
    transition: none;
  }
  .works .works_wrap .list_infinite_item li{
    width: 100%;
    float: none;
  }
  .works .works_wrap ul li:hover img {
    -webkit-transform: none;
    -ms-transform: none;
    transform: none;
  }
  .works .works_wrap .category_sp {
    padding-bottom: 20px;
    gap: 0 12px;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  .works .works_wrap .category_sp li {
    width: 46%;
    border-top: none;
    margin-left: 0;
  }
  .works .works_wrap .category_sp li a {
    padding: 10px 0;
    font-size: 14px;
    text-align: left;
    display: block;
    width: 100%;
  }
  .works .works_wrap .category_sp li.is-current a {
    color: #0056a8;
  }
  .works .works_wrap .category_sp li.category_all {
    background: url("img/work/arrowcircle_all_off.png") no-repeat right center;
  }
  .works .works_wrap .category_sp li.category_commercial {
    background: url("img/work/arrowcircle_commercial_off.png") no-repeat right center;
  }
  .works .works_wrap .category_sp li.category_large {
    background: url("img/work/arrowcircle_large_off.png") no-repeat right center;
  }
  .works .works_wrap .category_sp li.category_public {
    background: url("img/work/arrowcircle_public_off.png") no-repeat right center;
  }
  .works .works_wrap .category_sp li.category_traffic {
    background: url("img/work/arrowcircle_traffic_off.png") no-repeat right center;
  }
  .works .works_wrap .category_sp li.category_movie {
    background: url("img/work/arrowcircle_movie_off.png") no-repeat right center;
  }
  .works .works_wrap .category_sp li.category_office {
    background: url("img/work/arrowcircle_office_off.png") no-repeat right center;
  }
  .works .works_wrap .category_sp li.category_others {
    background: url("img/work/arrowcircle_others_off.png") no-repeat right center;
  }
  .works .works_wrap .category_sp li.category_store {
    background: url("img/work/arrowcircle_store_off.png") no-repeat right center;
  }
  .works .works_wrap ul li .bd_lb {
    display: none;
  }
  .works .works_wrap ul li .bd_lt {
    display: none;
  }
  .works .works_wrap ul li .bd_rt {
    display: none;
  }
  .works .works_wrap ul li .bd_rb {
    display: none;
  }

  .works .works_wrap ul li p {
    color: #fff;
    text-overflow: inherit;
    white-space: normal;
  }

  .works .works_wrap ul li .wo_fot {
    width: 100%;
    position: absolute;
    bottom: 0;
    left: 0;
    background-color: rgba(0, 22, 44, 0.5);
  }

  .works .works_wrap ul li .wo_fot p.project {
    display: inline-block;
    padding: 6px 15px;
    font-size: 13px;
    color: #fff;
    background-color: #000;
  }
  .works .works_wrap ul li .wo_fot p.client {
    font-size: 15px;
    padding: 15px;
  }

  .works .works_wrap ul li img {
    width: 100%;
    height: auto;
    vertical-align: bottom;
  }

  .list_link {
    position: absolute;
    top: 60px;
    right: 0;
    width: 57%;
    height: auto;
  }

  .list_link a {
    position: relative;
    display: block;
    width: 100%;
    height: auto;
    padding: 8% 0;
    font-size: 12px;
    text-align: center;
    line-height: 1;
    background-color: #008ae1;
    color: #fff;
    border-radius: 4px;
    transition: none;
  }

  .list_link a .arrow {
    position: absolute;
    top: 50%;
    right: 8px;
    width: 8px;
    height: 11px;
    margin-top: -5px;
    background: url("img/common/arrow_right.svg") no-repeat center center;
    background-size: 8px 11px;
  }

  .list_link a:hover {
    background-color: #008ae1;
    transition: none;
  }
  .news {
    max-width: 89.583%;
    min-width: 89.583%;
    padding: 60px 0;
  }

  .news ul {
    width: 100%;
    margin-bottom: 0;
    padding-top: 16px;
  }
  .news ul li .news_date {
    display: block;
    margin-left: 0;
    float: none;
    font-size: 12px;
    font-family: "Roboto", sans-serif;
    color: #0056a9;
    letter-spacing: 0.2em;
  }
  .news ul li .news_article {
    width: 100%;
    display: -webkit-box;
    float: none;
    margin-left: 0;
    font-size: 14px;
    overflow: hidden;
    white-space: normal;
    text-overflow: ellipsis;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
  }
  .news ul li a {
    display: block;
    height: auto;
    line-height: 1.5em;
    -webkit-transition: none;
    transition: none;
    padding: 20px 5%;
  }
  .news ul li a:hover {
    opacity: 1;
    filter: alpha(opacity=100);
    -webkit-transition: none;
    transition: none;
  }
  .news ul li a:hover:hover {
    opacity: 1;
    filter: alpha(opacity=100);
    -webkit-transition: none;
    transition: none;
  }
  .news ul li a:hover:hover .news_article {
    color: #000;
    -webkit-transition: none;
    transition: none;
  }
  .news .news_fb {
    position: relative;
    width: 100%;
    height: 40px;
    margin: 0 auto;
    -webkit-transition: none;
    transition: none;
  }
  .news .news_fb a {
    position: absolute;
    display: block;
    width: 100%;
    height: 40px;
    background: #3d5a99;
    border-radius: 4px;
    font-size: 10px;
    color: #fff;
    line-height: 40px;
    text-align: center;
  }
  .news .news_fb a .fb_icon {
    position: absolute;
    width: 11px;
    height: 20px;
    top: 50%;
    left: 3.5%;
    margin-top: -10px;
    background: url("img/icon_fb.png") no-repeat center center;
    -webkit-background-size: 100% auto;
    background-size: 100% auto;
  }
  .news .news_fb a .arrow {
    position: absolute;
    top: 50%;
    right: 3%;
    margin-top: -7px;
    width: 12px;
    height: 12px;
    border: 1px solid #fff;
    border-radius: 50%;
    background: url("img/common/arrow_white.svg") no-repeat center center;
    -webkit-background-size: 3px auto;
    background-size: 3px auto;
  }
  .news .news_fb a:hover {
    background: #3d5a99;
    transition: none;
  }
  .contact .contact_wrap {
    max-width: 89.583%;
    min-width: 89.583%;
    padding: 60px 0 60px;
    background: none;
  }
  .contact .contact_wrap p {
    font-size: 0.8em;
  }
  .contact .contact_wrap .contact_text {
    line-height: 1.8em;
  }
  .contact .contact_wrap .small {
    font-size: 0.77em;
    margin-bottom: 30px;
    line-height: 1.8em;
  }
  .contact .contact_wrap .tel,
  .contact .contact_wrap .date {
    font-size: 0.9em;
  }
  .contact .contact_wrap .contact_link a {
    position: relative;
    font-size: 12px;
    display: block;
    width: 67.441%;
    height: 38px;
    border: 1px solid #000;
    border-radius: 4px;
    line-height: 38px;
    text-align: center;
    -webkit-transition: none;
    transition: none;
  }
  .contact .contact_wrap .contact_link a:hover {
    background: none;
    color: #0056a8;
    border: 1px solid #000;
    -webkit-transition: none;
    transition: none;
  }
  .contact .contact_wrap .contact_link a:hover .arrow {
    border: 1px solid #0056a8;
    background: url("img/common/arrow_blue.svg") no-repeat center center;
    -webkit-background-size: 3px auto;
    background-size: 3px auto;
    -webkit-transition: none;
    transition: none;
  }
  .access {
    width: 100%;
  }
  .access_wrap {
    max-width: 89.583%;
    min-width: 89.583%;
    padding: 60px 0;
  }
  .access_wrap #map-canvas {
    height: 240px;
    margin-bottom: 24px;
    margin-bottom: 10px;
  }
  .access_wrap p {
    font-size: 0.8em;
  }
  .access_wrap p.address {
    font-size: 14px;
  }
  .access_wrap .map_img {
    width: 100%;
    margin-bottom: 10px;
  }
  .access_wrap .map_img img {
    width: 100%;
  }
  .access_wrap .map_img .pc {
    display: none;
  }
  .access_wrap .map_img .sp {
    display: block;
  }
  .access_wrap p.map_link {
    float: none;
  }
  .access_wrap p.map_link a {
    border-bottom: 1px solid #000;
    -webkit-transition: none;
    transition: none;
  }
  .access_wrap p.map_link a:hover {
    opacity: 1;
    filter: alpha(opacity=100);
    -webkit-transition: none;
    transition: none;
  }
}

.about {
  max-width: 1120px;
  min-width: 1120px;
  padding: 0 40px;
  margin: 0 auto;
}

.about .about_wrap {
  width: 980px;
  margin: 0 auto;
  padding-bottom: 120px;
}
.about .about_item {
  width: 100%;
  display: table;
}
.about .about_item li {
  display: table-cell;
  width: 50%;
  overflow: hidden;
}

.about .about_item li a {
  display: block;
  padding: 120px 40px;
  color: #000;
  border: #dfdfdf 1px solid;
  background-color: #fff;
  transition: all 0.3s ease;
}
.about .about_item li:first-child a {
  border-right: 0;
}
.about .about_item li a h3 {
  text-align: center;
  font-size: 22px;
}
.about .about_item li a h2 {
  text-align: center;
  font-size: 22px;
}
.about .about_item li a p {
  text-align: left;
  font-size: 15px;
  line-height: 1.4;
  margin-top: 30px;
}

.about .about_item li a:hover {
  color: #fff;
  border-color: #0056a9;
  background-color: #0056a9;
  transition: all 0.3s ease;
}

.about .about_wrap .line_cap {
  margin-bottom: 28px;
  width: 30px;
  height: 2px;
  background: #0056a8;
}

.about .about_img {
  margin-bottom: 60px;
}
.about .about_img img {
  width: 100%;
  height: auto;
}

.about .about_sec {
  margin-bottom: 60px;
}

.about .catch {
  font-size: 31px;
  line-height: 1.5;
  margin-bottom: 10px;
}

.about h4 {
  font-size: 28px;
  line-height: 1.5;
  margin-bottom: 10px;
}

.about .about_image {
  width: 780px;
  margin: 23px auto 60px;
}

.about p {
  font-size: 14px;
  line-height: 1.8;
  margin-bottom: 20px;
}

.about dl {
  margin: 60px 0 0;
}

.about dl dt {
  font-size: 21px;
  color: #0056a8;
  margin-bottom: 15px;
}

.about dl dd {
  font-size: 14px;
  line-height: 1.8;
  margin-bottom: 30px;
}

.about .btn_wrap {
  text-align: center;
}

.about .btn_wrap .btn {
  display: inline-block;
  width: 240px;
  height: 40px;
}

.about .btn_wrap .btn:first-child {
  margin-right: 20px;
}

.about .btn_wrap .btn a {
  position: relative;
  display: block;
  width: 100%;
  height: 100%;
  border: 1px solid #000;
  border-radius: 4px;
  font-size: 12px;
  line-height: 40px;
  text-align: center;
  color: #0056a8;
  transition: all 0.2s linear;
}

.about .btn_wrap .btn a .arrow {
  display: block;
  position: absolute;
  top: 50%;
  right: 8px;
  background: url("img/common/arrow_blue.svg") no-repeat center center;
  -webkit-background-size: 3px auto;
  background-size: 3px auto;
  width: 12px;
  height: 12px;
  border: 1px solid #0056a8;
  border-radius: 50%;
  margin-top: -7px;
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear;
}

.about .btn_wrap .btn a:hover {
  color: #fff;
  background: #0056a8;
  border: 1px solid #0056a8;
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear;
}

.about .btn_wrap .btn a:hover .arrow {
  background: url("img/common/arrow_white.svg") no-repeat center center;
  -webkit-background-size: 3px auto;
  background-size: 3px auto;
  border: 1px solid #fff;
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear;
}

.main_service {
  margin: 60px 0 0;
  overflow: hidden;
}

.main_service li {
  position: relative;
  width: 100%;
  float: right;
  overflow: hidden;
}
.main_service li:before {
  content: "";
  width: 48px;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  background-color: #ecf1f6;
  visibility: visible;
}

.main_service li div {
  width: 720px;
  padding: 30px 0 10px 0;
  padding-left: 170px;
  float: right;
  border-bottom: 1px solid #b4b4b4;
}

.main_service li div h4 {
  font-size: 25px;
  font-weight: bold;
  margin-bottom: 6px;
  line-height: 1.2;
}

.main_service li div p {
  font-size: 14px;
  line-height: 1.8;
}

.main_service li div p.service_txt {
  font-size: 19px;
  font-weight: bold;
  margin-bottom: 6px;
  white-space: nowrap;
}

.main_service li:first-child div {
  padding-top: 0;
}

.main_service li.consulting div {
  background: url("img/service/icon_l_consulting.png") no-repeat left 6px center;
  background-size: 130px auto;
}
.main_service li.consulting:before {
  background-color: #ecf1f6;
}

.main_service li.system div {
  background: url("img/service/icon_l_system.png") no-repeat left 6px center;
  background-size: 130px auto;
}
.main_service li.system:before {
  background-color: #ecf1f6;
}

.main_service li.enforcement div {
  background: url("img/service/icon_l_enforcement.png") no-repeat left 6px center;
  background-size: 130px auto;
}
.main_service li.enforcement:before {
  background-color: #ecf1f6;
}
.main_service li.enforcement:after {
  content: "";
  width: 48px;
  height: 14px;
  position: absolute;
  bottom: 0;
  left: 0;
  background: url("img/service/ar1.png") no-repeat left top;
  background-size: 48px 14px;
  visibility: visible;
}

.main_service li.content div {
  background: url("img/service/icon_l_contents.png") no-repeat left 6px center;
  background-size: 130px auto;
}
.main_service li.content:before {
  background-color: #d8e2eb;
}

.main_service li.delivery div {
  background: url("img/service/icon_l_delivery.png") no-repeat left 6px center;
  background-size: 130px auto;
}
.main_service li.delivery:before {
  background-color: #d8e2eb;
}
.main_service li.delivery:after {
  content: "";
  width: 48px;
  height: 14px;
  position: absolute;
  bottom: 0;
  left: 0;
  background: url("img/service/ar2.png") no-repeat left top;
  background-size: 48px 14px;
  visibility: visible;
}

.main_service li.maintenance div {
  background: url("img/service/icon_l_maintenance.png") no-repeat left 6px center;
  background-size: 130px auto;
}
.main_service li.maintenance:before {
  background-color: #bbcbda;
}

.main_service li.marketing div {
  background: url("img/service/icon_l_marketing.png") no-repeat left 6px center;
  background-size: 130px auto;
}
.main_service li.marketing:before {
  background-color: #bbcbda;
}
.main_service li.marketing:after {
  content: "";
  width: 48px;
  height: 14px;
  position: absolute;
  bottom: 0;
  left: 0;
  background: url("img/service/ar3.png") no-repeat left top;
  background-size: 48px 14px;
  visibility: visible;
}

@media screen and (max-width: 768px) {
  .about {
    max-width: 89.583%;
    min-width: 89.583%;
    padding: 0;
    margin: 0 auto;
  }

  .about .about_wrap {
    width: 100%;
    margin: 0 auto;
    padding: 0;
  }
  .about .about_item {
    width: 100%;
    display: block;
  }
  .about .about_item li {
    display: block;
    width: 100%;
    overflow: hidden;
  }

  .about .about_item li a {
    display: block;
    padding: 30px 20px;
    color: #000;
    border: #dfdfdf 1px solid;
    background-color: #fff;
    transition: none;
  }
  .about .about_item li:first-child a {
    border-right: #dfdfdf 1px solid;
    border-bottom: none;
  }
  .about .about_item li a h3 {
    text-align: center;
    line-height: 1.4;
    font-size: 18px;
  }
  .about .about_item li a h2 {
    text-align: center;
    line-height: 1.4;
    font-size: 18px;
  }
  .about .about_item li a p {
    text-align: left;
    font-size: 13px;
    line-height: 1.4;
    margin-top: 20px;
  }

  .about .about_item li a:hover {
    color: #000;
    border-color: #dfdfdf;
    background-color: #fff;
    transition: none;
  }
  .about .about_img {
    margin-bottom: 30px;
  }
  .about .about_img img {
    width: 100%;
    height: auto;
  }

  .about .about_sec {
    margin-bottom: 30px;
  }

  .about .catch {
    font-size: 1.25em;
    line-height: 1.5;
  }
  .about h4 {
    font-size: 18px;
    line-height: 1.5;
    margin-bottom: 10px;
  }
  .about .about_image {
    width: 100%;
    margin: 23px auto 40px;
  }
  .about .about_image img {
    width: 100%;
  }
  .about p {
    font-size: 14px;
    line-height: 1.8;
    margin-bottom: 20px;
  }
  .about dl {
    margin-top: 30px;
  }
  .about dl dt {
    font-size: 18px;
    color: #0056a8;
    margin-bottom: 10px;
    line-height: 1.4;
  }
  .about dl dd {
    font-size: 14px;
    line-height: 1.8;
    margin-bottom: 20px;
  }
  .about .btn_wrap {
    text-align: center;
  }
  .about .btn_wrap .btn {
    display: inline-block;
    width: 208px;
    height: 40px;
  }
  .about .btn_wrap .btn:first-child {
    margin-right: 0;
    margin-bottom: 10px;
  }
  .about .btn_wrap .btn a {
    position: relative;
    display: block;
    width: 100%;
    height: 100%;
    border: 1px solid #000;
    border-radius: 4px;
    font-size: 12px;
    line-height: 40px;
    text-align: center;
    color: #0056a8;
    -webkit-transition: all 0.2s linear;
    transition: all 0.2s linear;
  }
  .about .btn_wrap .btn a .arrow {
    position: absolute;
    top: 50%;
    right: 8px;
    background: url("img/common/arrow_blue.svg") no-repeat center center;
    -webkit-background-size: 3px auto;
    background-size: 3px auto;
    width: 12px;
    height: 12px;
    border: 1px solid #0056a8;
    border-radius: 50%;
    margin-top: -7px;
    -webkit-transition: all 0.2s linear;
    transition: all 0.2s linear;
  }
  .about .btn_wrap .btn a:hover {
    color: #0056a8;
    background: none;
    border: 1px solid #000;
    -webkit-transition: none;
    transition: none;
  }
  .about .btn_wrap .btn a:hover .arrow {
    background: url("img/common/arrow_blue.svg") no-repeat center center;
    -webkit-background-size: 3px auto;
    background-size: 3px auto;
    border: 1px solid #0056a8;
    -webkit-transition: none;
    transition: none;
  }
  .main_service {
    margin: 30px 0 0 0;
  }
  .main_service li {
    position: relative;
    width: 100%;
    float: none;
    overflow: hidden;
  }
  .main_service li:before {
    content: "";
    width: 24px;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    background-color: #ecf1f6;
    visibility: visible;
  }

  .main_service li div {
    width: 88%;
    padding: 20px 0 0 0;
    padding-left: 0;
    float: right;
    border-bottom: 1px solid #b4b4b4;
  }

  .main_service li div h4 {
    font-size: 15px;
    font-weight: bold;
    margin-bottom: 5px;
    line-height: 1.2;
    margin-left: 75px;
  }
  .main_service li div p {
    font-size: 12px;
    line-height: 1.6;
  }
  .main_service li div p.service_txt {
    font-size: 12px;
    font-weight: bold;
    margin-bottom: 10px;
    white-space: normal;
    line-height: 1.5;
    margin-left: 75px;
  }
  .main_service li:first-child div {
    padding-top: 0;
  }
  .main_service li.consulting div {
    background: url("img/service/icon_l_consulting.png") no-repeat left 5px;
    background-size: 65px auto;
  }
  .main_service li.consulting:before {
    background-color: #ecf1f6;
  }

  .main_service li.system div {
    background: url("img/service/icon_l_system.png") no-repeat left 25px;
    background-size: 65px auto;
  }
  .main_service li.system:before {
    background-color: #ecf1f6;
  }

  .main_service li.enforcement div {
    background: url("img/service/icon_l_enforcement.png") no-repeat left 25px;
    background-size: 65px auto;
  }
  .main_service li.enforcement:before {
    background-color: #ecf1f6;
  }
  .main_service li.enforcement:after {
    content: "";
    width: 24px;
    height: 7px;
    position: absolute;
    bottom: 0;
    left: 0;
    background: url("img/service/ar1.png") no-repeat left top;
    background-size: 24px 7px;
    visibility: visible;
  }

  .main_service li.content div {
    background: url("img/service/icon_l_contents.png") no-repeat left 25px;
    background-size: 65px auto;
  }
  .main_service li.content:before {
    background-color: #d8e2eb;
  }

  .main_service li.delivery div {
    background: url("img/service/icon_l_delivery.png") no-repeat left 25px;
    background-size: 65px auto;
  }
  .main_service li.delivery:before {
    background-color: #d8e2eb;
  }
  .main_service li.delivery:after {
    content: "";
    width: 24px;
    height: 7px;
    position: absolute;
    bottom: 0;
    left: 0;
    background: url("img/service/ar2.png") no-repeat left top;
    background-size: 24px 7px;
    visibility: visible;
  }

  .main_service li.maintenance div {
    background: url("img/service/icon_l_maintenance.png") no-repeat left 25px;
    background-size: 65px auto;
  }
  .main_service li.maintenance:before {
    background-color: #bbcbda;
  }

  .main_service li.marketing div {
    background: url("img/service/icon_l_marketing.png") no-repeat left 25px;
    background-size: 65px auto;
  }
  .main_service li.marketing:before {
    background-color: #bbcbda;
  }
  .main_service li.marketing:after {
    content: "";
    width: 24px;
    height: 7px;
    position: absolute;
    bottom: 0;
    left: 0;
    background: url("img/service/ar3.png") no-repeat left top;
    background-size: 24px 7px;
    visibility: visible;
  }
}

.works_intro .works {
  background: #fff;
  padding-bottom: 80px;
}

.works_intro .works_wrap {
  background: none;
}

.works_intro .works_wrap .works_li li {
  opacity: 0;
  filter: alpha(opacity=0);
}

.works_intro .works_wrap .category li {
  display: inline-block;
  margin-left: 26px;
  font-size: 12px;
  font-weight: bold;
  width: auto;
}

.works_intro .works_wrap .category li:first-child {
  margin-left: 0;
}

.works_intro .works_wrap .category li.is-current a {
  color: #0056a8;
}

.works_intro .works_wrap .category li.category_all {
  background: url("img/work/arrowcircle_all_off.png") no-repeat right center;
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear;
}

.works_intro .works_wrap .category li.category_commercial {
  background: url("img/work/arrowcircle_commercial_off.png") no-repeat right center;
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear;
}

.works_intro .works_wrap .category li.category_large {
  background: url("img/work/arrowcircle_large_off.png") no-repeat right center;
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear;
}

.works_intro .works_wrap .category li.category_public {
  background: url("img/work/arrowcircle_public_off.png") no-repeat right center;
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear;
}

.works_intro .works_wrap .category li.category_traffic {
  background: url("img/work/arrowcircle_traffic_off.png") no-repeat right center;
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear;
}

.works_intro .works_wrap .category li.category_movie {
  background: url("img/work/arrowcircle_movie_off.png") no-repeat right center;
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear;
}

.works_intro .works_wrap .category li.category_office {
  background: url("img/work/arrowcircle_office_off.png") no-repeat right center;
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear;
}

.works_intro .works_wrap .category li.category_others {
  background: url("img/work/arrowcircle_others_off.png") no-repeat right center;
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear;
}

.works_intro .works_wrap .category li.category_store {
  background: url("img/work/arrowcircle_store_off.png") no-repeat right center;
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear;
}

.works_intro .works_wrap .category li.category_all:hover {
  background: url("img/work/arrowcircle_all_on.png") no-repeat right center;
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear;
}

.works_intro .works_wrap .category li.category_all:hover {
  background: url("img/work/arrowcircle_all_on.png") no-repeat right center;
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear;
}

.works_intro .works_wrap .category li.category_commercial:hover {
  background: url("img/work/arrowcircle_commercial_on.png") no-repeat right center;
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear;
}

.works_intro .works_wrap .category li.category_large:hover {
  background: url("img/work/arrowcircle_large_on.png") no-repeat right center;
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear;
}

.works_intro .works_wrap .category li.category_public:hover {
  background: url("img/work/arrowcircle_public_on.png") no-repeat right center;
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear;
}

.works_intro .works_wrap .category li.category_traffic:hover {
  background: url("img/work/arrowcircle_traffic_on.png") no-repeat right center;
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear;
}

.works_intro .works_wrap .category li.category_movie:hover {
  background: url("img/work/arrowcircle_movie_on.png") no-repeat right center;
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear;
}

.works_intro .works_wrap .category li.category_office:hover {
  background: url("img/work/arrowcircle_office_on.png") no-repeat right center;
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear;
}

.works_intro .works_wrap .category li.category_others:hover {
  background: url("img/work/arrowcircle_others_on.png") no-repeat right center;
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear;
}

.works_intro .works_wrap .category li.category_store:hover {
  background: url("img/work/arrowcircle_store_on.png") no-repeat right center;
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear;
}

.works_intro .works_wrap .category li a {
  display: block;
  width: 100%;
  height: 100%;
  padding: 1px 18px 1px 0;
  -webkit-transition: opacity 0.2s linear;
  transition: opacity 0.2s linear;
}

.works_intro .works_wrap .category li a:hover {
  opacity: 0.6;
  filter: alpha(opacity=60);
  -webkit-transition: opacity 0.2s linear;
  transition: opacity 0.2s linear;
}

.works_intro .works_wrap .category li.active a {
  color: #00569c;
}

.works_intro .works_wrap .category li.active:hover {
  opacity: 1;
  filter: alpha(opacity=100);
}

.works_intro .works_wrap .area {
  display: flex;
  gap: 0 12px;
}

.works_intro .works_wrap .area li a {
  display: inline-block;
  padding: 8px 20px;
  border: 1px solid #0459a9;
  border-radius: 9999px;
  color: #0459a9;
  font-size: 13px;
  cursor: pointer;
  -webkit-transition: all 0.2s ease;
  transition: all 0.2s ease;
}
.pc .works_intro .works_wrap .area li a{
  margin-right: 12px;
}

.works_intro .works_wrap .area li a:hover,
.works_intro .works_wrap .area li.is-current a{
  background: #0459a9;
  color: #fff;
}

.works-navigation {
  margin-bottom: 36px;
}

.works-navigation-lead {
  margin-bottom: 32px;
}

.works-navigation-item {
  display: flex;
  align-items: center;
  margin-bottom: 36px;
}

.works-navigation-list .works-navigation-item:last-child{
  margin-bottom: 0;
}

.works-navigation-item-title {
  width: 130px;
  margin-right: 22px;
  font-size: 14px;
  font-weight: bold;
}

.more {
  position: relative;
  width: 240px;
  height: 40px;
  margin: 0 auto;
  padding-bottom: 130px;
}

.more a {
  display: block;
  width: 208px;
  height: 40px;
  border: 1px solid #000;
  border-radius: 4px;
  text-align: center;
  line-height: 40px;
  font-size: 12px;
  color: #0056a8;
  background: url("img/work/icon_moreview.gif") no-repeat right 10px center;
  -webkit-background-size: 14px auto;
  background-size: 14px auto;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

@media screen and (max-width: 768px) {
  .works-navigation {
    margin-bottom: 0;
  }
  .works-navigation-item.-pc{
    display: none;
  }
  .works_intro .works {
    padding-bottom: 0;
  }
  .works_intro .works_wrap {
    max-width: 89.583%;
    padding: 0;
  }
  .works_wrap {
    max-width: 89.583%;
  }
  .works_wrap .work_txt {
    font-size: 0.8rem;
    line-height: 1.6;
    margin-bottom: 40px;
  }
  .works .works_wrap .down_menu {
    width: 100%;
    border: 1px solid #000;
    border-radius: 4px;
    text-align: center;
    margin-bottom: 26px;
    font-weight: 400;
  }
  .works .works_wrap .down_menu .category_active {
    position: relative;
    padding: 18px 0;
  }
  .works .works_wrap .down_menu .category_active .arrow {
    position: absolute;
    top: 50%;
    right: 2.631%;
    width: 20px;
    height: 20px;
    margin-top: -10px;
    border-radius: 50%;
    background: url("img/work/arrowcircle_store_off.png") no-repeat center center;
    background-size: 20px;
    transform: rotate(90deg);
  }
  .works .works_wrap .down_menu .active {
    color: #00569c;
  }
  .works .works_wrap .down_menu .active .arrow {
    transform: rotate(-90deg);
  }
  .works_intro .works_wrap .area {
    gap: 16px 12px;
    flex-wrap: wrap;
  }
  .works-menu {
    display: none;
    padding: 20px;
  }
  .works-menu-category-title {
    font-size: 14px;
    font-weight: bold;
    text-align: left;
    padding-bottom: 14px;
    border-bottom: 1px solid #E6E6E6;
  }
  .more {
    width: 60.416%;
    height: 40px;
    margin: 0 auto;
    padding-bottom: 80px;
  }
  .more a {
    display: block;
    width: 100%;
    height: 40px;
    border: 1px solid #000;
    border-radius: 4px;
    text-align: center;
    line-height: 40px;
    font-size: 13px;
    color: #0056a8;
  }
}

.works_detail {
  max-width: 1120px;
  min-width: 1120px;
  margin: 0 auto;
  padding: 0 40px;
}

.works_detail .worktxt_wrap {
  width: 750px;
  margin: 0 auto 40px;
}

.works_detail .worktxt_wrap h3 {
  font-size: 32px;
  margin-bottom: 15px;
}

.works_detail .worktxt_wrap p {
  font-size: 13px;
  line-height: 1.8em;
  margin-bottom: 10px;
}

.works_detail .worktxt_wrap p.caption {
  font-size: 21px;
  line-height: 1.3;
}

.works_detail .worktxt_wrap p.category {
  display: inline-block;
  margin-right: 20px;
}

.works_detail .worktxt_wrap p.date {
  display: inline-block;
}

.works_detail .worktxt_wrap p.date_list {
  text-indent: -2.7em;
  padding-left: 2.7em;
}

.works_detail .worktxt_wrap .responsible {
  width: 609px;
  margin: 0 auto;
}

.works_detail .worktxt_wrap .responsible li {
  width: 67px;
  display: block;
  padding: 0 10px;
  position: relative;
  float: left;
  height: 58px;
}

.works_detail .worktxt_wrap .responsible li p {
  font-size: 0.6em;
  padding-top: 50px;
  letter-spacing: -0.1em;
  text-align: center;
  word-break: keep-all;
}

.works_detail .worktxt_wrap .responsible li.consulting_on {
  background: url("img/work/detail/icon_consulting_on.png") no-repeat center center;
  -webkit-background-size: 35px auto;
  background-size: 35px auto;
  color: #00569c;
}

.works_detail .worktxt_wrap .responsible li.consulting_off {
  background: url("img/work/detail/icon_consulting_off.png") no-repeat center center;
  -webkit-background-size: 35px auto;
  background-size: 35px auto;
  color: #c8c8c8;
}

.works_detail .worktxt_wrap .responsible li.system_on {
  background: url("img/work/detail/icon_system_on.png") no-repeat center center;
  -webkit-background-size: 30px auto;
  background-size: 30px auto;
  color: #00569c;
}

.works_detail .worktxt_wrap .responsible li.system_off {
  background: url("img/work/detail/icon_system_off.png") no-repeat center center;
  -webkit-background-size: 30px auto;
  background-size: 30px auto;
  color: #c8c8c8;
}

.works_detail .worktxt_wrap .responsible li.enforce_on {
  background: url("img/work/detail/icon_enforcement‎_on.png") no-repeat center center;
  -webkit-background-size: 28px auto;
  background-size: 28px auto;
  color: #00569c;
}

.works_detail .worktxt_wrap .responsible li.enforce_off {
  background: url("img/work/detail/icon_enforcement‎_off.png") no-repeat center center;
  -webkit-background-size: 28px auto;
  background-size: 28px auto;
  color: #c8c8c8;
}

.works_detail .worktxt_wrap .responsible li.content_on {
  background: url("img/work/detail/icon_contents_on.png") no-repeat center center;
  -webkit-background-size: 34px auto;
  background-size: 34px auto;
  color: #00569c;
}

.works_detail .worktxt_wrap .responsible li.content_off {
  background: url("img/work/detail/icon_contents_off.png") no-repeat center center;
  -webkit-background-size: 34px auto;
  background-size: 34px auto;
  color: #c8c8c8;
}

.works_detail .worktxt_wrap .responsible li.delivery_on {
  background: url("img/work/detail/icon_delivery_on.png") no-repeat center center;
  -webkit-background-size: 37px auto;
  background-size: 37px auto;
  color: #00569c;
}

.works_detail .worktxt_wrap .responsible li.delivery_off {
  background: url("img/work/detail/icon_delivery_off.png") no-repeat center center;
  -webkit-background-size: 37px auto;
  background-size: 37px auto;
  color: #c8c8c8;
}

.works_detail .worktxt_wrap .responsible li.mainte_on {
  background: url("img/work/detail/icon_maintenance_on.png") no-repeat center center;
  -webkit-background-size: 28px auto;
  background-size: 28px auto;
  color: #00569c;
}

.works_detail .worktxt_wrap .responsible li.mainte_off {
  background: url("img/work/detail/icon_maintenance_off.png") no-repeat center center;
  -webkit-background-size: 28px auto;
  background-size: 28px auto;
  color: #c8c8c8;
}

.works_detail .worktxt_wrap .responsible li.marketing_on‎ {
  background: url("img/work/detail/icon_marketing_on.png") no-repeat center center;
  -webkit-background-size: 27px auto;
  background-size: 27px auto;
  color: #00569c;
}

.works_detail .worktxt_wrap .responsible li.marketing_off {
  background: url("img/work/detail/icon_marketing_off.png") no-repeat center center;
  -webkit-background-size: 27px auto;
  background-size: 27px auto;
  color: #c8c8c8;
}

.works_detail .movie_wrap {
  width: 520px;
  margin: 0 auto 50px;
}

.works_detail .movie_wrap img {
  width: 100%;
}

.works_detail .movie_wrap iframe {
  border: none;
}

.works_detail .bx-pager .bx-pager-item a.active .bd_lb,
.works_detail .bx-pager .bx-pager-item a.active .bd_rt {
  height: 100%;
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear;
}

.works_detail .bx-pager .bx-pager-item a.active .bd_lt,
.works_detail .bx-pager .bx-pager-item a.active .bd_rb {
  width: 100%;
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear;
}

.works_detail .bx-pager .bx-pager-item .thumbnail {
  position: relative;
}

.works_detail .bx-pager .bx-pager-item .thumbnail .bd_commercial {
  background: #f8599d;
  position: absolute;
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear;
}

.works_detail .bx-pager .bx-pager-item .thumbnail .bd_large {
  background: #0156a9;
  position: absolute;
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear;
}

.works_detail .bx-pager .bx-pager-item .thumbnail .bd_public {
  background: #7fc702;
  position: absolute;
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear;
}

.works_detail .bx-pager .bx-pager-item .thumbnail .bd_traffic {
  background: #fc7f04;
  position: absolute;
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear;
}

.works_detail .bx-pager .bx-pager-item .thumbnail .bd_movie {
  background: #fe325d;
  position: absolute;
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear;
}

.works_detail .bx-pager .bx-pager-item .thumbnail .bd_office {
  background: #029563;
  position: absolute;
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear;
}

.works_detail .bx-pager .bx-pager-item .thumbnail .bd_others {
  background: #8018a2;
  position: absolute;
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear;
}

.works_detail .bx-pager .bx-pager-item .thumbnail .bd_lb {
  bottom: 0;
  left: 0;
  width: 6px;
  height: 0;
}

.works_detail .bx-pager .bx-pager-item .thumbnail .bd_lt {
  top: 0;
  left: 0;
  width: 0;
  height: 6px;
}

.works_detail .bx-pager .bx-pager-item .thumbnail .bd_rt {
  top: 0;
  right: 0;
  width: 6px;
  height: 0;
}

.works_detail .bx-pager .bx-pager-item .thumbnail .bd_rb {
  bottom: 0;
  right: 0;
  width: 0;
  height: 6px;
}

.works_detail .bx-pager .bx-pager-item .thumbnail:hover .bd_lb,
.works_detail .bx-pager .bx-pager-item .thumbnail:hover .bd_rt {
  height: 100%;
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear;
}

.works_detail .bx-pager .bx-pager-item .thumbnail:hover .bd_lt,
.works_detail .bx-pager .bx-pager-item .thumbnail:hover .bd_rb {
  width: 100%;
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear;
}

.works_detail .txt {
  position: relative;
  width: 520px;
  margin: 0 auto 70px;
}
/*
.works_detail .txt table {
  font-size: 13px;
  line-height: 1.8em;
  margin-bottom: 13px;
}

.works_detail .txt table th {
  width: 80px;
  text-align: left;
}

.works_detail .txt p {
  line-height: 1.8em;
  font-size: 13px;
  text-indent: -1.5em;
  padding-left: 1.5em;
}
*/
.works_detail .txt p.official {
  padding-left: 0;
  text-indent: 0;
}

.works_detail .txt .logo_skytree {
  position: absolute;
  bottom: -24px;
  right: -15px;
  width: 61px;
}

.works_detail .txt .logo_skytree img {
  width: 100%;
}

.case_list {
  width: 100%;
  background: #f2f2f2;
  padding: 38px 0 92px;
}

.case_list .case_list_wrap {
  max-width: 1120px;
  min-width: 1120px;
  margin: 0 auto;
  padding: 0 40px;
}

.case_list .case_list_wrap .list_btn {
  position: relative;
  width: 240px;
  height: 40px;
  margin: 0 auto;
}

.case_list .case_list_wrap .list_btn a {
  display: block;
  width: 240px;
  height: 40px;
  border: 1px solid #000;
  border-radius: 4px;
  font-size: 12px;
  line-height: 40px;
  text-align: center;
  color: #0056a8;
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

.case_list .case_list_wrap .list_btn a .arrow {
  position: absolute;
  top: 50%;
  margin-top: -7.5px;
  right: 7px;
  width: 13px;
  height: 13px;
  border: 1px solid #0056a8;
  border-radius: 50%;
  background: url("img/common/arrow_blue.svg") no-repeat center center;
  -webkit-background-size: 3px auto;
  background-size: 3px auto;
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear;
}

.case_list .case_list_wrap .list_btn a:hover {
  background: #0056a8;
  border: 1px solid #f2f2f2;
  color: #fff;
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear;
}

.case_list .case_list_wrap .list_btn a:hover .arrow {
  border: 1px solid #fff;
  background: url("img/common/arrow_white.svg") no-repeat center center;
  -webkit-background-size: 3px auto;
  background-size: 3px auto;
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear;
}

@media screen and (max-width: 768px) {
  .contents {
    overflow: visible;
  }
  .works_detail {
    max-width: 89.583%;
    min-width: 89.583%;
    padding: 80px 0 0;
  }
  .works_detail .worktxt_wrap {
    width: 100%;
    margin: 0 auto 28px;
  }
  .works_detail .worktxt_wrap h3 {
    font-size: 27px;
    margin-bottom: 15px;
    line-height: 1.2;
  }
  .works_detail .worktxt_wrap p {
    font-size: 14px;
    line-height: 1.8em;
    margin-bottom: 20px;
  }
  .works_detail .worktxt_wrap p.caption {
    font-size: 1em;
    line-height: 1.6em;
  }
  .works_detail .worktxt_wrap p.category {
    display: inline-block;
    margin-right: 10px;
    line-height: 1.4em;
  }
  .works_detail .worktxt_wrap p.date {
    display: inline-block;
  }
  .works_detail .worktxt_wrap .responsible {
    width: 102%;
    margin: 0 auto;
    letter-spacing: -0.4em;
    text-align: center;
  }
  .works_detail .worktxt_wrap .responsible li {
    display: inline-block;
    width: 25%;
    padding: 0;
    margin: 0;
    position: relative;
    float: none;
    height: 58px;
    color: #c8c8c8;
  }
  .works_detail .worktxt_wrap .responsible li.consulting_on {
    -webkit-background-size: 28px auto;
    background-size: 28px auto;
  }
  .works_detail .worktxt_wrap .responsible li.consulting_off {
    -webkit-background-size: 28px auto;
    background-size: 28px auto;
  }
  .works_detail .worktxt_wrap .responsible li.system_on {
    -webkit-background-size: 38px auto;
    background-size: 38px auto;
  }
  .works_detail .worktxt_wrap .responsible li.system_off {
    -webkit-background-size: 38px auto;
    background-size: 38px auto;
  }
  .works_detail .worktxt_wrap .responsible li.enforce_on {
    -webkit-background-size: 35px auto;
    background-size: 35px auto;
  }
  .works_detail .worktxt_wrap .responsible li.enforce_off {
    -webkit-background-size: 35px auto;
    background-size: 35px auto;
  }
  .works_detail .worktxt_wrap .responsible li.content_on {
    -webkit-background-size: 38px auto;
    background-size: 38px auto;
  }
  .works_detail .worktxt_wrap .responsible li.content_off {
    -webkit-background-size: 38px auto;
    background-size: 38px auto;
  }
  .works_detail .worktxt_wrap .responsible li.delivery_on {
    -webkit-background-size: 40px auto;
    background-size: 40px auto;
  }
  .works_detail .worktxt_wrap .responsible li.delivery_off {
    -webkit-background-size: 40px auto;
    background-size: 40px auto;
  }
  .works_detail .worktxt_wrap .responsible li.mainte_on‎ {
    -webkit-background-size: 34px auto;
    background-size: 34px auto;
  }
  .works_detail .worktxt_wrap .responsible li.mainte_on {
    -webkit-background-size: 34px auto;
    background-size: 34px auto;
  }
  .works_detail .slide li {
    width: 100%;
  }
  .works_detail .movie_wrap {
    position: relative;
    width: 100%;
    margin: 0 auto 60px;
    padding-top: 60%;
  }
  .works_detail .movie_wrap iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }
  .works_detail .bx-pager .bx-pager-item .thumbnail {
    position: relative;
  }
  .works_detail .bx-pager .bx-pager-item .thumbnail .bd_commercial {
    background: none;
    -webkit-transition: none;
    transition: none;
  }
  .works_detail .bx-pager .bx-pager-item .thumbnail .bd_large {
    background: none;
    -webkit-transition: none;
    transition: none;
  }
  .works_detail .bx-pager .bx-pager-item .thumbnail .bd_public {
    background: none;
    -webkit-transition: none;
    transition: none;
  }
  .works_detail .bx-pager .bx-pager-item .thumbnail .bd_traffic {
    background: none;
    -webkit-transition: none;
    transition: none;
  }
  .works_detail .bx-pager .bx-pager-item .thumbnail .bd_movie {
    background: none;
    -webkit-transition: none;
    transition: none;
  }
  .works_detail .bx-pager .bx-pager-item .thumbnail .bd_office {
    background: none;
    -webkit-transition: none;
    transition: none;
  }
  .works_detail .bx-pager .bx-pager-item .thumbnail .bd_others {
    background: none;
    -webkit-transition: none;
    transition: none;
  }
  .works_detail .bx-pager .bx-pager-item .thumbnail .bd_lb {
    bottom: 0;
    left: 0;
    width: 0;
    height: 0;
  }
  .works_detail .bx-pager .bx-pager-item .thumbnail .bd_lt {
    top: 0;
    left: 0;
    width: 0;
    height: 0;
  }
  .works_detail .bx-pager .bx-pager-item .thumbnail .bd_rt {
    top: 0;
    right: 0;
    width: 0;
    height: 0;
  }
  .works_detail .bx-pager .bx-pager-item .thumbnail .bd_rb {
    bottom: 0;
    right: 0;
    width: 0;
    height: 0;
  }
  .works_detail .bx-pager .bx-pager-item .thumbnail:hover .bd_lb,
  .works_detail .bx-pager .bx-pager-item .thumbnail:hover .bd_rt {
    height: 0;
    -webkit-transition: none;
    transition: none;
  }
  .works_detail .bx-pager .bx-pager-item .thumbnail:hover .bd_lt,
  .works_detail .bx-pager .bx-pager-item .thumbnail:hover .bd_rb {
    width: 0;
    -webkit-transition: none;
    transition: none;
  }
  .works_detail .txt {
    width: 100%;
    margin: 0 auto 50px;
  }
  .works_detail .txt p {
    line-height: 1.8em;
    font-size: 0.73em;
  }
  .works_detail .txt p.liaison {
    text-indent: -5em;
    padding-left: 5em;
  }
  .works_detail .txt .logo_skytree {
    position: static;
    width: 25%;
    margin-top: 10px;
  }
  .works_detail .txt .logo_skytree img {
    width: 100%;
  }
  .case_list {
    width: 100%;
    background: #f2f2f2;
    padding: 38px 0 92px;
  }
  .case_list .case_list_wrap {
    max-width: 100%;
    min-width: 100%;
    margin: 0 auto;
    padding: 0px;
  }
  .case_list .case_list_wrap .list_btn {
    position: relative;
    width: 59.895%;
    height: 40px;
    margin: 0 auto;
  }
  .case_list .case_list_wrap .list_btn a {
    display: block;
    width: 100%;
    height: 40px;
    border: 1px solid #000;
    border-radius: 4px;
    font-size: 12px;
    line-height: 40px;
    text-align: center;
    color: #0056a8;
    -webkit-transition: none;
    transition: none;
  }
  .case_list .case_list_wrap .list_btn a:hover {
    background: none;
    border: 1px solid #000;
    color: #0056a8;
    -webkit-transition: none;
    transition: none;
  }
  .case_list .case_list_wrap .list_btn a:hover .arrow {
    border: 1px solid #0056a8;
    background: url("img/common/arrow_blue.svg") no-repeat center center;
    -webkit-background-size: 3px auto;
    background-size: 3px auto;
    -webkit-transition: all 0.2s linear;
    transition: all 0.2s linear;
  }
  .case_list .case_list_wrap .list_btn img {
    position: absolute;
    top: 50%;
    right: 3.26%;
    margin-top: -7px;
    width: 4px;
    border: 1px solid #0056a8;
    border-radius: 50%;
    padding: 3px 4.5px 3px 4.5px;
    -webkit-transition: none;
    transition: none;
  }
  .case_list .case_list_wrap .list_btn img.arrow_on {
    opacity: 0;
    filter: alpha(opacity=0);
  }
}

.news_list {
  max-width: 1120px;
  min-width: 1120px;
  margin: 0 auto;
  padding: 0 40px;
}

.news_wrap {
  width: 980px;
  margin: 0 auto;
  padding: 0 40px 130px;
}

.sidebar {
  position: relative;
  width: 160px;
  overflow: hidden;
  float: right;
}

.sidebar ul li {
  border-bottom: 1px solid #000;
}

.sidebar ul li:first-child {
  border-top: 1px solid #000;
}

.sidebar ul li a {
  position: relative;
  display: block;
  width: 100%;
  height: 100%;
  padding: 13px 0;
  font-size: 15px;
  padding-left: 58px;
}

.sidebar ul li a:hover {
  color: #0056a9;
}

/*.sidebar ul li a:hover .arrow {*/
.sidebar ul li a:hover:after {
  content: " ";
  display: inline-block;
  background: url("img/common/arrow_white.svg") no-repeat center center;
  -webkit-background-size: 3px 3px;
  background-size: 3px;
  border-radius: 50%;
  background-color: #0056a9;
}

/*.sidebar ul li a .arrow {*/
.sidebar ul li a:after {
  content: " ";
  display: inline-block;
  position: absolute;
  top: 50%;
  left: 34px;
  width: 13px;
  height: 13px;
  margin-top: -7.5px;
  border: 1px solid #0056a9;
  background: url("img/common/arrow_blue.svg") no-repeat center center;
  -webkit-background-size: 3px 3px;
  background-size: 3px;
  border-radius: 50%;
}

/*.sidebar ul li.active a .arrow {*/
.sidebar ul li.active a:after {
  width: 13px;
  height: 13px;
  border: 1px solid #0056a9;
  background: url("img/common/arrow_white.svg") no-repeat center center;
  background-color: #0056a9;
  -webkit-background-size: 3px 3px;
  background-size: 3px;
  border-radius: 50%;
}

.content {
  width: 750px;
  float: left;
}

.content ul {
  margin-bottom: 85px;
}

.content ul li {
  border-bottom: 1px solid #b4b4b4;
}

.content ul li a {
  display: block;
  width: 100%;
  height: 100%;
  padding: 30px 0;
  -webkit-transition: color 0.2s linear;
  transition: color 0.2s linear;
}

.content ul li a:hover dt {
  color: #0056a9;
  -webkit-transition: color 0.2s linear;
  transition: color 0.2s linear;
}

.content ul li:first-child a {
  padding: 0 0 30px 0;
}

.content ul li dt {
  font-size: 21px;
  margin-bottom: 20px;
  line-height: 1.4;
}

.content ul li dt span {
  font-size: 13px;
  color: #0056a9;
  font-family: "Roboto", sans-serif;
  letter-spacing: 0.04em;
  display: block;
  margin-bottom: 7px;
}

.content ul li dd {
  overflow: hidden;
  width: 100%;
  color: #505050;
}

.content ul li dd p {
  position: relative;
  font-size: 14px;
  height: 75.6px;
  line-height: 1.8;
}

.content ul li dd p:before,
.content ul li dd p:after {
  position: absolute;
  background: #fff;
}

.content ul li dd p:before {
  content: "...";
  top: 50.4px;
  right: 0;
  padding: 0.2em;
}

.content ul li dd p:after {
  content: "";
  height: 100%;
  width: 100%;
}

.pagination {
  text-align: center;
}

.pagination h2 {
  text-indent: 100%;
  white-space: nowrap;
  overflow: hidden;
}

.pagination .nav-links {
  display: inline-block;
  font-family: "Roboto", sans-serif;
  font-size: 14px;
  font-weight: bold;
  text-align: center;
}

.pagination .nav-links .current {
  color: #0056a8;
}

.pagination .nav-links a.page-numbers {
  -webkit-transition: opacity 0.2s linear;
  transition: opacity 0.2s linear;
}

.pagination .nav-links a.page-numbers:hover {
  opacity: 0.6;
  -webkit-transition: opacity 0.2s linear;
  transition: opacity 0.2s linear;
}

.pagination .nav-links .page-numbers {
  padding: 0 10px;
}

.pagination .nav-links a.prev {
  width: 6px;
  height: 11px;
  padding-right: 27px;
  background-size: 7px 12px;
}

.pagination .nav-links a.prev img {
  width: 6px;
  height: 11px;
}

.pagination .nav-links a.next {
  width: 7px;
  height: 12px;
  padding-left: 27px;
  background-size: 7px 12px;
}

.pagination .nav-links a.next img {
  width: 7px;
  height: 12px;
}

@media screen and (max-width: 768px) {
  .news_list {
    max-width: 89.583%;
    min-width: 89.583%;
    padding: 0;
    padding-top: 80px;
  }
  .news_wrap {
    width: 89.583%;
    margin: 0 auto;
    padding: 0;
    padding-bottom: 80px;
  }
  .down_menu {
    width: 100%;
    border: 1px solid #000;
    border-radius: 4px;
    text-align: center;
    font-weight: bold;
  }
  .down_menu .category_active {
    position: relative;
    padding: 18px 0;
  }
  .down_menu .category_active .arrow {
    position: absolute;
    top: 50%;
    right: 2.631%;
    width: 20px;
    height: 20px;
    margin-top: -10px;
    background: url("img/common/arrow_open_white.svg") no-repeat center center;
    -webkit-background-size: 10px 10px;
    background-size: 10px;
    border-radius: 50%;
    background-color: #00569c;
  }
  .down_menu .active {
    color: #00569c;
  }
  .down_menu .active .arrow {
    background: url("img/common/arrow_close_white.svg") no-repeat center center;
    -webkit-background-size: 10px 10px;
    background-size: 10px;
    border-radius: 50%;
    background-color: #00569c;
  }
  .down_menu ul {
    padding-top: 0;
  }
  .down_menu .category_list li {
    /* display: none; */
    border-top: 1px solid #b4b4b4;
    margin: 0 auto;
    width: 94.883%;
  }
  .down_menu .category_list li a {
    padding: 18px 0;
    display: block;
    width: 100%;
  }
  .article_list li {
    display: none;
    border-top: 1px solid #b4b4b4;
    margin: 0 auto;
    width: 94.883%;
  }
  .article_list li a {
    padding: 18px 0;
    display: block;
    width: 100%;
  }
  .archive_list li {
    display: none;
    border-top: 1px solid #b4b4b4;
    margin: 0 auto;
    width: 94.883%;
  }
  .archive_list li a {
    padding: 18px 0;
    display: block;
    width: 100%;
  }
  .content {
    width: 100%;
    margin: 0 auto;
    float: left;
  }
  .content ul {
    margin-bottom: 45px;
  }
  .content ul li {
    border-bottom: 1px solid #b4b4b4;
  }
  .content ul li a {
    display: block;
    width: 100%;
    height: 100%;
    padding: 30px 0;
    -webkit-transition: none;
    transition: none;
  }
  .content ul li a:hover dt {
    color: #000;
    -webkit-transition: none;
    transition: none;
  }
  .content ul li a:hover dd p:before,
  .content ul li a:hover dd p:after {
    -webkit-tap-highlight-color: #f0f0f0;
    background: #f0f0f0;
  }
  .content ul li dt {
    font-size: 16px;
    margin-bottom: 20px;
    line-height: 1.6em;
  }
  .content ul li dt span {
    font-size: 13px;
    color: #0056a9;
    font-family: "Roboto", sans-serif;
    letter-spacing: 0.04em;
    line-height: 2em;
  }
  .content ul li dd {
    overflow: hidden;
    font-size: 12px;
    line-height: 1.8em;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
  }
  .pager_wrap {
    width: 100%;
  }
  .pager_wrap .news_pager {
    position: relative;
    width: 100%;
    margin: 50px auto 100px;
  }
  .pager_wrap .news_pager .pager {
    width: 7px;
    display: inline-block;
  }
  .pager_wrap .news_pager .pager:hover {
    opacity: 0.6;
    filter: alpha(opacity=60);
  }
  .pager_wrap .news_pager .pager img {
    width: 100%;
    vertical-align: middle;
  }
  .pager_wrap .news_pager .pager_prev {
    position: absolute;
    left: 0;
    top: 0;
  }
  .pager_wrap .news_pager .pager_next {
    position: absolute;
    right: 0;
    top: 0;
  }
  .pager_wrap .news_pager ul {
    text-align: center;
  }
  .pager_wrap .news_pager ul li {
    display: inline-block;
    font-size: 16px;
    font-family: "Roboto", sans-serif;
  }
  .pager_wrap .news_pager ul li.active {
    color: #0056a9;
    padding: 0 14px;
  }
  .pager_wrap .news_pager ul li a {
    padding: 0 14px;
  }
  .pager_wrap .news_pager ul li a:hover {
    opacity: 1;
    filter: alpha(opacity=100);
  }
}

.corporate {
  max-width: 1120px;
  min-width: 1120px;
  margin: 0 auto;
  padding: 0 40px;
  padding-bottom: 45px;
}

.corporate .corporate_wrap {
  width: 980px;
  margin: 0 auto;
}

.corporate section.corporate_outline {
  margin-bottom: 80px;
}

.corporate section.corporate_greeting {
  margin-bottom: 60px;
}

.corporate section.corporate_access {
  margin-bottom: 80px;
}

.corporate section .line {
  margin-bottom: 30px;
}

.corporate h3 {
  font-size: 31px;
  margin-bottom: 18px;
}

.corporate .greetings {
  float: left;
  width: 670px;
}

.corporate .image {
  float: right;
}

.corporate .image p {
  margin-top: 0;
}

.corporate .image div {
  width: 277px;
  background: #0056a8;
  margin-bottom: 10px;
}

.corporate .image div img {
  width: 100%;
  height: auto;
}

.corporate .image p {
  font-size: 12px;
}

.corporate p {
  font-size: 14px;
  line-height: 1.8;
  margin-top: 20px;
}

.corporate p:first-child {
  margin-top: 0;
}

.corporate .tokyo {
  margin-bottom: 80px;
}

.corporate table {
  width: 980px;
}

.corporate table tr {
  display: block;
  padding-top: 30px;
}

.corporate table tr:first-child {
  padding-top: 0;
}

.corporate table tr th {
  font-size: 15px;
  width: 130px;
  text-align: left;
  color: #0056a8;
  font-weight: bold;
}

.corporate table tr td {
  font-size: 14px;
  line-height: 2;
}

.corporate table tr td .p_logo {
  width: 89px;
  margin-top: 30px;
  -webkit-transition: opacity 0.3s linear;
  transition: opacity 0.3s linear;
}

.corporate table tr td .p_logo img {
  width: 100%;
}

.corporate table tr td .p_logo:hover {
  opacity: 0.6;
  filter: alpha(opacity=60);
}

.corporate table tr td .privacy_mark_txt {
  font-size: 10px;
}

.corporate table tr td div:first-child {
  margin-bottom: 14px;
}

.corporate table tr td dl {
  width: 390px;
}

.corporate table tr td dl dt {
  display: block;
  width: 130px;
  float: left;
}

.corporate .tel {
  margin-bottom: 30px;
  margin-top: 0;
}

.corporate #map-canvas {
  width: 100%;
  height: 358px;
  margin-bottom: 24px;
}

.corporate .map_img {
  width: 100%;
  margin-bottom: 24px;
}
.corporate .map_img img {
  width: 100%;
}
.corporate .map_img .pc {
  display: block;
}
.corporate .map_img .sp {
  display: none;
}

.corporate .map_link {
  float: right;
  margin-top: 0;
}

.corporate .map_link a {
  border-bottom: 1px solid #000;
}

.corporate .map_link a:hover {
  border-bottom: none;
}

.corporate .station {
  margin-bottom: 0;
  margin-top: 0;
  font-size: 13px;
}

@media screen and (max-width: 768px) {
  .corporate {
    max-width: 89.583%;
    min-width: 89.583%;
    margin: 0 auto;
    padding: 0;
    /*    padding-top: 80px;*/
    padding-bottom: 130px;
  }
  .corporate h2 {
    white-space: nowrap;
    letter-spacing: 0.08rem;
  }
  .__corporate h2 {
    white-space: nowrap;
    letter-spacing: 0.08rem;
  }
  .corporate .corporate_wrap {
    width: 100%;
    margin: 0 auto;
  }
  .corporate section.corporate_outline {
    margin-bottom: 0;
  }
  .corporate section.corporate_greeting {
    margin-bottom: 0;
  }
  .corporate section.corporate_access {
    margin-bottom: 40px;
  }
  .corporate section .line {
    margin-bottom: 28px;
  }
  .corporate h3 {
    font-size: 23px;
    margin-bottom: 14px;
  }
  .corporate .greetings {
    float: none;
    width: 100%;
  }
  .corporate .image {
    float: none;
    margin-bottom: 70px;
  }
  .corporate .image div {
    width: 100%;
    background: #0056a8;
    margin-bottom: 10px;
  }
  .corporate .image div img {
    width: 100%;
    height: auto;
  }
  .corporate .image p {
    font-size: 12px;
  }
  .corporate p {
    font-size: 14px;
    line-height: 1.8;
    margin-bottom: 20px;
  }
  .corporate .tokyo {
    padding-bottom: 0;
    margin-bottom: 0;
    border-bottom: none;
  }
  .corporate .northamerica table tr td dl dt {
    float: none;
    margin-top: 10px;
  }
  .corporate .northamerica table tr td dl dt:first-child {
    margin-top: 0;
  }
  .corporate .northamerica table tr td dl dd {
    line-height: 1;
  }
  .corporate .address {
    margin: 0;
  }
  .corporate table {
    width: 100%;
    font-size: 14px;
    margin-bottom: 70px;
  }
  .corporate table tr {
    padding-top: 20px;
  }
  .corporate table tr th {
    width: 100%;
    display: block;
    text-align: left;
    color: #0056a8;
    font-weight: bold;
    margin-bottom: 8px;
  }
  .corporate table tr td {
    width: 100%;
    display: block;
    font-size: 13px;
    line-height: 2;
    padding-bottom: 0;
  }
  .corporate table tr td .p_logo {
    width: 89px;
    margin-top: 15px;
    -webkit-transition: opacity 0.3s linear;
    transition: opacity 0.3s linear;
  }
  .corporate table tr td .p_logo img {
    width: 100%;
  }
  .corporate table tr td .p_logo:hover {
    opacity: 0.6;
    filter: alpha(opacity=60);
  }
  .corporate table tr td .privacy_mark_txt {
    font-size: 10px;
    margin-bottom: 0;
  }
  .corporate table tr td dl {
    width: 100%;
  }
  .corporate table tr td dl dt {
    width: 120px;
    float: left;
  }
  .corporate #map-canvas {
    width: 100%;
    height: 230px;
    margin-bottom: 10px;
  }
  .corporate .map_img {
    width: 100%;
    margin-bottom: 10px;
  }
  .corporate .map_img img {
    width: 100%;
  }
  .corporate .map_img .pc {
    display: none;
  }
  .corporate .map_img .sp {
    display: block;
  }
  .corporate .map_link {
    float: none;
    text-align: right;
  }
  .corporate .map_link a {
    font-size: 12px;
    border-bottom: 1px solid #000;
  }
  .corporate .map_link a:hover {
    border-bottom: 1px solid #000;
  }
  .corporate .station {
    margin-bottom: 0;
    font-size: 12px;
  }
}

.news_detail {
  max-width: 1120px;
  min-width: 1120px;
  margin: 0 auto;
  padding: 0 40px;
}

.content_nd dl {
  padding-bottom: 56px;
  border-bottom: 1px solid #b4b4b4;
}

.content_nd dl dt {
  font-size: 21px;
}

.content_nd dl dt span {
  font-size: 13px;
  color: #0056a9;
  font-family: "Roboto", sans-serif;
  letter-spacing: 0.04em;
  display: block;
  margin-bottom: 14px;
}

.content_nd dl dt .line {
  width: 18px;
  height: 2px;
  background: #0056a9;
  margin-top: 16px;
  margin-bottom: 20px;
}

.content_nd dl dd {
  font-size: 14px;
  line-height: 1.8em;
}

.content_nd dl dd p {
  margin-bottom: 26px;
}

.content_nd dl dd p a {
  text-decoration: underline;
  word-break: break-all;
}

.content_nd dl dd p a:hover {
  text-decoration: none;
}

.content_nd dl dd ul li {
  border: none;
  margin-bottom: 26px;
}

.content_nd dl dd ul li p {
  margin-bottom: 0;
}

.content_nd dl dd .download {
  width: 100%;
  margin-top: 36px;
  border: 1px solid #000;
  border-radius: 4px;
  padding: 20px;
}

.content_nd dl dd .download p {
  margin-bottom: 0;
}

.content_nd dl dd .download p a {
  display: inline-block;
  padding-left: 1.6em;
  text-decoration: underline;
  background: url("img/news/icon_pdf.png") no-repeat left center;
  -webkit-background-size: 16px 16px;
  background-size: 16px;
}

.content_nd dl dd .download p a:hover {
  text-decoration: none;
}

.content_nd .return_news {
  position: relative;
  width: 240px;
  height: 40px;
  margin: 50px auto 0;
}

.content_nd .return_news a {
  display: block;
  color: #0056a9;
  width: 100%;
  height: 100%;
  border: 1px solid #000;
  border-radius: 4px;
  font-size: 12px;
  text-align: center;
  line-height: 38px;
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

.content_nd .return_news a:hover {
  border: 1px solid #fff;
  background: #0056a9;
  color: #fff;
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear;
}

.content_nd .return_news a:hover .arrow {
  border: 1px solid #fff;
  border-radius: 50%;
  background: url("img/common/arrow_white.svg") no-repeat center center;
  -webkit-background-size: 3px auto;
  background-size: 3px auto;
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear;
}

.content_nd .return_news .arrow {
  position: absolute;
  top: 50%;
  right: 10px;
  width: 12px;
  height: 12px;
  margin-top: -7px;
  border: 1px solid #0056a9;
  border-radius: 50%;
  background: url("img/common/arrow_blue.svg") no-repeat center center;
  -webkit-background-size: 3px auto;
  background-size: 3px auto;
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear;
}

@media screen and (max-width: 768px) {
  .news_detail {
    max-width: 89.583%;
    min-width: 89.583%;
    padding: 0;
    padding-top: 80px;
  }
  .down_menu {
    margin-bottom: 20px;
  }
  .content_nd dl {
    padding-bottom: 30px;
  }
  .content_nd dl dt {
    font-size: 16px;
    margin-bottom: 20px;
    line-height: 1.6em;
  }
  .content_nd dl dt span {
    font-size: 13px;
    color: #0056a9;
    font-family: "Roboto", sans-serif;
    letter-spacing: 0.04em;
    line-height: 2em;
    margin-bottom: -1px;
  }
  .content_nd dl dt .line {
    width: 18px;
    height: 2px;
    background: #0056a9;
    margin-top: 14px;
    margin-bottom: 20px;
  }
  .content_nd dl dd {
    font-size: 0.8em;
    line-height: 1.8em;
  }
  .content_nd dl dd img {
    width: 100%;
    margin-top: 10px;
  }
  .content_nd dl dd p {
    margin-bottom: 16px;
  }
  .content_nd dl dd .download {
    width: 100%;
    margin-top: 30px;
    border: 1px solid #000;
    border-radius: 4px;
    padding: 0;
  }
  .content_nd dl dd .download p {
    margin-bottom: 0;
    padding: 4.5%;
  }
  .content_nd dl dd .download p:first-child {
    padding-bottom: 0;
  }
  .content_nd dl dd .download p:last-child {
    padding-top: 0;
  }
  .content_nd dl dd .download p a {
    display: block;
    padding-left: 13%;
    text-decoration: underline;
    background: url("img/news/icon_pdf.png") no-repeat left top;
    -webkit-background-size: 24px 24px;
    background-size: 24px;
  }
  .content_nd dl dd .download p a:hover {
    opacity: 1;
    filter: alpha(opacity=100);
  }
  .content_nd dl dd .movie {
    position: relative;
    width: 100%;
    padding-top: 60%;
  }
  .content_nd dl dd .movie iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }
  .content_nd .return_news {
    position: relative;
    width: 60.416%;
    height: 38px;
    margin: 30px auto 0;
  }
  .content_nd .return_news a {
    display: block;
    color: #0056a9;
    width: 100%;
    height: 38px;
    border: 1px solid #000;
    border-radius: 4px;
    font-size: 12px;
    text-align: center;
    line-height: 38px;
    -webkit-transition: none;
    transition: none;
  }
  .content_nd .return_news a:hover {
    border: 1px solid #000;
    background: none;
    color: #0056a9;
    -webkit-transition: none;
    transition: none;
  }
  .content_nd .return_news a:hover .arrow {
    border: 1px solid #0056a9;
    background: url("img/common/arrow_blue.svg") no-repeat center center;
    -webkit-background-size: 3px auto;
    background-size: 3px auto;
    -webkit-transition: all 0.2s linear;
    transition: all 0.2s linear;
  }
}

.service_top {
  max-width: 1120px;
  min-width: 1120px;
  padding: 0 40px 100px;
  margin: 0 auto;
}
@media screen and (max-width: 768px) {
  .service_top {
    max-width: 89.583%;
    min-width: 89.583%;
    padding: 0;
    margin: 0 auto;
  }
}

.service_detail {
  max-width: 1120px;
  min-width: 1120px;
  padding: 0 40px;
  padding-bottom: 80px;
  margin: 0 auto;
}

.service_detail .service_detail_wrap {
  width: 980px;
  margin: 0 auto;
}

.service_detail .service_detail_wrap h3 {
  font-size: 40px;
  font-weight: bold;
  font-family: "Roboto Condensed", sans-serif;
  margin-bottom: 10px;
}

.service_detail .service_detail_wrap h3 span {
  font-size: 30px;
  font-weight: normal;
  font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo,
    "Helvetica Neue", Helvetica, Arial, sans-serif;
}

.service_detail .service_detail_wrap h3 span.Registered_trademark {
  font-size: 15px;
  font-weight: bold;
  font-family: "Roboto Condensed", sans-serif;
}

.service_detail .service_detail_wrap .service_detail_outline {
  font-size: 18px;
  margin-bottom: 16px;
}

.service_detail .service_detail_wrap .service_line {
  width: 30px;
  height: 2px;
  background: #0056a9;
  margin-bottom: 30px;
}

.service_detail .service_detail_wrap .wrap {
}

.service_detail .service_detail_wrap .wrap .service_logoarea {
  width: 100%;
  display: table;
  padding-bottom: 10px;
}

.service_detail .service_detail_wrap .wrap .service_logo {
  width: 320px;
  display: table-cell;
  vertical-align: middle;
}

.service_detail .service_detail_wrap .wrap .service_logo img {
  width: 100%;
  height: auto;
}

.service_detail .service_detail_wrap .wrap .service_logo .logo1 {
  display: block;
  width: 276px;
}

.service_detail .service_detail_wrap .wrap .service_logo .logo2 {
  display: block;
  width: 150px;
}

.service_detail .service_detail_wrap .wrap .service_logo .logo3 {
  display: block;
  width: 276px;
  font-size: 30px;
  line-height: 1.4;
  font-weight: bold;
}

.service_detail .service_detail_wrap .wrap .service_logoarea .service_detail_txt {
  vertical-align: middle;
  display: table-cell;
  width: 660px;
  line-height: 1.8;
  font-size: 18px;
}

.service_detail .service_detail_wrap .wrap .service_inner {
  clear: both;
  width: 100%;
  margin: 0 auto;
  text-align: center;
  line-height: 1.8;
  padding-top: 30px;
}

.service_detail .service_detail_wrap .wrap .service_inner h3 {
  text-align: left;
  font-size: 31px;
  font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo,
    "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-weight: normal;
}

.service_detail .service_detail_wrap .wrap .service_inner h3:after {
  content: "";
  display: block;
  text-align: left;
  width: 30px;
  height: 2px;
  background-color: #0056a8;
  margin: 15px 0 30px 0;
}
.service_detail .service_detail_wrap .wrap .service_inner h4 {
  text-align: left;
  font-size: 21px;
  color: #0056a8;
  font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo,
    "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-weight: normal;
  margin-bottom: 15px;
}
.service_detail .service_detail_wrap .wrap .service_inner p {
  text-align: left;
  font-size: 14px;
  margin-bottom: 15px;
}

.service_detail .pdf {
  margin-bottom: 0;
}

.service_detail .pdf a {
  text-decoration: underline;
  background: url("img/news/icon_pdf.png") no-repeat left center;
  -webkit-background-size: 16px auto;
  background-size: 16px auto;
  padding: 2px 0;
  padding-left: 1.5em;
}

.service_detail .pdf a:hover {
  text-decoration: none;
}

.service_detail .service_detail_wrap .wrap .service_sec {
  clear: both;
  width: 100%;
  margin: 0 auto;
  text-align: center;
  line-height: 1.8;
  padding: 50px 0;
}

.service_detail .service_detail_wrap .wrap .service_sec_inner {
  width: 100%;
  padding: 0 0 50px 0;
  margin: 0 auto;
  margin-top: 50px;
  text-align: center;
  border-bottom: 1px solid #efefef;
}

.service_point_item {
  clear: both;
}

.service_point_item li {
  clear: both;
  text-align: left;
  font-size: 14px;
  padding-bottom: 5px;
}
.service_point_item li:before {
  content: "・";
  font-size: 14px;
  display: inline-block;
}

.service_detail .service_detail_wrap .service_img_float {
  overflow: hidden;
  margin: 40px auto 0 auto;
}
.service_detail .service_detail_wrap .service_img_float li {
  float: left;
  width: 470px;
  margin-left: 40px;
}
.service_detail .service_detail_wrap .service_img_float li:first-child {
  margin-left: 0;
}
.service_detail .service_detail_wrap .service_img_float li img {
  width: 100%;
  height: auto;
}

.service_detail .service_detail_wrap .service_img {
  width: 740px;
  margin: 40px auto 0 auto;
  text-align: center;
}

.service_detail .service_detail_wrap .service_img.yoko {
  width: 740px;
}
.service_detail .service_detail_wrap .service_img.tate {
  width: 370px;
}

.service_detail .service_detail_wrap .service_img img {
  width: 100%;
  height: auto;
}

.service_detail .service_detail_wrap .service_ftarea {
  overflow: hidden;
  margin-top: 60px;
}

.service_pdf {
  display: inline-block;
  width: auto;
  margin: 0 20px 0 0;
}

.service_pdf a {
  position: relative;
  display: block;
  padding: 5px 35px 5px 15px;
  border: 1px solid #000;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  border-radius: 4px;
  line-height: 40px;
  text-align: center;
  font-size: 12px;
  color: #0056a9;
  -webkit-transition: all 0.3s linear;
  transition: all 0.3s linear;
}

.service_pdf a:after {
  content: "";
  position: absolute;
  top: 50%;
  right: 10px;
  width: 16px;
  height: 16px;
  background: url("img/news/icon_pdf.png") no-repeat left center;
  background-size: 16px auto;
  margin-top: -8px;
}

.service_pdf a:hover {
  background: #0056a9;
  border: 1px solid #0056a9;
  color: #fff;
}

.service_spec {
  display: inline-block;
  margin: 0 0 0 20px;
}

.service_spec a {
  position: relative;
  display: block;
  width: auto;
  min-width: 240px;
  padding: 5px 35px 5px 15px;
  border: 1px solid #000;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  border-radius: 4px;
  line-height: 40px;
  text-align: center;
  font-size: 12px;
  color: #0056a9;
  -webkit-transition: all 0.3s linear;
  transition: all 0.3s linear;
}

.service_spec a:after {
  content: "";
  position: absolute;
  top: 50%;
  right: 8px;
  width: 14px;
  height: 14px;
  background: url("img/common/arrow_blue.svg") no-repeat center center;
  -webkit-background-size: 3px auto;
  background-size: 3px auto;
  border: 1px solid #0056a9;
  border-radius: 50%;
  margin-top: -7px;
  -webkit-transition: all 0.3s linear;
  transition: all 0.3s linear;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

.service_spec a:hover {
  background: #0056a9;
  border: 1px solid #0056a9;
  color: #fff;
}

.service_spec a:hover:after {
  background: url("img/common/arrow_white.svg") no-repeat center center;
  -webkit-background-size: 3px auto;
  background-size: 3px auto;
  border: 1px solid #fff;
}

.service_detail .service_detail_wrap .movie_wrap {
  position: relative;
  width: 680px;
  margin: 50px auto;
}
.service_detail .service_detail_wrap .movie_wrap .movie_wrap_in {
  position: relative;
  width: 100%;
  padding-top: 56.25%;
}

.service_detail .service_detail_wrap .movie_wrap img {
  width: 100%;
}

.service_detail .service_detail_wrap .movie_wrap iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.service_detail .service_detail_wrap .forestvision_image img {
  width: 485px;
  margin-left: 10px;
  margin-bottom: 62px;
}

.service_detail .service_detail_wrap .forestvision_image img:first-child {
  margin-left: 0;
}

.service_detail .service_detail_wrap .degipo_image {
  width: 346px;
  margin: 0 auto 62px;
}

.service_detail .service_detail_wrap .degipo_image img {
  width: 100%;
}

.service_detail .service_detail_wrap .btn_wrap {
  text-align: center;
}

.service_detail .service_detail_wrap .btn_wrap div {
  width: 240px;
  height: 40px;
  display: inline-block;
  text-align: center;
}

.service_detail .service_detail_wrap .btn_wrap div a {
  display: block;
  position: relative;
  width: 100%;
  height: 100%;
  line-height: 40px;
  border: 1px solid #000;
  text-align: center;
  border-radius: 4px;
  color: #0056a9;
  font-size: 12px;
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

.service_detail .service_detail_wrap .btn_wrap div a .arrow {
  position: absolute;
  top: 50%;
  right: 7px;
  width: 12px;
  height: 12px;
  border: 1px solid #0056a9;
  border-radius: 50%;
  background: url("img/common/arrow_blue.svg") no-repeat center center;
  -webkit-background-size: 3px auto;
  background-size: 3px auto;
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear;
  margin-top: -7px;
}

.service_detail .service_detail_wrap .btn_wrap div a:hover {
  border: 1px solid #0056a9;
  background: #0056a9;
  color: #fff;
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear;
}

.service_detail .service_detail_wrap .btn_wrap div a:hover .arrow {
  border: 1px solid #fff;
  background: url("img/common/arrow_white.svg") no-repeat center center;
  -webkit-background-size: 3px auto;
  background-size: 3px auto;
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear;
}

.service_detail .service_detail_wrap h4 {
  font-size: 20px;
  color: #0056a9;
}

.service_detail .service_detail_wrap .stb_text {
  font-size: 16px;
  color: #0056a9;
  margin-top: 7px;
}

.service_detail .service_detail_wrap .list {
  width: 100%;
  margin-bottom: 80px;
  margin-top: 23px;
  border-collapse: separate;
  border-spacing: 2px 2px;
}

.service_detail .service_detail_wrap .list tr {
  width: 100%;
}

.service_detail .service_detail_wrap .list tr th {
  position: relative;
  width: 330px;
  background: #d5edf9;
  font-size: 13px;
  padding: 16px 0;
  text-align: left;
  padding-left: 1em;
  padding-right: 1em;
  vertical-align: middle;
  text-align: left;
  display: table-cell;
}

.service_detail .service_detail_wrap .list tr th .spacer {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 4px;
  margin-bottom: 0;
  background: #fff;
}

.service_detail .service_detail_wrap .list tr td {
  position: relative;
  background: #f2f2f2;
  font-size: 12px;
  display: block;
  padding: 16px 0;
  padding-left: 1em;
  padding-right: 1em;
  line-height: 1.4;
  text-align: left;
  display: table-cell;
}

.service_detail .service_detail_wrap .list tr td .spacer {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 4px;
  margin-bottom: 0;
  background: #fff;
}

.service_detail .service_detail_wrap .list .headline th {
  position: relative;
  background: #29a7e1;
  padding: 14px 0;
  color: #fff;
  font-size: 15px;
  text-align: center;
}

.service_detail .service_detail_wrap .list .headline th:first-child {
  border-right: 2px solid #fff;
}

.service_detail .service_detail_wrap .list .headline th:nth-of-type(2) {
  border-left: 2px solid #fff;
}

.service_detail .service_detail_wrap .list .subhead th {
  background: #8cceee;
  padding: 10px 0;
  font-size: 14px;
  padding-left: 1em;
}

.service_detail .service_detail_wrap .stb_wrap {
  margin-bottom: 32px;
  text-align: left;
}

.service_detail .service_detail_wrap .stb_01,
.service_detail .service_detail_wrap .stb_03 {
  margin-right: 20px;
}

.service_detail .service_detail_wrap .stb {
  width: 480px;
  margin-top: 23px;
  border-collapse: collapse;
  border-spacing: 2px 2px;
  float: left;
}

.service_detail .service_detail_wrap .stb table {
  width: 100%;
}

.service_detail .service_detail_wrap .stb tr th {
  position: relative;
  width: 138px;
  font-size: 13px;
  border: 1px solid #000;
  padding: 17px 0;
  text-align: left;
  padding-left: 1em;
  vertical-align: middle;
}

.service_detail .service_detail_wrap .stb tr th .spacer {
  position: absolute;
  bottom: 0;
  width: 100%;
  height: 4px;
  margin-bottom: 0;
  background: #fff;
}

.service_detail .service_detail_wrap .stb tr th .bd_t {
  position: absolute;
  top: -1px;
  left: 0;
  width: 100%;
  height: 1px;
  background: #000;
}

.service_detail .service_detail_wrap .stb tr td {
  position: relative;
  padding: 17px 0;
  font-size: 12px;
  border: 1px solid #000;
  padding: 17px 0;
  padding-left: 1em;
  padding-right: 1em;
  line-height: 1.4;
}

.service_detail .service_detail_wrap .stb tr td.image {
  text-align: center;
  vertical-align: middle;
}

.service_detail .service_detail_wrap .stb tr td img {
  width: 272px;
  height: auto;
  margin: 0 auto;
}

.service_detail .service_detail_wrap .stb tr td .bd_t {
  position: absolute;
  top: -1px;
  left: 0;
  width: 100%;
  height: 1px;
  background: #000;
}

.service_detail .service_detail_wrap .stb .headline th {
  font-size: 15px;
  background: #29a7e1;
  color: #fff;
  padding: 14px 0;
  border: none;
  text-align: center;
  border-bottom: 1px solid #000;
}

.service_detail .service_detail_wrap .stb .headline th .spacer {
  position: absolute;
  bottom: -1px;
  width: 100%;
  height: 5px;
  margin-bottom: 0;
  background: #fff;
}

.service_detail .service_detail_wrap .stb .headline th .br_r {
  z-index: 2;
  position: absolute;
  top: 0;
  right: -2px;
  width: 4px;
  height: 100%;
  background: #fff;
}

.service_detail .service_detail_wrap .attention {
  font-size: 11px;
}

.service_detail .service_detail_wrap .attention li {
  margin-bottom: 10px;
  text-align: left;
}

.service_detail .service_detail_wrap .works_list_btn {
  width: 240px;
  height: 40px;
  margin: 0 auto;
}

.service_detail .service_detail_wrap .works_list_btn a {
  display: block;
  position: relative;
  width: 100%;
  height: 100%;
  line-height: 40px;
  border: 1px solid #000;
  text-align: center;
  border-radius: 4px;
  color: #0056a9;
  font-size: 12px;
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

.service_detail .service_detail_wrap .works_list_btn a .arrow {
  position: absolute;
  top: 27%;
  right: 7px;
  width: 12px;
  height: 12px;
  border: 1px solid #0056a9;
  border-radius: 50%;
  background: url("img/common/arrow_blue.svg") no-repeat center center;
  -webkit-background-size: 3px auto;
  background-size: 3px auto;
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear;
  margin-top: 2px;
}

.service_detail .service_detail_wrap .works_list_btn a:hover {
  border: 1px solid #0056a9;
  background: #0056a9;
  color: #fff;
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear;
}

.service_detail .service_detail_wrap .works_list_btn a:hover .arrow {
  border: 1px solid #fff;
  background: url("img/common/arrow_white.svg") no-repeat center center;
  -webkit-background-size: 3px auto;
  background-size: 3px auto;
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear;
}

.service_detail .service_cms_wrap h3 {
  font-size: 32px;
}

.service_detail .service_cms_wrap .cms_logo {
  float: left;
  width: 265px;
  font-size: 42px;
  letter-spacing: -0.2em;
  font-weight: bold;
}

.service_detail .service_cms_wrap .cms_logo span {
  letter-spacing: -0.05em;
  padding-left: 4px;
}

.service_detail .cloudcms_image {
  margin-bottom: 97px;
}

.service_detail .service_face_wrap .wrap {
  margin-bottom: 36px;
}

.service_detail .service_face_wrap h3 {
  font-size: 32px;
}

.service_detail .service_face_wrap .face_logo {
  float: left;
  width: 270px;
  font-size: 40px;
  font-weight: bold;
  letter-spacing: -0.05em;
}

.service_detail .service_face_wrap .face_logo span {
  letter-spacing: -0.2em;
  padding-left: 2px;
}

.service_detail .face_img_area {
  margin-bottom: 68px;
}

.service_detail .face_img_area .face_img {
  float: left;
  width: 600px;
}

.service_detail .face_img_area .face_img img {
  width: 100%;
}

.service_detail .face_img_area .face_item02 {
  width: 186px;
  margin-bottom: 12px;
  float: right;
}

.service_detail .face_img_area .face_item02 img {
  width: 100%;
}

.service_detail .face_img_area .face_item01 {
  float: left;
  width: 204px;
  margin-left: 37px;
}

.service_detail .face_img_area .face_item01 img {
  width: 100%;
}

.ft_contact {
  clear: both;
  width: 100%;
  background-color: #dde5ed;
  padding: 60px 0;
}

.ft_contact .ft_contact_link {
  position: relative;
  display: block;
  width: 500px;
  margin: 0 auto;
  text-align: center;
  font-size: 20px;
  color: #fff;
  background-color: #0054a7;
  border-radius: 6px;
  padding: 30px;
  border-radius: 5px;
  -webkit-transition: background-color 0.2s ease;
  transition: all 0.2s ease;
}
.ft_contact .ft_contact_link:after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  right: 20px;
  width: 10px;
  height: 16px;
  background: url(/img/common/arrow_white.svg) left top no-repeat;
  background-size: 10px 16px;
  margin-top: -8px;
}
.ft_contact .ft_contact_link .pink {
  background-color: #c927bc;
}
.ft_contact .ft_contact_link .orenge {
  background-color: #dd9e24;
}
.ft_contact .ft_contact_link:hover {
  background-color: #333;
  -webkit-transition: background-color 0.2s ease;
  transition: all 0.2s ease;
}
/**/

.service_blog {
  padding: 77px 0 90px;
  width: 100%;
  background: #f2f2f2;
}

.service_blog .serviceblog_wrap {
  position: relative;
  width: 980px;
  margin: 0 auto;
}

.service_blog .serviceblog_wrap .top_title {
  font-size: 12px;
}

.service_blog .serviceblog_wrap .top_title span {
  font-family: "Roboto Condensed", sans-serif;
  font-size: 30px;
  display: block;
  padding-bottom: 13px;
}

.service_blog .serviceblog_wrap .line {
  width: 18px;
  height: 2px;
  background: #0056a8;
  margin-top: 18px;
  margin-bottom: 35px;
}

.service_blog .serviceblog_wrap .serviceblog_btn {
  position: absolute;
  top: 0;
  right: 0;
  width: 234px;
  height: 40px;
}

.service_blog .serviceblog_wrap .serviceblog_btn a {
  position: relative;
  border: 1px solid #000;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  border-radius: 4px;
  display: block;
  width: 100%;
  height: 100%;
  font-size: 12px;
  color: #0056a8;
  line-height: 40px;
  text-align: center;
  -webkit-transition: all 0.3s linear;
  transition: all 0.3s linear;
}

.service_blog .serviceblog_wrap .serviceblog_btn a .arrow {
  -webkit-transition: all 0.3s linear;
  transition: all 0.3s linear;
  position: absolute;
  top: 50%;
  right: 8px;
  width: 14px;
  height: 14px;
  border: 1px solid #0056a8;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  border-radius: 50%;
  margin-top: -7px;
  background: url("img/common/arrow_blue.svg") no-repeat center center;
  -webkit-background-size: 3px 3px;
  background-size: 3px;
}

.service_blog .serviceblog_wrap .serviceblog_btn a:hover {
  background: #0056a8;
  border: 1px solid #0056a8;
  color: #fff;
}

.service_blog .serviceblog_wrap .serviceblog_btn a:hover .arrow {
  border: 1px solid #fff;
  background: url("img/common/arrow_white.svg") no-repeat center center;
  -webkit-background-size: 3px 3px;
  background-size: 3px;
}

.service_blog .serviceblog_wrap ul li {
  width: 22.55%;
  float: left;
  margin-left: 3.265%;
}

.service_blog .serviceblog_wrap ul li:first-child {
  margin-left: 0;
}

.service_blog .serviceblog_wrap ul li .image {
  margin-bottom: 20px;
}

.service_blog .serviceblog_wrap ul li .date {
  font-size: 13px;
  color: #0056a8;
  padding-bottom: 5px;
}

.service_blog .serviceblog_wrap ul li .title {
  width: 100%;
  max-height: 2.6em;
  font-size: 16px;
  line-height: 1.4;
  margin-bottom: 10px;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
}

.service_blog .serviceblog_wrap ul li .text {
  width: 100%;
  height: 4.6em;
  font-size: 12px;
  line-height: 1.6;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  overflow: hidden;
}

.service_blog .serviceblog_wrap ul li img {
  width: 100%;
}

.service_blog .serviceblog_wrap ul li a {
  display: block;
  width: 100%;
  height: 100%;
  -webkit-transition: opacity 0.3s linear;
  transition: opacity 0.3s linear;
}

.service_blog .serviceblog_wrap ul li a:hover {
  opacity: 0.6;
  filter: alpha(opacity=60);
}

.service_links {
  float: left;
}

.service_list_btn {
  float: right;
  margin-top: 10px;
}

.service_list_btn a {
  display: inline-block;
  position: relative;
  text-align: center;
  color: #0056a9;
  font-size: 12px;
  text-decoration: underline;
}

.service_list_btn a .arrow {
  display: inline-block;
  width: 12px;
  height: 12px;
  border: 1px solid #0056a9;
  border-radius: 50%;
  vertical-align: -2px;
  background: url("img/common/arrow_blue.svg") no-repeat center center;
  background-size: 3px 5px;
  transform: rotateY(180deg);
  margin-right: 5px;
}

.service_list_btn a:hover {
  text-decoration: none;
}

.service_list_btn a:hover .arrow {
}

@media screen and (max-width: 768px) {
  .service_detail {
    max-width: 89.583%;
    min-width: 89.583%;
    padding: 0;
    margin: 0 auto;
  }
  .service_detail .service_detail_wrap {
    width: 100%;
    margin: 0 auto;
    padding-bottom: 0;
  }
  .service_detail .service_detail_wrap h3 {
    font-size: 28px;
    font-weight: bold;
    font-family: "Roboto Condensed", sans-serif;
    margin-bottom: 6px;
    line-height: 1.2;
    white-space: nowrap;
  }
  .service_detail .service_detail_wrap h3 span {
    font-size: 21px;
  }
  .service_detail .service_detail_wrap h3 span.Registered_trademark {
    font-size: 15px;
  }
  .service_detail .service_detail_wrap .service_detail_outline {
    font-size: 14px;
    margin-bottom: 14px;
    line-height: 1.4;
    white-space: nowrap;
    margin-left: -4px;
  }
  .service_detail .service_detail_wrap .service_line {
    width: 30px;
    height: 2px;
    background: #0056a9;
    margin-bottom: 26px;
  }
  .service_detail .service_detail_wrap .wrap {
    margin-bottom: 10px;
  }
  .service_detail .service_detail_wrap .wrap .service_logoarea {
    width: 100%;
    display: block;
    padding-bottom: 10px;
  }

  .service_detail .service_detail_wrap .wrap .service_logo {
    width: 100%;
    display: block;
    margin: 0 auto;
    text-align: center;
    vertical-align: middle;
  }

  .service_detail .service_detail_wrap .wrap .service_logo img {
    width: 100%;
    height: auto;
  }

  .service_detail .service_detail_wrap .wrap .service_logo .logo1 {
    display: block;
    width: 70%;
    margin: 0 auto;
    text-align: center;
  }

  .service_detail .service_detail_wrap .wrap .service_logo .logo2 {
    display: block;
    width: 35%;
    margin: 0 auto;
    text-align: center;
  }

  .service_detail .service_detail_wrap .wrap .service_logo .logo3 {
    display: block;
    font-size: 32px;
    font-weight: bold;
    margin: 0 auto;
    text-align: center;
  }

  .service_detail .service_detail_wrap .wrap .service_logoarea .service_detail_txt {
    width: 100%;
    display: block;
    font-size: 0.88em;
    line-height: 1.6;
    margin-top: 15px;
  }
  .service_detail .service_detail_wrap .wrap .service_inner {
    line-height: 1.8;
    padding-top: 20px;
  }
  .service_detail .service_detail_wrap .wrap .service_inner h3 {
    text-align: left;
    font-size: 20px;
    line-height: 1.5;
    font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo,
      "Helvetica Neue", Helvetica, Arial, sans-serif;
    font-weight: normal;
  }

  .service_detail .service_detail_wrap .wrap .service_inner h3:after {
    content: "";
    display: block;
    text-align: left;
    width: 30px;
    height: 2px;
    background-color: #0056a8;
    margin: 5px 0 20px 0;
  }

  .service_detail .service_detail_wrap .wrap .service_inner h4 {
    text-align: left;
    font-size: 18px;
    line-height: 1.5;
    color: #0056a8;
    font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo,
      "Helvetica Neue", Helvetica, Arial, sans-serif;
    font-weight: normal;
    margin-bottom: 15px;
  }
  .service_detail .service_detail_wrap .wrap .service_inner p {
    text-align: left;
    font-size: 0.88em;
  }

  .service_detail .service_detail_wrap .wrap .pdf {
    margin-bottom: 0;
  }
  .service_detail .service_detail_wrap .wrap .pdf a {
    text-decoration: underline;
    background: url("img/news/icon_pdf.png") no-repeat left top;
    -webkit-background-size: 16px auto;
    background-size: 16px auto;
    padding-left: 1.5em;
  }
  .service_detail .service_detail_wrap .wrap .pdf a:hover {
    text-decoration: none;
  }

  .service_detail .service_detail_wrap .wrap .service_sec {
    line-height: 1.8;
    padding: 25px 0;
  }

  .service_detail .service_detail_wrap .wrap .service_sec_inner {
    width: 100%;
    padding: 0 0 25px 0;
    margin-top: 25px;
    border-bottom: 1px solid #efefef;
  }

  .service_detail .service_detail_wrap .service_img_float {
    overflow: hidden;
    margin-top: 16px;
    padding-bottom: 10px;
  }
  .service_detail .service_detail_wrap .service_img_float li {
    float: left;
    width: 48.5%;
    margin-left: 3%;
  }
  .service_detail .service_detail_wrap .service_img_float li:first-child {
    margin-left: 0;
  }
  .service_detail .service_detail_wrap .service_img_float li img {
    width: 100%;
    height: auto;
  }

  .service_detail .service_detail_wrap .service_img {
    margin-top: 16px;
    padding-bottom: 10px;
    width: 100%;
  }
  .service_detail .service_detail_wrap .service_img.yoko {
    width: 100%;
  }
  .service_detail .service_detail_wrap .service_img.tate {
    width: 80%;
    margin: 0 auto 10px auto;
    text-align: center;
  }
  .service_detail .service_detail_wrap .service_img img {
    width: 100%;
    height: auto;
  }
  .service_detail .service_detail_wrap .service_ftarea {
    width: 100%;
    overflow: hidden;
    padding-bottom: 30px;
  }
  .service_pdf {
    display: block;
    width: 100%;
    margin: 10px auto;
  }
  .service_pdf a {
    line-height: 1.6;
    padding-top: 10px;
    padding-bottom: 10px;
    -webkit-transition: none;
    transition: none;
  }
  .service_pdf a:hover {
    border: 1px solid #000;
    color: #0056a9;
    background: none;
    -webkit-transition: none;
    transition: none;
  }
  .service_spec {
    display: block;
    width: 100%;
    margin: 10px auto;
  }
  .service_spec a {
    position: relative;
    display: block;
    font-size: 12px;
    line-height: 1.6;
    padding-top: 10px;
    padding-bottom: 10px;
    border: 1px solid #000;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    border-radius: 4px;
    text-align: center;
    color: #0056a9;
    -webkit-transition: none;
    transition: none;
  }
  .service_spec a:hover {
    background: none;
    border: 1px solid #000;
    color: #0056a9;
  }

  .service_detail .service_detail_wrap .movie_wrap {
    position: relative;
    width: 100%;
    margin: 20px 0;
  }

  .service_detail .service_detail_wrap h4 {
    font-size: 18px;
    color: #0056a9;
  }
  .service_detail .service_detail_wrap .stb_text {
    font-size: 14px;
    color: #0056a9;
    margin-top: 7px;
    margin-bottom: 20px;
  }
  .service_detail .service_detail_wrap .list {
    margin-bottom: 80px;
    margin-top: 23px;
    border-collapse: separate;
    border-spacing: 2px 2px;
  }
  .service_detail .service_detail_wrap .list tr {
    width: 100%;
  }
  .service_detail .service_detail_wrap .list tr th {
    position: relative;
    width: 50%;
    background: #d5edf9;
    font-size: 13px;
    padding: 12px 0;
    text-align: left;
    padding-left: 1em;
    padding-right: 1em;
    vertical-align: middle;
  }
  .service_detail .service_detail_wrap .list tr td {
    background: #f2f2f2;
    font-size: 12px;
    display: block;
    padding: 12px 0;
    padding-left: 1em;
    padding-right: 1em;
    line-height: 1.4;
  }
  .service_detail .service_detail_wrap .list .headline th {
    background: #29a7e1;
    padding: 10px 0;
    color: #fff;
    font-size: 15px;
    text-align: center;
  }
  .service_detail .service_detail_wrap .list .subhead th {
    background: #8cceee;
    padding: 6px 0;
    font-size: 14px;
    padding-left: 1em;
  }
  .service_detail .service_detail_wrap .stb_wrap {
    margin-bottom: 32px;
  }
  .service_detail .service_detail_wrap .stb01_btn,
  .service_detail .service_detail_wrap .stb02_btn,
  .service_detail .service_detail_wrap .stb03_btn,
  .service_detail .service_detail_wrap .stb04_btn {
    position: relative;
    width: 100%;
    height: 50px;
    background: #323232;
    color: #fff;
    font-size: 18px;
    line-height: 50px;
    padding-left: 0;
    margin-top: 23px;
    text-indent: 1em;
  }
  .service_detail .service_detail_wrap .stb01_btn .arrow,
  .service_detail .service_detail_wrap .stb02_btn .arrow,
  .service_detail .service_detail_wrap .stb03_btn .arrow,
  .service_detail .service_detail_wrap .stb04_btn .arrow {
    position: absolute;
    top: 50%;
    right: 10px;
    margin-top: -11px;
    width: 22px;
    height: 22px;
    background: url("img/common/arrow_open_white.svg") no-repeat;
    background-position: center 8px;
    -webkit-background-size: 10px 5px;
    background-size: 10px 5px;
    background-color: #000000;
    border-radius: 50%;
  }
  .service_detail .service_detail_wrap .close .arrow {
    background: url("img/common/arrow_close_white.svg") no-repeat;
    background-position: center 8px;
    -webkit-background-size: 10px 5px;
    background-size: 10px 5px;
    background-color: #000000;
    border-radius: 50%;
  }
  .service_detail .service_detail_wrap .stb_01,
  .service_detail .service_detail_wrap .stb_03 {
    margin-right: 0;
  }
  .service_detail .service_detail_wrap .stb {
    display: none;
    width: 100%;
    margin-top: 4px;
    border-collapse: collapse;
    border-spacing: 2px 2px;
    float: none;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
  }
  .service_detail .service_detail_wrap .stb tr {
    width: 100%;
  }
  .service_detail .service_detail_wrap .stb tr th {
    position: relative;
    font-size: 13px;
    border: 1px solid #000;
    padding: 17px 0;
    text-align: left;
    padding-left: 1em;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
  }
  .service_detail .service_detail_wrap .stb tr th .spacer {
    position: absolute;
    bottom: 0;
    width: 100%;
    height: 4px;
    margin-bottom: 0;
    background: #fff;
  }
  .service_detail .service_detail_wrap .stb tr td {
    font-size: 12px;
    border: 1px solid #000;
    padding-left: 1em;
    padding-right: 1em;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
  }
  .service_detail .service_detail_wrap .stb tr td.image {
    text-align: center;
    vertical-align: middle;
  }
  .service_detail .service_detail_wrap .stb tr td img {
    width: 100%;
    height: auto;
    margin: 0 auto;
  }
  .service_detail .service_detail_wrap .stb .headline th {
    width: 40%;
    font-size: 15px;
    background: #29a7e1;
    color: #fff;
    padding: 14px 0;
    border: none;
    text-align: center;
  }
  .service_detail .service_detail_wrap .attention {
    font-size: 13px;
    margin-bottom: 58px;
  }
  .service_detail .service_detail_wrap .attention li {
    margin-bottom: 10px;
    text-indent: -1em;
    padding-left: 1em;
    line-height: 1.4;
  }
  .service_detail .service_detail_wrap .attention li.attention01 {
    text-indent: -3em;
    padding-left: 3em;
  }
  .service_links {
    float: none;
    width: 100%;
  }

  .service_list_btn {
    float: none;
    margin: 30px auto 0 auto;
    text-align: center;
  }

  .service_list_btn a {
    display: inline-block;
    position: relative;
    text-align: center;
    color: #0056a9;
    font-size: 12px;
    text-decoration: underline;
  }

  .service_list_btn a .arrow {
    display: inline-block;
    width: 12px;
    height: 12px;
    border: 1px solid #0056a9;
    border-radius: 50%;
    vertical-align: -2px;
    background: url("img/common/arrow_blue.svg") no-repeat center center;
    background-size: 3px 5px;
    transform: rotateY(180deg);
    margin-right: 5px;
  }

  .service_list_btn a:hover {
    text-decoration: none;
  }

  .service_list_btn a:hover .arrow {
  }
  .ft_contact {
    clear: both;
    width: 100%;
    background-color: #dde5ed;
    padding: 20px 0;
    padding-bottom: 100px;
  }

  .ft_contact .ft_contact_link {
    position: relative;
    display: block;
    width: auto;
    margin: 0 6.25%;
    text-align: center;
    font-size: 16px;
    color: #fff;
    background-color: #0054a7;
    border-radius: 6px;
    padding: 30px 0;
    border-radius: 5px;
    -webkit-transition: none;
    transition: none;
  }
  .ft_contact .ft_contact_link:after {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    right: 20px;
    width: 10px;
    height: 16px;
    background: url(/img/common/arrow_white.svg) left top no-repeat;
    background-size: 10px 16px;
    margin-top: -8px;
  }
  .ft_contact .ft_contact_link .pink {
    background-color: #c927bc;
  }
  .ft_contact .ft_contact_link .orenge {
    background-color: #dd9e24;
  }
  .ft_contact .ft_contact_link:hover {
    background-color: #0054a7;
    -webkit-transition: none;
    transition: none;
  }
  .ft_contact .ft_contact_link .pink:hover {
    background-color: #c927bc;
  }
  .ft_contact .ft_contact_link .orenge:hover {
    background-color: #dd9e24;
  }
  .service_detail .service_cms_wrap h3 {
    font-size: 20px;
    margin-left: -3%;
  }
  .service_detail .service_cms_wrap .cms_logo {
    float: left;
    width: 100%;
    font-size: 28px;
    letter-spacing: 0;
    font-weight: bold;
    text-align: center;
    padding-bottom: 20px;
  }
  .service_detail .service_cms_wrap .cms_logo span {
    letter-spacing: 0;
    padding-left: 0;
  }
  .service_detail .cloudcms_image {
    width: 100%;
    margin-bottom: 60px;
  }
  .service_detail .cloudcms_image img {
    width: 100%;
  }
  .service_detail .service_face_wrap h3 {
    font-size: 24px;
  }
  .service_detail .service_face_wrap .face_logo {
    float: none;
    width: 100%;
    font-size: 28px;
    font-weight: bold;
    letter-spacing: 0;
    text-align: center;
    padding-bottom: 20px;
  }
  .service_detail .service_face_wrap .face_logo span {
    letter-spacing: 0;
    padding-left: 0;
  }
  .service_detail .face_img_area {
    margin-bottom: 40px;
  }
  .service_detail .face_img_area .face_img {
    float: left;
    width: 100%;
    margin-bottom: 30px;
  }
  .service_detail .face_img_area .face_img img {
    width: 100%;
  }
  .service_detail .face_img_area .face_item02 {
    width: 38.461%;
    margin-bottom: 12px;
    float: right;
    margin-right: 6.24%;
  }
  .service_detail .face_img_area .face_item02 img {
    width: 100%;
  }
  .service_detail .face_img_area .face_item01 {
    float: left;
    width: 38.461%;
    margin-left: 6.24%;
  }
  .service_detail .face_img_area .face_item01 img {
    width: 100%;
  }
  .service_blog {
    padding: 50px 0 30px;
    width: 100%;
    background: #f2f2f2;
  }
  .service_blog .serviceblog_wrap {
    position: relative;
    width: 89.583%;
    margin: 0 auto;
  }
  .service_blog .serviceblog_wrap .top_title {
    font-size: 12px;
  }
  .service_blog .serviceblog_wrap .top_title span {
    font-family: "Roboto Condensed", sans-serif;
    font-size: 30px;
    display: block;
    padding-bottom: 13px;
  }
  .service_blog .serviceblog_wrap .line {
    width: 18px;
    height: 2px;
    background: #0056a8;
    margin-top: 18px;
    margin-bottom: 70px;
  }
  .service_blog .serviceblog_wrap .serviceblog_btn {
    position: absolute;
    top: 85px;
    right: 0;
    width: 68%;
    height: 30px;
  }
  .service_blog .serviceblog_wrap .serviceblog_btn a {
    position: relative;
    border: 1px solid #000;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    border-radius: 4px;
    display: block;
    width: 100%;
    height: 100%;
    font-size: 11px;
    color: #0056a8;
    line-height: 30px;
    text-align: center;
    -webkit-transition: none;
    transition: none;
  }
  .service_blog .serviceblog_wrap .serviceblog_btn a .arrow {
    -webkit-transition: none;
    transition: none;
    position: absolute;
    top: 50%;
    right: 5px;
    width: 12px;
    height: 12px;
    border: 1px solid #0056a8;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    border-radius: 50%;
    margin-top: -6px;
    background: url("img/common/arrow_blue.svg") no-repeat center center;
    -webkit-background-size: 3px 3px;
    background-size: 3px;
  }
  .service_blog .serviceblog_wrap .serviceblog_btn a:hover {
    background: none;
    border: 1px solid #0056a8;
    color: #0056a8;
  }
  .service_blog .serviceblog_wrap .serviceblog_btn a:hover .arrow {
    border: 1px solid #0056a8;
    background: url("img/common/arrow_blue.svg") no-repeat center center;
    -webkit-background-size: 3px 3px;
    background-size: 3px;
  }
  .service_blog .serviceblog_wrap ul li {
    width: 47.093%;
    float: left;
    margin-left: 0;
    margin-bottom: 40px;
  }
  .service_blog .serviceblog_wrap ul li:nth-child(even) {
    margin-left: 5.5%;
  }
  .service_blog .serviceblog_wrap ul li:first-child {
    margin-left: 0;
  }
  .service_blog .serviceblog_wrap ul li .image {
    margin-bottom: 20px;
  }
  .service_blog .serviceblog_wrap ul li .date {
    font-size: 13px;
    color: #0056a8;
    padding-bottom: 4px;
  }
  .service_blog .serviceblog_wrap ul li .title {
    width: 100%;
    height: auto;
    font-size: 16px;
    line-height: 1.4;
    margin-bottom: 10px;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
    padding-bottom: 0;
  }
  .service_blog .serviceblog_wrap ul li .text {
    width: 100%;
    height: 4.6em;
    font-size: 12px;
    line-height: 1.6;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
    overflow: hidden;
  }
  .service_blog .serviceblog_wrap ul li img {
    width: 100%;
  }
  .service_blog .serviceblog_wrap ul li a {
    display: block;
    width: 100%;
    height: 100%;
    -webkit-transition: none;
    transition: none;
  }
  .service_blog .serviceblog_wrap ul li a:hover {
    opacity: 1;
    filter: alpha(opacity=100);
  }
}

.contact_top,
.contact_form {
  max-width: 1120px;
  min-width: 1120px;
  margin: 0 auto;
  padding-bottom: 460px;
  padding: 0 40px;
}

.contact_top .contact_wrap {
  width: 980px;
  margin: 0 auto;
}

.contact_top .contact_wrap p {
  font-size: 14px;
  line-height: 1.8;
  margin-bottom: 45px;
}

.contact_top .contact_wrap p.contact_thanks {
  text-align: center;
  margin-top: 50px;
}

.contact_top .contact_wrap .contact_step {
  text-align: center;
  margin-bottom: 46px;
}

.contact_top .contact_wrap .contact_step li {
  width: 168px;
  height: 54px;
  background: #323232;
  display: inline-block;
  color: #fff;
  font-size: 13px;
  padding: 8px;
  -webkit-box-sizing: content-box;
  box-sizing: content-box;
}

.contact_top .contact_wrap .contact_step li.active {
  background: #0056a8;
}

.contact_top .contact_wrap .contact_step li p {
  padding-top: 14px;
  margin-bottom: 0;
  line-height: 1;
}

.contact_top .contact_wrap .contact_step li p:first-child {
  padding-top: 0;
}

.contact_top .contact_wrap .contact_step li span {
  display: block;
  text-align: left;
  color: #fff;
  font-size: 14px;
  border-bottom: 1px solid #fff;
  padding-bottom: 6px;
  margin-top: 0;
}

.contact_top .contact_wrap .contact_link a {
  color: #0056a8;
  position: relative;
  font-size: 12px;
  display: block;
  width: 240px;
  height: 40px;
  border: 1px solid #000;
  border-radius: 4px;
  line-height: 38px;
  text-align: center;
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

.contact_top .contact_wrap .contact_link a:hover {
  background: #0056a8;
  color: #fff;
  border: 1px solid #f2f2f2;
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear;
}

.contact_top .contact_wrap .contact_link a .arrow {
  position: absolute;
  top: 50%;
  right: 7px;
  margin-top: -7.5px;
  width: 13px;
  height: 13px;
  border-radius: 50%;
  border: 1px solid #0056a8;
  background: url("img/common/arrow_blue.svg") no-repeat center center;
  -webkit-background-size: 3px auto;
  background-size: 3px auto;
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear;
}

.contact_top .contact_wrap .contact_link a:hover .arrow {
  position: absolute;
  top: 50%;
  right: 7px;
  margin-top: -7.5px;
  width: 13px;
  height: 13px;
  border-radius: 50%;
  border: 1px solid #fff;
  background: url("img/common/arrow_white.svg") no-repeat center center;
  -webkit-background-size: 3px auto;
  background-size: 3px auto;
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear;
}

.contact_top .contact_wrap .contact_link_back {
  width: 240px;
  height: 40px;
  margin: 0 auto;
}

.contact_top .contact_wrap .contact_link_back a {
  color: #0056a8;
  position: relative;
  font-size: 12px;
  display: block;
  width: 240px;
  height: 40px;
  border: 1px solid #000;
  border-radius: 4px;
  line-height: 38px;
  text-align: center;
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

.contact_top .contact_wrap .contact_link_back a:hover {
  background: #0056a8;
  color: #fff;
  border: 1px solid #f2f2f2;
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear;
}

.contact_top .contact_wrap .contact_link_back a .arrow {
  position: absolute;
  top: 50%;
  right: 7px;
  margin-top: -7.5px;
  width: 13px;
  height: 13px;
  border-radius: 50%;
  border: 1px solid #0056a8;
  background: url("img/common/arrow_blue.svg") no-repeat center center;
  -webkit-background-size: 3px auto;
  background-size: 3px auto;
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear;
}

.contact_top .contact_wrap .contact_link_back a:hover .arrow {
  position: absolute;
  top: 50%;
  right: 7px;
  margin-top: -7.5px;
  width: 13px;
  height: 13px;
  border-radius: 50%;
  border: 1px solid #fff;
  background: url("img/common/arrow_white.svg") no-repeat center center;
  -webkit-background-size: 3px auto;
  background-size: 3px auto;
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear;
}

@media screen and (max-width: 768px) {
  .contact_top,
  .contact_form {
    max-width: 89.583%;
    min-width: 89.583%;
    margin: 0 auto;
    padding: 0;
  }
  .contact_top h2 {
    padding-top: 0;
  }
  .contact_top .contact_wrap {
    width: 100%;
    margin: 0 auto;
  }
  .contact_top .contact_wrap p {
    font-size: 0.8rem;
    line-height: 1.8;
    margin-bottom: 45px;
  }
  .contact_top .contact_wrap .contact_step {
    width: 100%;
    text-align: center;
    margin-bottom: 28px;
    font-size: 0;
  }
  .contact_top .contact_wrap .contact_step li {
    width: 32.5%;
    height: 67px;
    background: #323232;
    display: inline-block;
    color: #fff;
    font-size: 13px;
    padding: 8px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    margin-left: 1%;
  }
  .contact_top .contact_wrap .contact_step li:first-child {
    margin-left: 0;
  }
  .contact_top .contact_wrap .contact_step li.active {
    background: #0056a8;
  }
  .contact_top .contact_wrap .contact_step li p {
    padding-top: 14px;
  }
  .contact_top .contact_wrap .contact_step li p:first-child {
    padding-top: 0;
  }
  .contact_top .contact_wrap .contact_step li span {
    display: block;
    text-align: left;
    color: #fff;
    font-size: 12px;
    border-bottom: 1px solid #fff;
    padding-bottom: 6px;
    margin-top: 0;
  }
  .contact_top .contact_wrap .contact_link a {
    margin: 0 auto;
    color: #0056a8;
    position: relative;
    font-size: 12px;
    display: block;
    width: 206px;
    height: 38px;
    border: 1px solid #000;
    border-radius: 4px;
    line-height: 38px;
    text-align: center;
    -webkit-transition: none;
    transition: none;
  }
  .contact_top .contact_wrap .contact_link a:hover {
    background: none;
    color: #0056a8;
    border: 1px solid #000;
    -webkit-transition: none;
    transition: none;
  }
  .contact_top .contact_wrap .contact_link a .arrow {
    position: absolute;
    top: 50%;
    right: 7px;
    margin-top: -7.5px;
    width: 13px;
    height: 13px;
    border-radius: 50%;
    border: 1px solid #0056a8;
    background: url("img/common/arrow_blue.svg") no-repeat center center;
    -webkit-background-size: 3px auto;
    background-size: 3px auto;
    -webkit-transition: none;
    transition: none;
  }
  .contact_top .contact_wrap .contact_link a:hover .arrow {
    position: absolute;
    top: 50%;
    right: 7px;
    margin-top: -7.5px;
    width: 13px;
    height: 13px;
    border-radius: 50%;
    border: 1px solid #0056a8;
    background: url("img/common/arrow_blue.svg") no-repeat center center;
    -webkit-background-size: 3px auto;
    background-size: 3px auto;
    -webkit-transition: none;
    transition: none;
  }
}

.contact_privacy {
  max-width: 1120px;
  min-width: 1120px;
  padding: 0 40px;
  margin: 0 auto;
  padding-bottom: 130px;
}

.contact_privacy .contact_wrap {
  width: 980px;
  margin: 0 auto 130px;
}

.contact_privacy h3 {
  font-size: 31px;
  margin-bottom: 18px;
}

.contact_privacy .line_cap {
  margin-bottom: 28px;
  width: 30px;
  height: 2px;
  background: #0056a8;
}

.contact_privacy p {
  font-size: 14px;
  line-height: 1.8;
}

.contact_privacy p.privacy_txt {
  margin-bottom: 28px;
}

.contact_privacy p.purpose_txt {
  margin-bottom: 28px;
}

.contact_privacy dl {
  margin-bottom: 36px;
}

.contact_privacy dl dt {
  font-size: 21px;
  color: #0056a8;
  margin-bottom: 10px;
}

.contact_privacy dl dd {
  font-size: 14px;
  line-height: 1.8;
}

.contact_privacy dl dd span {
  color: #0056a8;
}

.contact_privacy dl dd ul.disclosure {
  margin-top: 28px;
}

.contact_privacy dl dd ul.disclosure li {
  margin-bottom: 28px;
  text-indent: 0;
  padding-left: 0;
}

.contact_privacy dl dd ul.disclosure li p {
  padding-left: 1em;
}

.contact_privacy dl dd ul.disclosure li ul li {
  text-indent: -1em;
  padding-left: 1em;
  margin-bottom: 0;
}

.contact_privacy dl dd ul.disclosure li ul li .disc {
  display: inline;
  color: #000;
}

.contact_privacy dl dd ul li {
  text-indent: -1em;
  padding-left: 1em;
}

.contact_privacy dl dd ul li span {
  display: block;
  color: #0056a8;
}

.contact_privacy .btn_wrap {
  letter-spacing: -0.4em;
  text-align: center;
  margin-bottom: 43px;
}

.contact_privacy .btn_wrap .button {
  width: 240px;
  height: 40px;
  display: inline-block;
}

.contact_privacy .btn_wrap .button a {
  position: relative;
  display: block;
  width: 100%;
  height: 40px;
  font-size: 12px;
  text-align: center;
  line-height: 40px;
  color: #0056a8;
  border: 1px solid #000;
  border-radius: 4px;
  letter-spacing: 0;
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

.contact_privacy .btn_wrap .button a .arrow {
  position: absolute;
  top: 50%;
  right: 7px;
  margin-top: -7px;
  width: 12px;
  height: 12px;
  border: 1px solid #0056a8;
  border-radius: 50%;
  background: url("img/common/arrow_blue.svg") no-repeat center center;
  -webkit-background-size: 3px auto;
  background-size: 3px auto;
}

.contact_privacy .btn_wrap .button a:hover {
  background: #0056a8;
  border: 1px solid #0056a8;
  color: #fff;
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear;
}

.contact_privacy .btn_wrap .button a:hover .arrow {
  border: 1px solid #fff;
  background: url("img/common/arrow_white.svg") no-repeat center center;
  -webkit-background-size: 3px auto;
  background-size: 3px auto;
}

.contact_privacy .btn_wrap .button:first-child {
  margin-right: 18px;
}

.contact_privacy .back_btn {
  text-align: center;
}

.contact_privacy .back_btn a {
  position: relative;
  font-size: 12px;
  font-weight: bold;
  padding-right: 22px;
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear;
}

.contact_privacy .back_btn a .arrow {
  width: 12px;
  height: 12px;
  border: 1px solid #0056a8;
  position: absolute;
  top: 0;
  right: 0;
  background: url("img/common/arrow_blue.svg") no-repeat center center;
  -webkit-background-size: 3px auto;
  background-size: 3px auto;
  border-radius: 50%;
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear;
}

.contact_privacy .back_btn:hover {
  opacity: 0.6;
  filter: alpha(opacity=60);
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear;
}

.contact_privacy .back_btn:hover .arrow {
  background: url("img/common/arrow_white.svg") no-repeat center center;
  background-color: #0056a8;
  -webkit-background-size: 3px auto;
  background-size: 3px auto;
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear;
}

@media screen and (max-width: 768px) {
  .contact_privacy {
    max-width: 89.583%;
    min-width: 89.583%;
    padding: 0;
    margin: 0 auto;
    padding-bottom: 100px;
    /*    padding-top: 80px;*/
  }
  .contact_privacy h2 {
    padding-top: 30px;
  }
  .contact_privacy .contact_wrap {
    width: 100%;
    margin: 0 auto 40px;
  }
  .contact_privacy h3 {
    font-size: 1.25em;
    margin-bottom: 10px;
    line-height: 1.5;
  }
  .contact_privacy .line_cap {
    margin-bottom: 28px;
    width: 30px;
    height: 2px;
    background: #0056a8;
  }
  .contact_privacy p {
    font-size: 14px;
    line-height: 1.6;
  }
  .contact_privacy p.privacy_txt {
    margin-bottom: 28px;
  }
  .contact_privacy p.purpose_txt {
    margin-bottom: 28px;
  }
  .contact_privacy dl {
    margin-bottom: 36px;
  }
  .contact_privacy dl dt {
    font-size: 16px;
    color: #0056a8;
    margin-bottom: 10px;
    line-height: 1.4;
    text-indent: -1.1em;
    padding-left: 1.1em;
  }
  .contact_privacy dl dd {
    font-size: 14px;
    line-height: 1.8;
  }
  .contact_privacy dl dd ul.disclosure {
    margin-top: 0;
  }
  .contact_privacy dl dd ul.disclosure li {
    margin-bottom: 20px;
  }
  .contact_privacy dl dd ul.disclosure li ul li {
    margin-bottom: 0;
    text-indent: -1.8em;
    padding-left: 1.8em;
  }
  .contact_privacy dl dd ul.disclosure li ul li .disc {
    display: inline;
    color: #0056a8;
  }
  .contact_privacy dl dd ul li {
    text-indent: -1em;
    padding-left: 1em;
  }
  .contact_privacy dl dd ul li span {
    font-size: 14px;
    display: block;
    color: #0056a8;
  }
  .contact_privacy .btn_wrap {
    letter-spacing: -0.4em;
    text-align: center;
    margin-bottom: 43px;
  }
  .contact_privacy .btn_wrap .button {
    width: 208px;
    height: 40px;
    display: inline-block;
  }
  .contact_privacy .btn_wrap .button a {
    position: relative;
    display: block;
    width: 100%;
    height: 40px;
    font-size: 12px;
    text-align: center;
    line-height: 40px;
    color: #0056a8;
    border: 1px solid #000;
    border-radius: 4px;
    letter-spacing: 0;
    -webkit-transition: none;
    transition: none;
  }
  .contact_privacy .btn_wrap .button a .arrow {
    position: absolute;
    top: 50%;
    right: 7px;
    margin-top: -7px;
    width: 12px;
    height: 12px;
    border: 1px solid #0056a8;
    border-radius: 50%;
    background: url("img/common/arrow_blue.svg") no-repeat center center;
    -webkit-background-size: 3px auto;
    background-size: 3px auto;
  }
  .contact_privacy .btn_wrap .button a:hover {
    background: none;
    border: 1px solid #000;
    color: #0056a8;
    -webkit-transition: none;
    transition: none;
  }
  .contact_privacy .btn_wrap .button a:hover .arrow {
    border: 1px solid #0056a8;
    background: url("img/common/arrow_blue.svg") no-repeat center center;
    -webkit-background-size: 3px auto;
    background-size: 3px auto;
  }
  .contact_privacy .btn_wrap .button:first-child {
    margin-right: 0;
    margin-bottom: 10px;
  }
}

.contact_top,
.contact_top {
  max-width: 1120px;
  min-width: 1120px;
  padding: 0 40px 130px;
  margin: 0 auto;
}

.contact_form_wrap {
  width: 980px;
  margin: 0 auto 34px;
}

.contact_tel {
  width: 660px;
  margin: 30px auto 60px auto;
  text-align: center;
  border-radius: 5px;
  overflow: hidden;
}
.contact_tel h3 {
  font-size: 14px;
  padding: 10px 0;
  color: #fff;
  background-color: #a8a8a8;
}
.contact_tel ul {
  width: 100%;
  display: table;
  background-color: #f8f8f8;
  border-radius: 0 0 5px 5px;
  padding: 15px 0;
}
.contact_tel ul li {
  display: table-cell;
}
.contact_tel ul li p {
  display: inline-block;
  font-size: 13px;
  vertical-align: -1px;
  margin-right: 8px;
}
.contact_tel ul li span {
  display: inline-block;
  font-size: 32px;
  color: #0459a9;
  font-family: "Roboto Condensed", sans-serif;
  font-weight: bold;
  vertical-align: middle;
}

.contact_form_wrap p {
  font-size: 13px;
}

.contact_form_wrap p.contact_info {
  font-size: 14px;
  line-height: 1.71;
  margin-bottom: 22px;
}

.contact_top .error,
.contact_conform .error {
  display: block;
  color: #fe325d;
}

.contact_top .required,
.contact_conform .required {
  color: #fe325d;
  margin-top: 22px;
}

.contact_form_wrap .contact_step {
  text-align: center;
  margin-bottom: 46px;
}

.contact_form_wrap .contact_step li {
  width: 168px;
  height: 54px;
  background: #323232;
  display: inline-block;
  color: #fff;
  font-size: 13px;
  padding: 8px;
}

.contact_form_wrap .contact_step li.active {
  background: #0056a8;
}

.contact_form_wrap .contact_step li p {
  padding-top: 14px;
}

.contact_form_wrap .contact_step li p:first-child {
  padding-top: 0;
}

.contact_form_wrap .contact_step li span {
  display: block;
  text-align: left;
  color: #fff;
  font-size: 14px;
  border-bottom: 1px solid #fff;
  padding-bottom: 6px;
  margin-top: 0;
}

.contact_form_wrap h4 {
  font-size: 24px;
  margin-bottom: 10px;
}

.contact_form_wrap table {
  margin-bottom: 70px;
}

/*.contact_form_wrap table tr.error td {
  padding-top: 24px;
  position: relative;
}*/

/*.contact_form_wrap table tr.error td input[type="text"] {*/
.contact_form_wrap table tr td .error ~ input[type="text"] {
  background: #fadae0;
}

/*.contact_form_wrap table tr.error td input[type="email"] {*/
.contact_form_wrap table tr td .error ~ input[type="email"] {
  background: #fadae0;
}

/*.contact_form_wrap table tr.error td input[type="tel"]:nth-child(2) {*/
.contact_form_wrap table tr td .error ~ input[type="tel"] {
  background: #fadae0;
}

/*.contact_form_wrap table tr.error td textarea {*/
.contact_form_wrap table tr td .error ~ textarea {
  background: #fadae0;
}

/*.contact_form_wrap table tr.error td span {*/
.contact_form_wrap .error {
  display: block;
  position: absolute;
  font-size: 14px;
  /*  top: 0.2em;*/
  top: -1.75em;
}
.contact_form_wrap td > .error {
  top: 0.35em;
}
.contact_form_wrap td.privacy_consent > .error {
  top: 1.5em;
  left: 50%;
  margin-left: -8.75em;
}
.contact_form_wrap table tr.error td .text_wrap::before {
  background: #fadae0;
}

.contact_form_wrap table tr th {
  width: 150px;
  text-align: left;
  font-size: 15px;
  color: #0056a8;
  /*  padding: 10px 0;*/
  padding: 14px 0;
  line-height: 1.4;
}

.contact_form_wrap table tr th.prefectures,
.contact_form_wrap table tr th.fax,
.contact_form_wrap table tr th.name {
  padding-left: 30px;
  text-align: center;
}

.contact_form_wrap table tr th.content {
  /*  height: 112px;*/
  float: none;
  height: auto;
  vertical-align: top;
}

.contact_form_wrap table tr td {
  font-size: 15px;
  padding: 14px 10px;
  /*  padding: 10px;*/
  line-height: 1.6;
  position: relative;
}
.contact_form_wrap td p {
  margin-top: 10px;
}
.contact_form_wrap table tr td.privacy_consent {
  text-align: center;
  padding-top: 46px;
}

/*.contact_form_wrap table tr td.privacy_consent span {
  top: 1.5em;
  left: 0;
  right: 0;
  margin-left: -95px;
}*/

.contact_form_wrap table tr td p {
  font-size: 12px;
}

/*.contact_form_wrap table tr td span {
  display: none;
}*/

/*.contact_form_wrap table tr td input[type="checkbox"] {
  display: none;
}*/

.formlabel {
  display: inline-block;
  position: relative;
  width: 100%;
}
.formlabel_textarea {
  display: block;
}
.contact_form_wrap table tr td input,
.contact_form_wrap table tr td button,
.contact_form_wrap table tr td textarea,
.contact_form_wrap table tr td select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  margin: 0;
  padding: 0;
  background: none;
  border: none;
  border-radius: 0;
  outline: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

.contact_form_wrap table tr td .mwform-checkbox-field label {
  display: inline-block;
  position: relative;
  cursor: pointer;
  padding-left: 1.5em;
  padding-right: 14px;
  vertical-align: bottom;
}
.contact_form_wrap table tr td.privacy_consent .mwform-checkbox-field label {
  padding-right: 0;
}

.boxshadow .contact_form_wrap table tr td .mwform-checkbox-field label {
  position: relative;
  overflow: hidden;
}

.boxshadow .mwform-checkbox-field label::before {
  /*.contact_form_wrap table tr td .text_wrap::before {*/
  position: absolute;
  content: "";
  top: 50%;
  left: 0;
  width: 12px;
  height: 12px;
  margin-top: -8px;
  background: #fff;
  border: 1px solid #ccc;
}

/*.contact_form_wrap table tr td input[type="checkbox"]:checked + .text_wrap::after {*/
.boxshadow .mwform-checkbox-field label::after {
  position: absolute;
  content: "";
  top: 7px;
  left: 3px;
  width: 8px;
  height: 4px;
  border-left: 2px solid #333;
  border-bottom: 2px solid #333;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
}
.boxshadow .mwform-checkbox-field input[type="checkbox"] {
  appearance: none;
  -moz-appearance: none;
  -webkit-appearance: none;
  position: absolute;
  left: -23px;
  top: 50%;
  width: 12px;
  height: 12px;
  display: block;
  box-shadow: 24px 0px #fff;
  border-collapse: separate;
  z-index: 2;
  margin: -7px 0 0;
  padding: 0;
}
.boxshadow .error ~ .mwform-checkbox-field input[type="checkbox"] {
  box-shadow: 24px 0px #fadae0;
}
.boxshadow .mwform-checkbox-field input[type="checkbox"]:focus {
  box-shadow: 24px 0px #eee;
}
.boxshadow .mwform-checkbox-field input[type="checkbox"]:checked {
  box-shadow: none;
}
.boxshadow .mwform-checkbox-field input[type="checkbox"]:checked:focus {
  box-shadow: 24px 0px #666;
  opacity: 0.1;
}

.contact_form_wrap table tr td input[type="text"] {
  width: 100%;
  background: #f2f2f2;
  padding: 14px;
  font-size: 14px;
}

.contact_form_wrap table tr td input[type="email"] {
  width: 100%;
  background: #f2f2f2;
  padding: 14px;
  font-size: 14px;
}

.contact_form_wrap table tr td input[type="tel"] {
  width: 100%;
  background: #f2f2f2;
  padding: 14px;
  font-size: 14px;
}

.contact_form_wrap table tr td textarea {
  width: 100%;
  background: #f2f2f2;
  padding: 14px;
  line-height: 1.4;
  font-size: 14px;
}

.contact_form_wrap .submit {
  position: relative;
  width: 240px;
  height: 40px;
  margin: 0 auto;
}

.contact_form_wrap .submit input[type="submit"] {
  width: 100%;
  height: 100%;
  display: block;
  border: none;
  cursor: pointer;
  outline: none;
  background: none;
  font-size: 12px;
  text-align: center;
  line-height: 38px;
  border: 1px solid #000;
  border-radius: 4px;
  color: #0056a8;
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

.contact_form_wrap .submit .arrow {
  position: absolute;
  top: 50%;
  right: 10px;
  margin-top: -7px;
  width: 12px;
  height: 12px;
  background: url("img/common/arrow_blue.svg") no-repeat center center;
  -webkit-background-size: 3px auto;
  background-size: 3px auto;
  border: 1px solid #0056a8;
  border-radius: 50%;
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear;
}

.contact_form_wrap .submit:hover input[type="submit"] {
  background: #0056a8;
  border: 1px solid #0056a8;
  color: #fff;
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear;
}

.contact_form_wrap .submit:hover .arrow {
  background: url("img/common/arrow_white.svg") no-repeat center center;
  -webkit-background-size: 3px auto;
  background-size: 3px auto;
  border: 1px solid #fff;
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear;
}

.privacy_info {
  font-size: 14px;
  line-height: 1.71;
  padding-bottom: 60px;
}

@media screen and (max-width: 768px) {
  .contact_top {
    max-width: 89.583%;
    min-width: 89.583%;
    padding: 0;
    margin: 0 auto;
  }
  .contact_top h2 {
    padding-top: 0;
  }
  .contact_top .error,
  .contact_conform .error {
    margin-top: 0;
  }

  .contact_form_wrap {
    width: 100%;
    margin: 0 auto 30px;
  }
  .contact_form_wrap p {
    font-size: 13px;
  }
  .contact_form_wrap p.contact_info {
    font-size: 0.8rem;
  }
  .contact_tel {
    width: auto;
    margin: 20px auto 40px auto;
    text-align: center;
    border-radius: 5px;
    overflow: hidden;
  }
  .contact_tel h3 {
    font-size: 13px;
    line-height: 1.4;
    padding: 10px;
    color: #fff;
    background-color: #a8a8a8;
  }
  .contact_tel ul {
    width: 100%;
    display: table;
    background-color: #f8f8f8;
    border-radius: 0 0 5px 5px;
    padding: 10px 0;
  }
  .contact_tel ul li {
    display: table-cell;
  }
  .contact_tel ul li p {
    display: block;
    font-size: 12px;
    vertical-align: -1px;
    margin-right: 0;
  }
  .contact_tel ul li span {
    display: block;
    font-size: 22px;
    color: #0459a9;
    font-family: "Roboto Condensed", sans-serif;
    font-weight: bold;
    vertical-align: middle;
    margin-top: 8px;
  }
  /*  .contact_form_wrap span {
    color: #fe325d;
  }*/
  .contact_form_wrap .contact_step {
    width: 100%;
    text-align: center;
    margin-bottom: 28px;
    font-size: 0;
  }
  .contact_form_wrap .contact_step li {
    width: 32.5%;
    height: 67px;
    background: #323232;
    display: inline-block;
    color: #fff;
    font-size: 13px;
    padding: 8px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    margin-left: 1%;
  }
  .contact_form_wrap .contact_step li:first-child {
    margin-left: 0;
  }
  .contact_form_wrap .contact_step li.active {
    background: #0056a8;
  }
  .contact_form_wrap .contact_step li p {
    padding-top: 14px;
  }
  .contact_form_wrap .contact_step li p:first-child {
    padding-top: 0;
  }
  .contact_form_wrap .contact_step li span {
    display: block;
    text-align: left;
    color: #fff;
    font-size: 12px;
    border-bottom: 1px solid #fff;
    padding-bottom: 6px;
    margin-top: 0;
  }
  .contact_form_wrap table {
    margin-bottom: 20px;
  }
  /*.contact_form_wrap table tr.error {
    position: relative;
  }
  .contact_form_wrap table tr.error .privacy_consent span {
    top: 0.6em;
    margin-left: -50px;
  }*/
  .contact_form_wrap .error {
    position: static;
  }
  .contact_form_wrap table tr th {
    display: list-item;
    list-style: none;
    width: 100%;
    text-align: left;
    font-size: 15px;
    color: #0056a8;
    padding: 28px 0 6px;
    line-height: 1.4;
  }
  .contact_form_wrap table tr th.prefectures,
  .contact_form_wrap table tr th.fax,
  .contact_form_wrap table tr th.name {
    padding-left: 0;
    text-align: left;
  }
  .contact_form_wrap table tr th.content {
    height: auto;
    vertical-align: top;
  }
  .contact_form_wrap table tr td {
    display: list-item;
    list-style: none;
    font-size: 15px;
    padding: 0;
    line-height: 1.6;
  }
  .contact_form_wrap table tr td.privacy_consent {
    text-align: center;
    padding-top: 30px;
    font-size: 0.8rem;
  }
  /*  .contact_form_wrap table tr td.privacy_consent input[type="checkbox"]:checked + label::after {
    top: 4px;
  }*/
  .boxshadow .mwform-checkbox-field label::after {
    position: absolute;
    content: "";
    top: 5px;
    left: 3px;
    width: 8px;
    height: 4px;
    border-left: 2px solid #333;
    border-bottom: 2px solid #333;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
  }
  .contact_form_wrap table tr td.privacy_consent span {
    top: 1.5em;
    left: 0;
    right: 0;
    /*    margin-left: -95px;*/
  }
  .contact_form_wrap table tr td.type,
  .contact_form_wrap table tr td.service,
  .contact_form_wrap table tr td.plans,
  .contact_form_wrap table tr td.season,
  .contact_form_wrap table tr td.budget,
  .contact_form_wrap table tr td.wish {
    width: 100%;
  }
  /*  .contact_form_wrap table tr td.type label, .contact_form_wrap table tr td.service label, .contact_form_wrap table tr td.plans label, .contact_form_wrap table tr td.season label, .contact_form_wrap table tr td.budget label, .contact_form_wrap table tr td.wish label {
*/
  .contact_form_wrap table tr td.type .mwform-checkbox-field,
  .contact_form_wrap table tr td.service .mwform-checkbox-field,
  .contact_form_wrap table tr td.plans .mwform-checkbox-field,
  .contact_form_wrap table tr td.season .mwform-checkbox-field,
  .contact_form_wrap table tr td.budget .mwform-checkbox-field,
  .contact_form_wrap table tr td.wish .mwform-checkbox-field {
    display: inline-block;
    width: 42%;
    font-size: 0.8em;
    white-space: nowrap;
    padding-top: 6px;
    padding-bottom: 6px;
  }
  .contact_form_wrap table tr td.service .mwform-checkbox-field,
  .contact_form_wrap table tr td.plans .mwform-checkbox-field {
    width: 100%;
  }
  .contact_form_wrap table tr td.position {
    width: 100%;
  }
  /*  .contact_form_wrap table tr td.position label {*/
  .contact_form_wrap table tr td.position .mwform-checkbox-field {
    display: block;
    font-size: 0.8em;
    padding-top: 6px;
    padding-bottom: 6px;
    /*    padding-left: 0;*/
  }
  /*  .contact_form_wrap table tr td.content_td {
    height: 152px;
    margin-top: 50px;
  }*/

  .contact_form_wrap table tr td p {
    font-size: 12px;
  }
  /*  .contact_form_wrap table tr td input[type="checkbox"] {
    display: none;
  }*/
  .contact_form_wrap table tr td input,
  .contact_form_wrap table tr td button,
  .contact_form_wrap table tr td textarea,
  .contact_form_wrap table tr td select {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    margin: 0;
    padding: 0;
    background: none;
    border: none;
    border-radius: 0;
    outline: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
  }
  /*  .contact_form_wrap table tr td .text_wrap {
    position: relative;
    cursor: pointer;
    padding-left: 1.6em;
    padding-right: 0;
  }
  .contact_form_wrap table tr td .text_wrap::before {
    position: absolute;
    content: '';
    top: 50%;
    left: 0;
    width: 12px;
    height: 12px;
    margin-top: -8px;
    background: #fff;
    border: 1px solid #ccc;
  }
  .contact_form_wrap table tr td input[type="checkbox"]:checked + .text_wrap::after {
    position: absolute;
    content: '';
    top: 5px;
    left: 3px;
    width: 8px;
    height: 4px;
    border-left: 2px solid #333;
    border-bottom: 2px solid #333;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
  }*/
  .contact_form_wrap table tr td input[type="text"] {
    width: 100%;
    background: #f2f2f2;
    padding: 14px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    font-size: 16px;
  }
  .contact_form_wrap table tr td input[type="email"] {
    width: 100%;
    background: #f2f2f2;
    padding: 14px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    font-size: 16px;
  }
  .contact_form_wrap table tr td input[type="tel"] {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 14px;
    font-size: 16px;
  }
  .contact_form_wrap table tr td textarea {
    width: 100%;
    background: #f2f2f2;
    padding: 10px;
    line-height: 1.4;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    font-size: 16px;
  }
  .contact_form_wrap .submit {
    position: relative;
    width: 208px;
    height: 40px;
    margin: 0 auto;
  }
  .contact_form_wrap .submit input[type="submit"] {
    width: 100%;
    height: 100%;
    display: block;
    border: none;
    cursor: pointer;
    outline: none;
    background: none;
    font-size: 12px;
    text-align: center;
    line-height: 40px;
    border: 1px solid #000;
    border-radius: 4px;
    color: #0056a8;
    -webkit-transition: none;
    transition: none;
  }
  .contact_form_wrap .submit .arrow {
    position: absolute;
    top: 50%;
    right: 10px;
    margin-top: -7px;
    width: 12px;
    height: 12px;
    background: url("img/common/arrow_blue.svg") no-repeat center center;
    -webkit-background-size: 3px auto;
    background-size: 3px auto;
    border: 1px solid #0056a8;
    border-radius: 50%;
    -webkit-transition: none;
    transition: none;
  }
  .contact_form_wrap .submit:hover input[type="submit"] {
    background: #0056a8;
    border: 1px solid #0056a8;
    color: #fff;
    -webkit-transition: none;
    transition: none;
  }
  .contact_form_wrap .submit:hover .arrow {
    background: url("img/common/arrow_white.svg") no-repeat center center;
    -webkit-background-size: 3px auto;
    background-size: 3px auto;
    border: 1px solid #fff;
    -webkit-transition: none;
    transition: none;
  }
  .contact_top .privacy_info {
    font-size: 0.78rem;
  }
}

.contact_conform {
  max-width: 1120px;
  min-width: 1120px;
  padding: 0 40px 130px;
  margin: 0 auto;
}

.contact_conform .notinconfirm,
.contact_conform .required {
  display: none;
}

.contact_conform .contact_conform_wrap {
  width: 980px;
  margin: 0 auto;
}

.contact_conform .contact_conform_wrap .contact_step {
  text-align: center;
  margin-bottom: 46px;
}

.contact_conform .contact_conform_wrap .contact_step li {
  width: 168px;
  height: 54px;
  background: #323232;
  display: inline-block;
  color: #fff;
  font-size: 13px;
  padding: 8px;
}

.contact_conform .contact_conform_wrap .contact_step li.active {
  background: #0056a8;
}

.contact_conform .contact_conform_wrap .contact_step li p {
  padding-top: 14px;
}

.contact_conform .contact_conform_wrap .contact_step li p:first-child {
  padding-top: 0;
}

.contact_conform .contact_conform_wrap .contact_step li span {
  display: block;
  text-align: left;
  color: #fff;
  font-size: 14px;
  border-bottom: 1px solid #fff;
  padding-bottom: 6px;
  margin-top: 0;
}

.contact_conform .contact_conform_wrap table {
  margin-bottom: 44px;
  width: 100%;
}

.contact_conform .contact_conform_wrap table tr th {
  width: 150px;
  font-size: 15px;
  color: #0056a8;
  text-align: left;
  padding: 16px 0;
  line-height: 1.4;
}

.contact_conform .contact_conform_wrap table tr td {
  font-size: 15px;
  line-height: 1.4;
  padding: 16px 0;
  width: 340px;
}
.contact_conform .contact_conform_wrap table tr td[colspan] {
  width: auto;
}
.contact_conform .contact_conform_wrap table tr td.service {
  padding: 0;
}

.contact_conform .contact_conform_wrap table tr td.content_td {
  /*  padding-top: 20px;*/
  vertical-align: top;
}

.contact_conform .contact_conform_wrap .btn_wrap {
  width: 500px;
  margin: 0 auto;
}

.contact_conform .contact_conform_wrap .back_btn {
  position: relative;
  width: 240px;
  height: 40px;
}

.contact_conform .contact_conform_wrap .back_btn input[type="submit"] {
  width: 100%;
  height: 100%;
  display: inline-block;
  border: none;
  cursor: pointer;
  outline: none;
  background: none;
  font-size: 12px;
  text-align: center;
  line-height: 40px;
  border: 1px solid #000;
  border-radius: 4px;
  color: #0056a8;
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear;
}

.contact_conform .contact_conform_wrap .back_btn .arrow {
  position: absolute;
  top: 50%;
  left: 10px;
  margin-top: -7px;
  width: 12px;
  height: 12px;
  background: url("/img/common/arrow_blue.svg") no-repeat center center;
  -webkit-transform: rotate(180deg);
  -ms-transform: rotate(180deg);
  transform: rotate(180deg);
  -webkit-background-size: 3px auto;
  background-size: 3px auto;
  border: 1px solid #0056a8;
  border-radius: 50%;
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear;
}

.contact_conform .contact_conform_wrap .back_btn:hover input[type="submit"] {
  background: #0056a8;
  border: 1px solid #0056a8;
  color: #fff;
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear;
}

.contact_conform .contact_conform_wrap .back_btn:hover .arrow {
  background: url("img/common/arrow_white.svg") no-repeat center center;
  -webkit-background-size: 3px auto;
  background-size: 3px auto;
  border: 1px solid #fff;
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear;
}

/*.contact_conform .contact_conform_wrap form {
  width: 240px;
  text-align: center;
}*/

.contact_conform .contact_conform_wrap .submit {
  float: right;
}

.contact_conform .contact_conform_wrap .back_btn {
  float: left;
}

.contact_conform .contact_conform_wrap .submit,
.contact_conform .contact_conform_wrap .back_btn {
  position: relative;
  width: 240px;
  height: 40px;
}

.contact_conform .contact_conform_wrap .submit input[type="submit"] {
  width: 100%;
  height: 100%;
  display: inline-block;
  border: none;
  cursor: pointer;
  outline: none;
  background: none;
  font-size: 12px;
  text-align: center;
  line-height: 40px;
  border: 1px solid #000;
  border-radius: 4px;
  color: #0056a8;
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear;
}

.contact_conform .contact_conform_wrap .submit .arrow {
  position: absolute;
  top: 50%;
  right: 10px;
  margin-top: -7px;
  width: 12px;
  height: 12px;
  background: url("img/common/arrow_blue.svg") no-repeat center center;
  -webkit-background-size: 3px auto;
  background-size: 3px auto;
  border: 1px solid #0056a8;
  border-radius: 50%;
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear;
}

.contact_conform .contact_conform_wrap .submit:hover input[type="submit"] {
  background: #0056a8;
  border: 1px solid #0056a8;
  color: #fff;
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear;
}

.contact_conform .contact_conform_wrap .submit:hover .arrow {
  background: url("img/common/arrow_white.svg") no-repeat center center;
  -webkit-background-size: 3px auto;
  background-size: 3px auto;
  border: 1px solid #fff;
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear;
}

@media screen and (max-width: 768px) {
  .contact_conform {
    max-width: 89.583%;
    min-width: 89.583%;
    /*    padding: 80px 0 130px;*/
    padding: 0 0 130px;
    margin: 0 auto;
  }
  .contact_conform h2 {
    padding-top: 30px;
  }
  .contact_conform .contact_conform_wrap {
    width: 100%;
    margin: 0 auto;
  }
  .contact_conform .contact_conform_wrap .contact_step {
    width: 100%;
    text-align: center;
    margin-bottom: 28px;
    font-size: 0;
  }
  .contact_conform .contact_conform_wrap .contact_step li {
    width: 32.5%;
    height: 67px;
    background: #323232;
    display: inline-block;
    color: #fff;
    font-size: 13px;
    padding: 8px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    margin-left: 1%;
  }
  .contact_conform .contact_conform_wrap .contact_step li:first-child {
    margin-left: 0;
  }
  .contact_conform .contact_conform_wrap .contact_step li.active {
    background: #0056a8;
  }
  .contact_conform .contact_conform_wrap .contact_step li p {
    padding-top: 14px;
  }
  .contact_conform .contact_conform_wrap .contact_step li p:first-child {
    padding-top: 0;
  }
  .contact_conform .contact_conform_wrap .contact_step li span {
    display: block;
    text-align: left;
    color: #fff;
    font-size: 12px;
    border-bottom: 1px solid #fff;
    padding-bottom: 6px;
    margin-top: 0;
  }
  .contact_conform .contact_conform_wrap table {
    margin-bottom: 44px;
  }
  .contact_conform .contact_conform_wrap table tr th {
    display: list-item;
    list-style: none;
    width: 100%;
    font-size: 0.9em;
    color: #0056a8;
    text-align: left;
    padding: 0;
    padding-bottom: 4px;
    line-height: 1.4;
  }
  .contact_conform .contact_conform_wrap table tr td {
    display: list-item;
    width: 100%;
    display: list-item;
    list-style: none;
    font-size: 0.9em;
    line-height: 1.4;
    /*    padding-bottom: 12px;*/
    padding: 0 0 12px;
  }
  .contact_conform .contact_conform_wrap table tr td.service {
    padding-bottom: 14px;
  }

  .contact_conform .contact_conform_wrap .btn_wrap {
    width: 100%;
    text-align: center;
  }
  .contact_conform .contact_conform_wrap .back_btn {
    width: 208px;
    height: 40px;
    float: none;
    margin: 0 auto;
  }
  .contact_conform .contact_conform_wrap .back_btn a {
    position: relative;
    display: block;
    width: 100%;
    height: 100%;
    text-align: center;
    border: 1px solid #000;
    line-height: 40px;
    border-radius: 4px;
    font-size: 12px;
    -webkit-transition: none;
    transition: none;
  }
  .contact_conform .contact_conform_wrap .back_btn a .arrow {
    position: absolute;
    top: 50%;
    left: 10px;
    margin-top: -7px;
    width: 12px;
    height: 12px;
    border: 1px solid #0056a8;
    border-radius: 50%;
    background: url("img/common/arrow_blue.svg") no-repeat center center;
    -webkit-background-size: 3px auto;
    background-size: 3px auto;
    -webkit-transition: none;
    transition: none;
    -webkit-transform: rotate(-180deg);
    -ms-transform: rotate(-180deg);
    transform: rotate(-180deg);
  }
  .contact_conform .contact_conform_wrap .back_btn a:hover {
    background: none;
    color: #0056a8;
    border: 1px solid #000;
    -webkit-transition: none;
    transition: none;
  }
  .contact_conform .contact_conform_wrap .back_btn a:hover .arrow {
    border: 1px solid #0056a8;
    background: url("img/common/arrow_blue.svg") no-repeat center center;
    -webkit-background-size: 3px auto;
    background-size: 3px auto;
    -webkit-transition: none;
    transition: none;
  }
  .contact_conform .contact_conform_wrap form {
    width: auto;
    float: none;
    margin-bottom: 10px;
  }
  .contact_conform .contact_conform_wrap form.submit-right {
    float: none;
  }
  .contact_conform .contact_conform_wrap form.submit-left {
    float: none;
  }
  .contact_conform .contact_conform_wrap .submit {
    float: none;
    position: relative;
    width: 210px;
    height: 42px;
    margin: 0 auto 10px;
  }
  .contact_conform .contact_conform_wrap .submit input[type="submit"] {
    width: 100%;
    height: 100%;
    display: block;
    border: none;
    cursor: pointer;
    outline: none;
    background: none;
    font-size: 12px;
    text-align: center;
    line-height: 40px;
    border: 1px solid #000;
    border-radius: 4px;
    color: #0056a8;
    -webkit-transition: none;
    transition: none;
  }
  .contact_conform .contact_conform_wrap .submit .arrow {
    position: absolute;
    top: 50%;
    right: 10px;
    margin-top: -7px;
    width: 12px;
    height: 12px;
    background: url("img/common/arrow_blue.svg") no-repeat center center;
    -webkit-background-size: 3px auto;
    background-size: 3px auto;
    border: 1px solid #0056a8;
    border-radius: 50%;
    -webkit-transition: none;
    transition: none;
  }
  .contact_conform .contact_conform_wrap .submit:hover input[type="submit"] {
    background: none;
    border: 1px solid #000;
    color: #0056a8;
    -webkit-transition: none;
    transition: none;
  }
  .contact_conform .contact_conform_wrap .submit:hover .arrow {
    background: url("img/common/arrow_blue.svg") no-repeat center center;
    -webkit-background-size: 3px auto;
    background-size: 3px auto;
    border: 1px solid #0056a8;
    -webkit-transition: none;
    transition: none;
  }
}

/*
form
*/
.text-center {
  text-align: center;
}
.contact_conform__badge {
  color: #fff;
  padding: 0px 4px;
  display: inline-block;
  margin: 0 16px 0 0;
  font-size: 12px;
}
.contact_conform__badge--optional {
  background: #61c1be;
}
.contact_conform__badge--required {
  background: #fe325d;
}
.contact_form_wrap .form-item,
.contact_conform_wrap .form-item {
  margin: 0 0 20px;
}
@media screen and (min-width: 768px) {
  .contact_form_wrap .form-item,
  .contact_conform_wrap .form-item {
    margin: 0 0 30px;
  }
}
.contact_conform_wrap .privacy-item,
.contact_conform_wrap .privacy_consent__button {
  display: none;
}
.contact_form_wrap .form-item__title,
.contact_conform_wrap .form-item__title {
  color: #0056a8;
  font-size: 15px;
  line-height: 1.5;
  margin: 0 0 6px;
  font-weight: 700;
}
.contact_form_wrap .form-item__type,
.contact_conform_wrap .form-item__type {
  line-height: 1.3;
}
@media screen and (min-width: 768px) {
  .contact_form_wrap .form-item__type,
  .contact_conform_wrap .form-item__type {
    line-height: 1.6;
  }
}
.contact_form_wrap .form-item__type.d-flex .form-item__input:first-child {
  margin: 0 0 12px;
}
@media screen and (min-width: 768px) {
  .contact_form_wrap .form-item__type.d-flex,
  .contact_conform_wrap .form-item__type.d-flex {
    display: flex;
    justify-content: space-between;
  }
  .contact_form_wrap .form-item__type .form-item__input,
  .contact_conform_wrap .form-item__type .form-item__input {
    width: 45%;
  }
  .contact_form_wrap .form-item__type.d-flex .form-item__input:first-child {
    margin: 0;
  }
}
.contact_form_wrap input,
.contact_form_wrap button,
.contact_form_wrap textarea,
.contact_form_wrap select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  margin: 0;
  padding: 0;
  background: none;
  border: none;
  border-radius: 0;
  outline: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}
.contact_form_wrap input[type="text"],
.contact_form_wrap input[type="email"],
.contact_form_wrap input[type="tel"] {
  width: 100%;
  background: #f2f2f2;
  padding: 14px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  font-size: 16px;
}
.contact_form_wrap textarea {
  width: 100%;
  background: #f2f2f2;
  padding: 10px;
  line-height: 1.4;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  font-size: 16px;
}
.contact_conform__scroll {
  overflow: auto;
  max-width: 630px;
  margin: 0 auto;
  height: 200px;
  padding: 10px;
  line-height: 1.5em;
  font-size: 15px;
  border: 1px solid #ccc;
}
.contact_conform .contact_conform__scroll {
  display: none;
}
.contact_conform__scroll .text {
  margin: 0 0 24px;
}
.contact_form_wrap ::-webkit-scrollbar {
  width: 10px;
}
.contact_form_wrap ::-webkit-scrollbar-track {
  border-radius: 10px;
  box-shadow: inset 0 0 5px rgba(0, 0, 0, 0.1);
}
.contact_form_wrap ::-webkit-scrollbar-thumb {
  background-color: rgba(0, 0, 0, 0.5);
  border-radius: 10px;
  box-shadow: 0 0 0 1px rgba(255, 255, 255, 0.3);
}
.contact_form_wrap .mwform-checkbox-field label {
  overflow: hidden;
}
.contact_form_wrap .mwform-checkbox-field label {
  display: inline-block;
  position: relative;
  cursor: pointer;
  padding-left: 1.5em;
  padding-right: 14px;
  vertical-align: bottom;
}
.privacy_consent__button {
  margin: 0 0 20px;
  line-height: 1.6;
}
@media screen and (min-width: 768px) {
  .privacy_consent__button {
    margin: 0 0 50px;
  }
}
.contact_form_wrap .error ~ input[type="text"],
.contact_form_wrap .error ~ input[type="email"],
.contact_form_wrap .error ~ input[type="tel"],
.contact_form_wrap .error ~ textarea {
  background: #fadae0;
}
.contact_form_wrap .error {
  position: static;
}
.contact_form_wrap .mwform-radio-field label {
  display: inline-block;
  position: relative;
  cursor: pointer;
  vertical-align: bottom;
}
.contact_form_wrap input[type="radio"] {
  appearance: none;
  display: none;
}
.contact_form_wrap input[type="radio"] + span {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  cursor: pointer;
  padding: 0 0 0 28px;
}
.contact_form_wrap input[type="radio"] + span:before,
.contact_form_wrap input[type="radio"] + span::after {
  content: "";
  display: inline-block;
  border-radius: 50%;
  position: absolute;
}
.contact_form_wrap input[type="radio"] + span:before {
  width: 16px;
  height: 16px;
  border: 1px solid #999;
  left: 0;
  top: 3px;
}
.contact_form_wrap input[type="radio"] + span::after {
  margin-top: 8px;
  width: 8px;
  height: 8px;
  left: 5px;
  opacity: 0;
  background: #0056a8;
}
.contact_form_wrap input[type="radio"]:checked + span::after {
  opacity: 1;
}

.recruit_top {
  max-width: 1120px;
  min-width: 1120px;
  margin: 0 auto;
}

.recruit_top p {
  font-size: 14px;
  color: #fff;
}

.recruit_top .carrier_btn {
  width: 240px;
  height: 40px;
  margin: 0 auto;
  font-size: 12px;
  font-weight: bold;
  margin-top: 30px;
}

.recruit_top .carrier_btn a {
  color: #fff;
  position: relative;
  display: block;
  width: 100%;
  height: 100%;
  border: 1px solid #fff;
  color: #fff;
  text-align: center;
  line-height: 40px;
  border-radius: 4px;
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  letter-spacing: 0.04em;
}

.recruit_top .carrier_btn a .arrow {
  position: absolute;
  top: 50%;
  right: 10px;
  width: 12px;
  height: 12px;
  margin-top: -7px;
  border: 1px solid #fff;
  border-radius: 50%;
  background: url("img/common/arrow_white.svg") no-repeat center center;
  -webkit-background-size: 3px auto;
  background-size: 3px auto;
}

.recruit_top .carrier_btn a:hover {
  background: #0056a8;
  border: 1px solid #0056a8;
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear;
}

.recruit_top .mainimage {
  width: 100%;
  margin-bottom: 100px;
}

.recruit_top .mainimage img {
  width: 100%;
}

.recruit_top .recruit_wrap {
  width: 980px;
  margin: 0 auto;
  padding: 0 40px 68px;
}

.recruit_top .recruit_wrap h3 {
  margin-top: 77px;
  margin-bottom: 22px;
  font-size: 21px;
  font-weight: bold;
  color: #fff;
  text-align: center;
}

.recruit_top .recruit_wrap p {
  text-align: center;
}

.recruit_top .recruit_wrap .carrier {
  width: 490px;
  height: 280px;
  background: #323232;
  float: left;
}

.recruit_top .recruit_wrap .newgraduates {
  width: 490px;
  height: 280px;
  background: #21241e;
  float: right;
}

.recruit_top .recruit_contact_wrap {
  width: 980px;
  margin: 0 auto;
  padding: 0 40px 130px;
}

.recruit_top .recruit_contact_wrap .recruit_contact_txt {
  color: #000;
  padding-bottom: 7px;
  font-size: 13px;
}

.recruit_top .recruit_contact_wrap .recruit_contact_mail {
  width: 140px;
}

.recruit_top .recruit_contact_wrap .recruit_contact_mail img {
  width: 100%;
}

@media screen and (max-width: 768px) {
  .recruit_top {
    max-width: 100%;
    min-width: 100%;
    margin: 0 auto;
    overflow: hidden;
    /*    padding-top: 80px;*/
  }
  .recruit_top h2 {
    width: 89.583%;
    margin: 0 auto 12px;
    padding-left: 0;
  }
  .recruit_top p {
    font-size: 14px;
    color: #fff;
  }
  .recruit_top .carrier_btn {
    width: 208px;
    height: 40px;
    margin: 0 auto;
    font-size: 12px;
    font-weight: bold;
    margin-top: 26px;
  }
  .recruit_top .carrier_btn a {
    color: #fff;
    position: relative;
    display: block;
    width: 100%;
    height: 100%;
    border: 1px solid #fff;
    color: #fff;
    text-align: center;
    line-height: 40px;
    border-radius: 4px;
    -webkit-transition: none;
    transition: none;
  }
  .recruit_top .carrier_btn a .arrow {
    position: absolute;
    top: 50%;
    right: 10px;
    width: 12px;
    height: 12px;
    margin-top: -7px;
    border: 1px solid #fff;
    border-radius: 50%;
    background: url("img/common/arrow_white.svg") no-repeat center center;
    -webkit-background-size: 3px auto;
    background-size: 3px auto;
  }
  .recruit_top .carrier_btn a:hover {
    background: none;
    border: 1px solid #fff;
    -webkit-transition: none;
    transition: none;
  }
  .recruit_top .line {
    margin-left: 5.3%;
  }
  .recruit_top .mainimage {
    width: 155%;
    margin-bottom: 50px;
    margin-left: -14%;
  }
  .recruit_top .mainimage img {
    width: 100%;
  }
  .recruit_top .recruit_wrap {
    width: 89.583%;
    margin: 0 auto;
    padding: 0 0 50px;
  }
  .recruit_top .recruit_wrap h3 {
    margin-top: 66px;
    margin-bottom: 14px;
    font-size: 18px;
    font-weight: bold;
    color: #fff;
    text-align: center;
  }
  .recruit_top .recruit_wrap p {
    text-align: center;
  }
  .recruit_top .recruit_wrap .carrier {
    width: 100%;
    height: 200px;
    background: #323232;
    float: left;
  }
  .recruit_top .recruit_wrap .carrier h3 {
    margin-top: 42px;
  }
  .recruit_top .recruit_wrap .newgraduates {
    width: 100%;
    height: 200px;
    background: #21241e;
    float: right;
  }
  .recruit_top .recruit_wrap .newgraduates h3 {
    margin-top: 76px;
  }
  .recruit_top .recruit_contact_wrap {
    width: 89.583%;
    margin: 0 auto;
    padding: 0;
  }
  .recruit_top .recruit_contact_wrap .recruit_contact_txt {
    color: #000;
    padding-bottom: 15px;
    font-size: 13px;
    line-height: 1.6;
  }
  .recruit_top .recruit_contact_wrap .recruit_contact_mail {
    width: 140px;
  }
  .recruit_top .recruit_contact_wrap .recruit_contact_mail img {
    width: 100%;
  }
}

.recruit_privacy {
  max-width: 1120px;
  min-width: 1120px;
  padding: 0 40px;
  margin: 0 auto;
  padding-bottom: 130px;
}

.recruit_privacy .recruit_privacy_wrap {
  width: 980px;
  margin: 0 auto 130px;
}

.recruit_privacy h3 {
  font-size: 31px;
  margin-bottom: 18px;
}

.recruit_privacy .line_cap {
  margin-bottom: 28px;
  width: 30px;
  height: 2px;
  background: #0056a8;
}

.recruit_privacy p {
  font-size: 14px;
  line-height: 1.8;
}

.recruit_privacy p.privacy_txt {
  margin-bottom: 28px;
}

.recruit_privacy p.purpose_txt {
  margin-bottom: 28px;
}

.recruit_privacy dl {
  margin-bottom: 36px;
}

.recruit_privacy dl dt {
  font-size: 21px;
  color: #0056a8;
  margin-bottom: 10px;
}

.recruit_privacy dl dd {
  font-size: 14px;
  line-height: 1.8;
}

.recruit_privacy dl dd span {
  color: #0056a8;
}

.recruit_privacy dl dd ul.disclosure {
  margin-top: 28px;
}

.recruit_privacy dl dd ul.disclosure li {
  margin-bottom: 28px;
  text-indent: 0;
  padding-left: 0;
}

.recruit_privacy dl dd ul.disclosure li p {
  padding-left: 1em;
}

.recruit_privacy dl dd ul.disclosure li ul li {
  text-indent: -1em;
  padding-left: 1em;
  margin-bottom: 0;
}

.recruit_privacy dl dd ul.disclosure li ul li .disc {
  display: inline;
  color: #000;
}

.recruit_privacy dl dd ul li {
  text-indent: -1em;
  padding-left: 1em;
}

.recruit_privacy dl dd ul li span {
  display: block;
  color: #0056a8;
}

.recruit_privacy .btn_wrap {
  letter-spacing: -0.4em;
  text-align: center;
  margin-bottom: 43px;
}

.recruit_privacy .btn_wrap .button {
  width: 240px;
  height: 40px;
  display: inline-block;
}

.recruit_privacy .btn_wrap .button a {
  position: relative;
  display: block;
  width: 100%;
  height: 40px;
  font-size: 12px;
  text-align: center;
  line-height: 40px;
  color: #0056a8;
  border: 1px solid #000;
  border-radius: 4px;
  letter-spacing: 0;
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

.recruit_privacy .btn_wrap .button a .arrow {
  position: absolute;
  top: 50%;
  right: 7px;
  margin-top: -7px;
  width: 12px;
  height: 12px;
  border: 1px solid #0056a8;
  border-radius: 50%;
  background: url("img/common/arrow_blue.svg") no-repeat center center;
  -webkit-background-size: 3px auto;
  background-size: 3px auto;
}

.recruit_privacy .btn_wrap .button a:hover {
  background: #0056a8;
  border: 1px solid #0056a8;
  color: #fff;
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear;
}

.recruit_privacy .btn_wrap .button a:hover .arrow {
  border: 1px solid #fff;
  background: url("img/common/arrow_white.svg") no-repeat center center;
  -webkit-background-size: 3px auto;
  background-size: 3px auto;
}

.recruit_privacy .btn_wrap .button:first-child {
  margin-right: 18px;
}

.recruit_privacy .back_btn {
  text-align: center;
}

.recruit_privacy .back_btn a {
  position: relative;
  font-size: 12px;
  font-weight: bold;
  padding-right: 22px;
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

.recruit_privacy .back_btn a .arrow {
  width: 12px;
  height: 12px;
  border: 1px solid #0056a8;
  position: absolute;
  top: 0;
  right: 0;
  background: url("img/common/arrow_blue.svg") no-repeat center center;
  -webkit-background-size: 3px auto;
  background-size: 3px auto;
  border-radius: 50%;
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear;
}

.recruit_privacy .back_btn:hover {
  opacity: 0.6;
  filter: alpha(opacity=60);
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear;
}

.recruit_privacy .back_btn:hover .arrow {
  background: url("img/common/arrow_white.svg") no-repeat center center;
  background-color: #0056a8;
  -webkit-background-size: 3px auto;
  background-size: 3px auto;
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear;
}

@media screen and (max-width: 768px) {
  .recruit_privacy {
    max-width: 89.583%;
    min-width: 89.583%;
    padding: 0;
    margin: 0 auto;
    padding-bottom: 100px;
    padding-top: 80px;
  }
  .recruit_privacy .recruit_privacy_wrap {
    width: 100%;
    margin: 0 auto 40px;
  }
  .recruit_privacy h3 {
    font-size: 1.25em;
    margin-bottom: 10px;
    line-height: 1.5;
  }
  .recruit_privacy .line_cap {
    margin-bottom: 28px;
    width: 30px;
    height: 2px;
    background: #0056a8;
  }
  .recruit_privacy p {
    font-size: 14px;
    line-height: 1.6;
  }
  .recruit_privacy p.privacy_txt {
    margin-bottom: 28px;
  }
  .recruit_privacy p.purpose_txt {
    margin-bottom: 28px;
  }
  .recruit_privacy dl {
    margin-bottom: 36px;
  }
  .recruit_privacy dl dt {
    font-size: 16px;
    color: #0056a8;
    margin-bottom: 10px;
    line-height: 1.4;
    text-indent: -1.1em;
    padding-left: 1.1em;
  }
  .recruit_privacy dl dd {
    font-size: 14px;
    line-height: 1.8;
  }
  .recruit_privacy dl dd ul.disclosure {
    margin-top: 0;
  }
  .recruit_privacy dl dd ul.disclosure li {
    margin-bottom: 20px;
  }
  .recruit_privacy dl dd ul.disclosure li ul li {
    margin-bottom: 0;
    text-indent: -1.8em;
    padding-left: 1.8em;
  }
  .recruit_privacy dl dd ul.disclosure li ul li .disc {
    display: inline;
    color: #0056a8;
  }
  .recruit_privacy dl dd ul li {
    text-indent: -1em;
    padding-left: 1em;
  }
  .recruit_privacy dl dd ul li span {
    font-size: 14px;
    display: block;
    color: #0056a8;
  }
  .recruit_privacy .btn_wrap {
    letter-spacing: -0.4em;
    text-align: center;
    margin-bottom: 43px;
  }
  .recruit_privacy .btn_wrap .button {
    width: 208px;
    height: 40px;
    display: inline-block;
  }
  .recruit_privacy .btn_wrap .button a {
    position: relative;
    display: block;
    width: 100%;
    height: 40px;
    font-size: 12px;
    text-align: center;
    line-height: 40px;
    color: #0056a8;
    border: 1px solid #000;
    border-radius: 4px;
    letter-spacing: 0;
    -webkit-transition: none;
    transition: none;
  }
  .recruit_privacy .btn_wrap .button a .arrow {
    position: absolute;
    top: 50%;
    right: 7px;
    margin-top: -7px;
    width: 12px;
    height: 12px;
    border: 1px solid #0056a8;
    border-radius: 50%;
    background: url("img/common/arrow_blue.svg") no-repeat center center;
    -webkit-background-size: 3px auto;
    background-size: 3px auto;
  }
  .recruit_privacy .btn_wrap .button a:hover {
    background: none;
    border: 1px solid #000;
    color: #0056a8;
    -webkit-transition: none;
    transition: none;
  }
  .recruit_privacy .btn_wrap .button a:hover .arrow {
    border: 1px solid #0056a8;
    background: url("img/common/arrow_blue.svg") no-repeat center center;
    -webkit-background-size: 3px auto;
    background-size: 3px auto;
  }
  .recruit_privacy .btn_wrap .button:first-child {
    margin-right: 0;
    margin-bottom: 10px;
  }
}

.recruit_message {
  max-width: 1120px;
  min-width: 1120px;
  margin: 0 auto;
}

.recruit_message h2 {
  padding: 0 40px;
}

.recruit_message .line {
  margin-left: 40px;
}

.recruit_message .mainimage {
  position: relative;
  width: 100%;
  margin-bottom: 100px;
}

.recruit_message .mainimage h3 {
  position: absolute;
  font-size: 46px;
  top: 50%;
  left: 158px;
  margin-top: -23px;
}

.recruit_message .mainimage img {
  width: 100%;
}

.recruit_message .message_wrap {
  width: 980px;
  margin: 0 auto;
  padding: 0 40px;
}

.recruit_message .message_wrap .text {
  margin-bottom: 56px;
}

.recruit_message .message_wrap p {
  font-size: 14px;
  line-height: 1.6;
  margin-bottom: 20px;
}

.recruit_message .message_wrap p.catch {
  font-size: 31px;
  line-height: 1.4;
  margin-bottom: 10px;
}

.recruit_message .message_wrap p.name {
  font-size: 18px;
  text-align: right;
  margin-top: 44px;
}

.recruit_message .message_wrap .line {
  margin-left: 0;
}

.recruit_message .message_wrap .carrier_btn {
  width: 240px;
  height: 40px;
  margin: 0 auto;
  padding-bottom: 130px;
}

.recruit_message .message_wrap .carrier_btn a {
  position: relative;
  display: block;
  width: 100%;
  height: 100%;
  font-size: 12px;
  border: 1px solid #000;
  border-radius: 4px;
  text-align: center;
  line-height: 40px;
  color: #0056a8;
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

.recruit_message .message_wrap .carrier_btn a .arrow {
  position: absolute;
  top: 50%;
  right: 10px;
  margin-top: -7px;
  width: 12px;
  height: 12px;
  border: 1px solid #0056a8;
  background: url("img/common/arrow_blue.svg") no-repeat center center;
  -webkit-background-size: 3px auto;
  background-size: 3px auto;
  border-radius: 50%;
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear;
}

.recruit_message .message_wrap .carrier_btn a:hover {
  background: #0056a8;
  color: #fff;
  border: 1px solid #0056a8;
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear;
}

.recruit_message .message_wrap .carrier_btn a:hover .arrow {
  border: 1px solid #fff;
  background: url("img/common/arrow_white.svg") no-repeat center center;
  -webkit-background-size: 3px auto;
  background-size: 3px auto;
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear;
}

@media screen and (max-width: 768px) {
  .recruit_message {
    max-width: 100%;
    min-width: 100%;
    margin: 0 auto;
    overflow: hidden;
    /*    padding-top: 80px;*/
  }
  .recruit_message h2 {
    width: 89.583%;
    margin-left: auto;
    margin-right: auto;
    padding: 0;
    padding-top: 30px;
  }
  .recruit_message .line {
    margin-left: 5.208%;
  }
  .recruit_message .mainimage {
    position: relative;
    width: 100%;
    margin-bottom: 50px;
  }
  .recruit_message .mainimage h3 {
    position: absolute;
    font-size: 1.6em;
    top: 50%;
    left: 5.208%;
    margin-top: -12.5px;
  }
  .recruit_message .mainimage img {
    width: 160%;
    margin-left: -30%;
  }
  .recruit_message .message_wrap {
    width: 89.583%;
    margin: 0 auto;
    padding: 0;
  }
  .recruit_message .message_wrap .text {
    margin-bottom: 50px;
  }
  .recruit_message .message_wrap p {
    font-size: 14px;
    line-height: 1.6;
    margin-bottom: 20px;
  }
  .recruit_message .message_wrap p.catch {
    font-size: 1.2em;
    line-height: 1.4;
    margin-bottom: 10px;
    white-space: nowrap;
  }
  .recruit_message .message_wrap p.name {
    font-size: 12px;
    text-align: right;
    margin-top: 30px;
  }
  .recruit_message .message_wrap .line {
    margin-left: 0;
  }
  .recruit_message .message_wrap .carrier_btn {
    width: 208px;
    height: 40px;
    margin: 0 auto;
    padding-bottom: 130px;
  }
  .recruit_message .message_wrap .carrier_btn a {
    position: relative;
    display: block;
    width: 100%;
    height: 100%;
    font-size: 12px;
    border: 1px solid #000;
    border-radius: 4px;
    text-align: center;
    line-height: 40px;
    color: #0056a8;
    -webkit-transition: none;
    transition: none;
  }
  .recruit_message .message_wrap .carrier_btn a .arrow {
    position: absolute;
    top: 50%;
    right: 10px;
    margin-top: -7px;
    width: 12px;
    height: 12px;
    border: 1px solid #0056a8;
    background: url("img/common/arrow_blue.svg") no-repeat center center;
    -webkit-background-size: 3px auto;
    background-size: 3px auto;
    border-radius: 50%;
    -webkit-transition: none;
    transition: none;
  }
  .recruit_message .message_wrap .carrier_btn a:hover {
    background: none;
    color: #0056a8;
    border: 1px solid #000;
    -webkit-transition: none;
    transition: none;
  }
  .recruit_message .message_wrap .carrier_btn a:hover .arrow {
    border: 1px solid #0056a8;
    background: url("img/common/arrow_blue.svg") no-repeat center center;
    -webkit-background-size: 3px auto;
    background-size: 3px auto;
    -webkit-transition: none;
    transition: none;
  }
}

.recruit_interview {
  max-width: 1120px;
  min-width: 1120px;
  margin: 0 auto;
  padding: 0 40px;
}

.recruit_interview p {
  font-size: 13px;
}

.recruit_interview .interview_wrap {
  width: 980px;
  margin: 0 auto;
}

.recruit_interview .interview_wrap h3 {
  font-size: 31px;
  line-height: 1.3;
  margin-bottom: 10px;
}

.recruit_interview .interview_wrap h3 span {
  display: block;
  font-size: 15px;
}

.recruit_interview .interview_wrap .line {
  margin-top: 20px;
  margin-bottom: 0;
}

.recruit_interview .interview_wrap .question {
  color: #0056a8;
  margin-bottom: 24px;
  font-size: 14px;
}

.recruit_interview .interview_wrap .answer {
  padding-bottom: 22px;
}

.recruit_interview .interview_wrap .answer p {
  line-height: 1.6;
  margin-bottom: 26px;
  font-size: 14px;
}

.recruit_interview .interview_wrap .interview_top_wrap {
  margin-bottom: 36px;
}

.recruit_interview .interview_wrap .interview_top_wrap .interview_txt {
  padding-top: 62px;
  width: 674px;
  float: left;
}

.recruit_interview .interview_wrap .interview_top_wrap .image {
  width: 275px;
  float: right;
}

.recruit_interview .interview_wrap .interview_top_wrap .image img {
  width: 100%;
}

.recruit_interview .interview_wrap .interview_bottom_wrap {
  margin-bottom: 80px;
}

.recruit_interview .interview_wrap .interview_bottom_wrap .last {
  padding-bottom: 0;
}

.recruit_interview .interview_wrap .interview_bottom_wrap p:last-child {
  margin-bottom: 0;
}

.recruit_interview .interview_wrap .interview_bottom_wrap .interview_txt {
  width: 610px;
  float: right;
}

.recruit_interview .interview_wrap .interview_bottom_wrap .image {
  width: 327px;
  float: left;
}

.recruit_interview .interview_wrap .interview_bottom_wrap .image img {
  width: 100%;
}

.recruit_interview .interview_wrap .interview_list {
  width: 100%;
  margin-bottom: 68px;
}

.recruit_interview .interview_wrap .interview_list li {
  width: 33.333%;
  height: 130px;
  float: left;
  background: #21241e;
}

.recruit_interview .interview_wrap .interview_list li:nth-child(odd) {
  background: #323232;
}

.recruit_interview .interview_wrap .interview_list li .filter {
  position: absolute;
  top: 0;
  right: 0;
  width: 112.22px;
  height: 100%;
  background: rgba(0, 86, 168, 0);
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear;
}

.recruit_interview .interview_wrap .interview_list li a {
  display: block;
  position: relative;
  width: 100%;
  height: 100%;
  color: #fff;
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear;
}

.recruit_interview .interview_wrap .interview_list li a .list_item {
  position: absolute;
  top: 50%;
  left: 22px;
  margin-top: -33.5px;
}

.recruit_interview .interview_wrap .interview_list li a .list_item h3 {
  font-size: 24px;
  line-height: 1.3;
  margin-bottom: 10px;
}

.recruit_interview .interview_wrap .interview_list li a .list_item h3 span {
  display: block;
  font-size: 12px;
}

.recruit_interview .interview_wrap .interview_list li a .list_item p {
  font-size: 11px;
}

.recruit_interview .interview_wrap .interview_list li a .img {
  position: absolute;
  top: 0;
  right: 0;
  height: 100%;
}

.recruit_interview .interview_wrap .interview_list li a .img img {
  height: 100%;
}

.recruit_interview .interview_wrap .interview_list li a .arrow {
  position: absolute;
  top: 8px;
  right: 6px;
  width: 30px;
  height: 30px;
  border-radius: 50%;
  background: url("img/common/arrow_white.svg") no-repeat 12px center;
  background-color: #000;
  -webkit-background-size: 8px auto;
  background-size: 8px auto;
}

.recruit_interview .interview_wrap .interview_list li a:hover {
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear;
  background: #0056a8;
}

.recruit_interview .interview_wrap .interview_list li a:hover .filter {
  position: absolute;
  top: 0;
  right: 0;
  width: 112.22px;
  height: 100%;
  background: rgba(0, 86, 168, 0.4);
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear;
}

.recruit_interview .interview_wrap .entry_btn {
  width: 240px;
  height: 40px;
  margin: 0 auto;
  padding-bottom: 130px;
}

.recruit_interview .interview_wrap .entry_btn a {
  position: relative;
  display: block;
  width: 100%;
  height: 100%;
  border: 1px solid #000;
  font-size: 12px;
  line-height: 40px;
  text-align: center;
  border-radius: 4px;
  color: #0056a8;
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

.recruit_interview .interview_wrap .entry_btn a .arrow {
  position: absolute;
  top: 50%;
  right: 10px;
  width: 12px;
  height: 12px;
  margin-top: -7px;
  border: 1px solid #0056a8;
  border-radius: 50%;
  background: url("img/common/arrow_blue.svg") no-repeat center center;
  -webkit-background-size: 3px auto;
  background-size: 3px auto;
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear;
}

.recruit_interview .interview_wrap .entry_btn a:hover {
  background: #0056a8;
  border: 1px solid #0056a8;
  color: #fff;
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear;
}

.recruit_interview .interview_wrap .entry_btn a:hover .arrow {
  border: 1px solid #fff;
  background: url("img/common/arrow_white.svg") no-repeat center center;
  -webkit-background-size: 3px auto;
  background-size: 3px auto;
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear;
}

@media screen and (max-width: 768px) {
  .recruit_interview {
    max-width: 89.583%;
    min-width: 89.583%;
    margin: 0 auto;
    padding: 0;
    /*    padding-top: 80px;*/
  }
  .recruit_interview h2 {
    padding-top: 30px;
  }
  .recruit_interview p {
    font-size: 12px;
  }
  .recruit_interview .interview_wrap {
    width: 100%;
    margin: 0 auto;
  }
  .recruit_interview .interview_wrap h3 {
    font-size: 1.7em;
    line-height: 1.3;
    margin-bottom: 8px;
  }
  .recruit_interview .interview_wrap h3 span {
    display: block;
    font-size: 14px;
  }
  .recruit_interview .interview_wrap .line {
    margin-top: 20px;
    margin-bottom: 0;
  }
  .recruit_interview .interview_wrap .question {
    color: #0056a8;
    margin-bottom: 14px;
    font-size: 14px;
  }
  .recruit_interview .interview_wrap .answer {
    padding-bottom: 22px;
  }
  .recruit_interview .interview_wrap .answer p {
    line-height: 1.6;
    margin-bottom: 10px;
    font-size: 14px;
  }
  .recruit_interview .interview_wrap .interview_top_wrap {
    margin-bottom: 36px;
  }
  .recruit_interview .interview_wrap .interview_top_wrap .interview_txt {
    padding-top: 32px;
    width: 100%;
    float: none;
  }
  .recruit_interview .interview_wrap .interview_top_wrap .image {
    width: 65.406%;
    float: none;
    margin: 0 auto;
  }
  .recruit_interview .interview_wrap .interview_top_wrap .image img {
    width: 100%;
  }
  .recruit_interview .interview_wrap .interview_bottom_wrap {
    margin-bottom: 36px;
  }
  .recruit_interview .interview_wrap .interview_bottom_wrap .last {
    padding-bottom: 26px;
  }
  .recruit_interview .interview_wrap .interview_bottom_wrap .interview_txt {
    width: 100%;
    float: none;
  }
  .recruit_interview .interview_wrap .interview_bottom_wrap .image {
    width: 65.406%;
    float: none;
    margin: 0 auto;
  }
  .recruit_interview .interview_wrap .interview_bottom_wrap .image img {
    width: 100%;
  }
  .recruit_interview .interview_wrap .interview_list {
    width: 100%;
    margin-bottom: 68px;
  }
  .recruit_interview .interview_wrap .interview_list li {
    width: 100%;
    height: 130px;
    float: none;
    background: #21241e;
  }
  .recruit_interview .interview_wrap .interview_list li:nth-child(odd) {
    background: #323232;
  }
  .recruit_interview .interview_wrap .interview_list li a {
    display: block;
    position: relative;
    width: 100%;
    height: 100%;
    color: #fff;
  }
  .recruit_interview .interview_wrap .interview_list li a .list_item {
    position: absolute;
    top: 50%;
    left: 4%;
    margin-top: -33.5px;
  }
  .recruit_interview .interview_wrap .interview_list li a .list_item h3 {
    font-size: 1.3em;
    line-height: 1.3;
    margin-bottom: 10px;
  }
  .recruit_interview .interview_wrap .interview_list li a .list_item h3 span {
    display: block;
    font-size: 12px;
  }
  .recruit_interview .interview_wrap .interview_list li a .list_item p {
    font-size: 10px;
  }
  .recruit_interview .interview_wrap .interview_list li a .img {
    position: absolute;
    top: 0;
    right: 0;
    height: 100%;
  }
  .recruit_interview .interview_wrap .interview_list li a .img img {
    height: 100%;
  }
  .recruit_interview .interview_wrap .interview_list li a .arrow {
    position: absolute;
    top: 8px;
    right: 6px;
    width: 30px;
    height: 30px;
    border-radius: 50%;
    background: url("img/common/arrow_white.svg") no-repeat 12px center;
    background-color: #000;
    -webkit-background-size: 8px auto;
    background-size: 8px auto;
  }
  .recruit_interview .interview_wrap .interview_list li a:hover {
    background: none;
  }
  .recruit_interview .interview_wrap .interview_list li a:hover .filter {
    display: none;
    position: absolute;
    top: 0;
    right: 0;
    width: 112.22px;
    height: 100%;
    background: rgba(0, 86, 168, 0.4);
  }
  .recruit_interview .interview_wrap .entry_btn {
    width: 208px;
    height: 40px;
    margin: 0 auto;
    padding-bottom: 130px;
  }
  .recruit_interview .interview_wrap .entry_btn a {
    position: relative;
    display: block;
    width: 100%;
    height: 100%;
    border: 1px solid #000;
    font-size: 12px;
    line-height: 40px;
    text-align: center;
    border-radius: 4px;
    color: #0056a8;
    -webkit-transition: none;
    transition: none;
  }
  .recruit_interview .interview_wrap .entry_btn a .arrow {
    position: absolute;
    top: 50%;
    right: 10px;
    width: 12px;
    height: 12px;
    margin-top: -7px;
    border: 1px solid #0056a8;
    border-radius: 50%;
    background: url("img/common/arrow_blue.svg") no-repeat center center;
    -webkit-background-size: 3px auto;
    background-size: 3px auto;
    -webkit-transition: none;
    transition: none;
  }
  .recruit_interview .interview_wrap .entry_btn a:hover {
    background: none;
    border: 1px solid #000;
    color: #0056a8;
    -webkit-transition: none;
    transition: none;
  }
  .recruit_interview .interview_wrap .entry_btn a:hover .arrow {
    border: 1px solid #0056a8;
    background: url("img/common/arrow_blue.svg") no-repeat center center;
    -webkit-background-size: 3px auto;
    background-size: 3px auto;
    -webkit-transition: none;
    transition: none;
  }
}

.carrier_top {
  max-width: 1120px;
  min-width: 1120px;
  margin: 0 auto;
  padding-bottom: 130px;
}

.carrier_top .mainimage {
  position: relative;
  width: 100%;
  margin-bottom: 50px;
}

.carrier_top .mainimage img {
  width: 100%;
}

.carrier_top .mainimage h3 {
  position: absolute;
  top: 50%;
  left: 155px;
  margin-top: -23px;
  font-size: 46px;
  color: #fff;
}

.carrier_top .carrier_nav {
  text-align: center;
  margin-bottom: 80px;
}

.carrier_top .carrier_nav li {
  position: relative;
  font-size: 12px;
  display: inline-block;
  padding-right: 20px;
  margin-left: 25px;
  -webkit-transition: opacity 0.2s linear;
  transition: opacity 0.2s linear;
}

.carrier_top .carrier_nav li .arrow {
  position: absolute;
  top: -2px;
  right: 0;
  width: 14px;
  height: 14px;
  border-radius: 50%;
  background: url("img/common/arrow_open_white.svg") no-repeat center center;
  -webkit-background-size: 6px auto;
  background-size: 6px auto;
  background-color: #0056a8;
}

.carrier_top .carrier_nav li:first-child {
  margin-left: 0;
}

.carrier_top .carrier_nav li:hover {
  opacity: 0.6;
  filter: alpha(opacity=60);
  -webkit-transition: opacity 0.2s linear;
  transition: opacity 0.2s linear;
}

.carrier_top .carrier_wrap {
  width: 980px;
  margin: 0 auto;
  padding: 0 40px;
}

.carrier_top .carrier_wrap ul {
  margin-bottom: 80px;
}

.carrier_top .carrier_wrap h4 {
  font-size: 31px;
  margin-bottom: 18px;
}

.carrier_top .carrier_wrap .line {
  margin-bottom: 28px;
}

.carrier_top .carrier_wrap #occupation ul li {
  width: 33.333%;
  height: 130px;
  float: left;
  background: #21241e;
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear;
}

.carrier_top .carrier_wrap #occupation ul li:nth-child(odd) {
  background: #323232;
  color: #fff;
}

.carrier_top .carrier_wrap #occupation ul li a {
  position: relative;
  display: block;
  width: 100%;
  height: 100%;
}

.carrier_top .carrier_wrap #occupation ul li a p {
  color: #fff;
  font-size: 20px;
  text-align: center;
  line-height: 130px;
}

.carrier_top .carrier_wrap #occupation ul li a .arrow {
  position: absolute;
  top: 14px;
  right: 12px;
  width: 28px;
  height: 28px;
  border-radius: 50%;
  background: url("img/common/arrow_white.svg") no-repeat 12px center;
  background-color: #000;
  -webkit-background-size: 7px auto;
  background-size: 7px auto;
}

.carrier_top .carrier_wrap #occupation ul li:hover {
  background: #0056a8;
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear;
}

.carrier_top .carrier_wrap #interview p {
  line-height: 1.6;
  font-size: 14px;
}

.carrier_top .carrier_wrap #interview ul {
  margin-top: 36px;
}

.carrier_top .carrier_wrap #interview ul li {
  margin-top: 8px;
}

.carrier_top .carrier_wrap #interview ul li:first-child {
  margin-top: 0;
}

.carrier_top .carrier_wrap #interview ul li a {
  width: 100%;
  height: 100%;
}

.carrier_top .carrier_wrap #interview ul li a .txt {
  width: 654px;
  height: 170px;
  display: table;
  float: left;
  background: #21241e;
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear;
}

.carrier_top .carrier_wrap #interview ul li a .txt .txt_inner {
  position: relative;
  width: 100%;
  height: 100%;
  display: table-cell;
  vertical-align: middle;
  color: #fff;
  padding-left: 50px;
}

.carrier_top .carrier_wrap #interview ul li a .txt .txt_inner p {
  font-size: 13px;
}

.carrier_top .carrier_wrap #interview ul li a .txt .txt_inner p.name {
  font-size: 28px;
  line-height: 1;
  margin-top: 6px;
  margin-bottom: 18px;
}

.carrier_top .carrier_wrap #interview ul li a .txt .txt_inner .arrow {
  position: absolute;
  top: 14px;
  right: 12px;
  width: 28px;
  height: 28px;
  border-radius: 50%;
  background: url("img/common/arrow_white.svg") no-repeat 12px center;
  background-color: #000;
  -webkit-background-size: 7px auto;
  background-size: 7px auto;
}

.carrier_top .carrier_wrap #interview ul li a .img {
  float: right;
  width: 326px;
  height: 170px;
  background: #0056a8;
}

.carrier_top .carrier_wrap #interview ul li a .img img {
  height: 100%;
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear;
}

.carrier_top .carrier_wrap #interview ul li a:hover .txt {
  background: #0056a8;
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear;
}

.carrier_top .carrier_wrap #interview ul li a:hover .img img {
  opacity: 0.6;
  filter: alpha(opacity=60);
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear;
}

.carrier_top .carrier_wrap #environment ul {
  margin-bottom: 90px;
}

.carrier_top .carrier_wrap #environment ul li {
  float: left;
  margin-bottom: 8px;
  margin-left: 8px;
}

.carrier_top .carrier_wrap #environment ul li:first-child {
  margin-left: 0;
}

.carrier_top .carrier_wrap #environment ul li:nth-child(4) {
  margin-left: 0;
}

.carrier_top .carrier_wrap #message .message_box {
  display: table;
  float: left;
  width: 654px;
  height: 220px;
  background: #21241e;
}

.carrier_top .carrier_wrap #message .message_box .txt {
  display: table-cell;
  vertical-align: middle;
  width: 100%;
  height: 100%;
  color: #fff;
  padding-left: 162px;
}

.carrier_top .carrier_wrap #message .message_box .txt .message_txt {
  font-size: 24px;
  line-height: 1.4;
  margin-bottom: 22px;
}

.carrier_top .carrier_wrap #message .message_box .txt .message_btn {
  width: 294px;
  height: 40px;
}

.carrier_top .carrier_wrap #message .message_box .txt .message_btn a {
  position: relative;
  display: block;
  width: 100%;
  height: 100%;
  color: #fff;
  font-size: 12px;
  border: 1px solid #fff;
  border-radius: 4px;
  line-height: 40px;
  text-align: center;
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear;
}

.carrier_top .carrier_wrap #message .message_box .txt .message_btn a .arrow {
  position: absolute;
  top: 50%;
  right: 10px;
  margin-top: -7px;
  width: 12px;
  height: 12px;
  border: 1px solid #fff;
  border-radius: 50%;
  background: url("img/common/arrow_white.svg") no-repeat center center;
  -webkit-background-size: 3px auto;
  background-size: 3px auto;
}

.carrier_top .carrier_wrap #message .message_box .txt .message_btn a:hover {
  background: #0056a8;
  border: 1px solid #0056a8;
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear;
}

.carrier_top .carrier_wrap #message .img {
  float: right;
  width: 326px;
  height: 220px;
}

.carrier_top .carrier_wrap #message .img img {
  height: 100%;
}

@media screen and (max-width: 768px) {
  .carrier_top {
    max-width: 100%;
    min-width: 100%;
    margin: 0 auto;
    padding-bottom: 130px;
    /*    padding-top: 80px;*/
    overflow: hidden;
  }
  .carrier_top h2 {
    width: 89.583%;
    padding-top: 30px;
    margin-left: auto;
    margin-right: auto;
  }
  .carrier_top .line {
    margin-left: 5.208%;
  }
  .carrier_top .mainimage {
    position: relative;
    width: 155%;
    margin-bottom: 0;
    margin-left: -29%;
  }
  .carrier_top .mainimage img {
    width: 100%;
  }
  .carrier_top .mainimage h3 {
    position: absolute;
    top: 50%;
    left: 21.208%;
    margin-top: -12.5px;
    font-size: 1.6em;
    color: #fff;
  }
  .carrier_top .carrier_nav {
    text-align: center;
    overflow: hidden;
    margin-bottom: 50px;
  }
  .carrier_top .carrier_nav li {
    width: 50%;
    height: 50px;
    float: left;
    position: relative;
    font-size: 12px;
    display: inline-block;
    padding-right: 0;
    margin-left: 0;
    -webkit-transition: none;
    transition: none;
    border-bottom: 1px solid #b4b4b4;
    border-left: 1px solid #b4b4b4;
    line-height: 50px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    font-weight: bold;
  }
  .carrier_top .carrier_nav li:first-child {
    border-left: none;
  }
  .carrier_top .carrier_nav li.nav_environ {
    border-left: none;
  }
  .carrier_top .carrier_nav li a {
    display: block;
    width: 100%;
    height: 100%;
  }
  .carrier_top .carrier_nav li a div {
    display: inline-block;
    position: relative;
    padding-right: 20px;
  }
  .carrier_top .carrier_nav li .arrow {
    position: absolute;
    top: 50%;
    right: 0;
    width: 14px;
    height: 14px;
    margin-top: -7px;
    border-radius: 50%;
    background: url("img/common/arrow_open_white.svg") no-repeat center center;
    -webkit-background-size: 6px auto;
    background-size: 6px auto;
    background-color: #0056a8;
  }
  .carrier_top .carrier_nav li:first-child {
    margin-left: 0;
  }
  .carrier_top .carrier_nav li:hover {
    opacity: 1;
    filter: alpha(opacity=100);
    -webkit-transition: none;
    transition: none;
  }
  .carrier_top .carrier_wrap {
    width: 89.583%;
    margin: 0 auto;
    padding: 0;
  }
  .carrier_top .carrier_wrap ul {
    margin-bottom: 0;
  }
  .carrier_top .carrier_wrap h4 {
    font-size: 1.28em;
    margin-bottom: 18px;
    white-space: nowrap;
  }
  .carrier_top .carrier_wrap .line {
    margin-bottom: 28px;
    margin-left: 0;
  }
  .carrier_top .carrier_wrap #occupation ul {
    margin-bottom: 70px;
  }
  .carrier_top .carrier_wrap #occupation ul li {
    width: 100%;
    height: 92px;
    float: none;
    background: #21241e;
    -webkit-transition: none;
    transition: none;
  }
  .carrier_top .carrier_wrap #occupation ul li:nth-child(odd) {
    background: #323232;
    color: #fff;
  }
  .carrier_top .carrier_wrap #occupation ul li a {
    position: relative;
    display: block;
    width: 100%;
    height: 100%;
  }
  .carrier_top .carrier_wrap #occupation ul li a p {
    color: #fff;
    font-size: 20px;
    text-align: left;
    line-height: 92px;
    padding-left: 5.813%;
  }
  .carrier_top .carrier_wrap #occupation ul li a .arrow {
    position: absolute;
    top: 14px;
    right: 12px;
    width: 24px;
    height: 24px;
    border-radius: 50%;
    background: url("img/common/arrow_white.svg") no-repeat 10px center;
    background-color: #000;
    -webkit-background-size: 6px auto;
    background-size: 6px auto;
  }
  .carrier_top .carrier_wrap #occupation ul li:hover {
    background: #21241e;
    -webkit-transition: none;
    transition: none;
  }
  .carrier_top .carrier_wrap #occupation ul li:hover::nth-child(odd) {
    background: #323232;
  }
  .carrier_top .carrier_wrap #interview p {
    line-height: 1.6;
    font-size: 14px;
  }
  .carrier_top .carrier_wrap #interview ul {
    margin-top: 36px;
    margin-bottom: 30px;
  }
  .carrier_top .carrier_wrap #interview ul li {
    margin-top: 8px;
  }
  .carrier_top .carrier_wrap #interview ul li:first-child {
    margin-top: 0;
  }
  .carrier_top .carrier_wrap #interview ul li a {
    display: block;
    width: 100%;
    height: 100%;
  }
  .carrier_top .carrier_wrap #interview ul li a .txt {
    width: 100%;
    height: 100px;
    display: table;
    float: left;
    background: #21241e;
    -webkit-transition: none;
    transition: none;
  }
  .carrier_top .carrier_wrap #interview ul li a .txt .txt_inner {
    width: 100%;
    height: 100%;
    display: table-cell;
    vertical-align: middle;
    color: #fff;
    padding-left: 5.523%;
  }
  .carrier_top .carrier_wrap #interview ul li a .txt .txt_inner p {
    font-size: 12px;
  }
  .carrier_top .carrier_wrap #interview ul li a .txt .txt_inner p.name {
    font-size: 1.4em;
    line-height: 1;
    margin-top: 2px;
    margin-bottom: 10px;
  }
  .carrier_top .carrier_wrap #interview ul li a .img {
    float: none;
    width: 100%;
    height: auto;
    background: #0056a8;
  }
  .carrier_top .carrier_wrap #interview ul li a .img img {
    width: 100%;
    height: auto;
    -webkit-transition: none;
    transition: none;
  }
  .carrier_top .carrier_wrap #interview ul li a:hover .txt {
    background: #21241e;
    -webkit-transition: none;
    transition: none;
  }
  .carrier_top .carrier_wrap #interview ul li a:hover .img img {
    opacity: 1;
    filter: alpha(opacity=100);
    -webkit-transition: none;
    transition: none;
  }
  .carrier_top .carrier_wrap #environment ul {
    margin-bottom: 50px;
  }
  .carrier_top .carrier_wrap #environment ul li {
    width: 49.127%;
    float: left;
    margin-bottom: 8px;
    margin-left: 0;
  }
  .carrier_top .carrier_wrap #environment ul li:first-child {
    margin-left: 0;
  }
  .carrier_top .carrier_wrap #environment ul li:nth-child(4) {
    margin-left: 0;
  }
  .carrier_top .carrier_wrap #environment ul li:nth-child(2),
  .carrier_top .carrier_wrap #environment ul li:nth-child(4),
  .carrier_top .carrier_wrap #environment ul li:nth-child(6) {
    float: right;
  }
  .carrier_top .carrier_wrap #environment ul li img {
    width: 100%;
  }
  .carrier_top .carrier_wrap #message .message_box {
    display: table;
    float: left;
    width: 100%;
    height: 220px;
    background: #21241e;
  }
  .carrier_top .carrier_wrap #message .message_box .txt {
    display: table-cell;
    vertical-align: middle;
    width: 100%;
    height: 100%;
    color: #fff;
    padding-left: 3.488%;
  }
  .carrier_top .carrier_wrap #message .message_box .txt .message_txt {
    font-size: 1.1em;
    line-height: 1.4;
    margin-bottom: 22px;
  }
  .carrier_top .carrier_wrap #message .message_box .txt .message_btn {
    width: 93.895%;
    height: 40px;
  }
  .carrier_top .carrier_wrap #message .message_box .txt .message_btn a {
    position: relative;
    display: block;
    width: 100%;
    height: 100%;
    color: #fff;
    font-size: 10px;
    border: 1px solid #fff;
    border-radius: 4px;
    line-height: 40px;
    text-align: center;
    -webkit-transition: all 0.2s linear;
    transition: all 0.2s linear;
  }
  .carrier_top .carrier_wrap #message .message_box .txt .message_btn a .arrow {
    position: absolute;
    top: 50%;
    right: 10px;
    margin-top: -7px;
    width: 12px;
    height: 12px;
    border: 1px solid #fff;
    border-radius: 50%;
    background: url("img/common/arrow_white.svg") no-repeat center center;
    -webkit-background-size: 3px auto;
    background-size: 3px auto;
  }
  .carrier_top .carrier_wrap #message .message_box .txt .message_btn a:hover {
    background: none;
    border: 1px solid #fff;
    -webkit-transition: none;
    transition: none;
  }
  .carrier_top .carrier_wrap #message .img {
    float: right;
    width: 100%;
    height: auto;
  }
  .carrier_top .carrier_wrap #message .img img {
    width: 100%;
    height: auto;
  }
}

.recruit_job {
  max-width: 1120px;
  min-width: 1120px;
  margin: 0 auto;
}

.recruit_job h2 {
  padding-left: 40px;
}

.recruit_job .line {
  margin-left: 40px;
}

.recruit_job .mainimage {
  position: relative;
  margin-bottom: 24px;
}

.recruit_job .mainimage h3 {
  position: absolute;
  top: 50%;
  left: 155px;
  font-size: 46px;
  color: #fff;
  margin-top: -32px;
}

.recruit_job .mainimage h3 span {
  display: block;
  font-size: 15px;
  margin-bottom: 15px;
}

.recruit_job .job_wrap {
  width: 980px;
  margin: 0 auto;
}

.recruit_job .job_wrap .txt p {
  font-size: 21px;
  line-height: 1.4;
}

.recruit_job .job_wrap .txt {
  margin-bottom: 94px;
}

.recruit_job .job_wrap h4 {
  font-size: 31px;
  margin-bottom: 20px;
}

.recruit_job .job_wrap .line {
  margin-bottom: 44px;
  margin-left: 0;
}

.recruit_job .job_wrap table {
  width: 746px;
  margin: 0 auto;
  border-collapse: separate;
  border-spacing: 2px;
}

.recruit_job .job_wrap table.introduction {
  margin-bottom: 85px;
}

.recruit_job .job_wrap table.guideline {
  margin-bottom: 70px;
}

.recruit_job .job_wrap table th {
  width: 246px;
  text-align: left;
  background: #e6e6e6;
  font-size: 15px;
  vertical-align: middle;
  padding-left: 28px;
}

.recruit_job .job_wrap table td {
  background: #f2f2f2;
  font-size: 14px;
  line-height: 1.6;
  padding: 24px 28px;
}

.recruit_job .job_wrap .entry_btn {
  width: 240px;
  height: 40px;
  margin: 0 auto 42px;
}

.recruit_job .job_wrap .entry_btn a {
  position: relative;
  display: block;
  width: 100%;
  height: 100%;
  font-size: 12px;
  text-align: center;
  border: 1px solid #000;
  border-radius: 4px;
  line-height: 40px;
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear;
  color: #0056a8;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

.recruit_job .job_wrap .entry_btn a .arrow {
  position: absolute;
  top: 50%;
  right: 10px;
  margin-top: -7px;
  width: 12px;
  height: 12px;
  border: 1px solid #0056a8;
  border-radius: 50%;
  background: url("img/common/arrow_blue.svg") no-repeat center center;
  -webkit-background-size: 3px auto;
  background-size: 3px auto;
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear;
}

.recruit_job .job_wrap .entry_btn a:hover {
  background: #0056a8;
  color: #fff;
  border: 1px solid #0056a8;
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear;
}

.recruit_job .job_wrap .entry_btn a:hover .arrow {
  border: 1px solid #fff;
  background: url("img/common/arrow_white.svg") no-repeat center center;
  -webkit-background-size: 3px auto;
  background-size: 3px auto;
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear;
}

.recruit_job .job_wrap .recruit_contact_wrap {
  margin: 0 auto;
  padding: 0 40px 86px;
}

.recruit_job .job_wrap .recruit_contact_wrap .recruit_contact_txt {
  color: #000;
  padding-bottom: 7px;
  font-size: 13px;
  text-align: center;
}

.recruit_job .job_wrap .recruit_contact_wrap .recruit_contact_mail {
  text-align: center;
  width: 140px;
  margin: 0 auto;
}

.recruit_job .job_wrap .recruit_contact_wrap .recruit_contact_mail img {
  width: 100%;
}

.recruit_job .job_wrap .access_address_wrap {
  width: 746px;
  margin: 0 auto 88px;
}

.recruit_job .job_wrap .access_address_wrap h5 {
  font-size: 21px;
  color: #0056a8;
  margin-bottom: 20px;
}

.recruit_job .job_wrap .access_address_wrap .access_address {
  font-size: 14px;
  margin-bottom: 20px;
}

.recruit_job .job_wrap .access_address_wrap .access_map {
  width: 240px;
  height: 40px;
}

.recruit_job .job_wrap .access_address_wrap .access_map a {
  position: relative;
  display: block;
  width: 100%;
  height: 100%;
  border: 1px solid #000;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  font-size: 12px;
  text-align: center;
  line-height: 40px;
  border-radius: 4px;
  -webkit-transition: all 0.3s linear;
  transition: all 0.3s linear;
  color: #0056a8;
}

.recruit_job .job_wrap .entry_info a .arrow {
  position: absolute;
  right: 7px;
  top: 50%;
  width: 14px;
  height: 14px;
  border: 1px solid #0056a8;
  border-radius: 50%;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  margin-top: -7px;
  background: url("img/common/arrow_blue.svg") no-repeat center center;
  -webkit-background-size: 3px 3px;
  background-size: 3px;
  -webkit-transition: all 0.3s linear;
  transition: all 0.3s linear;
}

.recruit_job .job_wrap .access_address_wrap .access_map a:hover {
  border: 1px solid #0056a8;
  background: #0056a8;
  color: #fff;
}

.recruit_job .job_wrap .access_address_wrap .access_map a:hover .arrow {
  border: 1px solid #fff;
  background: url("img/common/arrow_white.svg") no-repeat center center;
  -webkit-background-size: 3px 3px;
  background-size: 3px;
}

.recruit_job .job_wrap .list {
  width: 100%;
  padding-bottom: 130px;
}

.recruit_job .job_wrap .list li {
  float: left;
  width: 33.333%;
  height: 130px;
  background: #323232;
}

.recruit_job .job_wrap .list li a {
  position: relative;
  display: block;
  width: 100%;
  height: 100%;
  color: #fff;
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear;
}

.recruit_job .job_wrap .list li a p {
  padding-left: 36px;
  font-size: 20px;
  line-height: 130px;
}

.recruit_job .job_wrap .list li a .arrow {
  position: absolute;
  top: 14px;
  right: 12px;
  width: 28px;
  height: 28px;
  background: url("img/common/arrow_white.svg") no-repeat center center;
  -webkit-background-size: 6px auto;
  background-size: 6px auto;
  background-color: #000;
  border-radius: 50%;
}

.recruit_job .job_wrap .list li a:hover {
  background: #0056a8;
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear;
}

.recruit_job .job_wrap .list li:nth-child(even) {
  background: #21241e;
}

@media screen and (max-width: 768px) {
  .recruit_job {
    max-width: 100%;
    min-width: 100%;
    margin: 0 auto;
    overflow: hidden;
    padding-top: 80px;
  }
  .recruit_job h2 {
    width: 89.583%;
    margin-left: auto;
    margin-right: auto;
    padding-left: 0;
  }
  .recruit_job .line {
    margin-left: 5.208%;
  }
  .recruit_job .mainimage {
    width: 160%;
    position: relative;
    margin-bottom: 24px;
  }
  .recruit_job .mainimage h3 {
    position: absolute;
    top: 50%;
    left: 5.208%;
    font-size: 1.6em;
    color: #fff;
    margin-top: -32px;
  }
  .recruit_job .mainimage h3 span {
    display: block;
    font-size: 15px;
    margin-bottom: 15px;
  }
  .recruit_job .mainimage img {
    width: 100%;
    margin-left: -20%;
  }
  .recruit_job .job_wrap {
    width: 89.583%;
    margin: 0 auto;
  }
  .recruit_job .job_wrap p {
    font-size: 0.9em;
    line-height: 1.4;
  }
  .recruit_job .job_wrap p.txt {
    margin-bottom: 44px;
  }
  .recruit_job .job_wrap h4 {
    font-size: 1.7em;
    margin-bottom: 20px;
  }
  .recruit_job .job_wrap .line {
    margin-bottom: 30px;
    margin-left: 0;
  }
  .recruit_job .job_wrap table {
    width: 100%;
    margin: 0 auto;
    border-collapse: separate;
    border-spacing: 2px;
  }
  .recruit_job .job_wrap table.introduction {
    margin-bottom: 85px;
  }
  .recruit_job .job_wrap table.guideline {
    margin-bottom: 30px;
  }
  .recruit_job .job_wrap table th {
    display: list-item;
    width: 100%;
    text-align: left;
    background: #e6e6e6;
    font-size: 15px;
    vertical-align: middle;
    padding-left: 28px;
    list-style: none;
    border-bottom: 2px solid #fff;
    padding: 16px 5.232%;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
  }
  .recruit_job .job_wrap table td {
    display: list-item;
    background: #f2f2f2;
    font-size: 14px;
    line-height: 1.6;
    padding: 24px 5.232%;
    list-style: none;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
  }
  .recruit_job .job_wrap .entry_btn {
    width: 208px;
    height: 40px;
    margin: 0 auto 42px;
  }
  .recruit_job .job_wrap .entry_btn a {
    position: relative;
    display: block;
    width: 100%;
    height: 100%;
    font-size: 12px;
    text-align: center;
    border: 1px solid #000;
    border-radius: 4px;
    line-height: 40px;
    -webkit-transition: none;
    transition: none;
    color: #0056a8;
  }
  .recruit_job .job_wrap .entry_btn a .arrow {
    position: absolute;
    top: 50%;
    right: 10px;
    margin-top: -7px;
    width: 12px;
    height: 12px;
    border: 1px solid #0056a8;
    border-radius: 50%;
    background: url("img/common/arrow_blue.svg") no-repeat center center;
    -webkit-background-size: 3px auto;
    background-size: 3px auto;
    -webkit-transition: none;
    transition: none;
  }
  .recruit_job .job_wrap .entry_btn a:hover {
    background: none;
    color: #0056a8;
    border: 1px solid #000;
    -webkit-transition: none;
    transition: none;
  }
  .recruit_job .job_wrap .entry_btn a:hover .arrow {
    border: 1px solid #0056a8;
    background: url("img/common/arrow_blue.svg") no-repeat center center;
    -webkit-background-size: 3px auto;
    background-size: 3px auto;
    -webkit-transition: none;
    transition: none;
  }
  .recruit_job .job_wrap .recruit_contact_wrap {
    margin: 0 auto;
    padding: 0 0 86px;
  }
  .recruit_job .job_wrap .recruit_contact_wrap .recruit_contact_txt {
    color: #000;
    padding-bottom: 10px;
    font-size: 13px;
    text-align: center;
  }
  .recruit_job .job_wrap .recruit_contact_wrap .recruit_contact_mail {
    text-align: center;
    width: 140px;
    margin: 0 auto;
  }
  .recruit_job .job_wrap .recruit_contact_wrap .recruit_contact_mail img {
    width: 100%;
  }
  .recruit_job .job_wrap .access_address_wrap {
    width: 100%;
    margin: 0 auto 70px;
  }
  .recruit_job .job_wrap .access_address_wrap h5 {
    font-size: 21px;
    color: #0056a8;
    margin-bottom: 15px;
  }
  .recruit_job .job_wrap .access_address_wrap .access_address {
    font-size: 13px;
    margin-bottom: 30px;
    line-height: 1.6;
  }
  .recruit_job .job_wrap .access_address_wrap .access_map {
    width: 208px;
    height: 40px;
    margin: 0 auto;
  }
  .recruit_job .job_wrap .access_address_wrap .access_map a {
    position: relative;
    display: block;
    width: 100%;
    height: 100%;
    color: #0056a8;
    border: 1px solid #000;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    font-size: 12px;
    text-align: center;
    line-height: 40px;
    border-radius: 4px;
    -webkit-transition: none;
    transition: none;
  }
  .recruit_job .job_wrap .access_address_wrap .access_map a .arrow {
    position: absolute;
    right: 7px;
    top: 50%;
    width: 14px;
    height: 14px;
    border: 1px solid #0056a8;
    border-radius: 50%;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    margin-top: -7px;
    background: url("img/common/arrow_blue.svg") no-repeat center center;
    -webkit-background-size: 3px 3px;
    background-size: 3px;
    -webkit-transition: none;
    transition: none;
  }
  .recruit_job .job_wrap .access_address_wrap .access_map a:hover {
    border: 1px solid #000;
    background: none;
    color: #0056a8;
  }
  .recruit_job .job_wrap .access_address_wrap .access_map a:hover .arrow {
    border: 1px solid #0056a8;
    background: url("img/common/arrow_blue.svg") no-repeat center center;
    -webkit-background-size: 3px 3px;
    background-size: 3px;
  }
  .recruit_job .job_wrap .list {
    width: 100%;
    padding-bottom: 130px;
  }
  .recruit_job .job_wrap .list li {
    float: none;
    width: 100%;
    height: 130px;
    background: #323232;
  }
  .recruit_job .job_wrap .list li a {
    position: relative;
    display: block;
    width: 100%;
    height: 100%;
    color: #fff;
    -webkit-transition: none;
    transition: none;
  }
  .recruit_job .job_wrap .list li a p {
    padding-left: 5.813%;
    font-size: 20px;
    line-height: 130px;
  }
  .recruit_job .job_wrap .list li a .arrow {
    position: absolute;
    top: 14px;
    right: 12px;
    width: 28px;
    height: 28px;
    background: url("img/common/arrow_white.svg") no-repeat center center;
    -webkit-background-size: 6px auto;
    background-size: 6px auto;
    background-color: #000;
    border-radius: 50%;
  }
  .recruit_job .job_wrap .list li a:hover {
    background: none;
    -webkit-transition: none;
    transition: none;
  }
  .recruit_job .job_wrap .list li:nth-child(even) {
    background: #21241e;
  }
}

.search_top {
  max-width: 1120px;
  min-width: 1120px;
  margin: 0 auto;
  padding-bottom: 460px;
  padding: 0 40px;
}

.search_top h2 {
  font-size: 33px;
  margin-bottom: 19px;
}

.search_top .line {
  width: 30px;
  height: 2px;
  background: #0056a8;
  margin-bottom: 49px;
}

.search_top .search_wrap {
  width: 980px;
  margin: 0 auto;
}

/*.search_top .search_wrap .search_area_wrap {*/
.search_area_wrap {
  width: 100%;
  background: #f2f2f2;
  padding: 20px 0;
  margin-bottom: 45px;
}

/*.search_top .search_wrap .search_area_wrap .search_text {*/
.search_area_wrap .search_text {
  float: left;
  width: 332px;
  margin-right: 8px;
  margin-left: 20px;
}

/*.search_top .search_wrap .search_area_wrap .search_text input[type="search"] {*/
.search_area_wrap input[type="search"] {
  width: 332px;
  padding: 6px;
  font-size: 12px;
  border-radius: 4px;
  border: 1px solid #000;
  -webkit-box-shadow: none;
  box-shadow: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  outline: none;
}

/*.search_top .search_wrap .search_area_wrap .search_submit {*/
.search_area_wrap .search_submit {
  float: left;
}

/*.search_top .search_wrap .search_area_wrap .search_submit input[type="submit"] {*/
.search_area_wrap input[type="submit"] {
  width: 40px;
  height: 28px;
  background: none;
  border: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  cursor: pointer;
  border-radius: 4px;
  color: transparent;
  font-size: 0;
  background: url("img/search/icon_search.png") no-repeat center center;
  -webkit-background-size: 17px 17px;
  background-size: 17px 17px;
  background-color: #000;
  -webkit-box-shadow: none;
  box-shadow: none;
  outline: none;
}

/*.search_top .search_wrap .search_area_wrap .search_submit input[type="submit"]:hover {*/
.search_area_wrap input[type="submit"]:hover {
  background-color: #0056a8;
}

.search_top .search_wrap h3 {
  display: inline-block;
  font-size: 32px;
  margin-bottom: 14px;
  margin-right: 20px;
}

.search_top .search_wrap .displayed {
  display: inline-block;
  font-size: 10px;
}

.search_top .search_wrap .line {
  margin-bottom: 27px;
}

.search_top .search_wrap ul {
  margin-bottom: 86px;
}

.search_top .search_wrap ul li {
  border-bottom: 1px solid #b4b4b4;
}

.search_top .search_wrap ul li a {
  display: block;
  width: 100%;
  height: 100%;
  padding: 30px 0;
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear;
}

.search_top .search_wrap ul li a:hover {
  opacity: 0.6;
  filter: alpha(opacity=60);
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear;
}

.search_top .search_wrap ul li .title {
  font-size: 21px;
  margin-bottom: 14px;
  line-height: 1.6;
}

.search_top .search_wrap ul li .results_txt {
  position: relative;
  font-size: 14px;
  height: 44.8px;
  line-height: 1.6;
  margin-bottom: 12px;
  overflow: hidden;
}

.search_top .search_wrap ul li .results_txt:before,
.search_top .search_wrap ul li .results_txt:after {
  position: absolute;
  background: #fff;
}

.search_top .search_wrap ul li .results_txt:before {
  content: "...";
  top: 22.4px;
  right: 0;
  padding: 0.2em;
}

.search_top .search_wrap ul li .results_txt:after {
  content: "";
  height: 100%;
  width: 100%;
}

.search_top .search_wrap ul li .url {
  font-size: 13px;
  color: #0056a8;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}

.search_top .search_wrap .pagination {
  padding-bottom: 130px;
}

@media screen and (max-width: 768px) {
  .search_top {
    max-width: 89.583%;
    min-width: 89.583%;
    margin: 0 auto;
    padding-bottom: 460px;
    padding: 0;
    padding-top: 80px;
  }
  .search_top h2 {
    font-size: 1.6em;
    margin-bottom: 15px;
    white-space: nowrap;
  }
  .search_top .line {
    width: 30px;
    height: 2px;
    background: #0056a8;
    margin-bottom: 30px;
  }
  .search_top .search_wrap {
    width: 100%;
  }
  .search_top .search_wrap .search_area_wrap {
    width: 100%;
    background: #f2f2f2;
    padding: 20px 0;
    margin-bottom: 30px;
  }
  .search_top .search_wrap .search_area_wrap .search_text {
    float: left;
    width: 72.685%;
    margin-right: 1.744%;
    margin-left: 4.36%;
  }
  .search_top .search_wrap .search_area_wrap .search_text input[type="search"] {
    width: 100%;
    padding: 8px;
    font-size: 12px;
    border-radius: 4px;
    border: 1px solid #000;
    -webkit-box-shadow: none;
    box-shadow: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    outline: none;
  }
  .search_top .search_wrap .search_area_wrap .search_submit {
    width: 16.86%;
    float: left;
    margin-top: 1px;
  }
  .search_top .search_wrap .search_area_wrap .search_submit input[type="submit"] {
    width: 100%;
    height: 32px;
    background: none;
    border: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    cursor: pointer;
    border-radius: 4px;
    color: transparent;
    font-size: 0;
    background: url("img/search/icon_search.png") no-repeat center center;
    -webkit-background-size: 17px 17px;
    background-size: 17px 17px;
    background-color: #000;
    -webkit-box-shadow: none;
    box-shadow: none;
    outline: none;
  }
  .search_top .search_wrap .search_area_wrap .search_submit input[type="submit"]:hover {
    background-color: #000;
  }
  .search_top .search_wrap h3 {
    display: block;
    font-size: 1.6em;
    margin-bottom: 8px;
    margin-right: 20px;
  }
  .search_top .search_wrap .displayed {
    display: inline-block;
    font-size: 13px;
    margin-bottom: 12px;
  }
  .search_top .search_wrap .line {
    width: 18px;
    margin-bottom: 30px;
  }
  .search_top .search_wrap ul {
    margin-bottom: 26px;
  }
  .search_top .search_wrap ul li {
    border-bottom: 1px solid #b4b4b4;
  }
  .search_top .search_wrap ul li a {
    display: block;
    width: 100%;
    height: 100%;
    padding: 30px 0;
    -webkit-transition: none;
    transition: none;
  }
  .search_top .search_wrap ul li a:hover {
    opacity: 1;
    filter: alpha(opacity=100);
    -webkit-transition: none;
    transition: none;
  }
  .search_top .search_wrap ul li a:hover .results_txt:before,
  .search_top .search_wrap ul li a:hover .results_txt:after {
    -webkit-tap-highlight-color: #f0f0f0;
    background: #f0f0f0;
  }
  .search_top .search_wrap ul li:first-child a {
    padding-top: 0;
  }
  .search_top .search_wrap ul li .title {
    font-size: 1em;
    margin-bottom: 14px;
  }
  .search_top .search_wrap ul li .results_txt {
    position: relative;
    font-size: 14px;
    height: 44.8px;
    line-height: 1.6;
    margin-bottom: 12px;
    overflow: hidden;
  }
  .search_top .search_wrap ul li .results_txt:before,
  .search_top .search_wrap ul li .results_txt:after {
    position: absolute;
    background: #fff;
  }
  .search_top .search_wrap ul li .results_txt:before {
    content: "...";
    top: 22.4px;
    right: 0;
    padding: 0.2em;
  }
  .search_top .search_wrap ul li .results_txt:after {
    content: "";
    height: 100%;
    width: 100%;
  }
  .search_top .search_wrap ul li .url {
    font-size: 13px;
    color: #0056a8;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
  }
  .search_top .search_wrap .pagination {
    padding-bottom: 130px;
  }
}

.privacy_policy {
  max-width: 1120px;
  min-width: 1120px;
  margin: 0 auto;
  padding: 0 40px;
  padding-bottom: 125px;
}

.privacy_policy h2 {
  font-size: 33px;
  margin-bottom: 18px;
}

.privacy_policy h2:after {
  content: "/";
  margin-left: 8px;
}

.privacy_policy .privacy_wrap {
  width: 980px;
  margin: 0 auto;
}

.privacy_policy .line {
  width: 30px;
  height: 2px;
  background: #0056a8;
  margin-bottom: 54px;
}

.privacy_policy h3 {
  font-size: 21px;
  color: #0056a8;
  margin-bottom: 16px;
}

.privacy_policy p {
  font-size: 14px;
  line-height: 1.8;
}

.privacy_policy p.privacy {
  margin-bottom: 30px;
}

.privacy_policy ol {
  margin-bottom: 30px;
}

.privacy_policy ol li {
  font-size: 14px;
  line-height: 1.6;
  margin-bottom: 16px;
  text-indent: -2em;
  padding-left: 2em;
}

.privacy_policy table tr th {
  text-align: justify;
  text-justify: distribute-all-lines;
  padding: 6px 0;
}

@media screen and (max-width: 768px) {
  .privacy_policy {
    max-width: 89.583%;
    min-width: 89.583%;
    margin: 0 auto;
    padding: 0;
    /*    padding-top: 50px;*/
    padding-bottom: 130px;
  }
  .privacy_policy h2 {
    font-size: 1.7rem;
    margin-bottom: 18px;
    padding-top: 30px;
    white-space: nowrap;
  }
  .privacy_policy .privacy_wrap {
    width: 100%;
    margin: 0 auto;
  }
  .privacy_policy .line {
    width: 30px;
    height: 2px;
    background: #0056a8;
    margin-bottom: 20px;
  }
  .privacy_policy h3 {
    font-size: 18px;
    color: #0056a8;
    margin-bottom: 16px;
  }
  .privacy_policy p {
    font-size: 12px;
    line-height: 1.8;
  }
  .privacy_policy p.privacy {
    margin-bottom: 30px;
  }
  .privacy_policy ol {
    margin-bottom: 30px;
  }
  .privacy_policy ol li {
    font-size: 12px;
    line-height: 1.8;
    margin-bottom: 16px;
    text-indent: -2em;
    padding-left: 2em;
  }
  .privacy_policy table {
    font-size: 12px;
  }
  .privacy_policy table tr th {
    width: 70px;
    text-align: justify;
    text-justify: distribute-all-lines;
    padding: 6px 0;
  }
  .privacy_policy table tr td {
    letter-spacing: 0.08em;
  }
}

.terms {
  max-width: 1120px;
  min-width: 1120px;
  margin: 0 auto;
  padding: 0 40px;
  padding-bottom: 125px;
}

.terms h2 {
  font-size: 36px;
  margin-bottom: 18px;
}

.terms h2:after {
  content: "/";
  margin-left: 8px;
}

.terms .terms_wrap {
  width: 980px;
  margin: 0 auto;
}

.terms .line {
  width: 30px;
  height: 2px;
  background: #0056a8;
  margin-bottom: 54px;
}

.terms h3 {
  font-size: 20px;
  color: #0056a8;
  margin-bottom: 14px;
}

.terms h4 {
  font-size: 16px;
  color: #0056a8;
  margin-bottom: 8px;
  margin-top: 25px;
}

.terms p {
  font-size: 14px;
  line-height: 1.6;
}

.terms ul li {
  text-indent: -1em;
  padding-left: 1em;
  line-height: 1.6;
}

.terms ul li:before {
  content: "・";
}

.terms section {
  margin-bottom: 38px;
}

@media screen and (max-width: 768px) {
  .terms {
    max-width: 89.583%;
    min-width: 89.583%;
    margin: 0 auto;
    padding: 0;
    padding-bottom: 80px;
    /*    padding-top: 50px;*/
  }
  .terms h2 {
    font-size: 1.7rem;
    margin-bottom: 18px;
    padding-top: 30px;
  }
  .terms .terms_wrap {
    width: 100%;
    margin: 0 auto;
  }
  .terms .line {
    width: 30px;
    height: 2px;
    background: #0056a8;
    margin-bottom: 20px;
  }
  .terms h3 {
    font-size: 18px;
    color: #0056a8;
    margin-bottom: 14px;
  }
  .terms h4 {
    font-size: 16px;
    color: #0056a8;
    margin-bottom: 8px;
    margin-top: 25px;
  }
  .terms p {
    font-size: 12px;
    line-height: 1.8;
  }
  .terms ul li {
    font-size: 12px;
    text-indent: -1em;
    padding-left: 1em;
    line-height: 1.8;
  }
  .terms ul li:before {
    content: "・";
  }
  .terms section {
    margin-bottom: 38px;
  }
}

.form_recruit .line {
  margin-bottom: 27px;
}

.form_recruit .attention {
  margin-bottom: 60px;
}

.form_recruit h4 {
  border-top: 1px solid #b4b4b4;
  padding-top: 46px;
}

.form_recruit h4.cap_profile {
  border-top: none;
  padding-top: 0;
}

.form_recruit .resume {
  font-size: 14px;
  text-align: center;
  margin-bottom: 70px;
}

.form_recruit .contact_form_wrap table {
  margin-bottom: 46px;
}

.form_recruit table {
  width: 100%;
}

.form_recruit table tr.error td {
  padding-top: 24px;
  position: relative;
}

.form_recruit table tr.error td input[type="text"] {
  background: #fadae0;
}

.form_recruit table tr.error td input[type="email"] {
  background: #fadae0;
}

.form_recruit table tr.error td input[type="tel"] {
  background: #fadae0;
}

.form_recruit table tr.error td textarea {
  background: #fadae0;
}

.form_recruit table tr.error td span {
  display: block;
  position: absolute;
  font-size: 14px;
  top: 0.2em;
}

.form_recruit table tr.error td .text_wrap::before {
  background: #fadae0;
}

.form_recruit table tr th.th_ct {
  text-align: center;
}

.form_recruit table tr th.th_ta {
  padding-top: 20px;
  vertical-align: top;
}

.form_recruit table tr td input {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

.form_recruit table tr td textarea {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

.form_recruit table tr td.td_check {
  padding: 30px 0 30px 10px;
}

/*.form_recruit table tr td .text_wrap {*/
.formcheckbox label {
  margin-right: 60px;
  margin-bottom: 10px;
}

.form_recruit table tr td #email_re {
  margin-bottom: 10px;
}
/*
.form_recruit table tr td #name_sei, .form_recruit table tr td #name_mei, .form_recruit table tr td #name_sei_kana, .form_recruit table tr td #name_mei_kana {
  width: 400px;
}

.form_recruit table tr td #name_mei, .form_recruit table tr td #name_mei_kana {
  margin-left: 10px;
}
.form_recruit table tr td #birthday_year {
  width: 190px;
  margin-right: 8px;
}

.form_recruit table tr td #birthday_month {
  width: 85px;
  margin-left: 40px;
  margin-right: 8px;
}

.form_recruit table tr td #birthday_day {
  width: 85px;
  margin-left: 40px;
  margin-right: 8px;
}*/

/*.form_recruit table tr td #age {
  width: 190px;
  margin-right: 8px;
}

.form_recruit table tr td #support {
  width: 188px;
  margin-right: 8px;
}

.form_recruit table tr td #company_num {
  width: 188px;
  margin-right: 8px;
}

.form_recruit table tr td #company_period_year_01, .form_recruit table tr td #company_period_year_02 {
  width: 180px;
  margin-right: 8px;
}

.form_recruit table tr td #company_period_month_01, .form_recruit table tr td #company_period_month_02 {
  width: 80px;
  margin-right: 8px;
  margin-left: 40px;
}

.form_recruit table tr td #company_period_year_02 {
  margin-left: 48px;
}

.form_recruit table tr td #graduate_year, .form_recruit table tr td #graduate_month {
  width: 190px;
  margin-right: 8px;
}

.form_recruit table tr td #department_month {
  margin-left: 40px;
}*/
.formlabel_birthday_year,
.formlabel_graduate_year,
.formlabel_graduate_month {
  width: 255px;
}
.contact_form_wrap table tr td .formlabel_birthday_year input[type="text"],
.contact_form_wrap table tr td .formlabel_age input[type="text"],
.contact_form_wrap table tr td .formlabel_support input[type="text"],
.contact_form_wrap table tr td .formlabel_graduate_year input[type="text"],
.contact_form_wrap table tr td .formlabel_graduate_month input[type="text"],
.contact_form_wrap table tr td .formlabel_company_num input[type="text"] {
  width: 190px;
  margin-right: 8px;
}
.recruit_conform .formlabel_birthday_year,
.recruit_conform .formlabel_age,
.recruit_conform .formlabel_support,
.recruit_conform .formlabel_graduate_year,
.recruit_conform .formlabel_graduate_month,
.recruit_conform .formlabel_company_num {
  width: auto;
}
.formlabel_birthday_month,
.formlabel_birthday_day {
  width: 145px;
}
.contact_form_wrap table tr td .formlabel_birthday_month input[type="text"],
.contact_form_wrap table tr td .formlabel_birthday_day input[type="text"] {
  width: 85px;
  margin-right: 8px;
}
.recruit_conform .formlabel_birthday_month,
.recruit_conform .formlabel_birthday_day {
  width: auto;
}
.formlabel_year_span {
  width: 240px;
}
.contact_form_wrap table tr td .formlabel_year_span input[type="text"] {
  width: 180px;
  margin-right: 8px;
}
.recruit_conform .formlabel_year_span {
  width: auto;
}
.formlabel_day_span {
  width: 165px;
}
.contact_form_wrap table tr td .formlabel_day_span input[type="text"] {
  width: 75px;
  margin-right: 8px;
}
.recruit_conform .formlabel_day_span {
  width: auto;
}
.formlabel_name {
  width: 400px;
  margin-right: 10px;
}
.formlabel_name:last-child {
  margin-right: 0;
}
.recruit_conform .formlabel_name {
  width: auto;
}

@media screen and (max-width: 768px) {
  .form_recruit .line {
    margin-bottom: 24px;
  }
  .form_recruit .attention {
    margin-bottom: 60px;
  }
  .form_recruit h4 {
    border-top: 1px solid #b4b4b4;
    padding-top: 46px;
  }
  .form_recruit h4.cap_profile {
    border-top: none;
    padding-top: 0;
  }
  .form_recruit .contact_form_wrap p.contact_info {
    margin-bottom: 5px;
  }
  .form_recruit .contact_form_wrap table {
    margin-bottom: 40px;
  }
  .form_recruit .contact_form_wrap table tr th {
    padding-top: 0;
  }
  .form_recruit .contact_form_wrap table tr th.th_ct {
    text-align: left;
  }
  .form_recruit .contact_form_wrap table tr td {
    padding-bottom: 12px;
  }
  .form_recruit .contact_form_wrap table tr td.content_td {
    margin-top: 0;
    margin-bottom: 46px;
  }
  .form_recruit .resume {
    font-size: 10px;
    text-align: center;
    margin-bottom: 30px;
  }
  .form_recruit table {
    width: 100%;
    margin-bottom: 46px;
  }
  .form_recruit table tr margin th.pc {
    display: none;
  }
  .form_recruit table tr margin th.th_ct {
    text-align: left;
  }
  .form_recruit table tr margin th.th_ta {
    padding-top: 20px;
    vertical-align: top;
  }
  .form_recruit table tr td input {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
  }
  .form_recruit table tr td textarea {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
  }
  .form_recruit table tr td.td_check {
    padding: 10px 0;
  }
  .form_recruit table tr td.td_check_sp {
    padding-top: 20px;
  }
  /*  .form_recruit table tr td .text_wrap {*/
  .formcheckbox label {
    width: 46%;
    margin-right: 0;
    box-sizing: border-box;
  }
  .form_recruit table tr td .text_wrap {
    margin-bottom: 10px;
  }
  /*.form_recruit table tr td #name_sei, .form_recruit table tr td #name_mei, .form_recruit table tr td #name_sei_kana, .form_recruit table tr td #name_mei_kana {*/
  .formlabel_name {
    width: 47.968%;
    margin-right: 0;
  }
  .form_recruit table tr td #name_mei,
  .form_recruit table tr td #name_mei_kana {
    margin-left: 10px;
  }
  .formlabel_birthday_year {
    width: auto;
  }
  .formlabel_birthday_month,
  .formlabel_birthday_day,
  .formlabel_graduate_year,
  .formlabel_graduate_month {
    width: 50%;
  }
  .formlabel_year_span,
  .formlabel_day_span {
    width: 49%;
  }
  /*  .form_recruit table tr td #birthday_year {*/
  .contact_form_wrap table tr td .formlabel_birthday_year input[type="text"] {
    width: 91.86%;
    margin-right: 8px;
    margin-bottom: 10px;
  }
  .contact_form_wrap table tr td .formlabel_year_span input[type="text"] {
    width: 73%;
    margin-right: 8px;
    margin-bottom: 10px;
  }
  /*  .form_recruit table tr td #birthday_month {*/
  .contact_form_wrap table tr td .formlabel_birthday_month input[type="text"],
  .contact_form_wrap table tr td .formlabel_birthday_day input[type="text"],
  .contact_form_wrap table tr td .formlabel_graduate_year input[type="text"],
  .contact_form_wrap table tr td .formlabel_graduate_month input[type="text"] {
    width: 79.65%;
    margin-left: 0;
    margin-right: 8px;
  }
  .contact_form_wrap table tr td .formlabel_day_span input[type="text"] {
    width: 63%;
    margin-left: 0;
    margin-right: 8px;
  }
  .contact_form_wrap table tr td .formlabel_age input[type="text"],
  .contact_form_wrap table tr td .formlabel_support input[type="text"] {
    width: 39.825%;
    margin-right: 8px;
  }
  /*  .form_recruit table tr td #birthday_day {
    width: 39.825%;
    margin-left: 4.069%;
    margin-right: 8px;
  }
  .form_recruit table tr td #age {
    width: 39.825%;
    margin-right: 8px;
  }
  .form_recruit table tr td #support {
    width: 39.825%;
    margin-right: 8px;
  }
  .form_recruit table tr td #company_num {
    width: 91.86%;
    margin-right: 8px;
  }
  .form_recruit table tr td #company_period_year_01, .form_recruit table tr td #company_period_year_02 {
    width: 38%;
    margin-right: 2%;
  }
  .form_recruit table tr td #company_period_month_01, .form_recruit table tr td #company_period_month_02 {
    width: 32%;
    margin-right: 2%;
    margin-left: 4.066%;
  }
  .form_recruit table tr td #company_period_year_01, .form_recruit table tr td #company_period_month_01 {
    margin-bottom: 15px;
  }
  .form_recruit table tr td #company_period_year_02 {
    margin-left: 0;
  }
  .form_recruit table tr td #graduate_year, .form_recruit table tr td #department_month {
    width: 39.825%;
    margin-right: 8px;
  }
  .form_recruit table tr td #department_month {
    margin-left: 4.069%;
  }
  .form_recruit table tr td #school_type, .form_recruit table tr td #school_name, .form_recruit table tr td #department {
    margin-bottom: 15px;
  }*/
}

.recruit_conform .line {
  margin-bottom: 20px;
}

.recruit_conform .attention {
  margin-bottom: 60px;
}

.recruit_conform h4 {
  border-top: 1px solid #b4b4b4;
  padding-top: 48px;
  font-size: 24px;
  margin-bottom: 10px;
}

.recruit_conform h4.cap_profile {
  border-top: none;
  padding-top: 0;
}

.recruit_conform .resume {
  font-size: 14px;
  text-align: center;
  margin-bottom: 70px;
}

.recruit_conform .contact_conform_wrap table {
  margin-bottom: 44px;
  width: auto;
}

.recruit_conform .contact_conform_wrap .btn_wrap {
  padding-top: 10px;
}

.recruit_conform table {
  width: 100%;
}

.recruit_conform table tr.error td {
  padding-top: 24px;
  position: relative;
}

.recruit_conform table tr.error td input[type="text"] {
  background: #fadae0;
}

.recruit_conform table tr.error td input[type="email"] {
  background: #fadae0;
}

.recruit_conform table tr.error td input[type="tel"] {
  background: #fadae0;
}

.recruit_conform table tr.error td textarea {
  background: #fadae0;
}

.recruit_conform table tr.error td span {
  display: block;
  position: absolute;
  font-size: 14px;
  top: 0.2em;
}

.recruit_conform table tr.error td .text_wrap::before {
  background: #fadae0;
}

.recruit_conform table tr th.th_ct {
  text-align: center;
}

.recruit_conform table tr th.th_ta {
  padding-top: 20px;
  vertical-align: top;
}

.recruit_conform table tr td {
  padding-top: 24px;
}

.recruit_conform table tr td input {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

.recruit_conform table tr td textarea {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

.recruit_conform table tr td.td_check {
  padding: 30px 0 30px 0;
}

.recruit_conform table tr td .text_wrap {
  margin-right: 60px;
  margin-bottom: 10px;
}

.recruit_conform table tr td #email_re {
  margin-bottom: 10px;
}

.recruit_conform table tr td #name_sei,
.recruit_conform table tr td #name_mei,
.recruit_conform table tr td #name_sei_kana,
.recruit_conform table tr td #name_mei_kana {
  width: 400px;
}

.recruit_conform table tr td #name_mei,
.recruit_conform table tr td #name_mei_kana {
  margin-left: 10px;
}

.recruit_conform table tr td #birthday_year {
  width: 190px;
  margin-right: 8px;
}

.recruit_conform table tr td #birthday_month {
  width: 85px;
  margin-left: 40px;
  margin-right: 8px;
}

.recruit_conform table tr td #birthday_day {
  width: 85px;
  margin-left: 40px;
  margin-right: 8px;
}

.recruit_conform table tr td #age {
  width: 190px;
  margin-right: 8px;
}

.recruit_conform table tr td #support {
  width: 188px;
  margin-right: 8px;
}

.recruit_conform table tr td #company_num {
  width: 188px;
  margin-right: 8px;
}

.recruit_conform table tr td #company_period_year_01,
.recruit_conform table tr td #company_period_year_02 {
  width: 180px;
  margin-right: 8px;
}

.recruit_conform table tr td #company_period_month_01,
.recruit_conform table tr td #company_period_month_02 {
  width: 80px;
  margin-right: 8px;
  margin-left: 40px;
}

.recruit_conform table tr td #company_period_year_02 {
  margin-left: 48px;
}

.recruit_conform table tr td #graduate_year,
.recruit_conform table tr td #department_month {
  width: 190px;
  margin-right: 8px;
}

.recruit_conform table tr td #department_month {
  margin-left: 40px;
}

@media screen and (max-width: 768px) {
  .recruit_conform .line {
    margin-bottom: 24px;
  }
  .recruit_conform .attention {
    margin-bottom: 60px;
  }
  .recruit_conform h4 {
    border-top: 1px solid #b4b4b4;
    padding-top: 46px;
  }
  .recruit_conform h4.cap_profile {
    border-top: none;
    padding-top: 0;
  }
  .recruit_conform .contact_form_wrap table {
    margin-bottom: 46px;
  }
  .recruit_conform .contact_form_wrap table tr td.content_td {
    margin-top: 0;
    margin-bottom: 46px;
  }
  .recruit_conform .resume {
    font-size: 10px;
    text-align: center;
    margin-bottom: 30px;
  }
  .recruit_conform table {
    width: 100%;
    margin-bottom: 46px;
  }
  .recruit_conform table tr th.pc {
    display: none;
  }
  .recruit_conform table tr th.th_ct {
    text-align: left;
  }
  .recruit_conform table tr th.th_ta {
    padding-top: 0;
    vertical-align: top;
  }
  .recruit_conform table tr td {
    padding-top: 0;
  }
  .recruit_conform table tr td input {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
  }
  .recruit_conform table tr td textarea {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
  }
  .recruit_conform table tr td.td_check {
    padding: 0;
    padding-bottom: 12px;
  }
  .recruit_conform table tr td.td_check_sp {
    padding-top: 20px;
  }
  .recruit_conform table tr td .text_wrap {
    width: 40%;
    margin-right: 0;
  }
  .recruit_conform table tr td .text_wrap {
    margin-bottom: 10px;
  }
  .recruit_conform table tr td #name_sei,
  .recruit_conform table tr td #name_mei,
  .recruit_conform table tr td #name_sei_kana,
  .recruit_conform table tr td #name_mei_kana {
    width: 47.968%;
  }
  .recruit_conform table tr td #name_mei,
  .recruit_conform table tr td #name_mei_kana {
    margin-left: 10px;
  }
  .recruit_conform table tr td #birthday_year {
    width: 91.86%;
    margin-right: 8px;
    margin-bottom: 10px;
  }
  .recruit_conform table tr td #birthday_month {
    width: 39.825%;
    margin-left: 0;
    margin-right: 8px;
  }
  .recruit_conform table tr td #birthday_day {
    width: 39.825%;
    margin-left: 4.069%;
    margin-right: 8px;
  }
  .recruit_conform table tr td #age {
    width: 39.825%;
    margin-right: 8px;
  }
  .recruit_conform table tr td #support {
    width: 39.825%;
    margin-right: 8px;
  }
  .recruit_conform table tr td #company_num {
    width: 91.86%;
    margin-right: 8px;
  }
  .recruit_conform table tr td #company_period_year_01,
  .recruit_conform table tr td #company_period_year_02 {
    width: 39.422%;
    margin-right: 8px;
  }
  .recruit_conform table tr td #company_period_month_01,
  .recruit_conform table tr td #company_period_month_02 {
    width: 33.43%;
    margin-right: 8px;
    margin-left: 4.066%;
  }
  .recruit_conform table tr td #company_period_year_01,
  .recruit_conform table tr td #company_period_month_01 {
    margin-bottom: 15px;
  }
  .recruit_conform table tr td #company_period_year_02 {
    margin-left: 0;
  }
  .recruit_conform table tr td #graduate_year,
  .recruit_conform table tr td #department_month {
    width: 39.825%;
    margin-right: 8px;
  }
  .recruit_conform table tr td #department_month {
    margin-left: 4.069%;
  }
  .recruit_conform table tr td #school_type,
  .recruit_conform table tr td #school_name,
  .recruit_conform table tr td #department {
    margin-bottom: 15px;
  }
}
.blog {
  width: 100%;
  background: #f2f2f2;
}

/*.blog_article_top {
  width: 84%;
  display: block;
  float: left;
  margin-left: 25px;
  font-size: 14px;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}*/

.blog_wrap {
  position: relative;
  max-width: 1120px;
  min-width: 1120px;
  margin: 0 auto;
  padding: 80px 40px;
  background: #f2f2f2;
}

.blog_wrap ul {
  width: 100%;
  overflow: hidden;
}

.blog_wrap ul li {
  width: 33.33333%;
  float: left;
}

.blog_wrap ul li a {
  position: relative;
  display: block;
  overflow: hidden;
}
.blog_wrap ul li a:before {
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  background-color: #00274e;
  opacity: 0;
  transition: opacity 0.3s ease;
}
.blog_wrap ul li a:hover:before {
  opacity: 0.2;
  transition: opacity 0.3s ease;
}

.blog_wrap ul li a .image {
  width: 100%;
  /*height: 300px;*/
}
.blog_wrap ul li a .image img {
  width: 100%;
  /*min-height: 100%;*/
}

.blog_wrap ul li a .blog_ft {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  min-height: 105px;
  background-color: rgba(0, 22, 44, 0.5);
}
.blog_wrap ul li a .blog_ft .blog_date {
  color: #fff;
  font-size: 12px;
  padding: 10px 20px 0;
}
.blog_wrap ul li a .blog_ft .blog_article_top {
  color: #fff;
  font-size: 15px;
  line-height: 1.4;
  padding: 5px 20px 0;
}

.content_nd .image {
  text-align: center;
}

.content_nd .image img {
  width: 100%;
  display: inline-block;
}

.sidebar .heading {
  font-size: 16px;
  margin-bottom: 10px;
}

.sidebar .article {
  margin-bottom: 38px;
}

.sidebar .article li {
  padding-top: 12px;
  width: 100%;
  height: 56px;
  border-bottom: 1px solid #000;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

.sidebar .article li a {
  width: 100%;
  height: 2.1em;
  border: none;
  overflow: hidden;
  padding: 0;
  line-height: 1.4;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

.sidebar .article li a span {
  display: block;
  position: relative;
  width: 134px;
  padding-left: 25px;
  font-size: 12px;
}
.sidebar .article li a span:after {
  position: absolute;
  background: #fff;
}

.sidebar .article li a span:before {
  content: "...";
  position: absolute;
  top: 50.4px;
  right: 0;
  padding: 0.2em;
}

.sidebar .article li a:after {
  left: 4px;
}

.sidebar .archive li a {
  padding-left: 49px;
}

.sidebar .archive li a:after {
  left: 24px;
}

.blog_inner {
  padding-bottom: 85px;
}

.blog_contact {
  width: 100%;
  background: #f2f2f2;
  padding-top: 73px;
  padding-bottom: 130px;
}

.blog_contact .blogcontact_wrap {
  width: 980px;
  margin: 0 auto;
  padding-left: 40px;
  padding-right: 40px;
}

.blog_contact .blogcontact_wrap h5 {
  font-size: 26px;
  margin-bottom: 20px;
}

.blog_contact .blogcontact_wrap .line {
  width: 30px;
  height: 2px;
  background: #00569c;
  margin-bottom: 30px;
}

.blog_contact .blogcontact_wrap p {
  font-size: 14px;
  line-height: 1.6;
  margin-bottom: 20px;
}

.blog_contact .blogcontact_wrap .blogcontact_btn {
  width: 240px;
  height: 40px;
}

.blog_contact .blogcontact_wrap .blogcontact_btn a {
  position: relative;
  display: block;
  width: 100%;
  height: 100%;
  border: 1px solid #000;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  line-height: 40px;
  text-align: center;
  font-size: 12px;
  border-radius: 4px;
  color: #00569c;
  -webkit-transition: all 0.3s linear;
  transition: all 0.3s linear;
}

.blog_contact .blogcontact_wrap .blogcontact_btn a .arrow {
  position: absolute;
  top: 50%;
  right: 8px;
  margin-top: -7px;
  width: 14px;
  height: 14px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  background: url("img/common/arrow_blue.svg") no-repeat center center;
  -webkit-background-size: 3px 3px;
  background-size: 3px;
  border: 1px solid #00569c;
  border-radius: 50%;
  -webkit-transition: all 0.3s linear;
  transition: all 0.3s linear;
}

.blog_contact .blogcontact_wrap .blogcontact_btn a:hover {
  background: #00569c;
  color: #fff;
  border: 1px solid #00569c;
}

.blog_contact .blogcontact_wrap .blogcontact_btn a:hover .arrow {
  background: url("img/common/arrow_white.svg") no-repeat center center;
  -webkit-background-size: 3px 3px;
  background-size: 3px;
  border: 1px solid #fff;
  border-radius: 50%;
}

@media screen and (max-width: 768px) {
  .blog_wrap {
    max-width: 89.583%;
    min-width: 89.583%;
    padding: 60px 0;
  }

  .blog_wrap ul {
    width: 100%;
    margin-bottom: 0;
    padding-top: 10px;
  }

  .blog_wrap ul li {
    width: 100%;
    float: none;
  }

  .blog_wrap ul li a {
    position: relative;
    display: block;
    overflow: hidden;
  }
  .blog_wrap ul li a:before {
    display: none;
  }
  .blog_wrap ul li a:hover:before {
    opacity: 0.2;
    transition: none;
  }

  .blog_wrap ul li a .image {
    width: 100%;
    /*height: 250px;*/
  }
  .blog_wrap ul li a .image img {
    width: 100%;
    /*min-height: 100%;*/
  }

  .blog_wrap ul li a .blog_ft {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    min-height: inherit;
    background-color: rgba(0, 22, 44, 0.5);
  }
  .blog_wrap ul li a .blog_ft .blog_date {
    color: #fff;
    font-size: 11px;
    padding: 10px 15px 0;
  }
  .blog_wrap ul li a .blog_ft .blog_article_top {
    color: #fff;
    font-size: 14px;
    line-height: 1.4;
    padding: 5px 15px 10px 15px;
  }

  .news_list .title_service_blog {
    letter-spacing: -0.04em;
  }
  .news_list .title_service_blog span {
    font-size: 30px;
    letter-spacing: -0.01em;
  }
  .blog_inner {
    padding-bottom: 0;
  }
  .blog_inner .down_menu {
    margin-bottom: 10px;
  }
  .blog_inner .content_nd {
    padding-top: 10px;
    padding-bottom: 50px;
  }
  .blog_wrapper {
    padding-bottom: 60px;
  }
  .blog_article {
    position: relative;
    padding: 18px 0;
  }
  .blog_article .arrow {
    position: absolute;
    top: 50%;
    right: 2.631%;
    width: 20px;
    height: 20px;
    margin-top: -10px;
    background: url("img/common/arrow_open_white.svg") no-repeat center center;
    -webkit-background-size: 10px 10px;
    background-size: 10px;
    border-radius: 50%;
    background-color: #00569c;
  }
  .blog_article_top {
    padding: 0;
    font-size: 14px;
  }
  .blog_archive {
    position: relative;
    padding: 18px 0;
  }
  .blog_archive .arrow {
    position: absolute;
    top: 50%;
    right: 2.631%;
    width: 20px;
    height: 20px;
    margin-top: -10px;
    background: url("img/common/arrow_open_white.svg") no-repeat center center;
    -webkit-background-size: 10px 10px;
    background-size: 10px;
    border-radius: 50%;
    background-color: #00569c;
  }
  .article_list li {
    display: none;
    border-top: 1px solid #b4b4b4;
    margin: 0 auto;
    width: 94.883%;
  }
  .article_list li a {
    padding: 18px 0;
    display: block;
    width: 100%;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
  }
  .archive_list li {
    display: none;
    border-top: 1px solid #b4b4b4;
    margin: 0 auto;
    width: 94.883%;
  }
  .archive_list li a {
    padding: 18px 0;
    display: block;
    width: 100%;
  }
  .blog_contact {
    width: 100%;
    background: #f2f2f2;
    padding-top: 73px;
    padding-bottom: 130px;
  }
  .blog_contact .blogcontact_wrap {
    width: 89.583%;
    margin: 0 auto;
    padding-left: 0;
    padding-right: 0;
  }
  .blog_contact .blogcontact_wrap h5 {
    font-size: 26px;
    margin-bottom: 20px;
  }
  .blog_contact .blogcontact_wrap .line {
    width: 30px;
    height: 2px;
    background: #00569c;
    margin-bottom: 30px;
  }
  .blog_contact .blogcontact_wrap p {
    font-size: 13px;
    line-height: 1.6;
    margin-bottom: 20px;
  }
  .blog_contact .blogcontact_wrap .blogcontact_btn {
    width: 240px;
    height: 40px;
  }
  .blog_contact .blogcontact_wrap .blogcontact_btn a {
    position: relative;
    display: block;
    width: 100%;
    height: 100%;
    border: 1px solid #000;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    line-height: 40px;
    text-align: center;
    font-size: 12px;
    border-radius: 4px;
    color: #00569c;
    -webkit-transition: none;
    transition: none;
  }
  .blog_contact .blogcontact_wrap .blogcontact_btn a .arrow {
    position: absolute;
    top: 50%;
    right: 8px;
    margin-top: -7px;
    width: 14px;
    height: 14px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    background: url("img/common/arrow_blue.svg") no-repeat center center;
    -webkit-background-size: 3px 3px;
    background-size: 3px;
    border: 1px solid #00569c;
    border-radius: 50%;
    -webkit-transition: none;
    transition: none;
  }
  .blog_contact .blogcontact_wrap .blogcontact_btn a:hover {
    background: none;
    color: #00569c;
    border: 1px solid #000;
  }
  .blog_contact .blogcontact_wrap .blogcontact_btn a:hover .arrow {
    background: url("img/common/arrow_blue.svg") no-repeat center center;
    -webkit-background-size: 3px 3px;
    background-size: 3px;
    border: 1px solid #00569c;
    border-radius: 50%;
  }
}

/* リセットしたCSSを元に戻す */
.wysiwyg ul {
  list-style: disc;
}
.wysiwyg ol {
  list-style: decimal;
}
.wysiwyg ul,
.wysiwyg ol {
  margin: 1em 0 1em 1.2em;
}
.wysiwyg li {
  margin: 0.5em 0;
}
.wysiwyg p {
  line-height: 1.8em;
  margin: 1em 0;
}
.wysiwyg em {
  font-style: italic;
}
.wysiwyg strong {
  font-weight: bold;
}

.wysiwyg table {
  line-height: 1.8em;
  margin-bottom: 13px;
}

.wysiwyg table th {
  text-align: left;
  padding-right: 0.8em;
  font-size: 13px;
}
.wysiwyg table td {
  font-size: 13px;
}

.cmncts {
  max-width: 1120px;
  min-width: 1120px;
  margin: 0 auto;
  padding: 0 40px;
  padding-bottom: 125px;
}
.cmncts p {
  margin: 1em 0;
}
@media screen and (max-width: 768px) {
  .cmncts {
    max-width: 89.583%;
    min-width: 89.583%;
    margin: 0 auto;
    padding: 0;
    padding-bottom: 80px;
    padding-top: 50px;
  }
}

/**/
.download,
.mailmagazine {
  max-width: 1120px;
  min-width: 1120px;
  padding: 0 40px;
  margin: 0 auto;
}
.base_inner {
  width: 960px;
  margin: 0 auto;
  text-align: center;
}
.base_inner .mailframe {
  margin: 40px auto;
  text-align: center;
}
.base_inner h3 {
  text-align: left;
  font-size: 31px;
  font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo,
    "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-weight: normal;
}
.base_inner h3:after {
  content: "";
  display: block;
  text-align: left;
  width: 30px;
  height: 2px;
  background-color: #0056a8;
  margin: 15px 0 30px 0;
}
.base_inner h4 {
  text-align: left;
  font-size: 21px;
  color: #0056a8;
  font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo,
    "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-weight: normal;
  margin-bottom: 15px;
}
.base_inner p {
  text-align: left;
  font-size: 14px;
}
.base_sec {
  margin: 0 auto;
  padding-bottom: 50px;
  overflow: hidden;
}
.download_anchor {
  overflow: hidden;
  margin-bottom: 60px;
}
.download_anchor li {
  float: left;
  width: 320px;
}
.download_anchor li a {
  position: relative;
  display: block;
  border: 1px solid #efefef;
  font-size: 14px;
  padding: 14px 0;
  color: #000000;
  transition: background-color 0.3s ease, color 0.3s ease;
}
.download_anchor li a:after {
  content: "";
  position: absolute;
  top: 50%;
  right: 10px;
  width: 10px;
  height: 6px;
  background: url(/img/common/arrow_open_grey.svg) left top no-repeat;
  background-size: 10px 6px;
  margin-top: -3px;
  transition: background 0.3s ease;
}
.download_anchor li:first-child a {
  border-right: none;
}
.download_anchor li:last-child a {
  border-left: none;
}
.download_anchor li a:hover {
  background-color: #3a85cc;
  color: #fff;
  transition: background-color 0.3s ease, color 0.3s ease;
}
.download_anchor li a:hover:after {
  background: url(/img/common/arrow_open_white.svg) left top no-repeat;
  background-size: 10px 6px;
  transition: background 0.3s ease;
}
.download_anchor_sp {
  display: none;
}

.download_area {
  display: block;
  overflow: hidden;
  margin-bottom: 40px;
}

.download_area .download_area_img {
  position: relative;
  display: block;
  float: left;
  width: 280px;
  height: 180px;
  overflow: hidden;
}
.download_area .download_area_img img {
  display: block;
  width: auto;
  height: 100%;
}
.download_area .download_area_txt {
  display: block;
  float: left;
  width: 640px;
  padding-left: 40px;
  line-height: 1.8;
  text-align: left;
}
.download_area .download_area_txt h4 {
  font-size: 21px;
  line-height: 1.6;
  margin-bottom: 15px;
  color: #0056a8;
  margin-top: -5px;
}
.download_area .download_area_txt p {
  font-size: 14px;
  margin-bottom: 15px;
}
.download_area .download_area_txt .dl_link {
  position: relative;
  display: block;
  text-align: center;
  width: 220px;
  color: #fff;
  background-color: #008ae1;
  font-size: 16px;
  padding: 15px;
  border-radius: 6px;
  transition: background-color 0.3s ease;
}
.download_area .download_area_txt .dl_link:after {
  content: "";
  position: absolute;
  display: block;
  top: 50%;
  right: 14px;
  width: 14px;
  height: 15px;
  background: url(/img/common/icn_download.svg) left top no-repeat;
  background-size: 14px 15px;
  margin-top: -7px;
}

.download_area .download_area_txt .dl_link:hover {
  background-color: #0072d3;
  transition: background-color 0.3s ease;
}

@media screen and (max-width: 768px) {
  .download .top_title span {
    display: block;
  }
  .download,
  .mailmagazine {
    max-width: 89.583%;
    min-width: 89.583%;
    margin: 0 auto;
    padding: 0;
  }
  .base_inner {
    width: 100%;
    margin: 0 auto;
    text-align: center;
  }
  .base_inner .mailframe {
    width: 100%;
    height: 300px;
    margin: 20px auto;
    text-align: center;
  }
  .base_inner h3 {
    text-align: left;
    font-size: 20px;
    line-height: 1.5;
    font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo,
      "Helvetica Neue", Helvetica, Arial, sans-serif;
    font-weight: normal;
  }

  .base_inner h3:after {
    content: "";
    display: block;
    text-align: left;
    width: 30px;
    height: 2px;
    background-color: #0056a8;
    margin: 5px 0 20px 0;
  }
  .base_inner h4 {
    text-align: left;
    font-size: 18px;
    line-height: 1.5;
    color: #0056a8;
    font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo,
      "Helvetica Neue", Helvetica, Arial, sans-serif;
    font-weight: normal;
    margin-bottom: 15px;
  }
  .base_inner p {
    text-align: left;
    font-size: 0.88em;
  }
  .base_sec {
    width: 100%;
    margin: 0 auto;
    padding-bottom: 10px;
    overflow: hidden;
  }
  .download_anchor {
    display: none;
  }
  .download_anchor_sp {
    position: relative;
    display: block;
    margin: 20px 0 30px 0;
  }
  .download_anchor_sp select {
    /*appearance: none;*/
    width: 100%;
    font-size: 14px;
    padding: 10px;
    border: 1px solid #efefef;
    background: none;
    border-radius: 0;
  }
  /*.download_anchor_sp:after{
		content: '';
		position: absolute;
		top: 50%;
		right: 10px;
		width: 10px;
		height: 6px;
		background: url(/img/common/arrow_open_grey.svg) left top no-repeat;
		background-size: 10px 6px;
		margin-top: -3px;
		transition: background .3s ease;
	}*/

  .download_area {
    display: block;
    margin-bottom: 50px;
  }

  .download_area .download_area_img {
    position: relative;
    float: none;
    display: block;
    vertical-align: top;
    width: 100%;
    height: auto;
    overflow: hidden;
  }
  .download_area .download_area_img img {
    display: block;
    width: 100%;
    height: auto;
  }
  .download_area .download_area_txt {
    display: block;
    float: none;
    vertical-align: top;
    width: 100%;
    padding-left: 0;
    line-height: 1.8;
    text-align: left;
  }
  .download_area .download_area_txt h4 {
    font-size: 18px;
    line-height: 1.6;
    margin: 15px 0;
    color: #0056a8;
  }
  .download_area .download_area_txt p {
    font-size: 14px;
    margin-bottom: 15px;
  }
  .download_area .download_area_txt .dl_link {
    position: relative;
    display: block;
    text-align: center;
    width: 100%;
    color: #fff;
    background-color: #008ae1;
    font-size: 16px;
    padding: 15px 0;
    border-radius: 6px;
    transition: none;
  }
  .download_area .download_area_txt .dl_link:after {
    content: "";
    position: absolute;
    display: block;
    top: 50%;
    right: 14px;
    width: 14px;
    height: 15px;
    background: url(/img/common/icn_download.svg) left top no-repeat;
    background-size: 14px 15px;
    margin-top: -7px;
  }
  .download_area .download_area_txt .dl_link:hover {
    background-color: #008ae1;
    transition: none;
  }
}

.ankerLinks {
  border-bottom: 1px solid #e6e6e6;
  padding: 24px 0 16px;
  margin-bottom: 24px;
}

.ankerLinks .ankerLinks-inner {
  width: 60%;
  margin: 0 auto;
}
.ankerLinks .ankerLinks-list {
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 -16px;
}

.ankerLinks .ankerLinks-item {
  width: 33%;
  padding: 0 16px;
}

@media screen and (max-width: 768px) {
  .ankerLinks .ankerLinks-inner {
    max-width: 89.583%;
    min-width: 89.583%;
    margin: 0 auto;
  }
  .ankerLinks .ankerLinks-list {
    margin: 0 -8px;
  }
  .ankerLinks .ankerLinks-item {
    padding: 0 8px;
  }
}

.__corporate {
  max-width: 1120px;
  min-width: 1120px;
  margin: 0 auto;
  padding: 0 40px;
  padding-bottom: 45px;
}

/*
h1,h2変更
20230713
*/
  
.about h3 {
  font-size: 14px;
  margin-bottom: 18px;
  letter-spacing: 1px;
  letter-spacing: 0.12rem;
}

.about h3 span:after {
  content: "/";
  margin-left: 8px;
}

.about h3 span {
  display: inline;
  font-size: 38px;
  font-family: 'Roboto Condensed', sans-serif;
  padding-right: 10px;
vertical-align: -5px;
}


.about h1 {
  font-size: 14px;
  margin-bottom: 18px;
  letter-spacing: 1px;
  letter-spacing: 0.12rem;
}

.about h1 span:after {
  content: "/";
  margin-left: 8px;
}

.about h1 span {
  display: inline;
  font-size: 38px;
  font-family: 'Roboto Condensed', sans-serif;
  padding-right: 10px;
vertical-align: -5px;
}

.service_top h1 {
  font-size: 14px;
  margin-bottom: 18px;
  letter-spacing: 1px;
  letter-spacing: 0.12rem;
}

.service_top h1 span:after {
  content: "/";
  margin-left: 8px;
}

.service_top h1 span {
  display: inline;
  font-size: 38px;
  font-family: 'Roboto Condensed', sans-serif;
  padding-right: 10px;
vertical-align: -5px;
}

.works_wrap h1 {
  font-size: 14px;
  margin-bottom: 18px;
  letter-spacing: 1px;
  letter-spacing: 0.12rem;
}

.works_wrap h1 span:after {
  content: "/";
  margin-left: 8px;
}

.works_wrap h1 span {
  display: inline;
  font-size: 38px;
  font-family: 'Roboto Condensed', sans-serif;
  padding-right: 10px;
vertical-align: -5px;
}

.recruit_top h1 {
  font-size: 14px;
  margin-bottom: 18px;
  letter-spacing: 1px;
  letter-spacing: 0.12rem;
}

.recruit_top h1 span:after {
  content: "/";
  margin-left: 8px;
}

.recruit_top h1 span {
  display: inline;
  font-size: 38px;
  font-family: 'Roboto Condensed', sans-serif;
  padding-right: 10px;
vertical-align: -5px;
}

.corporate h1 {
  font-size: 14px;
  margin-bottom: 18px;
  letter-spacing: 1px;
  letter-spacing: 0.12rem;
}

.corporate h1 span:after {
  content: "/";
  margin-left: 8px;
}

.corporate h1 span {
  display: inline;
  font-size: 38px;
  font-family: 'Roboto Condensed', sans-serif;
  padding-right: 10px;
vertical-align: -5px;
}

.news_list h1 {
  font-size: 14px;
  margin-bottom: 18px;
  letter-spacing: 1px;
  letter-spacing: 0.12rem;
}

.news_list h1 span:after {
  content: "/";
  margin-left: 8px;
}

.news_list h1 span {
  display: inline;
  font-size: 38px;
  font-family: 'Roboto Condensed', sans-serif;
  padding-right: 10px;
vertical-align: -5px;
}

.topic_path h1 {
  font-size: 14px;
  margin-bottom: 18px;
  letter-spacing: 1px;
  letter-spacing: 0.12rem;
}

.topic_path h1 span:after {
  content: "/";
  margin-left: 8px;
}

.topic_path h1 span {
  display: inline;
  font-size: 38px;
  font-family: 'Roboto Condensed', sans-serif;
  padding-right: 10px;
vertical-align: -5px;
}

.contact_top h1 {
  font-size: 14px;
  margin-bottom: 18px;
  letter-spacing: 1px;
  letter-spacing: 0.12rem;
}

.contact_top h1 span:after {
  content: "/";
  margin-left: 8px;
}

.contact_top h1 span {
  display: inline;
  font-size: 38px;
  font-family: 'Roboto Condensed', sans-serif;
  padding-right: 10px;
vertical-align: -5px;
}

.content ul li h2 {
  font-size: 21px;
  margin-bottom: 20px;
  line-height: 1.4;
}
.content ul li h2 span {
  font-size: 13px;
  color: #0056a9;
  font-family: "Roboto", sans-serif;
  letter-spacing: 0.04em;
  display: block;
  margin-bottom: 7px;
}
.content ul li h2 {
    font-size: 16px;
    margin-bottom: 20px;
    line-height: 1.6em;
}
.content ul li h2 span {
    font-size: 13px;
    color: #0056a9;
    font-family: "Roboto", sans-serif;
    letter-spacing: 0.04em;
    line-height: 2em;
}