@charset "utf-8";

@font-face {
  font-family: noto;
  font-style: normal;
  src: url("#{URL}font/noto_sub.otf");
}

body * {
  font-family: "メイリオ", sans-serif;
}

.font {
  font-family: "游明朝", "Yu Mincho", "游明朝体", "YuMincho",
    "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E",
    "ＭＳ Ｐ明朝", "MS PMincho";
}
/* solutions/**　下層6ページ向け */
.font-min {
  font-family: "游明朝", "Yu Mincho", "游明朝体", "YuMincho",
    "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E",
    "ＭＳ Ｐ明朝", "MS PMincho" !important;
}

.font.font--color_white {
  color: #fff;
}

html,
body {
  width: 100%;
  height: 100%;
  /* min-width: 1120px; */
  max-width: 100%;
}

#contents {
  margin-left: 240px;
  min-height: 780px;
}

footer {
  position: relative;
}

#toTop {
  position: absolute;
  top: 10px;
  right: 10px;
  cursor: pointer;
}

.fnav {
  padding-top: 70px;
  padding-bottom: 30px;
  background: #4e5250;
  overflow: hidden;
  padding-left: 3%;
}

.fnav-lists {
  float: left;
  width: 23%;
  min-height: 400px;
  border-left: 1px solid #424544;
  box-shadow: -1px 0 0 #747675;
  padding-left: 1%;
}

.fnav-list__link {
  margin-bottom: 32px;
}

.fnav-list__link a {
  font-size: 13px;
  text-decoration: none;
  font-weight: bold;
  color: #fff;
}

.fnav-list__link a:hover {
  text-decoration: underline;
}

.fnav-list__link.fnav-list__link-list dt,
.fnav-list__link.fnav-list__link-list--office dt,
.fnav-list__link.fnav-list__link-list dd,
.fnav-list__link.fnav-list__link-list--office dd {
  margin-bottom: 13px;
}

.fnav-list__link.fnav-list__link-list dd,
.fnav-list__link.fnav-list__link-list--office dd {
  padding-left: 1em;
}

.fnav-list__link.fnav-list__link-list dd a,
.fnav-list__link.fnav-list__link-list--office dd a {
  font-weight: normal;
}

.fnav-list__link.fnav-list__link-list dd:last-child,
.fnav-list__link.fnav-list__link-list--office dd:last-child {
  margin-bottom: 32px;
}

.copy {
  position: relative;
  height: 60px;
  background: #3e4140;
  font-size: 10.5px;
  text-align: center;
  padding-top: 30px;
  box-sizing: border-box;
  color: #fff;
}

#slider {
  width: 100%;
  height: 80%;
  min-height: 600px;
  position: relative;
}

#contents .bx-wrapper {
  border: 0;
  box-shadow: none;
}

#contents .bx-wrapper img {
  width: 100%;
}

#contents .bx-wrapper .bx-pager {
  bottom: 24px;
  z-index: 99;
}

#contents .bx-wrapper .bx-pager .bx-pager-item .bx-pager-link {
  border-radius: 0;
  border: 1px solid #fff;
  width: 70px;
  height: 6px;
  background: transparent;
}

#contents .bx-wrapper .bx-pager .bx-pager-item .bx-pager-link.active,
#contents .bx-wrapper .bx-pager .bx-pager-item .bx-pager-link:hover {
  background: #fff;
}

.gnav {
  position: fixed;
  top: 0;
  left: 0;
  width: 240px;
  height: 100vh;
  box-sizing: border-box;
  background: #fff;
  box-shadow: 2px 0 1px rgba(0, 0, 0, 0.3);
  z-index: 100;
}

.gnav-logo {
  width: 100%;
  height: 152px;
  position: relative;
  border-left: 5px solid #238755;
  text-align: center;
  box-sizing: border-box;
}

.gnav-logo:hover a img {
  opacity: 0.6;
  filter: alpha(opacity=60);
}

.gnav-logo a {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  text-align: center;
}

.gnav-logo a img {
  padding-top: 48px;
  padding-bottom: 24px;
}

.gnav-links li {
  position: relative;
  border-top: 1px solid #e5e5e5;
  width: 100%;
  height: 46px;
}

.gnav-links li a {
  position: absolute;
  display: block;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  line-height: 3;
  text-align: left;
  padding-left: 1em;
  border-left: 5px solid #00693b;
  background: #fff;
  color: #000;
  box-sizing: border-box;
}

.gnav-links li.text-small a {
  font-size: 14px;
}

.gnav-links li a:hover {
  border-left: 5px solid #00693b;
  background: #259256;
  color: #fff;
}

.gnav-links .active a {
  background: #259256;
  color: #fff;
}

#contents {
  margin-left: 240px;
}

.mainvisual {
  position: relative;
  width: 100%;
}

.mainvisual:before {
  content: "";
  display: block;
  padding-top: 32%;
}

.mainvisual.mainvisual-solution {
  background: url("../../images/solutions/bg_mainvisual.jpg") no-repeat left
    top/cover;
}

.mainvisual.mainvisual-contact {
  background: url("../../images/contact/bg_mainvisual.jpg") no-repeat left
    top/cover;
}

.mainvisual.mainvisual-case {
  background: url("../../images/case/bg_mainvisual.jpg") no-repeat left
    top/cover;
}

.mainvisual.mainvisual-casestudies {
  background: url("../../images/casestudies/bg_mainvisual.jpg") no-repeat left
    top/cover;
}

.mainvisual.mainvisual-activity {
  background: url("../../images/activity/bg_mainvisual.jpg") no-repeat left
    top/cover;
}

.mainvisual.mainvisual-news {
  background: url("../../images/news/bg_mainvisual.jpg") no-repeat left
    top/cover;
}

.mainvisual.mainvisual-office {
  background: url("../../images/office/bg_mainvisual.jpg") no-repeat left
    top/cover;
}

.mainvisual.mainvisual-professionals {
  background: url("../../images/professionals/bg_mainvisual.jpg") no-repeat left
    top/cover;
}

.mainvisual.mainvisual-recruit {
  background: url("../../images/recruit/bg_mainvisual.jpg") no-repeat left
    top/cover;
}

.mainvisual.mainvisual-company {
  background: url("../../images/company/bg_mainvisual.jpg") no-repeat left
    top/cover;
}

.mainvisual.mainvisual-seminar {
  background: url("../../images/seminar/bg_mainvisual.jpg") no-repeat left
    top/cover;
}

.mainvisual.mainvisual-video {
  background: url("../../images/video/bg_mainvisual.jpg") no-repeat left
    top/cover;
}

.mainvisual.mainvisual-privacy {
  background: url("../../images/privacy/bg_mainvisual.jpg") no-repeat left
    top/cover;
}

.mainvisual.mainvisual-sitemap {
  background: url("../../images/sitemap/bg_mainvisual.jpg") no-repeat left
    top/cover;
}

.mainvisual.mainvisual-question {
  background: url("../../images/question/bg_mainvisual.jpg") no-repeat left
    top/cover;
}

.mainvisual.mainvisual-email_subscription {
  background: url("../../images/email_subscription/bg_mainvisual.jpg") no-repeat
    left top/cover;
}

.mainvisual.mainvisual-email_subscription img {
  width: auto;
  height: 50px;
}

.mainvisual-headline {
  position: absolute;
  top: 32.5%;
  width: 100%;
  text-align: center;
}
.mainvisual-headline-video {
  position: absolute;
  top: 27.5%;
  width: 100%;
  text-align: center;
}
.mainvisual-headline-solutionDetail {
  position: absolute;
  top: 22.5%;
  width: 100%;
  text-align: center;
}
.mainvisual-subHeadline {
  position: absolute;
  top: 53%;
  width: 100%;
  box-sizing: border-box;
  text-align: center;
  font-size: 26px;
  font-weight: 600;
  padding: 40px;
  line-height: 1.5;
}

@media screen and (max-width: 1200px) {
  .mainvisual-headline-solutionDetail {
    top: 18.5%;
  }
  .mainvisual-subHeadline {
    top: 49%;
    font-size: 24px;
    line-height: 1.2;
  }
}
@media screen and (max-width: 850px) {
  .mainvisual-subHeadline {
    font-size: 16px;
    top: calc(100% - 12.8vw);
  }
}

.mainvisual-headline img {
  padding-right: 60px;
}

.solutionsDetail .mainvisual-headline img {
  max-width: 553px;
}
@media screen and (max-width: 850px) {
  .solutionsDetail .mainvisual-headline img {
    width: 80%;
  }
}

.mainvisual-leadtxt {
  position: absolute;
  top: 53%;
  width: 100%;
  box-sizing: border-box;
  text-align: center;
  font-size: 20px;
  text-shadow: 2px 2px 4px rgba(255, 255, 255, 0.8);
  /* padding-right: 60px; */
  padding: 0 40px;
  line-height: 1.6;
}
@media screen and (max-width: 1199px) {
.mainvisual-leadtxt {
    font-size: 16px;
    line-height: 1.2;
  }
}

.mainvisual__path {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  min-height: 40px;
  background: url("../../images/bg_path.png");
}

.mainvisual__path ul {
  height: 100%;
  padding-top: 10px;
  padding-left: 4%;
  width: 100%;
  box-sizing: border-box;
}

.mainvisual__path li {
  float: left;
  color: #353a37;
  font-size: 12px;
  line-height: 1.5;
  padding-right: 1em;
}

.mainvisual__path li:after {
  content: ">";
  color: #000;
  padding-left: 1em;
}

.mainvisual__path li:last-child:after {
  display: none;
}

.mainvisual__path li a {
  color: #0068aa;
  text-decoration: none;
}

.mainvisual__path li a:hover {
  text-decoration: underline;
}

.wrap {
  padding: 40px 48px 0;
}

.wrap-article h1 {
  margin-bottom: 30px;
  font-size: 18px;
  color: #353a37;
}

.wrap-section {
  padding: 56px 4% 0;
}

.wrap-section.wrap-full--width {
  padding-right: 0;
  padding-left: 0;
}

.wrap-section.wrap-section--bg_office {
  padding-top: 65px;
  background: #32975f url("../../images/bg_office.png") no-repeat center top;
  background-size: contain;
  padding-top: 30px;
}

.wrap-section--book {
  padding: 40px 4% 0;
}

.wrap-contact {
  padding: 30px 48px;
  min-width: 880px;
  box-sizing: border-box;
  margin: 0 auto;
}

.wrap-contact h2 {
  font-size: 18px;
  color: #238755;
  font-weight: bold;
  margin-bottom: 15px;
}

.wrap-contact p {
  font-size: 14px;
  color: #353a37;
  line-height: 1.5;
}

.wrap-headline {
  text-align: center;
  margin-bottom: 40px;
}

.wrap-headline h1 {
  margin-bottom: 26px;
}

.wrap-headline p {
  font-family: "游明朝", "Yu Mincho", "游明朝体", "YuMincho",
    "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E",
    "ＭＳ Ｐ明朝", "MS PMincho";
  font-size: 20px;
}

.wrap-headline p h2 {
  text-align: center;
  margin-bottom: 29px;
}

.wrap-headline p p {
  font-size: 19px;
  color: #fff;
  margin-bottom: 30px;
}

.wrap-headline--subtitle {
  margin-bottom: 28px;
}

.wrap-headline--subtitle h1 {
  display: inline-block;
  font-size: 24px;
  color: #259256;
  margin-right: 1em;
}

.wrap-headline--subtitle h1 span {
  display: block;
  font-size: 14px;
  padding-top: 8px;
  color: #353a37;
}

.wrap-headline--subtitle p {
  display: inline-block;
  vertical-align: top;
  font-size: 16px;
  padding-top: 8px;
  color: #259256;
}

.wrap-seminar {
  margin: 40px 48px 0;
}

.wrap-seminar h2 {
  margin: 0 0 1em;
  font-size: 26px;
  color: #259256;
}

#block-seminar-outline {
  margin-bottom: 30px;
}

.wrap-seminar__title {
  overflow: hidden;
}

.wrap-seminar__title + .table {
  width: 100%;
}

.wrap-seminar__title .wrap-seminar--item_left {
  float: left;
  padding-bottom: 40px;
  padding-right: 20px;
}

.wrap-seminar__title .wrap-seminar--item_right {
  overflow: hidden;
}

.wrap-seminar--date {
  margin-bottom: 20px;
  font-size: 14px;
  padding-top: 3px;
}

.wrap-seminar--date span {
  margin-left: 1em;
  font-size: 12px;
  padding: 4px 1em;
  background: #238755;
  color: #fff;
}

.wrap-seminar h3 {
  font-size: 18px;
  margin: 30px 0 40px;
  line-height: 1.6;
}

.wrap-seminar--lecturer td {
  overflow: hidden;
}

.wrap-seminar--lecturer td img {
  float: left;
}

.wrap-seminar--lecturer td img + div {
  overflow: hidden;
  padding-left: 1em;
}

.wrap-seminar--form h3 {
  margin-bottom: 30px;
  background: #9c9d9c;
  border: solid #fff 2px;
  border-bottom: none;
  line-height: 44px;
  text-align: center;
  font-size: 18px;
  color: #fff;
}

.wrap-seminar--form h3 + p {
  margin-bottom: 2%;
  font-size: 14px;
  line-height: 1.4;
}

.wrap-seminar--form .form-sample {
  font-size: 14px;
  margin-left: 1em;
}

.wrap-seminar--form .form-sample--small {
  font-size: 12px;
  margin-left: 1em;
}

.wrap-seminar--form .form-supplement {
  font-size: 12px;
}

.wrap-seminar--form .from-itemname {
  font-size: 14px;
  margin-right: 1em;
}

.wrap-seminar--form .error {
  font-size: 12px;
  margin-left: 0.5em;
  margin-right: 0.5em;
  color: #f00;
}

.wrap-seminar--form input {
  margin-right: 1em;
}

.wrap-seminar--form input[type="text"],
.wrap-seminar--form input[type="email"] {
  height: 38px;
  box-sizing: border-box;
}

.wrap-seminar--form .postcode input {
  margin-right: 0.5em;
  margin-left: 0.5em;
}

.wrap-seminar--form select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  width: 180px;
  height: 38px;
  padding-right: 50px;
  padding-left: 1em;
  border: 2px solid #e5e5e5;
  border-radius: 0;
  background: url("../../images/bg_select.png") no-repeat right top;
  font-size: 14px;
  vertical-align: baseline;
  color: #353a37;
}

.wrap-seminar--form select::-ms-expand {
  display: none;
}

.wrap-seminar--form .form-seminor {
  border-bottom: 1px solid #aaa;
}

.wrap-seminar--form .form-seminor .contact {
  margin: 30px 0;
}

.wrap-seminar--form .form-seminor .contact.en {
  margin: 30px 0 30px 30px;
}

.wrap-seminar--form .form-seminor--btnarea {
  text-align: center;
}

.wrap-seminar--form .form-seminor--btnarea p {
  margin: 30px 0;
  font-size: 14px;
}

.wrap-seminar--form .form-seminor--btnarea p a {
  color: #0068aa;
}

.wrap-seminar--form .form-seminor--btnarea .btn-area--medium {
  padding-top: 0;
}

.wrap-seminar--form li {
  padding: 0.4em 0;
}

/* video- （セミナーと同じレイアウト） */
.wrap-video {
  margin: 40px 48px 0;
}

.wrap-video h2 {
  margin: 0 0 1em;
  font-size: 26px;
  color: #259256;
}

#block-video-outline {
  margin-bottom: 30px;
}

.wrap-video__title {
  overflow: hidden;
}

.wrap-video__title + .table {
  width: 100%;
}

.wrap-video__title .wrap-video--item_left {
  float: left;
  padding-bottom: 40px;
  padding-right: 20px;
}

.wrap-video__title .wrap-video--item_right {
  overflow: hidden;
}

.wrap-video--date {
  margin-bottom: 20px;
  font-size: 14px;
  padding-top: 3px;
}

.wrap-video--date span {
  margin-left: 1em;
  font-size: 12px;
  padding: 4px 1em;
  background: #238755;
  color: #fff;
}

.wrap-video h3 {
  font-size: 18px;
  margin: 30px 0 40px;
  line-height: 1.6;
}

.wrap-video--lecturer td {
  overflow: hidden;
}

.wrap-video--lecturer td img {
  float: left;
}

.wrap-video__thumb {
  display: block;
}
.wrap-video__thumb:hover {
  opacity: .7;
  cursor: pointer;
}
.wrap-video__thumb img{
  max-width: 220px;
  height: auto;
}
.wrap-video__list{
  display: flex;
  align-items: flex-start;
}
.wrap-video__list dt + dt{
  margin-left: 32px;
}

.wrap-video__select {
  margin-bottom: 34px;
  text-align: right;
}

.wrap-video__select select {
  appearance: none;
  width: 270px;
  height: 40px;
  padding-right: 50px;
  padding-left: 1em;
  border: 1px solid rgb(229, 229, 229);
  border-radius: 0px;
  background: url("../../images/news/bg_select.png") right top no-repeat;
  vertical-align: top;
  font-size: 16px;
  color: rgb(53, 58, 55);
}

.wrap-video--lecturer td img + div {
  overflow: hidden;
  padding-left: 1em;
}

.wrap-video--form h3 {
  margin-bottom: 30px;
  background: #9c9d9c;
  border: solid #fff 2px;
  border-bottom: none;
  line-height: 44px;
  text-align: center;
  font-size: 18px;
  color: #fff;
}

.wrap-video--form h3 + p {
  margin-bottom: 2%;
  font-size: 14px;
  line-height: 1.4;
}

.wrap-video--form .form-sample {
  font-size: 14px;
  margin-left: 1em;
}

.wrap-video--form .form-sample--small {
  font-size: 12px;
  margin-left: 1em;
}

.wrap-video--form .form-supplement {
  font-size: 12px;
}

.wrap-video--form .from-itemname {
  font-size: 14px;
  margin-right: 1em;
}

.wrap-video--form .error {
  font-size: 12px;
  margin-left: 0.5em;
  margin-right: 0.5em;
  color: #f00;
}

.wrap-video--form input {
  margin-right: 1em;
}

.wrap-video--form input[type="text"],
.wrap-video--form input[type="email"] {
  height: 38px;
  box-sizing: border-box;
}

.wrap-video--form .postcode input {
  margin-right: 0.5em;
  margin-left: 0.5em;
}

.wrap-video--form select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  width: 180px;
  height: 38px;
  padding-right: 50px;
  padding-left: 1em;
  border: 2px solid #e5e5e5;
  border-radius: 0;
  background: url("../../images/bg_select.png") no-repeat right top;
  font-size: 14px;
  vertical-align: baseline;
  color: #353a37;
}

.wrap-video--form select::-ms-expand {
  display: none;
}

.wrap-video--form .form-seminor {
  border-bottom: 1px solid #aaa;
}

.wrap-video--form .form-seminor .contact {
  margin: 30px 0;
}

.wrap-video--form .form-seminor .contact.en {
  margin: 30px 0 30px 30px;
}

.wrap-video--form .form-seminor--btnarea {
  text-align: center;
}

.wrap-video--form .form-seminor--btnarea p {
  margin: 30px 0;
  font-size: 14px;
}

.wrap-video--form .form-seminor--btnarea p a {
  color: #0068aa;
}

.wrap-video--form .form-seminor--btnarea .btn-area--medium {
  padding-top: 0;
}

.wrap-video--form li {
  padding: 0.4em 0;
}

.wrap-solution {
  padding: 77px 48px 48px;
  overflow: hidden;
}

.wrap-solution h1 {
  margin-bottom: 52px;
  font-size: 30px;
  text-align: center;
  color: #238755;
}

.wrap-solution--bgcolor_green {
  padding: 48px 48px 40px;
  background: #238755;
}

.wrap-solution--bgcolor_green h1 {
  margin-bottom: 35px;
  text-align: center;
  font-size: 30px;
  color: #fff;
}

.solutionsDetail .wrap-solution--bgcolor_green {
  padding: 40px;
}

.wrap__box {
  padding: 40px 25px;
  margin-bottom: 25px;
}

.wrap__box h2 {
  font-size: 24px;
  margin-bottom: 1em;
  color: #259256;
}

.wrap__box p {
  font-size: 14px;
  line-height: 2.1;
}

.wrap-3col {
  margin-right: -4%;
}

.wrap-3col li {
  float: left;
  width: 29.3%;
  margin-right: 4%;
}

.wrap-2col ul {
  display: table;
  width: 100%;
  overflow: hidden;
}

.wrap-2col .wrap-content,
.wrap-2col__item {
  display: table-cell;
  width: 50%;
  vertical-align: top;
}

.wrap-2col .wrap-content:first-child,
.wrap-2col__item:first-child {
  background: #238755;
}

.wrap-2col .wrap-content:nth-child(2),
.wrap-2col__item:nth-child(2) {
  background: #e1e1df;
  text-align: right;
}

.wrap-2col .wrap-content:nth-child(2) img,
.wrap-2col__item:nth-child(2) img {
  width: 100%;
  max-width: 524px;
}

.wrap-content {
  padding: 44px 24px;
}

.wrap-content .txtarea {
  text-align: justify;
  font-size: 14px;
  color: #fff;
  line-height: 2.1;
}

.wrap-chairman ul > li:last-child {
  vertical-align: bottom;
}

.wrap-chairman .txtarea p {
  margin-bottom: 10px;
  font-size: 16px;
}

.wrap-chairman .txtarea p:last-child {
  padding-top: 10px;
}

.wrap-chairman p.font {
  color: #fff;
}

.wrap-case {
  padding: 40px 48px 48px;
  overflow: hidden;
}

.wrap-case h2 {
  margin-bottom: 15px;
  line-height: 1.5;
  font-size: 24px;
  color: #238755;
}

.wrap-case figure {
  background: #ededed;
  font-size: 0;
}

.wrap-case figure img {
  width: 50%;
  height: auto;
}

.wrap-news {
  padding: 40px 48px 48px;
  overflow: hidden;
  color: #353a37;
}

.wrap-news__title {
  margin-bottom: 18px;
  font-size: 24px;
  color: #238755;
}

.wrap-news__title span {
  display: block;
  padding-top: 8px;
  font-size: 16px;
  color: #353a37;
}

.wrap-news > section .btn-area {
  padding: 0 0 8%;
}

.wrap-news .wrap-details__headline {
  padding: 0 1% 2.5%;
}

.wrap-news__category {
  margin-left: 8px;
  padding: 4px 6px;
  background: #238755;
  color: #fff;
  font-size: 14px;
  vertical-align: top;
}

.wrap-news__select {
  margin-bottom: 34px;
  text-align: right;
}

.wrap-news__select select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  width: 270px;
  height: 40px;
  padding-right: 50px;
  padding-left: 1em;
  border: 1px solid #e5e5e5;
  border-radius: 0;
  background: url("../../images/news/bg_select.png") no-repeat right top;
  vertical-align: top;
  font-size: 16px;
  color: #353a37;
}

.wrap-news__select select::-ms-expand {
  display: none;
}

.wrap-activity {
  padding: 40px 48px 48px;
  overflow: hidden;
  color: #353a37;
}

.wrap-activity__title {
  margin-bottom: 18px;
  font-size: 24px;
  color: #238755;
}

.wrap-activity__title span {
  display: block;
  padding-top: 8px;
  padding-left: 0;
  font-size: 16px;
  color: #353a37;
}

.wrap-activity .wrap-activity__subtitle {
  display: inline;
  padding-top: 0;
  padding-left: 25px;
  color: #238755;
}

.wrap-activity__title--type_seminar {
  padding-left: 56px;
  background: url("../../images/activity/ic_seminar_01.png") no-repeat left top;
}

.wrap-activity > section .btn-area {
  padding: 0 0 8%;
}

.wrap-activity > section:nth-last-of-type(1) .btn-area {
  padding-top: 2%;
}

.wrap-activity .wrap-details {
  border-top: 1px solid #e6e5e6;
}

.wrap-details__headline {
  margin-bottom: 3%;
  padding: 2.5% 1%;
  border-bottom: 1px solid #e6e5e6;
}

.wrap-details__title {
  margin-bottom: 18px;
  line-height: 1.5;
  font-size: 18px;
  font-weight: bold;
}

.wrap-details__date {
  text-align: right;
}

.wrap-details__contents {
  margin-bottom: 3.5%;
  line-height: 2;
  font-size: 14px;
}

.wrap-details__contents a {
  color: #0068aa;
}

.wrap-professionals {
  padding: 40px 4% 0;
}

.wrap-professionals > p {
  width: 100%;
  margin: 0 0 18px;
  line-height: 2;
  font-size: 14px;
  color: #353a37;
}

.wrap-professionals > h2 {
  margin-bottom: 18px;
  font-size: 24px;
  color: #259256;
}

.wrap-professionals > h2 > span {
  display: block;
  padding-top: 8px;
  font-size: 16px;
  color: #353a37;
  font-weight: normal;
}

.block-professionals_country {
  border-top: 1px solid #e6e5e6;
  display: flex;
  flex-wrap: nowrap;
  width: 100%;
  margin-right: auto;
  box-sizing: border-box;
}

.map-professionals {
  padding-top: 32px;
  margin-left: 40px;
}

.labels-professionals {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: flex-start;
  width: 366px;
  padding: 24px 0 40px;
}

.labels-professionals[aria-hidden="true"] {
  display: none;
}

.labels-professionals__wide {
  justify-content: flex-start;
  align-items: stretch;
  border-top: 1px solid #e6e5e6;
  width: 100%;
  margin-right: auto;
}

.labels-professionals > li {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  width: 180px;
  box-sizing: border-box;
  margin-top: 6px;
}

.labels-professionals > li:nth-of-type(1),
.labels-professionals > li:nth-of-type(2) {
  margin-top: 0;
}

.labels-professionals__wide > li {
  width: 208px;
  margin-top: 0;
  margin-right: 11px;
  margin-bottom: 11px;
}

.labels-professionals input[type="radio"] {
  display: none;
}

.labels-professionals label {
  display: flex;
  box-sizing: border-box;
  width: 100%;
  height: 100%;
  padding: 12px 19px;
  color: #259256;
  font-size: 13px;
  background-color: #efefef;
  cursor: pointer;
}

.labels-professionals input[type="radio"]:checked + label {
  background-color: #259256;
  color: #fff;
  cursor: default;
}

.singleLabel-professionals {
  display: flex;
  box-sizing: border-box;
  width: 100%;
  height: 100%;
  padding: 12px 19px;
  color: #fff;
  font-size: 13px;
  background-color: #259256;
}

.label-professionals_inner {
  display: flex;
  flex-wrap: wrap;
}

.label-professionals_inner li {
  color: #259256;
  font-size: 15px;
}

.label-professionals li:not(:first-child)::before {
  content: ">";
  margin-right: 0.5em;
  margin-left: 0.5em;
}

.wrap-professionals_bottom {
  padding: 0 4% 76px;
  background-color: #fafafa;
  margin: 0 -4%;
  box-sizing: border-box;
}

.block-professionals {
  display: flex;
  flex-wrap: wrap;
  width: 90.93%;
  align-items: stretch;
  padding: 24px 0;
  margin-right: auto;
  box-sizing: border-box;
}

.block-professionals_inner {
  display: flex;
  flex-wrap: wrap;
  width: 100%;
  align-items: stretch;
  padding: 0;
  margin-right: auto;
  box-sizing: border-box;
}

.listitem-professionals {
  border-bottom: 2px solid #dcdcdc;
}

.listitem-professionals.bottom {
  border-bottom: 0;
}

.listitem-professionals[aria-hidden="true"] {
  display: none;
}

.block-professionals > li,
.block-professionals_inner > li {
  display: flex;
  margin-right: 8px;
  margin-bottom: 12px;
  width: calc(20% - 8px);
  box-sizing: border-box;
  background-color: #fff;
}

.block-professionals > li[aria-hidden="true"] {
  display: none;
}

.block-professionals > li.list-professionals_tokyo,
.block-professionals > li.list-professionals_osaka {
  margin: 0;
  padding-bottom: 24px;
  width: 100%;
  background-color: transparent;
}

.block-professionals > li.list-professionals_tokyo:last-child,
.block-professionals > li.list-professionals_osaka:last-child {
  padding-bottom: 0;
}

.block-professionals > li.label-professionals,
.block-professionals_inner > li.label-professionals {
  width: 100%;
  margin-right: 0;
  margin-bottom: 24px;
  background-color: transparent;
}

.block-professionals > li a,
.block-professionals_inner > li a {
  width: 100%;
  min-height: 70px;
  position: relative;
  box-sizing: border-box;
  box-shadow: rgb(201, 201, 201) 3px 3px 0px;
  background: rgb(255, 255, 255);
  color: #259256;
  box-sizing: border-box;
}

.block-professionals > li a img,
.block-professionals_inner > li a img {
  width: 100%;
  opacity: 1;
  box-sizing: border-box;
}

.block-professionals > li a:hover,
.block-professionals_inner > li a:hover {
  box-shadow: rgb(33, 124, 79) 3px 3px 0px;
  transition: box-shadow 1s;
}

.block-professionals > li a:hover img,
.block-professionals_inner > li a:hover img {
  opacity: 0.65;
  transition: opacity 1s;
}

.block-professionals > li a h3,
.block-professionals_inner > li a h3 {
  box-sizing: border-box;
  height: auto;
  text-align: center;
  font-size: 14px;
  font-weight: 600;
  font-style: normal;
  font-stretch: normal;
  line-height: 1.29;
  letter-spacing: normal;
  color: #259256;
  padding: 17px 14px;
  background-image: url(../../images/professionals/ic_01.png);
  background-repeat: no-repeat;
  background-size: 11px 9px;
  background-position: right 5px bottom 6px;
}

.block-professionals > li a h3 span,
.block-professionals_inner > li a h3 span {
  display: block;
  color: #353a37;
  font-family: YuMincho, "Yu Mincho", serif;
  font-size: 10px;
  font-weight: 500;
  line-height: 1.8;
}

.modal {
  display: none;
}

.modal-professionals {
  width: 925px;
  height: auto;
  display: flex;
  flex-wrap: wrap;
}

.modal-btn_inner {
  -webkit-appearance: none;
  appearance: none;
  border: 0;
  background-color: #efefef;
  padding: 20px;
  margin: 0;
  text-align: center;
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 12px;
  box-sizing: border-box;
}

.modal-btn_inner::before {
  content: "";
  width: 9px;
  height: 9px;
  display: block;
  background-image: url(../../images/professionals/ic-close.png);
  background-repeat: no-repeat;
  background-size: contain;
  margin-right: 9px;
}

.professionals #colorbox,
.professionals #cboxWrapper {
  overflow: visible;
}

.professionals #cboxContent {
  background: #fff;
  height: auto !important;
}

.professionals #cboxLoadedContent {
  overflow: hidden !important;
  border: 0;
}

.professionals #cboxPrevious {
  background: url(../../images/professionals/ic-previous.png) no-repeat center
    center;
  width: 26px;
  height: 45px;
  left: -84px;
}

.professionals #cboxNext {
  background: url(../../images/professionals/ic-next.png) no-repeat center
    center;
  width: 26px;
  height: 45px;
  right: -84px;
}

.professionals #cboxCurrent {
  display: none !important;
}

.professionals-profiles__title {
  display: flex;
  flex-direction: column-reverse;
  flex-wrap: wrap;
  width: 450px;
  height: 100%;
  box-sizing: border-box;
}

.professionals-profiles__title dt {
  flex: 0 0 506px;
}

.professionals-profiles__title dd {
  background-color: #259256;
  background-image: url(../../images/professionals/txt_profile_01.png);
  background-repeat: no-repeat;
  background-position: left top 12px;
  background-size: 64px 20px;
  padding: 34px 0 28px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  flex: 1 1 114px;
}

.professionals-profiles__title dt img {
  width: 100%;
}

.professionals-profiles__title h3 {
  text-align: center;
  color: #fff;
  font-size: 34px;
  font-family: 游明朝, "Yu Mincho", 游明朝体, YuMincho, "ヒラギノ明朝 Pro W3",
    "Hiragino Mincho Pro", HiraMinProN-W3, HGS明朝E, "ＭＳ Ｐ明朝", "MS PMincho";
}

.professionals-profiles__title span {
  display: block;
  font-size: 16px;
  margin-top: 11px;
  font-family: 游明朝, "Yu Mincho", 游明朝体, YuMincho, "ヒラギノ明朝 Pro W3",
    "Hiragino Mincho Pro", HiraMinProN-W3, HGS明朝E, "ＭＳ Ｐ明朝", "MS PMincho";
}

.professionals-profiles__title h4 {
  color: #fff;
  font-size: 14px;
  margin-top: 13px;
}

.professionals-profiles__details {
  box-sizing: border-box;
  width: 475px;
  padding: 27px 30px 35px;
}

.professionals-profiles__details h4 {
  font-size: 20px;
  margin-top: 24px;
  text-align: center;
  font-family: 游明朝, "Yu Mincho", 游明朝体, YuMincho, "ヒラギノ明朝 Pro W3",
    "Hiragino Mincho Pro", HiraMinProN-W3, HGS明朝E, "ＭＳ Ｐ明朝", "MS PMincho";
}

.professionals-profiles__details h4:nth-of-type(1) {
  margin-top: 0;
}

.professionals-profiles__details p {
  color: #353a37;
  font-size: 14px;
  line-height: 1.8;
  margin-top: 12px;
}

.professionals-profiles__details h4 + p + h4 + p {
  font-size: 12px;
}

.wrap-company {
  overflow: hidden;
  margin-bottom: 60px;
  line-height: 2;
  font-size: 14px;
}

.wrap-company h1 {
  font-size: 30px;
  text-align: center;
  color: #238755;
  line-height: 1;
}

.wrap-company:nth-of-type(2) {
  padding-top: 42px;
}

.wrap-company:nth-last-of-type(2) {
  margin-bottom: 70px;
}

.wrap-company:nth-last-of-type(1) {
  margin-bottom: 0;
}

.wrap-company:nth-last-of-type(1) .wrap-company__box {
  padding-top: 26px;
}

.wrap-company--bgcolor_gray {
  margin-bottom: 22px;
  padding: 48px 0 40px;
  background: #f3f3f3;
  line-height: 2;
  font-size: 14px;
}

.wrap-company--bgcolor_gray .wrap-company__box {
  padding: 0 48px;
}

.wrap-company--bgcolor_gray .wrap-company__box p:first-child {
  margin-bottom: 40px;
}

.wrap-company__box {
  padding: 34px 48px;
}

.wrap-company__box:last-child {
  padding-bottom: 0;
}

.wrap-company__box + .wrap-company__box {
  padding-top: 0;
}

.wrap-company__box h2 {
  margin-bottom: 16px;
  font-size: 24px;
  color: #259256;
  line-height: 1.5;
}

.wrap-company__box .item--width__full img {
  width: 100%;
  height: auto;
}

.wrap-company__box .item--width__limited {
  text-align: center;
}

.wrap-company__box dl {
  margin-bottom: 15px;
}

.wrap-company__box dt.font {
  font-size: 24px;
  color: #259256;
}

.wrap-recruit {
  padding: 30px 4% 60px;
}

.mainvisual-privacy .mainvisual-leadtxt {
  margin-top: 10px;
  padding-right: 0;
}

.wrap-privacy {
  padding: 48px 48px 70px;
}

.wrap-privacy dl {
  margin-bottom: 6.4%;
}

.wrap-privacy dt {
  margin-bottom: 2%;
  color: #238755;
  font-size: 18px;
  font-weight: bold;
}

.wrap-privacy dd {
  color: #353a37;
  font-size: 14px;
  line-height: 1.8;
}

.wrap-privacy ol,
.wrap-privacy ul {
  padding-left: 1.2em;
  text-indent: -1.2em;
}

.wrap-privacy table {
  border-collapse: collapse;
  max-width: 800px;
}

.wrap-privacy table,
.wrap-privacy th,
.wrap-privacy td {
  border: 1px solid #333;
}

.wrap-privacy th,
.wrap-privacy td {
  padding: 8px 16px;
}

.wrap-sitemap {
  overflow: hidden;
  padding: 0 48px 70px;
}

.col3 {
  display: -webkit-flexbox;
  display: -moz-flexbox;
  display: -ms-flexbox;
  display: -o-flexbox;
  display: flexbox;
  display: -webkit-flex;
  display: flex;
  width: 100%;
}

.col3__box {
  box-sizing: border-box;
  -webkit-flex-grow: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
  width: 999px;
  border-left: solid 1px #fff;
}

.post-section {
  margin-bottom: 45px;
}

.post-section__title {
  margin-bottom: 20px;
  font-size: 24px;
  font-weight: bold;
  color: #238755;
}

.post-section__contents {
  line-height: 2;
  font-size: 14px;
}

.post-section__contents > div {
  overflow: hidden;
}

.post-section__contents > div + div {
  margin-top: 4%;
}

.post-section__contents h4 {
  font-size: 16px;
  font-weight: bold;
}

.post-section__contents .align_right {
  float: right;
  padding-bottom: 0.5em;
  padding-left: 1em;
}

.post-section__contents .align_left {
  float: left;
  padding-bottom: 0.5em;
  padding-right: 1em;
}

.point-section {
  margin-bottom: 30px;
  padding: 20px;
  background: #ededed;
}

.point-section__title {
  margin-bottom: 15px;
  font-size: 22px;
  font-weight: bold;
  color: #238755;
}

.point-section__list li {
  margin-bottom: 10px;
}

.point-section__list li:before {
  content: "";
  display: inline-block;
  margin-right: 5px;
  width: 14px;
  height: 14px;
  border-radius: 14px;
  background-color: #238755;
  text-indent: -19px;
}

.btn {
  height: 60px;
}

.btn-wrap {
  margin: 0 auto;
  display: table;
  width: 470px;
}

.btn-wrap + .btn-wrap {
  margin-top: 20px;
}

.btn-wrap input[type="submit"] {
  -webkit-appearance: none;
  appearance: none;
}

.btn-wrap .btn {
  display: table-cell;
  vertical-align: middle;
  text-align: center;
}

.btn-wrap--type_pair {
  overflow: hidden;
  padding: 40px 48px 86px;
}

.btn-wrap--type_pair .btn {
  position: relative;
  border: none;
  transition: all 0.4s;
}

.btn-wrap--type_pair .btn:first-child {
  float: left;
}

.btn-wrap--type_pair .btn:last-child {
  float: right;
}

.btn img {
  width: 100%;
}

.btn-area {
  width: 100%;
  padding: 40px 0;
}

.btn-area a:empty {
  display: none;
}

.btn-area.btn-area--last {
  padding-bottom: 98px;
  padding-top: 98px;
}

.btn-area.btn-area--last .btn:after {
  width: 20px;
  height: 20px;
}

.btn-area.btn-area--small .btn-wrap {
  width: 240px;
  height: 54px;
}

.btn-area.btn-area--small .btn {
  height: 54px;
}

.btn-area.btn-area--small .btn:after {
  top: 17px;
}

.btn-area.btn-area--small .btn p {
  font-size: 14px;
}

.btn-area.btn-area--medium .btn-wrap {
  width: 284px;
}

.btn-area.btn-area--medium .btn-wrap p {
  position: relative;
  margin: 0 0 10%;
}

.btn-area.btn-area--medium .btn-wrap p:empty {
  display: none;
}

.btn-area.btn-area--medium .btn-wrap p:after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  width: 10px;
  height: 10px;
  margin-top: -6px;
}

.btn-area.btn-area--medium .btn-wrap p:first-child input {
  line-height: 3.5;
  border: 2px solid #238755;
  background: #238755;
  color: #fff;
}

.btn-area.btn-area--medium .btn-wrap p:first-child:after {
  right: 14px;
  border-top: 1px solid #fff;
  border-right: 1px solid #fff;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

.btn-area.btn-area--medium .btn-wrap p:first-child:hover input {
  background: #13b64f;
  border: 2px solid #13b64f;
}

.btn-area.btn-area--medium .btn-wrap p:last-child input {
  width: 80%;
  margin: 0 auto;
  line-height: 3;
  border: 3px solid #353a37;
  background: #fff;
}

.btn-area.btn-area--medium .btn-wrap p:last-child:hover input {
  background: #353a37;
  color: #fff;
}

.btn-area.btn-area--medium .btn-wrap p:last-child:hover:after {
  border-top: 1px solid #fff;
  border-right: 1px solid #fff;
}

.btn-area.btn-area--medium .btn-wrap p:last-child:after {
  left: 46px;
  border-top: 1px solid #353a37;
  border-right: 1px solid #353a37;
  -webkit-transform: rotate(-135deg);
  transform: rotate(-135deg);
}

.btn-area.btn-area--medium .btn-wrap input {
  display: block;
  width: 100%;
  line-height: 3;
  cursor: pointer;
  font-size: 14px;
  transition: all 0.4s;
}

.btn-area .btn {
  transition: all 0.4s;
  position: relative;
  border: 4px solid #353a37;
}

.btn-area .btn:hover {
  background: #353a37;
}

.btn-area .btn:hover p {
  color: #fff;
}

.btn-area .btn:hover:after {
  content: "";
  border-right: 1px solid #fff;
  border-top: 1px solid #fff;
}

.btn-area .btn:after {
  position: absolute;
  content: "";
  width: 20px;
  height: 20px;
  border-right: 1px solid #353a37;
  border-top: 1px solid #353a37;
  -webkit-transform: rotate(-135deg);
  transform: rotate(-135deg);
  left: 20px;
  top: 20px;
}

.btn-area .btn.btn--right_down:after {
  width: 12px;
  height: 12px;
  -webkit-transform: rotate(135deg);
  transform: rotate(135deg);
  right: 20px;
  left: auto;
}

.btn-area .btn.btn--right_down:hover:after {
  content: "";
  border-right: 1px solid #fff;
  border-top: 1px solid #fff;
}

.btn-area .btn.btn--right_arrow:after {
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  right: 20px;
  left: auto;
}

.btn-area .btn.btn--right_arrow:hover:after {
  content: "";
  border-right: 1px solid #fff;
  border-top: 1px solid #fff;
}

.btn-area .btn.btn--bg_green {
  border: 2px solid #238755;
  background: #fff;
}

.btn-area .btn.btn--bg_green:after {
  content: "";
  border-right: 1px solid #238755;
  border-top: 1px solid #238755;
}

.btn-area .btn.btn--bg_green p {
  color: #238755;
}

.btn-area .btn.btn--bg_green:hover {
  background: #238755;
}

.btn-area .btn.btn--bg_green:hover p {
  color: #fff;
}

.btn-area .btn.btn--bg_green:hover:after {
  content: "";
  border-right: 1px solid #fff;
  border-top: 1px solid #fff;
}

.btn-area .btn p {
  display: inline;
  text-align: center;
  font-size: 20px;
  color: #000;
}

.btn-area.btn-area--bgline {
  background: url("../../images/bg_pattern_01.png");
}

.btn-area.btn-area--bgline .btn-wrap {
  width: 100%;
  max-width: 740px;
}

.btn-area.btn-area--bgline .btn {
  border: 4px solid #238755;
}

.btn-area.btn-area--bgline .btn:hover {
  background: #238755;
}

.btn-area.btn-area--bgline .btn:hover p {
  color: #fff;
}

.btn-area.btn-area--bgline .btn:hover:after {
  content: "";
  border-right: 1px solid #fff;
  border-top: 1px solid #fff;
}

.btn-area.btn-area--bgline .btn:after {
  content: "";
  border-right: 1px solid #238755;
  border-top: 1px solid #238755;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  left: auto;
  right: 20px;
  top: 20px;
}

.btn-area.btn-area--bgline .btn p {
  color: #238755;
}

.btn-group--fixed {
  position: fixed;
  display: flex;
  justify-content: space-between;
  top: 0;
  right: 0;
  width: 950px;
  z-index: 999;
}

.btn-share {
  cursor: pointer;
}

.btn-share dl {
  position: relative;
}

.btn-share dt {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 120px;
  height: 40px;
  font-size: 14px;
  color: #fff;
  letter-spacing: .8px;
  background-color: #579ee7;
}

.btn-share dt > img {
  display: block;
  width: 23px;
  margin-right: 8px;
}

.btn-share dt:hover {
  background-color: #3bb3fd;
}

.btn-share dt:hover + dd {
  display: block;
}

.btn-share dd {
  transition: all 0.5s;
  display: none;
  position: absolute;
  width: 100%;
  height: 50px;
  top: 40px;
  left: 0;
  background: #efefef;
}

.btn-share dd:hover {
  display: block;
}

.btn-share-icon {
  display: inline-block;
  margin: 0 4px;
}

.btn-share__icons ul {
  text-align: center;
  padding-top: 5px;
}

.btn-share__icons li:hover img {
  opacity: 0.7;
  filter: alpha(opacity=70);
}

.btn-language dl {
  position: relative;
  cursor: pointer;
}

.btn-language dt {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 180px;
  height: 40px;
  font-size: 14px;
  color: #fff;
  letter-spacing: .8px;
  background: rgb(35, 135, 85);
}

.btn-language dt > img {
  display: block;
  width: 23px;
  margin-right: 8px;
}

.btn-language dt:hover {
  background: #2ebd2e;
}

.btn-language dt:hover + dd {
  display: block;
}

.btn-language dd {
  transition: all 0.5s;
  display: none;
  position: absolute;
  width: 100%;
  top: 40px;
  left: 0;
  background: #efefef;
}

.btn-language dd:hover {
  display: block;
}

.btn-language dd ul {
  display: flex;
  justify-content: space-evenly;
  overflow: hidden;
  width: 100%;
  margin: 24px auto;
}
.btn-language dd a {
  display: block;
  width: 40px;
  height: 40px;
  padding: 0;
  background: #ddd;
  color: #212121;
  line-height: 40px;
  text-align: center;
  border: 1px solid #212121;
}
.btn-language dd .active a,
.btn-language dd a:hover {
	background: #238755;
	color: #fff;
  border: 1px solid #238755;
}

.btn-grobal a {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 280px;
  height: 40px;
  background: rgb(35, 135, 85);
  font-size: 14px;
  color: #fff;
  letter-spacing: .8px;
}

.btn-grobal a:hover {
  background: #2ebd2e;
}

.btn-grobal a > img {
  width: 23px;
  height: auto;
  margin-right: 8px;
}
.btn-video a {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  background: #efefef;
}
.btn-video a:hover {
  background: #fff;
}
.btn-video a > img {
  width: 23px;
  height: auto;
}

.btn-recruit a,
.btn-contact a {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 120px;
  height: 40px;
  background: rgb(35, 135, 85);
  font-size: 14px;
  color: #fff;
  letter-spacing: .8px;
}
.btn-recruit a {
  width: 120px;
}
.btn-contact a {
  width: 176px;
}

.btn-recruit a:hover,
.btn-contact a:hover {
  background: #2ebd2e;
}

.btn-recruit a > img,
.btn-contact a > img {
  width: 23px;
  height: auto;
  margin-right: 8px;
}

.btn-contactform {
  width: 470px;
  height: 60px;
  margin: 0 auto;
  text-align: center;
  line-height: 60px;
}

.btn-contactform a {
  display: block;
  background: #259256;
  color: #fff;
  transition: all 0.5s;
}

.btn-contactform a:hover {
  background: #00c250;
}

.btn-contactform a:before {
  content: url("../../images/case/ic_mail.png");
  position: relative;
  top: 3px;
  right: 14px;
  width: 24px;
  height: 16px;
}

.btn-officelocation,
.btn-contactform2,
.btn-officelocation_en,
.btn-contactform2_en,
.btn-officelocation_zh,
.btn-contactform2_zh {
  width: 48%;
  padding: 12px 24px;
  background: #238755;
  color: #fff;
  font-size: 18px;
}

.btn-officelocation_en p,
.btn-contactform2_en p {
  padding-top: 10px;
}

.btn-officelocation_en span,
.btn-contactform2_en span {
  display: none;
}

.btn-officelocation,
.btn-officelocation_en,
.btn-officelocation_zh {
  box-sizing: border-box;
}

.btn-officelocation span,
.btn-officelocation_en span,
.btn-officelocation_zh span {
  display: block;
  padding-top: 5px;
  font-size: 14px;
}

.btn-officelocation:hover,
.btn-officelocation_en:hover,
.btn-officelocation_zh:hover {
  background: #00c250;
}

.btn-officelocation:after,
.btn-officelocation_en:after,
.btn-officelocation_zh:after {
  position: absolute;
  right: 24px;
  top: 12px;
  content: url("../../images/company/ic_location.png");
  width: 36px;
  height: 39px;
}

.btn-contactform2,
.btn-contactform2_en,
.btn-contactform2_zh {
  box-sizing: border-box;
}

.btn-contactform2 span,
.btn-contactform2_en span,
.btn-contactform2_zh span {
  display: block;
  padding-top: 5px;
  font-size: 14px;
}

.btn-contactform2:hover,
.btn-contactform2_en:hover,
.btn-contactform2_zh:hover {
  background: #00c250;
}

.btn-contactform2:after,
.btn-contactform2_en:after,
.btn-contactform2_zh:after {
  position: absolute;
  right: 24px;
  top: 16px;
  content: url("../../images/company/ic_contact.png");
  width: 42px;
  height: 28px;
}

.btn-close {
  display: inline-block;
  width: 30%;
  border: 2px solid #353a37;
  background: #fff;
  font-size: 14px;
  color: #353a37;
  line-height: 38px;
  transition: all 0.4s;
}

.btn-close:hover {
  background: #353a37;
  color: #fff;
}

.btn-print {
  display: inline-block;
  width: 30%;
  margin-left: 4%;
  border: 2px solid #238755;
  background: #238755;
  color: #fff;
  font-size: 14px;
  line-height: 38px;
  transition: all 0.4s;
}

.btn-print:hover {
  background: #13b64f;
  border: 2px solid #13b64f;
}

input[name="submitConfirm"] {
  position: relative;
  display: block;
  width: 100%;
  line-height: 3;
  border: 2px solid #238755;
  cursor: pointer;
  background: #238755;
  font-size: 14px;
  color: #fff;
  transition: all 0.5s;
}

input[name="submitConfirm"]:hover {
  background: #13b64f;
  border: 2px solid #13b64f;
  color: #fff;
}

input[name="submitConfirm"] + br + input[type="submit"] {
  position: relative;
  display: block;
  margin: 20px auto 0;
  width: 80%;
  line-height: 3;
  border: 2px solid #353a37;
  cursor: pointer;
  background: #fff;
  font-size: 14px;
  color: #353a37;
  transition: all 0.5s;
}

input[name="submitConfirm"] + br + input[type="submit"]:hover {
  background: #353a37;
  color: #fff;
}

@media screen and (min-width: 1320px) {
  .btn-wrap {
    width: 700px;
  }
}

.panels {
  padding-bottom: 60px;
}

.panels a,
.panels img {
  width: 100%;
  vertical-align: bottom;
}

.panels .is--switch {
  position: relative;
  display: block;
}

.panels .is--switch img {
  vertical-align: bottom;
}

.panels .is--switch .panels_icon {
  position: absolute;
  right: 0;
  bottom: 0;
  width: auto;
}

.panels .panel__list {
  background: #fff;
  padding: 16px;
}

.panels .panel__list li {
  position: relative;
  padding-left: 14px;
  font-size: 14px;
  color: #000;
  margin-bottom: 4px;
  line-height: 1.5;
}

.panels .panel__list li:before {
  position: absolute;
  content: "";
  width: 4px;
  height: 4px;
  background: #438459;
  left: 0;
  top: 7px;
}

.panels .panel__list li:last-child {
  margin-bottom: 0;
}
.panels .panel__list li a {
  position: relative;
}

.panels.is--2col {
  padding-bottom: 0;
  background-color: #238755;
}

.panels.is--2col .panel-links {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  flex-wrap: wrap;
}

.panels.is--2col .panels__item {
  width: calc((100% - 8px) / 2);
  position: relative;
}

.panels.is--2col .panels__item img {
  box-shadow: #000 0 0 0;
}

.panels.is--2col .panels__heading {
  padding: 13px 16px;
  background: url("../../images/img_solution_01.jpg") no-repeat center / cover;
  background-color: rgba(255, 255, 255, 0.8);
  background-blend-mode: overlay;
  text-align: center;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  align-content: center;
}
.panels.is--2col .panels__item--02 .panels__heading {
  background: url("../../images/img_solution_02.jpg") no-repeat center / cover;
  background-color: rgba(255, 255, 255, 0.8);
}
.panels.is--2col .panels__item--03 .panels__heading {
  background: url("../../images/img_solution_03.jpg") no-repeat center / cover;
  background-color: rgba(255, 255, 255, 0.8);
}
.panels.is--2col .panels__item--04 .panels__heading {
  background: url("../../images/img_solution_04.jpg") no-repeat center / cover;
  background-color: rgba(255, 255, 255, 0.8);
}
.panels.is--2col .panels__item--05 .panels__heading {
  background: url("../../images/img_solution_05.jpg") no-repeat center / cover;
  background-color: rgba(255, 255, 255, 0.8);
}
.panels.is--2col .panels__item--06 .panels__heading {
  background: url("../../images/img_solution_06.jpg") no-repeat center / cover;
  background-color: rgba(255, 255, 255, 0.8);
}
.panels.is--2col .panels__item--07 .panels__heading {
  background: url("../../images/img_solution_07.jpg") no-repeat center / cover;
  background-color: rgba(255, 255, 255, 0.8);
}
.panels.is--2col .panels__item--08 .panels__heading {
  background: url("../../images/img_solution_08.jpg") no-repeat center / cover;
  background-color: rgba(255, 255, 255, 0.8);
}

.panels.is--2col .panels__title {
  font-weight: bold;
  color: #438459;
  font-size: 20px;
  line-height: 1.5;
  width: 100%;
}
.panels.is--2col .panels__title span {
  display: inline-block;
  font-family: "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho";
}
.panels.is--2col .panels__subtitle {
  margin-top: 2px;
  line-height: 1.5;
  font-size: 10px;
  color: #333;
  width: 100%;
}

.panels.is--2col .panels__item--bgcolor_gray {
  float: left;
  width: 40%;
  padding: 2%;
  margin-right: 2%;
  margin-bottom: 2%;
  background: #ededed;
}

.panels.is--2col .panels__item .panel__list li a {
  color: #000;
}
.panels.is--2col .panels__item .panel__list li a:hover {
  text-decoration: underline;
  color: rgb(1, 56, 255);
}

.panels.is--2col .panels__item .panels--hover{
  transition: all 0.3s;
  position: relative;
  display: block;
}
.panels.is--2col .panels__item .panels--hover:hover {
  opacity: .7;
}
.panels.is--2col .panels__item .panels--hover::before {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
}

.panels.is--2col .panels__item .panels--hover .panels-icon {
  background: url("../../images/ic_btn_off.png") no-repeat left top;
  background-size: 16px;
  position: absolute;
  bottom: 0;
  right: 0;
  width: 16px;
  height: 16px;
}

.panels.is--2col .panels__item .panels--hover:hover .panels-icon {
  background: url("../../images/ic_btn_on.png") no-repeat left top;
  background-size: 16px;
}

.panels.is--2col .panels__item .panels--hover:hover .on {
  transition: opacity 0.6s;
  opacity: 1;
  filter: alpha(opacity=100);
}

.panels.is--2col .panels__item .panels--hover img {
  box-shadow: #000 0 0 0;
}

.panels.is--2col .panels__item .panels--hover .on {
  display: inline-block;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: auto;
  opacity: 0;
  filter: alpha(opacity=0);
}

.panels.is--3col .panel-links {
  margin-right: -2%;
  margin-bottom: -2%;
}

.panels.is--3col .panels__item {
  float: none;
  display: inline-block;
  margin-right: 2%;
  width: 30%;
  margin-bottom: 2%;
  vertical-align: top;
}

.panels.is--3col .panels__item .panels--hover {
  position: relative;
  display: inline-block;
}

.panels.is--3col .panels__item .panels--hover:hover .on {
  transition: opacity 0.6s;
  opacity: 1;
  filter: alpha(opacity=100);
}

.panels.is--3col .panels__item .panels--hover img {
  box-shadow: #000 0 0 0;
}

.panels.is--3col .panels__item .panels--hover .on {
  display: inline-block;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  filter: alpha(opacity=0);
}
.panels.is--4col .panel-links {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  flex-wrap: wrap;
}

.panels.is--4col .panels__item {
  width: calc((100% - 16px) / 2);
  margin-bottom: 16px;
}

@media screen and (max-width: 1024px) {
  .panels.is--4col .panels__item.panels__item--04 {
    order: 7;
  }
  .panels.is--4col .panels__item.panels__item--08 {
    order: 8;
  }
}
@media screen and (min-width: 1025px) {
  .panels.is--4col .panels__item {
    width: calc((100% - 48px) / 4);
  }
  .panels.is--4col .panels__item.panels__item--04 {
    order: 0;
  }
  .panels.is--4col .panels__item.panels__item--08 {
    order: 0;
  }
}

.panels.is--4col .panels__headBlock {
  background: url("../../images/img_solution_01.jpg") no-repeat center / cover;
  height: 80px;
}
.panels.is--4col .panels__item--02 .panels__headBlock {
  background: url("../../images/img_solution_02.jpg") no-repeat center / cover;
}
.panels.is--4col .panels__item--03 .panels__headBlock {
  background: url("../../images/img_solution_03.jpg") no-repeat center / cover;
}
.panels.is--4col .panels__item--04 .panels__headBlock {
  background: url("../../images/img_solution_04.jpg") no-repeat center / cover;
}
.panels.is--4col .panels__item--05 .panels__headBlock {
  background: url("../../images/img_solution_05.jpg") no-repeat center / cover;
}
.panels.is--4col .panels__item--06 .panels__headBlock {
  background: url("../../images/img_solution_06.jpg") no-repeat center / cover;
}
.panels.is--4col .panels__item--07 .panels__headBlock {
  background: url("../../images/img_solution_07.jpg") no-repeat center / cover;
}
.panels.is--4col .panels__item--08 .panels__headBlock {
  background: url("../../images/img_solution_08.jpg") no-repeat center / cover;
}

.panels.is--4col .panels__bodyBlock {
  background: #EDEDED;
  padding: 0 16px;
  text-align: center;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  align-content: center;
  height: 96px;
  transition: all 0.3s;
}
.panels.is--4col .panels__bodyBlock h3 {
  font-weight: bold;
  color: #438459;
  font-size: 14px;
  line-height: 1.43;
  width: 100%;
}
/* どのウィンドウサイズでも単語ごとに改行させる為、spanで囲みinline-block適用 */
.panels.is--4col .panels__bodyBlock h3 span {
  display: inline-block;
  font-family: "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho";
  transition: all 0.3s;
}
.panels.is--4col .panels__bodyBlock h4 {
  margin-top: 2px;
  line-height: 1.5;
  font-size: 10px;
  color: #000;
  width: 100%;
  transition: all 0.3s;
}
.panels.is--4col .panels__item .panels--hover {
  position: relative;
  display: block;
  transition: all 0.3s;
}
.panels.is--4col .panels__item .panels--hover:hover .panels__bodyBlock {
  background: #438459;
}
.panels.is--4col .panels__item .panels--hover:hover .panels__bodyBlock h3 span,
.panels.is--4col .panels__item .panels--hover:hover .panels__bodyBlock h4 {
  color: #fff;
}

/* solution下層6ページの下部パネルの場合は無効化し、枠全体の透明度だけ変更 */
.solutionsDetail .panels.is--4col .panels__item .panels--hover:hover .panels__bodyBlock {
  background: #ededed;
}
.solutionsDetail .panels.is--4col .panels__item .panels--hover:hover .panels__bodyBlock h3 span{
  color: #438459;
}
.solutionsDetail .panels.is--4col .panels__item .panels--hover:hover .panels__bodyBlock h4 {
  color: #000;
}
.solutionsDetail .panels.is--4col .panels__item .panels--hover:hover {
  opacity: .7;
}


.panels.is--4col .panels__item .panels--hover .panels-icon {
  background: url("../../images/ic_btn_off.png") no-repeat left top;
  background-size: 16px;
  position: absolute;
  bottom: 0;
  right: 0;
  width: 16px;
  height: 16px;
}
.panels.is--4col .panels__item .panels--hover:hover .panels-icon {
  background: url("../../images/ic_btn_on.png") no-repeat left top;
  background-size: 16px;
}


.panels .panel-textblocks img {
  width: 100%;
}

.panels .panel-textblocks a {
  width: 100%;
  position: relative;
  background: #fff;
  display: block;
  box-shadow: 3px 3px 0 #c9c9c9;
}

.panels .panel-textblocks a:hover {
  transition: box-shadow 1s;
  box-shadow: 3px 3px 0 #217c4f;
}

.panels .panel-textblocks a:hover dt img {
  box-shadow: #000 0 0 0;
  transition: opacity 0.6s;
  opacity: 0.5;
  filter: alpha(opacity=50);
}

.panels .panel-textblocks a:hover .panels__icon .on {
  box-shadow: #000 0 0 0;
  transition: opacity 0.6s;
  opacity: 1;
  filter: alpha(opacity=100);
}

.panels .panel-textblocks a dd {
  padding: 20px 23px;
}

.panels .panel-textblocks a dd p {
  color: #353a37;
  margin-bottom: 5px;
}

.panels .panel-textblocks a dd p .panels__name {
  font-size: 14px;
  font-weight: bold;
  display: block;
}

.panels .panel-textblocks a dd .panels__ad {
  font-size: 12px;
  line-height: 1.3;
}

.panels .panel-textblocks a .panels__head {
  text-align: center;
  font-size: 20px;
  font-family: "游明朝", "Yu Mincho", "游明朝体", "YuMincho",
    "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E",
    "ＭＳ Ｐ明朝", "MS PMincho";
  color: #259256;
  margin-bottom: 12px;
}

.panels .panel-textblocks a .panels__head span {
  font-size: 16px;
  color: #353a37;
  font-family: "游明朝", "Yu Mincho", "游明朝体", "YuMincho",
    "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E",
    "ＭＳ Ｐ明朝", "MS PMincho";
}

.panels .panel-textblocks a .panels__icon {
  width: 25px;
  position: absolute;
  right: 0;
  bottom: 0;
}

.panels .panel-textblocks a .panels__icon .on {
  display: inline-block;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  filter: alpha(opacity=0);
}

.panels ul {
  overflow: hidden;
}

@media screen and (min-width: 1320px) {
  .is--3col.is--responsive .panels-links {
    margin-right: -2%;
    margin-bottom: -2%;
  }

  .is--3col.is--responsive .panels__item {
    float: none;
    display: inline-block;
    width: 22%;
    margin-right: 2%;
    margin-bottom: 2%;
    vertical-align: top;
  }
}
@media screen and (max-width: 1199px) {
  .panels.is--2col .panels__item {
    /* float: left; */
    width: calc((100% - 16px) / 2);
    margin-bottom: 32px;
  }

  /* .panels.is--2col .panels__item--bgcolor_gray {
    float: left;
    width: 23.3%;
    padding: 2%;
    margin-bottom: 2%;
    margin-right: 2%;
  } */
  /* 外部リンクの記事は、1199px以下の場合最下部に配置するため。（JSでもclass同じにして高さを合わせてます。） */
  .panels.is--2col .panels__item.panels__item--04 {
    order: 7;
  }
  .panels.is--2col .panels__item.panels__item--08 {
    order: 8;
  }
}
@media screen and (min-width: 1200px) {
  .panels.is--2col .panels__item {
    width: calc((100% - 24px) / 4);
    margin-bottom: 8px;
  }
  .panels__item.panels__item--04 {
    order: 0;
  }
  .panels__item.panels__item--08 {
    order: 0;
  }
}
.map {
  overflow: hidden;
  min-width: 870px;
  margin: 0 auto 60px;
}

.map .mapimg {
  position: relative;
  display: block;
  width: 443px;
  margin: 0 auto;
}

.map .mapimg ul {
  position: absolute;
  width: 100%;
  height: 100%;
  display: block;
  top: 0;
  left: 0;
}

.map .mapimg li {
  position: absolute;
  width: 4px;
  height: 4px;
  border-radius: 50%;
  background: #259256;
  position: absolute;
  top: 50%;
  left: 50%;
}

.map .mapimg li:nth-child(1) {
  /*ハノイ*/
  left: 162px;
  top: 207px;
}

.map .mapimg li:nth-child(2) {
  /*ホーチミン*/
  left: 169px;
  top: 223px;
}

.map .mapimg li:nth-child(3) {
  /*タイ*/
  left: 161px;
  top: 220px;
}

.map .mapimg li:nth-child(4) {
  /*マレーシア*/
  left: 166px;
  top: 248px;
}

.map .mapimg li:nth-child(5) {
  /*シンガポール*/
  left: 172px;
  top: 252px;
}

.map .mapimg li:nth-child(6) {
  /*フィリピン*/
  left: 187px;
  top: 223px;
}

.map .mapimg li:nth-child(7) {
  /*インドネシア*/
  left: 182px;
  top: 268px;
}

.map .mapimg li:nth-child(8) {
  /*グルガオン*/
  left: 128px;
  top: 208px;
}

.map .mapimg li:nth-child(9) {
  /*チェンナイ*/
  left: 132px;
  top: 218px;
}

.map .mapimg li:nth-child(10) {
  /*バンガロール*/
  left: 124px;
  top: 221px;
}

.map .mapimg li:nth-child(11) {
  /*東京*/
  left: 211px;
  top: 181px;
}

.map .mapimg li:nth-child(12) {
  /*大阪*/
  left: 205px;
  top: 183px;
}

.map .mapimg li:nth-child(13) {
  /*上海*/
  left: 184px;
  top: 185px;
}

.map .mapimg li:nth-child(14) {
  /*蘇州*/
  left: 178px;
  top: 183px;
}

.map .mapimg li:nth-child(15) {
  /*香港*/
  left: 174px;
  top: 206px;
}

.map .mapimg li:nth-child(16) {
  /*台湾*/
  left: 186px;
  top: 204px;
}

.map .mapimg li:nth-child(17) {
  /*オーストラリア*/
  left: 235px;
  top: 324px;
}

.map .mapimg li:nth-child(18) {
  /*メキシコ*/
  left: 345px;
  top: 183px;
}

.map .mapimg li:nth-child(19) {
  /*ミュンヘン*/
  left: 38px;
  top: 153px;
}

.map .mapimg li:after {
  content: "";
  width: 4px;
  height: 4px;
  border-radius: 50px;
  background: #259256;
  position: absolute;
  top: 0%;
  left: 0%;
  opacity: 0.2;
  filter: alpha(opacity=20);
  -webkit-transform: scale(2);
  transform: scale(2);
}

.map .mapimg li.current {
  background: #e84911;
}

.map .mapimg li.current:after {
  content: "";
  width: 4px;
  height: 4px;
  border-radius: 50%;
  background: #e84911;
  position: absolute;
  top: 0%;
  left: 0%;
  -webkit-animation-name: current;
  animation-name: current;
  -webkit-animation-duration: 0.5s;
  animation-duration: 0.5s;
  -webkit-animation-direction: alternate;
  animation-direction: alternate;
  -webkit-animation-timing-function: ease;
  animation-timing-function: ease;
  -webkit-animation-iteration-count: infinite;
  animation-iteration-count: infinite;
  opacity: 0.2;
  filter: alpha(opacity=20);
  z-index: 1;
}

@-webkit-keyframes current {
  from {
    -webkit-transform: scale(1);
    transform: scale(1);
  }

  to {
    -webkit-transform: scale(3.5);
    transform: scale(3.5);
  }
}

@keyframes current {
  from {
    -webkit-transform: scale(1);
    transform: scale(1);
  }

  to {
    -webkit-transform: scale(3.5);
    transform: scale(3.5);
  }
}

.map-navlink {
  width: 198px;
}

.map-navlink.is--left {
  float: left;
}

.map-navlink.is--right {
  float: right;
}

.map-navlink dl,
.map-navlink .map-link {
  margin-bottom: 18px;
}

.map-navlink dt,
.map-navlink dd {
  margin-bottom: 1px;
  width: 100%;
  line-height: 13px;
}

.map-navlink dt,
.map-navlink .map-link {
  font-size: 13px;
  background: #259256;
  color: #fff;
  padding-left: 1em;
  position: relative;
  box-sizing: border-box;
}

.map-navlink .map-link:after {
  position: absolute;
  content: "";
  width: 4px;
  height: 4px;
  border-right: 1px solid #fff;
  border-top: 1px solid #fff;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  right: 8px;
  top: 13px;
}

.map-navlink dd a {
  position: relative;
  display: inline-block;
  width: 198px;
  height: 29px;
  background: #efefef;
  color: #259256;
  font-size: 13px;
  box-sizing: border-box;
  padding-left: 1em;
}

.map-navlink dd a:after {
  position: absolute;
  content: "";
  width: 4px;
  height: 4px;
  border-right: 1px solid #259256;
  border-top: 1px solid #259256;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  right: 8px;
  top: 13px;
}

.map-navlink dd a span {
  color: #259256;
}

.map-navlink dd a:hover {
  background: #eefcf4;
}

.map-navlink .map-link:hover {
  background: #62bb8a;
}

.map-navlink span {
  padding-left: 1em;
  color: #fff;
  font-size: 11px;
}

.map-navlink dt,
.map-navlink dd,
.map-navlink .map-link {
  display: inline-block;
  width: 198px;
  height: 29px;
  line-height: 29px;
  box-sizing: border-box;
}

.list-imgtxt {
  border-top: 1px solid #e6e5e6;
  padding: 28px 0;
  overflow: hidden;
}

.list-imgtxt__img {
  float: left;
}

.list-imgtxt__txt {
  float: left;
  display: block;
}

.list-imgtxt__txt .title {
  font-weight: bold;
  font-size: 18px;
  color: #353a37;
  margin-bottom: 1em;
}

.list-imgtxt__txt .data-list {
  line-height: 1.6;
  margin-bottom: 1em;
}

.list-imgtxt__txt .data-list li {
  font-size: 16px;
  color: #353a37;
}

.list-imgtxt__txt .description {
  line-height: 1.7;
  font-size: 16px;
  color: #353a37;
}

/* 活動実績、ニュースのアーカイブページのリスト */
.list-index {
  padding-bottom: 5%;
  border-top: 1px solid #e6e5e6;
}

.list-index > li > div {
  position: relative;
  padding: 2.5% 1%;
  border-bottom: 1px solid #e6e5e6;
}

.list-index > li > a {
  display: block;
  position: relative;
  padding: 2.5% 1%;
  border-bottom: 1px solid #e6e5e6;
}

.list-index > li > a:hover {
  background: #edf2f0;
}

.list-index > li > a:after {
  content: "";
  display: block;
  position: absolute;
  right: 2%;
  top: 50%;
  width: 10px;
  height: 10px;
  margin-top: -7px;
  border-top: 1px solid #259256;
  border-right: 1px solid #259256;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

.list-index > li > a p:first-child {
  margin-bottom: 16px;
}

.list-index > li > div p:first-child {
  margin-bottom: 16px;
}

.list-index__left {
  float: left;
  width: 22%;
  min-width: 220px;
}

.list-index__right {
  overflow: hidden;
  padding-left: 2%;
}

.list-index__date,
.list-index__headings,
.list-index__address {
  font-size: 14px;
  color: #353a37;
  line-height: 1.5;
}

.list-index__address {
  padding-top: 1em;
}

.list-index__headings + .list-index__headings {
  padding-top: 14px;
}

.list-index__title,
.list-index__title > a {
  overflow: hidden;
  font-size: 16px;
  color: #0068aa;
  line-height: 1.5;
}

.list-index--type_regional-info > li > a p:first-child {
  margin-right: 2%;
  margin-bottom: 0;
}

.list-index--type_regional-info .list-index__right {
  margin-left: 0;
  overflow: visible;
}

/* ページャー */
.index-pager {
  margin-bottom: 4%;
  text-align: center;
}

.index-pager li {
  display: inline-block;
}

.index-pager li.active {
  background: #ddd;
}

.index-pager li:hover {
  background: #ddd;
}

.index-pager a,
.index-pager span {
  display: block;
  width: 42px;
  height: 42px;
  border: 1px solid #e9e9e9;
  line-height: 42px;
  color: #353a37;
  text-align: center;
  box-sizing: border-box;
}

.index-pager .current {
  background: #ddd;
}

.index-pager .dots:hover {
  background: #fff;
}

/* サイトマップ */
.sitemap-lists {
  float: left;
  width: 45%;
  margin-top: 50px;
  margin-right: 20px;
}

.sitemap-list__link {
  margin-bottom: 20px;
  padding-left: 1em;
  background: url("../../images/sitemap/ic_arrow_l.png") no-repeat;
  font-size: 13px;
  font-weight: bold;
}

.sitemap-list__link a {
  color: #333;
}

.sitemap-list__link a:hover {
  text-decoration: underline;
}

.sitemap-list__link dt,
.sitemap-list__link dd {
  margin-bottom: 14px;
}

.sitemap-list__link dd {
  padding-left: 1em;
  background: url("../../images/sitemap/ic_arrow_s.png") no-repeat left center;
  font-weight: normal;
}

.sitemap-list__colsblock {
  column-count: 2;
}

.table--recruit {
  margin-bottom: 50px;
}

.table-head--seminar,
.table-head--recruit,
.table-head--video {
  background: #9c9d9c;
  border: solid #fff 2px;
  border-bottom: none;
  line-height: 44px;
  text-align: center;
  font-size: 18px;
  color: #fff;
}

.table-body--recruit {
  width: 100%;
}

.table-body--recruit th {
  background: #eaeaea;
  text-align: left;
  max-width: 200px;
  width: 25%;
  border: solid #fff 2px;
  padding: 20px 25px;
  color: #353a37;
  font-size: 14px;
}

.table-body--recruit td {
  background: #f4f4f4;
  border: solid #fff 2px;
}

.table-body--recruit td p {
  margin: 14px;
  color: #353a37;
  font-size: 14px;
  line-height: 1.4;
}

.table-body--recruit td ul {
  margin-left: 14px;
}

.table-body--recruit td li {
  list-style-type: disc;
  margin: 14px;
  color: #353a37;
  font-size: 14px;
}

.table-body--seminar、
.table-body--video {
  width: 100%;
}

.table-body--seminar th,
.table-body--video th {
  background: #eaeaea;
  text-align: left;
  width: 25%;
  min-width: 8em;
  border: solid #fff 2px;
  padding: 20px 2.5%;
  color: #353a37;
  font-size: 14px;
  box-sizing: border-box;
}

.table-body--seminar td,
.table-body--video td {
  padding: 1em;
  background: #f4f4f4;
  border: 2px solid #fff;
  color: #353a37;
  font-size: 14px;
  line-height: 1.4;
  box-sizing: border-box;
}

.table-body--seminar .map p,
.table-body--video .map p {
  display: inline-block;
}

.table-body--seminar .map span,
.table-body--video .map span {
  margin-right: 2em;
}

.table-body--seminar .map p:before,
.table-body--video .map p:before {
  content: url("../../images/seminar/ic_map.png");
  position: relative;
  top: 5px;
  right: 6px;
}

.table-body--company {
  width: 100%;
}

.table-body--company th {
  background: #eaeaea;
  text-align: left;
  min-width: 200px;
  width: 25%;
  border: solid #fff 2px;
  padding: 20px 25px;
  color: #353a37;
  font-size: 14px;
}

.table-body--company td {
  padding: 20px 25px;
  background: #f4f4f4;
  border: solid #fff 2px;
}

.notfound h1 {
  margin-top: 200px;
  text-align: center;
  margin-bottom: 50px;
}

.notfound h2 {
  text-align: center;
  font-size: 40px;
  margin-bottom: 65px;
  color: #238755;
}

.notfound p {
  font-size: 16px;
  text-align: center;
  margin-bottom: 95px;
}

.solution dt {
  padding-bottom: 25px;
  line-height: 1.3;
  text-align: center;
  font-size: 16px;
  color: #353a37;
}

.solution dd {
  text-align: center;
}

.solution dd img {
  padding-bottom: 20px;
}

.solution dd p {
  line-height: 1.5;
  text-align: justify;
  font-size: 14px;
  color: #353a37;
}

.case .is--3col .panels__item {
  margin-bottom: 3%;
  background: #f5f5f5;
}

.case .is--3col .panels__item a {
  padding: 6% 6% 10%;
  box-sizing: border-box;
}

.case .is--3col .panels__item dt {
  overflow: hidden;
  margin-bottom: 10px;
}

.case .is--3col .panels__item dt img {
  height: auto;
}

.case-title {
  overflow: hidden;
  margin-bottom: 8px;
  line-height: 1.6;
  font-size: 16px;
  color: #0068aa;
  text-decoration: underline;
}

.case-country {
  margin-bottom: 10px;
}

.case-country span {
  display: inline-block;
  padding: 4px 6px;
  background: #238755;
  color: #fff;
  font-size: 14px;
  vertical-align: top;
}

.case-client {
  font-size: 14px;
  color: #353a37;
}

.case .col3 {
  margin-bottom: 40px;
  padding: 10px 0;
  background: #ededed;
}

.case .col3__box h3 {
  padding: 18px 20px 15px;
  font-weight: bold;
}

.case .col3__box dl,
.case .col3__box p {
  padding: 0 20px 18px;
}

.case .col3__box dt {
  font-weight: bold;
  margin-bottom: 10px;
}

.case .col3__box dd {
  line-height: 1.8;
}

.case .point-section:nth-of-type(3) {
  margin-bottom: 50px;
}

@media screen and (max-width: 1320px) {
  .case .is--3col .panels__item {
    width: 46%;
  }
}

@media screen and (min-width: 1320px) {
  .wrap-case .btn-wrap {
    width: 470px;
  }
}

.office h2 {
  margin-bottom: 24px;
  font-size: 24px;
  color: #259256;
}

.office .table table {
  width: 100%;
}

.office .table th {
  width: 25%;
  padding: 20px;
  max-width: 200px;
  background: #eaeaea;
  color: #353a37;
  line-height: 1.9;
  text-align: left;
  font-size: 14px;
  border-right: 3px solid #fff;
  border-bottom: 3px solid #fff;
}

.office .table td {
  width: 75%;
  padding: 20px;
  background: #f4f4f4;
  line-height: 1.9;
  vertical-align: top;
  font-size: 14px;
  color: #353a37;
  border-bottom: 3px solid #fff;
}

.office .table td .professional {
  overflow: hidden;
  margin-right: 2%;
  width: 500px;
}

.office .table td .professional li {
  float: left;
  min-width: 200px;
  margin-right: 2%;
  margin-bottom: 1em;
}

.office #map {
  margin-top: 10px;
}

.contact {
  width: 100%;
  margin-top: 60px;
}

.contact th {
  position: relative;
  width: 25%;
  min-width: 192px;
  padding-bottom: 1.5em;
  padding-left: 4em;
  height: 3.5em;
  text-align: left;
  box-sizing: border-box;
  vertical-align: top;
  font-size: 14px;
  font-weight: bold;
  color: #353a37;
}

.contact th span {
  font-weight: normal;
  font-size: 11px;
}

.contact td {
  width: 75%;
  padding-bottom: 1.5em;
  padding-left: 1em;
  vertical-align: top;
}

.contact td input,
.contact td textarea {
  font-size: 14px;
  border: 2px solid #e5e5e5;
}

.contact td.textarea textarea {
  width: 80%;
  font-size: 14px;
}

.contact .required {
  position: absolute;
  left: 2px;
  top: 2px;
  font-size: 12px;
  padding: 3px;
  border: 2px solid #e34b37;
  color: #e34b37;
}

.contact .required_en {
  position: absolute;
  left: -28px;
  top: -5px;
  font-size: 12px;
  padding: 3px;
  border: 2px solid #e34b37;
  color: #e34b37;
}

.contact.en {
  width: 95%;
  margin-top: 60px;
  margin-left: 5%;
}

.contact.en .with_ic {
  font-size: 14px;
  font-weight: bold;
}

.mw_wp_form mw_wp_form_complete p {
  margin-bottom: 1em;
}

.address-header {
  background: #9c9d9c;
  border: solid #fff 2px;
  border-bottom: none;
  line-height: 44px;
  text-align: center;
  font-size: 18px;
  color: #fff;
}

.address-body {
  padding: 25px 44px;
  color: #353a37;
  font-size: 14px;
}

.address-body .address__name {
  font-weight: bold;
  font-size: 14px;
  color: #353a37;
}

.address-body p {
  margin: 14px;
  font-size: 14px;
  color: #353a37;
}

.address-body a {
  color: #0068aa;
}

.address-body a:hover {
  text-decoration: underline;
}

.address .address-supplement {
  border-top: 2px solid #e6e5e6;
  padding: 25px 44px;
  font-size: 14px;
  color: #353a37;
}

.professionals-profiles {
  margin-bottom: 5%;
  font-size: 14px;
}

.professionals-profiles > ul > li {
  overflow: hidden;
  padding-top: 2.5%;
  padding-bottom: 70px;
  border-top: 1px solid #e6e5e6;
}

.professionals-profiles > ul > li:last-child {
  padding-bottom: 40px;
  border-bottom: 1px solid #e6e5e6;
}

.box-route {
  margin: 0 10px 0;
  font-size: 14px;
  line-height: 1.5;
}

.box-route > div {
  margin-bottom: 20px;
}

.box-route ul {
  margin: 10px 0 0 20px;
  list-style: disc inside;
}

.box-modal {
  margin-bottom: 0;
}

.box-modal img {
  width: 650px;
  height: 600px;
}

.box-modal__btns {
  margin: 5px auto 10px;
  text-align: center;
}

/* ソリューション事例 */
.wrap-casestudies {
  padding-bottom: 48px;
}

.wrap-casestudies__pagenav {
  display: flex;
  margin-top: 40px;
  padding: 0 4%;
}

.wrap-casestudies__pagenav_item {
  width: calc(100% / 6);
  border-right: 1px solid #cfcfcf;
}

.wrap-casestudies__pagenav_item:last-of-type {
  border-right: 0;
}

.wrap-casestudies__pagenav_link {
  display: block;
}

.wrap-casestudies__pagenav_number {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 38px;
  padding: 0 5px;
  background-color: #e6e5e6;
  color: #fff;
  font-size: 24px;
  text-align: center;
}

.wrap-casestudies__pagenav_title {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  height: 72px;
  padding: 0 5px;
  background-color: #f5f5f5;
  color: #8a8a8a;
  font-size: 14px;
  font-weight: bold;
  text-align: center;
  line-height: 1.28;
}

.wrap-casestudies__pagenav_title:before {
  content: "";
  position: absolute;
  width: 6px;
  height: 6px;
  border-top: 1px solid #8a8a8a;
  border-right: 1px solid #8a8a8a;
  left: calc(50% - 6px);
  bottom: 6px;
  -webkit-transform: rotate(135deg);
  transform: rotate(135deg);
}

.is-active .wrap-casestudies__pagenav_number {
  background-color: #238755;
}

.is-active .wrap-casestudies__pagenav_title {
  background-color: #fff;
  color: #238755;
}

.is-active .wrap-casestudies__pagenav_title:before {
  border-top: 1px solid #238755;
  border-right: 1px solid #238755;
}

.wrap-casestudies__article {
  padding: 0 4%;
}

.wrap-casestudies__article[hidden] {
  display: none;
}

.wrap-casestudies__title {
  position: relative;
  margin-top: 40px;
  padding: 50px 0 25px;
  border-bottom: 1px solid #e6e5e6;
}

.wrap-casestudies__title:before {
  content: "";
  position: absolute;
  width: 40px;
  height: 40px;
  background-image: url(../../images/casestudies/ic-headline.png);
  background-repeat: no-repeat;
  background-size: contain;
  top: 0;
  left: calc(50% - 20px);
}

.wrap-casestudies__title_number {
  display: block;
  font-size: 24px;
  color: #238755;
  text-align: center;
}

.wrap-casestudies__title_text {
  display: block;
  margin-top: 12px;
  font-size: 30px;
  color: #238755;
  text-align: center;
}

.wrap-casestudies__section {
  padding: 0 84px;
}

.wrap-casestudies__subtitle {
  margin-top: 40px;
  font-size: 24px;
  text-align: center;
}

.wrap-casestudies__desc {
  margin-top: 20px;
  font-size: 14px;
  line-height: 2;
}

.wrap-casestudies__img {
  width: 100%;
  margin-top: 35px;
  text-align: center;
}

.wrap-casestudies__img img {
  max-width: 700px;
  width: 100%;
}

.wrap-casestudies01__img img {
  max-width: 750px;
}

.wrap-casestudies__box {
  position: relative;
  margin-top: 35px;
  padding: 20px;
  border: 1px solid #238755;
}

.wrap-casestudies__box + .wrap-casestudies__box {
  margin-top: 42px;
}

.wrap-casestudies__box + .wrap-casestudies__box:before {
  content: "";
  position: absolute;
  border-style: solid;
  border-width: 22px 63px 0 63px;
  border-color: #238755 transparent transparent transparent;
  top: -43px;
  left: calc(50% - 63px);
}

.wrap-casestudies__box_title {
  position: relative;
  margin: -20px -20px 0;
  padding: 11px 0;
  background-color: #238755;
  color: #fff;
  font-size: 18px;
  text-align: center;
}

.wrap-casestudies__box_title--sub {
  margin-left: 7px;
  font-size: 14px;
}

.wrap-casestudies__box_title--phase {
  position: absolute;
  font-size: 18px;
  margin: auto 0;
  top: calc(50% - 9px);
  left: 20px;
}

.wrap-casestudies__box_desc {
  margin-top: 15px;
  font-size: 14px;
  line-height: 2;
}

.wrap-casestudies__box_desc--check {
  position: relative;
  margin-top: 15px;
  padding-left: 22px;
  font-size: 14px;
  line-height: 2;
}

.wrap-casestudies__box_desc--check:before {
  content: "";
  position: absolute;
  display: block;
  width: 17px;
  height: 16px;
  background-image: url(../../images/casestudies/ic-check.png);
  background-repeat: no-repeat;
  background-size: contain;
  top: 4px;
  left: 0;
}

.wrap-casestudies__box_subtitle {
  margin-top: 20px;
  color: #238755;
  font-size: 18px;
  text-align: center;
}

.wrap-casestudies__box_subtitle--sub {
  margin-left: 7px;
  font-size: 14px;
}

.wrap-casestudies__box_list {
  margin-top: 10px;
  padding-left: 22px;
  font-size: 14px;
  line-height: 1.714;
}

.wrap-casestudies__box_listitem {
  padding-left: 1em;
  text-indent: -1em;
}

.wrap-casestudies__box_img {
  width: 100%;
  margin-top: 20px;
  text-align: center;
}

.wrap-casestudies__box_img img {
  max-width: 700px;
  width: 100%;
}

.wrap-casestudies__footnav {
  display: flex;
  justify-content: center;
  margin-top: 40px;
}

.wrap-casestudies__footnav_prev a {
  display: block;
  position: relative;
  font-size: 16px;
  color: #238755;
  border-bottom: 1px solid #238755;
}

.wrap-casestudies__footnav_prev a:before {
  content: "";
  position: absolute;
  width: 7px;
  height: 7px;
  border-top: 1px solid #238755;
  border-right: 1px solid #238755;
  top: calc(50% - 3px);
  left: -10px;
  transform: rotate(-135deg);
}

.wrap-casestudies__footnav_next a {
  display: block;
  position: relative;
  font-size: 16px;
  color: #238755;
  border-bottom: 1px solid #238755;
}

.wrap-casestudies__footnav_next a:before {
  content: "";
  position: absolute;
  width: 7px;
  height: 7px;
  border-top: 1px solid #238755;
  border-right: 1px solid #238755;
  top: calc(50% - 3px);
  right: -10px;
  transform: rotate(45deg);
}

.wrap-casestudies__footnav_prev + .wrap-casestudies__footnav_next {
  margin-left: 10px;
  padding-left: 10px;
  border-left: 1px solid #e6e5e6;
}

/* ここからsolutions/** の6ページ向け */
.heading__solDetail {
  color: #438459;
  border-bottom: 1px solid #E9E8E9;
  padding: 0 0 16px;
  font-size: 30px;
  font-weight: 600;
  line-height: 1.5;
  text-align: center;
  max-width: 868px;
  margin: 40px auto 0;
}
.wrap-solDetail {
  max-width: 700px;
  margin: 0 auto;
  padding: 0 4%;
}
.wrap-solDetail h1, .wrap-solDetail h2, .wrap-solDetail h3, .wrap-solDetail h4, .wrap-solDetail h5, .wrap-solDetail h6, .wrap-solDetail p, .wrap-solDetail span, .wrap-solDetail strong, .wrap-solDetail li, .wrap-solDetail th, .wrap-solDetail td, .wrap-solDetail div, .wrap-solDetail a {
  font-family: 'Hiragino Kaku Gothic Pro', 'ヒラギノ角ゴ Pro W3', sans-serif;
}
.wrap-solDetail__heading--second {
  font-size: 24px;
  font-weight: 600;
  line-height: 1.5;
  text-align: center;
  margin-top: 30px;
}
.wrap-solDetail__lists+.wrap-solDetail__heading--second,
.wrap-solDetail__img+.wrap-solDetail__heading--second {
  margin-top: 60px;
}
.wrap-solDetail__heading--third {
  font-size: 16px;
  font-weight: 700;
  line-height: 1.5;
  margin-top: 20px;
}
.wrap-solDetail__taskBox + .wrap-solDetail__heading--third {
  margin-top: 40px;
}
.wrap-solDetail__heading--fourth {
  font-size: 14px;
  font-weight: 700;
  line-height: 1.5;
}
.wrap-solDetail__heading--third +
.wrap-solDetail__heading--fourth {
  margin-top: 20px;
}
.wrap-solDetail__text {
  font-size: 14px;
  line-height: 1.5;
  font-weight: 400;
  margin-top: 20px;
}
.wrap-solDetail__heading--third+.wrap-solDetail__text {
  margin-top: 10px;
}
.wrap-solDetail__text strong {
  color: #438459;
}
.wrap-solDetail__text .symbol {
  color: #438459;
}
.wrap-solDetail__note {
  font-size: 12px;
  margin-top: 10px;
  line-height: 1.5;
  position: relative;
  padding-left: 14px;
}
.wrap-solDetail__note::before {
  content: "※";
  color: #438459;
  position: absolute;
  top: 0;
  left: 0;
  font-size: 12px;
  line-height: 1.5;
}
.wrap-solDetail__table {
  margin-top: 20px;
  border: solid 1px #438459;
  max-width: 100%;
}
.wrap-solDetail__table.mt13 {margin-top: 13px;}
.wrap-solDetail__table th {
  background: #438459;
  color: #fff;
  padding: 14px 20px;
  width: 150px;
  font-weight: 700;
  text-align: left;
  border-left: 1px solid #438459;
  border-top: 1px solid #E9E8E9;
  line-height: 1.5;
}
.wrap-solDetail__table td {
  padding: 15px 20px 14px;
  width: 550px;
  text-align: left;
  font-size: 14px;
  border-right: 1px solid #438459;
  border-top: 1px solid #E9E8E9;
  line-height: 1.5;
}
.wrap-solDetail__table tr:first-of-type th,
.wrap-solDetail__table tr:first-of-type td{
  border-top: none;
}
.wrap-solDetail__table li{
  font-size: 14px;
  line-height: 1.5;
  padding-left: 20px;
  position: relative;
}
.wrap-solDetail__table li::before{
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 15px;
  height: 15px;
  background: url(../../images/ic_check_01.svg) no-repeat center;
  background-size: 15px;
}
.wrap-solDetail__table li + li{
  margin-top: 5px;
}
.wrap-solDetail__lists {
  margin-top: 20px;
  background: #ededed;
  padding: 20px;
}
.wrap-solDetail__lists.mt10 {
  margin-top: 10px;
}
.wrap-solDetail__listsItem {
  font-weight: 700;
  font-size: 14px;
  line-height: 1.5;
  position: relative;
  padding-left: 20px;
}
.wrap-solDetail__listsItem::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 15px;
  height: 15px;
  background: url(../../images/ic_check_01.svg) no-repeat center;
  background-size: 15px;
}
.wrap-solDetail__listsItem + .wrap-solDetail__listsItem {
  margin-top: 15px;
}
.wrap-solDetail__listsItem strong {
  color: #438459;
}
.wrap-solDetail__listsItem .underline {
  text-decoration: underline;
}
.wrap-solDetail__img{
  max-width: 100%;
  margin-top: 20px;
}
.wrap-solDetail__img img{
  max-width: 100%;
  height: auto;
}
.wrap-solDetail__img--center{
  text-align: center;
}
.wrap-solDetail__taskBox {
  border: 1px solid #438459;
  margin-top: 20px;
}
.wrap-solDetail__taskBox_title {
  background: #438459;
  color: #fff;
  font-size: 14px;
  font-weight: 600;
  line-height: 1.5;
  padding: 5px 0 4px;
  text-align: center;
}
.wrap-solDetail__taskBox_lists {
  font-size: 14px;
  font-weight: 600;
  line-height: 1.5;
  padding: 20px;
  border-bottom: solid 1px #438459;
}
.wrap-solDetail__taskBox_listsItem {
  font-size: 14px;
  font-weight: 600;
  line-height: 1.5;
  font-weight: 700;
  position: relative;
  padding-left: 15px;
}
.wrap-solDetail__taskBox_listsItem::before {
  content: "";
  position: absolute;
  left: 0px;
  top: 7px;
  width: 5px;
  height: 5px;
  background: #438459;
  display: block;
  border-radius: 50%;
}
.wrap-solDetail__taskBox_listsItem strong {
  color: #438459;
}
.wrap-solDetail__taskBox_listsItem + .wrap-solDetail__taskBox_listsItem {
  margin-top: 15px;
}


.wrap-solDetail__lists_box {
  background: #fff;
  padding: 20px;
  margin-top: 10px;
}
.wrap-solDetail__lists_boxFlex {
  display: flex;
  align-items: flex-start;
}
.wrap-solDetail__arrowBox {
  margin-top: 20px;
  display: flex;
  align-items: flex-start;
}
.wrap-solDetail__arrowBox_item {
  width: 214px;
  background: #fff;
  color: #438459;
  border: solid 1px #438459;
  font-size: 18px;
  font-weight: 700;
  padding: 15px 0 15px 10px;
  position: relative;
  text-align: center;
  box-sizing: border-box;
}
.wrap-solDetail__arrowBox_item::before {
  position: absolute;
  content: "";
  right: -11px;
  top: 0;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 25px 0 25px 10px;
  border-color: transparent transparent transparent #438459;
}
.wrap-solDetail__arrowBox_item::after {
  position: absolute;
  content: "";
  right: -10px;
  top: 0;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 25px 0 25px 10px;
  border-color: transparent transparent transparent #fff;
}
.wrap-solDetail__arrowBox_item--second {
  background: #438459;
  color: #fff;
  width: 466px;
  padding: 16px 0 16px 10px;
  margin: 0 0 0 10px;
  font-size: 18px;
  font-weight: 700;
  text-align: center;
  position: relative;
  box-sizing: border-box;
}
.wrap-solDetail__arrowBox_item--second::before {
  position: absolute;
  content: "";
  right: -10px;
  top: 0;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 25px 0 25px 10px;
  border-color: transparent transparent transparent #438459;
}

.wrap-solDetail__lists_boxItem +.wrap-solDetail__lists_boxItem {
  margin-left: 30.5px;
  padding-left: 20px;
}
.wrap-solDetail__lists_boxItem {
  position: relative;
}
.wrap-solDetail__lists_boxItem +.wrap-solDetail__lists_boxItem::before {
  content: "";
  position: absolute;
  left: -10px;
  top: calc(50% - 10px);
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 10.5px 0 10.5px 10px;
  border-color: transparent transparent transparent #438459;
}
.wrap-solDetail__lists_boxItem .wrap-solDetail__text {
  margin-top: 5px;
}


.wrap-solDetail__taskBox_body {
  background: #ededed;
  padding: 38px 0 0;
  text-align: center;
  position: relative;
}
.wrap-solDetail__taskBox_body::before {
  content: "";
  position: absolute;
  left: calc(50% - 30px);
  top: 0;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 20px 30px 0 30px;
  border-color: #228754 transparent transparent transparent;
}
.wrap-solDetail__taskBox_imgIc {
  display: inline-block;
  vertical-align: middle;
  max-width: 40px;
  margin-right: 12px;
}
.wrap-solDetail__taskBox_entry {
  display: inline-block;
  font-size: 16px;
  font-weight: 700;
  line-height: 1.5;
  text-align: center;
}
.wrap-solDetail__taskBox_body .wrap-solDetail__lists {
  text-align: left;
  margin-top: 10px;
}
.wrap-solDetail__taskBox_body > .wrap-solDetail__text {
  text-align: left;
  margin-top: 0;
  padding: 0 20px;
}
.wrap-solDetail__taskBox_img {
  max-width: 100%;
  height: auto;
}
.wrap-solDetail__taskBox_imgLogo {
  display: flex;
  width: 100%;
  position: relative;
  justify-content: flex-start;
  align-items: center;
}
.wrap-solDetail__taskBox_imgLogo img{
  padding-left: 20px;
  position: relative;
  top: -5px;
}
.wrap-solDetail__taskBox_body .wrap-solDetail__heading--fourth {
  margin-left: 8px;
}
.wrap-solDetail__taskBox_border {
  position: relative;
  margin-left: auto;
}
.wrap-solDetail__taskBox_border::before {
  content: "";
  position: absolute;
  height: 1px;
  width: 463px;
  right: 0;
  border-top: 1px solid #000;
}
@media screen and (max-width: 980px) {
  .wrap-solDetail__taskBox_body .wrap-solDetail__heading--fourth {
    min-width: 69px;
  }
  .wrap-solDetail__taskBox_border {
    width: 100%;
  }
  .wrap-solDetail__taskBox_border::before {
      width: 100%;
  }
}


.wrap-solDetail__img + .wrap-solDetail__borderBox {
  margin-top: 50px;
}
.wrap-solDetail__borderBox {
  border: 1px solid #438459;
  padding: 20px;
  margin-top: 20px;
}
.wrap-solDetail__borderBox_head {
  display: flex;
  align-items: center;
}
.wrap-solDetail__borderBox_head > img{
  margin-left: 10px;
}
.wrap-solDetail__borderBox + .wrap-solDetail__borderBox {
  margin-top: 20px;
}
.wrap-solDetail__borderBox .wrap-solDetail__heading--third {
  margin-top: 0;
}
.wrap-solDetail__borderBox_head + .wrap-solDetail__text {
  margin-top: 8px;
}
.wrap-solDetail__borderBox .wrap-solDetail__img {
  text-align: center;
}

.wrap-solDetail__flowBox {
  padding: 20px;
  border: 1px solid #438459;
  margin-top: 24px;
  position: relative;
}
.wrap-solDetail__flowBox::before,
.wrap-solDetail__flowBox::after {
  content: "";
  position: absolute;
  left: 85px;
  top: 0;
  width: 0;
  height: 0;
  margin: auto;
}
.wrap-solDetail__flowBox::before {
  top: -20px;
  border-style: solid;
  border-color: transparent transparent #438459 transparent;
  border-width: 0 30px 20px 30px;
}
.wrap-solDetail__flowBox::after {
  top: -19px;
  border-style: solid;
  border-color: transparent transparent #fff transparent;
  border-width: 0 30px 20px 30px;
  z-index: 10;
}
.wrap-solDetail__flowBox .wrap-solDetail__heading--third {
  margin-top: 0;
}
.wrap-solDetail__flowBox_lists {
  margin-top: 10px;
}
.wrap-solDetail__flowBox_listsItem {
  font-size: 14px;
  font-weight: 700;
  line-height: 1.5;
}
.wrap-solDetail__flowBox_listsItem + .wrap-solDetail__flowBox_listsItem {
  margin-top: 10px;
}
.wrap-solDetail__flowBox_listsItem .wrap-solDetail__img {
  margin-top: 10px;
}


.wrap-solDetail__countrys {
  display: flex;
  align-items: center;
  margin-top: 20px;
}
.wrap-solDetail__countrys p {
  font-weight: bold;
  font-size: 14px;
}
.wrap-solDetail__countrys > p {
  margin-right: 16px;
}
.wrap-solDetail__countryItem {
  display: flex;
  align-items: center;
}
.wrap-solDetail__countryItem + * {
  margin-left: 64px;
}
.wrap-solDetail__countryItem > img {
  display: block;
  width: 60px;
  height: auto;
  margin-right: 16px;
}


.wrap-solDetail__survey {
  width: 100%;
  margin-top: 20px;
  background-color: #fff;
  border: 1px solid #438459;
}
.wrap-solDetail__survey_title {
  text-align: center;
  color: #fff;
  font-size: 14px;
  line-height: 30px;
  background-color: #438459;
}
.wrap-solDetail__survey_lists {
  padding: 20px;
}
.wrap-solDetail__survey_listItem {
  padding-left: 1rem;
  text-indent: -0.6rem;
  font-size: 14px;
}
.wrap-solDetail__survey_listItem > span {
  display: inline-block;
  margin-right: 5px;
  color: #438459;
  font-weight: bold;
}
.wrap-solDetail__survey_listItem + * {
  margin-top: 15px;
}


@media print {
  #gnav,
  #footer,
  #cboxOverlay,
  .btn-group--fixed,
  .box-modal__btns,
  .print #contents,
  .btn-area {
    display: none !important;
  }

  #contents {
    margin-left: 0;
  }

  #colorbox {
    top: 0 !important;
    left: auto !important;
  }

  .print #colorbox,
  .print #cboxWrapper {
    overflow: visible !important;
  }

  .print #cboxLoadedContent {
    height: auto !important;
  }
}
