/*
Theme Name: inoko
*/


 /* Reset */

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



/* 全体の設定
---------------------------------------------------------------------------*/
* {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
html, body {
  line-height: 1.5;
}
body, input, select, textarea {
  font-family: "Noto Sans JP", sans-serif;
  line-height: 1.5;
}
.content {
  overflow: hidden;
}
.cf:after {
  content: ".";
  display: block;
  height: 0;
  clear: both;
  visibility: hidden;
  font-size: 0.1em;
  line-height: 0;
}



/* ヘッダー */
.header_nav {
  position: fixed;
  width: 100%;
  max-width: 1240px;
  height: 98px;
  top: 47px;
  left: 50%;
  transform: translateX(calc(-50% - 50px));
  background-color: #ffffff;
  border-radius: 60px;
  border: 1px solid rgba(156, 201, 71, 1);
  box-shadow: 5px 5px 20px rgba(0, 0, 0, 0.2);
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 0;
  z-index: 1000;
}
.nav-logo {
  margin: 6px 0 0 40px;
  width: 308px;
  height: 66px;
  object-fit: contain;
}
@media (max-width: 1200px) {
.nav-logo {
  margin: 6px 0 0 20px;
  width: 308px;
  height: 66px;
  object-fit: contain;
}
}
a:hover img.nav-logo {
  filter: alpha(opacity=70);
  opacity: 0.70;
}
.nav-menu {
  display: flex;
  align-items: center;
  gap: 40px 0
}
.nav-list {
  display: flex;
  list-style: none;
  gap: 40px 32px;
}
.nav-item {
  display: flex;
  align-items: center;
  gap: 8px;
}
.nav-item a {
  color: rgba(51, 51, 51, 1);
  font-weight: 400;
  font-size: 16px;
  line-height: 180%;
  font-style: normal;
  text-decoration: none;
}
.nav-item a:hover, .nav-item a:active {
  color: rgba(156, 201, 71, 1);
  text-decoration: underline;
  text-decoration-color: rgba(156, 201, 71, 1);
  text-underline-offset: 10px;
}
.nav-item.top {
  display: none;
}
.nav-item.company {
  position: relative;
  margin: 7px 0 0 0;
  padding: 0 20px 0 0;
  height: 50px;
}
.nav-item.company:hover > .mod_dropnavi_child, .nav-item.company:active > .mod_dropnavi_child  {
  display: block;
  padding: 0;
}
.init-bottom:after {
  position: absolute;
  top: calc(50% - 8px);
  right: 0;
  content: '';
  display: inline-block;
  width: 8px;
  height: 8px;
  margin: 0;
  border-right: 2px solid rgba(51, 51, 51, 1);
  border-bottom: 2px solid rgba(51, 51, 51, 1);
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
a:hover.init-bottom:after, a:active.init-bottom:after  {
  position: absolute;
  top: calc(50% - 8px);
  right: 0;
  content: '';
  display: inline-block;
  width: 8px;
  height: 8px;
  margin: 0;
  border-right: 2px solid rgba(156, 201, 71, 1);
  border-bottom: 2px solid rgba(156, 201, 71, 1);
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
.init-bottom:after .menu__second-level li a:hover, .init-bottom:after .menu__second-level li a:active {
  position: absolute;
  top: calc(50% - 4px);
  right: 0;
  content: '';
  display: inline-block;
  width: 8px;
  height: 8px;
  margin: 0;
  border-right: 2px solid rgba(156, 201, 71, 1);
  border-bottom: 2px solid rgba(156, 201, 71, 1);
  -webkit-transform: rotate(225deg);
  transform: rotate(225deg);
}
.mod_dropnavi ul li.nav-item.company {
  position: relative;
}
.mod_dropnavi .mod_dropnavi_child{
  display:none;
  position:absolute;
  top:48px;
  left:0px;
  z-index:99;
  padding:4px 0 0 0 !important;
}
.mod_dropnavi .mod_dropnavi_child ul {
  padding:6px 16px 12px 16px !important;
  background-color: rgba(156, 201, 71, 1);
  border-radius: 8px;
}
.mod_dropnavi .mod_dropnavi_child ul li {
  text-align:left;
  margin:4px 0 0 0!important;
  white-space:nowrap;
}
.mod_dropnavi .mod_dropnavi_child ul li a {
  display:inline-block;
  padding:0 0 0 2px!important;
  color: #fff;
}
.mod_dropnavi .mod_dropnavi_child ul li a:hover {
  color: rgba(255, 255, 255, 0.8);
  text-decoration: underline;
  text-decoration-color: rgba(255, 255, 255, 0.8);
  text-underline-offset: 8px;
}
.nav-item.company:hover a, .nav-item.company:active a {
  color: rgba(156, 201, 71, 1);
  text-decoration: underline;
  text-decoration-color: rgba(156, 201, 71, 1);
  text-underline-offset: 8px;
}
.nav-item.company:hover .init-bottom:after {
  position: absolute;
  top: calc(50% - 2px);
  right: 0;
  content: '';
  display: inline-block;
  width: 8px;
  height: 8px;
  margin: 0;
  border-right: 2px solid rgba(156, 201, 71, 1);
  border-bottom: 2px solid rgba(156, 201, 71, 1);
  -webkit-transform: rotate(225deg);
  transform: rotate(225deg);
}
.nav-item.company:hover .mod_dropnavi_child ul li a, .nav-item.company:active .mod_dropnavi_child ul li a {
  color: #fff;
}
.nav-item.instagram {
  margin-right: 15px;
  margin-left: -15px;
  gap: 8px 0;
}
.nav-item.instagram img {
  width: 50px;
  height: auto;
  margin-top: 5px;
}
.nav-item.recruit {
  display: none;
}
.header-instagram {
  display: none;
}
.recruit-button {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  width: 114px;
  height: 98px;
  background-color: rgba(156, 201, 71, 1);
  text-decoration: none;
  border-radius: 0 60px 60px 0;
}
.recruit-button span {
  color: #fff;
  font-size: 16px;
  font-weight: 500;
  line-height: 180%;
}
.recruit-icon {
  position: relative;
  width: 48px;
  height: 48px;
  margin-top: 8px;
}
.recruit-icon img {
  position: absolute;
}
.recruit-icon img:nth-child(1) {
  width: 12px;
  height: 12px;
  top: 9px;
  left: 14px;
}
.recruit-icon img:nth-child(2) {
  width: 23px;
  height: 9px;
  top: 23px;
  left: 9px;
}
.recruit-icon img:nth-child(3) {
  width: 48px;
  height: 48px;
  top: 0;
  left: 0;
}
a.recruit-button:hover .recruit-icon {
  filter: alpha(opacity=70);
  opacity: 0.70;
}
a.recruit-button:hover span {
  filter: alpha(opacity=70);
  opacity: 0.70;
}
@media (max-width: 1440px) {
.header_nav {
  position: fixed;
  width: 96%;
  max-width: initial;
  height: 98px;
  top: 47px;
  left: 50%;
  transform: translateX(calc(-50% - 0px));
  background-color: #ffffff;
  border-radius: 60px;
  border: 1px solid rgba(156, 201, 71, 1);
  box-shadow: 5px 5px 20px rgba(0, 0, 0, 0.2);
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 0;
  z-index: 1000;
}
}
.openbtn {
  display: none;
}
@media (max-width: 1000px) {
.recruit-button {
  display: none;
}
.header-instagram {
  display: block;
  position: absolute;
  width: 50px;
  height: auto;
  top: 24px;
  right: 116px;
}
.openbtn {
  display: block;
  position: fixed;
  z-index: 1000;
  top: 0px;
  right: 0px;
  cursor: pointer;
  width: 114px;
  height: 98px;
  text-decoration: none;
  border-radius: 0 60px 60px 0;
}
.openbtn span {
  display: inline-block;
  transition: all .4s;
  position: absolute;
  left: 20%;
  height: 4px;
  border-radius: 2px;
  background-color: rgba(156, 201, 71, 1);
  width: 50%;
}
.openbtn span:nth-of-type(1) {
  top: 30px;
}
.openbtn span:nth-of-type(2) {
  top: 48px;
}
.openbtn span:nth-of-type(3) {
  top: 66px;
}
.openbtn.active span:nth-of-type(1) {
  top: 40px;
  left: 15%;
  transform: translateY(6px) rotate(-45deg);
  width: 60%;
  background-color: #fff;
}
.openbtn.active span:nth-of-type(2) {
  opacity: 0;
}
.openbtn.active span:nth-of-type(3) {
  top: 52px;
  left: 15%;
  transform: translateY(-6px) rotate(45deg);
  width: 60%;
  background-color: #fff;
}
ul.nav-list {
  display: none;
  position: fixed;
  z-index: 999;
  top: -20vw;
  left: -20vw;
  right: 0;
  float: none;
  margin: 0;
  width: 110vw;
  height: auto;
  overflow: hidden;
  background: rgba(136, 191, 44, 0.98);
  transition: all 0.5s;
}
ul.nav-list.panelactive {
  display: block;
  right: 0;
  left: -5vw;
  padding: 30vw 15vw 15vw;
}
.nav-item {
  gap: 0;
}
.nav-item a {
  margin: 0 0 10px 0;
  font-size: 20px;
  color: #fff;
  text-decoration: none;
}
.nav-item a:hover {
  color: rgba(255, 255, 255, 0.8);
  text-decoration-color: rgba(255, 255, 255, 0.8);
  text-underline-offset: 8px;
}
.nav-item.top {
  display: block;
  margin: 0 0 10px 0;
}
.nav-item.company {
  position: relative;
  margin: 0;
  padding: 0;
  height: auto;
}
.nav-item.company {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}
.nav-item.company:hover a {
  color: #fff;
  text-decoration: none;
}
.nav-item.company:hover .init-bottom:after {
  position: absolute;
  top: calc(50% - 2px);
  right: 0;
  content: '';
  display: inline-block;
  width: 8px;
  height: 8px;
  margin: 0;
  border-right: 2px solid rgba(156, 201, 71, 1);
  border-bottom: 2px solid rgba(156, 201, 71, 1);
  -webkit-transform: rotate(225deg);
  transform: rotate(225deg);
}
.init-bottom:after {
  display: none;
}
.mod_dropnavi .mod_dropnavi_child{
  display: block;
  position: static;
  padding: 0!important;
}
.mod_dropnavi .mod_dropnavi_child ul {
  padding:0 16px 10px 16px !important;
  background: transparent;
}
.mod_dropnavi .mod_dropnavi_child ul li {
  position: relative;
  display: block;
  padding: 0;
}
.mod_dropnavi .mod_dropnavi_child ul li:before {
  content: '';
  position: absolute;
  top: 15px;
  display: inline-block;
  width: 16px;
  height: 2px;
  background-color: #fff;
}
.mod_dropnavi .mod_dropnavi_child ul li:before {
  left: -6px;
}
.mod_dropnavi .mod_dropnavi_child ul li a {
  padding:0 0 0 20px !important;
}
.nav-item.instagram {
  display: none;
}
.nav-item.recruit {
  display: block;
  margin: 0 0 10px 0;
}
}
@media (max-width: 768px) {
.header_nav {
  position: fixed;
  width: 94%;
  max-width: initial;
  height: 64px;
  top: 22px;
  left: 50%;
  transform: translateX(calc(-50% - 0px));
  background-color: #ffffff;
  border-radius: 60px;
  border: 1px solid rgba(156, 201, 71, 1);
  box-shadow: 5px 5px 20px rgba(0, 0, 0, 0.2);
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 0;
  z-index: 1000;
}
.nav-logo {
  margin: 6px 0 0 20px;
  width: 204px;
  height: 44px;
  object-fit: contain;
}
.header-instagram {
  display: block;
  position: absolute;
  width: 40px;
  height: auto;
  top: 12px;
  right: 80px;
}
.openbtn {
  display: block;
  position: fixed;
  z-index: 1000;
  top: 0px;
  right: 0px;
  cursor: pointer;
  width: 80px;
  height: 60px;
  text-decoration: none;
  border-radius: 0 32px 32px 0;
}
.openbtn span {
  display: inline-block;
  transition: all .4s;
  position: absolute;
  left: 20%;
  height: 3px;
  border-radius: 2px;
  background-color: rgba(156, 201, 71, 1);
  width: 50%;
}
.openbtn span:nth-of-type(1) {
  top: 18px;
}
.openbtn span:nth-of-type(2) {
  top: 30px;
}
.openbtn span:nth-of-type(3) {
  top: 42px;
}
.openbtn.active span:nth-of-type(1) {
  top: 22px;
  left: 15%;
  transform: translateY(6px) rotate(-45deg);
  width: 60%;
  background-color: #fff;
}
.openbtn.active span:nth-of-type(2) {
  opacity: 0;
}
.openbtn.active span:nth-of-type(3) {
  top: 34px;
  left: 15%;
  transform: translateY(-6px) rotate(45deg);
  width: 60%;
  background-color: #fff;
}
}
.swiper {
  max-width: 100%;
  margin: 0 auto;
  padding: 0;
}
.swiper-slide {
  margin: 0;
}
.swiper-slide img {
  width: 100%;
  height: auto;
}
.swiper-slide {
  transition: all ease-in-out .3s;
  opacity:1;
}



/* フッター */
.footer {
  position: relative;
  width: 100%;
  height: 360px;
  margin: -6px 0 0 0;
  padding: 80px 0;
}
.skew-background {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 360px;
  padding: 0;
  background-color: #dedede;
  z-index:2;
}
#home .footer {
  margin: -106px 0 0 0;
}
#home .life__pattern {
  margin: -150px 0 0 0;
  padding: 0 0 100px 0;
}
.footer-content {
  display: flex;
  justify-content: space-between;
  max-width: 1100px;
  margin: 0 auto;
  padding: 30px 0;
  z-index:3;
}
@media (max-width: 1200px) {
.footer-content {
  display: flex;
  justify-content: space-between;
  width: 90%;
  max-width: initial;
  margin: 0 auto;
  padding: 30px 0;
  z-index:3;
}
}
.footer-info {
  position: relative;
  margin-bottom: 40px;
}
.footer-company-name {
  font-weight: 500;
  color: rgba(51, 51, 51, 1);
  font-size: 24px;
  line-height: 180%;
  margin-top: 16px;
  margin-bottom: 5px;
}
.footer-address {
  color: rgba(51, 51, 51, 1);
  font-size: 16px;
  font-weight: 400;
  line-height: 180%;
  margin-bottom: 16px;
}
.footer-instagram {
  position: absolute;
  width: 44px;
  height: 44px;
  top: 144px;
  left: 284px;
  object-fit: cover;
}
.footer-nav {
  display: flex;
  gap: 40px;
}
.footer-nav-column {
  align-self: stretch;
  padding-left: 24px;
  border-left: 1px solid #ddd;
}
.footer-logo {
  width: 330px;
  height: auto;
  object-fit: contain;
}
.footer-logo {
  background-color: #fff;
  padding: 0;
  align-self: flex-start;
}
.footer-logo img {
  width: 308px;
  height: 66px;
}
.footer .nav_wrap {
  position: relative;
  width: 540px;
  height: auto;
}
.footer .line {
  position: absolute;
  width: 11px;
  height: 1px;
  top: 14px;
  left: 0;
  object-fit: cover;
}
.footer .frame {
  gap: 16px;
  padding: 0px 0px 0px 24px;
  top: 0;
  left: 0;
  border-left-width: 1px;
  border-left-style: solid;
  border-color: rgba(51, 51, 51, 1);
  display: inline-flex;
  flex-direction: column;
  align-items: flex-start;
  position: absolute;
}
.footer .frame-2 {
  gap: 16px;
  padding: 0px 0px 0px 24px;
  top: 0;
  left: 211px;
  border-left-width: 1px;
  border-left-style: solid;
  border-color: rgba(51, 51, 51, 1);
  display: inline-flex;
  flex-direction: column;
  align-items: flex-start;
  position: absolute;
}
.footer .frame-3 {
  gap: 16px;
  padding: 0px 0px 0px 24px;
  top: 0;
  left: 390px;
  border-left-width: 1px;
  border-left-style: solid;
  border-color: rgba(51, 51, 51, 1);
  display: inline-flex;
  flex-direction: column;
  align-items: flex-start;
  position: absolute;
}
@media (max-width: 980px) {
.footer {
  height: 670px;
}
.skew-background {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 670px;
  padding: 0;
  background-color: #dedede;
  z-index:2;
}
.footer-content {
  flex-wrap: wrap;
  display: flex;
  justify-content: space-between;
  width: 90%;
  max-width: initial;
  margin: 0 auto;
  padding: 30px 0;
  z-index:3;
}
.footer .frame, .footer .frame-2, .footer .frame-3 {
  display: inline-block;
  width: 100%;
  margin: 0 0 20px 0;
  position: static;
}
.sub_group01, .sub_group02 {
  display: inline-block;
  width: auto;
  margin: 0 16px 0 0 ;
}
}
@media (max-width: 400px) {
.footer {
  height: 740px;
}
.skew-background {
  height: 740px;
}
.footer .nav_wrap {
  position: relative;
  width: 90%;
  height: auto;
}
}
@media (max-width: 350px) {
.footer {
  height: 720px;
}
.skew-background {
  height: 720px;
}
.footer-logo {
  width: 90%;
  height: auto;
  object-fit: contain;
}
.footer-logo {
  background-color: #fff;
  padding: 0;
  align-self: flex-start;
}
.footer-logo img {
  width: 100%;
  height: auto;
}
}
.footer .sub_group01 {
  position: relative;
  width: 127px;
  height: 29px;
}
.footer .sub_group02 {
  position: relative;
  width: 85px;
  height: 29px;
}
.footer .f_text01 {
  position: relative;
  align-self: stretch;
  color: rgba(51, 51, 51, 1);
  font-size: 16px;
  font-weight: 500;
  line-height: 180%;
}
.footer .f_text02 {
  left: 19px;
  font-size: 16px;
  font-weight: 400;
  line-height: 180%;
  position: absolute;
  top: 0;
  color: rgba(51, 51, 51, 1);
  white-space: nowrap;
}
.footer .frame-3 .f_text01 {
  display: inline-block;
  width: auto;
  margin: 0 16px 0 0 ;
}
.footer-copyright {
  text-align: center;
  color: rgba(51, 51, 51, 1);
  font-weight: 400;
  font-size: 14px;
  letter-spacing: 0;
  line-height: 25.2px;
  margin-top: 0;
}
.footer a {
  color: rgba(51, 51, 51, 1);
  text-decoration: none;
}
.footer a:hover {
  color: rgba(51, 51, 51, 1);
  text-decoration: underline;
  text-decoration-color: rgba(51, 51, 51, 1);
  text-underline-offset: 10px;
}
.footer a:hover img {
  filter: alpha(opacity=70);
  opacity: 0.70;
}
.f_recruit-button, .f_contact {
  display: none;
}
@media (max-width: 980px) {
.f_recruit-button {
  display: block;
  position: fixed;
  width: 110px;
  height: 110px;
  bottom: 100px;
  right: 2%;
  background-color: rgba(156, 201, 71, 1);
  border-radius: 55px;
  border: 1px solid;
  border-color: #ffffff;
  z-index: 100;
}
.f_recruit-button_inner {
  position: relative;
  width: 66px;
  height: 77px;
  top: 16px;
  left: 22px;
}
.f_recruit-text {
  position: absolute;
  top: 48px;
  left: 0;
  font-weight: 500;
  color: #fff;
  font-size: 16px;
  line-height: 180%;
  white-space: nowrap;
}
.f_recruit-icon {
  position: absolute;
  width: 48px;
  height: 48px;
  top: 0;
  left: 8px;
}
.f_contact {
  display: block;
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100%;
  min-height: 70px;
  padding: 16px 0px;
  background-color: rgba(156, 201, 71, 1);
  border-top: 1px solid #fff;
  text-align: center;
  z-index: 99;
}
.f_contact-text {
  padding: 0 10px 0 0;
  color: #fff;
  font-weight: 500;
  font-size: 16px;
  line-height: 180%;
  white-space: nowrap;
}
.footer a.f_contact-number {
  font-family: "Poppins", Helvetica;
  font-weight: 700;
  color: #fff;
  font-size: 32px;
  line-height: 35.2px;
  letter-spacing: 0;
  text-decoration: none;
  white-space: nowrap;
}
.footer a.f_contact-number:hover {
  color: rgba(255, 255, 255, 0.8);
  text-decoration: none;
}
}
.footer a:hover .f_recruit-text {
  filter: alpha(opacity=70);
  opacity: 0.70;
}



/* 共通 */
.ttl01 {
  position: relative;
  margin: 0 0 120px 0;
  padding: 0;
  color: rgba(156, 201, 71, 1);
  font-size: 48px;
  font-weight: 700; 
  line-height: 1.2;
}
.ttl01 .en {
  position: absolute;
  bottom:-36px;
  left: 0;
  color: rgba(156, 201, 71, 1);
  font-size: 24px;
  font-weight: 400;
  word-wrap: break-word;
  line-height: 1;
}
.ttl01:before {
  position: absolute;
  bottom: -64px;
  left: 0;
  width: 40px;
  height: 2px;
  content: '';
  background: rgba(156, 201, 71, 1);
}
.ttl01.white {
  position: relative;
  margin: 0 0 120px 0;
  color: #fff;
  font-size: 48px;
  font-weight: 700; 
  line-height: 1.2;
}
.ttl01.white .en {
  position: absolute;
  bottom:-36px;
  left: 0;
  color: #fff;
  font-size: 24px;
  font-weight: 400;
  word-wrap: break-word;
  line-height: 1;
}
.ttl01.white:before {
  position: absolute;
  bottom: -64px;
  left: 0;
  width: 40px;
  height: 2px;
  content: '';
  background: #fff;
}
@media (max-width: 768px) {
.ttl01 {
  margin: 0 0 100px 0;
  font-size: 32px;
}
.ttl01 .en {
  font-size: 24px;
}
.ttl01.white {
  margin: 0 0 100px 0;
  font-size: 32px;
}
.ttl01.white .en {
  font-size: 24px;
}
}
main {
  padding: 96px 0;
}
#home main {
  padding: 96px 0 0;
}
@media (max-width: 980px) {
main {
  padding: 96px 0 96px;
}
}
.page-container01 {
  max-width: 1000px;
  margin: 0 auto 160px;
}
.page-container01.nomg {
  max-width: 1000px;
  margin: 0 auto;
}
.page-container02 {
  max-width: 1440px;
  margin: 0 auto 160px;
}
@media (max-width: 1200px) {
.page-container01 {
  width: 90%;
  max-width: initial;
  margin: 0 5% 120px;
}
.page-container01.nomg {
  width: 90%;
  max-width: initial;
  margin: 0 5%;
}
.page-container02 {
  max-width: initial;
}
}
@media (max-width: 980px) {
.page-container01 {
  margin: 0 auto 120px;
}
.page-container02 {
  margin: 0 auto 120px;
}
}
@media (max-width: 768px) {
.page-container01 {
  margin: 0 auto 90px;
}
.page-container02 {
  margin: 0 auto 90px;
}
}
.wrap {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
}
.img_block {
  order: 2;
  margin: 0 0 30px 0;
}
.img_block img {
  width: 100%;
  height: auto;
}
.img_block img.max360 {
  max-width: 360px;
}
.img_block img.max540 {
  max-width: 540px;
}
.text_block {
  color: rgba(51, 51, 51, 1);
  font-weight: 400;
  font-size: 16px;
  line-height: 180%;
  font-family: "Noto Sans JP", Helvetica;
}
.text_block.wide57 {
  flex-basis: 57%;
}
.text_block img.max360 {
  display: none;
}
.text_block img.max540 {
  display: none;
}
.text_block p {
  margin-bottom: 1rem;
}
.img_block02 img {
  width: 100%;
  max-width: 540px;
  height: auto;
}
.text_block02 {
  flex-basis: 57%;
  color: rgba(51, 51, 51, 1);
  font-weight: 400;
  font-size: 16px;
  line-height: 180%;
  font-family: "Noto Sans JP", Helvetica;
}
.text_block02 p {
  margin-bottom: 1rem;
}
@media (max-width: 768px) {
.text_block {
  font-size: 14px;
}
}
@media (max-width: 980px) {
.wrap {
  display: flex;
  flex-direction: column-reverse;
}
.img_block.efforts {
  display: none;
}
.text_block img {
  width: 100%;
  height: auto;
}
.text_block img.max360 {
  display: block;
  max-width: 360px;
  margin: 0 0 30px 0;
}
.text_block img.max540 {
  display: block;
  max-width: 540px;
  margin: 0 0 30px 0;
}
}
.box {
  display: flex;
  align-items: center;
  justify-content: flex-end;
}
.box:nth-child(odd) {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -webkit-flex-direction: row-reverse;
  -ms-flex-direction: row-reverse;
  flex-direction: row-reverse;
}
.section-title {
  color: rgba(156, 201, 71, 1);
  font-weight: 500;
  font-size: 32px;
  line-height: 140%;
  margin-bottom: 20px;
}
.section-description {
  color: rgba(51, 51, 51, 1);
  font-weight: 400;
  font-size: 16px;
  line-height: 180%;
  margin-bottom: 40px;
}
@media (max-width: 768px) {
.section-title {
  font-size: 24px;
}
.section-description {
  font-size: 14px;
}
}
.more_link a {
  display: flex;
  width: fit-content;
  flex-direction: column;
  align-items: center;
  background-color: #fff;
  margin: 10px auto 10px;
  padding: 8px 24px;
  color: rgba(156, 201, 71, 1);
  font-weight: 500;
  border-radius: 40px;
  border: 1px solid rgba(156, 201, 71, 1);
  text-decoration: none;
}
.more_link.arr {
  position: relative;
  width: fit-content;
  margin: 60px auto 30px;
}
.more_link.arr a {
  padding: 8px 40px 8px 24px;
}
.more_link.arr:after {
  position: absolute;
  top: calc(50% - 6px);
  right: 20px;
  content: '';
  display: inline-block;
  width: 8px;
  height: 8px;
  margin: 0;
  border-right: 2px solid rgba(156, 201, 71, 1);
  border-bottom: 2px solid rgba(156, 201, 71, 1);
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
.more_link.arr a:hover {
  background-color: rgba(241, 188, 46, 1);
  padding: 8px 40px 8px 24px;
  color: #fff;
  box-shadow: 0px 0px 6px 0px rgba(106, 161, 31, 1);
}
.more_link.arr:hover:after {
  border-right: 2px solid #fff;
  border-bottom: 2px solid #fff;
}
.more_link02.arr a {
  display: flex;
  width: fit-content;
  flex-direction: column;
  align-items: flex-start;
  background-color: #fff;
  padding: 8px 40px 8px 24px;
  color: rgba(156, 201, 71, 1);
  font-weight: 500;
  border-radius: 40px;
  border: 1px solid;
  border-color: #9cc947;
  text-decoration: none;
}
.more_link02.arr {
  position: relative;
  display: flex;
  width: fit-content;
  margin: 40px 0 10px;
}
.more_link02.arr.center {
  margin: 40px auto 10px;
}
@media (max-width: 768px) {
.more_link.arr {
  position: relative;
  width: fit-content;
  margin: 45px auto 20px;
}
.more_link02.arr.center {
  margin: 40px 0 10px;
}
}
.more_link02.arr:after {
  position: absolute;
  top: calc(50% - 4px);
  right: 20px;
  content: '';
  display: inline-block;
  width: 8px;
  height: 8px;
  margin: 0;
  border-right: 2px solid rgba(156, 201, 71, 1);
  border-bottom: 2px solid rgba(156, 201, 71, 1);
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
}
.more_link02.arr a:hover {
  background-color: rgba(241, 188, 46, 1);
  padding: 8px 40px 8px 24px;
  color: #fff;
  box-shadow: 0px 0px 6px 0px rgba(106, 161, 31, 1);
}
.more_link02.arr:hover:after {
  border-right: 2px solid #fff;
  border-bottom: 2px solid #fff;
}
.visually-hidden {
  display: none;
}
.page_scroll > a {
  display: block; 
  padding-top: 180px; 
  margin-top: -180px;
}
.page_scroll02 > a {
  display: block; 
  padding-top: 120px; 
  margin-top: -120px;
}
@media (max-width: 768px) {
.page_scroll > a {
  display: block; 
  padding-top: 120px; 
  margin-top: -120px;
}
.page_scroll02 > a {
  display: block; 
  padding-top: 75px; 
  margin-top: -75px;
}
}



/* トップ */
#home .hero {
  position: relative;
  width: 100%;
  max-width: 1340px;
  height: 980px;
  margin: 0 auto;
}
/*
#home .slider {
  height: 980px;
}
*/
#home .swiper {
  position: absolute;
  width: 100%;
  max-width: 1320px;
  height: 980px;
  top: 0;
  left: 0;
}

#home .hero img {
  width: 100%;
  max-width: 1220px;
  height: auto;
  object-fit: cover;
  position: absolute;
  top: 0;
  left: 110px;
}
#home .hero-content {
  position: absolute;
  top: 305px;
  left: 0;
  z-index: 10;
}
#home .hero-title {
  color: rgba(156, 201, 71, 1);
  font-family: "Noto Sans JP", Helvetica;
  font-weight: 700;
  font-size: 80px;
  line-height: 140%;
  font-style: normal;
  margin-bottom: 10px;
}
#home .hero-subtitle {
  color: rgba(156, 201, 71, 1);
  font-family: "Poppins", Helvetica;
  font-weight: 400;
  font-size: 40px;
  line-height: 110%;
  font-style: normal;
}

@media (max-width: 1440px) {
#home .swiper {
  position: absolute;
  width: 96%;
  max-width: initial;
  height: 980px;
  top: 0;
  left: 2%;
}
#home .hero {
  position: relative;
  width: 96%;
  max-width: initial;
  height: 980px;
  margin: 0 auto;
}
#home .hero img {
  width: 100%;
  max-width: initial;
  height: auto;
  object-fit: cover;
  position: absolute;
  top: 0;
  left: 110px;
}
}
@media (max-width: 1200px) {
#home .swiper {
  position: absolute;
  width: 100%;
  height: 80vh;
  top: 0;
  left: 0;
}
#home .hero {
  width: 100%;
  height: 100vh;
}
#home .hero img {
  width: 100%;
  max-width: initial;
  height: 80vh;
  position: absolute;
  top: 0;
  left: 0;
}
#home .hero-content {
  position: absolute;
  top: 305px;
  left: 4%;
}
#home .hero-title {
  color: rgba(156, 201, 71, 1);
  font-family: "Noto Sans JP", Helvetica;
  font-weight: 700;
  font-size: 54px;
  line-height: 140%;
  font-style: normal;
  margin-bottom: 5px;
}
#home .hero-subtitle {
  color: rgba(156, 201, 71, 1);
  font-family: "Poppins", Helvetica;
  font-weight: 400;
  font-size: 27px;
  line-height: 110%;
  font-style: normal;
}
}
@media (max-width: 768px) {
#home .hero-content {
  position: absolute;
  top: 240px;
  left: 4%;
}
#home .hero img {
  width: 100%;
  max-width: initial;
  height: 80vh;
  position: absolute;
  top: 0;
  left: 0;
  object-fit: cover;
  clip-path: polygon(0 0, 100% 0, 100% 85%, 0 100%);
}


}
@media (max-width: 550px) {
#home .hero-title {
  color: rgba(156, 201, 71, 1);
  font-family: "Noto Sans JP", Helvetica;
  font-weight: 700;
  font-size: 10vw;
  line-height: 140%;
  font-style: normal;
  margin-bottom: 5px;
}
#home .hero-subtitle {
  color: rgba(156, 201, 71, 1);
  font-family: "Poppins", Helvetica;
  font-weight: 400;
  font-size: 5vw;
  line-height: 110%;
  font-style: normal;
}
}
@media (max-width: 350px) {
#home .hero-content {
  position: absolute;
  top: 120px;
  left: 4%;
}
}
.news {
  position: relative;
  width: 100%;
  max-width: 1440px;
  margin: 0 auto;
  z-index: 10;
}
.news_inner {
  background-color: #ffffffcc;
  border: 1px solid #9cc947;
  box-shadow: 10px 10px 20px #00000033;
  width: 660px;
  margin: -300px 0 0 -50px;
  padding: 48px;
}
.news-container {
  display: flex;
  flex-direction: column;
  gap: 24px;
}
.news-list {
  display: flex;
  flex-direction: column;
  gap: 24px;
}
.news-item {
  display: flex;
  align-items: start;
  gap: 16px;
}
.news-date {
  color: rgba(51, 51, 51, 1);
  font-weight: 400;
  font-size: 16px;
}
.news-category {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0px 10px;
  background: rgba(156, 201, 71, 1);
  border-radius: 16px;
  color: rgba(51, 51, 51, 1);
  font-weight: 400;
  font-size: 14px;
  white-space: nowrap;
  gap: 8px;
  flex: 0 0 auto;
}
.news-title {
  color: rgba(51, 51, 51, 1);
  font-weight: 400;
  font-size: 16px;
  gap: 8px;
  flex: 0 0 auto;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  max-width: 370px;
}
.news-title a {
  color: rgba(51, 51, 51, 1);
  text-decoration: none;
}
.news-title a:hover {
  color: rgba(51, 51, 51, 0.75);
  text-decoration: underline;
  text-decoration-color: rgba(51, 51, 51, 1);
  text-underline-offset: 10px;
}
.more-link {
  position: relative;
  display: flex;
  justify-content: flex-end;
  text-decoration: none;
  padding: 0 24px 0 0;
  color: rgba(51, 51, 51, 1);
  font-size: 16px;
}
.more-link:hover {
  color: rgba(51, 51, 51, 0.75);
}
.more-link:after {
  position: absolute;
  top: calc(50% - 4px);
  right: 4px;
  content: '';
  display: inline-block;
  width: 8px;
  height: 8px;
  margin: 0;
  border-right: 2px solid rgba(51, 51, 51, 1);
  border-bottom: 2px solid rgba(51, 51, 51, 1);
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
}
.more-link:hover:after {
  border-right: 2px solid rgba(51, 51, 51, 0.75);
  border-bottom: 2px solid rgba(51, 51, 51, 0.75);
}
@media (max-width: 1600px) {
.news_inner {
  background-color: #ffffffcc;
  border: 1px solid #9cc947;
  box-shadow: 10px 10px 20px #00000033;
  width: 660px;
  margin: -300px 0 0 4%;
  padding: 48px;
}
}
@media (max-width: 1200px) {
.news_inner {
  background-color: #ffffffcc;
  border: 1px solid #9cc947;
  box-shadow: 10px 10px 20px #00000033;
  width: 660px;
  margin: -400px 0 0 4%;
  padding: 48px;
}
}
@media (max-width: 768px) {
.news {
  position: relative;
  width: 100%;
  max-width: initial;
  margin: 0 auto;
}
.news_inner {
  background-color: #ffffffcc;
  border: 1px solid #9cc947;
  box-shadow: 10px 10px 20px #00000033;
  width: 92%;
  margin: -66vw 0 0 4%;
  padding: 32px;
  overflow: hidden;
}
.news-list {
  width: 100%;
}
.news-item {
  flex-direction: column;
  width: 100%;
}
.news-title {
  width: 100%;
  max-width: initial;
}
}
.top_about {
  display: flex;
  justify-content: center;
  align-items: center;
  width: calc(100% - 196px);
  height: 1600px;
  background-color: #fff;
  margin: -1200px auto 0 120px;
}
.top_about .top_about_photo{
  display: flex;
  align-items: flex-start;
  flex-direction: column;
  flex: 0 0 42%;
  margin: 1400px auto 0 150px;
}
.top_about_gallery {
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: center;
  justify-content: center;
  -webkit-align-items: center;
  align-items: center;
  z-index:2;
  margin: 0 -150px 0 0;
}
.top_about_gallery li:nth-child(1) {
  width: 30%;
  margin: 200px -0.5% 0;
}
.top_about_gallery li:nth-child(2) {
  width: 30%;
  margin: 100px -0.5% 0;
}
.top_about_gallery li:nth-child(3) {
  width: 30%;
  margin: 0 -0.5%;
}
.top_about_gallery img {
  width: 100%;
  height: auto;
}
.top_about .top_about_text {
  width: auto;
  height: 100%;
  flex: 0 0 58%;
  background: rgba(156, 201, 71, 1);
  padding: 1050px 0 0 150px;
}
.top_about .top_about_text p {
  width: 320px;
  color: #fff;
  font-size: 16px;
  font-weight: 400;
  line-height: 180%;
}
.top_about_bg {
  background-image: url(./image/top_img09.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  width: 100%;
  height: 480px;
  margin-bottom: 160px;
}
@media (max-width: 1200px) {
.top_about {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: auto;
  background-color: #fff;
  margin: 0 auto;
}
.top_about .top_about_photo{
  display: flex;
  align-items: flex-start;
  flex-direction: column;
  flex: 0 0 100%;
  width: 100%;
  margin: 0 auto;
}
.top_about_bg {
  margin-bottom: 120px;
}
.top_about_gallery {
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: center;
  justify-content: center;
  -webkit-align-items: center;
  align-items: center;
  max-width: 800px;
  z-index:2;
  margin: 0 auto;
}
.top_about_gallery li:nth-child(1) {
  width: 30%;
  margin: 100px -0.5% 0;
}
.top_about_gallery li:nth-child(2) {
  width: 30%;
  margin: 50px -0.5% 0;
}
.top_about_gallery li:nth-child(3) {
  width: 30%;
  margin: 0 -0.5%;
}
.top_about .top_about_text {
  width: 100%;
  height: 100%;
  flex: 0 0 100%;
  background: rgba(156, 201, 71, 1);
  margin: -400px 0 0 0;
  padding: 445px 5% 90px;
}
.top_about .top_about_text p {
  width: auto;
}
.top_about .top_about_text p .sp {
  display: none;
}
}
@media (max-width: 800px) {
.top_about_gallery {
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: center;
  justify-content: center;
  -webkit-align-items: center;
  align-items: center;
  width: 100%;
  max-width: initial;
  z-index:2;
  margin: 0 auto;
}
.top_about .top_about_text {
  position: absolute;
  top: calc(50% + 30px);
  width: 100%;
  height: auto;
  flex: 0 0 100%;
  background: rgba(156, 201, 71, 1);
  margin: 0 0 0 0;
  padding: 50% 5% 75px;
}
.top_about_bg {
  background-image: url(./image/top_img09_sp.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  width: 100%;
  max-height: 40vh;
  margin-top: 450px;
  margin-bottom: 120px;
}
}
@media (max-width: 768px) {
.top_about_bg {
  margin-bottom: 90px;
}
}
@media (max-width: 600px) {
.top_about_bg {
  margin-top: 430px;
}
}
@media (max-width: 350px) {
.top_about_bg {
  margin-top: 520px;
}
}
.top_works_gallery {
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: center;
  justify-content: center;
  -webkit-align-items: center;
  align-items: center;
  margin: 0 auto;
  gap: 0 40px;
}
.top_works_gallery li {
  width: calc(100% / 3)
}
.top_works_gallery img {
  width: 100%;
  height: auto;
}
.top_works_gallery h3 {
  font-size: 24px;
  font-weight: 500;
  line-height: 180%;
  margin: 10px 0 5px;
}
.top_works_gallery p {
  font-size: 16px;
}
@media screen and (min-width: 769px){
.wrapper{
  flex-wrap: wrap;
}
}
@media screen and (max-width:768px){
.top_works_gallery {
  justify-content: flex-start;
  align-items: flex-start;
  gap: 0 30px;
}
.wrapper{
  flex-wrap: nowrap;
  overflow-x: scroll;
  padding: 0 0 10px 0;
}
.top_works_gallery li {
  width: 100%;
  min-width: 70%;
}
}
.top_recruit {
  position: relative;
  width: 100%;
  height: 480px;
  background: rgba(156, 201, 71, 1);
  margin-top: 320px;
  margin-bottom: 0;
}
.top_recruit_content {
  position: relative;
  display: flex;
  align-items: center;
  max-width: 1000px;
  height: 100%;
  margin: 0 auto;
  padding: 0;
}
.top_recruit_photo {
  width: 540px;
  height: 540px;
  object-fit: contain;
  background-color: #fff;
  margin-top: -180px;
  margin-right: 64px;
  padding: 0;
}
.top_recruit_text {
  color: #fff;
}
.top_recruit_text h2 {
  font-size: 24px;
  font-weight: 500;
  line-height: 180%;
  margin-bottom: 20px;
}
.top_recruit_text p {
  color: #fff;
  font-size: 16px;
  font-weight: 400;
  line-height: 180%;
}
@media (max-width: 768px) {
.news-date {
  font-size: 14px;
}
.news-category {
  font-size: 13px;
}
.news-title {
  font-size: 14px;
}
.news-item {
  gap: 8px;
}
.more-link {
  font-size: 14px;
}
.top_about .top_about_text p {
  width: auto;
  font-size: 14px;
}
.top_works_gallery p {
  font-size: 14px;
}
.top_recruit_text p {
  font-size: 14px;
}
}
@media (max-width: 980px) {
.top_recruit {
  width: 100%;
  max-width: initial;
  height: auto;
  margin: 360px 0 0;
}
.top_recruit_content {
  position: relative;
  display: flex;
  align-items: baseline;
  flex-direction: column;
  width: 90%;
  max-width: initial;
  height: 100%;
  margin: 0 auto;
  padding: 0;
}
.top_recruit_photo{
  width: 100%;
  max-width: 480px;
  height: auto;
  object-fit: contain;
  background-color: #fff;
  margin-top: -240px;
  margin-left: auto;
  margin-right: auto;
  padding: 0;
}
.top_recruit_text {
  display: block;
  width: 100%;
  padding: 45px 0 90px;
}
}
.top_contact {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  max-width: 1200px;
  height: 800px;
  background-color: #fff;
  margin: 0 auto;
  padding: 0 0 0 200px;
}
.top_contact .top_contact_text {
  display: flex;
  align-items: flex-start;
  flex-direction: column;
  flex: 0 0 500px;
}
.top_contact .top_contact_bg {
  width: 700px;
  height: 100%;
  flex: 0 0 700px;
  background-image: url(./image/top_img10.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
}
.top_contact .tcb_wrap {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 8px;
  margin: 0 0 40px 0;
  padding: 24px 0;
  position: relative;
  align-self: stretch;
  width: 100%;
  max-width: 430px;
  flex: 0 0 auto;
  background-color: rgba(156, 201, 71, 1);
}
.top_contact h3 {
  top: 0;
  color: #fff;
  font-size: 24px;
  font-weight: 500;
  text-align: center;
  line-height: 180%;
}
.top_contact .top_contact_btn a {
  display: flex;
  width: fit-content;
  flex-direction: column;
  align-items: center;
  background-color: #fff;
  margin: 10px auto 10px;
  padding: 8px 24px;
  color: rgba(156, 201, 71, 1);
  font-weight: 500;
  border-radius: 40px;
  border: 1px solid;
  border-color: #9cc947;
  text-decoration: none;
}
.top_contact .top_contact_btn a:hover {
  background-color: rgba(241, 188, 46, 1);
  padding: 8px 40px 8px 24px;
  color: #fff;
  box-shadow: 0px 0px 6px 0px rgba(106, 161, 31, 1);
}
.top_contact .top_contact_btn.arr {
  position: relative;
}
.top_contact .top_contact_btn.arr a {
  padding: 8px 40px 8px 24px;
}
.top_contact .top_contact_btn.arr:after {
  position: absolute;
  top: calc(50% - 4px);
  right: 20px;
  content: '';
  display: inline-block;
  width: 8px;
  height: 8px;
  margin: 0;
  border-right: 2px solid rgba(156, 201, 71, 1);
  border-bottom: 2px solid rgba(156, 201, 71, 1);
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
}
.top_contact .top_contact_btn.arr a:hover {
  background-color: rgba(241, 188, 46, 1);
  padding: 8px 40px 8px 24px;
  color: #fff;
  box-shadow: 0px 0px 6px 0px rgba(106, 161, 31, 1);
}
.top_contact .top_contact_btn.arr:hover:after {
  border-right: 2px solid #fff;
  border-bottom: 2px solid #fff;
}
@media (max-width: 1400px) {
.top_contact {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  width: 100%;
  max-width: initial;
  height: 600px;
  background-color: #fff;
  margin: 0 auto 320px;
  padding: 0 0 0 0;
}
.top_contact_text h2.ttl01 {
  flex-basis:100%;
}
.top_contact .top_contact_text {
  flex: 0 0 1000px;
  display: flex;
  flex-flow: row wrap;
  align-items: center;
  width: 1000px;
  margin: 0 auto;
  padding: 160px 0 0;
}
.top_contact .top_contact_bg {
  flex: 0 0 100%;
  width: 100%;
  height: 100%;
  margin: 0;
  background-image: url(./image/top_img10.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
}
.top_contact .tcb_wrap {
  margin: 0 24px 60px 0;
}
}
@media (max-width: 1200px) {
.top_contact {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  width: 100%;
  max-width: initial;
  height: 850px;
  background-color: #fff;
  margin: 0 auto 200px;
  padding: 0 0 400px;
}
.top_contact .top_contact_text {
  flex: 0 0 100%;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  width: 90%;
  margin: -300px 0 0;
  padding: 420px 5% 0;
}
.top_contact .top_contact_bg {
  flex: 0 0 100%;
  width: 100%;
  height: 600px;
  margin: 15px 0 0 0;
  background-image: url(./image/top_img10_sp.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: 50% 50%;
}
.top_contact .tcb_wrap {
  margin: 0 0 40px 0;
}
}
@media (max-width: 768px) {
.top_contact .top_contact_text {
  margin: -300px 0 0;
  padding: 390px 5% 0;
}
}
@media (max-width: 600px) {
.top_contact .top_contact_bg {
  flex: 0 0 100%;
  width: 100%;
  height: 600px;
  margin: 15px 0 0 0;
  background-image: url(./image/top_img10_sp.jpg);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: 50% 0%;
}
}


/* 下層ヘッダー */
.hero {
  position: relative;
  width: 100%;
  max-width: 1340px;
  height: 544px;
  margin: 0 auto;
}
.hero-image {
  width: 100%;
  max-width: 1220px;
  height: 544px;
  position: absolute;
  top: 0;
  left: 110px;
  object-fit: cover;
  clip-path: polygon(0 0, 100% 0, 100% 70%, 0 100%);
}
.hero-image_bg {
  width: 100%;
  height: 544px;
}
.hero-image_bg.about {
  background-image: url(./image/about_pc.jpg);
  background-repeat: no-repeat;
  background-position: 50% 50%;
  background-size: cover;
}
.hero-image_bg.efforts {
  background-image: url(./image/efforts_pc.jpg);
  background-repeat: no-repeat;
  background-position: 50% 50%;
  background-size: cover;
}
.hero-image_bg.works {
  background-image: url(./image/works_pc.jpg);
  background-repeat: no-repeat;
  background-position: 50% 50%;
  background-size: cover;
}
.hero-image_bg.news {
  background-image: url(./image/news_pc.jpg);
  background-repeat: no-repeat;
  background-position: 50% 50%;
  background-size: cover;
}
.hero-image_bg.contact {
  background-image: url(./image/contact_pc.jpg);
  background-repeat: no-repeat;
  background-position: 50% 50%;
  background-size: cover;
}
.hero-image_bg.recruit {
  background-image: url(./image/recruit_pc.jpg);
  background-repeat: no-repeat;
  background-position: 50% 50%;
  background-size: cover;
}
 .hero-text {
  position: absolute;
  bottom: 80px;
  left: 0;
}
.hero-title {
  color: rgba(156, 201, 71, 1);
  font-family: "Noto Sans JP", Helvetica;
  font-weight: 700;
  font-size: 80px;
  line-height: 140%;
  font-style: normal;
  margin-bottom: 10px;
}
.hero-subtitle {
  padding: 0 0 0 5px;
  color: rgba(156, 201, 71, 1);
  font-family: "Poppins", Helvetica;
  font-weight: 400;
  font-size: 40px;
  line-height: 110%;
  font-style: normal;
}
@media (max-width: 1440px) {
.hero-text {
  position: absolute;
  bottom: 80px;
  left: 4%;
}
}
@media (max-width: 980px) {
.hero-image {
  max-width: 1220px;
  height: 544px;
  object-fit: cover;
  position: absolute;
  top: 0;
  left: 0;
  clip-path: polygon(0 0, 100% 0, 100% 75%, 0 100%);
}
.hero-text {
  position: absolute;
  bottom: 110px;
  left: 4%;
}
.hero-title {
  color: rgba(156, 201, 71, 1);
  font-family: "Noto Sans JP", Helvetica;
  font-weight: 700;
  font-size: 54px;
  line-height: 140%;
  font-style: normal;
  margin-bottom: 5px;
}
.hero-subtitle {
  padding: 0 0 0 5px;
  color: rgba(156, 201, 71, 1);
  font-family: "Poppins", Helvetica;
  font-weight: 400;
  font-size: 27px;
  line-height: 110%;
  font-style: normal;
}
}
@media (max-width: 768px) {
.hero {
  position: relative;
  width: 100%;
  max-width: initial;
  height: 480px;
  margin: 0 auto;
}
.hero-image {
  width: 100%;
  max-width: initial;
  height: 480px;
  position: absolute;
  top: 0;
  left: 0;
  clip-path: polygon(0 0, 100% 0, 100% 80%, 0 100%);
}
.hero-image_bg {
  width: 100%;
  height: 480px;
}
.hero-image_bg.about {
  background-image: url(./image/about_sp.jpg);
  background-repeat: no-repeat;
  background-position: 50% 100%;
  background-size: cover;
}
.hero-image_bg.efforts {
  background-image: url(./image/efforts_sp.jpg);
  background-repeat: no-repeat;
  background-position: 50% 100%;
  background-size: cover;
}
.hero-image_bg.works {
  background-image: url(./image/works_sp.jpg);
  background-repeat: no-repeat;
  background-position: 50% 100%;
  background-size: cover;
}
.hero-image_bg.news {
  background-image: url(./image/news_sp.jpg);
  background-repeat: no-repeat;
  background-position: 50% 100%;
  background-size: cover;
}
.hero-image_bg.contact {
  background-image: url(./image/contact_sp.jpg);
  background-repeat: no-repeat;
  background-position: 50% 100%;
  background-size: cover;
}
.hero-image_bg.recruit {
  background-image: url(./image/recruit_sp.jpg);
  background-repeat: no-repeat;
  background-position: 50% 100%;
  background-size: cover;
}
.hero-title {
  font-size: 40px;
}
.hero-subtitle {
  font-size: 20px;
}
}
@media (max-width: 480px) {
.hero-title {
  color: rgba(156, 201, 71, 1);
  font-family: "Noto Sans JP", Helvetica;
  font-weight: 700;
  font-size: 11vw;
  line-height: 140%;
  font-style: normal;
  margin-bottom: 5px;
}
.hero-subtitle {
  padding: 0 0 0 5px;
  color: rgba(156, 201, 71, 1);
  font-family: "Poppins", Helvetica;
  font-weight: 400;
  font-size: 6vw;
  line-height: 110%;
  font-style: normal;
}
.hero, .hero-image, .hero-image_bg.about, .hero-image_bg.efforts, .hero-image_bg.works, .hero-image_bg.news, .hero-image_bg.contact, .hero-image_bg.recruit {
  height: 400px;
}
}


/* Inokoについて */
.company-name {
  position: relative;
  width: 100%;
  height: 480px;
  background-image: url(./image/company_name.jpg);
  background-size: cover;
  margin-bottom: 160px;
}
.company-name::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: linear-gradient(90deg,rgba(0, 0, 0, 0.1) 0%,rgba(0, 0, 0, 0.8) 100%);
}
.company-name-content {
  position: relative;
  display: flex;
  align-items: center;
  max-width: 1000px;
  height: 100%;
  margin: 0 auto;
  padding: 0 20px;
}
.company-logo {
  width: 400px;
  height: 400px;
  object-fit: contain;
  background-color: #fff;
  box-shadow: 0px 0px 20px rgba(0, 0, 0, 0.25);
  margin-top: -180px;
  margin-right: 64px;
  padding: 30px;
}
.company-name-text {
  color: #fff;
}
.company-name-text h2 {
  font-size: 24px;
  font-weight: 500;
  line-height: 180%;
  margin-bottom: 20px;
}
.company-name-text p {
  font-size: 16px;
  font-weight: 400;
  line-height: 180%;
}
.company-info {
  max-width: 1000px;
  margin: 0 auto;
}
.company-info-item {
  display: flex;
  padding: 32px 0 16px;
  color: rgba(51, 51, 51, 1);
  border-bottom: 1px solid rgba(51, 51, 51, 1);
}
.company-info-item dt {
  width: 200px;
  font-size: 18px;
  font-weight: 500;
  line-height: 180%;
  letter-spacing: 0;
  font-style: normal;
  white-space: nowrap;
}
.company-info-item dd {
  flex: 1;
  font-size: 16px;
  font-weight: 400;
  line-height: 180%;
  letter-spacing: 0;
  font-style: normal;
}
.google_map {
  margin: 60px auto 0;
}
@media (max-width: 1100px) {
.company-info {
  width: 90%;
  max-width: initial;
  margin: 0 5%;
}
}
@media (max-width: 980px) {
.company-name {
  position: relative;
  width: 100%;
  height: auto;
  background-image: url(./image/company_name.jpg);
  background-size: cover;
  margin-top: 160px;
  margin-bottom: 120px;
}
.company-name-content {
  position: relative;
  display: flex;
  align-items: baseline;
  flex-direction: column;
  width: 90%;
  max-width: initial;
  height: 100%;
  margin: 0 auto;
  padding: 0 20px;
}
.company-logo {
  width: 300px;
  height: 300px;
  object-fit: contain;
  background-color: #fff;
  box-shadow: 0px 0px 20px rgba(0, 0, 0, 0.25);
  margin-top: -120px;
  margin-left: auto;
  margin-right: auto;
  padding: 30px;
}
.company-name-text {
  display: block;
  width: 100%;
  padding: 45px 0 90px;
}
}
@media (max-width: 768px) {
.company-name {
  position: relative;
  width: 100%;
  height: auto;
  background-image: url(./image/company_name_sp.jpg);
  background-size: cover;
  margin-bottom: 90px;
}
.company-name::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: linear-gradient(180deg,rgba(0, 0, 0, 0.1) 0%,rgba(0, 0, 0, 0.8) 100%);
}
.company-info-item {
  flex-direction: column;
}
.company-name-text p {
  font-size: 14px;
}
.company-info-item dt {
  font-size: 16px;
}
.company-info-item dd {
  font-size: 14px;
}
}
@media (max-width: 480px) {
.message .img_block {
  display: block;
  margin-left: auto;
  margin-right: auto;
}
.message .img_block img.max360 {
  max-width: 240px;
}
}



/* 私たちの取り組み */
.page-container01.treatment {
  max-width: 1000px;
  margin: 0 auto 160px;
}
.page-container01.treatment .text_block {
  flex-basis: calc(57% + 180px);
  padding: 0 0 0 100px;
}
.page-container01.treatment .img_block {
  margin-left: -160px;
}
@media (max-width: 980px) {
.page-container01.treatment {
  width: 90%;
  max-width: initial;
  margin: 0 auto 120px;
}
.page-container01.treatment .box {
  flex-direction: column-reverse;
  align-items: start;
}
.page-container01.treatment .text_block {
  flex-basis: 100%;
  padding: 0;
}
.page-container01.treatment .img_block {
  flex-basis: 100%;
  margin-left: 0;
}
.page-container01.treatment .img_block img.max540 {
  max-width: 360px;
}
}
.security-policy {
  border: 1px solid #333333;
  padding: 64px;
}
.policy-title {
  color: rgba(51, 51, 51, 1);
  font-family: "Noto Sans JP", Helvetica;
  font-size: 24px;
  font-weight: 500;
  line-height: 180%;
  margin-bottom: 24px;
}
.policy-content {
  color: rgba(51, 51, 51, 1);
  font-family: "Noto Sans JP", Helvetica;
  font-size: 16px;
  font-weight: 400;
  line-height: 180%;
}
.policy-content h3 {
  margin: 0 0 1em 0;
}
.policy-content ol li {
  list-style-type: decimal;
  margin: 0 0 1em 1em;
}
.policy-content p {
  margin: 0 0 1.25em 0;
}
.policy-content a {
  color: rgba(51, 51, 51, 1);
}
.policy-content a:hover {
  color: rgba(51, 51, 51, 0.8);
}
.privacy-content a {
  color: rgba(51, 51, 51, 1);
}
.privacy-content a:hover {
  color: rgba(51, 51, 51, 0.8);
}
@media (max-width: 768px) {
.security-policy {
  border: 1px solid #333333;
  padding: 40px 32px;
}
.policy-content {
  font-size: 14px;
}
}



/* 事業内容 */
.image-gallery {
  display: flex;
  flex-wrap: wrap;
  gap: 24px 24px;
  margin-bottom: 40px;
}
.image-gallery img {
  width: calc(50% - 12px);
  height: auto;
  object-fit: cover;
}
.service-list {
  display: flex;
  flex-wrap: wrap;
  gap: 32px;
  list-style: none;
}
.service-list li {
  display: inline-block;
  width: fit-content;
}
@media (max-width: 980px) {
.service-list {
  display: block;
}
.service-list li {
  display: inline-block;
  margin: 0 32px 16px 0;
}
}
@media (max-width: 600px) {
.service-list li {
  display: block;
  margin: 0 auto 8px;
}
}
.service-item {
  position: relative;
  padding: 8px 24px;
  border-bottom: 1px solid rgba(51, 51, 51, 1);
}
.service-item:after {
  position: absolute;
  top: calc(50% - 8px);
  right: 10px;
  content: '';
  display: inline-block;
  width: 8px;
  height: 8px;
  margin: 0;
  border-right: 2px solid rgba(51, 51, 51, 1);
  border-bottom: 2px solid rgba(51, 51, 51, 1);
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
.service-item a:hover {
  color: rgba(51, 51, 51, 0.8);
  text-decoration: none;
}
.service-item:hover:after {
  border-right: 2px solid rgba(51, 51, 51, 0.8);
  border-bottom: 2px solid rgba(51, 51, 51, 0.8);
}
.service-name {
  font-size: 16px;
  font-weight: 500;
  line-height: 180%;
  font-feature-settings: "palt";
}
.service-name a {
  padding: 0 20px 0 0;
  color: rgba(51, 51, 51, 1);
  text-decoration: none;
}
.section-subtitle {
  color: rgba(156, 201, 71, 1);
  font-size: 32px;
  font-weight: 500;
  line-height: 180%;
  margin-bottom: 40px;
}
.service-details {
  display: flex;
  flex-direction: column;
  gap: 32px;
  list-style: none;
}
.service-detail-item {
  position: relative;
  padding-left: 20px;
}
.service-detail-item::before {
  content: "";
  position: absolute;
  left: 0;
  top: 11px;
  width: 8px;
  height: 8px;
  background-color: rgba(156, 201, 71, 1);
  border-radius: 50%;
}
.service-detail-title {
  color: rgba(156, 201, 71, 1);
  font-size: 16px;
  font-weight: 500;
  line-height: 180%;
  margin-bottom: 8px;
}
.service-detail-description {
  color: rgba(51, 51, 51, 1);
  font-size: 16px;
  font-weight: 400;
  line-height: 180%;
  margin-left: -1.33em;
}
.area-map {
  width: 100%;
  height: auto;
  margin-top: 40px;
}
.news_box {
  width: 100%;
  margin: 0 auto 20px;
}
.news_list {
  width: 100%;
  margin: 0;
  font-size: 15px;
  line-height: 1.66;
  border-top: 1px dotted #ddd;
  overflow: auto;
}
.news_list dt {
  clear: both;
  width: 8em;
  float: left;
  padding: 12px 8px;
  color: rgba(199, 159, 98, 1);
}
.news_list dd {
  padding: 12px 8px 12px 8em;
  text-align: left;
  border-bottom: 1px dotted #ddd;
}
.news_list dd a {
  color: #555;
}
.news_list dd a:hover {
  text-decoration: underline;
  text-decoration-color: #bbb;
}
.news-list02 {
  display: flex;
  flex-direction: column;
  width: 800px;
  margin: 96px auto 0;
}
.news-item02 {
  display: flex;
  align-items: start;
  gap: 16px;
  padding: 40px 0;
  border-bottom: 1px solid rgba(51, 51, 51, 1);
}
.news-date02 {
  padding: 0 8px 0 0;
  color: rgba(51, 51, 51, 1);
  font-weight: 400;
  font-size: 16px;
  line-height: 180%;
}
.news-category02 {
  display: inline-block;
  padding: 0 10px;
  border-radius: 16px;
  color: rgba(51, 51, 51, 1);
  font-weight: 400;
  font-size: 14px;
  line-height: 180%;
}
.notice {
  background-color: rgba(156, 201, 71, 1);
}
.review {
  background-color: rgba(241, 188, 46, 1);
}
.news-title02 {
  flex: 1;
  color: rgba(51, 51, 51, 1);
  font-weight: 400;
  font-size: 16px;
  line-height: 180%;
}
.news-title02 a {
  color: rgba(51, 51, 51, 1);
  text-decoration: none;
}
.news-title02 a:hover {
  color: rgba(51, 51, 51, 1);
  text-decoration: underline;
  text-decoration-color: rgba(51, 51, 51, 1);
  text-underline-offset: 10px;
}
@media (max-width: 980px) {
.news-item02 {
  flex-direction: column;
}
}
@media (max-width: 768px) {
.image-gallery {
  display: flex;
  flex-wrap: wrap;
  gap: 12px 12px;
  margin-bottom: 30px;
}
.image-gallery img {
  width: calc(50% - 6px);
  height: auto;
  object-fit: cover;
}
.section-subtitle {
  font-size: 24px;
  margin-bottom: 30px;
}
.service-detail-title {
  font-size: 16px;
}
.service-detail-description {
  font-size: 14px;
}
.news-item02 {
  gap: 8px;
  padding: 30px 0;
}
.news-date02 {
  font-size: 14px;
}
.news-category02 {
  font-size: 13px;
}
.news-title02 {
  font-size: 14px;
}
}
.pagination {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 40px;
  margin-top: 40px;
}
.pagination-prev, .pagination-next {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
}
.pagination-prev img, .pagination-next img {
  width: 10px;
  height: auto;
}
.pagination-list {
  display: flex;
  list-style: none;
  gap: 40px;
}
.pagination-item a {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  border-radius: 16px;
  font-family: var(--noto-sans-JP-16pt-regular-180-font-family);
  font-weight: var(--noto-sans-JP-16pt-regular-180-font-weight);
  color: var(--black);
  font-size: var(--noto-sans-JP-16pt-regular-180-font-size);
  text-align: center;
  letter-spacing: var(--noto-sans-JP-16pt-regular-180-letter-spacing);
  line-height: var(--noto-sans-JP-16pt-regular-180-line-height);
  font-style: var(--noto-sans-JP-16pt-regular-180-font-style);
  text-decoration: none;
}
.pagination-item.current a {
  background-color: rgba(156, 201, 71, 1);
}
@media (max-width: 768px) {
.pagination, .pagination-list {
  gap: 20px;
}
}



/* 事業内容 */
.recruit_ttl {
  background: rgba(156, 201, 71, 1);
  margin: 80px 0 0 0;
  padding: 8px 16px;
  color: #fff;
  font-size: 24px;
  font-weight: 500;
}
.recruit_block {
  background: rgba(228, 239, 207, 1);
  padding: 16px 48px 48px;
}
.recruit_ttl.orange {
  background: rgba(241, 188, 46, 1);
}
.recruit_block.orange {
  background: rgba(254, 235, 185, 1);
}
.tbl01 {
  width: 100%;
  margin: 0 auto;
  color: #333;
}
.tbl01 th {
  width: 25%;
  padding: 32px 0 16px;
  font-size: 18px;
  font-weight: 500;
  text-align: left;
  vertical-align: middle;
  border-bottom: 1px solid #333;
}
.tbl01 td {
  width: 75%;
  padding: 32px 0 16px;
  font-size: 16px;
  font-weight: 400;
  text-align: left;
  vertical-align: middle;
  border-bottom: 1px solid #333;
}
.recruit_ttl02 {
  margin-bottom: 40px;
  color: #fff;
  font-size: 32px;
  font-weight: 500;
  line-height: 180%;
}
.bg_green {
  background: rgba(156, 201, 71, 1);
  padding: 60px 0 300px;
}
#recruit .form-label {
  color: #fff;
}
#recruit .required {
  color: #fff;
}
#recruit .form-input, #recruit .form-select, #recruit .form-textarea {
  background-color: #fff;
  color: rgba(51, 51, 51, 1);
}
#recruit .privacy-notice {
  color: #fff;
}
#recruit .footer {
  margin: -106px 0 0 0;
}
#recruit .life__pattern {
  margin: -400px 0 0 0;
  padding: 0 0 100px 0;
}
@media (max-width: 768px) {
.recruit_ttl {
  background: rgba(156, 201, 71, 1);
  margin: 60px 0 0 0;
  padding: 8px 16px;
  color: #fff;
  font-size: 18px;
  font-weight: 500;
}
.recruit_block {
  background: rgba(228, 239, 207, 1);
  padding: 16px 32px 48px;
}
.tbl01 th {
  display: block;
  width: 100%;
  padding: 24px 0 8px;
  font-size: 16px;
  font-weight: 500;
  text-align: left;
  vertical-align: middle;
  border-bottom: 0px solid #333;
}
.tbl01 td {
  display: block;
  width: 100%;
  padding: 0 0 24px;
  font-size: 14px;
  font-weight: 400;
  text-align: left;
  vertical-align: middle;
  border-bottom: 1px solid #333;
}
}



/* お問合せ */
.contact-description {
  color: #333333;
  font-size: 16px;
  font-weight: 400;
  line-height: 180%;
  margin-bottom: 60px;
}
input, button, textarea, select {
  outline: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}
input, textarea, select {
  margin: 0;
  padding: 20px;
  width: 100%;
  border: none;
}
.contact-form {
  display: flex;
  flex-direction: column;
  margin-bottom: 80px;
  gap: 40px;
}
.form-group {
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.form-label {
  color: rgba(51, 51, 51, 1);
  font-size:16px;
  font-weight:500;
  line-height: 180%;
  display: flex;
  align-items: center;
}
.required {
  color: rgba(51, 51, 51, 1);
  font-size: 85%;
  font-weight: 400;
  line-height: 180%;
  margin-left: 10px;
}
.form-input,
.form-select,
.form-textarea {
  background-color: rgba(234, 234, 234, 1);
  width: 100%;
  padding: 20px;
  font-size: 16px;
  line-height: 180%;
  border-radius: 10px;
}
.form-select {
  appearance: none;
  background-image: url("./image/form-select.svg");
  background-repeat: no-repeat;
  background-position: right 20px center;
}
.form-textarea {
  height: 200px;
  resize: vertical;
}
input::-webkit-input-placeholder, textarea::-webkit-input-placeholder {
  color: #bbb;
  font-weight: normal;
}
input:-ms-input-placeholder, textarea::-ms-input-placeholder {
  color: #bbb;
  font-weight: normal;
}
input::-moz-placeholder, textarea::-moz-placeholder {
  color: #bbb;
  font-weight: normal;
}
.privacy-notice {
  color: #333333;
  font-size: 16px;
  font-weight: 400;
  line-height: 180%;
  margin-top: 40px;
  margin-bottom: 20px;
}
.privacy-policy {
  background: #fff;
  height: 260px;
  border: 1px solid #333333;
  padding: 64px;
  margin-bottom: 80px;
  overflow-y: auto;
}
.privacy-title {
  color: #333333;
  font-size: 24px;
  font-weight: 500;
  line-height: 180%;
  margin-bottom: 24px;
}
.privacy-content {
  height: 300px;
  color: #333333;
  font-size: 16px;
  font-weight: 400;
  line-height: 180%;
}
.privacy-content p {
  margin-bottom: 1em;
}
.submit-button {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 32px;
  padding: 8px 40px 8px 24px;
  background-color: #fff;
  border: 1px solid rgba(156, 201, 71, 1);
  border-radius: 40px;
  cursor: pointer;
  margin: 0 auto;
}
.submit-button:after {
  position: absolute;
  top: calc(50% - 4px);
  right: 20px;
  content: '';
  display: inline-block;
  width: 8px;
  height: 8px;
  margin: 0;
  border-right: 2px solid rgba(156, 201, 71, 1);
  border-bottom: 2px solid rgba(156, 201, 71, 1);
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
}
.submit-text {
  color: rgba(156, 201, 71, 1);
  font-size: 16px;
  font-weight: 500;
  line-height: 180%;
}
.submit-button:hover {
  background-color: rgba(241, 188, 46, 1);
  padding: 8px 40px 8px 24px;
  color: #fff;
  box-shadow: 0px 0px 6px 0px rgba(106, 161, 31, 1);
}
.submit-button:hover:after {
  border-right: 2px solid #fff;
  border-bottom: 2px solid #fff;
}
.submit-button:hover .submit-text {
  color: #fff;
}
@media (max-width: 768px) {
.contact-description {
  font-size: 14px;
}
.form-label {
  font-size: 14px;
}
.form-input,
.form-select,
.form-textarea {
  font-size: 14px;
}
.privacy-policy {
  padding: 40px 32px;
}
.privacy-notice {
  font-size: 14px;
}
.privacy-content {
  font-size: 14px;
}
}
.more_link02.arr a {
  display: flex;
  width: fit-content;
  flex-direction: column;
  align-items: flex-start;
  background-color: #fff;
  padding: 8px 40px 8px 24px;
  color: rgba(156, 201, 71, 1);
  font-weight: 500;
  border-radius: 40px;
  border: 1px solid;
  border-color: #9cc947;
  text-decoration: none;
}
.more_link02.arr {
  position: relative;
  display: flex;
  width: fit-content;
  margin: 40px 0 10px;
}
.more_link02.arr.center {
  margin: 40px auto 10px;
}
@media (max-width: 768px) {
.more_link02.arr.center {
  margin: 40px 0 10px;
}
}
.more_link02.arr:after {
  position: absolute;
  top: calc(50% - 4px);
  right: 20px;
  content: '';
  display: inline-block;
  width: 8px;
  height: 8px;
  margin: 0;
  border-right: 2px solid rgba(156, 201, 71, 1);
  border-bottom: 2px solid rgba(156, 201, 71, 1);
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
}
.more_link02.arr a:hover {
  background-color: rgba(241, 188, 46, 1);
  padding: 8px 40px 8px 24px;
  color: #fff;
  box-shadow: 0px 0px 6px 0px rgba(106, 161, 31, 1);
}
.more_link02.arr:hover:after {
  border-right: 2px solid #fff;
  border-bottom: 2px solid #fff;
}



/* 記事 */
#cont {
  width: 100％;
  padding: 0;
}
.breadcrumb {
  max-width: 1000px;
  margin: 0 auto 40px;
}
@media (max-width: 1200px) {
.breadcrumb {
  width: 90%;
  max-width: initial;
  margin: 0 auto 40px;
}
}
.fbc-page .fbc-wrap .fbc-items {
  background-color: transparent;
}
.fbc-page .fbc-wrap .fbc-items li {
  font-size: 12px;
}
.fbc-page .fbc-wrap .fbc-items li a {
  color: #555;
}
.fbc-page .fbc-wrap .fbc-items li .fbc-separator {
  color: #ccc;
}
.fbc-page .fbc-wrap .fbc-items li.active span, .fbc-page .fbc-wrap .fbc-items li .fbc-end-text {
  color: #333;
  font-size: 12px;
}
.fbc-page .fbc-wrap .fbc-items li:first-child {
  padding-left: 0;
}
.link_nav {
  margin: 100px auto 0;
  font-size: 85%;
}
.link_nav  a {
  color: #555;
}
section .link_nav .link_nav_l {
  float: left;
  width: calc(49.5% - 40px);
  margin: 0 0 10px 0;
  font-size: 85%;
  text-align: left;
}
section .link_nav .link_nav_r {
  float: right;
  width: calc(49.5% - 40px);
  margin: 0 0 10px 0;
  font-size: 85%;
  text-align: right;
}
section .link_nav .link_nav_c {
  float: left;
  width: 80px !important;
  margin: 0 auto 10px;
  padding: 0;
  font-size: 85%;
  text-align: center;
}
.center {
  text-align: center;
}
.wp-pagenavi {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 40px;
  margin-top: 40px;
}
.wp-pagenavi .page {
  width: 32px;
  height: 32px;
  background: #fff;
  text-align: center;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 !important;
  padding: 0 !important;
  color: rgba(51, 51, 51, 1);
  font-weight: 700;
  font-size: 16px;
  border: 0px solid rgba(51, 51, 51, 1);
  border-radius: 50%;
}
..wp-pagenavi .current {
  width: 32px;
  height: 32px;
  background: #fff;
  text-align: center;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 !important;
  padding: 0 !important;
  color: rgba(51, 51, 51, 1);
  font-weight: 700;
  font-size: 16px;
  border: 1px solid rgba(156, 201, 71, 1);
  border-radius: 50%;
}
.wp-pagenavi a, .wp-pagenavi span {
  text-decoration: none;
  border: 0px solid #BFBFBF;
  margin: 0 !important;
  padding: 0 !important;
}
.wp-pagenavi a:hover, .wp-pagenavi span.current {
  width: 32px;
  height: 32px;
  background: rgba(156, 201, 71, 1) !important;
  text-align: center;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 !important;
  padding: 0 !important;
  color: #fff !important;
  text-decoration: none;
  border: 1px solid rgba(156, 201, 71, 1) !important;
  border-radius: 50%;
}
.wp-pagenavi a.previouspostslink, .wp-pagenavi a.nextpostslink {
  width: 32px;
  height: 32px;
  background: #fff !important;
  text-align: center;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 !important;
  padding: 0 !important;
  color: rgba(51, 51, 51, 1) !important;
  border: 0px solid rgba(51, 51, 51, 1) !important;
}
.wp-pagenavi a.previouspostslink:hover, .wp-pagenavi a.nextpostslink:hover {
  width: 32px;
  height: 32px;
  background: #fff !important;
  text-align: center;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 !important;
  padding: 0 !important;
  color: rgba(51, 51, 51, 1) !important;
  border: 0px solid rgba(51, 51, 51, 1) !important;
}
.post_block h1 {
  margin: 2em 0 1em;
  padding: 0.1em 0.3em 0.1em;
  color: rgba(156, 201, 71, 1);
  font-size: 150%;
  font-weight: bold;
}
.post_block h1.post_ttl {
  background: none;
  margin: 0 0 1em;
  padding: 0 0 0.3em 0;
  color: rgba(156, 201, 71, 1);
  font-size: 150%;
  font-weight: bold;  
  border-bottom: 3px dotted rgba(156, 201, 71, 0.33);
  font-feature-settings: "palt";
}
.post_block h1.post_ttl02 {
  background: none;
  margin: 0 0 1em;
  padding-bottom: 0;
  color: rgba(156, 201, 71, 1);
  font-size: 150%;
  font-weight: bold;  
  font-feature-settings: "palt";
}
.post_block h1.post_ttl span, .post_block h1.post_ttl02 span {
  padding: 0.1em 0.3em;
  border-left: 8px solid rgba(156, 201, 71, 0.66);
}
.post_block h2 {
  margin: 2em 0 1em;
  padding: 0.1em 0.3em 0.1em 0.3em;
  color: rgba(156, 201, 71, 1);
  font-size: 140%;
  font-weight: bold;  
  border-left: 8px solid rgba(156, 201, 71, 0.66);
}
.post_block h2.tit03 {
  margin: 0 0 1em;
}
.post_block h3 {
  background: transparent;
  width: 100%;
  margin: 2em 0 1em;
  padding: 0 0 0.5em 0;
  color: rgba(156, 201, 71, 1);
  font-size: 130%;
  font-weight: bold;  
  line-height: 1.33;
}
.post_block h4 {
  width: 100%;
  margin: 2em 0 1em;
  padding: 0;
  color: rgba(156, 201, 71, 1);
  font-size: 120%;
  font-weight: bold;  
  line-height: 1.33;
}
.post_block h5 {
  width: 100%;
  margin: 2em 0 1em;
  padding: 0;
  color: rgba(156, 201, 71, 1);
  font-size: 110%;
  font-weight: bold;  
  line-height: 1.33;
}
.post_block h6 {
  width: 100%;
  margin: 2em 0 1em;
  padding: 0;
  color: rgba(156, 201, 71, 1);
  font-size: 100%;
  font-weight: bold;  
  line-height: 1.33;
}
.post_block p {
  margin: 0 0 1em 0;
  font-size: 16px;
  line-height: 1.66;
  text-align: left;
}
@media (max-width: 768px) {
.post_block p {
  font-size: 14px;
}
}
.post_block p.date {
  margin: 0 0 30px 0;
  font-size: 80%;
}
.post_block p.date span {
  background: #bbb;
  padding: 2px 6px;
  color: #fff;
}



/* お問い合わせ */
.form-group {
  margin: 0 0 40px;
}
.form-label {
  margin: 0 0 10px;
  color: rgba(51, 51, 51, 1);
  font-size: 16px;
  font-weight: bold;
 line-height: 180%
}
.wpcf7-text, .wpcf7-select, .wpcf7-textarea {
  background-color: rgba(234, 234, 234, 1);
  width: 100%;
  margin: 0 0 10px;
  padding: 20px;
  font-size: 16px;
  line-height: 180%;
  border-radius: 10px;
}
.submit-btn-wrapper {
  text-align: center;
}
.submit-btn {
  display: inline-block;
  position: relative;
}
input[type="submit"] {
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
}
span.wpcf7-spinner {
  display: none;
}
.wpcf7 input[type="submit"] {
  width: fit-content;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 32px;
  padding: 8px 40px 8px 24px;
  background-color: #fff;
  border: 1px solid rgba(156, 201, 71, 1);
  border-radius: 40px;
  cursor: pointer;
  margin: 0 auto;
  color: rgba(156, 201, 71, 1);
  font-size: 16px;
  font-weight: 500;
}
.wpcf7 input[type="submit"]:hover {
  background-color: rgba(241, 188, 46, 1);
  padding: 8px 40px 8px 24px;
  color: #fff;
  box-shadow: 0px 0px 6px 0px rgba(106, 161, 31, 1);
}
.submit-btn:after {
  position: absolute;
  top: calc(50% - 4px);
  right: 20px;
  content: '';
  display: inline-block;
  width: 8px;
  height: 8px;
  margin: 0;
  border-right: 2px solid rgba(156, 201, 71, 1);
  border-bottom: 2px solid rgba(156, 201, 71, 1);
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
}
.submit-btn:hover:after {
  border-right: 2px solid #fff;
  border-bottom: 2px solid #fff;
}
.wpcf7cp-btns {
  text-align: center;
}
.wpcf7cp-btns .wpcf7cp-cfm-edit-btn {
  width: fit-content;
  position: relative;
  display: inline-block;
  padding: 8px 40px 8px 24px;
  background-color: #fff;
  border: 1px solid rgba(156, 201, 71, 1);
  border-radius: 40px;
  cursor: pointer;
  margin: 0 10px;
  color: rgba(156, 201, 71, 1);
  font-size: 16px;
  font-weight: 500;
}
.wpcf7cp-btns .wpcf7cp-cfm-submit-btn {
  width: fit-content;
  position: relative;
  display: inline-block;
  padding: 8px 40px 8px 24px;
  background-color: #fff;
  border: 1px solid rgba(156, 201, 71, 1);
  border-radius: 40px;
  cursor: pointer;
  margin: 0 10px;
  color: rgba(156, 201, 71, 1);
  font-size: 16px;
  font-weight: 500;
}
div#wpcf7cpcnf {
  z-index: 1 !important;
}
#wpcf7cpcnf table {
  display: block;
  width: 100%;
  max-width: 800px;
  margin: 0 auto;
  text-align: left;
}
#wpcf7cpcnf table th {
  display: block;
  width: 100%;
  padding: 4px 8px;
  font-weight: bold;
}
#wpcf7cpcnf table td {
  display: block;
  width: 100%;
  padding: 4px 8px 12px 8px;
}
#recruit .wpcf7-text, #recruit .wpcf7-select, #recruit .wpcf7-textarea {
  background-color: #fff;
  color: rgba(51, 51, 51, 1);
}