@charset "UTF-8";
a {
  text-decoration: none;
  transform: 0.5;
  -webkit-transition: 0.3s ease-in-out;
  -moz-transition: 0.3s ease-in-out;
  -o-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
}

a {
  opacity: 1;
}

a:hover {
  opacity: 0.8;
}

a,
p,
span,
li,
dt, dd {
  font-family: source-han-sans-japanese, sans-serif;
  font-weight: 400;
  color: #000;
}

h1,
h2,
h3,
h4 {
  font-family: source-han-sans-japanese, sans-serif;
  font-weight: 400;
  color: #000;
}

.flex {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}

#pc_header,
nav.pc_nav,
.tbbr,
.pcbr,
.pc_display {
  display: none;
}

div.anker {
  padding-top: 100px;
}

.sp_header {
  width: 100%;
  height: 66px;
  position: fixed;
  top: 0;
  z-index: 999;
  border-top: 3px solid #D41717;
  background: #FFF;
}

.header_flex {
  width: 100%;
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin: 0 auto;
  padding: 10px 3%;
}
.header_flex a.logo {
  display: block;
  width: auto;
  max-width: 150px;
  height: auto;
  object-fit: contain;
  margin: 0;
}
.header_flex a.logo img {
  width: 100%;
  height: auto;
  object-fit: contain;
}

.drawer {
  flex-direction: row;
}

/*ここからナビゲーション*/
.navbar_toggle {
  z-index: 9999;
  padding: 13px 8px;
  background: #D41717;
  width: 46px;
  height: 46px;
  border-radius: 10px;
}

.navbar_toggle_icon {
  position: relative;
  display: block;
  height: 3px;
  width: 25px;
  background: #FFF;
  -webkit-transition: ease .5s;
  transition: ease .5s;
}

.navbar_toggle_icon:nth-child(1) {
  top: 0;
  margin-left: auto;
  margin-right: auto;
}

.navbar_toggle_icon:nth-child(2) {
  margin: 5px auto;
}

.navbar_toggle_icon:nth-child(3) {
  top: 0;
  margin-left: auto;
  margin-right: auto;
}

/*OPEN時の動き*/
.navbar_toggle.open .navbar_toggle_icon:nth-child(1) {
  top: 7px;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

.navbar_toggle.open .navbar_toggle_icon:nth-child(2) {
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  opacity: 0;
}

.navbar_toggle.open .navbar_toggle_icon:nth-child(3) {
  top: -9px;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
}

/*メニュー中身*/
.sp_menu.open, .dwr_main_menu:checked + .dwr_sub_menu {
  position: fixed;
  overflow-y: scroll;
  overflow-x: hidden;
  overflow-scrolling: touch;
  height: 100%;
  width: 100%;
}

.sp_menu {
  padding: 0 0 100px 0;
  display: block;
  background: #FFF;
  -webkit-transform: translateX(-150%);
  transform: translateX(-150%);
  -webkit-transition: ease .9s;
  transition: ease .9s;
  z-index: 1000;
}
.sp_menu ul {
  margin-top: 30px;
}
.sp_menu ul li {
  width: 70%;
  padding: 15px 0;
  text-align: center;
  border-bottom: 1px solid #5A978A;
  margin: 0 auto;
}
.sp_menu ul li a,
.sp_menu ul li label {
  display: block;
  font-size: clamp(16px, 1.1vw, 20px);
  color: #5A978A;
  line-height: 1.5em;
  font-family: source-han-sans-japanese, sans-serif;
  font-weight: 700;
}
.sp_menu ul li a::before,
.sp_menu ul li label::before {
  display: none;
}

.sp_menu.open {
  display: block;
  -webkit-transform: translateX(0);
  transform: translateX(0);
}

ul.dwr_sub_menu {
  height: 0;
  opacity: 0;
  padding: 0 10px;
  transition: .5s;
  visibility: hidden;
  margin: 0;
}
ul.dwr_sub_menu li {
  width: 80%;
  padding: 10px 0;
  margin: 0 auto;
  border-bottom: 1px solid #707070;
}
ul.dwr_sub_menu li:last-child {
  border-bottom: none;
}
ul.dwr_sub_menu li a {
  display: block;
  text-align: center;
  color: #488578;
  font-size: clamp(14px, 0.83vw, 16px);
}

.dwr_main_menu:checked + .dwr_main-btn + .dwr_sub_menu {
  height: auto;
  opacity: 1;
  padding: 10px 0;
  visibility: visible;
}

.dwr_box input {
  display: none;
}

/*ここからスライドショー(背景)*/
.wrap {
  padding-top: 60px;
}

.main_img {
  width: 100%;
  height: 0px;
  padding-top: 70%;
  position: relative;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
}

div.cts {
  width: 100%;
  padding: 50px 0;
  text-align: center;
}
div.cts .inner {
  width: 90%;
  max-width: 1200px;
  margin: 0 auto;
}
div.cts .inner h2 {
  font-size: clamp(30px, 2vw, 40px);
  font-family: century-gothic, sans-serif;
  font-weight: 700;
  margin-bottom: 30px;
}
div.cts .inner h2 span {
  display: block;
  font-size: clamp(16px, 1.1vw, 20px);
  font-weight: 700;
}

.bg_wht {
  background: #FFF;
}

.bg_gry {
  background: #F2F2F2;
}

.cts_menu div {
  width: 100%;
  margin-bottom: 50px;
}
.cts_menu div:last-child {
  margin-bottom: 0;
}
.cts_menu div h3 {
  font-size: clamp(16px, 1.1vw, 20px);
  font-weight: 700;
  margin-bottom: 15px;
}
.cts_menu div p {
  font-size: clamp(14px, 0.83vw, 16px);
  margin-bottom: 20px;
  text-align: left;
}
.cts_menu div a {
  display: block;
  width: 100%;
  margin-bottom: 32px;
  position: relative;
  overflow: hidden;
  border-radius: 0 40px 0 40px;
}
.cts_menu div a:hover {
  opacity: 1;
}
.cts_menu div a:hover img {
  transform: scale(1.1);
}
.cts_menu div a img {
  transition-duration: 0.3s;
}
.cts_menu div a p {
  width: 70%;
  border-radius: 40px;
  color: #FFF;
  font-size: clamp(14px, 0.9vw, 18px);
  font-weight: 700;
  padding: 10px 0;
  position: absolute;
  bottom: 10px;
  right: 3%;
  margin: 0;
  transition-duration: 0.3s;
  text-align: center;
}
.cts_menu div a p::after {
  font-family: "Font Awesome 5 Free";
  content: '\f054';
  font-weight: 900;
  color: #FFF;
  font-size: clamp(14px, 0.9vw, 18px);
  position: absolute;
  right: 5%;
  top: 50%;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
}
.cts_menu div.red h2, .cts_menu div.red h3 {
  color: #D41717;
}
.cts_menu div.red a p {
  background: #D41717;
}
.cts_menu div.red a:hover p {
  background: #FFF;
  color: #D41717;
}
.cts_menu div.red a:hover p::after {
  color: #D41717;
}
.cts_menu div.grn h2, .cts_menu div.grn h3 {
  color: #488578;
}
.cts_menu div.grn a p {
  background: #488578;
}
.cts_menu div.grn a:hover p {
  background: #FFF;
  color: #488578;
}
.cts_menu div.grn a:hover p::after {
  color: #488578;
}

.top_news h2 {
  color: #D41717;
}
.top_news ul {
  width: 100%;
  max-width: 1000px;
  margin: 0 auto 50px auto;
  text-align: left;
}
.top_news ul li {
  margin-bottom: 15px;
  position: relative;
}
.top_news ul li a {
  display: flex;
  flex-flow: column;
  background: #FFF;
  border-radius: 20px;
  padding: 20px 10% 20px 5%;
}
.top_news ul li a::after {
  font-family: "Font Awesome 5 Free";
  content: '\f054';
  font-weight: 900;
  color: #585858;
  font-size: clamp(14px, 0.9vw, 18px);
  position: absolute;
  right: 2%;
  top: 50%;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
}
.top_news ul li a:hover {
  background: #488578;
  opacity: 1;
}
.top_news ul li a:hover p.date, .top_news ul li a:hover p.title, .top_news ul li a:hover::after {
  color: #FFF;
}
.top_news ul li a p.date {
  font-size: clamp(12px, 0.83vw, 16px);
  color: #585858;
  font-weight: 700;
  margin-right: 50px;
}
.top_news ul li a p.title {
  font-size: clamp(16px, 1.1vw, 20px);
  font-weight: 700;
  color: #488578;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

a.viewmore {
  display: inline-block;
  padding: 10px 15%;
  background: #D41717;
  border-radius: 40px;
  color: #FFF;
  font-size: clamp(14px, 0.9vw, 18px);
  font-weight: 700;
  position: relative;
}
a.viewmore::after {
  font-family: "Font Awesome 5 Free";
  content: '\f054';
  font-weight: 900;
  color: #FFF;
  font-size: clamp(14px, 0.9vw, 18px);
  position: absolute;
  right: 5%;
  top: 50%;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
}
a.viewmore:hover {
  background: #FFF;
  color: #D41717;
  opacity: 1;
}
a.viewmore:hover::after {
  color: #D41717;
}

footer {
  width: 100%;
  padding: 70px 0 0 0;
  text-align: center;
  background: url("../../img/footer.png");
  background-repeat: no-repeat;
  background-size: cover;
}

.top_contact {
  width: 90%;
  max-width: 1000px;
  margin: 0 auto;
}
.top_contact h2 {
  font-size: clamp(30px, 2vw, 40px);
  font-weight: 700;
  margin-bottom: 30px;
  color: #FFF;
  font-family: century-gothic, sans-serif;
}
.top_contact h2 span {
  display: block;
  font-size: clamp(16px, 1.1vw, 20px);
  font-weight: 700;
  color: #FFF;
}
.top_contact h3 {
  font-size: clamp(16px, 1.1vw, 20px);
  color: #FFF;
  font-weight: 700;
  margin-bottom: 30px;
}

.link_box {
  flex-flow: column;
  grid-row-gap: 10px;
  margin-bottom: 30px;
}
.link_box a {
  display: block;
  width: 100%;
  background: #D41717;
  border-radius: 10px;
  padding: 10px 0px;
  color: #FFF;
  font-size: clamp(14px, 0.9vw, 18px);
  font-weight: 700;
  position: relative;
}
.link_box a::after {
  font-family: "Font Awesome 5 Free";
  content: '\f054';
  font-weight: 900;
  color: #FFF;
  font-size: clamp(20px, 1.1vw, 22px);
  position: absolute;
  right: 3%;
  top: 50%;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
}
.link_box a:hover {
  background: #FFF;
  color: #D41717;
  opacity: 1;
}
.link_box a:hover::after {
  color: #D41717;
}

.office_box {
  flex-flow: column;
  grid-row-gap: 20px;
}
.office_box div {
  width: 100%;
  text-align: left;
}
.office_box div h4 {
  display: inline-block;
  padding: 10px 10%;
  background: #FFF;
  border-radius: 10px;
  font-size: clamp(16px, 1.1vw, 20px);
  color: #488578;
  font-weight: 700;
  margin-bottom: 10px;
}
.office_box div ul {
  width: 100%;
}
.office_box div ul li {
  display: flex;
  margin-bottom: 5px;
}
.office_box div ul li p, .office_box div ul li a {
  font-size: clamp(14px, 0.9vw, 18px);
  font-weight: 500;
  color: #FFF;
}
.office_box div ul li p {
  margin-right: 3%;
}

.footer {
  width: 90%;
  background: #FFF;
  border-radius: 10px 10px 0 0;
  padding: 40px 0 30px 0;
  text-align: center;
  margin: 30px auto 0 auto;
}
.footer a.logo {
  display: block;
  width: 50%;
  margin: 0 auto 30px auto;
}
.footer p {
  font-size: clamp(14px, 0.83vw, 16px);
  font-weight: 500;
  margin-bottom: 50px;
}
.footer p.copy {
  font-size: clamp(10px, 0.72vw, 14px);
  margin: 0;
}

footer ul.menu {
  width: 60%;
  margin: 0 auto 30px auto;
  display: flex;
  flex-flow: column;
}
footer ul.menu li {
  padding: 10px 0;
  text-align: left;
}
footer ul.menu li a, footer ul.menu li p {
  display: block;
  width: 100%;
  color: #5A978A;
  font-size: clamp(16px, 1.1vw, 20px);
  font-weight: 500;
  margin-bottom: 0;
  border-bottom: 1px solid #5A978A;
}
footer ul.menu li ul {
  display: block;
  padding: 10px 0;
  margin-top: 0px;
}
footer ul.menu li ul li {
  display: block;
  width: 100%;
  transition: .5s;
  padding: 0 0 5px 0;
}
footer ul.menu li ul li a {
  font-size: clamp(14px, 0.83vw, 16px);
  color: #000;
  border-bottom: none;
}

a.totop {
  display: block;
  width: 50px;
  height: auto;
  position: fixed;
  bottom: 20px;
  right: 2%;
}

/**********************
下層共通部分
***********************/
.pagetitle {
  width: 100%;
  padding: 100px 0 0 0;
  text-align: center;
}
.pagetitle h1 {
  font-size: clamp(30px, 2vw, 40px);
  font-family: century-gothic, sans-serif;
  font-weight: 700;
  color: #D41717;
  line-height: 1.2em;
}
.pagetitle h1 span {
  display: block;
  font-size: clamp(16px, 1.1vw, 20px);
  font-weight: 700;
}

div.page .inner {
  width: 90%;
  max-width: 1000px;
}
div.page .inner h2 {
  padding: 2px 0.5rem;
  border-left: 10px solid #D41717;
  border-bottom: 1px dashed #707070;
  text-align: left;
  font-size: clamp(18px, 1.1vw, 20px);
  font-family: source-han-serif-japanese, serif;
  margin-bottom: 30px;
}
div.page .inner p.txt_l {
  font-size: clamp(14px, 0.83vw, 16px);
  text-align: left;
}

h4.red_tape {
  display: block;
  width: 100%;
  padding: 10px 3%;
  text-align: center;
  background: #D41717;
  border-radius: 80px;
  color: #FFF;
  font-size: clamp(18px, 1.1vw, 20px);
  font-weight: 700;
  font-family: source-han-sans-japanese, sans-serif;
  margin-bottom: 20px;
  line-height: 1.2em;
}

/**********************
グループ概要
***********************/
div.about img {
  width: 100%;
  height: auto;
  object-fit: contain;
  margin-bottom: 50px;
}

.cts .inner div.company_box {
  margin-bottom: 100px;
}

ul.company {
  margin-bottom: 50px;
}
ul.company li {
  display: flex;
  justify-content: space-between;
  margin-bottom: 10px;
  align-items: baseline;
}
ul.company li p.redtape {
  width: 30%;
  background: #D41717;
  color: #FFF;
  border-radius: 80px;
  text-align: center;
  padding: 10px 0px;
  font-size: clamp(14px, 0.83vw, 16px);
  font-weight: 700;
}
ul.company li p.txt {
  width: 65%;
  text-align: left;
  padding: 10px 0px;
  font-size: clamp(14px, 0.83vw, 16px);
}

.office {
  display: flex;
  flex-flow: column;
  grid-row-gap: 20px;
  margin-bottom: 30px;
}
.office div {
  width: 100%;
  box-shadow: 0px 3px 6px #00000029;
  border-radius: 20px;
}
.office div h3 {
  width: 100%;
  background: #5A978A;
  color: #FFF;
  padding: 10px 0;
  text-align: center;
  border-radius: 20px 20px 0 0;
  font-size: clamp(18px, 1.1vw, 20px);
  font-weight: 700;
}
.office div p {
  width: 100%;
  padding: 10px 5%;
  background: #FFF;
  text-align: left;
  font-size: clamp(14px, 0.83vw, 16px);
  border-radius: 0 0 20px 20px;
}
.office iframe {
  width: 100%;
  height: 200px;
}

/**********************
ごあいさつ
***********************/
.greeting {
  margin-bottom: 100px;
}
.greeting .flex {
  margin-bottom: 30px;
  flex-flow: column;
}
.greeting .flex img {
  display: block;
  width: 70%;
  height: auto;
  object-fit: contain;
  border-radius: 20px;
  margin: 0 auto 20px auto;
}

.greeting .flex div {
  width: 100%;
  text-align: left;
}
.greeting .flex div p {
  font-size: clamp(23px, 1.45vw, 28px);
  font-family: source-han-serif-japanese, serif;
  font-weight: 700;
  padding-left: 10px;
  text-align: center;
}
.greeting .flex div p span {
  display: inline-block;
  padding: 5px 5%;
  border: 1px solid #D41717;
  border-radius: 80px;
  font-size: clamp(14px, 0.9vw, 18px);
  color: #D41717;
  margin-right: 16px;
}
.greeting .flex div div.gry {
  width: 100%;
  margin-top: 20px;
  background: #F9F9F9;
  padding: 24px 3%;
  text-align: center;
}
.greeting .flex div div.gry span {
  display: block;
  font-size: clamp(23px, 1.45vw, 28px);
  color: #488578;
  font-weight: 700;
  margin-bottom: 12px;
}
.greeting .flex div div.gry p {
  text-align: left;
  font-size: clamp(14px, 0.83vw, 16px);
  color: #488578;
  font-family: source-han-sans-japanese, sans-serif;
  font-weight: 400;
}

div.policy p.red_c {
  font-size: clamp(16px, 1.1vw, 20px);
  font-weight: 700;
  color: #D41717;
  margin-bottom: 30px;
}
div.policy .flex {
  flex-flow: column;
  grid-row-gap: 30px;
}
div.policy .flex div {
  width: 100%;
}
div.policy .flex div h3 {
  width: 100%;
  background: #488578;
  padding: 10px 0px;
  text-align: center;
  border-radius: 20px 20px 0 0;
  color: #FFF;
  font-size: clamp(18px, 1.1vw, 20px);
  font-weight: 700;
}
div.policy .flex div p {
  width: 100%;
  background: #F2F2F2;
  padding: 20px 5%;
  font-size: clamp(14px, 0.83vw, 16px);
  text-align: left;
  border-radius: 0 0 20px 20px;
}

/**********************
グループの歴史
***********************/
.his_img {
  display: flex;
  margin: 30px 0 100px 0;
}
.his_img img {
  width: 50%;
  height: 120px;
  object-fit: cover;
}

ul.history li {
  padding: 15px 0;
  border-bottom: 1px solid #707070;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  text-align: left;
}
ul.history li p.year {
  width: 100%;
  color: #488578;
  font-size: clamp(30px, 2vw, 40px);
  font-weight: 700;
}
ul.history li p.month {
  width: 15%;
  font-size: clamp(14px, 0.83vw, 16px);
}
ul.history li p.txt {
  width: 85%;
  font-size: clamp(14px, 0.83vw, 16px);
  font-weight: 500;
}

/**********************
業務の流れ
***********************/
div.flow {
  margin-top: 50px;
}

div.flow dl {
  text-align: left;
}
div.flow dl dt {
  display: inline-block;
  padding: 5px 5%;
  background: #488578;
  border-radius: 40px;
  color: #FFF;
  font-size: clamp(16px, 0.9vw, 18px);
  font-weight: 700;
  margin-bottom: 10px;
}
div.flow dl dd {
  margin-bottom: 30px;
}
div.flow dl dd img {
  display: block;
  margin-top: 10px;
}

div.performance {
  margin-top: 30px;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  grid-row-gap: 20px;
}
div.performance div {
  width: 48%;
}
div.performance div h3 {
  display: block;
  width: 100%;
  background: #FFF;
  padding: 5px 3%;
  border-radius: 80px;
  color: #D41717;
  font-size: clamp(12px, 0.83vw, 16px);
  font-weight: 500;
  margin-top: 5px;
}

div.vehicle {
  display: flex;
  flex-flow: column;
  flex-wrap: wrap;
  grid-row-gap: 30px;
}
div.vehicle div {
  width: 100%;
}
div.vehicle div h3 {
  width: 100%;
  padding: 10px 0;
  background: #488578;
  color: #FFF;
  font-size: clamp(16px, 1.1vw, 20px);
  font-weight: 700;
  border-radius: 20px 20px 0 0;
}

div.vehicle .gry_bg {
  width: 100%;
  background: #F2F2F2;
  padding: 20px 5%;
  border-radius: 0 0 20px 20px;
  text-align: left;
}
div.vehicle .gry_bg ul {
  margin-bottom: 30px;
}
div.vehicle .gry_bg ul li {
  margin-bottom: 5px;
  font-size: clamp(14px, 0.83vw, 16px);
}
div.vehicle .gry_bg ul li::before {
  content: '●';
  font-size: clamp(10px, 0.72vw, 14px);
  color: #D41717;
  margin-right: 5px;
}
div.vehicle .gry_bg span {
  display: inline-block;
  padding: 5px 5%;
  background: #D41717;
  color: #FFF;
  font-size: clamp(14px, 0.83vw, 16px);
  border-radius: 80px;
  margin-bottom: 10px;
}
div.vehicle .gry_bg p {
  font-size: clamp(14px, 0.83vw, 16px);
}

div.safe p.grn_l {
  font-size: clamp(16px, 1.1vw, 20px);
  font-weight: 700;
  color: #488578;
  margin-bottom: 30px;
  text-align: left;
}

div.safe_img {
  display: flex;
  justify-content: space-between;
  margin-bottom: 30px;
}
div.safe_img img {
  width: 50%;
  height: 120px;
  object-fit: cover;
}

ul.safe_item {
  text-align: left;
}
ul.safe_item li {
  margin-bottom: 25px;
  display: flex;
  flex-flow: column;
}
ul.safe_item li img {
  width: 100%;
  height: 100px;
  object-fit: cover;
  border-radius: 20px 20px 0 0;
}
ul.safe_item li div {
  width: 100%;
  background: #FFF;
  padding: 10px 3%;
  border-radius: 0 0 20px 20px;
}
ul.safe_item li div h3 {
  display: inline-block;
  background: #D41717;
  color: #FFF;
  border-radius: 10px;
  padding: 5px 3%;
  font-size: clamp(16px, 0.9vw, 18px);
  font-weight: 700;
  margin-bottom: 10px;
}
ul.safe_item li div p {
  font-size: clamp(14px, 0.83vw, 16px);
}

/**********************
レンタカー事業
***********************/
div.rental {
  margin-bottom: 100px;
}

div.rental .flex {
  flex-flow: column;
  grid-row-gap: 30px;
}
div.rental .flex div {
  width: 100%;
}
div.rental .flex div h3 {
  width: 100%;
  background: #488578;
  border-radius: 20px 20px 0 0;
  padding: 10px 0px;
  text-align: center;
  color: #FFF;
  font-size: clamp(16px, 0.9vw, 18px);
  font-weight: 700;
}

table.rental tr {
  border-bottom: 1px dashed #585858;
}
table.rental tr th, table.rental tr td {
  padding: 10px 5%;
  font-size: clamp(14px, 0.83vw, 16px);
  font-weight: 700;
  font-family: source-han-sans-japanese, sans-serif;
}
table.rental tr th {
  width: 50%;
  text-align: center;
  color: #FFF;
  background: #D41717;
}
table.rental tr td {
  width: 50%;
  text-align: left;
  color: #000;
}

div.wash .flex {
  margin-bottom: 70px;
  flex-flow: column;
  grid-row-gap: 50px;
}
div.wash .flex div {
  width: 100%;
  position: relative;
  display: flex;
  flex-flow: column;
}
div.wash .flex div img {
  border-radius: 20px;
}
div.wash .flex div p {
  width: 90%;
  padding: 10px 3%;
  background: #488578;
  border-radius: 40px;
  color: #FFF;
  font-size: clamp(14px, 0.83vw, 16px);
  line-height: 1.2em;
  position: absolute;
  bottom: -20px;
  left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
}

div.recommend {
  width: 100%;
  padding: 20px 5%;
  margin-bottom: 45px;
  background-image: url("../../img/wash_bg.png");
  background-position: center;
}
div.recommend div {
  width: 100%;
  background: #FFFFFFC7;
  padding: 20px 5%;
}
div.recommend div h3 {
  display: inline-block;
  background: #D41717;
  padding: 10px 10%;
  border-radius: 80px;
  color: #FFF;
  font-size: clamp(16px, 1.1vw, 20px);
  box-shadow: 0px 6px 0px #8E1111;
  margin-bottom: 20px;
}
div.recommend div p {
  font-size: clamp(14px, 0.83vw, 16px);
  text-align: left;
}

table.menu {
  border-collapse: separate;
  border-spacing: 2px;
  margin-bottom: 50px;
}
table.menu th, table.menu td {
  width: 32%;
  width: 32%;
  padding: 14px 0;
  text-align: center;
  font-size: clamp(14px, 0.83vw, 16px);
  font-weight: 500;
  font-family: source-han-sans-japanese, sans-serif;
  vertical-align: middle;
}
table.menu th {
  color: #FFF;
  background: #8E8E8E;
}
table.menu td {
  color: #000;
  background: #F2F2F2;
}
table.menu th.grn {
  background: #488578;
}
table.menu th.red {
  background: #D41717;
}

p.note {
  text-align: right;
  font-size: clamp(14px, 0.9vw, 18px);
}

table.prica {
  width: 100%;
  max-width: 750px;
  border-collapse: separate;
  border-spacing: 10px;
}
table.prica th, table.prica td {
  padding: 14px 0;
  text-align: center;
  font-size: clamp(16px, 1.1vw, 20px);
  font-weight: 500;
  font-family: source-han-sans-japanese, sans-serif;
  color: #000;
  background: #F2F2F2;
}
table.prica th {
  width: 43%;
}
table.prica td {
  width: 10%;
}
table.prica td.red {
  width: 43%;
  background: #FFBEBE;
}
table.prica th.grn {
  background: #488578;
  color: #FFF;
}

/**********************
求人募集
***********************/
table.recruit tr {
  border-bottom: 1px dashed #000000;
}
table.recruit tr th, table.recruit tr td {
  padding: 20px 3%;
  font-size: clamp(14px, 0.83vw, 16px);
}
table.recruit tr th {
  width: 30%;
  background: #5A978A;
  color: #FFF;
  font-weight: 700;
  text-align: right;
}
table.recruit tr td {
  width: 70%;
  color: #000000;
  text-align: left;
}

div.no_recruit h3 {
  display: block;
  width: 100%;
  padding: 17px 0px;
  border-top: 2px solid #488578;
  border-bottom: 2px solid #488578;
  font-size: clamp(16px, 1.1vw, 20px);
  font-weight: 700;
  color: #488578;
  margin-bottom: 50px;
}
div.no_recruit p {
  font-size: clamp(14px, 0.9vw, 18px);
  margin-bottom: 50px;
}
div.no_recruit a {
  display: inline-block;
  padding: 10px 15%;
  background: #D41717;
  border-radius: 80px;
  color: #FFF;
  font-size: clamp(14px, 0.9vw, 18px);
  font-weight: 700;
  position: relative;
}
div.no_recruit a::after {
  font-family: "Font Awesome 5 Free";
  content: '\f054';
  font-weight: 900;
  color: #FFF;
  font-size: clamp(14px, 0.9vw, 18px);
  position: absolsute;
  right: 5%;
  top: 50%;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
}
div.no_recruit a:hover {
  background: #FFF;
  color: #D41717;
  opacity: 1;
  box-shadow: 0px 3px 6px #00000029;
}
div.no_recruit a:hover::after {
  color: #D41717;
}

/**********************
お知らせ
***********************/
ul.news {
  width: 100%;
  text-align: left;
}
ul.news li {
  margin-bottom: 15px;
  position: relative;
}
ul.news li a {
  display: flex;
  flex-flow: column;
  background: #FFF;
  border-radius: 20px;
  padding: 20px 10% 20px 5%;
  box-shadow: 0px 3px 6px #00000029;
}
ul.news li a::after {
  font-family: "Font Awesome 5 Free";
  content: '\f054';
  font-weight: 900;
  color: #585858;
  font-size: clamp(14px, 0.9vw, 18px);
  position: absolute;
  right: 2%;
  top: 50%;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
}
ul.news li a:hover {
  background: #488578;
  opacity: 1;
}
ul.news li a:hover p.date, ul.news li a:hover p.title, ul.news li a:hover::after {
  color: #FFF;
}
ul.news li a p.date {
  font-size: clamp(12px, 0.83vw, 16px);
  color: #585858;
  font-weight: 700;
  margin-right: 50px;
}
ul.news li a p.title {
  font-size: clamp(16px, 1.1vw, 20px);
  font-weight: 700;
  color: #488578;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.pagenavi {
  width: 100%;
  display: block;
  text-align: center;
}

.wp-pagenavi {
  margin: 20px 0;
}

.wp-pagenavi a {
  /* フォント色 */
  background: #FFF;
  color: #D41717;
  border: 1px solid #D41717;
  font-family: source-han-serif-japanese, serif;
}

.pages {
  /* 左の表記 */
  margin-right: 20px;
}

.wp-pagenavi .current,
.wp-pagenavi a.page {
  /* ボタン */
  margin: 0 6px 6px 0;
  display: inline-block;
  width: 40px;
  height: 40px;
  line-height: 40px;
  text-align: center;
  font-size: 18px;
  font-weight: 700;
  border-radius: 10px;
}

.wp-pagenavi .current {
  /* カレント数字 */
  background: #D41717;
  color: #FFF;
  border: 1px solid #D41717;
  font-family: source-han-serif-japanese, serif;
}

.wp-pagenavi a.page:hover {
  /* マウスオーバー */
  background: #D41717;
  color: #FFF;
}

.wp-pagenavi .first,
.wp-pagenavi .extend {
  /* ... */
  margin-right: 10px;
}

.wp-pagenavi .previouspostslink,
.wp-pagenavi .nextpostslink {
  /* 記号の削除 */
  margin: 0 6px 6px 0;
  display: inline-block;
  width: 40px;
  height: 40px;
  line-height: 40px;
  text-align: center;
  font-size: 18px;
  font-weight: 700;
  border-radius: 10px;
}

.post p.date {
  color: #585858;
  font-size: clamp(14px, 0.83vw, 16px);
  font-weight: 700;
  margin-bottom: 10px;
  text-align: left;
}
.post p.title {
  color: #488578;
  font-size: clamp(18px, 1.35vw, 26px);
  font-weight: 700;
  margin-bottom: 30px;
  text-align: left;
}
.post div.contents {
  margin-bottom: 50px;
}
.post div.contents p {
  font-size: clamp(14px, 0.9vw, 18px);
  line-height: 2em;
  text-align: left;
}
.post a {
  display: inline-block;
  padding: 10px 15%;
  background: #D41717;
  border-radius: 80px;
  color: #FFF;
  font-size: clamp(14px, 0.9vw, 18px);
  font-weight: 700;
  position: relative;
}
.post a::after {
  font-family: "Font Awesome 5 Free";
  content: '\f054';
  font-weight: 900;
  color: #FFF;
  font-size: clamp(14px, 0.9vw, 18px);
  position: absolute;
  right: 5%;
  top: 50%;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
}
.post a:hover {
  background: #FFF;
  color: #D41717;
  opacity: 1;
  box-shadow: 0px 3px 6px #00000029;
}
.post a:hover::after {
  color: #D41717;
}

/**********************
プライバシーポリシー
***********************/
.privacy {
  text-align: left;
}
.privacy p {
  font-size: clamp(14px, 0.83vw, 16px);
  margin-bottom: 40px;
}
.privacy h3 {
  display: inline-block;
  background: #488578;
  border-radius: 40px;
  padding: 10px 10%;
  color: #FFF;
  font-size: clamp(14px, 0.9vw, 18px);
  margin-bottom: 10px;
  font-weight: 400;
}

/**********************
お問い合わせ
***********************/
.contact p {
  font-size: clamp(14px, 0.83vw, 16px);
  text-align: left;
  margin-bottom: 40px;
}
.contact p a {
  color: #D41717;
  font-weight: 700;
  font-size: clamp(14px, 0.83vw, 16px);
}
.contact p.txt_c {
  font-size: clamp(14px, 0.83vw, 16px);
  text-align: center;
}

.co_form {
  width: 100%;
  border-collapse: collapse;
  margin-bottom: 50px;
}
.co_form dl {
  width: 100%;
  display: flex;
  flex-flow: column;
  text-align: left;
  border-bottom: 1px dashed #707070;
}
.co_form dl dt {
  width: 100%;
  margin-bottom: 0px;
  padding: 15px 0 5px 0;
}
.co_form dl dt label {
  font-size: clamp(14px, 0.9vw, 18px);
  font-family: source-han-sans-japanese, sans-serif;
  font-weight: 700;
  color: #488578;
}
.co_form dl dt label span {
  display: inline-block;
  background: #D41717;
  padding: 5px 5%;
  font-size: clamp(10px, 0.72vw, 14px);
  color: #FFF;
  border-radius: 10px;
  margin-left: 3%;
}
.co_form dl dd {
  width: 100%;
  padding: 5px 0 15px 0;
}

input[type="text"], [type="tel"], [type="email"], [type="number"] {
  width: 100%;
  font-size: clamp(14px, 0.83vw, 16px);
  padding: 10px 3%;
  color: #000;
  background: #E2E2E2;
  border-radius: 10px;
}

.sent {
  display: block;
  width: 60%;
  padding: 12px 0;
  margin: 0 auto;
  background: #D41717;
  border-radius: 80px;
  color: #FFF;
  font-size: clamp(14px, 0.9vw, 18px);
  font-weight: 700;
  position: relative;
  transform: 0.5;
  -webkit-transition: 0.3s ease-in-out;
  -moz-transition: 0.3s ease-in-out;
  -o-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
}
.sent::after {
  font-family: "Font Awesome 5 Free";
  content: '\f054';
  font-weight: 900;
  color: #FFF;
  font-size: clamp(14px, 0.9vw, 18px);
  position: absolute;
  right: 5%;
  top: 50%;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
}
.sent:hover {
  background: #FFF;
  color: #D41717;
  opacity: 1;
  box-shadow: 0px 3px 6px #00000029;
}
.sent:hover::after {
  color: #D41717;
}

div.complete h3 {
  font-size: clamp(30px, 2vw, 40px);
  color: #488578;
  font-weight: 700;
  margin-bottom: 40px;
}
div.complete p {
  font-size: clamp(14px, 0.83vw, 16px);
  margin-bottom: 30px;
}
div.complete a {
  display: inline-block;
  padding: 10px 15%;
  background: #D41717;
  border-radius: 80px;
  color: #FFF;
  font-size: clamp(14px, 0.9vw, 18px);
  font-weight: 700;
  position: relative;
}
div.complete a::after {
  font-family: "Font Awesome 5 Free";
  content: '\f054';
  font-weight: 900;
  color: #FFF;
  font-size: clamp(14px, 0.9vw, 18px);
  position: absolute;
  right: 5%;
  top: 50%;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
}
div.complete a:hover {
  background: #FFF;
  color: #D41717;
  opacity: 1;
  box-shadow: 0px 3px 6px #00000029;
}
div.complete a:hover::after {
  color: #D41717;
}

/*# sourceMappingURL=sp_style.css.map */
._a_fbox{display: flex;flex-wrap: wrap;}._jcc{justify-content: center;}._jcsb{justify-content: space-between;}._jcfs{justify-content: flex-start;}._jcfe{justify-content: flex-end;}._faic{align-items: center;}._fais{align-items: flex-start;}._faie{align-items: flex-end;}  ._w1{width: 1%;}._w2{width: 2%;}._w3{width: 3%;}._w4{width: 4%;}._w5{width: 5%;}._w6{width: 6%;}._w7{width: 7%;}._w8{width: 8%;}._w9{width: 9%;}._w10{width: 10%;}._w11{width: 11%;}._w12{width: 12%;}._w13{width: 13%;}._w14{width: 14%;}._w15{width: 15%;}._w16{width: 16%;}._w17{width: 17%;}._w18{width: 18%;}._w19{width: 19%;}._w20{width: 20%;}._w21{width: 21%;}._w22{width: 22%;}._w23{width: 23%;}._w24{width: 24%;}._w25{width: 25%;}._w26{width: 26%;}._w27{width: 27%;}._w28{width: 28%;}._w29{width: 29%;}._w30{width: 30%;}._w31{width: 31%;}._w32{width: 32%;}._w33{width: 33%;}._w34{width: 34%;}._w35{width: 35%;}._w36{width: 36%;}._w37{width: 37%;}._w38{width: 38%;}._w39{width: 39%;}._w40{width: 40%;}._w41{width: 41%;}._w42{width: 42%;}._w43{width: 43%;}._w44{width: 44%;}._w45{width: 45%;}._w46{width: 46%;}._w47{width: 47%;}._w48{width: 48%;}._w49{width: 49%;}._w50{width: 50%;}._w51{width: 51%;}._w52{width: 52%;}._w53{width: 53%;}._w54{width: 54%;}._w55{width: 55%;}._w56{width: 56%;}._w57{width: 57%;}._w58{width: 58%;}._w59{width: 59%;}._w60{width: 60%;}._w61{width: 61%;}._w62{width: 62%;}._w63{width: 63%;}._w64{width: 64%;}._w65{width: 65%;}._w66{width: 66%;}._w67{width: 67%;}._w68{width: 68%;}._w69{width: 69%;}._w70{width: 70%;}._w71{width: 71%;}._w72{width: 72%;}._w73{width: 73%;}._w74{width: 74%;}._w75{width: 75%;}._w76{width: 76%;}._w77{width: 77%;}._w78{width: 78%;}._w79{width: 79%;}._w80{width: 80%;}._w81{width: 81%;}._w82{width: 82%;}._w83{width: 83%;}._w84{width: 84%;}._w85{width: 85%;}._w86{width: 86%;}._w87{width: 87%;}._w88{width: 88%;}._w89{width: 89%;}._w90{width: 90%;}._w91{width: 91%;}._w92{width: 92%;}._w93{width: 93%;}._w94{width: 94%;}._w95{width: 95%;}._w96{width: 96%;}._w97{width: 97%;}._w98{width: 98%;}._w99{width: 99%;}._w100{width: 100%;}
._m0{margin: 0 !important;}._p0{padding: 0 !important;}
._mt10{margin-top: 10px;}._mt30{margin-top: 30px !important;}
._txtc{text-align: center;}._txtl{text-align: left;}
.__emp-box01 {
  border: solid 1px #ccc;
  border-radius: 5px;
  padding: 1em 2em;
}
@media screen and (max-width:1000px) {
    .__emp-box01 { padding: 0.5em;}
    ._sptel._color-darkred a{color: darkred;}
}
._color-darkred,._color-darkred * {color: darkred;}
._bgcolor-ghostwhite {background-color: ghostwhite;}
._fs150 {font-size: 150% !important;}
._fs150,._fs150 > span > a {font-size: 150% !important;}
._fs180,._fs180 > span > a {font-size: 180% !important;}
._fwb,._fwb *{font-weight: bold;}
.cts_menu div._w100{width: 100%;}
._b-r-0,.cts_menu div a._b-r-0{border-radius: 0;}