/*
Theme Name: WordPress Customize Vanilla Theme
Theme URI: 
Author: Plate.inc
Author URI: https://www.plate.co.jp/
Description: This theme is most basicly theme for WordPress Development. All our future will start this "Vanilla".
Version: 3.0
License: Plate.inc
License URI: 
Tags: Vanila Basic
Text Domain: wpcvanilla

This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned with others.
*/

@charset "utf-8";

/* RESET CSS */
@import 'css/reset.css';

/* COMMON COMPONENT */
@import 'css/component.css';

/* SETTING */
@import 'css/setting.css';


/* HEADER */
#header {
  background: #fff;
  position: fixed;
  width: 100%;
  top: 0;
  left: 0;
  z-index: 9000;
  border-bottom: 2px solid #db0917;
}
.role_header .header_logo {
  float: left;
  line-height: 78px;
}
.role_header .main_nav {
  float: right;
  text-align: right;
  margin: 40px 0 10px;
}
.main_nav .menu {
  height: 38px;
}
.main_nav .menu .full_width {
  display: inline-block;
  margin-left: 15px;
}
.nowrap {
  white-space: nowrap;
}
.main_nav .menu li a {
  display: block;
}
.main_nav .menu .full_width > a {
  height: 38px;
  overflow: hidden;
}
.main_nav .menu li.current a img,
.main_nav .menu li:hover a img {
  position: relative;
  top: -38px;
}
.full_width .menu_dropdown {
  display: none; 
  position: fixed;
  top: 123px;
  background: #fff;
  padding: 0 10px 5px;
  border: solid 1px #f0f0f0;
  border-top: none;
  box-shadow: 0 0 8px #ccc;
  border-bottom-left-radius: 2px;
  border-bottom-right-radius: 2px;
}
.menu_dropdown .dd_inner {
  padding-top: 10px;
  padding-bottom: 10px;
}
.menu_dropdown .column {
  text-align: left;
  float: left;
  margin-right: 10px;
  font-size: 13px;
}
.menu_dropdown .column li a {
  display: block;
  padding: 5px 16px;
  position: relative;
}
.menu_dropdown .column li:hover a {
  color: #000 !important;
  background: #e6e6e6;
}
/*
.menu_dropdown .column li a:before {
  content: "";
  width: 5px;
  height: 5px;
  border-top: 2px solid #333;
  border-right: 2px solid #333;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%) rotate(45deg);
  -moz-transform: translateY(-50%) rotate(45deg);
  -ms-transform: translateY(-50%) rotate(45deg);
  transform: translateY(-50%) rotate(45deg);
  left: 6px;
}
*/

/* MAIN CONTENT
======================================================= */
#main {
  padding-top: 143px;
  display: block;
}
#content,
#content_right {
  float: left;
}
#content {
  width: 737px;
  padding-right: 26px;
  border-right: 1px solid #dcdcdc;
}
#content_right {
  width: 737px;
  /* padding-left: 26px; */
  padding-right: 26px;
  /* border-left: 1px solid #dcdcdc; */
  border-right: 1px solid #dcdcdc;
  padding-bottom: 80px;
}

#sidebar {
  float: right;
  width: 224px;
  padding-left: 10px;
  border-left: 1px solid #dcdcdc;
  margin-left: -1px;
}
#sidebar_left {
  float: right;
  width: 224px;
  border-left: 1px solid #dcdcdc;
  margin-left: -1px;
}
.breadcolumn {
  padding: 8px 0 7px;
  font-size: 12px;
}
h3.breadcolumn a {
  display: inline-block;
  position: relative;
  margin-right: 20px;
  line-height: 1;
}
h3.breadcolumn a:after {
  content: "";
  width: 5px;
  height: 5px;
  border-top: 2px solid #999;
  border-right: 2px solid #999;
  position: absolute;
  right: -12px;
  top: 50%;
  -webkit-transform: translateY(-50%) rotate(45deg);
  -moz-transform: translateY(-50%) rotate(45deg);
  -ms-transform: translateY(-50%) rotate(45deg);
  transform: translateY(-50%) rotate(45deg);
}


/* side_2btn */
.side_2btn li {
  margin-bottom: 10px;
}
.side_2btn li:last-child {
  margin-bottom: 0;
}

/* work_pickUp_4col */
.work_PJlist_3col .box {
  margin-bottom: 4px;
}
.network {
  margin-bottom: 16px;
}
.network span {
  display: inline-block;
  color: #fff;
  line-height: 1;
  padding: 5px 11px 3px;
  min-width: 65px;
  text-align: center;
}
.network.hokkaido span {
  background: #1e66b4;
}
.network.tokyo span {
  background: #50991e;
}
.network.nagoya span {
  background: #ff9900;
}
.network.osaka span {
  background: #cc5099;
}
.network.tohoku span {
  background: #00c9e1;
}
.network.chugoku-shikoku span {
  background: #ff6799;
}
.network.kyushu-okinawa span {
  background: #cc6733;
}
.work_pickUp_4col h3,
.work_PJlist_3col h3,
.work_PJlist h3 {
  font-size: 20px;
  line-height: 1.2;
  margin-bottom: 16px;
  min-height: 48px;
}
.work_pickUp_3col h3 {
  font-size: 18px;
  line-height: 1.2;
  margin-bottom: 10px;
  min-height: 45px;
}
.work_PJlist h3 {
  min-height: 0 !important;
}
.work_PJlist_3col .info,
.work_pickUp_4col .info,
.work_pickUp_3col .info {
  font-size: 11px;
  color: #505050;
  margin-bottom: 20px;
}
.work_pickUp_4col .info .price,
.work_PJlist_3col .info .price,
.work_pickUp_3col .info .price {
  color: #dc1e1e;
  font-size: 14px;
}
.work_PJlist .info .price {
  font-size: 16px;
}
a:hover h3 {
  color: #666;
}
.work_pickUp_4col a:hover .network,
.work_PJlist_3col a:hover .network,
.work_pickUp_3col a:hover .network,
.work_PJlist a:hover .network {
  opacity: 0.7;
}

.view_more {
  margin-bottom: -2px;
}
.view_more a,
.work_PJlist .detail span {
  display: inline-block;
  background: url(img/common/arrow_retangle.png) no-repeat 0 center;
  padding-left: 24px;
}
.view_more a {
  margin-top: 9px;
  padding-top: 2px;
}

/* BX Slider */
.bx-wrapper {
  position: relative;
  margin: 0 auto;
  padding: 0;
  *zoom: 1;
  -ms-touch-action: pan-y;
  touch-action: pan-y;
}
.work_pickUp_3col .bx-viewport {
  margin-bottom: 4px;
}
.bx-wrapper .bx-pager:after {
  content: "";
  display: table;
  clear: both;
}
.bx-wrapper .bx-pager-item,
.bx-wrapper .bx-controls-auto .bx-controls-auto-item {
  display: inline-block;
  *zoom: 1;
  *display: inline;
}
.work_pickUp_3col .bx-wrapper .bx-prev {
  left: -26px;
  background: url(img/common/work_controls.png) no-repeat 0 0;
}
.work_pickUp_3col .bx-wrapper .bx-next {
  right: -26px;
  background: url(img/common/work_controls.png) no-repeat -14px 0;
}
.work_pickUp_3col .bx-wrapper .bx-controls-direction a {
  display: inline-block;
  position: absolute;
  top: 50%;
  margin-top: -13px;
  outline: 0;
  width: 14px;
  height: 26px;
  text-indent: -9999px;
  z-index: 999;
}
.bx-wrapper .bx-controls-direction a:hover {
  opacity: 0.7;
}

/* Work carousel */
.work_pickUp_3col .box .inner {
  display: block;
  padding: 20px;
  border: 1px solid #b4b4b4;
}
.work_pickUp_3col .blk_ttl h2 span {
  font-size: 22px;
  position: relative;
  top: 3px;
  font-weight: bold;
}


/* Common News */
.news .blk_ttl {
  margin-bottom: 26px;
}
.news .scroll-pane {
  width: 100%;
  height: 230px;
  overflow: auto;
}
.news .list_news {
  padding-right: 20px;
}
.news .list_news li {
  border-bottom: 1px dotted #ccc;
  padding: 15px 0;
}
.news .list_news li:first-child {
  padding-top: 0;
}
.news .list_news li:last-child {
  border-bottom: none;
}
.news .list_news time {
  color: #666;
  font-size: 13px;
}
.news .list_news .cat {
  display: inline-block;
  margin: 0 7px;
  position: relative;
  top: -1px;
  vertical-align: middle;
}
.news .list_news a {
  font-size: 15px;
  display: inline-block;
  vertical-align: middle;
  line-height: 1;
}

/* NETWORK NEWS */
.news.network_news .scroll-pane {
  height: 190px;
}
.network_news {
  background: #fafafa;
  padding-left: 16px;
}
.news.network_news .list_news li:first-child {
  padding-top: 15px;
}

/* NETWORK PROF */
.network_prof h4 {
  font-size: 18px;
  font-weight: bold;
  margin: -6px 0 12px;
}

/* NETWORK MAP */
.network_map {
  margin-top: -4px;
}
.network_map .google_map {
  width: 100%;
  height: 315px;
}
.network_map small {
  display: block;
  line-height: 1;
  margin: 0 0 -3px;
}
.network_map .view_full {
  color: #0000FF;
  font-size: 10px;
  display: inline-block;
  line-height: 1;
}

/* NETWORK ADDRESS */
.network_address {
  margin-top: -4px;
}
.network_address table th, 
.network_address table td {
  padding: 8px 16px;
  vertical-align: middle;
}
.network_address table th {
  width: 90px;
}


/* Entry checkout */
.btn_entry {
  position: fixed;
  right: 0;
  top: 166px;
  z-index: 9999;
}

/* Work search */
h4.title {
  line-height: 1;
  font-size: 18px;
  position: relative;
  margin-bottom: 10px;
  padding-left: 20px;
}
h4.title:before {
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 7px 6px 0;
  border-color: #333 transparent;
  position: absolute;
  top: 50%;
  left: 0;
  -webkit-transform: translateY(-50%);
  -moz-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
}
.block {
  margin-bottom: 20px;
}
.block2 {
  margin-bottom: 26px;
}
.work_search .block_ct {
  border: 1px solid #ccc;
  padding: 20px;
}
.work_search .list_check_il {
  line-height: 1;
}
.work_search .list_check_il li {
  display: inline-block;
  margin-right: 22px;
}
.work_search .list_check_il li:last-child {
  margin-right: 0;
}
.chk {
  position: absolute;
  z-index: -1000;
  left: -1000px;
  overflow: hidden;
  clip: rect(0 0 0 0);
  height: 1px;
  width: 1px;
  margin: -1px;
  padding: 0;
  border: 0;
}
.chk + .lbl_chk {
  padding-left: 22px;
  height: 16px;
  color: #333;
  display: inline-block;
  line-height: 16px;
  background-repeat: no-repeat;
  background-position: 0 0;
  font-size: 14px;
}
.lbl_chk {
  background-image: url(img/common/checkbox.png);
  z-index: 100;
  padding-top: 1px;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}
.chk:checked + .lbl_chk {
  background-image: url(img/common/checked.png);
}

.tabs li {
  float: left;
  margin-right: 2px;
  background-repeat: no-repeat;
  background-position: 0 0;
  font-size: 0;
  text-align: center;
  display: inline-block;
  cursor: pointer;
  position: relative;
}
.work_search .tabs li {
  width: 77px;
  height: 35px;
}
.work_search .tabs .tab_link1 {
  background-image: url(img/common/tab_01.png);
}
.work_search .tabs .tab_link2 {
  background-image: url(img/common/tab_02.png);
}
.work_search .tabs .tab_link3 {
  background-image: url(img/common/tab_03.png);
}
.tabs li.current{
  background-color: #333;
  background-position: 0 -36px;
  border-left: 1px solid #ccc;
  border-top: 1px solid #ccc;
  border-right: 1px solid #ccc;
}
.tabs li.current:after {
  content: "";
  width: 100%;
  height: 1px;
  position: absolute;
  background: #fff;
  bottom: -1px;
  left: 0;
}
.tab-content{
  display: none;
}
.tab-content.current{
  display: inherit;
}
.work_search .list_check_il li:last-child {
  margin-right: 0;
}
.work_search .programming li,
.work_search .area li,
.work_search .price li {
  margin-bottom: 20px;
}
.work_search .programming:last-child li,
.work_search .area li:last-child,
.work_search .price li:last-child {
  margin-bottom: 0;
}
.work_search .search_input {
  margin: 16px 0 20px;
  display: table;
  width: 100%;
  border: 1px solid #ccc;
}
.work_search .search_input .btn_search,
.work_search .search_input .form_control {
  display: table-cell;
  font-size: 14px;
}
.work_search .search_input .form_control {
  width: 566px;
}
.work_search .search_input .txt_input {
  border: none;
  line-height: normal;
  font-size: 14px;
  padding: 0 10px;
  display: block;
  width: 100%;
}
.work_search .search_input .btn_search {
  width: 140px;
  background: #fafafa;
  border: none;
  border-right: 1px solid #ccc;
  padding: 0;
  line-height: 36px;
  text-align: left;
  outline: none;
  cursor: pointer;
}
.work_search .search_input .btn_search i {
  display: inline-block;
  width: 38px;
  float: left;
  text-align: center;
}
.search_btn .btn {
  display: inline-block;
  border: none;
  background: none;
  margin: 0 2px;
  padding: 0;
  cursor: pointer;
}
.privacy_policy .btn_back {
  position: relative;
  top: 1px;
}


/* Checkout Work delete */
.ckout_table_delete table {
  margin-bottom: 4px;
}
table th, 
table td {
  border: 1px solid #ccc;
  padding: 14px 16px;
  vertical-align: middle;
  font-size: 14px;
  text-align: left;
} 
.ckout_table_delete table th {
  text-align: center;
}
.ckout_table_delete table thead th, 
.ckout_table_delete table thead td,
.ckout_table table thead th, 
.ckout_table table thead td {
  background: #fafafa;
}
.ckout_table_delete table th {
  padding: 0 !important;
}
.ckout_table_delete table td {
  width: 45.5%;
}
.ckout_table_delete table td a,
.ckout_table table td a {
  display: inline-block;
  line-height: 1.2;
}
.ckout_table table td {
  width: 50%;
}
.ckout_table_delete .search_btn {
  margin-top: 20px;
}
.search_btn a.btn_back {
  position: relative;
  top: 1px;
}


/* Privacy Policy */
.privacy_policy {
  border-top: 1px dotted #ccc;
  padding-top: 30px;
  margin-top: 26px;
}
.privacy_policy > h3 {
  font-size: 20px;
  text-align: center;
  font-weight: bold;
  line-height: 1;
  margin-bottom: 16px;
}
.privacy_policy .privacy_policy_content {
  height: 160px;/*320px; modified 2016.10.11 */
  overflow-y: scroll;
  border: 1px solid #ccc;
  padding: 20px;
}
.privacy_policy_content > ol > li {
  text-indent: -16px;
  padding-left: 16px;
}
.privacy_policy_content ol ol {
  padding-left: 32px;
}
.privacy_policy .privacy_btm {
  background: #fafafa;
  padding: 20px;
  margin-top: 20px;
}
.privacy_policy .privacy_btm .privacy_check {
  margin-bottom: 16px;
}


.privacy_policy .privacy_btm .fbutton {
  display: inline-block;
  background: #db0917;
  color: #fff;
  border: none;
  border-radius: 0;
  width: 200px;
  height: 30px;
  margin: 0 2px;
  font-size: 14px;
  font-weight: bold;
  position: relative;
  cursor: pointer;
}
.privacy_policy .privacy_btm a {
  position: relative;
  top: -1px;
  line-height: 32px;
}
.privacy_policy .privacy_btm button {
  line-height: 28px;
}
.privacy_policy .privacy_btm button:disabled {
  background: #b4b4b4;
  cursor: default;
}
.privacy_policy .privacy_btm button:after {
  content: "";
  width: 10px;
  height: 10px;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  position: absolute;
  right: 10px;
  top: 50%;
  -webkit-transform: translateY(-50%) rotate(45deg);
  -moz-transform: translateY(-50%) rotate(45deg);
  -ms-transform: translateY(-50%) rotate(45deg);
  transform: translateY(-50%) rotate(45deg);
}



/* Work sidebar */
.work_sidebar {
  margin-top: 26px;
}
.work_sidebar .boxes {
  margin-bottom: 26px;
}
.wrapper_dropdown > h4 {
  position: relative;
  width: 100%;
  height: 34px;
  line-height: 34px;
  padding: 0 10px 0 26px;
  background: #fafafa;
  border: 1px solid #ccc;
  cursor: pointer;
  outline: none;
  font-size: 15px;
}
.wrapper_dropdown > h4:after {
  content: "";
  width: 0;
  height: 0;
  position: absolute;
  left: 9px;
  top: 50%;
  margin-top: -2px;
  border-width: 5px 5px 0 5px;
  border-style: solid;
  border-color: #333 transparent;
}
.wrapper_dropdown .result {
  /*display: none;*/
  margin-top: 16px;
}
.work_sidebar .list_project h4 {
  line-height: 1.2;
  margin-bottom: 5px;
}
.work_sidebar .list_project .info p {
  color: #505050;
}
.price,
.cl_red {
  color: #db0917;
}
.work_sidebar .list_project .info .price {
  display: block;
  line-height: 1;
  margin-top: 2px;
}
.work_sidebar .list_project li {
  border-bottom: 1px dotted #ccc;
  padding: 15px 0;
}
.work_sidebar .list_project li a {
  display: block;
}
.work_sidebar .list_project li:first-child {
  padding-top: 0;
}
.work_sidebar .list_project li:last-child {
  padding-bottom: 0;
  border-bottom: none;
}

.work_sidebar_selected .wrapper_dropdown .result {
  display: block;
}
.cart_footer a {
  display: block;
  background: #333;
  color: #fff;
  text-align: center;
  font-size: 15px;
  font-weight: bold;
  padding: 4px 0 3px;
  position: relative;
  margin-top: 16px;
}
.cart_footer a:after {
  content: "";
  width: 10px;
  height: 10px;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  position: absolute;
  right: 10px;
  top: 50%;
  -webkit-transform: translateY(-50%) rotate(45deg);
  -moz-transform: translateY(-50%) rotate(45deg);
  -ms-transform: translateY(-50%) rotate(45deg);
  transform: translateY(-50%) rotate(45deg);
}


/* Work Tag */

.work_tag li {
  display: inline-block;
}
.work_tag li span {
  display: block;
  line-height: 1;
  color: #fff;
  padding: 5px 10px 3px;
  -webkit-border-radius: 12px;
  border-radius: 12px;
  position: relative;
}
.work_tag li span:after {
  content: "";
  width: 0;
  height: 0;
  position: absolute;
  left: 50%;
  margin-left: -5px;
  border-style: solid;
  border-width: 5px 5px 0;
  bottom: -5px;
}
.work_tag li .zuiji {
  background: #339933;
}
.work_tag li .zuiji:after {
  border-color: #339933 transparent;
}
.work_tag li .new {
  background: #ff9900;
}
.work_tag li .new:after {
  border-color: #ff9900 transparent;
}
.work_tag li .osusume {
  background: #ff5066;
}
.work_tag li .osusume:after {
  border-color: #ff5066 transparent;
}



/* Fair Sidebar & aboutengineer sidebar */
.fair_sidebar,
.service_sidebar,
.box_category {
  margin-top: 16px;
}
.box_category.company_sidebar {
  margin-top: 26px;
}
#nav_left .menu li {
  display: block;
}
#nav_left .menu li.banner a{
  border-top: none;
  padding: 3px 0 3px 10px;
}
#nav_left .menu li.banner_last a{
  padding-bottom: 10px;
}
.box_category ul li {
  margin: 2px 0;
}
#nav_left .menu li a {
  display: block;
  border-top: 1px solid #ccc;
  padding: 8px 0;
  padding-left: 10px;
}
/*#nav_left .menu > li > a:hover,*/
#nav_left .menu > li.opened > a {
  color: #db0917;
}
/*#nav_left .submenu li a:hover,*/
#nav_left .submenu li.active a,
#nav_left .submenu li a.active-middle,
/*.box_category li a:hover,*/
.box_category li.active a {
  color: #fff;
  background: #333;
}
#nav_left .submenu li a:hover,
.box_category li a:hover {
  background: #ebebeb;
  color: #333;
}
#nav_left .menu > li > a {
  font-size: 15px;
}
#nav_left .menu > li > a,
.box_category li a {
  position: relative;
}
.box_category li a {
  padding: 4px 10px 4px 18px;
  display: block;
  line-height: 1.3;
  font-size: 13px;
}
#nav_left .menu > li > .parent:before, 
#nav_left .menu > li > .parent:after {
  content: "";
  width: 0;
  height: 0;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  -moz-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  right: 10px;
  border-style: solid;
  border-color: #505050 transparent;
}
#nav_left .menu > li > .parent:before {
  margin-top: -4px;
  border-width: 0 5px 5px;
}
#nav_left .menu > li > .parent:after {
  margin-top: 4px;
  border-width: 5px 5px 0;
}
.submenu {
  display: none;
}
#nav_left .submenu li a {
  font-size: 12px;
  padding: 4px 4px 4px 18px;
  position: relative;
  border-top: none;
}
#nav_left .menu > li:first-child > a {
  border-top: none;
}
#nav_left .submenu li:last-child {
  padding-bottom: 16px;
}
#nav_left .submenu .submenu li a {
  padding-left: 28px;
}
#nav_left .submenu .submenu li a:hover,
#nav_left .submenu .submenu li a:active {
  /*color: #333;*/
}
/*#nav_left .submenu li a:hover:before, */
#nav_left .submenu li.active a:before,
#nav_left .submenu a.active-middle:before,
/*.box_category li a:hover:before, */
.box_category li.active a:before {
  border-color: #fff;
}

#nav_left .submenu li:hover a:before,
.box_category .submenu li:hover a:before {
  /*border-color: #333;*/
}
.box_category li a:before,
#nav_left .submenu li a:before {
  content: "";
  width: 5px;
  height: 5px;
  border-top: 2px solid #333;
  border-right: 2px solid #333;
  position: absolute;
  left: 6px;
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
}
#nav_left .submenu li a:before {
  top: 9px;
}
.box_category li a:before {
  top: 8px;
}
#nav_left .submenu .submenu li a:before {
  left: 16px;
}
#nav_left .submenu li .parent:after {
  content: "";
  width: 12px;
  height: 12px;
  position: absolute;
  background: url(img/common/cm_ico_plus.png) no-repeat 0 0;
  margin-left: 4px;
}
#nav_left .submenu li.opened .parent:after {
  background-image: url(img/common/cm_ico_minus.png);
}
#nav_left .menu > li:last-child > a {
  border-bottom: 1px solid #ccc;
}
#nav_left .menu > li:last-child{
  margin-bottom: 80px;
}
#nav_left .menu > li.opened > a.parent {
  border-bottom: none !important;
}

.box_category .catagories_ttl {
  font-size: 15px;
  font-weight: bold;
  color: #db0917;
  margin: 22px 0 8px;
}


/* 2020 独立ガイドリニューアル
*********************************************/
#nav_left .menu > .ranking{
  margin-bottom: 30px;
}
#nav_left .menu > .ranking > a,
.guide_footer .ranking > a{
  display: flex;
  font-size: 12px;
  align-items: center;
  border: none;
  margin-left: 10px;
  padding-left: 0;
}
.guide_footer .ranking > a{
  margin-left: 0;
}
#nav_left .menu > .ranking > a ~ a,
.guide_footer .ranking > a ~ a{
  border-top: solid 1px #eee;
}
#nav_left .menu > .ranking > a > .mini_eyecatch{
  width: 65px;
  height: 60px;
  margin-right: 5px;
  position: relative;
}
.guide_footer .ranking > a > .mini_eyecatch{
  width: 60px;
  height: 60px;
  margin-right: 5px;
  position: relative;
}
#nav_left .menu > .ranking > a > .mini_eyecatch img,
.guide_footer .ranking > a > .mini_eyecatch img{
  max-width: 60px;
  max-height: 60px;
}
#nav_left .menu > .ranking > .raning_period{
  font-size: 12px;
  padding-left: 10px;
}
#nav_left .menu > .ranking > .ranking_ttl{
  font-size: 16px;
  letter-spacing: .1em;
  font-weight: bold;
  padding-left: 10px;
}
.guide_footer .ranking > .ranking_ttl{
  font-size: 18px !important;
  letter-spacing: .1em;
  font-weight: bold;
  margin-bottom: 0 !important;
}
.guide_footer .newpost{
  margin-top: 30px;
}
.guide_footer .newpost > .ranking_ttl{
  margin-bottom: 10px !important;
}
.guide_footer .newpost a{
  font-size: 16px;
}
.guide_footer .popularpost a ~ a,
.guide_footer .newpost a ~ a{
  padding-top: 15px;
}
#nav_left .menu > .popularpost > a > .mini_eyecatch::after,
.guide_footer .popularpost > a > .mini_eyecatch::after{
  content: '';
  display: block;
  width: 14px;
  height: 14px;
  background: #000;
  border-top: solid 1px #fff;
  border-left: solid 1px #fff;
  color: #fff;
  text-align: center;
  font-weight: bold;
  font-size: 10px;
  line-height: 14px;
  position: absolute;
  bottom: 0;
  right: 0;
}
#nav_left .menu > .popularpost > a:nth-of-type(1) > .mini_eyecatch::after,
.guide_footer .popularpost > a:nth-of-type(1) > .mini_eyecatch::after{
  content: '1';
  background: #ffad0d;
}
#nav_left .menu > .popularpost > a:nth-of-type(2) > .mini_eyecatch::after,
.guide_footer .popularpost > a:nth-of-type(2) > .mini_eyecatch::after{
  content: '2';
  background: #ffad0d;
}
#nav_left .menu > .popularpost > a:nth-of-type(3) > .mini_eyecatch::after,
.guide_footer .popularpost > a:nth-of-type(3) > .mini_eyecatch::after{
  content: '3';
  background: #ffad0d;
}
#nav_left .menu > .popularpost > a:nth-of-type(4) > .mini_eyecatch::after,
.guide_footer .popularpost > a:nth-of-type(4) > .mini_eyecatch::after{
  content: '4';
}
#nav_left .menu > .popularpost > a:nth-of-type(5) > .mini_eyecatch::after,
.guide_footer .popularpost > a:nth-of-type(5) > .mini_eyecatch::after{
  content: '5';
}

#nav_left .menu > .newpost > a.new > .mini_eyecatch::after,
.guide_footer .newpost > a.new > .mini_eyecatch::after{
  content: 'NEW';
  display: block;
  width: 100%;
  height: 15px;
  background: #dd0915;
  color: #fff;
  text-align: center;
  font-weight: bold;
  font-size: 10px;
  line-height: 15px;
  position: absolute;
  top: 0;
}
.guide_footer .category-list{
  display: flex;
  flex-flow: wrap;
  margin-top: 30px;
}
.guide_footer .category-list p{
  width: 100%;
}
#nav_left .menu > .category-list a ~ a,
.guide_footer .category-list a ~ a{
  border: none;
}
#nav_left .menu > .category-list a{
  font-size: 14px;
}
.guide_footer .category-list a{
  width: 50%;
  font-size: 16px;
  padding: 5px 0;
  margin-top: 5px;
}
#nav_left .menu > .category-list a span,
.guide_footer .category-list a span{
  display: inline-block;
  width: 23px;
  margin-right: 10px;
  text-align: center;
}
.guide_footer .tag-list{
  margin-top: 30px;
  margin-bottom: 60px;
}
#nav_left .menu > .tag-list a,
.guide_footer .tag-list a{
  display: inline-block;
  border: solid 1px #ccc !important;
  border-radius: 25px;
  padding: 5px 10px;
  margin-top: 5px;
  font-size: 12px;
}
#nav_left .menu > .tag-list a img,
.guide_footer .tag-list a img{
  margin-right: 5px;
  vertical-align: middle;
}
.guide_footer .tag-list a ~ a{
  margin-left: 10px;
}

/* Fair Step */
.flow {
  position: relative;
  color: #505050;
  text-align: center;
}
.flow.bg1 .box_left, 
.flow.bg1 .box_right {
  background: #fdfffb;
  border: 1px solid #ccc;
  min-height: 215px;
}
.flow.bg2 .box_left, 
.flow.bg2 .box_right {
  background: #fcfdff;
  min-height: 230px;
}
.flow.bg3 .box_left, 
.flow.bg3 .box_right {
  min-height: 220px;
}
.flow .box_left {
  float: left;
  width: 272px;
  border: 1px solid #ccc;
}
.flow .box_right {
  width: 400px;
  float: right;
  border: 1px solid #ccc;
}
.flow .box_arrow {
  width: 35px;
  position: absolute;
  left: 274px;
  top: 50%;
  padding-top: 35px;
  vertical-align: bottom;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
}
.flow h5 {
  padding: 7px 0;
  border-bottom: 1px solid #ccc;
}
.flow .wrapp {
  padding: 20px 16px 16px;
}
.flow .wrapp .item {
  float: left;
  margin-right: 16px;
  width: 111px;
  position: relative;
}
.flow .wrapp .item:after {
  content: "";
  display: block;
  width: 16px;
  height: 100%;
  top: 7px;
  right: -16px;
  background: url(img/common/arrow_step.png) no-repeat 0 center;
  position: absolute;
}
.flow .wrapp .item:last-child {
  margin-right: 0;
}
.flow .wrapp .item:last-child:after {
  display: none;
}
.flow .item .thumb {
  margin: 6px 0;
}
.flow .item .tit {
  line-height: 1.3;
}
.flow .item .tit span {
  display: block;
  font-size: 12px;
}


/* Pagination */
.pagination {
  text-align: center;
}
.pagination .pager {
  display: inline-block;
  font-size: 16px;
}
.pagination .pager li {
  display: inline;
  height: 30px;
  line-height: 30px;
}
.pagination .pager li a {
  float: left;
  height: 30px;
  line-height: 30px;
}
.pagination .pager .pager_item a, 
.pagination .pager .pager_current a, 
.pagination .pager .pager_ellipsis a {
  padding: 0 8px;
}
.pagination .pager a:hover,
.pagination .pager .pager_current a {
  color: #db0917;
}
.pagination .pager .pager_last a {
  margin-left: 2px;
}
.pagination .pager .pager_first a {
  margin-right: 2px;
}
.pagination .pager .pager_prev a {
  margin-right: 16px;
}
.pagination .pager .pager_next a {
  margin-left: 16px;
}

/* MERIT 4 COLUMN */
.merit_4col,
.merit_5col {
  text-align: center;
}
.merit_4col:after,
.merit_5col:after {
  content: "";
  display: table;
  clear: both;
}
.merit_4col .box,
.merit_5col .box {
  float: left;
  margin-right: 4px;
  border: 1px solid #ccc;
  width: 174px;
}
.merit_5col .box {
  width: calc(20% - 4px);
}
.merit_4col .box:last-child {
  margin-right: 0;
  width: 176px;
}
.merit_5col .box:last-child {
  width: 20%;
  margin-right: 0;
}
.merit_4col .box > a {
  display: block;
  padding: 20px;
}
.merit_5col .box > a {
  padding: 10px;
}
.merit_4col .thumb,
.merit_5col .thumb {
  margin-bottom: 10px;
}
.merit_4col h3,
.merit_5col h3 {
  font-size: 17px;
  margin-bottom: 15px;
  line-height: 1.2;
  letter-spacing: -0.03em;
}
.merit_4col.fixed_ttl h3,
.merit_5col.fixed_ttl h3 {
  min-height: 60px;
}
.merit_4col .detail,
.merit_5col .detail {
  margin-bottom: 10px;
}
.merit_4col .ttl_pink h3,
.merit_5col .ttl_pink h3 {
  color: #f06650;
}
.merit_4col .ttl_blue h3,
.merit_5col .ttl_blue h3 {
  color: #1e66cc;
}
.merit_4col .ttl_orange h3,
.merit_5col .ttl_orange h3 {
  color: #ff8200;
}
.merit_4col .ttl_green h3,
.merit_5col .ttl_green h3 {
  color: #33a014;
}


/* GUIDE CONTENT */
.guide_content .point {
  margin-bottom: 10px;
}
.guide_content .point li {
  font-size: 18px;
  font-weight: bold;
  margin-bottom: 4px;
}
.guide_content .point li:last-child {
  margin-bottom: 0;
}
.guide_content .bdb_n.bdt_n.box_gray {
  padding: 15px 16px;
}
.guide_content .bdb_n.bdt_n.box_gray p {
  margin-bottom: 10px;
}
.guide_content .objective .thumb_left {
  float: left;
  width: 200px;
  margin-right: 5px;
}
.guide_content .objective .box_gray {
  float: left;
  width: 505px;
}


/* COMPANY_LIST */
.company_list {
  padding: 20px;
  border: 1px solid #ccc;
  margin-bottom: 20px;
}
.company_list ul li {
  margin-bottom: 10px;
}
.company_list ul li:last-child {
  margin-bottom: 26px;
}
.company_list .founded {
  font-size: 12px;
  margin-bottom: 8px;
}

/* COMPANY CONTENTS */
.company_contents .box {
  margin-bottom: 4px;
}
.company_contents .inner .head_box {
  font-size: 18px;
  display: table;
  width: 100%;
}
.company_contents .box .inner {
  position: relative;
}
.company_contents .box .inner .detail {
  position: absolute;
  width: 100%;
  left: 0;
  bottom: 20px;
}
.company_contents .inner .hometext {
  margin: 15px 0;
}
.company_contents .box .h1 {
  min-height: 155px;
}
.company_contents .box .h2 {
  min-height: 178px;
}
.company_contents .box .h3 {
  margin-bottom: -4px;
  min-height: 200px;
}
.company_contents .inner.h3 .head_box h4 {
  height: 50px;
  display: table-cell;
  vertical-align: middle;
}



/* BTN SERVICE */
.btn_service {
  position: relative;
  text-align: center;
}
.btn_service a {
  display: block;
  background: #333;
}
.btn_service .prev_post, 
.btn_service .next_post {
  position: absolute;
  top: 0;
}
.btn_service .top_post {
  width: auto;
  margin-left: 80px;
  margin-right: 80px;
}
.btn_service .next_post {
  right: 0;
}
.btn_service .prev_post {
  left: 0;
}

/* Service 2/3 column */
.contents_box .row {
  margin-left: -2px;
  margin-right: -2px;
  display: table;
  width: 100%;
}
.contents_box .row .box {
  display: table-cell;
  text-align: center;
  font-size: 18px;
  position: relative;
  vertical-align: middle;
}
.contents_box .row .box_top {
  display: table-cell;
  text-align: center;
  font-size: 18px;
  position: relative;
  vertical-align: top;
}
.service_3col .row .box {
  width: 33.3333%;
}
.service_2col .row .box {
  width: 50%;
}
.contents_box .hidden {
  height: 0;
}
.contents_box .row .inner {
  padding: 20px;
  line-height: 1.3;
}
.contents_box .inner:after {
  content: "";
  width: auto;
  height: auto;
  position: absolute;
  left: 2px;
  top: 2px;
  right: 2px;
  bottom: 2px;
  border: 1px solid #ccc;
}
.contents_box .row .inner h4 {
  margin-bottom: 16px;
  line-height: 1;
}
.contents_box .row .inner span.comment {
  font-size: 14px;
}
.contents_box .row .inner p {
  font-size: 14px;
}


/* FOOTER
==================================================== */
.role_footer {
  border-bottom: 2px solid #db0917;
}
/* Partners */
.partners {
  height: 60px;
}
.partners ul {
  display: flex;
  justify-content: center;
  width: 700px;
  margin: 0 auto;
}
.partners ul li {
  float: left;
  width: 165px;
  margin: 0 5px;
}

.logo_btm {
  margin-bottom: 26px;
}
.nav_btm .box_menu {
  float: left;
  margin-right: 30px;
}
.nav_btm .box_menu .block_menu:last-child {
  margin-bottom: 0;
}
.nav_btm .box_menu:last-child {
  margin-right: 0;
}
.nav_btm .block_menu {
  margin-bottom: 30px;
}
.nav_btm .block_menu h4 {
  font-size: 15px;
  color: #db0917;
  margin-bottom: 12px;
  font-weight: bold;
}
.nav_btm .block_menu ul {
  font-size: 12px;
}
.nav_btm .block_menu ul.multi_line li {
  line-height: 1.3;
}
.nav_btm .box_menu_03 {
  width: 200px;
}
.nav_btm .box_menu_04 .block_menu ul {
  font-size: 13px;
}
.nav_btm .box_menu_04 .txt_small ul {
  font-size: 12px;
}
.nav_btm .block_menu ul li {
  line-height: 1;
  margin-bottom: 6px;
}
.nav_btm .block_menu ul li .multi_line{
  line-height: 1.3;
}
.nav_btm .box_menu_04 .block_menu ul li {
  margin-bottom: 16px;
}
.nav_btm .box_menu_04 .txt_small ul li{
  margin-bottom: 6px;
}
.nav_accordion .submenu {
  display: none;
  margin-top: 6px;
  padding-left: 10px;
}
.nav_btm .nav_accordion .parent,
#nav .submenu .parent span {
  display: inline-block;
  background: url(img/common/cm_ico_plus.png) no-repeat right center;
  padding-right: 16px;
}
.nav_btm .nav_accordion .opened .parent,
#nav .submenu .opened .parent span {
  background-image: url(img/common/cm_ico_minus.png);
}


.role_footer .footer_btm {
  padding-top: 16px;
  padding-bottom: 20px;
}
.footer_btm .certificate {
  float: left;
  display: flex;
  align-items: center;
  width: calc(100% - 750px);
}
/*
.footer_btm .certificate .thumb1 {
  float: left;
}
*/
.footer_btm .certificate .thumb3 img{
  margin-left: 10px;
}
.footer_btm .footer_r {
  float: right;
  margin-top: 4px;
}

.footer_btm .footer_r h4 {
  margin-bottom: 26px;
}
.footer_btm .hnav, 
.footer_btm .hnav li,
.footer_btm .social,
.footer_btm .social li {
  display: inline-block;
}
.footer_btm .hnav {
  margin-top: 15px;
  margin-right: 5px;
}
.footer_btm .hnav li {
  line-height: 1;
  border-left: 1px solid #ccc;
  padding: 0 7px;
  font-size: 12px;
}
.footer_btm .hnav li:first-child {
  border-left: none;
}
.footer_btm .social li {
  margin-left: 5px;
}
.footer_btm .copyright {
  font-size: 12px;
  color: #666;
  margin-top: 20px;
  text-align: center;
}
@media screen and (max-width: 1025px) {
  #main {
    /* padding-top: 110px; */
    padding-top: 80px;
  }
  header#header {
  border-bottom: none;
  }
  .btn_menu,
  .btn_close {
  color: #333 !important;
  border: 1px solid #db0917;
  -webkit-border-radius: 5px;
  border-radius: 5px;
  font-size: 12px;
  font-weight: bold;
  width: 70px;
  height: 30px;
  text-align: center;
  line-height: 30px;
  }
  .btn_menu {
  position: absolute;
  right: 10px;
  top: 10px;
  }
  .btn_menu small {
    margin-top: 0 !important;
    display: block;
    font-size: 12px;
  }
  .btn_menu .icon {
  display: inline-block;
  position: relative;
  top: 0.04em;
  margin-right: 5px;
  }
  .btn_menu .icon i {
  display: block;
  width: 12px;
  height: 2px;
  background: #db0917;
  margin-bottom: 2px;
  }
  .btn_menu .icon i:last-child {
  margin-bottom: 0;
  }
  .btn_menu small {
  display: inline-block;
  }
  /* btn menu close */
  .btn_menu.close .icon i:last-child {
  display: none;
  }
  .btn_menu.close .icon {
  margin-right: 0;
  }
  .btn_menu.close .icon i {
  width: 16px;
  background: #333;
  -webkit-border-radius: 1px;
  border-radius: 1px;
  margin: 0;
  }
  .btn_menu.close .icon i:nth-child(1) {
  -webkit-transform: translateY(-2px) rotate(45deg);
  transform: translateY(-2px) rotate(45deg);
  }
  .btn_menu.close .icon i:nth-child(2) {
  -webkit-transform: translateY(-4px) rotate(-45deg);
  transform: translateY(-4px) rotate(-45deg);
  }

  /* NAV */
  .role_header .main_nav {
  float: none;
  display: none;
  text-align: left;
  margin: 0;
  position: fixed;
  z-index: 9999;
  width: 100%;
  left: 0;
  top: 43px;
  padding-top: 5px;
  padding-left: 10px;
  padding-right: 10px;
  height: 100%;
  overflow-y: scroll;
  }
  #nav .nav_wrapp {
  background: #fff;
  border: 2px solid #333;
  position: relative;
  margin-bottom: 43px;
  }
  #nav .menu {
  height: auto;
  }
  #nav .nav_wrapp:before {
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0 5px 5px;
  border-color: #333 transparent;
  position: absolute;
  top: -7px;
  z-index: 99999;
  right: 50px;
  }
  #nav .menu li {
  display: block;
  margin-left: 0;
  }
  #nav .menu li a {
  height: 30px;
  border-bottom: 1px solid #333;
  line-height: 30px;
  padding: 0 10px;
  }
  #nav li a:hover,
  #nav li a:active {
  color: #db0917;
  }
  #nav .submenu li a:hover,
  #nav .submenu li a:active {
  color: #fff;
  background: #333;
  }
  #nav .submenu li a.parent:before, 
  #nav .submenu li a.parent:before {
    border-color: #333 !important;
  }
  #nav .menu > li > a {
  font-size: 15px;
  position: relative;
  }
  #nav .submenu li .parent {
  color: #333 !important;
  background: none !important;
  }
  #nav .menu > li > .parent:before, 
  #nav .menu > li > .parent:after {
  content: "";
  width: 0;
  height: 0;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  -moz-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  right: 10px;
  border-style: solid;
  border-color: #505050 transparent;
  }
  #nav .menu > li > .parent:before {
  margin-top: -4px;
  border-width: 0 5px 5px;
  }
  #nav .menu > li > .parent:after {
  margin-top: 4px;
  border-width: 5px 5px 0;
  }
  #nav .submenu li a {
  padding-left: 20px;
  font-size: 11px;
  border-color: #ccc;
  position: relative;
  }
  #nav .submenu > li:last-child > a {
  border-color: #333;
  }
  #nav .submenu > li:last-child > a.submenu_child {
    border-color: #ccc;
  }
  #nav .submenu .submenu > li:last-child > a {
  border-color: #ccc;
  }
  #nav .submenu .submenu li a {
  padding-left: 30px;
  }
  #nav .submenu .submenu li a:hover,
  #nav .submenu .submenu li a:active {
  /*color: #333;*/
  }
  #nav .submenu li a:hover:before, 
  #nav .submenu li a:active:before {
    border-color: #fff;
  }
  #nav .submenu li a:before {
  content: "";
  width: 5px;
  height: 5px;
  border-top: 1px solid #333;
  border-right: 1px solid #333;
  position: absolute;
  left: 10px;
  top: 50%;
  -webkit-transform: translateY(-50%) rotate(45deg);
  -moz-transform: translateY(-50%) rotate(45deg);
  -ms-transform: translateY(-50%) rotate(45deg);
  transform: translateY(-50%) rotate(45deg);
  }
  #nav .submenu .submenu li a:before {
  left: 20px;
  }
  .btn_close {
  font-size: 12px;
  display: inline-block;
  margin: 25px 0;
  }
  .btn_close i {
  font-size: 16px;
  display: inline-block;
  margin-right: 1px;
  vertical-align: middle;
  font-style: normal;
  position: relative;
  top: -2px;
  }
  article#content,
  #content_right,
  aside#sidebar,
  #sidebar_left {
  float: none;
  margin-left: 0;
  margin-right: 0;
  width: auto;
  padding: 0;
  border: none;
  }
  #sidebar_left {
    display: none !important;
  }
  .breadcolumn {
  font-size: 10px;
  }
  .btn_entry {
  color: #fff !important;
  text-align: center;
  font-size: 14px;
  background: #db0917;
    /*padding: 4px 0 2px;
  position: static;*/
    padding: 0;
    height: 39px;
    line-height: 39px;
    position: fixed;
    width: 100%;
    top: 62px;
    z-index: 500;
  }
  .btn_entry span {
    display: inline-block;
    /* background: url(img/common/logo_white.png) no-repeat right center; */
    background-size: 18px auto;
    padding-right: 18px;
    padding-left: 18px;
    position: relative;
  }
  .btn_entry span:after {
  content: "";
  width: 6px;
  height: 6px;
  border-top: 1px solid #fff;
  border-right: 1px solid #fff;
  display: block;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%) rotate(45deg);
  -moz-transform: translateY(-50%) rotate(45deg);
  -ms-transform: translateY(-50%) rotate(45deg);
  transform: translateY(-50%) rotate(45deg);
  left: 0;
  }
  .block2 {
  margin-bottom: 20px;
  }

  /* work_pickUp_4col */
  .network {
  margin-bottom: 12px;
  }
  .network span,
  .work_pickUp_4col .info .price,
  .work_PJlist_3col .info .price,
  .work_pickUp_3col .info .price {
  font-size: 12px;
  }
  .work_pickUp_4col h3 {
  min-height: 40px;
  }
  .work_pickUp_4col h3,
  .work_PJlist_3col h3,
  .work_PJlist h3 {
  font-size: 14px;
  }
  .work_pickUp_3col h3 {
  font-size: 14px;
  min-height: 34px;
  }
  .work_pickUp_4col .info,
  .work_PJlist_3col .info,
  .work_PJlist .info {
  margin-bottom: 10px;
  }
  .work_pickUp_4col .info p,
  .work_PJlist_3col .info p,
  .work_pickUp_3col .info p {
    white-space: nowrap;
    text-overflow: ellipsis;
    overflow: hidden;
  }
  .work_pickUp_3col .box .inner {
  padding: 10px;
  }
  .work_pickUp_3col .blk_ttl h2 span {
    font-size: 16px;
    top: 2px;
    vertical-align: top;
  }

  .view_more a {
    padding-left: 20px;
    margin-top: 5px;
    font-size: 12px;
    -webkit-background-size: 15px auto;
    background-size: 15px auto;
  }
  .work_pickUp_3col .bx-wrapper .bx-prev {
  left: -8px;
  }
  .work_pickUp_3col .bx-wrapper .bx-next {
  right: -8px;
  }

  /* news common */
  .news .blk_ttl {
  margin-bottom: 15px;
  }
  .main_block .box_news_l {
  margin-bottom: 20px;
  }
  .news .list_news li {
  padding: 10px 0;
  }
  .news .list_news a {
  display: block;
  font-size: 13px;
  line-height: 1.4;
  margin-top: 4px;
  }
  .news .list_news time {
  font-size: 12px;
  }

  /* Slide 2 button */
  .side_2btn li img {
    width: 100%;
    height: auto;
  }

  /* Work search */
  .work_search .block_ct {
    padding: 10px;
  }
  .work_search h4.title {
  font-size: 15px;
  padding-left: 16px;
  }
  .work_search .list_check_il li {
    display: block;
    margin-right: 0;
    margin-bottom: 10px;
  }
  .work_search .programming,
  .work_search .area li {
    margin-bottom: 10px;
  }
  .work_search .list_check_il li:last-child,
  .work_search .programming:last-child,
  .work_search .programming:last-child li:last-child {
  margin-bottom: 0;
  }
  .work_search .programming:last-child li {
  margin-bottom: 10px;
  }
  .chk + .lbl_chk {
  height: auto;
    display: block;
  }
  .work_search .search_input {
  display: block;
  position: relative;
  height: 30px;
  }
  .work_search .search_input .btn_search, 
  .work_search .search_input .form_group {
    display: block;
    height: 28px;
    font-size: 12px;
  }
  .work_search .search_input .btn_search {
  line-height: 28px;
  width: 110px;
  position: absolute;
  left: 0;
  top: 0;
  }
  .work_search .search_input .btn_search i {
  width: 30px;
  padding: 0 5px 0 10px;
  }
  .work_search .search_input .form_control {
    display: block;
    width: 100%;
    padding-left: 110px;
  }
  .work_search .search_input .txt_input {
  font-size: 12px;
    display: block;
    height: 28px;
    width: 100%;
  }
  .search_btn .btn_submit {
    margin-top: 10px;
  }

  .ckout_table_delete table td {
    width: 44%;
  }
  table th, 
  table td {
  padding: 8px;
  font-size: 12px;
  }
  .ckout_table_delete .search_btn {
    margin-top: 5px;
  }
  .privacy_policy {
    padding-top: 20px;
    margin-top: 20px;
  }
  .privacy_policy > h3 {
  font-size: 16px;
  }
  .privacy_policy .privacy_policy_content {
  font-size: 12px;
  padding: 10px;
  }
  .privacy_policy_content ol ol {
    padding-left: 14px;
  }
  .privacy_policy .privacy_btm {
    background: #fafafa;
    padding: 10px;
    margin-top: 12px;
  }
  .privacy_policy .privacy_btm .privacy_check {
    margin-bottom: 10px;
    font-size: 12px;
  }
  .privacy_policy .privacy_btm button {
    margin-top: 8px !important;
  }


  /* Work tag */
  .work_tag li span {
    font-size: 12px;
    padding: 4px 8px 3px;
  }


  /* Fair Step */
  .flow .box_left, 
  .flow .box_right {
    min-height: 0 !important;
  }
  .flow .box_left,
  .flow .box_right {
    float: none !important;
    width: auto !important;
  }
  .flow .wrapp {
    padding: 10px 8px 8px;
  }
  .flow .wrapp .item {
    margin-right: 8%;
    width: 46%;
  }
  .flow .wrapp .item:nth-child(2n) {
    margin-right: 0 !important;
  }
  .flow .wrapp .item:after {
    right: -14% !important;
  }
  .flow .box_arrow {
    width: auto;
    position: static;
    padding: 5px 0;
    -webkit-transform: translateY(0);
    -moz-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0);
  }
  .flow .box_arrow img {
    -webkit-transform: translateY(0) rotate(90deg);
    -moz-transform: translateY(0) rotate(90deg);
    -ms-transform: translateY(0) rotate(90deg);
    transform: translateY(0) rotate(90deg);
  }
  .flow .box_right .item:last-child {
    float: right;
    margin-bottom: 0;
  }
  .flow .box_right .item {
    margin-bottom: 30px;
  }
  .flow .box_right .item:nth-child(2):after {
    height: 28px;
    top: auto !important;
    bottom: -30px;
    left: 50%;
    -webkit-transform: translateX(-50%) rotate(90deg);
    -moz-transform: translateX(-50%) rotate(90deg);
    transform: translateX(-50%) rotate(90deg);
  }

  /* Pagination */
  .pagination .pager {
    font-size: 12px;
  }
  .pagination .pager li {
    display: inline-block;
  }
  .pagination .pager li a {
    height: 20px;
    line-height: 20px;
  }
  .pagination .pager li a img {
    height: 20px;
  }
  .pagination .pager .pager_item a, 
  .pagination .pager .pager_current a, 
  .pagination .pager .pager_ellipsis a {
    padding: 0 4px;
    height: 30px;
    line-height: 30px;
  }
  .pagination .pager .pager_last a,
  .pagination .pager .pager_first a {
    margin: 0 !important;
  }
  .pagination .pager .pager_prev a {
    margin-right: 8px;
  }
  .pagination .pager .pager_next a {
    margin-left: 8px;
  }

  /* MERIT 4 COLUMN */
  .merit_4col {
    margin-left: -2px;
    margin-right: -2px;
  }
  .merit_4col .box {
    margin-right: 0;
    border: none;
    width: 50% !important;
    padding-left: 2px;
    padding-right: 2px;
    margin-bottom: 4px;
  }
  .merit_4col .box > a {
    padding: 8px;
    border: 1px solid #ccc;
  }
  .merit_4col .box h3 {
    font-size: 14px;
    margin-bottom: 8px;
  }
  .merit_4col .box .detail {
    margin-bottom: 5px;
  }
  .merit_4col.fixed_ttl a h3 {
    min-height: 50px;
  }

  
  /* GUIDE CONTENT */
  .guide_content .point li {
    font-size: 14px;
  }
  .guide_content .bdb_n.bdt_n.box_gray {
    padding: 10px;
    font-size: 12px;
  }
  .guide_content .bdb_n.bdt_n.box_gray p {
    margin-bottom: 8px;
  }
  .guide_content .objective .thumb_left,
  .guide_content .objective .box_gray {
    float: none !important;
    width: auto !important;
  }
  .guide_content .objective .thumb_left {
    margin-right: 0;
    text-align: center;
    margin-bottom: 4px;
  }

  /* COMPANY LIST SP */
  .company_list {
    padding: 10px;
    margin-bottom: 10px;
    font-size: 12px;
  }
  .company_list ul li {
    margin-bottom: 8px;
  }
  .company_list ul li:last-child {
    margin-bottom: 16px;
  }
  .company_list .founded {
    font-size: 10px;
    margin-bottom: 4px;
  }

  /* COMPANY CONTENT SP */
  .company_contents .layout_3wrap .box {
    width: 100%;
  }
  .company_contents .layout_3wrap .box .inner {
    height: auto !important;
    min-height: 0px !important;
  }
  .company_contents .inner .hometext {
    margin: 10px 0;
  }
  .company_contents .box .inner .detail {
    position: static;
  }
  .company_contents .inner .head_box {
    font-size: 15px;
  }
  .company_contents .layout_3wrap .box .inner.h3 {
    margin-bottom: 0;
  }
  .company_contents .layout_3wrap .box:last-child {
    margin-bottom: 0;
  }
  
  
  
  .btn_service .top_post {
    margin-left: 70px;
    margin-right: 70px;
  }
  .btn_service a img {
    height: 24px;
  }

  /* Service 2/3 column */
  .contents_box.service_3col .row {
    display: inline;
    width: auto;
  }
  .contents_box.service_3col .row .box {
    display: block;
    float: left;
  }
  .contents_box.service_3col .row .box {
    width: 50%;
  }
  .contents_box .row .box {
    font-size: 12px;
  }
  .contents_box .row .inner {
    padding: 10px;
  }
  
  .contents_box.box_line_sp .row .box {
    width: 100% !important;
    display: block;
  }
  .contents_box .row .inner h4 {
    margin-bottom: 10px;
    font-size: 14px;
  }
  .contents_box .row .inner p {
    font-size: 12px;
  }

  /* FOOTER */
  #footer .partners {
  height: auto;
  margin: 10px 0;
  }
  #footer .partners ul {
    width: auto;
    margin: 0 auto;
    margin-left: -5px;
    margin-right: -5px;
  }
  #footer .partners ul li {
    width: 33.333%;
    margin: 0;
    margin-bottom: 5px;
    margin-top: 5px;
    padding-left: 5px;
    padding-right: 5px;
  }
  #footer .partners ul li img {
  width: 100%;
  height: auto;
  }


  #footer .footer_btm {
  padding-top: 8px;
  padding-bottom: 30px;
  position: relative;
  }
  #footer .footer_btm .certificate {
  width: 34%;
  }
  #footer .footer_btm .footer_r {
  width: 66%;
  }
  #footer .certificate .thumb {
  float: left;
  }
  /*
  #footer .certificate .thumb1 {
  width: 45%;
  }
  #footer .certificate .thumb2 {
  width: 50%;
  }
  */
  
  #footer .footer_btm .footer_r h4 {
  display: inline-block;
  margin-bottom: 10px;
  width: 75%;
  }
  #footer .footer_btm .hnav {
    display: none;
  margin-left: 0;
  margin-right: 0;
  font-size: 6px;
  margin-bottom: 5px;
  }
  #footer .footer_btm .hnav li {
  font-size: 7px;
  margin-bottom: 3px;
  padding: 0 5px;
  }
  #footer .footer_btm .copyright {
  width: 100%;
  text-align: center;
  left: 0;
  bottom: 10px;
    font-size: 10px;
    padding-top: 60px;
  }


  .btn_menu {
    top: 25px !important;
  }

  .merit_5col .box,
  .merit_5col .box:last-child{
    width: 49%;
    margin: 10px 0 0;
  }
  .merit_5col .box:nth-child(2n){
    margin-left: 2%;
  }
}
.fairs-section{
  padding-bottom: 5px !important;
}


header .copy {
  width: 100%;
  background-color: #f0f0f0;
  color: #777;
}
header .copy h1 {
  width:980px;
  margin:0 auto;
  padding-left:10px;
  padding-right:10px;
  font-size:12px;
  height: 17px;
  overflow: hidden;
}
.role_header .main_nav {
  margin: 0 0 10px !important;
}

/* added 2016.11.07 */
form div.confirm {
  word-break: break-all;
}
/* added 2017.12.20 */
#nav .submenu .submenu li a{
  width: 100%;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}

/* added 2018.02.19 */
.role_header .main_nav .contact_client{
  margin-top: 10px;
}
.role_header .main_nav .contact_client a{
  position: relative;
}
.role_header .main_nav .contact_client a::before{
  content: "";
  width: 5px;
  height: 5px;
  border-top: 2px solid #333;
  border-right: 2px solid #333;
  position: absolute;
  top: 50%;
  transform: translateY(-50%) rotate(45deg);
  left: -12px;
}
.input_inline .wpcf7-list-item{
  width: auto;
  margin-right: 10px;
}

/* SNS */
.sns-share {
  float: right;
  margin-left: auto;
}
.sns-share li {
  display: inline-block;
  margin-left: 5px;
  line-height: 10px;
  vertical-align: middle;
}
.sns-share li.pocket {
  width: 90px;
}
@media screen and (max-width: 1025px){
  .sns-share{
    text-align: right;
    margin-bottom: 10px;
  }
}

/* 離脱対応 */
@media screen and (max-width: 1025px){
  body.entry_efo header{
    border: none;
    height: 45px;
    box-shadow: none;
  }
  body.entry_efo header #copy,
  body.entry_efo header .wrap{
    display: none;
  }
  body.entry_efo h2{
    display: none;
  }
  body.entry_efo footer{
    border: none;
    box-shadow: none;
  }
  body.entry_efo footer .container{
    display: none;
  }
}

/* エントリーフォーム - ボタンフッター固定
***************************/
@media screen and (min-width: 1026px){
.area_fixed{
  position: fixed;
  width: 100%;
  bottom: 0;
  left: 0;
  background: rgba(0,0,0, .6);
  padding: 30px 0;
}
.area_fixed .btn_back,
.fbutton{
  height: 52px !important;
}
.footer_padding{
  padding-bottom: 150px;
}
}
