@charset "UTF-8";
/* Z-INDEX */
@import url(https://fonts.googleapis.com/css?family=Lato:Thin);
.formError {
  z-index: 990;
}

.formError .formErrorContent {
  z-index: 991;
}

.formError .formErrorArrow {
  z-index: 996;
}

.ui-dialog .formError {
  z-index: 5000;
}

.ui-dialog .formError .formErrorContent {
  z-index: 5001;
}

.ui-dialog .formError .formErrorArrow {
  z-index: 5006;
}

.inputContainer {
  position: relative;
  float: left;
}

.formError {
  position: absolute;
  top: 300px;
  left: 300px;
  display: block;
  cursor: pointer;
  text-align: left;
}

.formError.inline {
  position: relative;
  top: 0;
  left: 0;
  display: inline-block;
}

.formError.inline .formErrorContent {
  box-shadow: none;
  -moz-box-shadow: none;
  -webkit-box-shadow: none;
  -o-box-shadow: none;
  border: none;
  border-radius: 0;
  -moz-border-radius: 0;
  -webkit-border-radius: 0;
  -o-border-radius: 0;
}

.formError .formErrorContent {
  width: 100%;
  background: #292b2d;
  position: relative;
  color: #fff;
  min-width: 120px;
  font-size: 11px;
  border: 2px solid #ddd;
  box-shadow: 0 0 6px #000;
  -moz-box-shadow: 0 0 6px #000;
  -webkit-box-shadow: 0 0 6px #000;
  -o-box-shadow: 0 0 6px #000;
  padding: 4px 10px 4px 10px;
  border-radius: 6px;
  -moz-border-radius: 6px;
  -webkit-border-radius: 6px;
  -o-border-radius: 6px;
}

.formError .formErrorArrow {
  width: 15px;
  margin: -2px 0 0 13px;
  position: relative;
}

.formError .formErrorArrow div {
  border-left: 2px solid #ddd;
  border-right: 2px solid #ddd;
  box-shadow: 0 2px 3px #444;
  -moz-box-shadow: 0 2px 3px #444;
  -webkit-box-shadow: 0 2px 3px #444;
  -o-box-shadow: 0 2px 3px #444;
  font-size: 0px;
  height: 1px;
  background: #292b2d;
  margin: 0 auto;
  line-height: 0;
  font-size: 0;
  display: block;
}

.formError .formErrorArrow .line10 {
  width: 13px;
  border: none;
}

.formError .formErrorArrow .line9 {
  width: 11px;
  border: none;
}

.formError .formErrorArrow .line8 {
  width: 11px;
}

.formError .formErrorArrow .line7 {
  width: 9px;
}

.formError .formErrorArrow .line6 {
  width: 7px;
}

.formError .formErrorArrow .line5 {
  width: 5px;
}

.formError .formErrorArrow .line4 {
  width: 3px;
}

.formError .formErrorArrow .line3 {
  width: 1px;
  border-left: 2px solid #ddd;
  border-right: 2px solid #ddd;
  border-bottom: 0 solid #ddd;
}

.formError .formErrorArrow .line2 {
  width: 3px;
  border: none;
  background: #ddd;
}

.formError .formErrorArrow .line1 {
  width: 1px;
  border: none;
  background: #ddd;
}

.formError .formErrorArrowBottom {
  box-shadow: none;
  -moz-box-shadow: none;
  -webkit-box-shadow: none;
  -o-box-shadow: none;
  margin: 0px 0 0 12px;
  top: 2px;
}

.formError .formErrorArrowBottom div {
  box-shadow: none;
  -moz-box-shadow: none;
  -webkit-box-shadow: none;
  -o-box-shadow: none;
}

.ajaxSubmit {
  padding: 20px;
  background: #55ea55;
  border: 1px solid #999;
  display: none;
}

.greenPopup .formErrorContent {
  background: #33be40;
}

.blackPopup .formErrorContent {
  background: #393939;
  color: #FFF;
}

body[dir=rtl] .formError .formErrorArrow,
body.rtl .formError .formErrorArrow {
  margin: -2px 13px 0 0;
}

.greenPopup .formErrorArrow div {
  background: #33be40;
}

.blackPopup .formErrorArrow div {
  background: #393939;
  color: #FFF;
}

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

html {
  line-height: 1;
}

ol, ul {
  list-style: none;
}

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

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

q, blockquote {
  quotes: none;
}

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

a img {
  border: none;
}

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

.clearfix {
  zoom: 1;
  /* for IE5.5 - IE7 */
}

.clearfix:after {
  /* for modern browser */
  content: ".";
  display: block;
  height: 0px;
  clear: both;
  visibility: hidden;
}

img {
  vertical-align: top;
  border-style: none;
}

body, pre, input, textarea, select {
  font-family: "Noto Sans JP", "ヒラギノ角ゴ ProN W3", Meiryo, sans-serif;
}

/* Common LayOUT */
@font-face {
  font-family: "YakuHanJPs";
  font-style: normal;
  font-weight: 700;
  src: url("../font/YakuHanJPs-Bold.woff") format("woff");
}
@font-face {
  font-family: "YakuHanJPs";
  font-style: normal;
  font-weight: 400;
  src: url("../font/YakuHanJPs-Regular.woff") format("woff");
}
@font-face {
  font-family: "YakuHanJPs";
  font-style: normal;
  font-weight: 300;
  src: url("../font/YakuHanJPs-Light.woff") format("woff");
}
@media all and (max-width: 767px) {
  html.is-fixed,
  html.is-fixed body {
    height: 100%;
    overflow: hidden;
  }
}
.pc {
  display: block;
}

@media screen and (max-width: 767px) {
  .pc {
    display: none;
  }
}
.sp {
  display: none;
}

@media screen and (max-width: 767px) {
  .sp {
    display: block;
  }
}
#wrap {
  font-family: "YakuHanJPs", "Noto Serif JP", serif;
  box-sizing: border-box;
  font-weight: 400;
  width: 100%;
  color: #3F4E4A;
  letter-spacing: 0.1em;
  overflow: hide;
  padding-top: 70px;
}

@media screen and (max-width: 767px) {
  #wrap {
    padding-top: 50px;
  }
}
#wrap img {
  max-width: 100%;
  height: auto;
}

#wrap main {
  padding-bottom: 100px;
}

@media screen and (max-width: 767px) {
  #wrap main {
    padding-bottom: 50px;
  }
}
#wrap h1.page-title {
  font-size: 35px;
  text-align: center;
  font-weight: 700;
  font-family: "YakuHanJPs", "Noto Sans JP", sans-serif;
  margin-top: 80px;
}

#wrap h1.page-title:after {
  content: "";
  display: block;
  width: 34px;
  background: #707070;
  height: 2px;
  margin: 12px auto 0;
}

@media screen and (max-width: 767px) {
  #wrap h1.page-title {
    font-size: 24px;
    margin-top: 60px;
  }
}
#wrap p.ja-title {
  text-align: center;
  margin-top: 30px;
  font-size: 18px;
  letter-spacing: 0.2em;
}

@media screen and (max-width: 767px) {
  #wrap p.ja-title {
    font-size: 16px;
    margin-top: 25px;
  }
}
#wrap .in_wrap {
  width: 1100px;
  margin: 0 auto;
}

@media screen and (max-width: 1180px) {
  #wrap .in_wrap {
    width: 100%;
  }
}
@media screen and (max-width: 767px) {
  #wrap .in_wrap {
    width: 90%;
  }
}
#wrap .more-btn {
  text-align: center;
  display: block;
}

@media screen and (max-width: 767px) {
  #wrap .more-btn {
    margin-top: 25px;
  }
}
#wrap .more-btn a {
  display: inline-block;
  text-align: center;
  font-size: 16px;
  color: #3F4E4A;
  text-decoration: none;
  font-weight: 700;
}

@media screen and (max-width: 767px) {
  #wrap .more-btn a {
    font-size: 14px;
  }
}
#wrap .more-btn a:after {
  content: url(/images/common/more-arrow.svg);
  width: 37px;
  height: 9px;
  display: inline-block;
  margin-left: 6px;
  transition: 0.3s;
}

@media screen and (max-width: 767px) {
  #wrap .more-btn a:after {
    width: 33px;
    height: auto;
  }
}
#wrap .more-btn a:hover::after {
  margin-left: 30px;
}

/* #WRAP END */
.pagetop {
  position: fixed;
  bottom: 40px;
  right: 40px;
  width: 70px;
  height: 70px;
  cursor: pointer;
}

@media screen and (max-width: 767px) {
  .pagetop {
    bottom: 15px;
    right: 15px;
    width: 36px;
    height: 36px;
  }
}
.page404 {
  padding: 200px 0;
  text-align: center;
}

.page404 h1 {
  font-size: 250px;
  letter-spacing: 0.2em;
  font-weight: 400;
  color: #19805D;
  font-family: "YakuHanJPs", "Noto Serif JP", serif;
}

.page404 p {
  font-size: 20px;
  margin-top: 60px;
  font-family: "YakuHanJPs", "Noto Serif JP", serif;
}

.page404 .btn404 a {
  font-size: 16px;
  display: inline-block;
  margin-top: 60px;
  padding: 12px 25px;
  border: 1px solid #999;
  border-radius: 24px;
  color: #999;
  text-decoration: none;
}

.page404 .btn404 a:hover {
  background: #999;
  color: #FFF;
}

.page404 .btn404 a span {
  font-size: 1.3em;
  margin-left: 0.5em;
}

/*タイトル類*/
p.en-title {
  font-size: 20px;
  text-align: center;
  letter-spacing: 0;
  font-family: "YakuHanJPs", "Noto Serif JP", serif;
}

@media screen and (max-width: 767px) {
  p.en-title {
    font-size: 16px;
  }
}
p.en-title::after {
  content: "";
  width: 35px;
  height: 2px;
  background: #707070;
  margin: 10px auto 0;
  display: block;
}

h2.title {
  font-size: 24px;
  font-weight: 400;
  text-align: center;
  margin-top: 30px;
  letter-spacing: 0.2em;
  font-family: "YakuHanJPs", "Noto Serif JP", serif;
}

@media screen and (max-width: 767px) {
  h2.title {
    font-size: 18px;
    margin-top: 20px;
  }
}
.pankuzu {
  font-family: "YakuHanJPs", "Noto Sans JP", sans-serif;
  font-size: 13px;
  width: 1100px;
  margin: 0 auto;
  margin-top: 20px;
}

@media screen and (max-width: 767px) {
  .pankuzu {
    display: none;
  }
}
.pankuzu a {
  color: #707070;
  text-decoration: none;
}

.pankuzu a:hover {
  text-decoration: underline;
}

.pankuzu p {
  display: inline;
}

.link-bnr {
  margin-top: 180px;
  padding-bottom: 140px;
}

@media screen and (max-width: 767px) {
  .link-bnr {
    margin-top: 60px;
    padding-bottom: 60px;
  }
}
.link-bnr .banner {
  display: flex;
  justify-content: space-between;
  width: 1100px;
  margin: 0 auto;
}

@media screen and (max-width: 767px) {
  .link-bnr .banner {
    width: 90%;
    display: block;
  }
}
.link-bnr .banner li {
  width: 520px;
  position: relative;
}

@media screen and (max-width: 767px) {
  .link-bnr .banner li {
    width: 100%;
    margin-bottom: 20px;
  }
}
.link-bnr .banner li a {
  color: #707070;
}

.link-bnr .banner li a:hover {
  opacity: 0.6;
}

.link-bnr .banner li .title {
  position: absolute;
  top: 25px;
  left: 25px;
}

@media screen and (max-width: 767px) {
  .link-bnr .banner li .title {
    top: 18px;
    left: 18px;
  }
}
.link-bnr .banner li .title h2 {
  font-size: 20px;
  color: #FFF;
  text-align: center;
  width: 150px;
  padding: 6px 0;
  background: #3CA759;
  font-weight: 700;
}

@media screen and (max-width: 767px) {
  .link-bnr .banner li .title h2 {
    width: 130px;
    font-size: 16px;
    padding: 6px 0 5px;
  }
}
.link-bnr .banner li .title p {
  width: 84px;
  background: #FFF;
  text-align: center;
  padding: 5px 0;
  font-size: 13px;
  margin-top: 8px;
}

@media screen and (max-width: 767px) {
  .link-bnr .banner li .title p {
    width: 80px;
    font-size: 12px;
  }
}
.link-bnr .banner li em {
  position: absolute;
  bottom: 20px;
  right: 0;
  z-index: 2;
}

@media screen and (max-width: 767px) {
  .link-bnr .banner li em {
    bottom: 10px;
  }
}
.link-bnr .banner li em span {
  display: inline-block;
  color: #FFF;
  font-weight: 700;
}

.link-bnr .banner li em span:after {
  content: "";
  border-top: 1px solid #FFF;
  height: 1px;
  width: 50px;
  margin-left: 10px;
  display: inline-block;
  top: 45%;
}

@media screen and (max-width: 767px) {
  .link-bnr .banner li em span:after {
    width: 40px;
  }
}
.link-bnr .banner li .recruit-list {
  width: 100%;
  background: rgba(0, 0, 0, 0.6);
  padding: 15px 32px;
  position: absolute;
  z-index: 1;
  bottom: 0;
  left: 0;
  box-sizing: border-box;
}

@media screen and (max-width: 767px) {
  .link-bnr .banner li .recruit-list {
    padding: 10px 32px 32px;
  }
}
.link-bnr .banner li .recruit-list p {
  color: #FFF;
  font-size: 18px;
  line-height: 1.8;
}

@media screen and (max-width: 767px) {
  .link-bnr .banner li .recruit-list p {
    font-size: 15px;
    line-height: 1.6;
  }
}
/* section END */
.effect {
  padding-top: 100px;
  opacity: 0;
}

@media screen and (max-width: 767px) {
  .effect {
    padding-top: 60px;
  }
}
/* ヘッダー */
html, body {
  width: 100%;
  height: 100%;
}

header {
  width: 100%;
  position: fixed;
  z-index: 99;
  font-family: "YakuHanJPs", "Noto Serif JP", serif;
  top: 0;
  left: 0;
  background: #FFF;
}

@media screen and (max-width: 908px) {
  header {
    height: 50px;
  }
}
header .header {
  width: 1100px;
  margin: 0 auto;
  height: 70px;
  display: flex;
  box-sizing: border-box;
  justify-content: space-between;
  padding-top: 10px;
  font-weight: 500;
  position: relative;
}

@media screen and (max-width: 1180px) {
  header .header {
    width: 98%;
  }
}
@media screen and (max-width: 908px) {
  header .header {
    width: 100%;
  }
}
header .header h1 {
  width: 250px;
  margin-top: 10px;
}

@media screen and (max-width: 1180px) {
  header .header h1 {
    width: 230px;
  }
}
@media screen and (max-width: 767px) {
  header .header h1 {
    width: 170px;
    margin-top: 0;
    margin-left: 15px;
  }
}
header .header h1 img {
  width: 100%;
  height: auto;
}

header .header nav {
  width: calc(100% - 276px);
}

@media screen and (max-width: 1180px) {
  header .header nav {
    width: calc(100% - 240px);
  }
}
@media screen and (max-width: 908px) {
  header .header nav {
    display: none;
    background: rgba(6, 77, 25, 0.9);
    z-index: 10;
    position: fixed;
    top: 50px;
    width: 100%;
    padding: 30px 0 60px;
    overflow-y: scroll;
    height: 100%;
  }
}
header .header ul.navi {
  width: 100%;
  display: flex;
  justify-content: flex-end;
  font-size: 14px;
  margin-top: 27px;
}

@media screen and (max-width: 1180px) {
  header .header ul.navi {
    font-size: 13px;
  }
}
@media screen and (max-width: 908px) {
  header .header ul.navi {
    font-size: 13px;
    display: block;
    overflow-y: scroll;
    height: 100%;
    margin-top: 0;
  }
}
header .header ul.navi li {
  font-family: "YakuHanJPs", "Noto Sans JP", sans-serif;
  position: relative;
}

header .header ul.navi li a {
  color: #3F4E4A;
  text-decoration: none;
  margin-left: 20px;
  padding-bottom: 15px;
  position: relative;
  letter-spacing: 0;
  font-size: 14px;
}

@media screen and (max-width: 1180px) {
  header .header ul.navi li a {
    margin-left: 15px;
  }
}
@media screen and (max-width: 980px) {
  header .header ul.navi li a {
    font-size: 13px;
    margin-left: 12px;
  }
}
@media screen and (max-width: 908px) {
  header .header ul.navi li a {
    text-align: center;
    padding: 12px 0;
    color: #FFF;
    border-bottom: 1px solid #b0d1b9;
    margin-left: 0px;
    display: block;
    font-weight: 400;
  }
}
header .header ul.navi li a::after {
  position: absolute;
  bottom: 17px;
  left: 0;
  content: "";
  width: 100%;
  height: 2px;
  background: #3CA759;
  opacity: 0;
  visibility: hidden;
  transition: 0.3s;
}

header .header ul.navi li a:hover::after {
  bottom: 10px;
  opacity: 1;
  visibility: visible;
}

@media screen and (max-width: 908px) {
  header .header ul.navi li a:hover::after {
    opacity: 0;
  }
}
header .header ul.navi li a.active {
  color: #3CA759;
}

header .header ul.navi li a.active::after {
  bottom: 10px;
  opacity: 1;
  visibility: visible;
}

@media screen and (max-width: 908px) {
  header .header ul.navi li a.active::after {
    opacity: 0;
  }
}
@media screen and (max-width: 908px) {
  header .header ul.navi li a.active {
    color: #fff;
  }
}
header .header ul.navi li.onmouse a {
  border-bottom: none;
}

header .header ul.navi li .sub-nav {
  display: none;
  position: absolute;
  top: 33px;
  left: -200px;
  padding: 10px;
  background: rgba(28, 160, 65, 0.7);
  height: 30px;
  width: 500px;
}

@media screen and (max-width: 908px) {
  header .header ul.navi li .sub-nav {
    display: block;
    position: static;
    padding: 0;
    background: none;
    height: auto;
    width: 100%;
  }
}
header .header ul.navi li .sub-nav div {
  display: flex;
  justify-content: center;
}

@media screen and (max-width: 908px) {
  header .header ul.navi li .sub-nav div {
    border-bottom: 1px solid #b0d1b9;
  }
}
header .header ul.navi li .sub-nav div p a {
  display: block;
  padding: 0 20px;
  color: #FFF !important;
  margin: 8px 0 0;
  letter-spacing: 0.05em;
}

@media screen and (max-width: 908px) {
  header .header ul.navi li .sub-nav div p a {
    margin: 0 auto;
    padding: 8px 10px;
    border-bottom: none;
    font-weight: 400;
    font-size: 12px;
  }
}
header .header ul.navi li .sub-nav div p a:hover {
  color: #ccc !important;
}

header .header ul.navi li .sub-nav div p a:hover::after {
  opacity: 0;
  visibility: visible;
}

header .header ul.navi li .sub-nav div p:last-of-type a {
  padding-bottom: 14px;
}

@media screen and (max-width: 908px) {
  header .header .menu-trigger,
  header .header .menu-trigger span {
    display: inline-block;
    transition: all 0.4s;
    box-sizing: border-box;
  }
  header .header .menu-trigger {
    position: absolute;
    width: 30px;
    height: 26px;
    right: 15px;
    top: 13px;
  }
  header .header .menu-trigger span {
    position: absolute;
    left: 0;
    width: 100%;
    height: 4px;
    background-color: #64727a;
    border-radius: 4px;
  }
  header .header .menu-trigger span:nth-of-type(1) {
    top: 0;
  }
  header .header .menu-trigger span:nth-of-type(2) {
    top: 11px;
  }
  header .header .menu-trigger span:nth-of-type(3) {
    bottom: 0;
  }
}
header .header .menu-trigger.active span:nth-of-type(1) {
  transform: translateY(11px) rotate(-45deg);
}

header .header .menu-trigger.active span:nth-of-type(2) {
  opacity: 0;
}

header .header .menu-trigger.active span:nth-of-type(3) {
  transform: translateY(-11px) rotate(45deg);
}

/* FOOTER */
footer {
  background: #1A462F !important;
}

footer .footer {
  width: 1100px;
  margin: 0 auto;
  font-family: "YakuHanJPs", "Noto Serif JP", serif;
  padding-top: 80px;
  text-align: center;
}

@media screen and (max-width: 1180px) {
  footer .footer {
    width: 98%;
  }
}
@media screen and (max-width: 767px) {
  footer .footer {
    width: 90%;
    padding-top: 40px;
  }
}
footer .footer .footer-btn {
  width: 860px;
  display: flex;
  justify-content: space-between;
  margin: 0 auto 20px;
}

@media screen and (max-width: 767px) {
  footer .footer .footer-btn {
    width: 90%;
    display: block;
  }
}
footer .footer .footer-btn li {
  box-sizing: border-box;
  width: 400px;
  height: 100px;
  border: 1px solid #fff;
  text-align: center;
  color: #fff;
}

@media screen and (max-width: 767px) {
  footer .footer .footer-btn li {
    width: 100%;
    height: 50px;
    margin-bottom: 15px;
  }
}
@media screen and (max-width: 767px) {
  footer .footer .footer-btn li:nth-of-type(2) {
    height: 66px;
  }
}
footer .footer .footer-btn li a {
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  color: #fff;
  text-decoration: none;
  font-size: 20px;
  transition: 0.5s;
}

@media screen and (max-width: 767px) {
  footer .footer .footer-btn li a {
    font-size: 16px;
  }
}
footer .footer .footer-btn li a:hover {
  background: rgba(255, 255, 255, 0.6);
  color: #1A462F;
}

footer .footer .footer-btn li span {
  font-size: 15px;
  display: block;
  margin-bottom: 10px;
  padding-top: 25px;
}

@media screen and (max-width: 767px) {
  footer .footer .footer-btn li span {
    font-size: 14px;
    padding-top: 10px;
  }
}
footer .footer .footer-btn li em {
  font-size: 23px;
}

@media screen and (max-width: 767px) {
  footer .footer .footer-btn li em {
    font-size: 20px;
  }
  footer .footer .footer-btn li em a {
    display: inline;
  }
}
footer .under-footer {
  width: 1060px;
  margin: 0 auto;
  padding: 60px 0 40px;
  font-family: "YakuHanJPs", "Noto Serif JP", serif;
  display: flex;
  justify-content: space-between;
}

@media screen and (max-width: 1180px) {
  footer .under-footer {
    width: 98%;
  }
}
@media screen and (max-width: 767px) {
  footer .under-footer {
    display: none;
    flex-wrap: wrap;
    width: 90%;
    padding: 20px 5% 20px;
    background: #fff;
  }
}
footer .under-footer .footnav {
  /*width: 24%;*/
}

@media screen and (max-width: 767px) {
  footer .under-footer .footnav {
    width: 48%;
    margin-bottom: 15px;
  }
}
footer .under-footer .footnav li {
  font-size: 14px;
  padding: 0 15px;
  font-size: 13px;
  letter-spacing: 0.05em;
  font-weight: 500;
  margin-bottom: 15px;
  color: #FFF;
}

@media screen and (max-width: 767px) {
  footer .under-footer .footnav li {
    font-size: 12px;
    line-height: 1.4;
  }
}
footer .under-footer .footnav li a {
  text-decoration: none;
  color: #fff;
}

footer .under-footer .footnav li a:hover {
  text-decoration: underline;
}

footer .under-footer .footnav li a:before {
  content: "";
  width: 10px;
  height: 12px;
  background: url(../images/common/footer-arrow.png) left top/100% auto no-repeat;
  display: inline-block;
  margin-right: 6px;
}

footer .under-footer .footnav li.sub a {
  font-size: 12px;
}

footer .under-footer .footnav li.sub a:before {
  width: 8px;
  height: 10px;
  margin-left: 14px;
  background: url(../images/common/footer-arrow.png) left top/100% auto no-repeat;
}

footer .footer-logo {
  width: 306px;
  margin: 0 auto;
}

@media screen and (max-width: 767px) {
  footer .footer-logo {
    width: 50%;
    margin: 20px auto 0;
  }
}
footer .footer-logo img {
  max-width: 100%;
  height: auto;
}

footer p.add {
  text-align: center;
  font-size: 14px;
  margin-top: 12px;
  color: #fff;
}

@media screen and (max-width: 767px) {
  footer p.add {
    font-size: 13px;
    line-height: 1.5;
  }
}
footer p.copyright {
  margin-top: 50px;
  font-size: 13px;
  text-align: center;
  letter-spacing: 0.05em;
  font-family: "YakuHanJPs", "Noto Sans JP", sans-serif;
  color: #FFF;
  padding-bottom: 15px;
}

@media screen and (max-width: 767px) {
  footer p.copyright {
    font-size: 10px;
    line-height: 1.4;
  }
}
/* BUTTON LayOUT */
/*/////////////// ABOUT US //////////////////*/
.about-us {
  font-family: "YakuHanJPs", "Noto Serif JP", serif;
}

.about-us h2 {
  text-align: center;
  font-size: 25px;
  margin-top: 30px;
}

@media screen and (max-width: 767px) {
  .about-us h2 {
    font-size: 20px;
    margin-top: 25px;
  }
}
.about-us p.en-title {
  font-size: 18px;
  text-align: center;
}

@media screen and (max-width: 767px) {
  .about-us p.en-title {
    font-size: 17px;
  }
}
.about-us p.en-title:after {
  content: "";
  height: 2px;
  width: 34px;
  background: #707070;
  margin: 15px auto 0;
}

.about-us h3 {
  margin-top: 70px;
  text-align: center;
  font-size: 28px;
  line-height: 1.7;
}

@media screen and (max-width: 767px) {
  .about-us h3 {
    font-size: 22px;
    margin-top: 50px;
  }
}
.about-us .about {
  padding-top: 100px;
}

@media screen and (max-width: 767px) {
  .about-us .about {
    padding-top: 60px;
  }
}
.about-us .about .firstblock {
  width: 100%;
  height: 740px;
  margin-top: 60px;
  position: relative;
}

@media screen and (max-width: 767px) {
  .about-us .about .firstblock {
    height: auto;
  }
}
.about-us .about .firstblock .firstimgbk {
  width: calc(100% - (100% - 1100px) / 2 - 150px);
  background: url(/images/about-us/about-first-bk.jpg) bottom right no-repeat;
  height: 740px;
  position: absolute;
  bottom: 0;
  right: 0;
  z-index: 1;
}

@media screen and (max-width: 767px) {
  .about-us .about .firstblock .firstimgbk {
    position: static;
    width: 100%;
    height: auto;
    padding-bottom: 60px;
    background: url(/images/about-us/about-first-bk.jpg) bottom right/300% auto no-repeat;
  }
}
.about-us .about .firstblock .firstimg {
  height: 600px;
  width: calc(100% - (100% - 1100px) / 2 - 150px);
  overflow: hidden;
  position: relative;
  z-index: 2;
}

@media screen and (max-width: 767px) {
  .about-us .about .firstblock .firstimg {
    height: 200px !important;
    width: 100%;
    height: auto;
    background-size: cover;
  }
}
.about-us .about .firstblock .firstimg figure {
  position: absolute;
  overflow: hidden;
  top: 0;
  left: 0;
  height: 600px;
  display: block;
  width: 100%;
}

@media screen and (max-width: 767px) {
  .about-us .about .firstblock .firstimg figure {
    height: 200px;
  }
}
.about-us .about .firstblock .firstimg figure img {
  height: 100% !important;
  width: auto !important;
  max-width: 5000px !important;
  position: absolute;
  right: 0;
  top: 0;
}

@media screen and (max-width: 767px) {
  .about-us .about .firstblock .firstimg figure img {
    height: 200px !important;
  }
}
.about-us .purpose {
  padding-top: 100px;
}

@media screen and (max-width: 767px) {
  .about-us .purpose {
    padding-top: 60px;
  }
}
.about-us .purpose .under-title {
  font-size: 20px;
  line-height: 2;
  text-align: center;
  margin-top: 55px;
}

.about-us .aboutblock {
  height: 554px;
  display: flex;
}

@media screen and (max-width: 767px) {
  .about-us .aboutblock {
    height: auto;
    display: block;
    padding-bottom: 40px;
  }
}
.about-us .aboutblock.dark {
  background: url(/images/about-us/dark-bk.png) bottom left repeat-x;
}

.about-us .aboutblock.thin {
  background: url(/images/about-us/thin-bk.png) bottom left repeat-x;
  flex-flow: row-reverse;
}

.about-us .img-l {
  height: 450px;
  width: calc(100% - 560px - (100% - 1100px) / 2);
}

@media screen and (max-width: 767px) {
  .about-us .img-l {
    width: 100%;
    height: 200px;
  }
}
.about-us .img-r {
  height: 450px;
  width: calc(100% - 560px - (100% - 1100px) / 2);
}

@media screen and (max-width: 767px) {
  .about-us .img-r {
    width: 100%;
    height: 200px;
  }
}
.about-us .txt {
  margin-left: 50px;
  width: 510px;
  margin-top: 150px;
}

@media screen and (max-width: 767px) {
  .about-us .txt {
    width: 90%;
    margin: 30px auto 0;
  }
}
.about-us .txt h3 {
  font-size: 25px;
  margin-top: 0;
}

@media screen and (max-width: 767px) {
  .about-us .txt h3 {
    font-size: 19px;
  }
}
.about-us .txt p {
  font-size: 18px;
  line-height: 2;
  text-align: justify;
  text-justify: inter-ideograph;
  margin-top: 15px;
  letter-spacing: 0.05em;
}

@media screen and (max-width: 767px) {
  .about-us .txt p {
    font-size: 15px;
    line-height: 1.8;
  }
}
.about-us .txt p span {
  color: #3CA759;
  font-weight: 700;
}

.about-us .txt h4 {
  font-size: 20px;
  line-height: 1.8;
}

@media screen and (max-width: 767px) {
  .about-us .txt h4 {
    font-size: 17px;
  }
}
.about-us .txt h4 span {
  color: #3CA759;
  font-weight: 700;
  display: block;
}

.about-us .established {
  margin-top: 180px;
}

@media screen and (max-width: 767px) {
  .about-us .established {
    margin-top: 60px;
  }
}
.about-us .established .img-l {
  background: url(/images/about-us/about-second-img.webp) top right no-repeat;
}

@media screen and (max-width: 767px) {
  .about-us .established .img-l {
    background: url(/images/about-us/about-second-img.webp) center right/cover no-repeat;
  }
}
.about-us .three-forces {
  margin-top: 180px;
}

@media screen and (max-width: 767px) {
  .about-us .three-forces {
    margin-top: 60px;
  }
}
.about-us .three-forces .txt {
  margin-left: 0;
  margin-right: 50px;
}

@media screen and (max-width: 767px) {
  .about-us .three-forces .txt {
    margin: 30px auto 0;
    width: 90%;
  }
}
.about-us .three-forces .img-r {
  background: url(/images/about-us/about-third-img.webp) top left no-repeat;
}

@media screen and (max-width: 767px) {
  .about-us .three-forces .img-r {
    background: url(/images/about-us/about-third-img.webp) center left/cover no-repeat;
  }
}
.about-us .aim {
  margin-top: 180px;
}

@media screen and (max-width: 767px) {
  .about-us .aim {
    margin-top: 60px;
  }
}
.about-us .aim .img-l {
  background: url(/images/about-us/about-forth-img.webp) top right no-repeat;
}

@media screen and (max-width: 767px) {
  .about-us .aim .img-l {
    background: url(/images/about-us/about-forth-img.webp) center right/cover no-repeat;
  }
}
.about-us .impressed {
  margin-top: 180px;
}

@media screen and (max-width: 767px) {
  .about-us .impressed {
    margin-top: 60px;
  }
}
.about-us .impressed .txt {
  margin-left: 0;
  margin-right: 50px;
}

@media screen and (max-width: 767px) {
  .about-us .impressed .txt {
    margin: 30px auto 0;
    width: 90%;
  }
}
.about-us .impressed .img-r {
  background: url(/images/about-us/about-fifth-img.webp) top left no-repeat;
}

@media screen and (max-width: 767px) {
  .about-us .impressed .img-r {
    background: url(/images/about-us/about-fifth-img.webp) center left/cover no-repeat;
  }
}
.about-us .culture {
  margin-top: 100px;
}

@media screen and (max-width: 767px) {
  .about-us .culture {
    margin-top: 60px;
  }
}
.about-us .culture h2 {
  font-weight: 500;
  font-size: 30px;
  text-align: center;
  color: #3CA759;
  line-height: 1.8;
}

.about-us .culture .about-prr {
  background-image: url(../images/about-us/about-prara-img.webp);
  background-attachment: fixed;
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
  height: 350px;
  margin-top: 100px;
}

@media screen and (max-width: 767px) {
  .about-us .culture .about-prr {
    height: 200px;
    margin-top: 60px;
    background-attachment: scroll;
  }
}
.about-us .culture .cultureblock {
  padding: 40px 40px 40px 70px;
  display: flex;
  justify-content: space-between;
  border: 3px solid #3CA759;
  box-sizing: border-box;
  width: 1000px;
  margin: 100px auto 0;
}

.about-us .culture .cultureblock .txtblock {
  width: 520px;
}

.about-us .culture .cultureblock .txtblock h3 {
  font-size: 25px;
  color: #3CA759;
  padding-bottom: 15px;
  border-bottom: 1px solid #3CA759;
}

.about-us .culture .cultureblock .txtblock h4 {
  font-size: 20px;
  margin-top: 20px;
  letter-spacing: 0;
}

.about-us .culture .cultureblock .txtblock p {
  font-size: 16px;
  line-height: 2;
  margin-top: 15px;
  text-align: justify;
  text-justify: inter-ideograph;
}

.about-us .culture .cultureblock figure {
  width: 308px;
}

/*/////////////// BUSINESS //////////////////*/
.business {
  /* concept */
  /*greening business*/
  /* golf business */
  /* sports turf business */
}

.business a {
  text-decoration: none;
}

.business .in_wrap-b {
  width: 1000px;
  margin: 0 auto;
}

@media screen and (max-width: 767px) {
  .business .in_wrap-b {
    width: 90%;
  }
}
.business .mainblock {
  font-family: "YakuHanJPs", "Noto Serif JP", serif;
  height: 590px;
  margin-left: 120px;
  position: relative;
}

@media screen and (max-width: 767px) {
  .business .mainblock {
    width: 100%;
    height: 250px;
    margin-left: 0;
  }
}
.business .mainblock .maintitle {
  position: absolute;
  width: 350px;
  box-sizing: border-box;
  height: 310px;
  padding-right: 35px;
  padding-top: 35px;
  padding-bottom: 35px;
  writing-mode: vertical-rl;
  top: 65px;
  left: -126px;
  background: #FFF;
}

@media screen and (max-width: 767px) {
  .business .mainblock .maintitle {
    top: 10px;
    left: 10px;
    padding: 15px;
    width: 200px;
    height: 172px;
    background: rgba(255, 255, 255, 0.8);
  }
}
.business .mainblock .maintitle h1.business-title {
  font-size: 32px;
  margin-left: 12px;
  letter-spacing: 0;
}

@media screen and (max-width: 767px) {
  .business .mainblock .maintitle h1.business-title {
    font-size: 18px;
    margin-left: 8px;
  }
}
.business .mainblock .maintitle p.en-txt {
  font-size: 14px;
  margin-left: 40px;
}

@media screen and (max-width: 767px) {
  .business .mainblock .maintitle p.en-txt {
    font-size: 11px;
    margin-left: 20px;
    letter-spacing: 0;
  }
}
.business .mainblock .maintitle .border-list li {
  font-size: 22px;
  padding: 0 11px;
  border-left: 1px solid #B4B4B4;
}

@media screen and (max-width: 767px) {
  .business .mainblock .maintitle .border-list li {
    font-size: 14px;
    padding: 0 8px;
  }
}
.business .mainblock .maintitle .border-list li:last-of-type {
  border-left: none;
}

.business .concept {
  font-family: "YakuHanJPs", "Noto Serif JP", serif;
  padding-top: 75px;
}

@media screen and (max-width: 767px) {
  .business .concept {
    padding-top: 50px;
  }
}
.business .concept .concept-title {
  display: flex;
}

@media screen and (max-width: 767px) {
  .business .concept .concept-title {
    display: block;
  }
}
.business .concept .concept-title h2 {
  font-size: 25px;
  width: 480px;
  box-sizing: border-box;
  line-height: 2;
  color: #3CA759;
  text-align: left;
}

@media screen and (max-width: 767px) {
  .business .concept .concept-title h2 {
    text-align: center;
    font-size: 18px;
    width: 100%;
  }
}
.business .concept .concept-title .txtblock {
  width: 620px;
}

@media screen and (max-width: 767px) {
  .business .concept .concept-title .txtblock {
    width: 100%;
    margin-top: 25px;
  }
}
.business .concept .concept-title .txtblock p {
  font-size: 16px;
  letter-spacing: 0.08em;
  line-height: 2.5;
  text-align: justify;
  text-justify: inter-ideograph;
}

@media screen and (max-width: 767px) {
  .business .concept .concept-title .txtblock p {
    font-size: 14px;
    line-height: 1.8;
    margin-top: 20px;
  }
}
@media screen and (max-width: 767px) {
  .business .concept .institution {
    padding-top: 10px;
  }
}
.business .concept .institution h3.business-title {
  font-size: 25px;
  margin-top: 80px;
}

@media screen and (max-width: 767px) {
  .business .concept .institution h3.business-title {
    font-size: 18px;
    margin-top: 40px;
  }
}
.business .concept .institution .imgblock {
  margin-top: 20px;
  position: relative;
  transition: 0.5s;
}

@media screen and (max-width: 767px) {
  .business .concept .institution .imgblock {
    margin-top: 15px;
  }
}
.business .concept .institution .imgblock:hover {
  opacity: 0.6;
}

.business .concept .institution .imgblock em {
  position: absolute;
  bottom: 25px;
  right: 20px;
  font-size: 16px;
  text-align: right;
}

@media screen and (max-width: 767px) {
  .business .concept .institution .imgblock em {
    bottom: -4px;
    right: 10px;
    font-size: 12px;
  }
}
.business .concept .institution .imgblock em span {
  display: inline-block;
  background: #FFF;
  padding: 10px 15px;
  margin-bottom: 4px;
}

@media screen and (max-width: 767px) {
  .business .concept .institution .imgblock em span {
    padding: 8px 10px;
    background: rgba(255, 255, 255, 0.8);
  }
}
.business .concept .institution .imgblock p {
  position: absolute;
  font-family: "YakuHanJPs", "Noto Sans JP", sans-serif;
  font-weight: 700;
  bottom: 20px;
  right: 0;
  z-index: 2;
}

@media screen and (max-width: 767px) {
  .business .concept .institution .imgblock p {
    bottom: 10px;
  }
}
.business .concept .institution .imgblock p span {
  display: inline-block;
  color: #FFF;
  font-weight: 700;
}

@media screen and (max-width: 767px) {
  .business .concept .institution .imgblock p span {
    font-size: 13px;
  }
}
.business .concept .institution .imgblock p span:after {
  content: "";
  border-top: 1px solid #FFF;
  height: 1px;
  width: 50px;
  margin-left: 10px;
  display: inline-block;
  top: 45%;
}

@media screen and (max-width: 767px) {
  .business .concept .institution .imgblock p span:after {
    width: 30px;
  }
}
.business .concept .institution .imgblock:hover p span:after {
  margin-left: 30px;
}

.business .concept .institution ul.list-icon {
  margin-top: 14px;
  display: flex;
  justify-content: flex-end;
}

@media screen and (max-width: 767px) {
  .business .concept .institution ul.list-icon {
    margin-top: 10px;
    justify-content: flex-start;
    flex-wrap: wrap;
  }
}
.business .concept .institution ul.list-icon li {
  width: 84px;
  padding: 4px 0 5px;
  text-align: center;
  font-size: 13px;
  border-radius: 2px;
  margin-right: 10px;
  border: 1px solid #707070;
}

@media screen and (max-width: 767px) {
  .business .concept .institution ul.list-icon li {
    font-size: 11px;
    width: 60px;
    margin-bottom: 6px;
    margin-right: 6px;
  }
  .business .concept .institution ul.list-icon li:nth-of-type(5n) {
    margin-right: 0;
  }
}
.business .concept .institution ul.list-icon li:last-of-type {
  margin-right: 0;
}

.business .concept .institution ul.list-icon:nth-of-type(n + 3) li {
  width: 150px;
}

.business .concept .example-link {
  width: 800px;
  box-sizing: border-box;
  margin: 120px auto 0;
  display: flex;
  border: 1px solid #707070;
  font-family: "YakuHanJPs", "Noto Serif JP", serif;
  background: #FFF;
}

@media screen and (max-width: 767px) {
  .business .concept .example-link {
    width: 88%;
    display: block;
    margin-top: 50px;
  }
}
.business .concept .example-link figure {
  width: 325px;
}

@media screen and (max-width: 767px) {
  .business .concept .example-link figure {
    width: 100%;
  }
}
.business .concept .example-link .casestudy {
  width: 475px;
  text-align: center;
  padding-top: 60px;
}

@media screen and (max-width: 767px) {
  .business .concept .example-link .casestudy {
    width: 100%;
    text-align: center;
    padding-top: 30px;
    padding-bottom: 30px;
  }
}
.business .concept .example-link em {
  font-size: 13px;
  width: 100%;
  display: block;
}

@media screen and (max-width: 767px) {
  .business .concept .example-link em {
    font-size: 12px;
  }
}
.business .concept .example-link h3 {
  font-size: 32px;
  margin-top: 12px;
  width: 100%;
}

@media screen and (max-width: 767px) {
  .business .concept .example-link h3 {
    font-size: 20px;
  }
}
.business .concept a .example-link {
  color: #707070;
}

.business .concept a .example-link:hover {
  opacity: 0.6;
}

.business .link-bnr {
  padding: 100px 0;
  margin: 0;
}

@media screen and (max-width: 767px) {
  .business .link-bnr {
    padding: 50px 0;
  }
}
.business .link-bnr .automower {
  width: 1100px;
  margin: 60px auto;
  background: #7D8986;
}

@media screen and (max-width: 767px) {
  .business .link-bnr .automower {
    width: 90%;
    margin: 30px auto 0;
  }
}
.business .link-bnr .automower a {
  display: flex;
  transition: 0.5s;
}

.business .link-bnr .automower a:hover {
  opacity: 0.6;
}

.business .link-bnr .automower a .titleBlock {
  width: 50%;
  display: flex;
  align-items: center;
  justify-items: center;
}

.business .link-bnr .automower a .titleBlock h3 {
  width: 360px;
  margin: 0 auto;
}

@media screen and (max-width: 767px) {
  .business .link-bnr .automower a .titleBlock h3 {
    width: 60%;
  }
}
.business .link-bnr .automower a figure {
  width: 50%;
}

.business .link-bnr .automower:hover {
  opacity: 0.7;
}

.business.office-greening .mainblock {
  background: url(../images/business/office-greening/office-greening-mainimg.jpg) center center/cover no-repeat;
}

.business.office-greening .maintitle {
  height: 334px;
}

@media screen and (max-width: 767px) {
  .business.office-greening .maintitle {
    height: 210px;
  }
}
.business.office-greening .youtube {
  width: 560px;
  aspect-ratio: 16/9;
  margin: 60px auto 0;
}

.business.office-greening .youtube iframe {
  width: 100%;
  height: 100%;
}

@media screen and (max-width: 767px) {
  .business.office-greening .youtube {
    width: 100%;
    margin: 40px auto 0;
  }
}
.business.greening-business .mainblock {
  background: url(../images/business/greening-business/greening-business-mainimg.jpg) center center/cover no-repeat;
}

.business.greening-business .subblock {
  background-position: center center;
  background-size: cover;
  background-repeat: no-repeat;
  width: 100%;
  height: 500px;
  position: relative;
}

@media screen and (max-width: 767px) {
  .business.greening-business .subblock {
    height: 200px;
  }
}
.business.greening-business .subblock.residential-commercial {
  background-image: url(../images/business/greening-business/residential-commercial-img.jpg);
}

.business.greening-business .subblock.public-facility {
  background-image: url(../images/business/greening-business/public-facility-mainimg.webp);
}

.business.greening-business .subblock.egp {
  background-image: url(../images/business/greening-business/egp-mainimg.jpg);
}

.business.greening-business .subblock.lsd {
  background-image: url(../images/business/greening-business/landscape-mainimg.jpg);
}

.business.greening-business .subblock h1 {
  text-align: center;
  padding: 38px 0;
  width: 596px;
  line-height: 1.5;
  background: #04731f;
  background: linear-gradient(90deg, rgba(4, 115, 31, 0) 0%, rgba(4, 115, 31, 0.7) 20%, rgba(4, 115, 31, 0.7) 80%, rgba(4, 115, 31, 0) 100%);
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  font-size: 26px;
  color: #FFF;
}

@media screen and (max-width: 767px) {
  .business.greening-business .subblock h1 {
    font-size: 20px;
    padding: 22px 0;
    width: 100%;
  }
}
.business.greening-business .subblock h1 span {
  font-size: 18px;
  display: block;
  margin-bottom: 15px;
}

@media screen and (max-width: 767px) {
  .business.greening-business .subblock h1 span {
    font-size: 15px;
  }
}
.business.greening-business .subblock h1 em {
  /*display: block;*/
  font-size: 14px;
  margin-left: 0.5em;
  margin-top: 15px;
}

@media screen and (max-width: 767px) {
  .business.greening-business .subblock h1 em {
    font-size: 13px;
  }
}
.business.greening-business .green-space {
  padding-top: 80px;
}

@media screen and (max-width: 767px) {
  .business.greening-business .green-space {
    padding-top: 60px;
  }
}
.business.greening-business .green-space p.mt20 {
  font-size: 16px;
  margin-top: 20px;
  line-height: 2;
  letter-spacing: 0.05em;
}

.business.greening-business .green-space ul.melit-list {
  width: 870px;
  margin: 40px auto 0;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}

@media screen and (max-width: 767px) {
  .business.greening-business .green-space ul.melit-list {
    width: 100%;
    margin: 25px auto 0;
    display: block;
  }
}
.business.greening-business .green-space ul.melit-list li {
  width: 270px;
  box-sizing: border-box;
  height: 75px;
  border: 1px solid #3CA759;
  margin-bottom: 20px;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  font-size: 16px;
  font-family: "YakuHanJPs", "Noto Sans JP", sans-serif;
  line-height: 1.65;
}

@media screen and (max-width: 767px) {
  .business.greening-business .green-space ul.melit-list li {
    width: 100%;
    margin-bottom: 15px;
    font-size: 15px;
    height: auto;
    padding: 15px;
    box-sizing: border-box;
  }
}
.business.greening-business .green-space .systemBlock {
  display: flex;
  flex-wrap: wrap;
  margin: 60px auto 0;
}

@media screen and (max-width: 767px) {
  .business.greening-business .green-space .systemBlock {
    display: block;
    margin: 40px auto 0;
  }
}
.business.greening-business .green-space .systemBlock .txt {
  width: 570px;
  margin-right: 130px;
}

@media screen and (max-width: 767px) {
  .business.greening-business .green-space .systemBlock .txt {
    width: 100%;
    margin-right: 0;
  }
}
.business.greening-business .green-space .systemBlock .txt h4 {
  color: #3CA759;
  font-size: 16px;
  font-weight: 700;
}

.business.greening-business .green-space .systemBlock .txt h4 span {
  color: #C9EED3;
  margin-right: 0.5em;
}

.business.greening-business .green-space .systemBlock .txt p {
  font-size: 16px;
  line-height: 1.85;
  margin-top: 20px;
  letter-spacing: 0.05em;
}

.business.greening-business .green-space .systemBlock .txt p small {
  display: block;
  font-size: 0.9em;
}

.business.greening-business .green-space .systemBlock .txt p.system-btn a {
  font-size: 20px;
  background: #F0F9F2;
  padding: 15px 60px;
  display: inline-block;
  color: #3F4E4A;
  border-radius: 36px;
  letter-spacing: 0.1em;
}

@media screen and (max-width: 767px) {
  .business.greening-business .green-space .systemBlock .txt p.system-btn a {
    display: block;
    font-size: 16px;
    padding: 15px;
    border-radius: 20px;
  }
}
.business.greening-business .green-space .systemBlock .txt p.system-btn a:hover {
  background: #3CA759;
  color: #FFF;
}

.business.greening-business .green-space .systemBlock .img {
  width: 300px;
}

@media screen and (max-width: 767px) {
  .business.greening-business .green-space .systemBlock .img {
    width: 100%;
    margin-top: 20px;
  }
}
.business.greening-business .green-space h2.lastTitle {
  margin-top: 60px;
}

@media screen and (max-width: 767px) {
  .business.greening-business .green-space h2.lastTitle {
    margin-top: 40px;
  }
}
.business.greening-business .green-space h3 {
  font-size: 30px;
  color: #3CA759;
  margin-top: 80px;
  font-weight: 500;
}

@media screen and (max-width: 767px) {
  .business.greening-business .green-space h3 {
    font-size: 20px;
    margin-top: 60px;
  }
}
.business.greening-business .green-space h3.merit {
  margin-top: 60px;
  font-size: 20px;
  color: #3F4E4A;
}

.business.greening-business .green-space .institutionBlock {
  display: flex;
  margin-top: 20px;
  justify-content: space-between;
  padding-top: 20px;
  border-top: 1px solid #707070;
}

@media screen and (max-width: 767px) {
  .business.greening-business .green-space .institutionBlock {
    display: block;
  }
}
.business.greening-business .green-space .institutionBlock.b-none {
  border-top: none;
}

.business.greening-business .green-space .institutionBlock .txtBlock {
  width: 580px;
  flex-flow: column;
  display: flex;
}

.business.greening-business .green-space .institutionBlock .txtBlock.w100 {
  width: 100%;
}

@media screen and (max-width: 767px) {
  .business.greening-business .green-space .institutionBlock .txtBlock {
    width: 100%;
  }
}
.business.greening-business .green-space .institutionBlock .txtBlock h4 {
  font-size: 20px;
  line-height: 1.9;
  margin-bottom: 15px;
}

@media screen and (max-width: 767px) {
  .business.greening-business .green-space .institutionBlock .txtBlock h4 {
    font-size: 17px;
    line-height: 1.6;
  }
}
.business.greening-business .green-space .institutionBlock .txtBlock h4.mt40 {
  margin-top: 40px;
}

.business.greening-business .green-space .institutionBlock .txtBlock p {
  font-size: 16px;
  line-height: 2;
  text-align: justify;
  text-justify: inter-ideograph;
}

@media screen and (max-width: 767px) {
  .business.greening-business .green-space .institutionBlock .txtBlock p {
    font-size: 15px;
    line-height: 1.8;
  }
}
.business.greening-business .green-space .institutionBlock .txtBlock p em {
  font-size: 0.85em;
  margin-left: 1em;
  text-indent: -1em;
  display: block;
}

.business.greening-business .green-space .institutionBlock .txtBlock dl {
  display: flex;
  margin-top: auto;
  font-size: 16px;
}

@media screen and (max-width: 767px) {
  .business.greening-business .green-space .institutionBlock .txtBlock dl {
    margin-top: 20px;
    font-size: 14px;
    justify-content: space-between;
  }
}
.business.greening-business .green-space .institutionBlock .txtBlock dl dt {
  background-color: #D7D7D7;
  padding: 10px 0;
  text-align: center;
  width: 100px;
  margin-right: 5px;
  display: flex;
  align-items: center;
  justify-content: center;
}

@media screen and (max-width: 767px) {
  .business.greening-business .green-space .institutionBlock .txtBlock dl dt {
    width: 23%;
  }
}
.business.greening-business .green-space .institutionBlock .txtBlock dl dd {
  background-color: #EBEBEB;
  width: 475px;
  box-sizing: border-box;
  padding: 10px 16px;
  line-height: 1.5;
}

@media screen and (max-width: 767px) {
  .business.greening-business .green-space .institutionBlock .txtBlock dl dd {
    width: 75%;
  }
}
.business.greening-business .green-space .institutionBlock figure {
  width: 300px;
}

@media screen and (max-width: 767px) {
  .business.greening-business .green-space .institutionBlock figure {
    width: 100%;
    margin-top: 20px;
  }
}
.business.greening-business .green-space .institutionBlock figure.system {
  width: 448px;
  margin-top: 40px;
}

@media screen and (max-width: 767px) {
  .business.greening-business .green-space .institutionBlock figure.system {
    width: 100%;
    margin-top: 25px;
  }
}
.business.greening-business .green-space .institutionBlock figure figcaption {
  font-size: 14px;
  line-height: 1.7;
  margin-top: 10px;
}

@media screen and (max-width: 767px) {
  .business.greening-business .green-space .institutionBlock figure figcaption {
    font-size: 13px;
  }
}
.business.greening-business .green-space h4.width100 {
  margin-top: 20px;
  padding-top: 20px;
  border-top: 1px solid #707070;
  font-size: 20px;
}

@media screen and (max-width: 767px) {
  .business.greening-business .green-space h4.width100 {
    font-size: 17px;
    line-height: 1.6;
  }
}
.business.greening-business .green-space p.width100 {
  font-size: 16px;
  line-height: 2;
  text-align: justify;
  text-justify: inter-ideograph;
  margin-top: 20px;
}

@media screen and (max-width: 767px) {
  .business.greening-business .green-space p.width100 {
    font-size: 15px;
    line-height: 1.8;
  }
}
.business.greening-business .green-space .institutionBlock-sub {
  display: flex;
  margin-top: 60px;
  justify-content: space-between;
}

@media screen and (max-width: 767px) {
  .business.greening-business .green-space .institutionBlock-sub {
    margin-top: 40px;
    display: block;
  }
}
.business.greening-business .green-space .institutionBlock-sub .txtBlock {
  width: 580px;
}

@media screen and (max-width: 767px) {
  .business.greening-business .green-space .institutionBlock-sub .txtBlock {
    width: 100%;
  }
}
.business.greening-business .green-space .institutionBlock-sub .txtBlock h4 {
  font-size: 20px;
  line-height: 1.9;
  margin-bottom: 15px;
  color: #3CA759;
}

@media screen and (max-width: 767px) {
  .business.greening-business .green-space .institutionBlock-sub .txtBlock h4 {
    font-size: 17px;
    line-height: 1.6;
  }
}
.business.greening-business .green-space .institutionBlock-sub .txtBlock p {
  font-size: 16px;
  line-height: 2;
  text-align: justify;
  text-justify: inter-ideograph;
}

.business.greening-business .green-space .institutionBlock-sub .txtBlock p.note {
  font-size: 13px;
  margin-top: 10px;
  text-align: left;
}

.business.greening-business .green-space .institutionBlock-sub ul {
  margin-top: 20px;
  display: flex;
}

.business.greening-business .green-space .institutionBlock-sub ul li {
  width: 200px;
  margin-right: 20px;
}

@media screen and (max-width: 767px) {
  .business.greening-business .green-space .institutionBlock-sub ul li {
    width: 48%;
    margin-right: 4%;
  }
}
.business.greening-business .green-space .institutionBlock-sub figure {
  width: 300px;
}

@media screen and (max-width: 767px) {
  .business.greening-business .green-space .institutionBlock-sub figure {
    width: 100%;
    display: block;
    margin-top: 15px;
  }
}
.business.greening-business .green-space .institutionBlock-sub2 {
  display: block;
  margin-top: 20px;
  padding-top: 20px;
  border-top: 1px solid #707070;
}

.business.greening-business .green-space .institutionBlock-sub2 p {
  margin-top: 0;
}

.business.greening-business .green-space .institutionBlock-sub2 .slide {
  margin-top: 60px;
}

@media screen and (max-width: 767px) {
  .business.greening-business .green-space .institutionBlock-sub2 .slide {
    margin: 40px auto 0;
    width: 90%;
  }
}
.business.greening-business .green-space .institutionBlock-sub2 .slide li {
  width: 462px;
  padding: 0 3px;
}

@media screen and (max-width: 767px) {
  .business.greening-business .green-space .institutionBlock-sub2 .slide li {
    width: 44%;
  }
}
.business.greening-business .green-space .institutionBlock-sub2 .slick-prev {
  background: url(../images/business/greening-business/slide-arrow-l.png) center center/100% auto no-repeat;
  left: -60px;
  width: 22px;
  height: 33px;
}

@media screen and (max-width: 767px) {
  .business.greening-business .green-space .institutionBlock-sub2 .slick-prev {
    left: -20px;
    width: 16px;
    height: 20px;
  }
}
.business.greening-business .green-space .institutionBlock-sub2 .slick-next {
  background: url(../images/business/greening-business/slide-arrow-r.png) center center/100% auto no-repeat;
  width: 22px;
  height: 33px;
  right: -60px;
}

@media screen and (max-width: 767px) {
  .business.greening-business .green-space .institutionBlock-sub2 .slick-next {
    right: -20px;
    width: 16px;
    height: 20px;
  }
}
.business.greening-business .green-space .institutionBlock-sub2 .slick-dots li {
  width: 20px !important;
  padding: 0 !important;
}

.business.greening-business .green-space .about-construction-img {
  background-image: url(../images/business/greening-business/about-construction-img.webp);
  background-attachment: fixed;
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
  height: 270px;
  margin-top: 150px;
}

@media screen and (max-width: 767px) {
  .business.greening-business .green-space .about-construction-img {
    height: 200px;
    margin-top: 60px;
    background-attachment: scroll;
  }
}
.business.greening-business .green-space .workflow {
  margin-top: 50px;
  padding-left: 140px;
}

@media screen and (max-width: 767px) {
  .business.greening-business .green-space .workflow {
    padding-left: 0;
  }
}
.business.greening-business .green-space .workflow dl {
  display: flex;
  align-items: center;
  font-family: "Noto Sans JP", sans-serif;
  flex-wrap: wrap;
}

.business.greening-business .green-space .workflow dl:after {
  content: url(../images/business/greening-business/workflow-arrow.svg);
  display: block;
  text-align: center;
  margin: 12px 0 20px;
  width: 100%;
}

.business.greening-business .green-space .workflow dl:last-of-type::after {
  content: "";
  margin: 0;
}

.business.greening-business .green-space .workflow dl dt {
  width: 186px;
  font-size: 20px;
  line-height: 1.6;
}

@media screen and (max-width: 767px) {
  .business.greening-business .green-space .workflow dl dt {
    font-size: 16px;
    font-weight: 700;
  }
}
.business.greening-business .green-space .workflow dl dd {
  font-size: 16px;
  line-height: 2;
}

@media screen and (max-width: 767px) {
  .business.greening-business .green-space .workflow dl dd {
    font-size: 15px;
    line-height: 1.8;
  }
}
.business.greening-business .green-space .download a {
  color: #3F4E4A;
  display: block;
  box-sizing: border-box;
  width: 800px;
  margin: 60px auto 0;
  border: 1px solid #3CA759;
  text-align: center;
  padding: 25px 0;
}

@media screen and (max-width: 767px) {
  .business.greening-business .green-space .download a {
    width: 100%;
    margin: 40px auto 0;
    padding: 20px 0;
  }
}
.business.greening-business .green-space .download a:hover {
  background: #3CA759;
  color: #FFF;
}

.business.greening-business .green-space p.dl-note {
  font-size: 16px;
  line-height: 2;
  margin-top: 20px;
  text-align: center;
}

.business.greening-business .green-space .measuresBlock {
  margin-top: 60px;
  padding-top: 20px;
}

@media screen and (max-width: 767px) {
  .business.greening-business .green-space .measuresBlock {
    margin-top: 30px;
  }
}
.business.greening-business .green-space .measuresBlock p {
  font-size: 16px;
}

.business.greening-business .green-space .measuresBlock p.title {
  color: #3CA759;
  line-height: 1.4;
}

.business.greening-business .green-space .measuresBlock p.txt {
  margin-top: 20px;
  line-height: 1.4;
}

@media screen and (max-width: 767px) {
  .business.greening-business .green-space .measuresBlock p.txt {
    margin-top: 15px;
  }
}
.business.greening-business .green-space .measuresBlock ul.measures {
  margin-top: 25px;
  display: flex;
  justify-content: space-around;
  align-items: center;
}

@media screen and (max-width: 767px) {
  .business.greening-business .green-space .measuresBlock ul.measures {
    display: block;
  }
}
.business.greening-business .green-space .measuresBlock ul.measures li {
  width: 476px;
}

.business.greening-business .green-space .measuresBlock ul.measures li:nth-of-type(2) {
  width: 16px;
}

@media screen and (max-width: 767px) {
  .business.greening-business .green-space .measuresBlock ul.measures li:nth-of-type(2) {
    margin: 0 auto;
    transform: rotate(90deg);
  }
}
@media screen and (max-width: 767px) {
  .business.greening-business .green-space .measuresBlock ul.measures li {
    width: 100%;
  }
}
.business.greening-business .green-space .faq-btn a {
  width: 800px;
  display: block;
  margin: 80px auto 0;
  background: #EAEDEA;
  padding: 30px 0;
  text-align: center;
  font-size: 30px;
  color: #3F4E4A;
}

@media screen and (max-width: 767px) {
  .business.greening-business .green-space .faq-btn a {
    width: 100%;
    font-size: 20px;
    padding: 18px 0;
    margin: 50px auto 0;
  }
}
.business.greening-business .green-space .faq-btn a span {
  font-size: 14px;
  margin-bottom: 15px;
  display: block;
}

@media screen and (max-width: 767px) {
  .business.greening-business .green-space .faq-btn a span {
    font-size: 13px;
    margin-bottom: 10px;
  }
}
.business.greening-business .green-space .faq-btn a:hover {
  background: #3CA759;
  color: #FFF;
}

.business.greening-business .landscape-designer {
  padding-top: 80px;
}

.business.greening-business .subsidy {
  max-width: 1000px;
  margin: 60px auto 30px;
  border-radius: 10px;
  border: 1px solid #ddd;
}
.business.greening-business .subsidy h3 {
  background-color: #DDD;
  color: #000;
  font-size: 18px;
  padding: 12px;
  text-align: center;
  margin: 0;
  border-radius: 10px 10px 0 0;
}
.business.greening-business .subsidy p {
  line-height: 2;
  font-size: 16px;
  padding: 20px;
}

.business.golf .mainblock {
  background: url(../images/business/golf-business/golf-business-mainimg.jpg) center center/cover no-repeat;
}

.business.golf .concept-title .txtblock p {
  letter-spacing: 0.03em;
}

.business.golf .subblock {
  background-position: center center;
  background-size: cover;
  background-repeat: no-repeat;
  width: 100%;
  height: 500px;
  position: relative;
}

@media screen and (max-width: 767px) {
  .business.golf .subblock {
    height: 200px;
  }
}
.business.golf .subblock.course-management {
  background-image: url(../images/business/golf-business/course-management-img.webp);
}

.business.golf .subblock.course-remodeling {
  background-image: url(../images/business/golf-business/course-remodeling-img.webp);
}

.business.golf .subblock h1 {
  text-align: center;
  padding: 38px 0;
  width: 596px;
  background: #04731f;
  background: linear-gradient(90deg, rgba(4, 115, 31, 0) 0%, rgba(4, 115, 31, 0.7) 20%, rgba(4, 115, 31, 0.7) 80%, rgba(4, 115, 31, 0) 100%);
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  font-size: 26px;
  color: #FFF;
}

@media screen and (max-width: 767px) {
  .business.golf .subblock h1 {
    width: 100%;
    font-size: 20px;
    padding: 22px 0;
  }
}
.business.golf .subblock h1 span {
  font-size: 18px;
  display: block;
  margin-bottom: 15px;
}

@media screen and (max-width: 767px) {
  .business.golf .subblock h1 span {
    font-size: 15px;
  }
}
.business.golf .subblock h1 em {
  display: block;
  font-size: 14px;
  margin-top: 15px;
}

.business.golf .golf-business {
  padding-top: 80px;
}

.business.golf .golf-business h3 {
  font-size: 30px;
  color: #3CA759;
  margin-top: 80px;
  font-weight: 500;
}

@media screen and (max-width: 767px) {
  .business.golf .golf-business h3 {
    font-size: 20px;
    margin-top: 60px;
  }
}
.business.golf .golf-business .golfBlock {
  display: flex;
  margin-top: 20px;
  justify-content: space-between;
  padding-top: 20px;
  border-top: 1px solid #707070;
}

@media screen and (max-width: 767px) {
  .business.golf .golf-business .golfBlock {
    display: block;
  }
}
.business.golf .golf-business .golfBlock.b-none {
  border-top: none;
}

.business.golf .golf-business .golfBlock.no-line {
  border-top: none;
  margin-top: 40px;
}

.business.golf .golf-business .golfBlock .txtBlock {
  width: 580px;
  flex-flow: column;
  display: flex;
}

@media screen and (max-width: 767px) {
  .business.golf .golf-business .golfBlock .txtBlock {
    width: 100%;
  }
}
.business.golf .golf-business .golfBlock .txtBlock h4 {
  font-size: 20px;
  line-height: 1.9;
  margin-bottom: 15px;
  letter-spacing: 0.05em;
}

@media screen and (max-width: 767px) {
  .business.golf .golf-business .golfBlock .txtBlock h4 {
    font-size: 18px;
    line-height: 1.8;
  }
}
.business.golf .golf-business .golfBlock .txtBlock p {
  font-size: 16px;
  line-height: 2;
  text-align: justify;
  text-justify: inter-ideograph;
}

@media screen and (max-width: 767px) {
  .business.golf .golf-business .golfBlock .txtBlock p {
    font-size: 15px;
    line-height: 1.8;
  }
}
.business.golf .golf-business .golfBlock figure {
  width: 300px;
}

@media screen and (max-width: 767px) {
  .business.golf .golf-business .golfBlock figure {
    width: 100%;
    margin-top: 15px;
    display: block;
  }
}
.business.golf .golf-business h4.blockTitle {
  font-size: 20px;
  margin-top: 60px;
}

@media screen and (max-width: 767px) {
  .business.golf .golf-business h4.blockTitle {
    font-size: 18px;
    line-height: 1.4;
  }
}
.business.golf .golf-business h4.blockTitle2 {
  font-size: 20px;
  margin-top: 10px;
}

@media screen and (max-width: 767px) {
  .business.golf .golf-business h4.blockTitle2 {
    font-size: 18px;
    line-height: 1.4;
  }
}
.business.golf .golf-business p.txt {
  font-size: 16px;
  line-height: 2;
  text-align: justify;
  text-justify: inter-ideograph;
  margin-top: 20px;
}

@media screen and (max-width: 767px) {
  .business.golf .golf-business p.txt {
    font-size: 15px;
    line-height: 1.8;
  }
}
.business.golf .golf-business .course-management-prra {
  height: 300px;
  background-image: url(../images/business/golf-business/course-management-pr.webp);
  background-attachment: fixed;
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
  margin-top: 180px;
}

.business.golf .golf-business .course-management-prra.remodel {
  background-image: url(../images/business/golf-business/course-remodeling-parra.webp);
}

@media screen and (max-width: 767px) {
  .business.golf .golf-business .course-management-prra {
    height: 180px;
    background-attachment: scroll;
    margin-top: 60px;
  }
}
.business.golf .golf-business .golfBlock-sub {
  display: flex;
  justify-content: space-between;
  margin-top: 80px;
}

@media screen and (max-width: 767px) {
  .business.golf .golf-business .golfBlock-sub {
    margin-top: 60px;
    display: block;
  }
}
.business.golf .golf-business .golfBlock-sub .txtBlock {
  width: 560px;
}

@media screen and (max-width: 767px) {
  .business.golf .golf-business .golfBlock-sub .txtBlock {
    width: 100%;
  }
}
.business.golf .golf-business .golfBlock-sub .txtBlock h4 {
  font-size: 20px;
  letter-spacing: 0.05em;
}

@media screen and (max-width: 767px) {
  .business.golf .golf-business .golfBlock-sub .txtBlock h4 {
    font-size: 18px;
  }
}
.business.golf .golf-business .golfBlock-sub .txtBlock p {
  font-size: 16px;
  line-height: 2;
  margin-top: 20px;
  text-align: justify;
  text-justify: inter-ideograph;
}

@media screen and (max-width: 767px) {
  .business.golf .golf-business .golfBlock-sub .txtBlock p {
    font-size: 15px;
    line-height: 1.8;
  }
}
.business.golf .golf-business .golfBlock-sub figure {
  width: 200px;
}

@media screen and (max-width: 767px) {
  .business.golf .golf-business .golfBlock-sub figure {
    width: 100%;
    margin-top: 15px;
  }
}
.business.golf .golf-listBlock {
  display: flex;
  margin-top: 20px;
  justify-content: space-between;
  padding-top: 20px;
  border-top: 1px solid #707070;
}

@media screen and (max-width: 767px) {
  .business.golf .golf-listBlock {
    display: block;
  }
}
.business.golf .golf-listBlock ul {
  width: 440px;
  padding-right: 53px;
  box-sizing: border-box;
  margin-top: 35px;
}

@media screen and (max-width: 767px) {
  .business.golf .golf-listBlock ul {
    width: 100%;
    padding-right: 0;
    margin-top: 0;
  }
}
.business.golf .golf-listBlock ul li {
  margin-left: 1em;
  text-indent: -1em;
  font-size: 16px;
  line-height: 1.6;
  margin-bottom: 8px;
}

@media screen and (max-width: 767px) {
  .business.golf .golf-listBlock ul li {
    font-size: 14px;
  }
}
.business.golf .crowns {
  background: #EAEDEA;
  padding: 40px 80px;
  display: flex;
  justify-content: space-between;
  margin-top: 60px;
}

@media screen and (max-width: 767px) {
  .business.golf .crowns {
    margin-top: 40px;
    padding: 20px;
    display: block;
  }
}
.business.golf .crowns .txtBlock {
  width: 400px;
}

@media screen and (max-width: 767px) {
  .business.golf .crowns .txtBlock {
    width: 100%;
  }
}
.business.golf .crowns .txtBlock h4 {
  font-size: 20px;
}

@media screen and (max-width: 767px) {
  .business.golf .crowns .txtBlock h4 {
    font-size: 18px;
    line-height: 1.5;
  }
}
.business.golf .crowns .txtBlock p {
  font-size: 16px;
  line-height: 2;
  margin-top: 20px;
  text-align: justify;
  text-justify: inter-ideograph;
}

@media screen and (max-width: 767px) {
  .business.golf .crowns .txtBlock p {
    font-size: 15px;
    line-height: 1.8;
    margin-top: 15px;
  }
}
.business.golf .crowns figure {
  width: 380px;
}

@media screen and (max-width: 767px) {
  .business.golf .crowns figure {
    width: 100%;
    display: block;
    margin-top: 15px;
  }
}
.business.golf .solution-example {
  margin-top: 60px;
  text-align: center;
}

@media screen and (max-width: 767px) {
  .business.golf .solution-example {
    margin-top: 40px;
  }
}
.business.golf .solution-example h3 {
  font-size: 20px;
  color: #3CA759;
}

@media screen and (max-width: 767px) {
  .business.golf .solution-example h3 {
    font-size: 18px;
  }
}
.business.golf .solution-example p.note {
  margin-top: 20px;
}

@media screen and (max-width: 767px) {
  .business.golf .solution-example p.note {
    margin-top: 15px;
    font-size: 15px;
  }
}
.business.golf .solution-example .before-after {
  width: 725px;
  margin: 40px auto;
}

@media screen and (max-width: 767px) {
  .business.golf .solution-example .before-after {
    width: 100%;
    margin: 30px auto;
  }
}
.business.golf .solution-example ul {
  display: flex;
  justify-content: space-around;
  margin-top: 50px;
  padding: 0 130px;
  flex-wrap: wrap;
}

@media screen and (max-width: 767px) {
  .business.golf .solution-example ul {
    display: block;
    margin-top: 30px;
    padding: 0;
  }
}
.business.golf .solution-example ul li {
  width: 360px;
  text-align: left;
}

@media screen and (max-width: 767px) {
  .business.golf .solution-example ul li {
    width: 100%;
  }
  .business.golf .solution-example ul li:nth-of-type(2) {
    margin-top: 20px;
  }
}
.business.golf .solution-example ul li span {
  display: inline-block;
  padding: 8px 15px;
  border: 1px solid #707070;
  font-size: 14px;
  font-family: "YakuHanJPs", "Noto Sans JP", sans-serif;
}

.business.golf .solution-example ul li p {
  font-size: 14px;
  line-height: 1.8;
  margin-top: 10px;
}

.business.golf .solution-example ul li figure {
  margin-top: 10px;
  width: 320px;
}

@media screen and (max-width: 767px) {
  .business.golf .solution-example ul li figure {
    width: 100%;
  }
}
.business.golf .solution-example ul:after {
  content: "";
  display: block;
  width: 100%;
  height: 89px;
  margin-top: 55px;
  background: url(/images/business/golf-business/course-remodeling-arrow.png) top center no-repeat;
}

@media screen and (max-width: 767px) {
  .business.golf .solution-example ul:after {
    margin-top: 20px;
    width: 40px;
    margin: 25px auto 0;
    height: 41px;
    background-size: 100% auto;
  }
}
.business.golf .solution-example .settlement {
  margin-top: 60px;
}

@media screen and (max-width: 767px) {
  .business.golf .solution-example .settlement {
    margin-top: 25px;
  }
}
.business.golf .solution-example .settlement span {
  font-family: "YakuHanJPs", "Noto Sans JP", sans-serif;
  display: block;
  width: 104px;
  font-size: 18px;
  text-align: center;
  padding: 8px;
  background: #3F4E4A;
  color: #FFF;
  font-weight: 500;
  margin: 0 auto;
}

@media screen and (max-width: 767px) {
  .business.golf .solution-example .settlement span {
    font-size: 16px;
  }
}
.business.golf .solution-example .settlement p {
  margin-top: 20px;
  text-align: center;
  font-size: 14px;
  line-height: 1.8;
}

.business.golf .solution-example p.association {
  font-size: 16px;
  text-align: center;
  width: 588px;
  margin: 70px auto 0;
  border: 1px solid #707070;
  padding: 10px 0;
}

@media screen and (max-width: 767px) {
  .business.golf .solution-example p.association {
    width: 100%;
    margin: 40px auto 0;
    font-size: 15px;
    box-sizing: border-box;
    padding: 10px;
    line-height: 1.5;
  }
}
.business.golf .management {
  background: #F7FAF7;
  padding: 40px;
  margin-top: 100px;
}

@media screen and (max-width: 767px) {
  .business.golf .management {
    padding: 25px;
    margin-top: 60px;
  }
}
.business.golf .management p.subblock {
  width: 270px;
  text-align: center;
  font-size: 18px;
  color: #FFF;
  background: #3CA759;
  margin: 0 auto;
  padding: 12px 0;
}

@media screen and (max-width: 767px) {
  .business.golf .management p.subblock {
    width: 200px;
    font-size: 15px;
  }
}
.business.golf .management h3 {
  font-family: "YakuHanJPs", "Noto Serif JP", serif;
  font-size: 30px;
  line-height: 1.7;
  text-align: center;
  margin-top: 25px;
}

@media screen and (max-width: 767px) {
  .business.golf .management h3 {
    font-size: 20px;
    line-height: 1.6;
    margin-top: 20px;
  }
}
.business.golf .management p.txt {
  font-family: "YakuHanJPs", "Noto Serif JP", serif;
  text-align: center;
  margin-top: 35px;
  font-size: 16px;
  line-height: 2.5;
}

@media screen and (max-width: 767px) {
  .business.golf .management p.txt {
    margin-top: 25px;
    font-size: 14px;
    line-height: 1.6;
    text-align: left;
  }
}
.business.sports-turf .bigroll-btn a {
  width: 320px;
  margin: 40px auto 0;
  display: block;
}

@media screen and (max-width: 767px) {
  .business.sports-turf .bigroll-btn a {
    width: 60%;
    margin: 20px auto 0;
  }
}
.business.sports-turf .bigroll-btn a:hover {
  opacity: 0.7;
}

.business.sports-turf .institution .imgblock h2 {
  width: 384px;
}

@media screen and (max-width: 767px) {
  .business.sports-turf .institution .imgblock h2 {
    width: 260px;
  }
}
.business.sports-turf .mainblock {
  background: url(../images/business/sports-turf/sports-turf-mainimg.jpg) center center/cover no-repeat;
}

.business.sports-turf .mainblock .maintitle {
  height: 366px;
}

@media screen and (max-width: 767px) {
  .business.sports-turf .mainblock .maintitle {
    height: 208px;
  }
}
.business.sports-turf .subblock {
  background-position: center center;
  background-size: cover;
  background-repeat: no-repeat;
  width: 100%;
  height: 500px;
  position: relative;
}

.business.sports-turf .subblock.turf-construction {
  background-image: url(../images/business/sports-turf/turf-construction-mainimg.jpg);
}

.business.sports-turf .subblock.quality-management {
  background-image: url(../images/business/sports-turf/quality-management-mainimg.jpg);
}

.business.sports-turf .subblock.artificial-turf {
  background-image: url(../images/business/sports-turf/artificial-turf-mainimg.jpg);
}

@media screen and (max-width: 767px) {
  .business.sports-turf .subblock {
    height: 200px;
  }
}
.business.sports-turf .subblock h1 {
  text-align: center;
  padding: 38px 0;
  width: 596px;
  background: #04731f;
  background: linear-gradient(90deg, rgba(4, 115, 31, 0) 0%, rgba(4, 115, 31, 0.7) 20%, rgba(4, 115, 31, 0.7) 80%, rgba(4, 115, 31, 0) 100%);
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  font-size: 26px;
  color: #FFF;
}

@media screen and (max-width: 767px) {
  .business.sports-turf .subblock h1 {
    width: 100%;
    padding: 22px 0;
    font-size: 20px;
  }
}
.business.sports-turf .subblock h1 span {
  font-size: 18px;
  display: block;
  margin-bottom: 15px;
}

@media screen and (max-width: 767px) {
  .business.sports-turf .subblock h1 span {
    font-size: 15px;
  }
}
.business.sports-turf .subblock h1 em {
  display: block;
  font-size: 14px;
  margin-top: 15px;
}

@media screen and (max-width: 767px) {
  .business.sports-turf .subblock h1 em {
    font-size: 13px;
  }
}
.business.sports-turf .txtblock h3.subtitle {
  font-size: 22px;
  margin-top: 80px;
}

@media screen and (max-width: 767px) {
  .business.sports-turf .txtblock h3.subtitle {
    font-size: 18px;
    margin-top: 40px;
  }
}
.business.sports-turf .txtblock h3.subtitle:before {
  content: "";
  width: 74px;
  background: #707070;
  height: 1px;
  margin-bottom: 50px;
  display: block;
}

@media screen and (max-width: 767px) {
  .business.sports-turf .txtblock h3.subtitle:before {
    width: 60px;
    margin-bottom: 25px;
  }
}
.business.sports-turf .txtblock dl.turf-point {
  margin-top: 50px;
  display: flex;
  flex-wrap: wrap;
  font-size: 16px;
}

@media screen and (max-width: 767px) {
  .business.sports-turf .txtblock dl.turf-point {
    margin-top: 30px;
    font-size: 13px;
    line-height: 1.4;
  }
}
.business.sports-turf .txtblock dl.turf-point dt {
  width: 100px;
  border-left: 1px solid #707070;
  border-right: 1px solid #707070;
  box-sizing: border-box;
  margin-bottom: 25px;
  text-align: center;
}

@media screen and (max-width: 767px) {
  .business.sports-turf .txtblock dl.turf-point dt {
    width: 84px;
    margin-bottom: 15px;
  }
}
.business.sports-turf .txtblock dl.turf-point dt span {
  display: block;
  margin-top: 10px;
}

.business.sports-turf .txtblock dl.turf-point dd {
  width: 588px;
  display: flex;
  align-items: center;
  margin-bottom: 25px;
  box-sizing: border-box;
}

@media screen and (max-width: 767px) {
  .business.sports-turf .txtblock dl.turf-point dd {
    width: calc(100% - 84px);
    margin-bottom: 15px;
  }
}
.business.sports-turf .txtblock dl.turf-point dd p {
  margin: 0 0 0 20px;
}

.business.sports-turf .txtblock p.note {
  font-size: 12px;
  margin-top: 30px;
}

@media screen and (max-width: 767px) {
  .business.sports-turf .txtblock p.note {
    margin-top: 15px;
  }
}
.business.sports-turf .management {
  background: #F7FAF7;
  padding: 40px;
  margin-top: 150px;
}

@media screen and (max-width: 767px) {
  .business.sports-turf .management {
    padding: 20px;
    margin-top: 60px;
  }
}
.business.sports-turf .management .img {
  position: relative;
}

.business.sports-turf .management .img em {
  position: absolute;
  bottom: 20px;
  right: 40px;
  font-size: 20px;
  text-align: right;
}

@media screen and (max-width: 767px) {
  .business.sports-turf .management .img em {
    bottom: -10px;
    right: 10px;
    font-size: 12px;
  }
}
.business.sports-turf .management .img em span {
  display: inline-block;
  background: #FFF;
  padding: 10px 15px;
  margin-bottom: 8px;
}

@media screen and (max-width: 767px) {
  .business.sports-turf .management .img em span {
    padding: 8px 10px;
    background: rgba(255, 255, 255, 0.8);
  }
}
.business.sports-turf .management .img em span:first-of-type {
  margin-right: 150px;
}

@media screen and (max-width: 767px) {
  .business.sports-turf .management .img em span:first-of-type {
    margin-right: 30px;
  }
}
.business.sports-turf .management .toyota-txt {
  font-size: 16px;
  line-height: 2.5;
  margin-top: 40px;
  text-align: center;
}

@media screen and (max-width: 767px) {
  .business.sports-turf .management .toyota-txt {
    font-size: 14px;
    line-height: 1.8;
    margin-top: 20px;
    text-align: left;
  }
}
.business.sports-turf .management .best-pitch {
  background: #FFF;
  padding: 35px 40px;
  display: flex;
  margin-top: 30px;
}

@media screen and (max-width: 767px) {
  .business.sports-turf .management .best-pitch {
    padding: 20px;
    display: block;
    margin-top: 20px;
  }
}
.business.sports-turf .management .best-pitch figure {
  padding-top: 40px;
  width: 360px;
}

@media screen and (max-width: 767px) {
  .business.sports-turf .management .best-pitch figure {
    padding-top: 20px;
    width: 100%;
  }
}
.business.sports-turf .management .best-pitch .txtblock {
  width: 580px;
  box-sizing: border-box;
  padding-right: 30px;
}

@media screen and (max-width: 767px) {
  .business.sports-turf .management .best-pitch .txtblock {
    width: 100%;
    padding-right: 0;
  }
}
.business.sports-turf .management .best-pitch .txtblock h3 {
  font-size: 20px;
}

@media screen and (max-width: 767px) {
  .business.sports-turf .management .best-pitch .txtblock h3 {
    font-size: 16px;
    line-height: 1.6;
  }
}
.business.sports-turf .management .best-pitch .txtblock p {
  font-size: 16px;
  line-height: 1.8;
  margin-top: 25px;
}

@media screen and (max-width: 767px) {
  .business.sports-turf .management .best-pitch .txtblock p {
    font-size: 14px;
    line-height: 1.6;
    margin-top: 20px;
  }
}
.business.sports-turf .turf-contents {
  padding-top: 80px;
}

@media screen and (max-width: 767px) {
  .business.sports-turf .turf-contents {
    padding-top: 60px;
  }
}
.business.sports-turf .turf-contents h3 {
  font-size: 30px;
  color: #3CA759;
  margin-top: 80px;
}

@media screen and (max-width: 767px) {
  .business.sports-turf .turf-contents h3 {
    font-size: 20px;
    margin-top: 60px;
  }
}
.business.sports-turf .turf-contents .turfBlock {
  margin-top: 20px;
  padding-top: 20px;
  border-top: 1px solid #707070;
}

.business.sports-turf .turf-contents .turfBlock.b-none {
  border-top: none;
}

.business.sports-turf .turf-contents .turfBlock h4 {
  font-size: 20px;
}

@media screen and (max-width: 767px) {
  .business.sports-turf .turf-contents .turfBlock h4 {
    font-size: 17px;
    line-height: 1.6;
  }
}
.business.sports-turf .turf-contents .turfBlock h4.mt {
  margin-top: 60px;
}

@media screen and (max-width: 767px) {
  .business.sports-turf .turf-contents .turfBlock h4.mt {
    margin-top: 40px;
  }
}
.business.sports-turf .turf-contents .turfBlock p {
  font-size: 16px;
  line-height: 2;
  margin-top: 20px;
}

@media screen and (max-width: 767px) {
  .business.sports-turf .turf-contents .turfBlock p {
    font-size: 15px;
    line-height: 1.8;
  }
}
.business.sports-turf .turf-contents .turfBlock p.note {
  margin-left: 65px;
}

@media screen and (max-width: 767px) {
  .business.sports-turf .turf-contents .turfBlock p.note {
    margin-left: 0;
  }
}
.business.sports-turf .turf-contents .turfBlock p.mt0 {
  margin-top: 0;
}

.business.sports-turf .turf-contents .turfBlock .turf-list {
  margin: 20px auto 0;
  width: 870px;
  display: flex;
  justify-content: space-between;
}

@media screen and (max-width: 767px) {
  .business.sports-turf .turf-contents .turfBlock .turf-list {
    display: block;
    width: 100%;
  }
}
.business.sports-turf .turf-contents .turfBlock .turf-list li {
  width: 270px;
  box-sizing: border-box;
  border: 1px solid #3CA759;
  padding: 14px 0;
  text-align: center;
  line-height: 1.6;
}

@media screen and (max-width: 767px) {
  .business.sports-turf .turf-contents .turfBlock .turf-list li {
    width: 100%;
    padding: 10px 0;
    font-size: 15px;
    margin-bottom: 15px;
  }
}
.business.sports-turf .turf-contents .turfBlock .img-list {
  width: 820px;
  margin: 40px auto 0;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

@media screen and (max-width: 767px) {
  .business.sports-turf .turf-contents .turfBlock .img-list {
    width: 100%;
    display: block;
    margin: 30px auto 0;
  }
}
.business.sports-turf .turf-contents .turfBlock .img-list li {
  width: 400px;
  margin-bottom: 40px;
}

@media screen and (max-width: 767px) {
  .business.sports-turf .turf-contents .turfBlock .img-list li {
    width: 100%;
    margin-bottom: 30px;
  }
}
.business.sports-turf .turf-contents .turfBlock .img-list li p {
  margin-top: 10px;
  font-size: 16px;
}

@media screen and (max-width: 767px) {
  .business.sports-turf .turf-contents .turfBlock .img-list li p {
    font-size: 15px;
  }
}
.business.sports-turf .turf-contents .turfBlock .img-list li p span {
  font-size: 18px;
  display: block;
}

@media screen and (max-width: 767px) {
  .business.sports-turf .turf-contents .turfBlock .img-list li p span {
    font-size: 16px;
  }
}
.business.sports-turf .turf-contents .turfBlock .width820 {
  width: 820px;
  margin: 0 auto 60px;
}

@media screen and (max-width: 767px) {
  .business.sports-turf .turf-contents .turfBlock .width820 {
    width: 100%;
    margin: 0 auto 40px;
  }
}
.business.sports-turf .turf-contents .place {
  display: flex;
  justify-content: space-between;
  margin-top: 20px;
}

@media screen and (max-width: 767px) {
  .business.sports-turf .turf-contents .place {
    display: block;
  }
}
.business.sports-turf .turf-contents .place li {
  width: 280px;
}

@media screen and (max-width: 767px) {
  .business.sports-turf .turf-contents .place li {
    width: 100%;
    margin-bottom: 15px;
  }
}
.business.sports-turf .turf-contents .place li p {
  margin-top: 10px;
  font-size: 18px;
}

@media screen and (max-width: 767px) {
  .business.sports-turf .turf-contents .place li p {
    font-size: 15px;
  }
}
.business.sports-turf .turfBlock2 {
  display: flex;
  margin-top: 20px;
  justify-content: space-between;
  padding-top: 20px;
  border-top: 1px solid #707070;
}

@media screen and (max-width: 767px) {
  .business.sports-turf .turfBlock2 {
    display: block;
  }
}
.business.sports-turf .turfBlock2 .txtBlock {
  width: 580px;
}

@media screen and (max-width: 767px) {
  .business.sports-turf .turfBlock2 .txtBlock {
    width: 100%;
  }
}
.business.sports-turf .turfBlock2 .txtBlock h4 {
  font-size: 20px;
}

@media screen and (max-width: 767px) {
  .business.sports-turf .turfBlock2 .txtBlock h4 {
    font-size: 17px;
  }
}
.business.sports-turf .turfBlock2 .txtBlock h4.mt {
  margin-top: 50px;
}

@media screen and (max-width: 767px) {
  .business.sports-turf .turfBlock2 .txtBlock h4.mt {
    margin-top: 30px;
  }
}
.business.sports-turf .turfBlock2 .txtBlock p {
  font-size: 16px;
  line-height: 2;
  margin-top: 20px;
  text-align: justify;
  text-justify: inter-ideograph;
}

@media screen and (max-width: 767px) {
  .business.sports-turf .turfBlock2 .txtBlock p {
    font-size: 15px;
    line-height: 1.8;
  }
}
.business.sports-turf .turfBlock2 .txtBlock .big-roll {
  margin-top: 20px;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}

@media screen and (max-width: 767px) {
  .business.sports-turf .turfBlock2 .txtBlock .big-roll {
    display: block;
  }
}
.business.sports-turf .turfBlock2 .txtBlock .big-roll li {
  box-sizing: border-box;
  width: 270px;
  padding: 12px;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 1px solid #3CA759;
  margin-bottom: 20px;
}

@media screen and (max-width: 767px) {
  .business.sports-turf .turfBlock2 .txtBlock .big-roll li {
    width: 100%;
    padding: 10px;
    margin-bottom: 10px;
  }
}
.business.sports-turf .turfBlock2 .txtBlock .big-roll li p {
  font-size: 16px;
  line-height: 1.6;
  margin: 0;
  text-align: center;
}

@media screen and (max-width: 767px) {
  .business.sports-turf .turfBlock2 .txtBlock .big-roll li p {
    font-size: 14px;
    letter-spacing: 0.05em;
  }
}
.business.sports-turf .turfBlock2 .txtBlock h5 {
  font-size: 18px;
  margin-top: 30px;
}

@media screen and (max-width: 767px) {
  .business.sports-turf .turfBlock2 .txtBlock h5 {
    font-size: 17px;
  }
}
.business.sports-turf .turfBlock2 .imgBlock {
  width: 300px;
}

@media screen and (max-width: 767px) {
  .business.sports-turf .turfBlock2 .imgBlock {
    width: 100%;
    display: flex;
    justify-content: space-between;
  }
}
.business.sports-turf .turfBlock2 .imgBlock figure {
  margin-bottom: 20px;
}

@media screen and (max-width: 767px) {
  .business.sports-turf .turfBlock2 .imgBlock figure {
    width: 48.5%;
  }
}
@media screen and (max-width: 767px) {
  .business.sports-turf .turfBlock2 .turf-note {
    font-size: 15px;
    line-height: 1.6;
  }
}
.business.sports-turf .toyota-studiam {
  background: #EAEDEA;
  padding: 40px 80px;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-top: 60px;
}

@media screen and (max-width: 767px) {
  .business.sports-turf .toyota-studiam {
    display: block;
    margin-top: 40px;
    padding: 20px;
  }
}
.business.sports-turf .toyota-studiam .txtBlock {
  width: 410px;
}

@media screen and (max-width: 767px) {
  .business.sports-turf .toyota-studiam .txtBlock {
    width: 100%;
  }
}
.business.sports-turf .toyota-studiam .txtBlock h3 {
  font-size: 20px;
  line-height: 1.8;
  margin: 0;
  color: #3F4E4A;
}

@media screen and (max-width: 767px) {
  .business.sports-turf .toyota-studiam .txtBlock h3 {
    font-size: 17px;
  }
}
.business.sports-turf .toyota-studiam .txtBlock p {
  font-size: 16px;
  line-height: 2;
  margin-top: 20px;
}

@media screen and (max-width: 767px) {
  .business.sports-turf .toyota-studiam .txtBlock p {
    font-size: 15px;
    line-height: 1.8;
  }
}
.business.sports-turf .toyota-studiam .toyota {
  width: 380px;
}

@media screen and (max-width: 767px) {
  .business.sports-turf .toyota-studiam .toyota {
    width: 100%;
  }
}
.business.sports-turf .toyota-studiam .best-pitch-award {
  background: #fff;
  padding: 40px 70px;
  box-sizing: border-box;
  width: 100%;
  margin-top: 20px;
  text-align: center;
}

@media screen and (max-width: 767px) {
  .business.sports-turf .toyota-studiam .best-pitch-award {
    padding: 15px;
  }
}
.business.sports-turf .toyota-studiam .best-pitch-award h4 {
  font-size: 20px;
}

@media screen and (max-width: 767px) {
  .business.sports-turf .toyota-studiam .best-pitch-award h4 {
    font-size: 17px;
    line-height: 1.5;
  }
}
.business.sports-turf .toyota-studiam .best-pitch-award figure {
  width: 360px;
  margin: 35px auto 25px;
}

@media screen and (max-width: 767px) {
  .business.sports-turf .toyota-studiam .best-pitch-award figure {
    width: 100%;
    margin: 20px auto 15px;
  }
}
.business.sports-turf .toyota-studiam .best-pitch-award p {
  font-size: 16px;
  text-align: left;
  text-align: justify;
  text-justify: inter-ideograph;
  line-height: 2;
}

@media screen and (max-width: 767px) {
  .business.sports-turf .toyota-studiam .best-pitch-award p {
    font-size: 15px;
    line-height: 1.8;
  }
}
.business.sports-turf .movieBlock {
  width: 800px;
  margin: 80px auto 0;
}

@media screen and (max-width: 767px) {
  .business.sports-turf .movieBlock {
    width: 100%;
    margin: 60px auto 0;
  }
  .business.sports-turf .movieBlock video {
    width: 100%;
    height: auto;
  }
}
.business.sports-turf .test-items {
  margin-top: 40px;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}

@media screen and (max-width: 767px) {
  .business.sports-turf .test-items {
    display: block;
    margin-top: 25px;
  }
}
.business.sports-turf .test-items:nth-of-type(n+2) {
  margin-top: 80px;
}

@media screen and (max-width: 767px) {
  .business.sports-turf .test-items:nth-of-type(n+2) {
    margin-top: 40px;
  }
}
.business.sports-turf .test-items .leftBlock {
  width: 500px;
  margin-left: 80px;
}

@media screen and (max-width: 767px) {
  .business.sports-turf .test-items .leftBlock {
    width: 100%;
    margin-left: 0;
  }
}
.business.sports-turf .test-items .leftBlock h5 {
  font-size: 22px;
  color: #3CA759;
}

@media screen and (max-width: 767px) {
  .business.sports-turf .test-items .leftBlock h5 {
    font-size: 18px;
  }
}
.business.sports-turf .test-items .leftBlock p.txt {
  margin-top: 10px;
  font-size: 16px;
  line-height: 2;
}

@media screen and (max-width: 767px) {
  .business.sports-turf .test-items .leftBlock p.txt {
    font-size: 15px;
    line-height: 1.8;
  }
}
.business.sports-turf .test-items .leftBlock .sub-imgBlock {
  margin-top: 20px;
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
}

.business.sports-turf .test-items .leftBlock .sub-imgBlock figure {
  width: 180px;
}

@media screen and (max-width: 767px) {
  .business.sports-turf .test-items .leftBlock .sub-imgBlock figure {
    width: 120px;
  }
}
.business.sports-turf .test-items .leftBlock .sub-imgBlock p.note-test {
  width: 310px;
  font-size: 13px;
  line-height: 1.58;
  margin-top: 0;
}

@media screen and (max-width: 767px) {
  .business.sports-turf .test-items .leftBlock .sub-imgBlock p.note-test {
    width: calc(100% - 130px);
    font-size: 12px;
    line-height: 1.5;
  }
}
.business.sports-turf .test-items .rightBlock {
  width: 300px;
}

@media screen and (max-width: 767px) {
  .business.sports-turf .test-items .rightBlock {
    width: 100%;
    margin-top: 15px;
  }
}
.business.sports-turf .artificial-turfBlock {
  display: flex;
  justify-content: space-between;
  margin-top: 60px;
}

@media screen and (max-width: 767px) {
  .business.sports-turf .artificial-turfBlock {
    display: block;
    margin-top: 30px;
  }
}
.business.sports-turf .artificial-turfBlock .txtBlock {
  width: 600px;
}

@media screen and (max-width: 767px) {
  .business.sports-turf .artificial-turfBlock .txtBlock {
    width: 100%;
  }
}
.business.sports-turf .artificial-turfBlock .txtBlock h5 {
  font-size: 22px;
}

@media screen and (max-width: 767px) {
  .business.sports-turf .artificial-turfBlock .txtBlock h5 {
    font-size: 18px;
    line-height: 1.5;
  }
}
.business.sports-turf .artificial-turfBlock .txtBlock h5:nth-of-type(2) {
  margin-top: 60px;
}

@media screen and (max-width: 767px) {
  .business.sports-turf .artificial-turfBlock .txtBlock h5:nth-of-type(2) {
    margin-top: 40px;
  }
}
.business.sports-turf .artificial-turfBlock .txtBlock .artificial {
  margin-top: 20px;
  margin-left: 2em;
}

.business.sports-turf .artificial-turfBlock .txtBlock .artificial li {
  list-style: disc;
  font-size: 20px;
  color: #3CA759;
  margin-bottom: 15px;
}

@media screen and (max-width: 767px) {
  .business.sports-turf .artificial-turfBlock .txtBlock .artificial li {
    font-size: 17px;
    line-height: 1.5;
    margin-bottom: 10px;
  }
}
.business.sports-turf .artificial-turfBlock .imgBlock {
  width: 300px;
}

@media screen and (max-width: 767px) {
  .business.sports-turf .artificial-turfBlock .imgBlock {
    margin-top: 15px;
    width: 100%;
  }
}
.business.sports-turf .artificial-turf-prra {
  height: 300px;
  background-image: url(../images/business/sports-turf/artificial-turf-pra.jpg);
  background-attachment: fixed;
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
  margin-top: 180px;
}

@media screen and (max-width: 767px) {
  .business.sports-turf .artificial-turf-prra {
    margin-top: 60px;
    background-attachment: scroll;
    height: 180px;
  }
}
.business .institution-btn a {
  display: block;
  text-decoration: none;
  color: #3F4E4A;
  background: #F0F9F2;
  width: 510px;
  border-radius: 50px;
  text-align: center;
  font-weight: 500;
  font-size: 22px;
  padding: 30px 0;
  margin: 60px auto 0;
}

@media screen and (max-width: 767px) {
  .business .institution-btn a {
    width: 100%;
    font-size: 16px;
    padding: 15px 0;
    margin-top: 40px;
  }
}
.business .institution-btn a span {
  display: block;
  margin-bottom: 10px;
  font-size: 14px;
}

@media screen and (max-width: 767px) {
  .business .institution-btn a span {
    font-size: 13px;
  }
}
.business .institution-btn a:hover {
  color: #FFF;
  background-color: #3CA759;
}

.business h2 {
  font-size: 30px;
  line-height: 1.66;
  text-align: center;
}

@media screen and (max-width: 767px) {
  .business h2 {
    font-size: 20px;
  }
}
.business ul.business-list {
  margin-top: 80px;
  display: flex;
  justify-content: center;
  width: 100%;
}

@media screen and (max-width: 767px) {
  .business ul.business-list {
    margin-top: 60px;
    flex-wrap: wrap;
  }
}
@media screen and (max-width: 767px) {
  .business ul.business-list li {
    margin-bottom: 15px;
    width: 48%;
  }
}
.business ul.business-list li a {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 200px;
  border-right: 1px solid #aaa;
  height: 90px;
  box-sizing: border-box;
  padding-bottom: 32px;
  background: url(../images/business/greening-business/business-b-arrow.png) bottom 5px center no-repeat;
  text-align: center;
  line-height: 1.5;
  color: #3F4E4A;
  text-decoration: none;
}

@media screen and (max-width: 767px) {
  .business ul.business-list li a {
    background: url(../images/business/greening-business/business-b-arrow.png) bottom 5px center/20px auto no-repeat;
    height: 60px;
    width: 100%;
    font-size: 13px;
    box-sizing: border-box;
    padding: 0 6px 28px;
  }
}
.business ul.business-list li a:hover {
  background-image: url(../images/business/greening-business/business-g-arrow.png);
  color: #3CA759;
}

.business ul.business-list li:first-of-type {
  border-left: 1px solid #aaa;
}

@media screen and (max-width: 767px) {
  .business ul.business-list li:nth-of-type(3) {
    border-left: 1px solid #aaa;
  }
  .business ul.business-list li:nth-of-type(5) {
    border-left: 1px solid #aaa;
  }
  .business ul.business-list li:nth-of-type(7) {
    border-left: 1px solid #aaa;
  }
}
.business .category-link {
  display: flex;
  justify-content: center;
  margin-top: 80px;
}

@media screen and (max-width: 767px) {
  .business .category-link {
    display: block;
    margin-top: 40px;
  }
}
.business .category-link li a {
  display: inline-block;
  padding: 10px 20px;
  font-size: 16px;
  color: #3F4E4A;
  text-decoration: none;
  border-right: 1px solid #3F4E4A;
  margin: 0;
}

@media screen and (max-width: 767px) {
  .business .category-link li a {
    display: block;
    text-align: center;
    padding: 10px 0;
    border-bottom: 1px solid #3F4E4A;
    border-right: none;
  }
}
.business .category-link li a:hover {
  color: #3CA759;
}

.business .category-link li:first-of-type a {
  border-left: 1px solid #3F4E4A;
}

@media screen and (max-width: 767px) {
  .business .category-link li:first-of-type a {
    border-top: 1px solid #3F4E4A;
    border-left: none;
  }
}
.business .category-link li.active a {
  color: #3CA759;
}

.business .yahagi-30by30 {
  box-sizing: border-box;
  width: 1100px;
  margin: 0 auto 0;
}

@media screen and (max-width: 767px) {
  .business .yahagi-30by30 {
    width: 90%;
    margin: 0 auto;
  }
}
.business .yahagi-30by30 a {
  transition: 0.5s;
}

.business .yahagi-30by30 a:hover {
  opacity: 0.6;
}

.business .yahagi-30by30.mt60 {
  margin-top: 60px;
}

/*/////////////// COLUMN //////////////////*/
.column {
  font-family: "YakuHanJPs", "Noto Serif JP", serif;
}

.column p.news-entitle {
  font-family: "Noto Sans JP", sans-serif;
  text-align: center;
  font-size: 35px;
  margin-top: 70px;
  font-weight: 700;
}

@media screen and (max-width: 767px) {
  .column p.news-entitle {
    font-size: 24px;
    margin-top: 60px;
  }
}
.column p.news-entitle span:after {
  content: "";
  height: 1px;
  display: block;
  background: #707070;
  margin: 15px auto 0;
  width: 18px;
}

.column h1.news-title {
  font-family: "YakuHanJPs", "Noto Serif JP", serif;
  text-align: center;
  font-size: 24px;
  margin-top: 30px;
}

@media screen and (max-width: 767px) {
  .column h1.news-title {
    font-size: 16px;
    margin-top: 25px;
  }
}
.column .column-wrap {
  max-width: 800px;
  margin: 200px auto 0;
  position: relative;
}

.column .column-wrap .contents-index {
  margin-top: 65px;
  padding: 30px 25px 25px 25px;
  position: relative;
  border: 1px solid #CCC;
  text-align: center;
  border-radius: 12px;
}

.column .column-wrap .contents-index:before {
  content: "Contents Index";
  display: inline-block;
  padding: 4px;
  background-color: #FFF;
  position: absolute;
  top: -15px;
  left: 50%;
  transform: translateX(-50%);
  font-size: 18px;
  font-weight: 700;
  color: #999;
}

@media screen and (max-width: 767px) {
  .column .column-wrap .contents-index:before {
    font-size: 16px;
    top: -12px;
  }
}
.column .column-wrap .contents-index li {
  text-align: left;
  font-size: 16px;
  margin-bottom: 15px;
  margin-left: 1em;
  text-indent: -1em;
  line-height: 1.4;
}

.column .column-wrap .contents-index li:before {
  color: #007731;
  content: "・";
}

@media screen and (max-width: 767px) {
  .column .column-wrap .contents-index li {
    font-size: 14px;
  }
}
.column .column-wrap .contents-index li a {
  text-decoration: none;
  color: #007731;
}

.column .column-wrap .contents-index li a:hover {
  text-decoration: underline;
}

.column .column-wrap span.date {
  display: block;
  top: 20px;
  right: 0;
  text-align: right;
  position: absolute;
  font-size: 13px;
}

@media screen and (max-width: 767px) {
  .column .column-wrap {
    width: 86%;
    margin: 100px auto 0;
  }
}
.column .column-wrap .vol {
  padding: 10px 20px;
  background: #3CA759;
  display: inline-block;
  color: #FFF;
  position: relative;
}

.column .column-wrap h2 {
  font-size: 30px;
  margin-top: 20px;
  line-height: 1.4;
}

@media screen and (max-width: 767px) {
  .column .column-wrap h2 {
    font-size: 24px;
    margin-top: 15px;
    line-height: 1.6;
  }
}
.column section {
  margin-top: 110px;
}

@media screen and (max-width: 767px) {
  .column section {
    margin-top: 60px;
  }
}
.column section h3 {
  font-size: 25px;
  line-height: 2;
  color: #3CA759;
  padding-bottom: 5px;
  border-bottom: 2px solid #3CA759;
}

@media screen and (max-width: 767px) {
  .column section h3 {
    font-size: 18px;
    line-height: 1.8;
    padding: 14px;
  }
}
.column section .img {
  margin-top: 40px;
}

@media screen and (max-width: 767px) {
  .column section .img {
    margin-top: 25px;
  }
}
.column section .entry {
  margin-top: 40px;
}

@media screen and (max-width: 767px) {
  .column section .entry {
    margin-top: 25px;
  }
}
.column section .entry p {
  font-size: 16px;
  line-height: 2;
  margin-top: 20px;
  position: relative;
}

@media screen and (max-width: 767px) {
  .column section .entry p {
    font-size: 15px;
    line-height: 1.8;
    margin-top: 15px;
  }
}
.column section .entry p small {
  font-size: 0.8em;
}

.column section .entry p em {
  font-size: 0.8em;
  line-height: 1.6;
  display: block;
  margin-left: 2.75em;
  text-indent: -2.75em;
}

.column section .entry p span {
  color: #3CA759;
  font-size: 0.7em;
  position: relative;
  top: -5px;
}

.column section .entry p em span {
  font-size: 1em;
  position: relative;
  top: 0;
}

.column section .entry h3 {
  font-size: 20px;
  line-height: 1;
  margin-top: 40px;
  padding: 0;
  border-bottom: none;
  background-color: transparent;
}

@media screen and (max-width: 767px) {
  .column section .entry h3 {
    font-size: 18px;
    line-height: 1.6;
  }
}
.column section .entry h4 {
  font-size: 16px;
  color: #3CA759;
  margin-top: 20px;
}

@media screen and (max-width: 767px) {
  .column section .entry h4 {
    line-height: 1.6;
    margin-left: 1.25em;
    text-indent: -1.25em;
  }
}
.column section .entry h4:before {
  content: "●";
  font-size: 0.8em;
  margin-right: 0.4em;
  color: #bcd7c3;
}

.column section .entry ul {
  margin-top: 20px;
}

.column section .entry ul li {
  line-height: 2;
  color: #3CA759;
}

@media screen and (max-width: 767px) {
  .column section .entry ul li {
    text-indent: -1.25em;
    margin-left: 1.25em;
  }
}
.column section .entry ul li:before {
  content: "●";
  font-size: 0.8em;
  margin-right: 0.4em;
  color: #bcd7c3;
}

.column section .banner {
  margin-top: 40px;
}

@media screen and (max-width: 767px) {
  .column section .banner {
    margin-top: 25px;
  }
}
.column section .banner:hover {
  opacity: 0.6;
}

.column .columnBlock {
  width: 1100px;
  margin: 200px auto 0;
  display: flex;
  flex-wrap: wrap;
}

@media screen and (max-width: 767px) {
  .column .columnBlock {
    margin: 40px auto 0;
    width: 86%;
    display: block;
  }
}
.column .columnBlock li {
  width: 340px;
  margin-right: 40px;
  background-color: #E5F5E5;
  padding-bottom: 20px;
  margin-bottom: 40px;
}

.column .columnBlock li:nth-of-type(3n) {
  margin-right: 0;
}

.column .columnBlock li a {
  text-decoration: none;
}

.column .columnBlock li dl {
  margin: 15px 35px 0;
}

@media screen and (max-width: 767px) {
  .column .columnBlock li dl {
    margin: 20px 25px 0;
  }
}
.column .columnBlock li dl dt {
  font-size: 13px;
  color: #3CA759;
  padding: 6px 20px;
  background-color: #FFF;
  display: inline-block;
  border: 1px solid #3CA759;
  position: relative;
}

.column .columnBlock li dl dt .date {
  position: absolute;
  right: -100px;
}

.column .columnBlock li dl dd {
  font-size: 16px;
  margin-top: 12px;
  line-height: 1.6;
  color: #3F4E4A;
}

@media screen and (max-width: 767px) {
  .column .columnBlock li dl dd {
    font-size: 14px;
  }
}
.column .columnBlock li:hover {
  opacity: 0.6;
}

/* COLUMN END */
/*/////////////// COMPANY //////////////////*/
.company {
  font-family: "YakuHanJPs", "Noto Serif JP", serif;
}

.company .mainImg {
  height: 500px;
  background: url(../images/company/outline-mainimg.jpg) center center/cover no-repeat;
  position: relative;
  margin-top: 80px;
}

@media screen and (max-width: 767px) {
  .company .mainImg {
    height: 220px;
    margin-top: 60px;
  }
}
.company .mainImg .img-title {
  font-size: 20px;
  letter-spacing: 0.2em;
  background: #008e25;
  background: linear-gradient(90deg, #008e25 0%, rgba(0, 142, 37, 0) 95%);
  width: 60%;
  min-width: 640px;
  color: #FFF;
  font-weight: 500;
  box-sizing: border-box;
  position: absolute;
  bottom: 60px;
  left: 0;
  padding-top: 15px;
  padding-left: 100px;
  padding-bottom: 15px;
  line-height: 1.8;
}

.company p.en-title {
  font-size: 18px;
  text-align: center;
}

@media screen and (max-width: 767px) {
  .company p.en-title {
    font-size: 17px;
  }
}
.company p.en-title:after {
  content: "";
  height: 2px;
  width: 34px;
  background: #707070;
  margin: 15px auto 0;
}

.company h2 {
  text-align: center;
  font-size: 25px;
  margin-top: 30px;
}

@media screen and (max-width: 767px) {
  .company h2 {
    font-size: 20px;
    margin-top: 25px;
  }
}
.company p.under-txt {
  width: 900px;
  font-size: 16px;
  line-height: 2;
  margin: 40px auto 0;
  text-align: justify;
  text-justify: inter-ideograph;
}

@media screen and (max-width: 767px) {
  .company p.under-txt {
    width: 100%;
    font-size: 15px;
    line-height: 1.8;
  }
}
.company .corporate-philosophy {
  margin-top: 80px;
}

@media screen and (max-width: 767px) {
  .company .corporate-philosophy {
    margin-top: 60px;
  }
}
.company .corporate-philosophy h3 {
  margin-top: 70px;
  text-align: center;
  font-size: 28px;
  line-height: 1.7;
}

@media screen and (max-width: 767px) {
  .company .corporate-philosophy h3 {
    font-size: 22px;
    margin-top: 50px;
  }
}
.company .company-overview {
  margin-top: 100px;
}

@media screen and (max-width: 767px) {
  .company .company-overview {
    margin: 60px auto 0;
    width: 90%;
  }
}
.company .company-overview table {
  font-family: "YakuHanJPs", "Noto Sans JP", sans-serif;
  width: 1100px;
  margin: 40px auto 0;
  font-size: 17px;
  line-height: 1.7;
}

@media screen and (max-width: 767px) {
  .company .company-overview table {
    width: 100%;
    margin: 30px auto 0;
    font-size: 15px;
    line-height: 1.6;
  }
}
.company .company-overview table th {
  background: #CEE9D5;
  border-bottom: 3px solid #FFF;
  border-right: 3px solid #FFF;
  width: 25%;
  padding: 15px 30px;
  box-sizing: border-box;
}

@media screen and (max-width: 767px) {
  .company .company-overview table th {
    width: 100%;
    padding: 12px 15px;
    display: block;
    border-bottom: 2px solid #FFF;
    border-right: 2px solid #FFF;
  }
}
.company .company-overview table td {
  background: #F0F9F2;
  border-bottom: 3px solid #FFF;
  padding: 15px 25px;
  box-sizing: border-box;
}

@media screen and (max-width: 767px) {
  .company .company-overview table td {
    width: 100%;
    display: block;
    padding: 12px 15px;
    border-bottom: 2px solid #FFF;
  }
}
.company .company-overview table td span {
  margin-top: 10px;
  display: inline-block;
}

.company .company-overview table td p {
  margin-left: 5.5em;
}

.company .company-overview table td p span {
  width: 22px;
  position: relative;
  bottom: -3px;
}

@media screen and (max-width: 767px) {
  .company .company-overview table td p {
    margin-left: 0;
  }
}
.company .company-overview table td p a {
  color: #666;
}

.company .history {
  margin-top: 100px;
}

@media screen and (max-width: 767px) {
  .company .history {
    margin: 60px auto 0;
    width: 90%;
  }
}
.company .history table {
  font-family: "YakuHanJPs", "Noto Sans JP", sans-serif;
  width: 1100px;
  margin: 40px auto 0;
  font-size: 17px;
  line-height: 1.7;
  box-sizing: border-box;
}

@media screen and (max-width: 767px) {
  .company .history table {
    width: 100%;
    margin: 30px auto 0;
    font-size: 15px;
    line-height: 1.6;
  }
}
.company .history table th {
  background: #CEE9D5;
  border-bottom: 3px solid #FFF;
  border-right: 3px solid #FFF;
  width: 25%;
  padding: 15px 30px;
  box-sizing: border-box;
}

@media screen and (max-width: 767px) {
  .company .history table th {
    width: 100%;
    padding: 12px 15px;
    display: block;
    border-bottom: 2px solid #FFF;
    border-right: none;
  }
}
.company .history table td {
  background: #F0F9F2;
  border-bottom: 3px solid #FFF;
  padding: 15px 25px;
}

@media screen and (max-width: 767px) {
  .company .history table td {
    padding: 12px 15px;
    border-bottom: 2px solid #FFF;
    display: block;
    width: 100%;
    box-sizing: border-box;
  }
}
.company .history table td span {
  margin-top: 10px;
  display: inline-block;
}

.company .qualified-person {
  margin-top: 100px;
}

.company .qualified-person .day {
  text-align: right;
  max-width: 680px;
  margin: 15px auto 0;
}

@media screen and (max-width: 767px) {
  .company .qualified-person {
    margin-top: 60px;
  }
}
.company .qualified-person .qualified-list {
  width: 680px;
  margin: 50px auto 0;
  display: flex;
  flex-wrap: wrap;
}

@media screen and (max-width: 767px) {
  .company .qualified-person .qualified-list {
    width: 90%;
    margin: 40px auto 0;
    display: block;
  }
}
.company .qualified-person .qualified-list li {
  width: 420px;
  font-size: 18px;
  margin-bottom: 15px;
}

@media screen and (max-width: 767px) {
  .company .qualified-person .qualified-list li {
    width: 100%;
    font-size: 15px;
    letter-spacing: 0;
  }
}
.company .qualified-person .qualified-list li:nth-of-type(2n) {
  width: 260px;
}

@media screen and (max-width: 767px) {
  .company .qualified-person .qualified-list li:nth-of-type(2n) {
    width: 100%;
  }
}
.company .qualified-person .qualified-list li:before {
  content: "●";
  font-size: 0.6em;
  margin-right: 8px;
}

.company .qualified-person .qualified-list li span {
  font-size: 16px;
  margin-left: 1em;
}

@media screen and (max-width: 767px) {
  .company .qualified-person .qualified-list li span {
    font-size: 15px;
  }
}
.company .environmental-initiatives {
  margin-top: 100px;
}

@media screen and (max-width: 767px) {
  .company .environmental-initiatives {
    margin-top: 60px;
  }
}
.company .environmental-initiatives .environmental_wrap {
  width: 900px;
  margin: 0 auto;
}

@media screen and (max-width: 767px) {
  .company .environmental-initiatives .environmental_wrap {
    width: 90%;
  }
}
.company .environmental-initiatives .environmental_wrap .under-title {
  margin-top: 40px;
  font-size: 16px;
  line-height: 2;
  text-align: justify;
  text-justify: inter-ideograph;
  letter-spacing: 0.05em;
}

@media screen and (max-width: 767px) {
  .company .environmental-initiatives .environmental_wrap .under-title {
    font-size: 15px;
    line-height: 1.8;
  }
}
.company .environmental-initiatives .environmental_wrap h3 {
  font-size: 22px;
  margin-top: 60px;
  text-align: center;
}

@media screen and (max-width: 767px) {
  .company .environmental-initiatives .environmental_wrap h3 {
    font-size: 18px;
    margin-top: 40px;
  }
}
.company .environmental-initiatives .environmental_wrap .txt {
  margin-top: 30px;
  font-size: 16px;
  line-height: 2;
  text-align: justify;
  text-justify: inter-ideograph;
  letter-spacing: 0.03em;
}

@media screen and (max-width: 767px) {
  .company .environmental-initiatives .environmental_wrap .txt {
    font-size: 15px;
    line-height: 1.8;
  }
}
.company .environmental-initiatives .environmental_wrap .txt span {
  letter-spacing: 0.01em;
}

.company .environmental-initiatives .environmental_wrap .dayRight {
  text-align: right;
  margin-top: 40px;
}

.company .environmental-initiatives .environmental_wrap .dayRight .day {
  font-size: 15px;
}

.company .environmental-initiatives .environmental_wrap .dayRight figure {
  width: 240px;
  margin-left: auto;
  margin-top: 15px;
}

.company .environmental-initiatives .number-list li {
  margin-top: 35px;
  font-size: 18px;
  line-height: 1.8;
  color: #3CA759;
  margin-left: 1.5em;
  text-indent: -1.5em;
}

@media screen and (max-width: 767px) {
  .company .environmental-initiatives .number-list li {
    font-size: 16px;
    margin-top: 25px;
  }
}
.company .work-life-balance {
  margin-top: 80px;
}

@media screen and (max-width: 767px) {
  .company .work-life-balance {
    margin-top: 60px;
  }
}
.company .work-life-balance h2.blance {
  font-size: 28px;
  text-align: center;
}

@media screen and (max-width: 767px) {
  .company .work-life-balance h2.blance {
    font-size: 20px;
    line-height: 1.6;
  }
}
.company .work-life-balance figure {
  width: 120px;
  margin: 40px auto 0;
}

.company .work-life-balance .txt {
  font-size: 16px;
  line-height: 2;
  margin: 40px auto 0;
  width: 820px;
}

@media screen and (max-width: 767px) {
  .company .work-life-balance .txt {
    width: 90%;
    margin: 30px auto 0;
    font-size: 15px;
  }
}
.company .work-life-balance .btn-group {
  display: flex;
  justify-content: space-between;
  width: 870px;
  margin: 0 auto;
}

@media screen and (max-width: 767px) {
  .company .work-life-balance .btn-group {
    width: 100%;
    display: block;
  }
}
.company .work-life-balance .btn-group .certification-btn a {
  width: 270px;
  box-sizing: border-box;
  border: 5px solid #E5F5E5;
  padding: 18px 0;
  font-size: 16px;
  color: #3CA759;
  text-align: center;
  display: block;
  text-decoration: none;
  margin: 60px auto 0;
}

.company .work-life-balance .btn-group .certification-btn:nth-of-type(2) a {
  border: 5px solid #fddceb;
  color: #e8609e;
}

.company .work-life-balance .btn-group .certification-btn:nth-of-type(2) a p:after {
  content: url(/images/common/more-arrow-p.svg);
}

@media screen and (max-width: 767px) {
  .company .work-life-balance .btn-group .certification-btn a {
    width: 280px;
    padding: 12px 0;
    margin: 40px auto 0;
    font-size: 15px;
  }
}
.company .work-life-balance .btn-group .certification-btn a p {
  text-align: center;
  margin-top: 15px;
}

.company .work-life-balance .btn-group .certification-btn a p:after {
  content: url(/images/common/more-arrow.svg);
  width: 37px;
  height: 9px;
  display: inline-block;
  margin-left: 6px;
  transition: 0.3s;
}

.company .work-life-balance .btn-group .certification-btn a:hover p:after {
  margin-left: 30px;
}

.company .work-life-balance .btn-group .certification-btn2 a {
  width: 260px;
  box-sizing: border-box;
  border: 5px solid #cadfed;
  padding: 18px 0;
  font-size: 16px;
  color: #006EB8;
  text-align: center;
  display: block;
  text-decoration: none;
  margin: 60px auto 0;
}

@media screen and (max-width: 767px) {
  .company .work-life-balance .btn-group .certification-btn2 a {
    width: 280px;
    padding: 12px 0;
    margin: 30px auto 0;
    font-size: 15px;
  }
}
.company .work-life-balance .btn-group .certification-btn2 a p {
  text-align: center;
  margin-top: 15px;
}

.company .work-life-balance .btn-group .certification-btn2 a p:after {
  content: url(/images/common/more-arrow-b.svg);
  width: 37px;
  height: 9px;
  display: inline-block;
  margin-left: 6px;
  transition: 0.3s;
}

.company .work-life-balance .btn-group .certification-btn2 a:hover p:after {
  margin-left: 30px;
}

.company .corporate-group {
  margin-top: 80px;
}

@media screen and (max-width: 767px) {
  .company .corporate-group {
    margin-top: 60px;
  }
}
.company .corporate-group .groupwrap {
  width: 900px;
  margin: 0 auto;
}

@media screen and (max-width: 767px) {
  .company .corporate-group .groupwrap {
    width: 90%;
  }
}
.company .corporate-group .group-btn a {
  font-size: 16px;
  padding: 15px 0;
  text-align: center;
  text-decoration: none;
  color: #3F4E4A;
  width: 800px;
  margin: 80px auto 0;
  display: block;
}

.company .corporate-group .group-btn a:hover {
  opacity: 0.6;
}

@media screen and (max-width: 767px) {
  .company .corporate-group .group-btn a {
    width: 100%;
    font-size: 15px;
    margin: 50px auto 0;
  }
}
.company .corporate-group .group-btn.grouplist a {
  background: url(../images/company/group-btn-bk.jpg) no-repeat;
  position: relative;
  padding: 0;
}

.company .corporate-group .group-btn.grouplist a p {
  position: absolute;
  font-size: 24px;
  bottom: 15px;
  left: 0;
  width: 100%;
  background: linear-gradient(90deg, rgba(60, 167, 89, 0) 0%, rgba(60, 167, 89, 0) 15%, rgba(60, 167, 89, 0.9) 40%, rgba(60, 167, 89, 0.9) 60%, rgba(60, 167, 89, 0) 85%);
  text-align: center;
  padding: 12px 0;
  font-weight: 500;
  color: #FFF;
}

@media screen and (max-width: 767px) {
  .company .corporate-group .group-btn.grouplist a p {
    font-size: 16px;
    bottom: 10px;
    padding: 10px 0;
  }
}
.company .corporate-group .txt {
  font-size: 16px;
  line-height: 2;
  margin: 40px auto 0;
  width: 820px;
  text-align: justify;
  text-justify: inter-ideograph;
}

@media screen and (max-width: 767px) {
  .company .corporate-group .txt {
    width: 100%;
    font-size: 15px;
    line-height: 1.8;
    margin: 30px auto 0;
  }
}
/*//////////////CONTACT////////////*/
.contactform .contact_contents {
  margin: 80px auto 0;
  width: 920px;
}

@media screen and (max-width: 767px) {
  .contactform .contact_contents {
    margin: 60px auto 0;
    width: 90%;
  }
}
.contactform .contact_contents h3 {
  font-size: 32px;
  text-align: center;
}

.contactform .contact_contents h3.form-title {
  margin: 40px 0 0;
  text-align: left;
  font-size: 18px;
}

.contactform .contact_contents .text03 {
  font-size: 16px;
  line-height: 2;
  text-align: center;
  margin-top: 40px;
  text-align: center;
}

.contactform .contact_contents .text04 {
  font-size: 16px;
  line-height: 2;
  margin-top: 20px;
  text-align: center;
}

.contactform .contact_contents .back-to a {
  display: block;
  font-family: "Noto Sans JP", sans-serif;
  width: 40%;
  display: block;
  padding: 12px;
  box-sizing: border-box;
  border: 1px solid #CCC;
  border-radius: 8px;
  text-align: center;
  background: #FFF;
  cursor: pointer;
  font-size: 14px;
  color: #333;
  text-decoration: none;
  margin: 60px auto 0;
}

.contactform .contact_contents p.txt {
  line-height: 1.8;
}

@media screen and (max-width: 767px) {
  .contactform .contact_contents p.txt {
    width: 100%;
    margin: 15px auto 0;
    font-size: 15px;
  }
}
.contactform .contact_contents table {
  width: 100%;
  font-size: 18px;
  line-height: 1.6;
  margin-top: 40px;
  border-top: 1px solid #ccc;
  border-right: 1px solid #ccc;
}

@media screen and (max-width: 767px) {
  .contactform .contact_contents table {
    font-size: 15px;
  }
}
.contactform .contact_contents table th {
  width: 20%;
  padding: 12px;
  border-left: 1px solid #ccc;
  border-bottom: 1px solid #ccc;
  box-sizing: border-box;
  background: #f6f6f6;
  position: relative;
}

@media screen and (max-width: 767px) {
  .contactform .contact_contents table th {
    display: block;
    padding: 10px;
    width: 100%;
  }
}
.contactform .contact_contents table th span {
  font-size: 0.7em;
  color: red;
  position: absolute;
  top: 15px;
  right: 15px;
}

.contactform .contact_contents table td {
  width: 80%;
  padding: 12px;
  border-left: 1px solid #ccc;
  border-bottom: 1px solid #ccc;
  box-sizing: border-box;
}

@media screen and (max-width: 767px) {
  .contactform .contact_contents table td {
    display: block;
    padding: 10px;
    width: 100%;
  }
}
.contactform .contact_contents table td input {
  width: 100%;
  padding: 10px;
  box-sizing: border-box;
}

.contactform .contact_contents table td textarea {
  width: 100%;
  padding: 10px;
  height: 100px;
  box-sizing: border-box;
}

.contactform .buttons {
  width: 400px;
  margin: 60px auto 80px;
  display: flex;
  justify-content: space-between;
}

@media screen and (max-width: 767px) {
  .contactform .buttons {
    width: 100%;
    margin: 40px auto 50px;
  }
}
.contactform .buttons button {
  width: 49%;
  display: block;
  padding: 12px;
  box-sizing: border-box;
  border: 1px solid #CCC;
  border-radius: 8px;
  text-align: center;
  background: #FFF;
  cursor: pointer;
}

.contactform .buttons a.back {
  font-family: "Noto Sans JP", sans-serif;
  width: 49%;
  display: block;
  padding: 12px;
  box-sizing: border-box;
  border: 1px solid #CCC;
  border-radius: 8px;
  text-align: center;
  background: #FFF;
  cursor: pointer;
  font-size: 14px;
  color: #333;
  text-decoration: none;
}

.contactform .buttons button:hover {
  background: #CCC;
}

.contactform .form_note {
  margin-bottom: 60px;
  text-align: center;
}

.contactform .form-table {
  width: 820px;
  margin: 20px auto 0;
  display: flex;
  flex-wrap: wrap;
}

@media screen and (max-width: 767px) {
  .contactform .form-table {
    width: 100%;
    display: block;
  }
}
.contactform .form-table dt {
  width: 40%;
  border-bottom: 1px solid #CCC;
  padding: 20px 0;
}

@media screen and (max-width: 767px) {
  .contactform .form-table dt {
    width: 100%;
    border-bottom: 0px solid #CCC;
    padding: 10px 0 0;
  }
}
.contactform .form-table dd {
  width: 60%;
  border-bottom: 1px solid #CCC;
  padding: 20px 0;
  font-weight: 700;
}

@media screen and (max-width: 767px) {
  .contactform .form-table dd {
    width: 100%;
    line-height: 1.4;
    padding: 10px 0;
  }
}
.contactform .automore-contact {
  text-align: center;
  margin: 0 auto;
}

@media screen and (max-width: 767px) {
  .contactform .automore-contact {
    width: 90%;
  }
}
.contactform .automore-contact a {
  font-size: 16px;
  padding: 12px 40px;
  position: relative;
  border: 1px solid #1A462F;
  border-radius: 12px;
  display: inline-block;
  margin: 60px auto 0;
  text-decoration: none;
  color: #1A462F;
}

.contactform .automore-contact a:after {
  font-size: 0.8em;
  content: "〉";
  position: absolute;
  right: 20px;
  top: 50%;
  transform: translateY(-50%);
}

.contactform .automore-contact a:hover {
  background: #1A462F;
  color: #FFF;
}

.contactform .automowersform {
  margin-top: 50px;
  display: flex;
  flex-wrap: wrap;
}

.contactform .automowersform:nth-of-type(2) {
  margin-top: 10px;
}

.contactform .automowersform span.note {
  font-size: 0.8em;
}

@media screen and (max-width: 767px) {
  .contactform .automowersform span.note {
    line-height: 1.4;
  }
}
.contactform .automowersform dt {
  font-size: 16px;
  width: 25%;
  border-bottom: 1px solid #aaa;
  padding: 15px 5% 15px 0;
}

.contactform .automowersform dt.width {
  display: block;
  width: 100%;
  border-bottom: none;
}

@media screen and (max-width: 767px) {
  .contactform .automowersform dt {
    font-size: 14px;
    width: 100%;
    border-bottom: none;
    padding-bottom: 0;
    line-height: 1.6;
  }
}
.contactform .automowersform dd {
  width: 70%;
  padding: 15px 0;
  border-bottom: 1px solid #aaa;
}

@media screen and (max-width: 767px) {
  .contactform .automowersform dd {
    width: 100%;
    font-size: 14px;
  }
}
.contactform .automowersform dd input[type=text] {
  box-sizing: border-box;
  padding: 8px 15px;
  font-size: 16px;
  border: 1px solid #ccc;
  border-radius: 12px;
  width: 100%;
}

.contactform .automowersform dd input[type=text]::-moz-placeholder {
  color: #e1e1e1;
}

.contactform .automowersform dd input[type=text]::placeholder {
  color: #e1e1e1;
}

.contactform .automowersform dd input[type=text].zip1 {
  width: 20%;
}

@media screen and (max-width: 767px) {
  .contactform .automowersform dd input[type=text].zip1 {
    width: 60%;
    margin-bottom: 10px;
  }
}
.contactform .automowersform dd input[type=text].zip2 {
  width: 20%;
}

@media screen and (max-width: 767px) {
  .contactform .automowersform dd input[type=text].zip2 {
    width: 60%;
    margin-bottom: 10px;
  }
}
.contactform .automowersform dd input[type=text].add1 {
  width: 70%;
  margin-left: 0;
}

@media screen and (max-width: 767px) {
  .contactform .automowersform dd input[type=text].add1 {
    width: 100%;
  }
}
.contactform .automowersform dd input[type=text].add2 {
  width: 70%;
  margin-left: 0;
}

@media screen and (max-width: 767px) {
  .contactform .automowersform dd input[type=text].add2 {
    width: 100%;
  }
}
.contactform .automowersform dd textarea {
  box-sizing: border-box;
  padding: 8px 15px;
  font-size: 16px;
  line-height: 1.6;
  border: 1px solid #ccc;
  border-radius: 12px;
  width: 100%;
  margin-top: 10px;
}

.contactform .automowersform dd textarea::-moz-placeholder {
  color: #e1e1e1;
}

.contactform .automowersform dd textarea::placeholder {
  color: #e1e1e1;
}

.contactform .automowersform dd span:nth-of-type(2).mwform-radio-field {
  margin-left: 2em;
}

.contactform .automowersform dd.width {
  display: block;
  width: 100%;
}

.contactform .automowersform dd.width .space {
  margin: 10px 0;
}

.contactform .automowersform dd.width p {
  line-height: 1.75;
}

.contactform .automowersform dd.width p.right-red {
  text-align: left;
  color: red;
  margin-left: 2em;
}

.contactform .automowersform dd.width p.right {
  text-align: left;
  margin-left: 1.25em;
}

.contactform .automowersform dd.width em a {
  display: inline-block;
  padding: 6px;
  border: 1px solid #ccc;
  color: #333;
  font-size: 12px;
  margin-right: 0.5em;
  border-radius: 6px;
  text-decoration: none;
}

.contactform .automowersform dd.width em a:hover {
  opacity: 0.5;
}

.contactform .automowersform dd .images {
  margin-top: 0;
  margin-bottom: 10px;
}

.contactform .automowersform dd .mt {
  margin-top: 10px;
}

.contactform p.contact-note {
  margin-top: 15px;
  text-align: right;
}

.contactform dl.note {
  margin-top: 50px;
  display: flex;
  flex-wrap: wrap;
  line-height: 1.75;
}

.contactform dl.note dt {
  font-weight: 700;
  width: 22%;
}

.contactform dl.note dd {
  width: 78%;
}

.contactform p.note {
  font-weight: 700;
  margin-top: 40px;
}

.contactform ul.contact-list {
  margin-top: 15px;
}

.contactform ul.contact-list li {
  line-height: 1.75;
  margin-left: 2em;
  text-indent: -1em;
}

.contactform h2.auto-title {
  margin-top: 50px;
  font-size: 20px;
  font-weight: 700;
  padding-bottom: 10px;
  border-bottom: 1px solid #ccc;
}

@media screen and (max-width: 767px) {
  .contactform h2.auto-title {
    font-size: 16px;
    margin-top: 40px;
    letter-spacing: 0;
  }
}
.contactform h3.auto-subtitle {
  font-weight: 700;
  margin-top: 15px;
  text-align: left;
  font-size: 18px;
}

@media screen and (max-width: 767px) {
  .contactform h3.auto-subtitle {
    font-size: 15px;
  }
}
.contactform p.txt {
  margin-top: 20px;
}

@media screen and (max-width: 767px) {
  .contactform p.txt {
    font-size: 14px;
  }
}
.contactform ul.contact-txt {
  margin-top: 15px;
}

.contactform ul.contact-txt li {
  line-height: 1.75;
  margin-left: 2em;
  text-indent: -1em;
}

.contactform .consent {
  display: block;
  margin-top: 80px;
  margin-bottom: 60px;
  padding-top: 15px;
  border-top: 1px solid #DDD;
}

@media screen and (max-width: 767px) {
  .contactform .consent {
    margin-top: 60px;
    margin-bottom: 40px;
    padding-top: 15px;
    line-height: 1.6;
  }
}
.contactform .btnBlock {
  text-align: center;
}

.contactform .btnBlock .confirm, .contactform .btnBlock .back {
  box-sizing: border-box;
  padding: 8px 15px;
  font-size: 16px;
  border: 1px solid #ccc;
  border-radius: 12px;
  width: 240px;
  text-align: center;
  background: #FFF;
  display: inline-block;
  margin: 0 10px 60px;
  cursor: pointer;
}

.contactform .btnBlock .confirm:hover, .contactform .btnBlock .back:hover {
  background: #E8E8E8;
}

.contactform .thanks {
  margin-top: 80px;
}

.contactform .thanks p {
  font-size: 16px;
  line-height: 1.75;
  text-align: center;
}

.contactform .thanks p.text03 {
  margin-bottom: 1em;
}

.contactform .thanks p.text04 {
  margin-bottom: 2em;
}

.contactform .thanks .back-to a {
  display: block;
  width: 240px;
  padding: 12px 0;
  text-align: center;
  margin: 80px auto 0;
  color: #666;
  text-decoration: none;
  font-size: 16px;
  border: 1px solid #666;
  box-sizing: border-box;
  border-radius: 40px;
}

.contactform .thanks .back-to a:hover {
  background: #E8E8E8;
}

.contactform span.error {
  color: red;
}

.contactform .dl .dell {
  display: none;
}

.contactform .dl .confirm {
  margin-top: 60px;
}

.contactform span.red {
  color: red;
  margin-left: 1.5em;
  font-size: 14px;
}

.contactform p.red {
  color: red;
  margin-top: 1.5em;
  font-size: 13px;
}

.contactform .mw-wp-form_image {
  margin-top: 15px;
}

/*/////////////// 施工実績 //////////////////*/
.construction-example {
  font-family: "YakuHanJPs", "Noto Serif JP", serif;
}

.construction-example h1.exampl-title {
  background: #EAEDEA;
  font-size: 20px;
  padding: 16px 0;
  margin-top: 55px;
}

@media screen and (max-width: 767px) {
  .construction-example h1.exampl-title {
    box-sizing: border-box;
    margin-top: 30px;
    padding: 14px 5%;
    font-size: 16px;
    text-align: center;
  }
}
.construction-example h1.exampl-title span {
  font-family: "YakuHanJPs", "Noto Sans JP", sans-serif;
  font-weight: 700;
  margin-left: calc((100% - 1100px) / 2);
  margin-right: 0.5em;
}

@media screen and (max-width: 767px) {
  .construction-example h1.exampl-title span {
    margin-left: 0;
  }
}
.construction-example h2.page-title {
  margin-top: 60px;
  font-size: 30px;
  text-align: center;
}

@media screen and (max-width: 767px) {
  .construction-example h2.page-title {
    margin-top: 30px;
    font-size: 20px;
  }
}
.construction-example h3.cat-title {
  margin-top: 95px;
  text-align: center;
  font-size: 25px;
}

@media screen and (max-width: 767px) {
  .construction-example h3.cat-title {
    margin-top: 40px;
    font-size: 16px;
  }
}
.construction-example ul.greening-list {
  width: 1100px;
  margin: 60px auto 0;
  display: flex;
}

@media screen and (max-width: 767px) {
  .construction-example ul.greening-list {
    width: 90%;
    margin: 30px auto 0;
    flex-wrap: wrap;
  }
}
.construction-example ul.greening-list li {
  box-sizing: border-box;
  width: 33.3333%;
  border-right: 1px solid #707070;
  display: flex;
  align-items: center;
  height: 86px;
  background: url(../images/construction/construction-arrow.svg) center bottom 5px no-repeat;
}

@media screen and (max-width: 767px) {
  .construction-example ul.greening-list li {
    width: 50%;
    font-size: 13px;
    margin-bottom: 12px;
    height: 58px;
    background: url(../images/construction/construction-arrow.svg) center bottom/14px auto no-repeat;
  }
  .construction-example ul.greening-list li:nth-of-type(2n) {
    border-right: none;
  }
}
.construction-example ul.greening-list li.active {
  background: url(../images/construction/construction-arrow_on.svg) center bottom 5px no-repeat;
}

@media screen and (max-width: 767px) {
  .construction-example ul.greening-list li.active {
    background-position: center bottom;
  }
}
.construction-example ul.greening-list li:hover {
  background: url(../images/construction/construction-arrow_on.svg) center bottom 5px no-repeat;
}

@media screen and (max-width: 767px) {
  .construction-example ul.greening-list li:hover {
    background-position: center bottom;
    background-size: 14px auto;
  }
}
.construction-example ul.greening-list li:first-of-type {
  border-left: 1px solid #707070;
}

@media screen and (max-width: 767px) {
  .construction-example ul.greening-list li:first-of-type {
    border-left: none;
    background-size: 14px auto;
  }
}
.construction-example ul.greening-list li a {
  width: 100%;
  display: block;
  color: #707070;
  text-decoration: none;
  text-align: center;
}

.construction-example ul.greening-list li a:hover {
  color: #3CA759;
  font-weight: 700;
}

.construction-example ul.greening-list li.active a {
  color: #3CA759;
  font-weight: 700;
}

.construction-example ul.golf-list {
  width: 1100px;
  margin: 60px auto 0;
  display: flex;
}

@media screen and (max-width: 767px) {
  .construction-example ul.golf-list {
    width: 90%;
    margin: 30px auto 0;
    flex-wrap: wrap;
  }
}
.construction-example ul.golf-list li {
  box-sizing: border-box;
  width: 16.666666%;
  border-right: 1px solid #707070;
  display: flex;
  align-items: center;
  height: 86px;
  background: url(../images/construction/construction-arrow.svg) center bottom 5px no-repeat;
}

@media screen and (max-width: 767px) {
  .construction-example ul.golf-list li {
    width: 50%;
    font-size: 13px;
    margin-bottom: 12px;
    height: 58px;
    background: url(../images/construction/construction-arrow.svg) center bottom/14px auto no-repeat;
  }
  .construction-example ul.golf-list li:nth-of-type(2n) {
    border-right: none;
  }
}
.construction-example ul.golf-list li:first-of-type {
  border-left: 1px solid #707070;
}

@media screen and (max-width: 767px) {
  .construction-example ul.golf-list li:first-of-type {
    border-left: none;
  }
}
.construction-example ul.golf-list li.active {
  background: url(../images/construction/construction-arrow_on.svg) center bottom 5px no-repeat;
}

@media screen and (max-width: 767px) {
  .construction-example ul.golf-list li.active {
    background-position: center bottom;
    background-size: 14px auto;
  }
}
.construction-example ul.golf-list li:hover {
  background: url(../images/construction/construction-arrow_on.svg) center bottom 5px no-repeat;
}

@media screen and (max-width: 767px) {
  .construction-example ul.golf-list li:hover {
    background-position: center bottom;
    background-size: 14px auto;
  }
}
.construction-example ul.golf-list li a {
  width: 100%;
  display: block;
  color: #707070;
  text-decoration: none;
  text-align: center;
  line-height: 1.4;
}

.construction-example ul.golf-list li a:hover {
  color: #3CA759;
  font-weight: 700;
}

.construction-example ul.golf-list li.active a {
  color: #3CA759;
  font-weight: 700;
}

.construction-example ul.construction-imglist {
  margin: 95px auto 0;
  width: 1100px;
  display: flex;
  flex-wrap: wrap;
}

@media screen and (max-width: 767px) {
  .construction-example ul.construction-imglist {
    width: 90%;
    margin: 40px auto 0;
    display: block;
  }
}
.construction-example ul.construction-imglist li.img-list {
  width: 330px;
  margin-bottom: 50px;
  margin-right: 55px;
}

@media screen and (max-width: 767px) {
  .construction-example ul.construction-imglist li.img-list {
    width: 100%;
    margin-bottom: 40px;
    margin-right: 0;
  }
}
.construction-example ul.construction-imglist li.img-list:nth-of-type(3n) {
  margin-right: 0;
}

.construction-example ul.construction-imglist li.img-list a {
  color: #707070;
  text-decoration: none;
}

.construction-example ul.construction-imglist li.img-list a:hover {
  opacity: 0.6;
  color: #3CA759;
}

.construction-example ul.construction-imglist li.img-list a:hover p.date span {
  border: 1px solid #3CA759;
}

.construction-example ul.construction-imglist li.img-list p.date {
  font-size: 13px;
  margin-top: 12px;
}

@media screen and (max-width: 767px) {
  .construction-example ul.construction-imglist li.img-list p.date {
    font-size: 12px;
  }
}
.construction-example ul.construction-imglist li.img-list p.date span {
  padding: 6px;
  display: inline-block;
  border: 1px solid #707070;
  font-size: 11px;
  margin-right: 1em;
}

@media screen and (max-width: 767px) {
  .construction-example ul.construction-imglist li.img-list p.date span {
    font-size: 10px;
  }
}
.construction-example ul.construction-imglist li.img-list h4 {
  font-size: 16px;
  margin-top: 10px;
  line-height: 1.5;
}

@media screen and (max-width: 767px) {
  .construction-example ul.construction-imglist li.img-list h4 {
    font-size: 15px;
  }
}
.construction-example ul.construction-imglist li.list {
  width: 76%;
  margin: 0 12%;
  display: flex;
  padding: 10px;
  border-bottom: 1px solid #707070;
}

@media screen and (max-width: 767px) {
  .construction-example ul.construction-imglist li.list {
    width: 100%;
    margin: 0;
    box-sizing: border-box;
  }
}
.construction-example ul.construction-imglist li.list a {
  text-decoration: none;
  color: #707070;
}

.construction-example ul.construction-imglist li.list a:hover {
  color: #3CA759;
}

.construction-example ul.construction-imglist li.list a p {
  display: inline-block;
  margin-right: 1.5em;
}

@media screen and (max-width: 767px) {
  .construction-example ul.construction-imglist li.list a p {
    margin-right: 1em;
  }
}
.construction-example ul.construction-imglist li.list a p span {
  padding: 6px;
  display: inline-block;
  border: 1px solid #707070;
  font-size: 11px;
  margin-right: 1.5em;
}

@media screen and (max-width: 767px) {
  .construction-example ul.construction-imglist li.list a p span {
    font-size: 10px;
    margin-right: 1em;
  }
}
.construction-example ul.construction-imglist li.list a h4 {
  display: inline-block;
  font-size: 16px;
  margin-top: 10px;
  line-height: 1.5;
}

@media screen and (max-width: 767px) {
  .construction-example ul.construction-imglist li.list a h4 {
    font-size: 15px;
  }
}
.construction-example.single h2.page-title:after {
  content: "";
  display: block;
  width: 90px;
  margin: 25px auto 0;
  height: 1px;
  background: #707070;
}

@media screen and (max-width: 767px) {
  .construction-example.single h2.page-title:after {
    width: 64px;
    margin-top: 20px;
  }
}
.construction-example .construction-detail {
  margin: 100px auto 0;
  width: 1100px;
  display: flex;
  justify-content: space-between;
}

@media screen and (max-width: 767px) {
  .construction-example .construction-detail {
    margin: 60px auto 0;
    width: 90%;
    display: block;
  }
}
.construction-example .construction-detail .detail-left {
  width: 620px;
}

@media screen and (max-width: 767px) {
  .construction-example .construction-detail .detail-left {
    width: 100%;
  }
}
.construction-example .construction-detail .detail-left p.caption {
  font-size: 15px;
  margin-top: 12px;
}

@media screen and (max-width: 767px) {
  .construction-example .construction-detail .detail-left p.caption {
    font-size: 13px;
  }
}
.construction-example .construction-detail .detail-left .imgwrap {
  height: 480px;
  overflow: hidden;
  width: 100%;
}

@media screen and (max-width: 767px) {
  .construction-example .construction-detail .detail-left .imgwrap {
    height: auto;
  }
}
.construction-example .construction-detail .detail-left .imgwrap img {
  width: 100%;
  height: 480px !important;
  -o-object-fit: cover;
  object-fit: cover;
}

@media screen and (max-width: 767px) {
  .construction-example .construction-detail .detail-left .imgwrap img {
    height: auto !important;
  }
}
.construction-example .construction-detail .detail-left ul.subimg {
  margin-top: 40px;
  display: flex;
  flex-wrap: wrap;
}

@media screen and (max-width: 767px) {
  .construction-example .construction-detail .detail-left ul.subimg {
    margin-top: 18px;
  }
}
.construction-example .construction-detail .detail-left ul.subimg li {
  width: 23.5%;
  margin-right: 2%;
  margin-bottom: 10px;
  background: #fff;
  cursor: pointer;
}

@media screen and (max-width: 767px) {
  .construction-example .construction-detail .detail-left ul.subimg li {
    width: 30.6%;
    margin-right: 4%;
    margin-bottom: 15px;
  }
}
.construction-example .construction-detail .detail-left ul.subimg li.current img {
  opacity: 1;
}

.construction-example .construction-detail .detail-left ul.subimg li img {
  opacity: 0.5;
}

.construction-example .construction-detail .detail-left ul.subimg li:nth-of-type(4n) {
  margin-right: 0;
}

@media screen and (max-width: 767px) {
  .construction-example .construction-detail .detail-left ul.subimg li:nth-of-type(4n) {
    margin-right: 4%;
  }
}
@media screen and (max-width: 767px) {
  .construction-example .construction-detail .detail-left ul.subimg li:nth-of-type(3n) {
    margin-right: 0;
  }
}
.construction-example .construction-detail .detail-left ul.subimg li p {
  font-size: 14px;
  margin-top: 10px;
}

@media screen and (max-width: 767px) {
  .construction-example .construction-detail .detail-left ul.subimg li p {
    font-size: 13px;
    line-height: 1.4;
  }
}
.construction-example .construction-detail .detail-right {
  width: 416px;
}

@media screen and (max-width: 767px) {
  .construction-example .construction-detail .detail-right {
    width: 100%;
    margin-top: 30px;
  }
}
.construction-example .construction-detail .detail-right h3 {
  font-size: 24px;
  line-height: 1.5;
}

@media screen and (max-width: 767px) {
  .construction-example .construction-detail .detail-right h3 {
    font-size: 18px;
  }
}
.construction-example .construction-detail .detail-right h3 p {
  font-size: 0.9em;
}

.construction-example .construction-detail .detail-right ul.list-txt {
  margin-top: 42px;
}

@media screen and (max-width: 767px) {
  .construction-example .construction-detail .detail-right ul.list-txt {
    margin-top: 20px;
  }
}
.construction-example .construction-detail .detail-right ul.list-txt li {
  padding: 15px 0;
  border-bottom: 1px solid #707070;
  font-size: 16px;
  display: flex;
  justify-content: space-between;
}

@media screen and (max-width: 767px) {
  .construction-example .construction-detail .detail-right ul.list-txt li {
    font-size: 14px;
  }
}
.construction-example .construction-detail .detail-right ul.list-txt li p {
  width: 25%;
}

.construction-example .construction-detail .detail-right ul.list-txt li span {
  display: inline-block;
  width: 75%;
  text-align: right;
  font-size: 18px;
  line-height: 1.5;
}

@media screen and (max-width: 767px) {
  .construction-example .construction-detail .detail-right ul.list-txt li span {
    font-size: 15px;
  }
}
.construction-example .construction-detail .detail-right p.detail-txt {
  font-size: 16px;
  line-height: 2;
  margin-top: 15px;
  text-align: justify;
  text-justify: inter-ideograph;
}

@media screen and (max-width: 767px) {
  .construction-example .construction-detail .detail-right p.detail-txt {
    font-size: 14px;
    line-height: 1.6;
  }
}
.construction-example .listchange {
  width: 90%;
  margin: 60px auto 0;
  text-align: center;
}

.construction-example .listchange .listback {
  display: inline-block;
  padding: 0 20px;
}

@media screen and (max-width: 767px) {
  .construction-example .listchange .listback {
    padding: 0;
    display: block;
    margin-bottom: 15px;
  }
}
.construction-example .listchange .listback a {
  color: #707070;
  text-decoration: none;
}

.construction-example .listchange .listback a:hover {
  text-decoration: underline;
}

.construction-example .listchange .listback a span {
  font-size: 0.9em;
  padding-left: 0.4em;
}

.construction-example .workflow {
  margin: 60px auto 0;
  width: 1100px;
}

.construction-example .workflow h2 {
  text-align: center;
  font-size: 28px;
  /*display: flex;
  align-items: center;*/
  color: #666;
  font-weight: 500;
  margin-bottom: 80px;
  /* &::before {
        content: "";
        height: 20px;
        flex-grow: 1;
        background-color: #1A462F;
        margin-right: .5em;
    }
    &::after {
        content: "";
        height: 20px;
        flex-grow: 1;
        background-color: #1A462F;
        margin-left: .5em;
    }*/
}

.construction-example .workflow h2 span {
  display: block;
  font-size: 20px;
  display: block;
  color: #3CA759;
}

.construction-example .workflow h2 span:after {
  display: block;
  width: 80px;
  content: "";
  height: 2px;
  background: #3CA759;
  margin: 15px auto 25px;
}

.construction-example .workflow ul {
  margin-top: 40px;
  display: flex;
}

.construction-example .workflow ul li {
  width: 384px;
  position: relative;
  overflow: hidden;
  box-sizing: border-box;
  margin-right: 63px;
}

.construction-example .workflow ul li:nth-of-type(3) {
  margin-right: 0;
}

.construction-example .workflow ul li a {
  text-decoration: none;
  color: #272727;
}

.construction-example .workflow ul li a p {
  margin-top: 15px;
  font-size: 15px;
  line-height: 1.7;
}

.construction-example .workflow ul li span {
  font-size: 18px;
}

.construction-example .workflow ul li .step-title {
  font-size: 24px;
  margin-top: 15px;
}

.construction-example .workflow ul li img {
  -o-object-fit: cover;
  object-fit: cover;
}

.construction-example .workflow ul li img:hover {
  opacity: 0.6;
}

.construction-example .workflow ul.step1 .title {
  width: 206px;
  background: url(../images/construction/step01-bk.svg) no-repeat;
  padding-top: 90px;
  text-align: center;
  height: 300px;
}

.construction-example .workflow ul.step2 .title {
  width: 206px;
  background: url(../images/construction/step02-bk.svg) no-repeat;
  padding-top: 90px;
  text-align: center;
  height: 300px;
}

.construction-example .workflow ul.step3 .title {
  width: 206px;
  background: url(../images/construction/step03-bk.svg) no-repeat;
  padding-top: 90px;
  text-align: center;
  height: 300px;
}

/*/////////////// FAQ //////////////////*/
.faq .faqBlock h2 {
  font-size: 18px;
  background: #3CA759;
  padding: 15px 0;
  text-align: center;
  color: #FFF;
  margin-top: 80px;
}

@media screen and (max-width: 767px) {
  .faq .faqBlock h2 {
    padding: 13px 15px;
    line-height: 1.4;
  }
}
.faq .faqBlock .list {
  margin-top: 60px;
  border-top: 1px solid #3CA759;
}

.faq .faqBlock .list dt {
  display: block;
  padding: 25px 0;
  position: relative;
  cursor: pointer;
  border-bottom: 1px solid #3CA759;
}

@media screen and (max-width: 767px) {
  .faq .faqBlock .list dt {
    padding: 20px 42px 20px 42px;
    line-height: 1.4;
    position: relative;
  }
}
.faq .faqBlock .list dt.none {
  border-bottom: 1px solid #FFF;
}

.faq .faqBlock .list dt:before {
  content: "Q";
  color: #3CA759;
  width: 42px;
  text-align: center;
  font-size: 20px;
  display: inline-block;
}

@media screen and (max-width: 767px) {
  .faq .faqBlock .list dt:before {
    position: absolute;
    top: 20px;
    left: 3px;
  }
}
.faq .faqBlock .list dt .op_plus {
  display: block;
  position: absolute;
  width: 22px;
  height: 22px;
  right: 20px;
  top: 50%;
  transform: translateY(-50%);
}

.faq .faqBlock .list dt .op_plus:before {
  display: block;
  content: "";
  background-color: #3CA759;
  position: absolute;
  width: 22px;
  height: 2px;
  top: 10px;
  left: 0;
}

.faq .faqBlock .list dt .op_plus:after {
  display: block;
  content: "";
  background-color: #3CA759;
  position: absolute;
  width: 2px;
  height: 22px;
  top: 0;
  left: 10px;
}

.faq .faqBlock .list dt.none .op_plus {
  transform: rotate(45deg);
  top: 36%;
}

.faq .faqBlock .list dd {
  display: none;
  padding: 10px 0 25px;
  border-bottom: 1px solid #3CA759;
  line-height: 1.6;
}

.faq .faqBlock .list dd:before {
  content: "A";
  color: #707070;
  width: 42px;
  text-align: center;
  font-size: 20px;
  display: inline-block;
}

.faq .faqBlock .list dd span {
  margin-left: 42px;
}

/* FAQ END */
/*/////////////// Group //////////////////*/
.group {
  font-family: "YakuHanJPs", "Noto Serif JP", serif;
}

.group a {
  color: #3F4E4A;
  text-decoration: none;
}

.group .mainImg {
  height: 500px;
  background: url(../images/group/group-mainimg.jpg) center center/cover no-repeat;
  position: relative;
  margin-top: 80px;
}

@media screen and (max-width: 767px) {
  .group .mainImg {
    height: 220px;
    margin-top: 60px;
  }
}
.group .mainImg .img-title {
  font-size: 20px;
  letter-spacing: 0.2em;
  background: #008e25;
  background: linear-gradient(90deg, #008e25 0%, rgba(0, 142, 37, 0) 95%);
  width: 50%;
  min-width: 450px;
  color: #FFF;
  font-weight: 500;
  box-sizing: border-box;
  position: absolute;
  bottom: 60px;
  left: 0;
  padding-top: 15px;
  padding-left: 100px;
  padding-bottom: 15px;
  line-height: 1.8;
}

.group .groupBlock {
  padding-top: 80px;
}

@media screen and (max-width: 767px) {
  .group .groupBlock {
    padding-top: 60px;
  }
}
.group .groupBlock h2 {
  font-size: 30px;
  text-align: center;
}

@media screen and (max-width: 767px) {
  .group .groupBlock h2 {
    font-size: 20px;
    line-height: 1.6;
  }
}
.group .group-glaf {
  box-sizing: border-box;
  width: 524px;
  height: 524px;
  position: relative;
  border-radius: 262px;
  border: 4px solid #007731;
  margin: 170px auto 0;
}

@media screen and (max-width: 767px) {
  .group .group-glaf {
    width: 270px;
    height: 270px;
    border: 3px solid #007731;
    margin: 100px auto 0;
  }
}
.group .group-glaf .main-office {
  box-sizing: border-box;
  width: 285px;
  height: 285px;
  background: url(../images/group/group-yahagi.png) center center/100% auto no-repeat;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-49%, -50%);
  line-height: 1.4;
  padding-top: 150px;
  text-align: center;
  font-size: 24px;
}

@media screen and (max-width: 767px) {
  .group .group-glaf .main-office {
    width: 140px;
    height: 140px;
    font-size: 16px;
    padding-top: 62px;
    letter-spacing: 0;
  }
}
.group .group-glaf .main-office span {
  margin-right: 20px;
}

@media screen and (max-width: 767px) {
  .group .group-glaf .main-office span {
    margin-right: 4px;
    display: block;
  }
}
.group .group-glaf .main-office:hover {
  opacity: 0.7;
}

.group .group-glaf .link-bt {
  width: 168px;
  height: 168px;
  box-sizing: border-box;
  border: 10px solid #C8E2C2;
  border-radius: 84px;
  position: absolute;
  padding-top: 50px;
  font-size: 19px;
  line-height: 1.4;
  text-align: center;
  background-color: #F4F9F4;
  box-shadow: 0 0 8px 3px #def1de inset;
}

@media screen and (max-width: 767px) {
  .group .group-glaf .link-bt {
    width: 110px;
    height: 110px;
    padding-top: 27px;
    font-size: 13px;
    letter-spacing: 0;
  }
}
.group .group-glaf .link-bt:hover {
  background-color: #007731;
  box-shadow: 0 0 0 0 #EDF6ED inset;
  color: #FFF;
}

.group .group-glaf .link-bt.ryokka {
  top: -84px;
  left: 50%;
  transform: translate(-50%);
}

@media screen and (max-width: 767px) {
  .group .group-glaf .link-bt.ryokka {
    top: -60px;
  }
}
.group .group-glaf .link-bt.jisyo {
  top: 16px;
  right: -28px;
}

@media screen and (max-width: 767px) {
  .group .group-glaf .link-bt.jisyo {
    top: -5px;
    right: -28px;
  }
}
.group .group-glaf .link-bt.blandlife {
  bottom: 120px;
  right: -82px;
  letter-spacing: 0;
}

@media screen and (max-width: 767px) {
  .group .group-glaf .link-bt.blandlife {
    bottom: 49px;
    right: -46px;
  }
}
.group .group-glaf .link-bt.blandlife span {
  letter-spacing: -0.08em;
}

@media screen and (max-width: 767px) {
  .group .group-glaf .link-bt.blandlife span {
    font-size: 0.9em;
  }
}
.group .group-glaf .link-bt.techno {
  left: 56%;
  bottom: -55px;
  letter-spacing: 0;
}

@media screen and (max-width: 767px) {
  .group .group-glaf .link-bt.techno {
    bottom: -50px;
    left: 52%;
  }
  .group .group-glaf .link-bt.techno span {
    letter-spacing: -0.08em;
  }
}
.group .group-glaf .link-bt.road {
  bottom: -55px;
  left: 59px;
}

@media screen and (max-width: 767px) {
  .group .group-glaf .link-bt.road {
    bottom: -50px;
    left: 7%;
  }
}
.group .group-glaf .link-bt.style-link {
  bottom: 120px;
  left: -79px;
  letter-spacing: 0;
}

@media screen and (max-width: 767px) {
  .group .group-glaf .link-bt.style-link {
    bottom: 47px;
    left: -46px;
  }
}
.group .group-glaf .link-bt.takamori {
  left: -32px;
  top: 8px;
}

@media screen and (max-width: 767px) {
  .group .group-glaf .link-bt.takamori {
    top: -5px;
    left: -28px;
  }
}
.group .group-txt {
  width: 900px;
  font-size: 16px;
  line-height: 2;
  margin: 100px auto 0;
  text-align: justify;
  text-justify: inter-ideograph;
}

@media screen and (max-width: 767px) {
  .group .group-txt {
    width: 90%;
    margin: 80px auto 0;
    font-size: 15px;
    line-height: 1.8;
  }
}
.group .company-group {
  background: #EAEDEA;
  padding: 40px 50px;
  width: 1000px;
  margin: 60px auto 0;
}

@media screen and (max-width: 767px) {
  .group .company-group {
    padding: 30px;
    width: 100%;
    margin: 40px auto 0;
    box-sizing: border-box;
  }
}
.group .company-group dl {
  background: #FFF;
  padding: 25px 20px;
  margin-bottom: 15px;
  display: flex;
}

@media screen and (max-width: 767px) {
  .group .company-group dl {
    padding: 18px;
    display: block;
  }
}
.group .company-group dl:last-of-type {
  margin-bottom: 0;
}

.group .company-group dl dt {
  padding: 10px 0;
  border-right: 1px solid #3F4E4A;
  font-size: 16px;
  line-height: 1;
  width: 262px;
  display: flex;
  align-items: center;
}

@media screen and (max-width: 767px) {
  .group .company-group dl dt {
    display: block;
    width: 100%;
    font-size: 15px;
    border-bottom: 1px solid #3F4E4A;
    border-right: none;
    padding: 0 0 10px;
  }
}
.group .company-group dl dt a {
  color: #3F4E4A;
  text-decoration: none;
  font-weight: 500;
}

.group .company-group dl dt a:hover {
  color: #3CA759;
  text-decoration: underline;
}

.group .company-group dl dd {
  font-size: 16px;
  line-height: 1.8;
  display: flex;
  align-items: center;
  padding-left: 25px;
}

@media screen and (max-width: 767px) {
  .group .company-group dl dd {
    font-size: 15px;
    display: block;
    padding-left: 0;
    padding-top: 10px;
    line-height: 1.7;
    letter-spacing: 0;
  }
}
.group .company-btn a {
  font-size: 16px;
  padding: 15px 0;
  text-align: center;
  text-decoration: none;
  color: #3F4E4A;
  width: 300px;
  border: 5px solid #EAEDEA;
  border-radius: 24px;
  margin: 80px auto 0;
  display: block;
}

@media screen and (max-width: 767px) {
  .group .company-btn a {
    width: 80%;
    margin: 40px auto 0;
    border: 4px solid #EAEDEA;
  }
}
.group .company-btn a:hover {
  background: #EAEDEA;
}

/*/////////////// NEWS //////////////////*/
.news {
  font-family: "YakuHanJPs", "Noto Serif JP", serif;
}

.news p.news-entitle {
  font-family: "Noto Sans JP", sans-serif;
  text-align: center;
  font-size: 35px;
  margin-top: 70px;
  font-weight: 700;
}

@media screen and (max-width: 767px) {
  .news p.news-entitle {
    font-size: 24px;
    margin-top: 60px;
  }
}
.news p.news-entitle span:after {
  content: "";
  height: 1px;
  display: block;
  background: #707070;
  margin: 15px auto 0;
  width: 18px;
}

.news h1.news-title {
  font-family: "YakuHanJPs", "Noto Serif JP", serif;
  text-align: center;
  font-size: 24px;
  margin-top: 30px;
}

@media screen and (max-width: 767px) {
  .news h1.news-title {
    font-size: 16px;
    margin-top: 25px;
  }
}
.news h2 {
  font-family: "YakuHanJPs", "Noto Serif JP", serif;
  font-size: 20px;
  text-align: center;
  margin-top: 30px;
}

.news .category {
  width: 900px;
  margin: 60px auto 0;
  display: flex;
  box-sizing: border-box;
}

@media screen and (max-width: 767px) {
  .news .category {
    width: 100%;
    margin: 40px auto 0;
    flex-wrap: wrap;
  }
}
.news .category li {
  width: 20%;
  font-family: "YakuHanJPs", "Noto Serif JP", serif;
}

.news .category li:first-of-type {
  border-left: 1px solid #707070;
}

@media screen and (max-width: 767px) {
  .news .category li {
    margin-bottom: 15px;
    width: 33%;
  }
  .news .category li:nth-of-type(4) {
    border-left: 1px solid #707070;
  }
}
.news .category li a {
  font-size: 16px;
  display: block;
  text-align: center;
  width: 100%;
  border-right: 1px solid #707070;
  padding: 20px 0 40px;
  background: url(../images/construction/construction-arrow.svg) center bottom 5px no-repeat;
  color: #707070;
  text-decoration: none;
}

@media screen and (max-width: 767px) {
  .news .category li a {
    height: 70px;
    width: 100%;
    font-size: 14px;
    box-sizing: border-box;
    padding: 0 6px 32px;
  }
}
.news .category li a:hover {
  color: #3CA759;
  background: url(../images/construction/construction-arrow_on.svg) center bottom 5px no-repeat;
}

.news .news-list {
  font-family: "YakuHanJPs", "Noto Serif JP", serif;
  width: 900px;
  margin: 70px auto 0;
}

@media screen and (max-width: 767px) {
  .news .news-list {
    width: 100%;
    margin: 50px auto 0;
  }
}
.news .news-list dl {
  display: flex;
  flex-wrap: wrap;
}

@media screen and (max-width: 767px) {
  .news .news-list dl {
    display: block;
  }
}
.news .news-list dl dt {
  padding: 12px 0;
  display: flex;
  justify-content: start;
  align-items: center;
  width: 350px;
  border-bottom: 1px solid #707070;
}

@media screen and (max-width: 767px) {
  .news .news-list dl dt {
    font-size: 15px;
    width: 100%;
    border-bottom: none;
  }
}
.news .news-list dl dt p.date {
  font-size: 16px;
  margin-right: 20px;
}

@media screen and (max-width: 767px) {
  .news .news-list dl dt p.date {
    font-size: 14px;
    margin-right: 20px;
  }
}
.news .news-list dl dt span {
  display: inline-block;
  width: 100px;
  padding: 6px 0;
  text-align: center;
  font-size: 13px;
  color: #FFF;
  margin-right: 5px;
}

@media screen and (max-width: 767px) {
  .news .news-list dl dt span {
    width: 100px;
    font-size: 12px;
  }
}
.news .news-list dl dt span.info {
  background: #51939a;
}

.news .news-list dl dt span.ryokka {
  background: #7ca353;
}

.news .news-list dl dt span.event {
  background: #8c8b8b;
}

.news .news-list dl dt span.golf {
  background: #19805D;
}

.news .news-list dl dt span.media {
  background: #d39c6b;
}

.news .news-list dl dt span.sdgs-activities {
  background: #9c6b9c;
}

.news .news-list dl dd {
  border-bottom: 1px solid #707070;
  width: 550px;
  display: flex;
  align-items: center;
}

@media screen and (max-width: 767px) {
  .news .news-list dl dd {
    width: 100%;
    padding-bottom: 12px;
  }
}
.news .news-list dl dd a {
  color: #707070;
  text-decoration: none;
  line-height: 1.5;
}

.news .news-list dl dd a:hover {
  text-decoration: underline;
}

.news .wp-pagenavi {
  margin: 70px auto 0;
  text-align: center;
}

.news .wp-pagenavi span {
  display: inline-block;
  padding: 8px;
}

.news .wp-pagenavi .pages {
  font-size: 0.7em;
  display: none;
}

.news .wp-pagenavi span.current {
  background: #3CA759;
  border: 1px solid #3CA759;
  color: #FFF;
  margin: 0 5px;
}

.news .wp-pagenavi .page {
  font-size: 15px;
  padding: 5px 8px;
  background: #FFF;
  border: 1px solid #333;
  color: #333;
  margin: 0 5px;
  line-height: 1;
  text-decoration: none;
  box-sizing: border-box;
  width: 32px;
}

.news .wp-pagenavi .previouspostslink {
  font-size: 0.8em;
  margin-right: 2em;
  text-decoration: none;
}

.news .wp-pagenavi .nextpostslink {
  margin-left: 2em;
  font-size: 0.8em;
  text-decoration: none;
}

.news .wp-pagenavi .last {
  font-size: 0.8em;
  text-decoration: none;
  margin-left: 0.5em;
}

.news .wp-pagenavi .first {
  margin-left: 2em;
  font-size: 0.8em;
  text-decoration: none;
  margin-right: 0.5em;
}

.news .news-detail {
  width: 800px;
  margin: 70px auto 0;
  padding-bottom: 60px;
}

@media screen and (max-width: 767px) {
  .news .news-detail {
    width: 100%;
    margin: 40px auto 0;
  }
}
.news .news-detail .detail-date {
  display: flex;
  align-items: center;
}

.news .news-detail .detail-date p {
  font-family: "YakuHanJPs", "Noto Sans JP", sans-serif;
  font-size: 18px;
  width: 124px;
}

@media screen and (max-width: 767px) {
  .news .news-detail .detail-date p {
    width: auto;
    font-size: 15px;
    margin-right: 2em;
  }
}
.news .news-detail .detail-date span {
  display: block;
  padding: 6px 0;
  text-align: center;
  width: 120px;
  font-size: 13px;
  margin-right: 10px;
  color: #FFF;
}

.news .news-detail .detail-date span a {
  color: #FFF;
  text-decoration: none;
}

.news .news-detail .detail-date span.info {
  background: #51939a;
}

.news .news-detail .detail-date span.ryokka {
  background: #7ca353;
}

.news .news-detail .detail-date span.event {
  background: #8c8b8b;
}

.news .news-detail .detail-date span.golf {
  background: #19805D;
}

.news .news-detail .detail-date span.media {
  background: #d39c6b;
}

.news .news-detail .detail-date span.sdgs-activities {
  background: #9c6b9c;
  color: #FFF;
}

.news .news-detail h2 {
  padding: 22px 0;
  font-size: 24px;
  text-align: center;
  border-top: 1px solid #707070;
  border-bottom: 1px solid #707070;
  margin-top: 15px;
  line-height: 1.4;
}

@media screen and (max-width: 767px) {
  .news .news-detail h2 {
    padding: 16px 0;
    font-size: 20px;
  }
}
.news .news-detail p.entry {
  font-size: 16px;
  line-height: 2.5;
  margin-top: 35px;
}

@media screen and (max-width: 767px) {
  .news .news-detail p.entry {
    font-size: 15px;
    line-height: 2;
  }
}
.news .news-detail .entry {
  font-size: 16px;
  line-height: 2.5;
  margin-top: 35px;
}

@media screen and (max-width: 767px) {
  .news .news-detail .entry {
    font-size: 15px;
    line-height: 2;
  }
}
.news .news-detail .firstimg {
  display: block;
  margin: 40px 0 1em;
}

.news .news-detail .post-navi {
  width: 100%;
  font-size: 16px;
  display: flex;
  margin-top: 70px;
  align-items: center;
}

@media screen and (max-width: 767px) {
  .news .news-detail .post-navi {
    margin-top: 40px;
  }
}
.news .news-detail .post-navi a {
  color: #707070;
  text-decoration: none;
}

.news .news-detail .post-navi a:hover {
  color: #6FB226;
}

.news .news-detail .post-navi p {
  width: 33.3333%;
  display: flex;
  align-items: center;
}

.news .news-detail .post-navi p span {
  display: inline-block;
  margin-top: 10px;
}

.news .news-detail .post-navi p img {
  display: block;
}

.news .news-detail .post-navi .listlink {
  width: 33.3333%;
  text-align: center;
}

@media screen and (max-width: 767px) {
  .news .news-detail .post-navi .listlink {
    font-size: 14px;
    letter-spacing: 0;
  }
}
.news .news-detail .post-navi p.prev {
  text-align: left;
}

@media screen and (max-width: 767px) {
  .news .news-detail .post-navi p.prev img {
    width: 16px;
    height: auto;
  }
}
.news .news-detail .post-navi p.next {
  text-align: right;
  justify-content: flex-end;
}

@media screen and (max-width: 767px) {
  .news .news-detail .post-navi p.next img {
    width: 16px;
    height: auto;
  }
}
.news .aligncenter {
  display: block;
  text-align: center;
  margin: 0 auto;
}

.news.sdgs .news-detail .entry {
  letter-spacing: 0.05em;
}

.news.sdgs .news-detail .entry span {
  font-size: 0.6em;
}

/* INFORMATION END */
/*/////////////// privacy-policy //////////////////*/
.policy {
  font-family: "YakuHanJPs", "Noto Serif JP", serif;
  margin: 130px auto 0;
  padding-bottom: 140px;
}

@media screen and (max-width: 767px) {
  .policy {
    margin-top: 60px;
    padding-bottom: 50px;
  }
}
.policy .in_wrap_p {
  width: 820px;
  margin: 0 auto;
}

@media screen and (max-width: 767px) {
  .policy .in_wrap_p {
    width: 90%;
  }
}
.policy p.undertxt {
  font-size: 16px;
  line-height: 2.5;
  margin: 50px 0 130px;
  text-align: center;
}

@media screen and (max-width: 767px) {
  .policy p.undertxt {
    font-size: 14px;
    line-height: 1.8;
    margin: 40px 5% 70px;
  }
}
.policy h3 {
  font-size: 18px;
  margin-top: 100px;
}

@media screen and (max-width: 767px) {
  .policy h3 {
    font-size: 16px;
    margin-top: 60px;
    margin-left: 1.25em;
    text-indent: -1.25em;
    line-height: 1.5;
  }
}
.policy p.maintxt {
  font-size: 16px;
  line-height: 2.5;
  text-indent: 1em;
  margin-top: 15px;
}

@media screen and (max-width: 767px) {
  .policy p.maintxt {
    font-size: 14px;
    line-height: 1.8;
  }
}
.policy .dot-border {
  width: 100%;
  margin: 25px 0 0;
  border-top: 1px dashed #707070;
}

@media screen and (max-width: 767px) {
  .policy .dot-border {
    margin-top: 20px;
  }
}
.policy ul.list {
  margin-top: 50px;
  font-size: 16px;
}

@media screen and (max-width: 767px) {
  .policy ul.list {
    margin-top: 30px;
    font-size: 14px;
  }
}
.policy ul.list li {
  font-size: 16px;
  line-height: 2.5;
  text-indent: -1em;
  margin-left: 1em;
}

@media screen and (max-width: 767px) {
  .policy ul.list li {
    font-size: 14px;
    line-height: 1.8;
  }
}
.policy ul.no-list li {
  font-size: 16px;
  line-height: 2.5;
  text-indent: -1.5em;
  margin-left: 1.5em;
}

@media screen and (max-width: 767px) {
  .policy ul.no-list li {
    font-size: 14px;
    line-height: 1.8;
  }
}
.policy p.righttxt {
  font-size: 16px;
  text-align: right;
  margin-top: 45px;
}

@media screen and (max-width: 767px) {
  .policy p.righttxt {
    font-size: 14px;
    margin-top: 30px;
  }
}
.policy p.addblock {
  font-size: 14px;
  line-height: 2.5;
  margin-top: 100px;
}

@media screen and (max-width: 767px) {
  .policy p.addblock {
    font-size: 13px;
    line-height: 1.8;
    margin-top: 60px;
  }
}
.policy p.addblock span {
  font-size: 1.1em;
  font-weight: 700;
}

.policy strong {
  font-weight: bold;
}

/* privacypolicy END */
/*/////////////// RECRUIT //////////////////*/
.recruit {
  font-family: "YakuHanJPs", "Noto Sans JP", sans-serif;
}

.recruit h1.title {
  text-align: center;
  font-size: 35px;
  font-weight: 700;
  margin-top: 100px;
  font-family: "YakuHanJPs", "Noto Sans JP", sans-serif;
}

.recruit h1.title:after {
  display: block;
  content: "";
  width: 35px;
  margin: 10px auto 0;
  height: 2px;
  background: #707070;
}

@media screen and (max-width: 767px) {
  .recruit h1.title {
    font-size: 24px;
    margin-top: 60px;
  }
}
.recruit main {
  padding-bottom: 0 !important;
}

.recruit h2 {
  font-size: 18px;
  font-family: "YakuHanJPs", "Noto Serif JP", serif;
  margin-top: 30px;
  text-align: center;
}

@media screen and (max-width: 767px) {
  .recruit h2 {
    font-size: 16px;
  }
}
.recruit p.recruit-txt {
  margin-top: 90px;
  font-size: 30px;
  font-family: "YakuHanJPs", "Noto Serif JP", serif;
  text-align: center;
  line-height: 1.7;
}

@media screen and (max-width: 767px) {
  .recruit p.recruit-txt {
    font-size: 20px;
    margin: 50px 15px 0;
  }
}
.recruit ul.recruit-menu {
  width: 1100px;
  margin: 75px auto 0;
  display: flex;
  border-left: 1px solid #707070;
  border-top: 1px solid #707070;
  border-bottom: 1px solid #707070;
}

@media screen and (max-width: 767px) {
  .recruit ul.recruit-menu {
    width: 100%;
    margin: 50px auto 0;
    display: block;
    border-left: none;
  }
}
.recruit ul.recruit-menu li {
  width: 25%;
}

@media screen and (max-width: 767px) {
  .recruit ul.recruit-menu li {
    width: 100%;
  }
}
.recruit ul.recruit-menu li:nth-of-type(n + 3) a {
  background: #f6fef6;
  color: #3CA759;
}

.recruit ul.recruit-menu li a {
  font-family: "YakuHanJPs", "Noto Serif JP", serif;
  width: 100%;
  height: 100px;
  box-sizing: border-box;
  border-right: 1px solid #707070;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 24px;
  line-height: 1.6;
  text-align: center;
  text-decoration: none;
  color: #707070;
}

.recruit ul.recruit-menu li a.active {
  background: #3CA759;
  color: #FFF;
}

.recruit ul.recruit-menu li a:hover {
  background: #3CA759;
  color: #FFF;
}

@media screen and (max-width: 767px) {
  .recruit ul.recruit-menu li a {
    width: 100%;
    font-size: 16px;
    padding: 10px 0;
    border-bottom: 1px solid #707070;
    border-right: none;
    height: auto;
  }
}
.recruit ul.recruit-menu li:last-of-type a {
  border-bottom: none;
}

.recruit ul.recruit-menu li.last li a {
  background: #fff;
}

.recruit .recruitblock {
  padding-top: 95px;
  padding-bottom: 100px;
  background: #E5F5E5;
}

@media screen and (max-width: 767px) {
  .recruit .recruitblock {
    padding-top: 60px;
    padding-bottom: 60px;
  }
}
.recruit .recruitblock h2 {
  text-align: center;
  color: #3CA759;
  font-size: 36px;
  letter-spacing: 0.2em;
}

@media screen and (max-width: 767px) {
  .recruit .recruitblock h2 {
    font-size: 20px;
    letter-spacing: 0.1em;
    margin-top: 0;
    line-height: 1.5;
  }
}
.recruit .recruitblock p.txt {
  font-size: 16px;
  line-height: 2;
  margin-top: 35px;
  text-align: center;
  font-family: "YakuHanJPs", "Noto Serif JP", serif;
}

@media screen and (max-width: 767px) {
  .recruit .recruitblock p.txt {
    font-size: 14px;
    line-height: 1.8;
    margin-top: 30px;
    text-align: left;
  }
}
.recruit .recruitblock table.application {
  font-family: "YakuHanJPs", "Noto Sans JP", sans-serif;
  text-align: left;
  font-size: 18px;
  line-height: 1.75;
  margin-top: 95px;
  letter-spacing: 0.05em;
}

@media screen and (max-width: 767px) {
  .recruit .recruitblock table.application {
    font-size: 15px;
    line-height: 1.6;
    margin-top: 50px;
  }
}
.recruit .recruitblock table.application th {
  background: #E6E6E6;
  padding: 30px 25px;
  width: 220px;
  border-bottom: 1px solid #707070;
}

@media screen and (max-width: 767px) {
  .recruit .recruitblock table.application th {
    padding: 18px;
    width: 100%;
    display: block;
    box-sizing: border-box;
  }
}
.recruit .recruitblock table.application td {
  border-bottom: 1px solid #707070;
  border-left: 1px solid #707070;
  padding: 30px 25px;
  background: #FFF;
}

@media screen and (max-width: 767px) {
  .recruit .recruitblock table.application td {
    border-left: none;
    padding: 18px;
    display: block;
    width: 100%;
    box-sizing: border-box;
  }
}
.recruit .recruitblock table.application td dl {
  width: 100%;
  text-align: center;
}

.recruit .recruitblock table.application td dl dt {
  font-size: 1.2em;
  margin-bottom: 15px;
}

.recruit .recruitblock table.application td dl dt span {
  font-size: 1.1em;
  font-weight: 700;
}

.recruit .recruitblock table.application td dl dd {
  margin-bottom: 20px;
}

.recruit .recruitblock table.application td dl dd:after {
  content: "";
  width: 44px;
  height: 25px;
  margin: 15px auto 0;
  display: block;
  background: url(../images/recruit/arrow.png) center center/100% auto no-repeat;
}

.recruit .recruitblock .recruit-movie {
  width: 1030px;
  margin: 90px auto 0;
  display: flex;
  flex-wrap: wrap;
}

@media screen and (max-width: 767px) {
  .recruit .recruitblock .recruit-movie {
    width: 100%;
    margin: 60px auto 0;
    display: block;
  }
}
.recruit .recruitblock .recruit-movie li {
  width: 480px;
  margin-right: 70px;
  margin-bottom: 60px;
}

@media screen and (max-width: 767px) {
  .recruit .recruitblock .recruit-movie li {
    width: 100%;
    margin-right: 0;
    margin-bottom: 30px;
  }
}
.recruit .recruitblock .recruit-movie li:nth-of-type(2n) {
  margin-right: 0;
}

.recruit .recruitblock .recruit-movie li video {
  width: 100%;
  height: 270px;
  background: #FFF;
}

@media screen and (max-width: 767px) {
  .recruit .recruitblock .recruit-movie li video {
    height: auto;
  }
}
.recruit .recruitblock .recruit-movie li p {
  font-size: 13px;
  margin-top: 12px;
}

.recruit .recruitblock .recruit-image {
  display: flex;
  justify-content: space-between;
  margin: 60px auto 0;
  width: 900px;
}

@media screen and (max-width: 767px) {
  .recruit .recruitblock .recruit-image {
    margin-top: 40px;
    display: block;
    width: 100%;
  }
}
.recruit .recruitblock .recruit-image li {
  width: 420px;
}

@media screen and (max-width: 767px) {
  .recruit .recruitblock .recruit-image li {
    width: 90%;
    margin: 0 auto 15px;
  }
}
.recruit.golf table.application {
  margin-top: 95px;
}

.recruit .recruit-btn {
  width: 860px;
  display: flex;
  justify-content: space-between;
  margin: 60px auto 0;
}

@media screen and (max-width: 767px) {
  .recruit .recruit-btn {
    width: 90%;
    display: block;
  }
}
.recruit .recruit-btn li {
  box-sizing: border-box;
  width: 400px;
  height: 100px;
  border: 1px solid #3CA759;
  text-align: center;
  color: #3CA759;
}

@media screen and (max-width: 767px) {
  .recruit .recruit-btn li {
    width: 100%;
    height: 50px;
    margin-bottom: 15px;
  }
}
@media screen and (max-width: 767px) {
  .recruit .recruit-btn li:nth-of-type(2) {
    height: 66px;
  }
}
.recruit .recruit-btn li a {
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  color: #3CA759;
  text-decoration: none;
  font-size: 20px;
}

@media screen and (max-width: 767px) {
  .recruit .recruit-btn li a {
    font-size: 16px;
  }
}
.recruit .recruit-btn li a:hover {
  background: #3CA759;
  color: #FFF;
}

.recruit .recruit-btn li span {
  font-size: 15px;
  display: block;
  margin-bottom: 10px;
  padding-top: 25px;
}

@media screen and (max-width: 767px) {
  .recruit .recruit-btn li span {
    font-size: 14px;
    padding-top: 10px;
  }
}
.recruit .recruit-btn li em {
  font-size: 23px;
}

@media screen and (max-width: 767px) {
  .recruit .recruit-btn li em {
    font-size: 20px;
  }
  .recruit .recruit-btn li em a {
    display: inline;
  }
}
.recruit .naviLink {
  text-align: center;
  margin-top: 60px;
}

.recruit .naviLink p {
  font-size: 16px;
}

.recruit .naviLink figure {
  margin: 30px auto 0;
  width: 25%;
  padding: 20px 40px;
  background-color: #fff;
  border: 1px solid #006EB8;
  border-radius: 10px;
}

.recruit .naviLink figure:hover {
  opacity: 0.5;
}

/* RECRUIT END */
/* INDEX */
.index {
  letter-spacing: 0;
  /* section END */
  /* section END */
  /* section END */
  /* section END */
  /* section END */
}

.index .mainimg {
  height: 600px;
  width: 100%;
  position: relative;
  overflow: hidden;
}

@media screen and (max-width: 767px) {
  .index .mainimg {
    height: auto;
    padding-top: 56.2%;
  }
}
.index .mainimg video {
  position: absolute;
  width: 100%;
  height: auto;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

@media screen and (max-width: 1068px) {
  .index .mainimg video {
    height: 100%;
    width: auto;
  }
}
@media screen and (max-width: 767px) {
  .index .mainimg video {
    height: auto;
    width: 100%;
  }
}
.index .mainimg .txt-title {
  width: 480px;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 3;
}

@media screen and (max-width: 767px) {
  .index .mainimg .txt-title {
    width: 50%;
  }
}
.index .mainimg .overlay {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  background-image: linear-gradient(45deg, rgba(185, 184, 184, 0.3) 50%, rgba(97, 96, 96, 0.7) 50%);
  background-size: 2px 2px;
  opacity: 0.3;
  z-index: 2;
}

.index .mainimg p.small {
  position: absolute;
  top: 90%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 3;
  color: #fff;
  font-size: 24px;
}

.index .mainimg .photoblock {
  display: none;
}

@media screen and (max-width: 767px) {
  .index .mainimg .photoblock {
    display: block;
    position: relative;
  }
  .index .mainimg .photoblock .txt-title {
    width: 100%;
    text-align: center;
    position: absolute;
    top: 35%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 3;
  }
  .index .mainimg .photoblock .txt-title img {
    width: 50%;
    height: auto;
  }
}
.index .information {
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: 1100px;
  margin: 40px auto 0;
}

@media screen and (max-width: 767px) {
  .index .information {
    width: 90%;
    margin-top: 20px;
    display: block;
    position: relative;
  }
}
.index .information dl {
  font-size: 14px;
  width: 90%;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
}

@media screen and (max-width: 767px) {
  .index .information dl {
    display: block;
    width: 100%;
    font-size: 13px;
    position: relative;
  }
}
.index .information dl dt {
  width: 90px;
  text-align: center;
  padding: 8px 0;
  margin-right: 1em;
  color: #FFF;
}

@media screen and (max-width: 767px) {
  .index .information dl dt {
    width: 80px;
    padding: 6px 0;
    margin-right: 0;
  }
}
.index .information dl dt.info {
  background: #1FB1BF;
}

.index .information dl dt.ryokka {
  background: #6FB226;
}

.index .information dl dt.event {
  background: #FFA3A3;
}

.index .information dl dt.golf {
  background: #19805D;
}

.index .information dl dt.media {
  background: #F0A565;
}

.index .information dl dt.sdgs {
  background: #19805D;
}

@media screen and (max-width: 767px) {
  .index .information dl dd {
    display: block;
    width: 100%;
    margin-top: 10px;
  }
}
.index .information dl dd span {
  margin-right: 1.5em;
}

@media screen and (max-width: 767px) {
  .index .information dl dd span {
    position: absolute;
    top: 6px;
    left: 90px;
  }
}
.index .information em a {
  text-decoration: none;
  font-size: 13px;
  color: #3F4E4A;
  display: block;
}

@media screen and (max-width: 767px) {
  .index .information em a {
    text-align: center;
    margin-top: 15px;
    position: absolute;
    top: -6px;
    right: 0;
  }
}
.index .information em a::before {
  content: "▶";
  font-size: 0.8em;
  margin-right: 0.5em;
}

.index .information em a:hover {
  text-decoration: underline;
}

.index .aboutus {
  font-family: "YakuHanJPs", "Noto Serif JP", serif;
  margin-top: 90px;
}

@media screen and (max-width: 767px) {
  .index .aboutus {
    margin-top: 60px;
  }
}
.index .aboutus h3.under-title {
  font-size: 27px;
  line-height: 1.7;
  margin-top: 50px;
  text-align: center;
}

.index .aboutus h3.under-title2 {
  font-size: 27px;
  line-height: 1.7;
  margin-top: 50px;
  margin-bottom: 40px;
  text-align: center;
}

.index .aboutus .aboutus-list {
  width: 1020px;
  display: flex;
  margin: 65px auto 60px;
}

@media screen and (max-width: 767px) {
  .index .aboutus .aboutus-list {
    width: 92%;
    margin: 40px auto 0;
    flex-wrap: wrap;
  }
}
.index .aboutus .aboutus-list li {
  width: 25%;
  box-sizing: border-box;
  border-right: 1px solid #3CA759;
  text-align: center;
  padding: 15px 10px;
  color: #3CA759;
}

@media screen and (max-width: 767px) {
  .index .aboutus .aboutus-list li {
    width: 50%;
    margin-bottom: 15px;
    padding: 0 7px 0;
  }
}
.index .aboutus .aboutus-list li:first-of-type {
  border-left: 1px solid #3CA759;
}

@media screen and (max-width: 767px) {
  .index .aboutus .aboutus-list li:nth-of-type(3) {
    border-left: 1px solid #3CA759;
  }
}
.index .aboutus .aboutus-list li em {
  font-size: 16px;
}

@media screen and (max-width: 767px) {
  .index .aboutus .aboutus-list li em {
    font-size: 13px;
  }
}
.index .aboutus .aboutus-list li p {
  font-size: 18px;
  line-height: 1.8;
  margin-top: 25px;
}

@media screen and (max-width: 767px) {
  .index .aboutus .aboutus-list li p {
    font-size: 14px;
    line-height: 1.7;
    margin-top: 12px;
    letter-spacing: 0;
  }
}
.index .aboutus h3.under-title {
  text-align: center;
  font-size: 27px;
  line-height: 1.7;
  margin-top: 60px;
  letter-spacing: 0.2em;
}

@media screen and (max-width: 767px) {
  .index .aboutus h3.under-title {
    margin: 30px 20px 0;
    font-size: 18px;
    line-height: 1.9;
    letter-spacing: 0.1em;
  }
}
.index .bnr {
  margin-top: 100px;
}

@media screen and (max-width: 767px) {
  .index .bnr {
    margin-top: 60px;
  }
}
.index .bnr #bnr li {
  margin-bottom: 20px;
  position: relative;
}

.index .bnr #bnr li a:hover {
  opacity: 0.7;
}

.index .bnr #bnr li ul.recruit-detail {
  position: absolute;
  width: 940px;
  left: 80px;
  bottom: 10px;
  display: flex;
  justify-content: space-between;
}

@media screen and (max-width: 1180px) {
  .index .bnr #bnr li ul.recruit-detail {
    width: 96%;
    left: 2%;
  }
}
@media screen and (max-width: 767px) {
  .index .bnr #bnr li ul.recruit-detail {
    width: 94%;
    left: 3%;
    bottom: -65px;
    flex-wrap: wrap;
  }
  .index .bnr #bnr li ul.recruit-detail li {
    width: 49%;
    margin-bottom: 0;
  }
}
.index .bnr #bnr li ul.recruit-detail li a {
  width: 224px;
  font-size: 14px;
  text-align: center;
  padding: 15px 0;
  display: block;
  background: rgba(255, 255, 255, 0.9);
  border-radius: 10px;
  color: #3F4E4A;
  text-decoration: none;
  transition: 0.5s;
}

@media screen and (max-width: 1180px) {
  .index .bnr #bnr li ul.recruit-detail li a {
    width: 180px;
    font-size: 13px;
  }
}
@media screen and (max-width: 767px) {
  .index .bnr #bnr li ul.recruit-detail li a {
    font-size: 11px;
    padding: 8px 0;
    width: 100%;
    margin-bottom: 10px;
    background: #eaeaea;
  }
}
.index .bnr #bnr li ul.recruit-detail li a:hover {
  background: rgba(32, 90, 48, 0.9);
  color: #FFF;
}

.index .bnr .sdgs-bnr {
  box-sizing: border-box;
  width: 100%;
  border: 10px solid #EAEDEA;
  margin-top: 20px;
}

@media screen and (max-width: 767px) {
  .index .bnr .sdgs-bnr {
    margin-top: 80px;
  }
}
.index .bnr .sdgs-bnr a {
  text-decoration: none;
  color: #3F4E4A;
  display: flex;
  transition: 0.5s;
}

@media screen and (max-width: 767px) {
  .index .bnr .sdgs-bnr a {
    display: block;
  }
}
.index .bnr .sdgs-bnr a:hover {
  opacity: 0.6;
}

.index .bnr .sdgs-bnr figure {
  width: 462px;
}

@media screen and (max-width: 767px) {
  .index .bnr .sdgs-bnr figure {
    width: 100%;
  }
}
.index .bnr .sdgs-bnr .block {
  width: 618px;
  padding-top: 35px;
}

@media screen and (max-width: 767px) {
  .index .bnr .sdgs-bnr .block {
    width: 100%;
    padding-top: 15px;
  }
}
.index .bnr .sdgs-bnr .block h2 {
  text-align: center;
  font-size: 28px;
  letter-spacing: 0.2em;
}

@media screen and (max-width: 767px) {
  .index .bnr .sdgs-bnr .block h2 {
    font-size: 18px;
  }
}
.index .bnr .sdgs-bnr .block h2 span {
  border-bottom: 1px solid #707070;
  padding-bottom: 15px;
  display: inline-block;
}

.index .bnr .sdgs-bnr .block .logo {
  width: 312px;
  display: block;
  margin: 30px auto 0;
}

@media screen and (max-width: 767px) {
  .index .bnr .sdgs-bnr .block .logo {
    width: 80%;
    margin: 15px auto;
  }
}
.index .business {
  font-family: "YakuHanJPs", "Noto Serif JP", serif;
  font-weight: 400;
  margin: 90px auto 0;
  width: 1100px;
}

@media screen and (max-width: 1180px) {
  .index .business {
    width: 96%;
  }
}
@media screen and (max-width: 767px) {
  .index .business {
    margin-top: 60px;
    width: 90%;
  }
}
.index .business h3.under-title {
  text-align: center;
  font-size: 27px;
  line-height: 1.7;
  margin-top: 45px;
  letter-spacing: 0.2em;
  font-weight: 400;
}

@media screen and (max-width: 767px) {
  .index .business h3.under-title {
    font-size: 20px;
    margin: 35px 20px 0;
  }
}
.index .business .block-wrapper {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  box-sizing: border-box;
}

.index .business .block-wrapper .business-block {
  display: flex;
  flex-direction: column;
  width: 520px;
  margin-top: 80px;
}

@media screen and (max-width: 1180px) {
  .index .business .block-wrapper .business-block {
    width: 48%;
  }
}
@media screen and (max-width: 767px) {
  .index .business .block-wrapper .business-block {
    width: 100%;
    margin-top: 40px;
  }
}
.index .business .block-wrapper .business-block h4 {
  font-size: 24px;
  padding-left: 12px;
  border-left: 8px solid #3CA759;
  color: #3CA759;
  font-weight: 700;
}

.index .business .block-wrapper .business-block h4 p.en {
  font-size: 13px;
  margin-bottom: 8px;
  font-weight: 700;
  color: #3F4E4A;
  letter-spacing: 0;
}

.index .business .block-wrapper .business-block p.sub {
  font-size: 18px;
  line-height: 1.8;
  margin: 25px 0;
}

.index .business .block-wrapper .business-block p.txt {
  font-size: 15px;
  line-height: 2;
  margin: 15px 0 30px;
}

@media screen and (max-width: 767px) {
  .index .business .block-wrapper .business-block p.txt {
    margin: 15px 0 20px;
  }
}
.index .business .block-wrapper .business-block p.txt span {
  letter-spacing: 0.05em;
}

@media screen and (max-width: 767px) {
  .index .business .block-wrapper .business-block p.txt span {
    letter-spacing: 0.1em;
  }
}
.index .business .block-wrapper .business-block figure {
  transition: 0.5s;
}

.index .business .block-wrapper .business-block figure:hover {
  opacity: 0.6;
}

.index .business .block-wrapper .business-block .more-btn-product {
  text-align: right;
  display: block;
  margin-top: auto;
}

@media screen and (max-width: 767px) {
  .index .business .block-wrapper .business-block .more-btn-product {
    margin-top: 0;
  }
}
.index .business .block-wrapper .business-block .more-btn-product a {
  display: inline-block;
  text-align: center;
  font-size: 16px;
  color: #3F4E4A;
  text-decoration: none;
  font-weight: 700;
}

@media screen and (max-width: 767px) {
  .index .business .block-wrapper .business-block .more-btn-product a {
    font-size: 14px;
  }
}
.index .business .block-wrapper .business-block .more-btn-product a:after {
  content: url(/images/common/more-arrow.svg);
  width: 37px;
  height: 9px;
  display: inline-block;
  margin-left: 6px;
  transition: 0.3s;
}

@media screen and (max-width: 767px) {
  .index .business .block-wrapper .business-block .more-btn-product a:after {
    width: 33px;
    height: auto;
  }
}
.index .business .block-wrapper .business-block .more-btn-product a:hover::after {
  margin-left: 30px;
}

.index .business .more-btn {
  text-align: center;
  display: block;
  margin-top: auto !important;
}

@media screen and (max-width: 767px) {
  .index .business .more-btn {
    margin-top: 25px;
  }
}
.index .business .more-btn a {
  display: inline-block;
  text-align: center;
  font-size: 16px;
  color: #3F4E4A;
  text-decoration: none;
  font-weight: 700;
}

@media screen and (max-width: 767px) {
  .index .business .more-btn a {
    font-size: 14px;
  }
}
.index .business .more-btn a:after {
  content: url(/images/common/more-arrow.svg);
  width: 37px;
  height: 9px;
  display: inline-block;
  margin-left: 6px;
  transition: 0.3s;
}

@media screen and (max-width: 767px) {
  .index .business .more-btn a:after {
    width: 33px;
    height: auto;
  }
}
.index .business .more-btn a:hover::after {
  margin-left: 30px;
}

.index .achievement {
  margin-top: 100px;
}

@media screen and (max-width: 767px) {
  .index .achievement {
    margin-top: 60px;
  }
}
.index .achievement .slideIMG {
  width: 100%;
  margin-top: 40px;
}

.index .achievement .slideIMG li {
  width: 290px !important;
  padding: 0 5px;
  position: relative;
}

@media screen and (max-width: 767px) {
  .index .achievement .slideIMG li {
    width: 180px !important;
  }
}
.index .achievement .slideIMG li .title {
  position: absolute;
  top: 0;
  left: 0;
  width: 290px;
  height: 100%;
  background: rgba(121, 121, 121, 0);
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 5px;
}

@media screen and (max-width: 767px) {
  .index .achievement .slideIMG li .title {
    width: 180px;
  }
}
.index .achievement .slideIMG li .title p {
  text-align: center;
  font-size: 12px;
  color: #fff;
  opacity: 0;
}

@media screen and (max-width: 767px) {
  .index .achievement .slideIMG li .title p {
    line-height: 1.4;
  }
}
.index .achievement .slideIMG li:hover .title {
  background: rgba(121, 121, 121, 0.8);
}

.index .achievement .slideIMG li:hover .title p {
  opacity: 1;
}

.index .news {
  margin-top: 80px;
}

@media screen and (max-width: 767px) {
  .index .news {
    margin-top: 60px;
  }
}
.index .news .info-box {
  width: 980px;
  margin: 50px auto 40px;
  line-height: 1.5;
}

@media screen and (max-width: 981px) {
  .index .news .info-box {
    box-sizing: border-box;
    padding: 0 20px;
    width: 100%;
  }
}
@media screen and (max-width: 767px) {
  .index .news .info-box {
    width: 90%;
  }
}
.index .news .info-box dl {
  border-top: 1px solid #707070;
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  color: #707070;
}

@media screen and (max-width: 767px) {
  .index .news .info-box dl {
    display: block;
  }
}
.index .news .info-box dl dt {
  font-size: 16px;
  padding: 10px 0;
  width: 350px;
  border-bottom: 1px solid #707070;
}

@media screen and (max-width: 981px) {
  .index .news .info-box dl dt {
    width: 35.7%;
  }
}
@media screen and (max-width: 767px) {
  .index .news .info-box dl dt {
    width: 100%;
    font-size: 14px;
    border-bottom: none;
  }
}
.index .news .info-box dl dt span {
  font-size: 13px;
  color: #FFF;
  width: 100px;
  display: inline-block;
  padding: 8px 0;
  text-align: center;
  margin-right: 5px;
}

@media screen and (max-width: 767px) {
  .index .news .info-box dl dt span {
    font-size: 12px;
    width: 100px;
    padding: 8px 0 6px;
  }
}
.index .news .info-box dl dt span.info {
  background: #51939a;
}

.index .news .info-box dl dt span.ryokka {
  background: #7ca353;
}

.index .news .info-box dl dt span.event {
  background: #8c8b8b;
}

.index .news .info-box dl dt span.golf {
  background: #19805D;
}

.index .news .info-box dl dt span.media {
  background: #d39c6b;
}

.index .news .info-box dl dt span.sdgs-activities {
  background: #9c6b9c;
}

.index .news .info-box dl dt a:first-of-type {
  margin-left: 20px;
}

.index .news .info-box dl dd {
  font-size: 16px;
  padding: 18px 0 10px 25px;
  width: 605px;
  border-bottom: 1px solid #707070;
}

@media screen and (max-width: 981px) {
  .index .news .info-box dl dd {
    width: 64.3%;
    box-sizing: border-box;
  }
}
@media screen and (max-width: 767px) {
  .index .news .info-box dl dd {
    padding: 0 0 10px 0;
    font-size: 14px;
    width: 100%;
    line-height: 1.4;
  }
}
.index .news .info-box dl dd a {
  color: #707070;
  text-decoration: none;
}

.index .news .info-box dl dd a:hover {
  text-decoration: underline;
}

.index .news .info-box dl dd span {
  color: red;
  margin-right: 0.5em;
  font-family: "YakuHanJPs", "Noto Serif JP", serif;
}

.index .news .view-more a {
  width: 200px;
  display: block;
  margin: 40px auto 0;
  font-size: 14px;
  text-align: center;
  padding: 18px 0;
  border: 1px solid #707070;
  color: #707070;
  text-decoration: none;
  transition: 0.3s;
}

@media screen and (max-width: 767px) {
  .index .news .view-more a {
    margin-top: 30px;
    font-size: 13px;
    width: 160px;
    padding: 10px 0;
  }
}
.index .news .view-more a:hover {
  background: #19805D;
  color: #fff;
}

.index .column {
  margin-top: 80px;
}

@media screen and (max-width: 767px) {
  .index .column {
    margin-top: 60px;
  }
}
.index .column .columnBlock {
  margin: 50px auto 0;
  width: 1100px;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}

@media screen and (max-width: 1180px) {
  .index .column .columnBlock {
    width: 96%;
  }
}
@media screen and (max-width: 767px) {
  .index .column .columnBlock {
    margin: 40px auto 0;
    width: 86%;
    display: block;
  }
}
.index .column .columnBlock li {
  width: 340px;
  margin-right: 40px;
  background-color: #E5F5E5;
  padding-bottom: 20px;
}

@media screen and (max-width: 1180px) {
  .index .column .columnBlock li {
    width: 31%;
    margin-right: 3.5%;
  }
}
@media screen and (max-width: 767px) {
  .index .column .columnBlock li {
    width: 100%;
    margin-right: 0;
    padding-bottom: 25px;
    margin-bottom: 20px;
  }
}
.index .column .columnBlock li:last-of-type {
  margin-right: 0;
}

.index .column .columnBlock li a {
  text-decoration: none;
}

.index .column .columnBlock li a dl {
  margin: 15px 35px 0;
}

@media screen and (max-width: 767px) {
  .index .column .columnBlock li a dl {
    margin: 20px 25px 0;
  }
}
.index .column .columnBlock li a dl dt {
  font-size: 13px;
  color: #3CA759;
  padding: 6px 20px;
  background-color: #FFF;
  display: inline-block;
  border: 1px solid #3CA759;
}

.index .column .columnBlock li a dl dd {
  font-size: 16px;
  margin-top: 12px;
  line-height: 1.6;
  color: #3F4E4A;
}

@media screen and (max-width: 767px) {
  .index .column .columnBlock li a dl dd {
    font-size: 14px;
  }
}
.index .column .columnBlock li a:hover {
  opacity: 0.6;
}

/* INDEX END */
body.page h1.page-title {
  font-family: "YakuHanJPs", "Noto Serif JP", serif !important;
  text-align: center;
  font-size: 24px !important;
  margin-top: 30px !important;
  font-weight: 400 !important;
}

@media screen and (max-width: 767px) {
  body.page h1.page-title {
    font-size: 16px;
    margin-top: 25px;
  }
}
body.page h1.page-title:after {
  content: none !important;
}

body.page p.page-entitle {
  font-family: "Noto Sans JP", sans-serif;
  text-align: center;
  font-size: 35px;
  margin-top: 70px;
  font-weight: 700;
}

@media screen and (max-width: 767px) {
  body.page p.page-entitle {
    font-size: 24px;
    margin-top: 60px;
  }
}
body.page p.page-entitle span:after {
  content: "";
  height: 1px;
  display: block;
  background: #707070;
  margin: 15px auto 0;
  width: 18px;
}

body.page .Subcontractors {
  padding-top: 70px;
  padding-bottom: 70px;
}

@media screen and (max-width: 767px) {
  body.page .Subcontractors {
    padding-top: 50px;
    padding-bottom: 50px;
  }
}
body.page .Subcontractors p {
  font-size: 18px;
  line-height: 1.88;
}

@media screen and (max-width: 767px) {
  body.page .Subcontractors p {
    font-size: 16px;
  }
}
body.page .Subcontractors h2 {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 24px;
  font-weight: 700;
  margin-top: 60px;
  letter-spacing: 0.1em;
}

@media screen and (max-width: 767px) {
  body.page .Subcontractors h2 {
    font-size: 20px;
    line-height: 1.6;
    margin-left: 1em;
    text-indent: -1em;
    margin-top: 40px;
  }
}
body.page .Subcontractors .BlockWrap {
  display: flex;
  justify-content: space-between;
  margin-left: 1.5em;
  margin-top: 20px;
  flex-wrap: wrap;
}

body.page .Subcontractors .BlockWrap p {
  width: 50%;
}

@media screen and (max-width: 767px) {
  body.page .Subcontractors .BlockWrap p {
    width: 100%;
  }
}
body.page .Subcontractors .BlockWrap p.dl a {
  color: #006EB8;
  text-decoration: none;
}

body.page .Subcontractors .BlockWrap p.dl a span:after {
  content: url(../images/common/link-icon.svg);
  margin-left: 0.5em;
}

body.page .Subcontractors .BlockWrap p.dl a:hover {
  text-decoration: underline;
}

@media screen and (max-width: 767px) {
  body.page .Subcontractors .BlockWrap p.dl {
    font-size: 15px;
  }
}
body.page .Subcontractors .BlockWrap p.date {
  font-size: 0.9em;
  margin-top: 10px;
}

body.page .yuusosaki {
  padding: 20px 40px 20px 20px;
  background-color: #f7f7f7;
  display: inline-block;
  margin-top: 60px;
}

@media screen and (max-width: 767px) {
  body.page .yuusosaki {
    padding: 15px;
    background-color: #f7f7f7;
    width: 100%;
    box-sizing: border-box;
  }
}
body.page .yuusosaki .inWrap {
  display: flex;
  align-items: end;
  width: 100%;
}

@media screen and (max-width: 767px) {
  body.page .yuusosaki .inWrap {
    display: block;
    width: 100%;
  }
}
body.page .Subcontractors .txt {
  font-size: 16px;
  margin-left: 1.5em;
}

@media screen and (max-width: 767px) {
  body.page .Subcontractors .txt {
    font-size: 15px;
    margin-left: 0em;
  }
}
@media screen and (max-width: 767px) {
  body.page .Subcontractors .txt span.sp {
    display: inline;
  }
}
body.page .Subcontractors .right-txt {
  text-align: right;
  font-size: 18px;
  font-weight: 500;
  margin-top: 30px;
}

@media screen and (max-width: 767px) {
  body.page .Subcontractors .right-txt {
    font-size: 16px;
  }
}
.recruiteMain {
  color: #3F4E4A;
}

.recruiteMain .siteTitle {
  position: fixed;
  top: 300px;
  right: -30px;
  transform: rotate(90deg);
  z-index: 6;
  font-size: 14px;
  font-family: "Noto Sans JP", "ヒラギノ角ゴ ProN W3", Meiryo, sans-serif;
}

@media screen and (max-width: 767px) {
  .recruiteMain .siteTitle {
    position: static;
    transform: rotate(0);
    padding: 14px 16px;
  }
}
.recruiteMain .contents-btn {
  position: fixed;
  right: 0;
  top: 70px;
  z-index: 10;
}

@media screen and (max-width: 767px) {
  .recruiteMain .contents-btn {
    top: 50px;
  }
}
.recruiteMain .contents-btn .contents-menu-oc {
  position: absolute;
  top: 0;
  right: 0;
  width: 80px;
  height: 80px;
  box-sizing: border-box;
  background-color: #3CA759;
  display: block;
  padding: 30px 18px 0;
  z-index: 12;
  cursor: pointer;
  position: relative;
}

@media screen and (max-width: 767px) {
  .recruiteMain .contents-btn .contents-menu-oc {
    transform: scale(0.8);
    right: -10px;
    top: -10px;
  }
}
.recruiteMain .contents-btn .contents-menu-oc li {
  width: 32px;
  height: 3px;
  background-color: #FFF;
  margin-bottom: 12px;
  margin-left: auto;
  position: absolute;
  top: 46px;
  left: 30px;
  transition: all 0.2s linear;
}

.recruiteMain .contents-btn .contents-menu-oc li:first-of-type {
  width: 44px;
  top: 30px;
  left: 18px;
}

.recruiteMain .contents-btn .contents-menu-oc.active li {
  transform: rotate(45deg);
  top: 36px;
  left: 16px;
}

.recruiteMain .contents-btn .contents-menu-oc.active li:nth-of-type(2) {
  width: 44px;
  transform: rotate(-45deg);
  top: 36px;
  left: 15px;
}

.recruiteMain .contents-btn .contents-menu {
  position: fixed;
  display: none;
  z-index: 11;
  right: 0;
  top: 70px;
  width: 360px;
  box-sizing: border-box;
  padding: 60px 55px;
  color: #FFF;
  background-color: #3CA759;
  font-family: "Noto Sans JP", "ヒラギノ角ゴ ProN W3", Meiryo, sans-serif;
}

@media screen and (max-width: 767px) {
  .recruiteMain .contents-btn .contents-menu {
    top: 50px;
    width: 100%;
    height: calc(100vh - 50px);
  }
}
.recruiteMain .contents-btn .contents-menu .menuTop a {
  color: #FFF;
  text-decoration: none;
  font-size: 28px;
  font-weight: 500;
}

@media screen and (max-width: 767px) {
  .recruiteMain .contents-btn .contents-menu .menuTop a {
    font-size: 24px;
  }
}
.recruiteMain .contents-btn .contents-menu .MenuOpen {
  margin-top: 25px;
  font-family: "YakuHanJPs", "Noto Serif JP", serif;
  font-weight: 500;
}

.recruiteMain .contents-btn .contents-menu .MenuOpen dt {
  font-size: 16px;
  font-weight: 500;
  color: #3F4E4A;
  padding: 18px 0 18px 12px;
  box-sizing: border-box;
  width: 100%;
  background-color: #FFF;
  position: relative;
  border-radius: 5px;
  letter-spacing: 0.05em;
  cursor: pointer;
  transition: all 0.2s linear;
  border: 1px solid #3CA759;
}

@media screen and (max-width: 767px) {
  .recruiteMain .contents-btn .contents-menu .MenuOpen dt {
    padding: 14px 0 14px 12px;
    font-size: 15px;
  }
}
.recruiteMain .contents-btn .contents-menu .MenuOpen dt:after {
  width: 14px;
  height: 6px;
  content: "";
  background: url(../images/recruit/InMenu-open.svg) center center/100% 100% no-repeat;
  position: absolute;
  top: calc(50% - 3px);
  right: 15px;
  transition: all 0.2s linear;
}

.recruiteMain .contents-btn .contents-menu .MenuOpen dt.active {
  border-radius: 5px 5px 0 0;
}

.recruiteMain .contents-btn .contents-menu .MenuOpen dt.active:after {
  transform: rotate(180deg);
}

.recruiteMain .contents-btn .contents-menu .MenuOpen dd {
  background-color: rgba(255, 255, 255, 0.75);
  border: 1px solid #3CA759;
  padding: 0 12px 16px;
  border-radius: 0 0 5px 5px;
  display: none;
}

.recruiteMain .contents-btn .contents-menu .MenuOpen dd a {
  font-size: 14px;
  color: #3F4E4A;
  text-decoration: none;
  display: block;
  margin-top: 16px;
}

.recruiteMain .contents-btn .contents-menu .MenuOpen dd a:hover {
  text-decoration: underline;
  opacity: 0.8;
}

.recruiteMain .contents-btn .contents-menu h3 {
  font-size: 14px;
  padding-bottom: 10px;
  border-bottom: 1px solid #FFF;
  margin-top: 35px;
}

.recruiteMain .contents-btn .contents-menu .MenuList li a {
  display: block;
  margin-top: 20px;
  font-weight: 500;
  font-size: 18px;
  color: #FFF;
  text-decoration: none;
}

.recruiteMain .contents-btn .contents-menu .MenuList li a span {
  font-size: 24px;
  margin-right: 0.4em;
}

.recruiteMain .contents-btn .contents-menu .MenuList li a:hover {
  text-decoration: underline;
  opacity: 0.8;
}

.recruiteMain .MainImg {
  max-width: 1160px;
  margin: 0 auto;
  position: relative;
  z-index: 1;
}

.recruiteMain .MainImg .mainTitle {
  position: absolute;
  width: 73%;
  left: -6%;
  bottom: -20px;
}

@media screen and (max-width: 1310px) {
  .recruiteMain .MainImg .mainTitle {
    width: 60%;
    left: 0;
  }
}
@media screen and (max-width: 767px) {
  .recruiteMain .MainImg .mainTitle {
    width: 82%;
    left: 8%;
    bottom: -48px;
  }
}
.recruiteMain .RecruitmentGuidelines {
  padding-top: 140px;
  max-width: 928px;
  margin: 0 auto;
}

@media screen and (max-width: 767px) {
  .recruiteMain .RecruitmentGuidelines {
    padding-top: 110px;
  }
}
.recruiteMain .RecruitmentGuidelines h2 {
  font-size: 30px;
  color: #3CA759;
  font-weight: 500;
  text-align: center;
}

@media screen and (max-width: 767px) {
  .recruiteMain .RecruitmentGuidelines h2 {
    font-size: 20px;
    line-height: 1.66;
  }
}
.recruiteMain .RecruitmentGuidelines .txt {
  margin-top: 40px;
  line-height: 2;
  letter-spacing: 0;
}

@media screen and (max-width: 767px) {
  .recruiteMain .RecruitmentGuidelines .txt {
    font-size: 14px;
    margin-top: 30px;
    padding: 0 5%;
  }
}
.recruiteMain .RecruitmentGuidelines dl.btn {
  width: 346px;
  margin: 100px auto 0;
}

@media screen and (max-width: 767px) {
  .recruiteMain .RecruitmentGuidelines dl.btn {
    width: 70%;
    margin-top: 40px;
  }
}
.recruiteMain .RecruitmentGuidelines dl.btn dt {
  padding: 20px 0 20px 25px;
  color: #FFF;
  font-size: 18px;
  background-color: #3CA759;
  position: relative;
  cursor: pointer;
  border-radius: 10px;
  border: 1px solid #3CA759;
}

@media screen and (max-width: 767px) {
  .recruiteMain .RecruitmentGuidelines dl.btn dt {
    font-size: 16px;
    padding: 15px 0 15px 15px;
  }
}
.recruiteMain .RecruitmentGuidelines dl.btn dt:after {
  position: absolute;
  content: "";
  width: 16px;
  height: 8px;
  background: url(../images/recruit/recruit-underarrow.svg) center center/100% 100% no-repeat;
  top: calc(50% - 4px);
  right: 20px;
  transition: all 0.2s linear;
}

@media screen and (max-width: 767px) {
  .recruiteMain .RecruitmentGuidelines dl.btn dt:after {
    right: 15px;
  }
}
.recruiteMain .RecruitmentGuidelines dl.btn dt.active {
  border-radius: 10px 10px 0 0;
}

.recruiteMain .RecruitmentGuidelines dl.btn dt.active:after {
  transform: rotate(180deg);
}

.recruiteMain .RecruitmentGuidelines dl.btn dt:hover {
  opacity: 0.7;
}

.recruiteMain .RecruitmentGuidelines dl.btn dd {
  display: none;
  padding: 0 25px 20px 25px;
  border-radius: 0 0 10px 10px;
  border: 1px solid #3CA759;
}

@media screen and (max-width: 767px) {
  .recruiteMain .RecruitmentGuidelines dl.btn dd {
    padding: 0 20px 15px 20px;
  }
}
.recruiteMain .RecruitmentGuidelines dl.btn dd a {
  text-align: left;
  font-size: 16px;
  display: block;
  text-decoration: none;
  color: #3F4E4A;
  position: relative;
  margin-top: 20px;
}

@media screen and (max-width: 767px) {
  .recruiteMain .RecruitmentGuidelines dl.btn dd a {
    font-size: 14px;
    margin-top: 16px;
  }
}
.recruiteMain .RecruitmentGuidelines dl.btn dd a:hover {
  opacity: 0.6;
  text-decoration: underline;
}

.recruiteMain .Voices {
  padding-top: 190px;
}

@media screen and (max-width: 767px) {
  .recruiteMain .Voices {
    padding-top: 75px;
  }
}
.recruiteMain .Voices .en-title {
  font-size: 16px;
  font-weight: 500;
}

@media screen and (max-width: 767px) {
  .recruiteMain .Voices .en-title {
    font-size: 12px;
  }
}
@media screen and (max-width: 767px) {
  .recruiteMain .Voices .en-title:after {
    content: "";
    width: 35px;
    height: 1px;
    background: #707070;
    margin: 10px auto 0;
    display: block;
  }
}
.recruiteMain .Voices h2 {
  font-size: 32px;
  font-weight: 500;
  text-align: center;
  margin-top: 30px;
}

@media screen and (max-width: 767px) {
  .recruiteMain .Voices h2 {
    font-size: 20px;
  }
}
.recruiteMain .Voices .voice-menu {
  width: 460px;
  margin: 80px auto 0;
  border-left: 1px solid #3F4E4A;
  display: flex;
  flex-wrap: wrap;
}

@media screen and (max-width: 767px) {
  .recruiteMain .Voices .voice-menu {
    width: 90%;
    margin-top: 45px;
  }
}
.recruiteMain .Voices .voice-menu li {
  width: 50%;
  box-sizing: border-box;
  border-right: 1px solid #3F4E4A;
}

.recruiteMain .Voices .voice-menu li a {
  display: block;
  padding: 16px 0 40px;
  width: 100%;
  text-align: center;
  font-size: 18px;
  font-weight: 500;
  text-decoration: none;
  color: #3F4E4A;
  position: relative;
  transition: all 0.2s linear;
}

@media screen and (max-width: 767px) {
  .recruiteMain .Voices .voice-menu li a {
    font-size: 14px;
  }
}
.recruiteMain .Voices .voice-menu li a:after {
  display: block;
  position: absolute;
  content: "";
  width: 22px;
  height: 12px;
  background: url(../images/recruit/recruit-u-arrow.svg) center center/100% 100% no-repeat;
  left: calc(50% - 11px);
  bottom: 10px;
  transition: all 0.2s linear;
}

.recruiteMain .Voices .voice-menu li a:hover {
  color: #1A462F;
}

.recruiteMain .Voices .voice-menu li a:hover:after {
  bottom: 0;
}

.recruiteMain .Voice-contents01 {
  padding-top: 150px;
}

@media screen and (max-width: 767px) {
  .recruiteMain .Voice-contents01 {
    padding-top: 75px;
  }
}
.recruiteMain .Voice-contents01 h3 {
  background: linear-gradient(90deg, rgba(255, 255, 255, 0.7) 0%, rgba(83, 198, 29, 0.7) 10%, rgba(50, 181, 72, 0.7) 50%, rgba(44, 178, 80, 0.7) 90%, rgba(255, 255, 255, 0.7) 100%);
  padding: 20px 0;
  text-align: center;
}

@media screen and (max-width: 767px) {
  .recruiteMain .Voice-contents01 h3 {
    background: linear-gradient(90deg, rgba(83, 198, 29, 0.7) 0%, rgba(83, 198, 29, 0.7) 10%, rgba(50, 181, 72, 0.7) 50%, rgba(44, 178, 80, 0.7) 90%, rgba(44, 178, 80, 0.7) 100%);
    padding: 15px 0;
  }
}
.recruiteMain .Voice-contents01 h3 figure {
  width: 114px;
  margin: 0 auto;
}

@media screen and (max-width: 767px) {
  .recruiteMain .Voice-contents01 h3 figure {
    width: 100px;
  }
}
.recruiteMain .Voice-contents01 h3:nth-of-type(2) figure {
  width: 132px;
}

.recruiteMain .Voice-contents01 .construction-management {
  margin: 400px auto 0;
  background-color: #F0F8F2;
  padding-top: 354px;
  padding-bottom: 65px;
  position: relative;
}

@media screen and (max-width: 767px) {
  .recruiteMain .Voice-contents01 .construction-management {
    padding-top: 310px;
    margin: 180px auto 0;
    padding-bottom: 45px;
  }
}
.recruiteMain .Voice-contents01 .construction-management .titleWindow {
  position: absolute;
  width: 928px;
  margin: 0 auto;
  top: -250px;
  left: calc(50% - 464px);
}

@media screen and (max-width: 767px) {
  .recruiteMain .Voice-contents01 .construction-management .titleWindow {
    width: 90%;
    top: -100px;
    left: 5%;
  }
}
.recruiteMain .Voice-contents01 .construction-management .titleWindow .txt-right {
  font-family: "Noto Sans JP", "ヒラギノ角ゴ ProN W3", Meiryo, sans-serif;
  font-size: 14px;
  margin-top: 15px;
  text-align: right;
}

@media screen and (max-width: 767px) {
  .recruiteMain .Voice-contents01 .construction-management .titleWindow .txt-right {
    font-size: 13px;
    margin-top: 15px;
  }
}
.recruiteMain .Voice-contents01 .construction-management .titleWindow .voice-cap {
  position: absolute;
  left: -20px;
  bottom: 0px;
  display: flex;
  align-items: center;
  padding: 10px 30px;
  background: linear-gradient(90deg, rgba(0, 214, 58, 0.7) 0%, rgba(90, 213, 31, 0.7) 23%, rgba(60, 167, 89, 0.7) 100%);
}

@media screen and (max-width: 767px) {
  .recruiteMain .Voice-contents01 .construction-management .titleWindow .voice-cap {
    position: static;
    justify-content: center;
    margin-top: 40px;
    margin-bottom: 40px;
    padding: 10px 20px;
    width: 100%;
    box-sizing: border-box;
  }
}
.recruiteMain .Voice-contents01 .construction-management .titleWindow .voice-cap figure {
  width: 90px;
  margin-right: 20px;
}

@media screen and (max-width: 767px) {
  .recruiteMain .Voice-contents01 .construction-management .titleWindow .voice-cap figure {
    width: 50px;
    margin-right: 15px;
  }
}
.recruiteMain .Voice-contents01 .construction-management .titleWindow .voice-cap p {
  color: #FFF;
  font-weight: 500;
  font-size: 18px;
  font-family: "Noto Sans JP", "ヒラギノ角ゴ ProN W3", Meiryo, sans-serif;
}

@media screen and (max-width: 767px) {
  .recruiteMain .Voice-contents01 .construction-management .titleWindow .voice-cap p {
    font-size: 15px;
  }
}
.recruiteMain .Voice-contents01 .construction-management .titleWindow .voice-cap p strong {
  display: block;
  font-size: 22px;
  margin-bottom: 10px;
}

@media screen and (max-width: 767px) {
  .recruiteMain .Voice-contents01 .construction-management .titleWindow .voice-cap p strong {
    font-size: 17px;
  }
}
.recruiteMain .Voice-contents01 .construction-management .titleWindow .voice-cap p strong small {
  font-weight: 400;
  font-size: 0.7em;
}

.recruiteMain .Voice-contents01 .construction-management h4 {
  font-size: 28px;
  color: #3CA759;
}

@media screen and (max-width: 767px) {
  .recruiteMain .Voice-contents01 .construction-management h4 {
    font-size: 20px;
    line-height: 1.66;
    text-align: center;
  }
}
.recruiteMain .Voice-contents01 .construction-management .voice-txt {
  font-family: "Noto Sans JP", "ヒラギノ角ゴ ProN W3", Meiryo, sans-serif;
  font-size: 16px;
  line-height: 2;
  margin-top: 25px;
}

@media screen and (max-width: 767px) {
  .recruiteMain .Voice-contents01 .construction-management .voice-txt {
    font-size: 14px;
  }
}
.recruiteMain .Voice-contents01 .inwrap {
  width: 928px;
  margin: 0 auto;
}

@media screen and (max-width: 767px) {
  .recruiteMain .Voice-contents01 .inwrap {
    width: 90%;
  }
}
.recruiteMain .Voice-contents01 .whiteBlock {
  padding-top: 100px;
}

@media screen and (max-width: 767px) {
  .recruiteMain .Voice-contents01 .whiteBlock {
    padding-top: 50px;
  }
}
.recruiteMain .Voice-contents01 .whiteBlock .seniorwrap {
  width: 928px;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
  flex-direction: row-reverse;
}

@media screen and (max-width: 767px) {
  .recruiteMain .Voice-contents01 .whiteBlock .seniorwrap {
    width: 90%;
    display: block;
  }
}
.recruiteMain .Voice-contents01 .whiteBlock .seniorwrap .left {
  width: 460px;
}

@media screen and (max-width: 767px) {
  .recruiteMain .Voice-contents01 .whiteBlock .seniorwrap .left {
    width: 100%;
  }
}
.recruiteMain .Voice-contents01 .whiteBlock .seniorwrap .left h5 {
  font-weight: 500;
  font-size: 20px;
  color: #3CA759;
  margin-top: 50px;
  border-left: 4px solid #3CA759;
  padding-left: 10px;
}

@media screen and (max-width: 767px) {
  .recruiteMain .Voice-contents01 .whiteBlock .seniorwrap .left h5 {
    font-size: 18px;
  }
}
.recruiteMain .Voice-contents01 .whiteBlock .seniorwrap .left h5:first-of-type {
  margin-top: 0;
}

.recruiteMain .Voice-contents01 .whiteBlock .seniorwrap .left p {
  margin-top: 15px;
  font-size: 16px;
  line-height: 2;
  font-family: "Noto Sans JP", "ヒラギノ角ゴ ProN W3", Meiryo, sans-serif;
}

@media screen and (max-width: 767px) {
  .recruiteMain .Voice-contents01 .whiteBlock .seniorwrap .left p {
    font-size: 14px;
  }
}
.recruiteMain .Voice-contents01 .whiteBlock .seniorwrap .left ul {
  margin-top: 15px;
}

.recruiteMain .Voice-contents01 .whiteBlock .seniorwrap .left ul li {
  font-size: 16px;
  line-height: 2;
  font-family: "Noto Sans JP", "ヒラギノ角ゴ ProN W3", Meiryo, sans-serif;
  text-indent: -0.55em;
  margin-left: 1em;
  display: block;
}

@media screen and (max-width: 767px) {
  .recruiteMain .Voice-contents01 .whiteBlock .seniorwrap .left ul li {
    font-size: 14px;
  }
}
.recruiteMain .Voice-contents01 .whiteBlock .seniorwrap .left ul li:before {
  content: "・";
  display: inline-block;
}

.recruiteMain .Voice-contents01 .whiteBlock .seniorwrap .left dl {
  margin-top: 45px;
  display: flex;
  align-items: center;
  font-family: "Noto Sans JP", "ヒラギノ角ゴ ProN W3", Meiryo, sans-serif;
}

.recruiteMain .Voice-contents01 .whiteBlock .seniorwrap .left dl dt {
  width: 94px;
  height: 94px;
  background: url(../images/recruit/shadow-back.png) center center/100% 100% no-repeat;
  font-size: 18px;
  text-align: center;
  padding-top: 37px;
  color: #3CA759;
  margin-right: 16px;
  box-sizing: border-box;
}

@media screen and (max-width: 767px) {
  .recruiteMain .Voice-contents01 .whiteBlock .seniorwrap .left dl dt {
    width: 84px;
    height: 84px;
    font-size: 15px;
    padding-top: 33px;
  }
}
.recruiteMain .Voice-contents01 .whiteBlock .seniorwrap .left dl dd {
  width: calc(100% - 100px);
  font-size: 15px;
  letter-spacing: 0;
  color: #3CA759;
  line-height: 1.8;
}

.recruiteMain .Voice-contents01 .whiteBlock .seniorwrap .left dl dd .pc {
  display: block;
}

@media screen and (max-width: 767px) {
  .recruiteMain .Voice-contents01 .whiteBlock .seniorwrap .left dl dd .pc {
    display: none;
  }
}
.recruiteMain .Voice-contents01 .whiteBlock .seniorwrap .right {
  width: 350px;
}

@media screen and (max-width: 767px) {
  .recruiteMain .Voice-contents01 .whiteBlock .seniorwrap .right {
    width: 100%;
    margin-bottom: 50px;
  }
}
.recruiteMain .recruit-linkbtn {
  width: 645px;
  margin: 190px auto 0;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}

@media screen and (max-width: 767px) {
  .recruiteMain .recruit-linkbtn {
    margin-top: 60px;
    width: 90%;
  }
}
.recruiteMain .recruit-linkbtn li {
  width: 302px;
  margin-bottom: 30px;
}

@media screen and (max-width: 767px) {
  .recruiteMain .recruit-linkbtn li {
    margin-bottom: 20px;
    width: 48%;
  }
}
.recruiteMain .recruit-linkbtn li a {
  display: block;
  padding: 20px;
  color: #FFF;
  font-weight: 500;
  font-size: 18px;
  background-color: #3CA759;
  position: relative;
  border-radius: 10px;
  text-decoration: none;
  transition: all 0.2s linear;
}

@media screen and (max-width: 767px) {
  .recruiteMain .recruit-linkbtn li a {
    font-size: 15px;
    line-height: 1.5;
    padding: 12px 15px;
  }
}
.recruiteMain .recruit-linkbtn li a:after {
  width: 8px;
  height: 16px;
  content: "";
  background: url(../images/recruit/recruit-r-arrow.svg) center center/100% 100% no-repeat;
  position: absolute;
  right: 20px;
  top: calc(50% - 8px);
  transition: all 0.2s linear;
}

.recruiteMain .recruit-linkbtn li a:hover {
  opacity: 0.8;
}

.recruiteMain .recruit-linkbtn li a:hover:after {
  right: 10px;
}

.recruiteMain .ImgLine {
  width: 100%;
  height: 350px;
  background: url(../images/recruit/voice-underLineBk.jpg) center center/cover no-repeat;
  margin-top: 100px;
  margin-bottom: 100px;
}

@media screen and (max-width: 767px) {
  .recruiteMain .ImgLine {
    margin-top: 60px;
    margin-bottom: 60px;
    height: 160px;
  }
}
.index .column .more-btn-product {
  text-align: center;
  display: block;
  margin-top: 40px;
}

@media screen and (max-width: 767px) {
  .index .column .more-btn-product {
    margin-top: 0;
  }
}
.index .column .more-btn-product a {
  display: inline-block;
  text-align: center;
  font-size: 16px;
  color: #3F4E4A;
  text-decoration: none;
  font-weight: 700;
}

@media screen and (max-width: 767px) {
  .index .column .more-btn-product a {
    font-size: 14px;
  }
}
.index .column .more-btn-product a:after {
  content: url(/images/common/more-arrow.svg);
  width: 37px;
  height: 9px;
  display: inline-block;
  margin-left: 6px;
  transition: 0.3s;
}

@media screen and (max-width: 767px) {
  .index .column .more-btn-product a:after {
    width: 33px;
    height: auto;
  }
}
.index .column .more-btn-product a:hover::after {
  margin-left: 30px;
}

/*# sourceMappingURL=style.css.map */