@charset "UTF-8";
/* =====================================================
1.0 - Foundation
===================================================== */
/*
1.1 - Reset
-----------------------------------------------------*/
/* http://meyerweb.com/eric/tools/css/reset/
v2.0 | 20110126
License: none (public domain)
*/
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;
  vertical-align: baseline;
  font: inherit;
  font-size: 100%;
}

/* HTML5 display-role reset for older browsers */
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
  display: block;
}

body {
  line-height: 1;
}

ol,
ul {
  list-style: none;
}

blockquote,
q {
  quotes: none;
}

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

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

img {
  display: block;
}

input[type=number]::-webkit-outer-spin-button,
input[type=number]::-webkit-inner-spin-button {
  -webkit-appearance: none;
  -moz-appearance: textfield;
  margin: 0;
}

.notosans {
  font-family: "Noto Sans JP", sans-serif;
}

/*-----------------------------------------------------
1.2 - Base
-----------------------------------------------------*/
*,
:before,
:after {
  box-sizing: inherit;
}

html {
  box-sizing: border-box;
  height: 100%;
  -webkit-text-size-adjust: 100%;
     -moz-text-size-adjust: 100%;
          text-size-adjust: 100%;
  font-size: 62.5%;
  font-size: 68.75%;
}
@media screen and (max-width: 768px) {
  html {
    font-size: 2.5641025641vw;
  }
}

body {
  height: 100%;
  text-rendering: optimizeLegibility;
  font-feature-settings: "pkna";
  font-weight: normal;
  font-family: "Noto Sans JP", sans-serif;
}
@media screen and (max-width: 768px) {
  body {
    min-width: 1px;
  }
}

img {
  max-width: 100%;
  height: auto;
  vertical-align: bottom;
  width: 100%;
}

a {
  transition: all 0.3s ease-in-out;
  text-decoration: none;
  color: #000000;
}

.notosans {
  font-family: "Noto Sans JP", sans-serif;
}

/* =====================================================
2.0 - Layout
===================================================== */
.header {
  width: 200px;
  height: 100%;
  position: fixed;
  z-index: 100;
  top: 0;
  left: 0;
  background: #EFF2F3;
}
@media screen and (max-width: 1200px) {
  .header {
    display: none;
  }
}

.header__title a {
  font-size: 22px;
  font-size: 2.2rem;
  display: block;
  background: #fff;
  text-align: center;
  padding: 90px 16px 60px;
  position: relative;
  letter-spacing: 0.08em;
  font-weight: 300;
}
.header__title a::before {
  content: "";
  width: 40px;
  height: 13px;
  background: url(../img/common/header__icon.svg) center center/contain no-repeat;
  position: absolute;
  top: 56px;
  left: 50%;
  transform: translateX(-50%);
}
.header__title__smalltext {
  display: block;
  font-size: 11px;
  font-size: 1.1rem;
  color: #2C6439;
  margin-top: 16px;
  font-family: "Roboto Condensed", sans-serif;
  letter-spacing: 0.05em;
}

.header__nav {
  padding-top: 21px;
}
.header__nav__list__item a {
  display: block;
  padding: 21px 16px 21px 44px;
  font-size: 14px;
  font-size: 1.4rem;
  letter-spacing: 0.1em;
  font-weight: 300;
  transition: all 0.3s;
}
.header__nav__list__item .header__nav__sublist {
  position: absolute;
  width: 350px;
  height: 100vh;
  top: 0;
  right: -350px;
  padding: 229px 16px 0px 44px;
  background: rgba(0, 0, 0, 0.7);
  z-index: 10;
  transition: opacity 0.3s;
  opacity: 0;
  pointer-events: none;
}
.header__nav__list__item .header__nav__sublist li a {
  color: #fff;
  padding: 21px 16px 21px 0;
}
.header__nav__list__item .header__nav__sublist--big li a {
  padding: 15px 0 0 0;
}
.header__nav__list__item .header__nav__sublist--big li a.bigtitle {
  padding: 40px 0 10px 0;
}
.header__nav__list__item .header__nav__sublist--big li a.bigtitle--top {
  padding: 21px 0 10px 0;
}

.in_top {
  display: none !important;
}

#top .in_kasou {
  display: none;
}
#top .in_top {
  display: block !important;
}

@media screen and (max-height: 750px) {
  .header__nav__list__item .header__nav__sublist {
    display: flex;
    flex-flow: column;
    justify-content: center;
    padding: 0 16px 0px 44px;
  }
}
.sp-header {
  display: none;
}
@media screen and (max-width: 1200px) {
  .sp-header {
    padding: 14px 20px;
    background: #fff;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 100;
    width: 100%;
    display: flex;
    justify-content: space-between;
    align-items: center;
  }
}

@media screen and (max-width: 1200px) {
  .sp-header__title a {
    display: block;
    font-size: 18px;
    letter-spacing: 0.09em;
    font-weight: 300;
    padding-left: 48px;
    position: relative;
  }
  .sp-header__title a .sp-header__title__smalltext {
    display: block;
    font-size: 7px;
    font-size: 0.7rem;
    letter-spacing: 0.1em;
    color: #2C6439;
    font-family: "Roboto Condensed", sans-serif;
    margin-top: 7px;
  }
  .sp-header__title a::before {
    content: "";
    width: 35px;
    height: 12px;
    background: url(../img/common/header__icon.svg) center center/contain no-repeat;
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
  }
}

.sp-headeropen {
  display: none;
}
@media screen and (max-width: 1200px) {
  .sp-headeropen {
    position: fixed;
    height: 100%;
    padding-bottom: 100px;
    overflow: auto;
    z-index: 100;
    width: 100%;
    top: 68px;
  }
  .sp-headeropen .l-footer__navSp {
    background: #EFF2F3;
    display: block;
  }
  .sp-headeropen .l-footer__navSp__list {
    padding: 52px 35px 60px;
  }
  .sp-headeropen .l-footer__navSp__listtext a {
    color: #000;
    border-bottom: 1px solid #000;
  }
  .sp-headeropen .l-footer__navSp__listtext--plusicon .icon::before {
    background-color: #000;
  }
  .sp-headeropen .l-footer__navSp__listtext--plusicon .icon::after {
    content: "";
    background-color: #000;
  }
  .sp-headeropen .l-footer__navSp__sublisttext a {
    padding-bottom: 0;
    border-bottom: none;
  }
  .sp-headeropen .l-footer__navSp__subbiglisttitle a {
    padding-bottom: 0;
    border-bottom: none;
  }
  .sp-headeropen .l-footer__navSp__subbiglisttext a {
    padding-bottom: 0;
    border-bottom: none;
  }
}

/* ハンバーガーメニュー */
.header__hamburger {
  display: none;
  width: 24px;
  height: 100%;
  padding: 0;
}
@media screen and (max-width: 1200px) {
  .header__hamburger {
    display: block;
  }
}

.hamburger {
  background-color: transparent;
  border-color: transparent;
  z-index: 9999;
}

/* ハンバーガーメニューの線 */
.hamburger span {
  width: 100%;
  height: 1px;
  background-color: #000;
  position: relative;
  transition: ease 0.4s;
  display: block;
}

.hamburger span:nth-child(1) {
  top: 0;
}

.hamburger span:nth-child(2) {
  margin: 7px 0;
}

.hamburger span:nth-child(3) {
  top: 0;
}

/* ハンバーガーメニュークリック後のスタイル */
.header__nav.active {
  transform: translateX(0);
}

.hamburger.active span:nth-child(1) {
  top: 4px;
  transform: rotate(45deg);
}

.hamburger.active span:nth-child(2) {
  opacity: 0;
}

.hamburger.active span:nth-child(3) {
  top: -12px;
  transform: rotate(-45deg);
}

.l-footer__info {
  padding: 60px 16px;
  background: #404040;
}
@media screen and (max-width: 768px) {
  .l-footer__info {
    padding: 14.1025641026vw 8.9743589744vw 15.3846153846vw;
  }
}
.l-footer__info__inner {
  max-width: 990px;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  align-items: center;
}
@media screen and (max-width: 768px) {
  .l-footer__info__inner {
    max-width: 82.0512820513vw;
    display: block;
  }
}
.l-footer__info__inner__log a {
  display: block;
  color: #fff;
  font-size: 35px;
  font-size: 3.5rem;
  font-family: "Roboto Condensed", sans-serif;
  letter-spacing: 0.03em;
  padding-left: 64px;
  position: relative;
  margin-right: 16px;
}
@media screen and (max-width: 768px) {
  .l-footer__info__inner__log a {
    font-size: 27px;
    font-size: 2.7rem;
    padding-left: 12.8205128205vw;
    margin-right: 0;
    white-space: nowrap;
  }
}
.l-footer__info__inner__log a::before {
  content: "";
  width: 50px;
  height: 50px;
  background: url(../img/common/footer__icon.svg) center center/contain no-repeat;
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
}
@media screen and (max-width: 768px) {
  .l-footer__info__inner__log a::before {
    width: 10.5128205128vw;
    height: 10.5128205128vw;
  }
}
.l-footer__info__inner__log a .l-footer__info__inner__log__small {
  display: block;
  font-size: 12px;
  font-size: 1.2rem;
  font-family: "Noto Sans JP", sans-serif;
  margin-top: 8px;
}
@media screen and (max-width: 768px) {
  .l-footer__info__inner__log a .l-footer__info__inner__log__small {
    font-size: 10px;
    font-size: 1rem;
    margin-top: 10px;
  }
}
.l-footer__info__inner__log a .--margin {
  padding: 0 8px;
}
@media screen and (max-width: 768px) {
  .l-footer__info__inner__log a .--margin {
    padding: 0 4px;
  }
}
.l-footer__info__inner__tel {
  margin-left: auto;
}
@media screen and (max-width: 768px) {
  .l-footer__info__inner__tel {
    margin: 30px 0 0;
  }
}
.l-footer__info__inner__tel a {
  display: block;
  font-size: 32px;
  font-size: 3.2rem;
  font-family: "Roboto Condensed", sans-serif;
  letter-spacing: 0.01em;
  color: #fff;
}
@media screen and (max-width: 768px) {
  .l-footer__info__inner__tel a {
    font-size: 28px;
    font-size: 2.8rem;
  }
}
.l-footer__info__inner__tel__small {
  display: block;
  font-size: 12px;
  font-size: 1.2rem;
  font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
  margin-top: 10px;
  color: #fff;
}
@media screen and (max-width: 768px) {
  .l-footer__info__inner__tel__small {
    margin-top: 15px;
  }
}
.l-footer__info__inner__btn {
  width: 48%;
}
@media screen and (max-width: 768px) {
  .l-footer__info__inner__btn {
    width: auto;
  }
}
.l-footer__info__inner__btn a {
  display: block;
  font-size: 14px;
  font-size: 1.4rem;
  letter-spacing: 0.1em;
  width: 100%;
  background: #fff;
  padding: 20px;
  position: relative;
}
@media screen and (max-width: 768px) {
  .l-footer__info__inner__btn a {
    max-width: none;
    width: 100%;
    padding: 5.1282051282vw;
  }
}
.l-footer__info__inner__btn a::after {
  content: "";
  width: 5px;
  height: 9px;
  background: url(../img/common/icon__arrow--black.svg) center center/contain no-repeat;
  position: absolute;
  top: 50%;
  right: 20px;
  transform: translateY(-50%);
  transition: all 0.3s ease-in-out;
}
@media screen and (max-width: 768px) {
  .l-footer__info__inner__btn a::after {
    width: 1.2820512821vw;
    height: 2.3076923077vw;
  }
}
.l-footer__info__location {
  padding-top: 60px;
}
@media screen and (max-width: 768px) {
  .l-footer__info__location {
    padding: 10.2564102564vw 0 12.8205128205vw;
  }
}
.l-footer__info__location__box {
  box-sizing: border-box;
  color: #fff;
}
@media screen and (max-width: 768px) {
  .l-footer__info__location__box {
    width: 100% !important;
    justify-content: flex-start !important;
    border-top: 1px solid #fff;
    padding: 7.6923076923vw 0;
  }
}
.l-footer__info__location__box p.fn_size15 {
  letter-spacing: 0.14em;
}
@media screen and (max-width: 768px) {
  .l-footer__info__location__box p.fn_size15 {
    font-size: 1.6rem;
  }
}
.l-footer__info__location__box p.fn_size12 {
  margin: 15px 0;
  line-height: 2;
  letter-spacing: 0.06em;
}
@media screen and (max-width: 768px) {
  .l-footer__info__location__box p.fn_size12 {
    font-size: 1.1rem;
    margin: 3.8461538462vw 0;
  }
}
.l-footer__info__location__box__tel a {
  font-family: "Roboto Condensed", sans-serif;
  color: #fff;
  font-size: 2.2rem;
  letter-spacing: 0.08em;
}
.l-footer__info__location__box__tel a:hover {
  opacity: 0.6;
}
.l-footer__info__location__box div.fn_size12 {
  font-family: "Roboto Condensed", sans-serif;
  line-height: 1.5;
  letter-spacing: 0.06em;
  margin-top: 10px;
  color: #fff;
}
.l-footer__info__location__box:nth-child(1) {
  display: flex;
  width: 30%;
}
.l-footer__info__location__box:nth-child(2) {
  display: flex;
  justify-content: center;
  border-left: 0.25px solid #fff;
  border-right: 0.25px solid #fff;
  width: 40%;
}
@media screen and (max-width: 768px) {
  .l-footer__info__location__box:nth-child(2) {
    border-left: unset;
    border-right: unset;
  }
}
.l-footer__info__location__box:nth-child(3) {
  display: flex;
  justify-content: flex-end;
  width: 30%;
}
@media screen and (max-width: 768px) {
  .l-footer__info__location__box:nth-child(3) {
    border-bottom: 1px solid #fff;
  }
}

.l-footer__navPc {
  background: #222222;
  padding: 60px 16px;
}
@media screen and (max-width: 768px) {
  .l-footer__navPc {
    display: none;
  }
}
.l-footer__navPc .l-footer__nav__inner {
  width: 90%;
  margin: 0 auto;
}
.l-footer__navPc .l-footer__nav__items {
  display: flex;
}
@media screen and (max-width: 768px) {
  .l-footer__navPc .l-footer__nav__items {
    flex-direction: column;
  }
}
.l-footer__navPc .l-footer__navitem {
  width: calc(25% - 27px);
  margin-left: 36px;
}
.l-footer__navPc .l-footer__navitem:first-of-type {
  margin-left: 0;
}
.l-footer__navPc .l-footer__navitem__title a {
  display: block;
  color: #fff;
  font-size: 13px;
  font-size: 1.3rem;
  padding-bottom: 9px;
  border-bottom: 1px solid #fff;
  font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
  letter-spacing: 0.14em;
}
.l-footer__navPc .l-footer__navitem__list {
  margin-top: 22px;
}
.l-footer__navPc .l-footer__navitem__listtext {
  margin-top: 16px;
}
.l-footer__navPc .l-footer__navitem__listtext:first-of-type {
  margin-top: 0;
}
.l-footer__navPc .l-footer__navitem__listtext a {
  display: block;
  color: #fff;
  font-size: 13px;
  font-size: 1.3rem;
  font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
  letter-spacing: 0.08em;
}
.l-footer__navPc .l-footer__navitem__onlylisttext {
  margin-top: 28px;
}
.l-footer__navPc .l-footer__navitem__onlylisttext:first-of-type {
  margin-top: 0;
}
.l-footer__navPc .l-footer__navitem__onlylisttext a {
  display: block;
  color: #fff;
  font-size: 13px;
  font-size: 1.3rem;
  padding-bottom: 9px;
  border-bottom: 1px solid #fff;
  font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
  letter-spacing: 0.06em;
}
.l-footer__navPc .l-footer__navitem__onlylisttext--icon a {
  position: relative;
}
.l-footer__navPc .l-footer__navitem__onlylisttext--icon a::after {
  content: "";
  width: 11px;
  height: 11px;
  background: url(../img/common/icon__another.svg) center center/contain no-repeat;
  position: absolute;
  top: 30%;
  right: 0;
  transform: translateY(-50%);
}
.l-footer__navPc .l-footer__bignav {
  width: 75%;
  margin-top: 35px;
}
.l-footer__navPc .l-footer__bignav__title a {
  display: block;
  color: #fff;
  font-size: 13px;
  font-size: 1.3rem;
  padding-bottom: 9px;
  border-bottom: 1px solid #fff;
  font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
  letter-spacing: 0.14em;
}
.l-footer__navPc .l-footer__bignavitems {
  display: flex;
}
@media screen and (max-width: 768px) {
  .l-footer__navPc .l-footer__bignavitems {
    flex-direction: column;
  }
}
.l-footer__navPc .l-footer__bignav__item {
  width: calc(33% - 24px);
  margin-left: 36px;
}
.l-footer__navPc .l-footer__bignav__item:first-of-type {
  margin-left: 0;
}
.l-footer__navPc .l-footer__bignav__itemtitle {
  margin-top: 22px;
  line-height: 1.2;
}
.l-footer__navPc .l-footer__bignav__itemtitle a {
  display: block;
  color: #fff;
  font-size: 13px;
  font-size: 1.3rem;
  font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
  letter-spacing: 0.08em;
}
.l-footer__navPc .l-footer__bignav__item__listtext {
  margin-top: 15px;
}
.l-footer__navPc .l-footer__bignav__item__listtext a {
  display: block;
  color: #fff;
  font-size: 13px;
  font-size: 1.3rem;
  font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
  text-indent: -0.8em;
  margin-left: 0.8em;
  line-height: 1.2;
}

.l-footer__navSp {
  background: #222222;
  display: none;
}
@media screen and (max-width: 768px) {
  .l-footer__navSp {
    display: block;
  }
}

.l-footer__navSp__list {
  padding: 52px 35px;
}

.l-footer__navSp__listtext {
  margin-top: 30px;
}
.l-footer__navSp__listtext:first-of-type {
  margin-top: 0;
}
.l-footer__navSp__listtext a {
  color: #fff;
  font-size: 13px;
  font-size: 1.3rem;
  display: block;
  padding-bottom: 9px;
  border-bottom: 1px solid #fff;
}
.l-footer__navSp__listtext--icon a {
  position: relative;
}
.l-footer__navSp__listtext--icon a::after {
  content: "";
  width: 2.8205128205vw;
  height: 2.8205128205vw;
  background: url(../img/common/icon__another.svg) center center/contain no-repeat;
  position: absolute;
  top: 30%;
  right: 0;
  transform: translateY(-50%);
}
.l-footer__navSp__listtext--plusicon .icon {
  position: relative;
}
.l-footer__navSp__listtext--plusicon .icon::before {
  display: block;
  content: "";
  position: absolute;
  top: 5px;
  right: 0;
  margin: auto;
  width: 12px;
  height: 1px;
  background-color: #fff;
  transition: 0.2s;
  transform: rotate(90deg);
  -webkit-transform: rotate(90deg);
}
.l-footer__navSp__listtext--plusicon .icon::after {
  display: block;
  content: "";
  position: absolute;
  top: 5px;
  right: 0;
  margin: auto;
  width: 12px;
  height: 1px;
  background-color: #fff;
  transition: 0.3s;
}

.l-footer__navSp__listtext--plusicon a.on:before {
  transform: rotate(0deg);
  -webkit-transform: rotate(0deg);
}

.l-footer__navSp__listtext--plusicon a.on:after {
  background-color: transparent;
}

.l-footer__navSp__sublist {
  margin-top: 26px;
  display: none;
}

.l-footer__navSp__sublisttext {
  margin-top: 18px;
}
.l-footer__navSp__sublisttext:first-of-type {
  margin-top: 0;
}
.l-footer__navSp__sublisttext a {
  padding-bottom: 0;
  border-bottom: none;
}

.l-footer__navSp__subbiglist {
  display: none;
}

.l-footer__navSp__subbiglisttitle {
  margin-top: 27px;
}
.l-footer__navSp__subbiglisttitle a {
  padding-bottom: 0;
  border-bottom: none;
  font-weight: 700;
}

.l-footer__navSp__subbiglisttext {
  margin-top: 19px;
}
.l-footer__navSp__subbiglisttext a {
  padding-bottom: 0;
  border-bottom: none;
}

.l-footer__copy {
  background: #fff;
  padding: 32px 16px;
}
@media screen and (max-width: 768px) {
  .l-footer__copy {
    padding: 32px 16px;
  }
}
.l-footer__copy__text {
  font-size: 12px;
  font-size: 1.2rem;
  letter-spacing: 0.05em;
  max-width: 990px;
  margin: 0 auto;
  display: flex;
  align-items: center;
  justify-content: flex-end;
}
@media screen and (max-width: 768px) {
  .l-footer__copy__text {
    max-width: 100%;
    display: block;
    text-align: center;
    line-height: 1.9;
  }
}
.l-footer__copy__text__child {
  display: block;
  letter-spacing: 0.09em;
  font-size: 10px;
  font-size: 1rem;
  font-family: "Roboto Condensed", sans-serif;
}

.wrapper {
  padding-left: 200px;
  position: relative;
}
@media screen and (max-width: 1200px) {
  .wrapper {
    padding-left: 0;
  }
}

.disp-ib {
  display: inline-block;
}

.pore {
  position: relative;
}

.poab {
  position: absolute;
}

.medium {
  font-weight: 500;
}

.bold {
  font-weight: 700;
}

.txc {
  text-align: center;
}

.txjus {
  text-align: justify;
  text-justify: inter-ideograph;
}

.light {
  font-weight: 300;
}

.cshover a:hover {
  opacity: 0.6;
}

.no_link {
  pointer-events: none;
}

.hide {
  display: none;
}

.lh14 {
  line-height: 1.4;
}

.lh16 {
  line-height: 1.6;
}

.lh17 {
  line-height: 1.7;
}

.lh18 {
  line-height: 1.8;
}

.lh19 {
  line-height: 1.9;
}

.lh21 {
  line-height: 2.1;
}

.lh2 {
  line-height: 2;
}

.lh23 {
  line-height: 2.3;
}

.lh24 {
  line-height: 2.4;
}

.ls005 {
  letter-spacing: 0.05em;
}

.ls008 {
  letter-spacing: 0.08em;
}

.ls085 {
  letter-spacing: 0.085em;
}

.ls01 {
  letter-spacing: 0.1em;
}

.ls012 {
  letter-spacing: 0.12em;
}

.ls014 {
  letter-spacing: 0.14em;
}

.ls016 {
  letter-spacing: 0.16em;
}

.ls02 {
  letter-spacing: 0.2em;
}

.ls03 {
  letter-spacing: 0.3em;
}

.fn_size12 {
  font-size: 1.2rem;
}

.fn_size13 {
  font-size: 1.3rem;
}

.fn_size14 {
  font-size: 1.4rem;
}

.fn_size15 {
  font-size: 1.5rem;
}

.fn_size16 {
  font-size: 1.6rem;
}

.fn_size17 {
  font-size: 1.7rem;
}

.fn_size18 {
  font-size: 1.8rem;
}

.fn_size20 {
  font-size: clamp(18px, 1.4285714286vw, 20px);
}

.fn_size22 {
  font-size: 2.2rem;
}

.fn_size24 {
  font-size: 2.4rem;
}

.fn_size27 {
  font-size: clamp(24.3px, 1.9285714286vw, 27px);
}

.fn_size28 {
  font-size: 2.8rem;
}

.fn_size36 {
  font-size: 3.6rem;
}

.fn_size40 {
  font-size: 4rem;
}

.wrap {
  padding: 0 5%;
}

@media screen and (max-width: 768px) {
  .fn_size14 {
    font-size: 1.3rem;
  }
  .fn_size15 {
    font-size: 1.3rem;
  }
  .fn_size16 {
    font-size: 1.4rem;
  }
  .fn_size17 {
    font-size: 1.5rem;
  }
  .fn_size18 {
    font-size: 1.6rem;
  }
  .fn_size20 {
    font-size: 1.8rem;
  }
  .fn_size24 {
    font-size: 1.8rem;
  }
}
.Inner570 {
  width: 100%;
  max-width: 570px;
  margin: 0 auto;
}

.Inner650 {
  width: 100%;
  max-width: 650px;
  margin: 0 auto;
}

.Inner760 {
  width: 100%;
  max-width: 760px;
  margin: 0 auto;
}

.Inner860 {
  width: 100%;
  max-width: 860px;
  margin: 0 auto;
}

.Inner890 {
  width: 100%;
  max-width: 890px;
  margin: 0 auto;
}

.Inner900 {
  width: 100%;
  max-width: 900px;
  margin: 0 auto;
}

.Inner1000 {
  width: 100%;
  max-width: 1000px;
  margin: 0 auto;
}

.Inner1020 {
  width: 100%;
  max-width: 1020px;
  margin: 0 auto;
}

.Inner1100 {
  width: 100%;
  max-width: 1100px;
  margin: 0 auto;
}

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

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

.flex-jcc {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
}

.flex-aic {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
}

.c_red {
  color: #ff0000;
}

@media screen and (min-width: 1001px) {
  .show1000 {
    display: none;
  }
}
@media screen and (max-width: 1000px) {
  .show1000 {
    display: block;
  }
}
@media screen and (min-width: 841px) {
  .hide840 {
    display: block;
  }
}
@media screen and (max-width: 840px) {
  .hide840 {
    display: none;
  }
}
@media screen and (min-width: 769px) {
  .show768 {
    display: none;
  }
}
@media screen and (max-width: 768px) {
  .show768 {
    display: block;
  }
  .hide768 {
    display: none;
  }
}
.mt00 {
  margin-top: 0 !important;
}

/* サービス｜送迎バス
ーーーーーーーーーーーーーーーーーーーーーーーーーーー*/
#kasou_kv {
  height: 400px;
  background-image: url(../img/service/sougei/sougei_top.jpg);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
}
#kasou_kv::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.1);
}
#kasou_kv .kasou_kv_wrap {
  bottom: 60px;
  left: 0;
  padding: 0 65px;
}
#kasou_kv h1 {
  color: #fff;
  font-family: "Noto Sans JP", sans-serif;
  line-height: 1.3;
}
#kasou_kv h1 span {
  display: block;
  font-family: "Roboto Condensed", sans-serif;
  font-weight: 400;
  margin-bottom: 5px;
}

#recruit #kasou_kv {
  height: 560px;
}

@media screen and (min-width: 769px) and (max-width: 1200px) {
  #kasou_kv {
    margin-top: 71px;
  }
}
@media screen and (max-width: 768px) {
  #kasou_kv {
    height: 51.2820512821vw;
    margin-top: 75px;
  }
  #kasou_kv .kasou_kv_wrap {
    bottom: 20px;
    left: 0;
    padding: 0 30px;
  }
  #kasou_kv h1 {
    font-size: 2.8rem;
  }
  #kasou_kv h1 span {
    font-size: 1.1rem;
  }
  #recruit #kasou_kv {
    height: 76.9230769231vw;
  }
  #service_tempo #kasou_kv h1 {
    letter-spacing: 0.05em;
  }
}
#service_contact #kasou_kv {
  background-image: url(/assets/img/service/contact/contact_top.jpg);
}

#service_kankou #kasou_kv {
  background-image: url(/assets/img/service/kankou/kankou_top.jpg);
  background-position: 50% 20%;
}

#service_shashu #kasou_kv {
  background-image: url(/assets/img/service/shashu/shashu_top.jpg);
}

#service_kankou_contact #kasou_kv {
  background-image: url(/assets/img/service/kankou_contact/kankou_contact_top.jpg?a);
}

#service_tempo #kasou_kv {
  background-image: url(/assets/img/sales/tempo/tempo_top.jpg);
}

#service_sales #kasou_kv {
  background-image: url(/assets/img/sales/sales/sales_top.jpg);
  background-position: 50% 6%;
}

#service_maintenance #kasou_kv {
  background-image: url(/assets/img/sales/maintenance/maintenance_top.jpg);
  background-position: 50% 0%;
}

#service_tenken #kasou_kv {
  background-image: url(/assets/img/sales/tenken/tenken_top.jpg);
  background-position: 50% 0%;
}

#recruit #kasou_kv {
  background-image: url(/assets/img/recruit/recruit_top.jpg);
  background-position: 50% 14%;
}

#recruit.takahashi #kasou_kv {
  background-image: url(/assets/img/recruit/interview/takahashi/takahashi_top.jpg);
}

#recruit.kaneko #kasou_kv {
  background-image: url(/assets/img/recruit/interview/kaneko/kaneko_top.jpg);
}

#recruit.nakagawa #kasou_kv {
  background-image: url(/assets/img/recruit/interview/nakagawa/nakagawa_top.jpg);
}

#recruit.oyasu #kasou_kv {
  background-image: url(/assets/img/recruit/interview/oyasu/oyasu_top.jpg);
}

#recruit.family #kasou_kv {
  background-image: url(/assets/img/recruit/family/family_top.jpg?230421a);
  background-position: 50% 36%;
}

@media screen and (max-width: 768px) {
  #service_contact #kasou_kv {
    background-image: url(/assets/img/service/contact/contact_top_sp.jpg);
  }
  #service_kankou #kasou_kv {
    background-image: url(/assets/img/service/kankou/kankou_top_sp.jpg);
  }
  #service_shashu #kasou_kv {
    background-image: url(/assets/img/service/shashu/shashu_top_sp.jpg);
  }
  #recruit #kasou_kv {
    background-image: url(/assets/img/recruit/recruit_top_sp.jpg);
  }
  #recruit.takahashi #kasou_kv {
    background-image: url(/assets/img/recruit/interview/takahashi/takahashi_top_sp.jpg);
  }
  #recruit.kaneko #kasou_kv {
    background-image: url(/assets/img/recruit/interview/kaneko/kaneko_top_sp.jpg);
  }
  #recruit.nakagawa #kasou_kv {
    background-image: url(/assets/img/recruit/interview/nakagawa/nakagawa_top_sp.jpg);
  }
  #recruit.oyasu #kasou_kv {
    background-image: url(/assets/img/recruit/interview/oyasu/oyasu_top_sp.jpg);
  }
}
/* .dot_slider */
.dot_slider {
  width: 100%;
  height: auto;
  margin-top: 60px;
  padding-left: 0;
}

.dot .slick-dots {
  bottom: -30px;
}

.slick-dots li {
  margin: 0 1px;
}
.slick-dots li button:before {
  font-size: 10px;
  opacity: 1;
  color: #d2d2d2;
}

.slick-dots li.slick-active button:before {
  color: #2c6439;
}

@media screen and (max-width: 768px) {
  .dot_slider_box .wrap {
    padding: 0;
  }
  .dot_slider {
    margin-top: 8.9743589744vw;
  }
}
.h2_ttl h2 {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(21.6px, 1.7142857143vw, 26.4px);
  color: #2C6439;
  font-weight: bold;
  letter-spacing: 0.16em;
  border-bottom: 1px solid #2c6439;
  padding-bottom: 15px;
  line-height: 1.4;
}

#news_detail .h2_ttl h1 {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(21.6px, 1.7142857143vw, 26.4px);
  color: #2C6439;
  font-weight: bold;
  letter-spacing: 0.16em;
  border-bottom: 1px solid #2c6439;
  padding-bottom: 15px;
  line-height: 1.4;
}

@media screen and (max-width: 768px) {
  .h2_ttl h2 {
    font-size: 1.8rem;
  }
  #news_detail .h2_ttl h1 {
    font-size: 1.8rem;
  }
}
/* #sougei01 */
#sougei01 {
  padding-top: 100px;
}
#sougei01 p {
  font-family: "Noto Sans JP", sans-serif;
}
#sougei01 p.fn_size24 {
  margin-bottom: 50px;
}
#sougei01 .sougei01_l {
  width: calc(100% - 150px);
  padding-right: 60px;
  box-sizing: border-box;
  margin-top: 20px;
}
#sougei01 .sougei01_r {
  width: 150px;
}
#sougei01 .sougei01_r > div:nth-child(1) {
  margin-bottom: 20px;
}
#sougei01 .dot_slider {
  width: 100%;
  height: auto;
  padding-top: 100px;
  margin-top: 0;
}

@media screen and (max-width: 768px) {
  #sougei01 {
    padding-top: 10.2564102564vw;
  }
  #sougei01 p.fn_size24 {
    font-size: 1.8rem;
    line-height: 1.5;
    margin-bottom: 6.4102564103vw;
  }
  #sougei01 .sougei01_l {
    width: 100%;
    padding-right: 0;
    margin-top: 0;
  }
  #sougei01 .sougei01_r {
    width: 100%;
    display: flex;
    justify-content: space-between;
    margin-top: 7.6923076923vw;
  }
  #sougei01 .sougei01_r > div {
    width: calc(50% - 5px);
  }
  #sougei01 .dot_slider {
    height: auto;
    padding-top: 12.8205128205vw;
  }
  #sougei01 .dot_slider_box .wrap {
    padding: 0;
  }
}
#sougei02 {
  padding-top: 115px;
}
#sougei02 .sougei_category_box {
  padding-top: 110px;
}
#sougei02 .sougei_category_box.first {
  padding-top: 65px;
}
#sougei02 .sougei_category_box.fourth .sougei02_txt_box .flex-jcs > p:nth-child(1) {
  width: 100%;
}

.sougei_h3 {
  letter-spacing: 0.12em;
  font-weight: 500;
}
.sougei_h3 span {
  font-family: "Roboto Condensed", sans-serif;
  color: #4eb748;
  letter-spacing: 0.08em;
  margin-right: 15px;
}

.slide01 {
  max-height: 400px;
  margin: 25px 0 40px;
}
.slide01 .slick-prev {
  left: 30px;
  z-index: 1;
}
.slide01 .slick-prev::before {
  content: "";
  background-image: url(/assets/img/common/slide_arrow.svg);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  width: 16px;
  height: 32px;
  display: block;
}
.slide01 .slick-next {
  right: 30px;
  z-index: 1;
}
.slide01 .slick-next::before {
  content: "";
  background-image: url(/assets/img/common/slide_arrow.svg);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  width: 16px;
  height: 32px;
  display: block;
  transform: rotate(180deg);
  margin-left: auto;
}
.slide01 li {
  margin: 0 5px;
  max-width: 650px;
  width: 90vw;
  height: auto;
}

.sougei02_txt_box .flex-jcs > p:nth-child(1) {
  width: calc(100% - 260px);
  font-weight: 300;
  text-align: justify;
  text-justify: inter-ideograph;
}
.sougei02_txt_box .flex-jcs > p:nth-child(2) {
  width: auto;
}
.sougei02_txt_box .l-footer__info__inner__btn a {
  background: #2C6439;
  color: #fff;
  text-align: center;
  width: 200px;
  margin-left: auto;
  padding: 15px 20px;
  cursor: pointer;
}
.sougei02_txt_box .l-footer__info__inner__btn a::after {
  filter: invert(100%);
}
.sougei02_txt_box .l-footer__info__inner__btn a:hover {
  padding: 15px 10px 15px 30px;
}

@media screen and (max-width: 768px) {
  #sougei02 {
    padding-top: 15.3846153846vw;
  }
  #sougei02 .sougei_category_box {
    padding-top: 15.3846153846vw;
  }
  #sougei02 .sougei_category_box.first {
    padding-top: 10.2564102564vw;
  }
  .sougei_h3 span {
    font-size: 2.4rem;
  }
  .slide01 {
    margin: 3.8461538462vw 0 7.6923076923vw;
  }
  .slide01 li {
    max-width: 82.0512820513vw;
  }
  .slide01 .slick-prev {
    left: 10px;
  }
  .slide01 .slick-prev::before {
    width: 2.5641025641vw;
    height: 5.1282051282vw;
  }
  .slide01 .slick-next {
    right: 10px;
  }
  .slide01 .slick-next::before {
    width: 2.5641025641vw;
    height: 5.1282051282vw;
  }
  .sougei02_txt_box .flex-jcs > p:nth-child(1) {
    width: 100%;
  }
  .sougei02_txt_box .flex-jcs > p:nth-child(2) {
    width: 100%;
    margin-top: 7.6923076923vw;
  }
  .sougei02_txt_box .l-footer__info__inner__btn a {
    width: 100%;
    max-width: 100%;
    margin: 0 auto;
    padding: 4.6153846154vw 5.1282051282vw;
  }
}
#sougei03 {
  padding: 115px 0 140px;
}
#sougei03 .h2_ttl {
  margin-bottom: 60px;
}
#sougei03 .sougei03_img {
  margin: 55px 0 40px;
}
#sougei03 ul li {
  width: 48%;
}
#sougei03 ul li:nth-child(2n-1) {
  margin-right: 2%;
}
#sougei03 ul li:nth-child(-n+2) {
  margin-bottom: 40px;
}
#sougei03 ul li p.fn_size17 {
  margin-bottom: 15px;
  font-weight: 500;
}

@media screen and (max-width: 768px) {
  #sougei03 {
    padding: 15.3846153846vw 0 25.641025641vw;
  }
  #sougei03 .h2_ttl {
    margin-bottom: 10.2564102564vw;
  }
  #sougei03 .sougei03_img {
    margin: 6.9230769231vw 0 5.1282051282vw;
  }
  #sougei03 ul li {
    width: 100%;
  }
  #sougei03 ul li:nth-child(2n-1) {
    margin-right: 0;
  }
  #sougei03 ul li:not(:last-child) {
    margin-bottom: 5.1282051282vw;
  }
  #sougei03 ul li p.fn_size17 {
    margin-bottom: 1.7948717949vw;
  }
}
#sougei_contact {
  background-color: #2C6439;
  padding: 80px 0;
  color: #fff;
  text-align: center;
}
#sougei_contact .fn_size14 {
  margin: 40px 0;
  font-weight: 300;
}
#sougei_contact .l-footer__info__inner__btn {
  margin: 0 auto;
}
#sougei_contact .l-footer__info__inner__btn a {
  width: 360px;
  max-width: 360px;
  font-size: clamp(13.5px, 1.0714285714vw, 16.5px);
  margin: 0 auto;
  color: #2C6439;
  padding: 25px 20px;
}
#sougei_contact .l-footer__info__inner__btn a:hover {
  padding: 25px 10px 25px 30px;
}

@media screen and (max-width: 768px) {
  #sougei_contact {
    padding: 15.3846153846vw 0;
  }
  #sougei_contact h2 {
    font-size: 1.8rem;
  }
  #sougei_contact .fn_size14 {
    margin: 10.2564102564vw 0;
  }
  #sougei_contact .l-footer__info__inner__btn {
    margin-top: 0;
    width: auto;
  }
  #sougei_contact .l-footer__info__inner__btn a {
    width: 82.0512820513vw;
    max-width: none;
    font-size: 1.5rem;
    padding: 6.4102564103vw 5.1282051282vw;
  }
  #sougei_contact .l-footer__info__inner__btn a::after {
    width: 1.2820512821vw;
    height: 2.3076923077vw;
  }
}
#pankuzu {
  position: relative;
  padding: 35px 0;
  border-top: 1px solid #f2f2f2;
}
#pankuzu a, #pankuzu p {
  font-size: clamp(10.8px, 0.8571428571vw, 13.2px);
  font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
}
#pankuzu a {
  color: #2C6439;
  text-decoration: underline;
}
#pankuzu p {
  display: inline-block;
}
#pankuzu .arrow {
  display: inline-block;
  margin: 0 20px;
  width: 8px;
  height: 8px;
  border-right: 0.5px solid #000;
  border-bottom: 0.5px solid #000;
  transform: rotate(-45deg);
}
#pankuzu .page_top {
  position: absolute;
  top: calc(50% - 70px);
  left: 50%;
  transform: translate(-50%, -50%);
}
#pankuzu .page_top a {
  display: inline-block;
  width: 14px;
  height: 14px;
  border-top: 0.5px solid #000;
  border-right: 0.5px solid #000;
  transform: rotate(-45deg);
}

#top #pankuzu .page_top {
  top: calc(50% + 20px);
}

#top #pankuzu {
  background-color: #fff;
  border: none;
}
#top #pankuzu .Inner890 > a, #top #pankuzu .Inner890 > .arrow, #top #pankuzu .Inner890 > p {
  display: none;
}

@media screen and (max-width: 768px) {
  #pankuzu {
    padding: 5.1282051282vw 0;
  }
  #pankuzu a, #pankuzu p {
    font-size: 1rem;
  }
  #pankuzu .arrow {
    margin: 0 1.5384615385vw;
    width: 1.5384615385vw;
    height: 1.5384615385vw;
  }
  #pankuzu .page_top {
    display: none;
  }
}
.modal_box {
  overflow: auto;
  overscroll-behavior-y: none;
  box-sizing: border-box;
  background-color: #fff;
  width: calc(100vw - 20px);
  max-width: 860px;
  padding: 90px 80px 110px;
}
.modal_box .modal_wrap > div {
  color: #2C6439;
  padding-bottom: 35px;
  margin-bottom: 60px;
  position: relative;
}
.modal_box .modal_wrap > div::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 30px;
  height: 2px;
  background-color: #2C6439;
}
.modal_box ul {
  max-width: 700px;
  margin: 0 auto;
}
.modal_box ul li {
  width: 50%;
  margin-bottom: 15px;
  font-weight: 300;
  line-height: 1.2;
  font-feature-settings: palt;
}
.modal_box ul li span {
  color: #3a9747;
}
.modal_box ul li:nth-child(2n) {
  padding-left: 25px;
  margin-right: -0.5em;
}
.modal_box ul li a {
  color: #3a9747;
  text-decoration: underline;
  position: relative;
  padding-right: 20px;
}
.modal_box ul li a::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 0;
  transform: translateY(-50%);
  width: 10px;
  height: 10px;
  background-image: url(/assets/img/common/icon__another_green.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
}
.modal_box ul li a:hover {
  opacity: 0.6;
}

.lity-container .lity-close {
  position: absolute;
  text-indent: -1.5em;
  overflow: hidden;
  width: 30px;
  height: 30px;
  top: 25px;
  right: 25px;
  transition: all 0.3s ease-in-out;
}
.lity-container .lity-close:hover {
  opacity: 0.6;
}
.lity-container .lity-close::after {
  content: "";
  display: block;
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  background-image: url(/assets/img/common/lity_batsu.svg);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
}

@media screen and (max-width: 820px) {
  .modal_box ul li:nth-child(2n) {
    padding-left: 0;
  }
}
@media screen and (max-width: 768px) {
  .modal_box {
    padding: 19.2307692308vw 6.4102564103vw;
    max-height: 600px !important;
    height: calc(100dvh - 30px);
  }
  .modal_box .modal_wrap > div {
    font-size: 1.8rem;
    padding-bottom: 7.6923076923vw;
    margin-bottom: 10.2564102564vw;
  }
  .modal_box .modal_wrap > div::after {
    width: 7.6923076923vw;
  }
  .modal_box ul li {
    width: 100%;
    margin-bottom: 3.8461538462vw;
  }
  .modal_box ul li:nth-child(2n) {
    padding-left: 0;
  }
  .lity-container .lity-close {
    width: 5.1282051282vw;
    height: 5.1282051282vw;
    top: 20px;
    right: 20px;
    text-indent: 2em;
  }
}
@media screen and (max-width: 640px) {
  .modal_box ul li {
    width: 100%;
  }
  .modal_box ul li:nth-child(2n) {
    padding-left: 0;
  }
}
/* サービス｜コンタクト
ーーーーーーーーーーーーーーーーーーーーーーーーーーー*/
#service_contact01 {
  padding: 100px 0 140px;
}
#service_contact01 form {
  margin-top: 70px;
}

.tel-wrap dd .input-area,
.postal-code-wrap dd .input-area,
.ninzuu-wrap dd .input-area {
  max-width: 50%;
}

.table-list {
  width: 100%;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  margin-bottom: 30px;
}
.table-list dt {
  width: 240px;
  letter-spacing: 0.1em;
}
.table-list dd {
  width: calc(100% - 240px);
  font-size: clamp(12.6px, 1vw, 15.4px);
  letter-spacing: 0.1em;
}
.table-list dd .input-area {
  width: 100%;
  height: 50px;
  border: 1px solid #cbcbcb;
  border-radius: 2px;
  padding: 0 20px;
}
.table-list dd textarea {
  width: 100%;
  height: 200px;
  border: 1px solid #cbcbcb;
  border-radius: 2px;
  padding: 10px 20px;
}
.table-list dd.radio ul li {
  margin-right: 40px;
}
.table-list dd.radio label {
  padding-left: 47px;
  position: relative;
  cursor: pointer;
}
.table-list dd.radio label::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  width: 30px;
  height: 30px;
  border: 1px solid #cbcbcb;
  border-radius: 100%;
}
.table-list dd.radio label::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 15px;
  transform: translate(-50%, -50%) scale(0);
  width: 15px;
  height: 15px;
  border-radius: 100%;
  background-color: #3a9747;
  transition: all 0.3s;
  opacity: 0;
}
.table-list dd.right_arrow {
  position: relative;
}
.table-list dd.right_arrow::after {
  content: "";
  position: absolute;
  top: 50%;
  right: calc(50% + 15px);
  transform: translateY(-50%);
  width: 8px;
  height: 19px;
  background-image: url(/assets/img/common/contact_arrow.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
}
.table-list dd select {
  width: 100%;
  max-width: 50%;
  height: 50px;
  border: 1px solid #cbcbcb;
  border-radius: 2px;
  padding: 0 20px;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background-color: #fff;
  font-size: 16px;
}

input[type=radio], input[type=checkbox] {
  display: none;
}

input[type=radio]:checked + .check::after,
input[type=checkbox]:checked + .check::after {
  opacity: 1;
  transform: translate(-50%, -50%) scale(1);
}

.textareaWrap .table-list {
  align-items: flex-start;
}
.textareaWrap .table-list dt {
  padding-top: 15px;
}

.PPlinkWrap {
  padding: 30px 0 0;
}
.PPlinkWrap .checkbox {
  margin-bottom: 40px;
}
.PPlinkWrap .checkbox input#agree {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  margin: 0;
}
.PPlinkWrap .checkbox label.check {
  line-height: 35px;
  padding-left: 57px;
  position: relative;
  cursor: pointer;
}
.PPlinkWrap .checkbox label.check::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  width: 35px;
  height: 35px;
  border: 1px solid #cbcbcb;
  transition: all 0.4s;
}
.PPlinkWrap .checkbox label.check::after {
  content: "";
  position: absolute;
  top: 0;
  left: 14px;
  transform: rotate(-45deg) translateY(-50%);
  width: 27px;
  height: 15px;
  border-left: 5px solid #3a9747;
  border-bottom: 5px solid #3a9747;
  transition: all 0.4s;
  opacity: 0;
}

input[type=checkbox]:checked + .check::after {
  opacity: 1;
}

.PPlink {
  margin-bottom: 60px;
}
.PPlink a {
  color: #2C6439;
  text-decoration: underline;
}

#submit {
  -moz-appearance: none;
       appearance: none;
  -webkit-appearance: none;
  cursor: pointer;
  text-align: center;
  display: inline-block;
  background-color: #2C6439;
  color: #fff;
  max-width: 300px;
  width: 100%;
  padding: 20px;
  border: unset;
  transition: all 0.4s;
}
#submit:hover {
  opacity: 0.6;
}

.error_box {
  padding: 25px 20px;
  margin-bottom: 70px;
  display: none;
  width: 100%;
  text-align: center;
  box-sizing: border-box;
  border: 1px solid #d00;
  color: #d00;
  line-height: 2;
}

@media screen and (max-width: 768px) {
  #service_contact01 {
    padding: 10.2564102564vw 0 25.641025641vw;
  }
  #service_contact01 form {
    margin-top: 12.8205128205vw;
  }
  .contact-table {
    font-size: 1.4rem;
  }
  .tel-wrap dd .input-area,
.postal-code-wrap dd .input-area,
.ninzuu-wrap dd .input-area {
    max-width: 66.6666666667vw;
    width: 100%;
  }
  .table-list {
    margin-bottom: 7.6923076923vw;
  }
  .table-list dt {
    width: 100%;
    margin-bottom: 3.8461538462vw;
  }
  .table-list dd {
    width: 100%;
  }
  .table-list dd .input-area {
    height: 12.8205128205vw;
    padding: 0 2.5641025641vw;
    font-size: 1.4rem;
  }
  .table-list dd textarea {
    height: 51.2820512821vw;
    padding: 2.5641025641vw;
    font-size: 1.4rem;
  }
  .table-list dd.radio ul li {
    margin-right: 5.1282051282vw;
  }
  .table-list dd.radio label {
    padding-left: 6.9230769231vw;
    font-size: 1.4rem;
  }
  .table-list dd.radio label::before {
    top: 50%;
    left: 0;
    transform: translateY(-50%);
    width: 5.1282051282vw;
    height: 5.1282051282vw;
    border: 1px solid #cbcbcb;
    border-radius: 100%;
  }
  .table-list dd.radio label::after {
    content: "";
    position: absolute;
    top: 50%;
    left: 2.5641025641vw;
    transform: translate(-50%, -50%) scale(0);
    width: 2.5641025641vw;
    height: 2.5641025641vw;
    border-radius: 100%;
    background-color: #3a9747;
    transition: all 0.3s;
    opacity: 0;
  }
  .table-list dd.right_arrow {
    position: relative;
  }
  .table-list dd.right_arrow::after {
    content: "";
    position: absolute;
    top: 50%;
    right: calc(50% + 15px);
    transform: translateY(-50%);
    width: 1.5384615385vw;
    height: 4.1025641026vw;
    background-image: url(/assets/img/common/contact_arrow.png);
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
  }
  .table-list dd select {
    width: 100%;
    max-width: 50%;
    height: 12.8205128205vw;
    border: 1px solid #cbcbcb;
    border-radius: 2px;
    padding: 0 2.5641025641vw;
    -webkit-appearance: none;
       -moz-appearance: none;
            appearance: none;
    font-size: 1.4rem;
  }
  .PPlinkWrap {
    padding-top: 2.5641025641vw;
  }
  .PPlinkWrap .checkbox {
    margin-bottom: 6.4102564103vw;
    text-align: left;
  }
  .PPlinkWrap .checkbox label.check {
    line-height: 8.9743589744vw;
    padding-left: 14.1025641026vw;
  }
  .PPlinkWrap .checkbox label.check::before {
    width: 8.9743589744vw;
    height: 8.9743589744vw;
  }
  .PPlinkWrap .checkbox label.check::after {
    left: 3.5897435897vw;
    width: 6.9230769231vw;
    height: 3.8461538462vw;
  }
  .PPlink {
    margin-bottom: 12.8205128205vw;
    text-align: left;
  }
  #submit {
    max-width: 100%;
    border-radius: 0;
  }
  .error_box {
    padding: 3.3333333333vw 2.7777777778vw;
    margin-bottom: 9.7222222222vw;
  }
  input, textarea, select {
    font-size: 16px !important;
  }
}
@media screen and (max-width: 500px) {
  .table-list dd.radio ul li {
    margin-right: 0;
    margin-bottom: 5.1282051282vw;
    width: 100%;
  }
}
/* サービス｜観光バス
ーーーーーーーーーーーーーーーーーーーーーーーーーーー*/
#kankou01 {
  padding-top: 100px;
}
#kankou01 p.lead {
  margin-top: 60px;
}
#kankou01 .l-footer__info__inner__btn {
  margin-left: 0;
  padding-top: 15px;
}
#kankou01 .l-footer__info__inner__btn a {
  background-color: #2C6439;
  color: #fff;
  text-align: center;
  width: 200px;
  padding: 15px 20px;
  letter-spacing: 0.08em;
}
#kankou01 .l-footer__info__inner__btn a::after {
  filter: invert(100%);
}
#kankou01 .l-footer__info__inner__btn a:hover {
  padding: 15px 10px 15px 30px;
}

@media screen and (max-width: 768px) {
  #kankou01 {
    padding-top: 10.2564102564vw;
  }
  #kankou01 p.lead {
    margin-top: 8.9743589744vw;
  }
  #kankou01 .l-footer__info__inner__btn {
    margin: 0;
    padding: 7.6923076923vw 5% 0;
  }
  #kankou01 .l-footer__info__inner__btn a {
    margin: 0 auto;
    font-size: 1.3rem;
    padding: 4.6153846154vw 6.8965517241vw;
    width: 100%;
    max-width: none;
  }
}
.kankou02 {
  padding-top: 100px;
}
.kankou02 p.lead {
  margin-top: 60px;
  margin-bottom: 60px;
}
.kankou02 .flex-jcs > div {
  width: calc(50% - 15px);
}
.kankou02 .flex-jcs > div p {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 300;
  margin-top: 20px;
}
.kankou02 p.fn_size13 {
  margin: 25px 0 30px;
}
.kankou02 .l-footer__info__inner__btn {
  width: auto;
}
.kankou02 .l-footer__info__inner__btn a {
  background-color: #2C6439;
  color: #fff;
  width: 300px;
  padding: 15px 20px;
  font-size: 1.3rem;
}
.kankou02 .l-footer__info__inner__btn a::after {
  filter: invert(100%);
}
.kankou02 .l-footer__info__inner__btn a:hover {
  padding: 15px 10px 15px 30px;
}

@media screen and (max-width: 768px) {
  .kankou02 {
    padding-top: 15.3846153846vw;
  }
  .kankou02 p.lead {
    margin: 10.2564102564vw 0;
  }
  .kankou02 .flex-jcs > div {
    width: 100%;
    margin-bottom: 10.2564102564vw;
  }
  .kankou02 .flex-jcs > div:last-child {
    margin-bottom: 0;
  }
  .kankou02 .flex-jcs > div p {
    margin-top: 6.4102564103vw;
  }
  .kankou02 p.fn_size13 {
    margin: 4.358974359vw 0 3.8461538462vw;
  }
  .kankou02 .l-footer__info__inner__btn {
    width: auto;
  }
  .kankou02 .l-footer__info__inner__btn a {
    width: 100%;
    padding: 4.6153846154vw 5.1282051282vw;
  }
}
#kankou03 {
  background-color: #e4e8e9;
  padding-top: 80px;
  padding-bottom: 80px;
  margin-top: 140px;
}
#kankou03 .l-footer__info__inner__btn {
  margin-left: 0;
  width: calc(50% - 7px);
  text-align: center;
}
#kankou03 .l-footer__info__inner__btn a {
  width: 100%;
  max-width: 275px;
  background-color: #2c6439;
  color: #fff;
  padding: 25px 20px;
  letter-spacing: 0.12em;
  font-size: 1.5rem;
}
#kankou03 .l-footer__info__inner__btn a::after {
  filter: invert(100%);
}
#kankou03 .l-footer__info__inner__btn a:hover {
  padding: 25px 10px 25px 30px;
}

@media screen and (max-width: 768px) {
  #kankou03 {
    margin-top: 25.641025641vw;
    padding: 12.8205128205vw 0;
  }
  #kankou03 .l-footer__info__inner__btn {
    width: 100%;
  }
  #kankou03 .l-footer__info__inner__btn:first-child {
    margin-top: 0;
  }
  #kankou03 .l-footer__info__inner__btn:last-child {
    margin-top: 3.8461538462vw;
  }
  #kankou03 .l-footer__info__inner__btn a {
    margin: 0 auto;
    max-width: none;
    width: 100%;
    max-width: 82.0512820513vw;
    padding: 6.4102564103vw 5.1282051282vw;
  }
  #kankou03 .l-footer__info__inner__btn a::after {
    width: 1.2820512821vw;
    height: 2.3076923077vw;
  }
}
/* サービス｜車種紹介
ーーーーーーーーーーーーーーーーーーーーーーーーーーー*/
#shashu01 {
  padding-top: 100px;
}
#shashu01 .slide01 {
  margin: 60px 0 30px;
}
#shashu01 .setsubi_box {
  margin-top: 40px;
}
#shashu01 .setsubi_box .Inner650 {
  background-color: #f2f2f2;
  border-radius: 5px;
  padding: 50px;
}
#shashu01 .setsubi_box .setsubi_box_l {
  width: 275px;
}
#shashu01 .setsubi_box .setsubi_box_l p:nth-child(2) {
  margin: 25px 0 30px;
}
#shashu01 .setsubi_box .setsubi_box_l .l-footer__info__inner__btn {
  margin-left: 0;
}
#shashu01 .setsubi_box .setsubi_box_l .l-footer__info__inner__btn a {
  width: 200px;
  max-width: 200px;
  color: #fff;
  background-color: #2c6439;
  padding: 15px 20px;
}
#shashu01 .setsubi_box .setsubi_box_l .l-footer__info__inner__btn a::after {
  filter: invert(100%);
}
#shashu01 .setsubi_box .setsubi_box_l .l-footer__info__inner__btn a:hover {
  padding: 15px 10px 15px 30px;
}
#shashu01 .setsubi_box .setsubi_box_r {
  width: calc(100% - 275px);
}
#shashu01 .setsubi_box .setsubi_box_r .flex {
  margin: 25px -5px 10px 0;
}
#shashu01 .setsubi_box .setsubi_box_r .flex > div {
  width: 80px;
  margin-right: 5px;
  margin-bottom: 5px;
}

@media screen and (max-width: 768px) {
  #shashu01 {
    padding-top: 10.2564102564vw;
  }
  #shashu01 .slide01 {
    margin: 11.5384615385vw 0 7.6923076923vw;
  }
  #shashu01 .setsubi_box {
    margin-top: 8.9743589744vw;
  }
  #shashu01 .setsubi_box .Inner650 {
    padding: 7.6923076923vw 6.4102564103vw;
  }
  #shashu01 .setsubi_box .Inner650 > .flex-jcs {
    flex-flow: column-reverse;
  }
  #shashu01 .setsubi_box .setsubi_box_l,
#shashu01 .setsubi_box .setsubi_box_r {
    width: 100%;
  }
  #shashu01 .setsubi_box .setsubi_box_l .fn_size14,
#shashu01 .setsubi_box .setsubi_box_r .fn_size14 {
    font-size: 1.4rem;
  }
  #shashu01 .setsubi_box .setsubi_box_r {
    margin-bottom: 7.6923076923vw;
  }
  #shashu01 .setsubi_box .setsubi_box_r .flex {
    margin: 5.1282051282vw -5px 3.8461538462vw 0;
  }
  #shashu01 .setsubi_box .setsubi_box_r .flex > div {
    width: calc(33.3333333333% - 5px);
  }
  #shashu01 .setsubi_box .setsubi_box_l p:nth-child(2) {
    margin: 5.1282051282vw -5px 3.8461538462vw 0;
  }
  #shashu01 .setsubi_box .setsubi_box_l .l-footer__info__inner__btn {
    margin-top: 7.6923076923vw;
  }
  #shashu01 .setsubi_box .setsubi_box_l .l-footer__info__inner__btn a {
    margin: 0 auto;
    font-size: 1.3rem;
    text-align: center;
    padding: 3.8461538462vw 5.1282051282vw;
    width: 100%;
    max-width: 51.2820512821vw;
  }
  #shashu01 .setsubi_box .setsubi_box_l .l-footer__info__inner__btn a::after {
    width: 1.2820512821vw;
    height: 2.3076923077vw;
  }
}
/* サービス｜車両販売・整備
ーーーーーーーーーーーーーーーーーーーーーーーーーーー*/
.tempo01 .flex_box {
  margin-top: 100px;
}
.tempo01 .flex_box .tempo01_l {
  width: calc(100% - 440px);
}
.tempo01 .flex_box .tempo01_r {
  width: 390px;
}
.tempo01 .flex_box .tempo01_r p:nth-child(1) {
  margin: 10px 0 30px;
  font-weight: 500;
}
.tempo01 .flex_box .tempo01_r .l-footer__info__inner__btn {
  padding-top: 0 !important;
  margin-top: 35px;
}
.tempo01 .flex_box .tempo01_r .l-footer__info__inner__btn a {
  text-align: left !important;
}
.tempo01 .flex_box .flex-jcs:nth-of-type(2) {
  flex-flow: row-reverse;
}
.tempo01 .flex_box .flex-jcs:nth-of-type(2),
.tempo01 .flex_box .flex-jcs:nth-of-type(3) {
  margin-top: 60px;
}

@media screen and (min-width: 769px) and (max-width: 892px) {
  .tempo01 .flex_box .tempo01_l {
    width: calc(100% - 50vw);
  }
  .tempo01 .flex_box .tempo01_r {
    width: 46.1538461538vw;
    margin-left: 3.8461538462vw;
  }
  .tempo01 .flex_box .flex-jcs:nth-of-type(2) .tempo01_r {
    margin-left: 0;
    margin-right: 3.8461538462vw;
  }
}
@media screen and (max-width: 768px) {
  .tempo01 .flex_box {
    margin-top: 17.9487179487vw;
  }
  .tempo01 .flex_box .tempo01_l {
    width: 100%;
  }
  .tempo01 .flex_box .tempo01_r {
    width: 100%;
    margin-top: 6.4102564103vw;
  }
  .tempo01 .flex_box .tempo01_r p:nth-child(1) {
    margin: 0 0 3.8461538462vw;
    line-height: 1.3;
  }
  .tempo01 .flex_box .tempo01_r .l-footer__info__inner__btn {
    margin-top: 4.358974359vw !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
  }
  .tempo01 .flex_box .tempo01_r .l-footer__info__inner__btn a {
    text-align: center !important;
  }
  .tempo01 .flex_box .flex-jcs:nth-of-type(2) {
    flex-flow: column;
  }
  .tempo01 .flex_box .flex-jcs:nth-of-type(2),
.tempo01 .flex_box .flex-jcs:nth-of-type(3) {
    margin-top: 11.5384615385vw;
  }
}
#tempo02 {
  padding-top: 120px;
}
#tempo02 .Inner860 > .flex-jcs {
  margin-top: 60px;
}
#tempo02 .Inner860 > .flex-jcs .w100_img {
  margin-bottom: 20px;
}
#tempo02 p.tempo02_txt {
  margin: 55px 0 50px;
}
#tempo02 .l-footer__info__inner__btn {
  margin-left: 0;
}
#tempo02 .l-footer__info__inner__btn a {
  background-color: #2C6439;
  color: #fff;
  margin-left: auto;
  margin-top: 20px;
}
#tempo02 .l-footer__info__inner__btn a::after {
  background-image: url(/assets/img/common/icon__another.svg);
  width: 8px;
  height: 8px;
}
#tempo02 .tempo02_btn_box {
  background-color: #ef3741;
  color: #fff;
  padding: 60px 0;
}
#tempo02 .tempo02_btn_box p.fn_size18 {
  text-align: center;
}
#tempo02 .tempo02_btn_box .l-footer__info__inner__btn {
  width: auto;
  padding: 0 5%;
}
#tempo02 .tempo02_btn_box .l-footer__info__inner__btn a {
  background-color: #fff;
  color: #ef3741;
  margin: 20px auto 0;
  width: 300px;
  text-align: center;
  font-size: 1.3rem;
  padding: 15px 20px;
}
#tempo02 .tempo02_btn_box .l-footer__info__inner__btn a::after {
  background-image: url(../img/common/icon__arrow--red.svg);
}
#tempo02 .tempo02_btn_box .l-footer__info__inner__btn a:hover {
  padding: 15px 10px 15px 30px;
}

.img3_flex_box .w100_img {
  width: 100%;
}
.img3_flex_box .w50_img {
  width: calc(50% - 10px);
}

@media screen and (max-width: 768px) {
  #tempo02 {
    padding-top: 15.3846153846vw;
  }
  #tempo02 .Inner860 > .flex-jcs {
    margin-top: 11.5384615385vw;
  }
  #tempo02 .Inner860 > .flex-jcs .w100_img {
    margin-bottom: 1.2820512821vw;
  }
  #tempo02 p.tempo02_txt {
    margin: 6.9230769231vw 0 6.4102564103vw;
  }
  #tempo02 .tempo02_btn_box {
    padding: 8.9743589744vw 0;
  }
  #tempo02 .tempo02_btn_box .l-footer__info__inner__btn a {
    margin: 5.1282051282vw auto 0;
    width: 100%;
    font-size: 1.3rem;
    padding: 4.6153846154vw 5.1282051282vw;
  }
  #tempo02 .tempo02_btn_box .l-footer__info__inner__btn a::after {
    width: 2.0512820513vw;
    height: 2.0512820513vw;
  }
  .img3_flex_box .w50_img {
    width: calc(50% - 0.641025641vw);
  }
}
#tempo03 {
  padding-top: 100px;
}
#tempo03 .tempo03bg {
  background-color: #f2f2f2;
  border-radius: 5px;
  padding: 60px;
}
#tempo03 .tempo03bg > .flex-jcs .tempo_l {
  width: calc(100% - 455px);
}
#tempo03 .tempo03bg > .flex-jcs .tempo_r {
  width: 410px;
  padding-left: 45px;
  box-sizing: unset;
}
#tempo03 .tempo03bg > .flex-jcs .tempo_r p:nth-child(1) {
  margin: 10px 0 30px;
}
#tempo03 .tempo03bg > .flex-jcs .tempo_r .flex-aic {
  margin-top: 30px;
}
#tempo03 .tempo03bg > .flex-jcs .tempo_r .flex-aic .l-footer__info__inner__btn {
  width: 200px;
  margin-left: 0;
}
#tempo03 .tempo03bg > .flex-jcs .tempo_r .flex-aic .l-footer__info__inner__btn:first-child {
  margin: 0 10px 0 0;
}
#tempo03 .tempo03bg > .flex-jcs .tempo_r .flex-aic .l-footer__info__inner__btn a {
  box-sizing: border-box;
  background-color: #2C6439;
  color: #fff;
  padding: 15px 20px;
}
#tempo03 .tempo03bg > .flex-jcs .tempo_r .flex-aic .l-footer__info__inner__btn a::after {
  background-image: url(/assets/img/common/icon__another.svg);
  width: 8px;
  height: 8px;
  right: 15px;
}
#tempo03 .tempo03bg > .flex-jcs .tempo_r .flex-aic .l-footer__info__inner__btn a:hover {
  padding: 15px 10px 15px 30px;
}
#tempo03 .tempo03bg > .flex-jcs .tempo_r .flex-aic .l-footer__info__inner__btn a:hover::after {
  right: 5px;
}

@media screen and (min-width: 769px) and (max-width: 1299px) {
  #tempo03 .tempo03bg {
    padding: 60px 4.6153846154vw;
  }
  #tempo03 .tempo03bg > .flex-jcs .tempo_r .flex-aic {
    margin-top: 2.3076923077vw;
  }
}
@media screen and (max-width: 768px) {
  #tempo03 {
    padding-top: 10.2564102564vw;
  }
  #tempo03 .wrap {
    padding: 0;
  }
  #tempo03 .tempo03bg {
    padding: 12.8205128205vw 5%;
  }
  #tempo03 .tempo03bg > .flex-jcs .tempo_l {
    width: 100%;
  }
  #tempo03 .tempo03bg > .flex-jcs .tempo_r {
    width: 100%;
    padding-left: 0;
  }
  #tempo03 .tempo03bg > .flex-jcs .tempo_r p:nth-child(1) {
    margin: 5.1282051282vw 0 !important;
  }
  #tempo03 .tempo03bg > .flex-jcs .tempo_r .flex-aic {
    margin-top: 3.8461538462vw;
  }
  #tempo03 .tempo03bg > .flex-jcs .tempo_r .flex-aic .l-footer__info__inner__btn {
    width: 100%;
  }
  #tempo03 .tempo03bg > .flex-jcs .tempo_r .flex-aic .l-footer__info__inner__btn:first-child {
    margin: 0 0 1.1538461538vw;
  }
  #tempo03 .tempo03bg > .flex-jcs .tempo_r .flex-aic .l-footer__info__inner__btn a {
    padding: 4.6153846154vw 5.1282051282vw;
  }
  #tempo03 .tempo03bg > .flex-jcs .tempo_r .flex-aic .l-footer__info__inner__btn a::after {
    width: 2.0512820513vw;
    height: 2.0512820513vw;
  }
  #tempo03 .tokuten {
    padding: 10.2564102564vw 7.6923076923vw 7.6923076923vw;
    background-color: #fff;
    margin: 14.1025641026vw auto 0;
    max-width: 660px;
    width: 100%;
    border-radius: 5px;
  }
  #tempo03 .tokuten > p {
    width: 80%;
    max-width: 270px;
    padding: 10px;
    text-align: center;
  }
  #tempo03 .tokuten .tokuten_l,
#tempo03 .tokuten .tokuten_r {
    width: 285px;
  }
  #tempo03 .tokuten .tokuten_l .flex-aic > div,
#tempo03 .tokuten .tokuten_r .flex-aic > div {
    width: 12.8205128205vw;
    margin-right: 10px;
  }
  #tempo03 .tokuten .tokuten_l .flex-aic {
    margin-right: 0;
    margin-bottom: 15px;
  }
  #tempo03 .tempo03bg > .flex-aic {
    margin-top: 14.1025641026vw;
  }
  #tempo03 .tempo03bg > .flex-aic .l-footer__info__inner__btn {
    margin-left: 0;
    width: 100%;
  }
  #tempo03 .tempo03bg > .flex-aic .l-footer__info__inner__btn a {
    width: 100%;
    max-width: 100%;
    text-align: center;
  }
  #tempo03 .tempo03bg > .flex-aic .l-footer__info__inner__btn a::after {
    background-image: url(/assets/img/common/icon__another.svg);
    width: 8px;
    height: 8px;
  }
  #tempo03 .tempo03bg > .flex-aic .l-footer__info__inner__btn:first-child {
    margin-right: 0;
    margin-top: 0;
  }
  #tempo03 .tempo03bg > .flex-aic .l-footer__info__inner__btn:last-child {
    margin-top: 3.8461538462vw;
  }
}
#tempo04 {
  padding-top: 100px;
}
#tempo04 dl {
  margin: 60px 0 80px;
}
#tempo04 dl dt {
  width: 115px;
}
#tempo04 dl dd {
  width: calc(100% - 115px);
}
#tempo04 dl dt, #tempo04 dl dd {
  margin-bottom: 25px;
}

@media screen and (max-width: 768px) {
  #tempo04 {
    padding-top: 15.3846153846vw;
  }
  #tempo04 dl {
    margin-top: 11.5384615385vw;
    margin-bottom: 10.2564102564vw;
  }
  #tempo04 dl dt, #tempo04 dl dd {
    width: 100%;
  }
  #tempo04 dl dt {
    margin-bottom: 15px;
  }
  #tempo04 .map iframe {
    height: 51.2820512821vw;
  }
}
#service_sales #kankou03 {
  margin-top: 0;
}

#service_tempo #kankou03 .l-footer__info__inner__btn,
#service_sales #kankou03 .l-footer__info__inner__btn,
#service_maintenance #kankou03 .l-footer__info__inner__btn,
#service_tenken #kankou03 .l-footer__info__inner__btn {
  width: calc(25% - 7px);
}

#service_sales #kankou03,
#service_tenken #kankou03,
#service_maintenance #kankou03 {
  margin-top: 140px;
}

@media screen and (max-width: 768px) {
  #service_tempo #kankou03,
#service_maintenance #kankou03,
#service_tenken #kankou03 {
    margin-top: 0;
  }
  #service_tempo #kankou03 .l-footer__info__inner__btn,
#service_maintenance #kankou03 .l-footer__info__inner__btn,
#service_tenken #kankou03 .l-footer__info__inner__btn {
    width: 100%;
    margin-top: 3.8461538462vw;
  }
  #service_tempo #kankou03 .l-footer__info__inner__btn a,
#service_maintenance #kankou03 .l-footer__info__inner__btn a,
#service_tenken #kankou03 .l-footer__info__inner__btn a {
    max-width: unset;
  }
  #service_maintenance #kankou03,
#service_sales #kankou03,
#service_tenken #kankou03 {
    margin-top: 25.641025641vw;
  }
  #service_maintenance #kankou03 .l-footer__info__inner__btn,
#service_sales #kankou03 .l-footer__info__inner__btn,
#service_tenken #kankou03 .l-footer__info__inner__btn {
    width: 100%;
    margin-top: 3.8461538462vw;
  }
  #service_maintenance #kankou03 .l-footer__info__inner__btn a,
#service_sales #kankou03 .l-footer__info__inner__btn a,
#service_tenken #kankou03 .l-footer__info__inner__btn a {
    max-width: unset;
  }
}
/* サービス｜販売
ーーーーーーーーーーーーーーーーーーーーーーーーーーー*/
#sales01 {
  padding-top: 100px;
}
#sales01 p.fn_size14 {
  margin-top: 60px;
}
#sales01 .car_category01 {
  margin: 60px auto 0;
  width: 100%;
  max-width: 680px;
}
#sales01 .car_category01 .toyota {
  width: 61px;
}
#sales01 .car_category01 .nissan {
  width: 59px;
}
#sales01 .car_category01 .honda {
  width: 74px;
}
#sales01 .car_category01 .subaru {
  width: 83px;
}
#sales01 .car_category01 .mazda {
  width: 54px;
}
#sales01 .car_category01 .bmw {
  width: 50px;
}
#sales01 .car_category02 {
  margin: 40px auto 0;
  width: 100%;
  max-width: 680px;
}
#sales01 .car_category02 .mitsubishi {
  width: 115px;
}
#sales01 .car_category02 .suzuki {
  width: 132px;
}
#sales01 .car_category02 .daihatsu {
  width: 133px;
}
#sales01 .car_category02 .benz {
  width: 140px;
}
#sales01 .img3_flex_box {
  margin-top: 60px;
}
#sales01 .img3_flex_box .w100_img {
  margin-top: 20px;
}

@media screen and (max-width: 768px) {
  #sales01 {
    padding-top: 10.2564102564vw;
  }
  #sales01 p.fn_size14 {
    margin-top: 10.2564102564vw;
  }
  #sales01 .img3_flex_box {
    margin-top: 10.2564102564vw;
  }
  #sales01 .img3_flex_box .w100_img {
    margin-top: 5px;
  }
  #sales01 .car_category01 {
    margin: 10.2564102564vw auto 0;
    justify-content: flex-start;
  }
  #sales01 .car_category01 > div {
    margin: 0 3.8461538462vw 5.1282051282vw 0;
  }
  #sales01 .car_category01 > div:nth-child(n+5) {
    margin-bottom: 0;
  }
  #sales01 .car_category01 .toyota {
    width: 15.641025641vw;
  }
  #sales01 .car_category01 .nissan {
    width: 15.1282051282vw;
  }
  #sales01 .car_category01 .honda {
    width: 18.9743589744vw;
  }
  #sales01 .car_category01 .subaru {
    width: 21.2820512821vw;
  }
  #sales01 .car_category01 .mazda {
    width: 13.8461538462vw;
    margin-right: 6.4102564103vw;
  }
  #sales01 .car_category01 .bmw {
    width: 12.8205128205vw;
  }
  #sales01 .car_category02 {
    margin: 5.1282051282vw auto 0;
    justify-content: flex-start;
  }
  #sales01 .car_category02 > div {
    margin: 0 3.8461538462vw 5.1282051282vw 0;
  }
  #sales01 .car_category02 > div:nth-child(n+3) {
    margin-bottom: 0;
  }
  #sales01 .car_category02 .mitsubishi {
    width: 29.4871794872vw;
    margin-right: 9.7435897436vw;
  }
  #sales01 .car_category02 .suzuki {
    width: 33.8461538462vw;
  }
  #sales01 .car_category02 .daihatsu {
    width: 34.1025641026vw;
  }
  #sales01 .car_category02 .benz {
    width: 35.8974358974vw;
  }
}
#sales02 {
  padding-top: 120px;
}
#sales02 .flex-jcs {
  margin-top: 60px;
}
#sales02 .flex-jcs > div {
  width: calc(33.3333333333% - 15px);
}
#sales02 .flex-jcs > div .fn_size17 {
  margin: 25px 0 20px;
}
#sales02 .flex-jcs > div .flex > div {
  width: 100px;
}
#sales02 .flex-jcs > div .flex > div:first-child {
  margin-right: 20px;
}

@media screen and (max-width: 768px) {
  #sales02 {
    padding-top: 15.3846153846vw;
  }
  #sales02 .flex-jcs {
    margin-top: 10.2564102564vw;
  }
  #sales02 .flex-jcs > div {
    width: 100%;
  }
  #sales02 .flex-jcs > div:not(:nth-child(1)) {
    margin-top: 6.4102564103vw;
  }
  #sales02 .flex-jcs > div .fn_size17 {
    margin: 5.1282051282vw 0 3.8461538462vw;
  }
  #sales02 .flex-jcs > div .flex > div {
    width: 20.5128205128vw;
  }
  #sales02 .flex-jcs > div .flex > div:first-child {
    margin-right: 3.8461538462vw;
  }
}
#tempo03.sales03 .flex-jcs .tempo_r p:nth-child(1) {
  margin: 5px 0 25px;
}
#tempo03.sales03 .flex-jcs .tempo_r .l-footer__info__inner__btn {
  margin-top: 25px;
  width: 250px;
}
#tempo03.sales03 .flex-jcs .tempo_r .l-footer__info__inner__btn a {
  padding: 15px 20px;
  background-color: #2C6439;
  color: #fff;
}
#tempo03.sales03 .flex-jcs .tempo_r .l-footer__info__inner__btn a::after {
  background-image: url(../img/common/icon__another.svg);
  width: 8px;
  height: 8px;
}
#tempo03.sales03 .flex-jcs .tempo_r .l-footer__info__inner__btn a:hover {
  padding: 15px 10px 15px 30px;
}

@media screen and (min-width: 1300px) {
  #tempo03.sales03 .tempo03bg {
    padding-left: 78px;
  }
}
@media screen and (min-width: 769px) and (max-width: 1299px) {
  #tempo03.sales03 .tempo03bg {
    padding-left: 6vw;
  }
}
@media screen and (max-width: 768px) {
  #tempo03.sales03 .flex-jcs .tempo_r .l-footer__info__inner__btn {
    margin: 7.6923076923vw auto 0;
    text-align: center;
    width: 100%;
    box-sizing: border-box;
  }
  #tempo03.sales03 .flex-jcs .tempo_r .l-footer__info__inner__btn a {
    padding: 4.6153846154vw 5.1282051282vw;
  }
  #tempo03.sales03 .flex-jcs .tempo_r .l-footer__info__inner__btn a::after {
    width: 2.0512820513vw;
    height: 2.0512820513vw;
  }
}
#sales04 {
  padding-top: 100px;
}
#sales04 .flex-jcs {
  margin-top: 60px;
}
#sales04 .sales04_l {
  width: calc(100% - 445px);
}
#sales04 .sales04_r {
  width: 395px;
}
#sales04 .sales04_r .fn_size18 {
  margin: 10px 0 30px;
}
#sales04 .nisshin {
  width: 326px;
}
#sales04 .tokyo {
  width: 230px;
}
#sales04 .aioi {
  width: 264px;
}
#sales04 a:hover {
  opacity: 0.6;
}

@media screen and (min-width: 769px) and (max-width: 890px) {
  #sales04 .nisshin {
    width: 36.6292134831vw;
  }
  #sales04 .tokyo {
    width: 25.8426966292vw;
  }
  #sales04 .aioi {
    width: 29.6629213483vw;
  }
}
@media screen and (max-width: 768px) {
  #sales04 {
    padding-top: 10.2564102564vw;
  }
  #sales04 .flex-jcs {
    margin-top: 10.2564102564vw;
  }
  #sales04 .sales04_l {
    width: 100%;
  }
  #sales04 .sales04_r {
    width: 100%;
  }
  #sales04 .sales04_r .fn_size18 {
    margin: 5.1282051282vw 0;
  }
  #sales04 .nisshin {
    width: 75.8974358974vw;
    margin-bottom: 3.8461538462vw;
  }
  #sales04 .tokyo {
    width: 51.2820512821vw;
    margin-bottom: 3.8461538462vw;
  }
  #sales04 .aioi {
    width: 60vw;
  }
}
/* サービス｜整備
ーーーーーーーーーーーーーーーーーーーーーーーーーーー*/
#maintenance01,
#tenken01 {
  padding-top: 100px;
}
#maintenance01 p.fn_size14,
#tenken01 p.fn_size14 {
  margin-top: 50px;
}
#maintenance01 .img3_flex_box,
#tenken01 .img3_flex_box {
  margin-top: 60px;
}
#maintenance01 .img3_flex_box .w100_img,
#tenken01 .img3_flex_box .w100_img {
  margin-bottom: 20px;
}

@media screen and (max-width: 768px) {
  #maintenance01,
#tenken01 {
    padding-top: 10.2564102564vw;
  }
  #maintenance01 p.fn_size14,
#tenken01 p.fn_size14 {
    margin-top: 7.6923076923vw;
  }
  #maintenance01 .img3_flex_box,
#tenken01 .img3_flex_box {
    margin-top: 10.2564102564vw;
  }
  #maintenance01 .img3_flex_box .w100_img,
#tenken01 .img3_flex_box .w100_img {
    margin-bottom: 5px;
  }
}
#maintenance02 {
  padding-top: 120px;
}
#maintenance02 .maintenance02_img {
  margin-top: 60px;
}

@media screen and (max-width: 768px) {
  #maintenance02 {
    padding-top: 15.3846153846vw;
  }
  #maintenance02 .maintenance02_img {
    margin-top: 10.2564102564vw;
    overflow: auto;
  }
  #maintenance02 .maintenance02_img .maintenance02_img_inner {
    width: 700px;
  }
}
#maintenance03 {
  padding-top: 120px;
}
#maintenance03 .Inner860 > p.fn_size14 {
  margin-top: 60px;
}
#maintenance03.tempo01 .flex_box {
  margin-top: 50px;
}
#maintenance03 .tempo01_r .flex-jcs {
  margin-top: 40px;
}
#maintenance03 .tempo01_r .mobil {
  width: 118px;
}
#maintenance03 .tempo01_r .cap {
  width: 68px;
}
#maintenance03 .tempo01_r .wakos {
  width: 133px;
}

#service_tenken #maintenance03 .tempo01_r .l-footer__info__inner__btn {
  margin-top: 30px;
  width: 250px;
}
#service_tenken #maintenance03 .tempo01_r .l-footer__info__inner__btn a {
  background-color: #2C6439;
  color: #fff;
  padding: 15px 20px;
}
#service_tenken #maintenance03 .tempo01_r .l-footer__info__inner__btn a:hover {
  padding: 15px 10px 15px 30px;
}
#service_tenken #maintenance03 .tempo01_r .l-footer__info__inner__btn a::after {
  background-image: url(../img/common/icon__another.svg);
  width: 8px;
  height: 8px;
}

@media screen and (max-width: 768px) {
  #maintenance03 {
    padding-top: 15.3846153846vw;
  }
  #maintenance03.tempo01 .flex_box {
    margin-top: 10.2564102564vw;
  }
  #maintenance03 .tempo01_r .flex-jcs {
    margin-top: 5.1282051282vw;
    justify-content: flex-start;
  }
  #maintenance03 .tempo01_r .mobil {
    width: 22.5641025641vw;
    margin-right: 3.8461538462vw;
  }
  #maintenance03 .tempo01_r .cap {
    width: 9.7435897436vw;
    margin-right: 3.8461538462vw;
  }
  #maintenance03 .tempo01_r .wakos {
    width: 26.4102564103vw;
  }
  #service_tenken #maintenance03 .Inner860 > p.fn_size14 {
    margin-top: 10.2564102564vw;
  }
  #service_tenken #maintenance03 .tempo01_r .l-footer__info__inner__btn {
    width: 100%;
  }
  #service_tenken #maintenance03 .tempo01_r .l-footer__info__inner__btn a {
    background-color: #2C6439;
    color: #fff;
    padding: 4.6153846154vw 5.1282051282vw;
  }
  #service_tenken #maintenance03 .tempo01_r .l-footer__info__inner__btn a::after {
    background-image: url(../img/common/icon__another.svg);
    width: 2.0512820513vw;
    height: 2.0512820513vw;
  }
}
#maintenance04 {
  padding-top: 100px;
}
#maintenance04 .flex-jcs {
  margin-top: 60px;
}
#maintenance04 .flex-jcs > div {
  width: 260px;
}

@media screen and (min-width: 769px) and (max-width: 890px) {
  #maintenance04 .flex-jcs > div {
    width: 29.2134831461vw;
  }
}
@media screen and (max-width: 768px) {
  #maintenance04 {
    padding-top: 15.3846153846vw;
  }
  #maintenance04 .flex-jcs {
    margin-top: 10.2564102564vw;
  }
  #maintenance04 .flex-jcs > div {
    width: 42.3076923077vw;
  }
  #maintenance04 .flex-jcs > div:nth-child(-n+2) {
    margin-bottom: 2.5641025641vw;
  }
}
/* 採用｜採用情報
ーーーーーーーーーーーーーーーーーーーーーーーーーーー*/
#recruit01 {
  padding-top: 100px;
}
#recruit01 p {
  max-width: 600px;
  margin-left: auto;
  margin-top: 40px;
}

.recruit_h2_ttl h2 {
  font-size: 5rem;
  font-family: "Hind", sans-serif;
  font-weight: 700;
  color: #01be78;
  letter-spacing: 0.08em;
}
.recruit_h2_ttl h2 span {
  display: block;
  font-size: 1.5rem;
  color: #000;
  font-family: "Noto Sans JP", sans-serif;
  letter-spacing: 0.2em;
  margin-top: 10px;
}

@media screen and (max-width: 768px) {
  #recruit01 {
    padding-top: 15.3846153846vw;
  }
  #recruit01 p {
    margin-top: 5.1282051282vw;
  }
  .recruit_h2_ttl h2 {
    font-size: 3rem;
  }
  .recruit_h2_ttl h2 span {
    font-size: 1.4rem;
  }
}
#recruit02 {
  padding-top: 130px;
}
#recruit02 .poab {
  bottom: 50px;
  right: 80px;
  width: 360px;
}

@media screen and (max-width: 768px) {
  #recruit02 {
    padding-top: 15.3846153846vw;
  }
  #recruit02 .poab {
    bottom: 20px;
    right: 7.6923076923vw;
    width: 32.0512820513vw;
  }
}
#recruit03 {
  padding-top: 120px;
}
#recruit03 .flex-jcs {
  margin-top: 60px;
}
#recruit03 .flex-jcs .recruit03_img {
  width: 48%;
}
#recruit03 .flex-jcs .recruit03_r {
  width: 46%;
}
#recruit03 .flex-jcs .recruit03_r p:nth-child(1) span {
  color: #ac2125;
}
#recruit03 .flex-jcs .recruit03_r p:nth-child(2) {
  margin-top: 25px;
}
#recruit03 .flex-jcs .recruit03_r p:nth-child(3) {
  margin-top: 15px;
}
#recruit03 .Inner900 > p:nth-of-type(1) {
  margin-top: 40px;
}
#recruit03 .Inner900 > p:nth-of-type(2) {
  margin-top: 15px;
}

@media screen and (max-width: 768px) {
  #recruit03 {
    padding-top: 15.3846153846vw;
  }
  #recruit03 .flex-jcs {
    margin-top: 7.6923076923vw;
  }
  #recruit03 .flex-jcs .recruit03_img {
    width: 100%;
  }
  #recruit03 .flex-jcs .recruit03_r {
    width: 100%;
  }
  #recruit03 .flex-jcs .recruit03_r p:nth-child(1) {
    margin-top: 8.9743589744vw;
    font-size: 1.6rem;
  }
  #recruit03 .flex-jcs .recruit03_r p:nth-child(2) {
    margin-top: 7.6923076923vw;
  }
  #recruit03 .Inner900 > p:nth-of-type(1) {
    margin-top: 15px;
  }
}
#recruit04 {
  padding-top: 100px;
  margin-top: 120px;
}
#recruit04::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 78%;
  height: 1495px;
  z-index: -1;
  background-color: #e4e8e9;
}
#recruit04 .recruit04_btn_box .recruit04_btn {
  overflow: hidden;
  width: 93%;
  height: 29.2307692308vw;
  min-height: 380px;
  margin-left: auto;
}
#recruit04 .recruit04_btn_box .recruit04_btn::after {
  content: "";
  position: absolute;
  z-index: 1;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  transition: all 0.3s ease-out;
}
#recruit04 .recruit04_btn_box .recruit04_btn .profile {
  z-index: 2;
  bottom: 40px;
  left: 0;
  background-color: #fff;
  padding: 20px 25px;
}
#recruit04 .recruit04_btn_box .recruit04_btn .profile p:nth-child(1) {
  margin-bottom: 15px;
}
#recruit04 .recruit04_btn_box .recruit04_btn .profile p:nth-child(3) {
  margin-top: 10px;
}
#recruit04 .recruit04_btn_box .recruit04_btn .profile .san {
  font-size: 0.75em;
}
#recruit04 .recruit04_btn_box .recruit04_btn .profile span.fn_size14 {
  margin-left: 23px;
}
#recruit04 .recruit04_btn_box.box01 {
  margin-top: 60px;
}
#recruit04 .recruit04_btn_box.box01 .recruit04_btn::after {
  background-image: url(/assets/img/recruit/recruit04.jpg);
}
#recruit04 .recruit04_btn_box.box02 {
  margin-top: 10px;
}
#recruit04 .recruit04_btn_box.box02 .recruit04_btn::after {
  background-image: url(/assets/img/recruit/recruit05.jpg);
}
#recruit04 .recruit04_btn_box.box02 .profile {
  left: auto;
  right: 0;
}
#recruit04 .recruit04_btn_box.box03 {
  margin-top: 10px;
}
#recruit04 .recruit04_btn_box.box03 .recruit04_btn::after {
  background-image: url(/assets/img/recruit/recruit06.jpg);
}
#recruit04 .recruit04_btn_box.box04 {
  margin-top: 10px;
}
#recruit04 .recruit04_btn_box.box04 .recruit04_btn::after {
  background-image: url(/assets/img/recruit/recruit07.jpg);
}
#recruit04 .recruit04_btn_box.box04 .profile {
  left: auto;
  right: 0;
}
#recruit04 .recruit04_btn_box a:hover .recruit04_btn::after {
  transform: scale(1.03);
}

@media screen and (max-width: 768px) {
  #recruit04 {
    padding-top: 15.3846153846vw;
    margin-top: 20.5128205128vw;
  }
  #recruit04::after {
    height: 333.3333333333vw;
    width: 80%;
  }
  #recruit04 .recruit04_btn_box .recruit04_btn {
    overflow: unset;
    height: 56.4102564103vw;
    min-height: unset;
  }
  #recruit04 .recruit04_btn_box .recruit04_btn .profile {
    left: 2.5641025641vw;
    right: auto;
    bottom: -8.9743589744vw;
    padding: 3.8461538462vw 5.1282051282vw;
  }
  #recruit04 .recruit04_btn_box .recruit04_btn .profile p:nth-child(1) {
    margin-bottom: 10px;
    font-size: 1.2rem;
  }
  #recruit04 .recruit04_btn_box .recruit04_btn .profile p:nth-child(2),
#recruit04 .recruit04_btn_box .recruit04_btn .profile p:nth-child(3) {
    font-size: 1.6rem;
  }
  #recruit04 .recruit04_btn_box .recruit04_btn .profile p:nth-child(2) span.fn_size14,
#recruit04 .recruit04_btn_box .recruit04_btn .profile p:nth-child(3) span.fn_size14 {
    font-size: 1rem;
  }
  #recruit04 .recruit04_btn_box.box02, #recruit04 .recruit04_btn_box.box03, #recruit04 .recruit04_btn_box.box04 {
    margin-top: 16.6666666667vw;
  }
  #recruit04 .recruit04_btn_box.box01 {
    margin-top: 7.6923076923vw;
  }
  #recruit04 .recruit04_btn_box.box01 .recruit04_btn::after {
    background-image: url(/assets/img/recruit/recruit04_sp.jpg);
  }
  #recruit04 .recruit04_btn_box.box02 .recruit04_btn::after {
    background-image: url(/assets/img/recruit/recruit05_sp.jpg);
  }
  #recruit04 .recruit04_btn_box.box03 .recruit04_btn::after {
    background-image: url(/assets/img/recruit/recruit06_sp.jpg);
  }
  #recruit04 .recruit04_btn_box.box04 .recruit04_btn::after {
    background-image: url(/assets/img/recruit/recruit07_sp.jpg);
  }
}
#recruit05 {
  padding-top: 140px;
}
#recruit05 .bg_bl_btn {
  margin-top: 60px;
  margin-bottom: 25px;
}
#recruit05 .bg_bl_btn::after {
  background-image: url(/assets/img/recruit/recruit08.jpg?a);
}

.bg_bl_btn {
  position: relative;
  overflow: hidden;
}
.bg_bl_btn::before {
  content: "";
  position: absolute;
  z-index: -1;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.15);
  transition: all 0.3s ease-out;
}
.bg_bl_btn::after {
  content: "";
  position: absolute;
  z-index: -2;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  transition: all 0.3s ease-out;
}
.bg_bl_btn a {
  text-align: center;
  display: block;
  color: #fff;
  padding: 170px 0;
}
.bg_bl_btn a p::after {
  content: "";
  position: absolute;
  bottom: -35px;
  left: 50%;
  transform: translateY(-50%);
  width: 5px;
  height: 8px;
  background: url(/assets/img/common/icon__arrow.svg) center center/contain no-repeat;
}
.bg_bl_btn:hover::after {
  transform: scale(1.03);
}
.bg_bl_btn:hover::before {
  background-color: rgba(0, 0, 0, 0.5);
}

@media screen and (max-width: 768px) {
  #recruit05 {
    padding-top: 41.0256410256vw;
  }
  #recruit05 .bg_bl_btn {
    margin-top: 7.6923076923vw;
    margin-bottom: 7.6923076923vw;
  }
  #recruit05 .bg_bl_btn::after {
    background-image: url(/assets/img/recruit/recruit08_sp.jpg);
  }
  #recruit05 .bg_bl_btn a {
    padding: 28.2051282051vw 0;
    font-size: 1.6rem;
  }
  #recruit05 .bg_bl_btn a p::after {
    bottom: -8.9743589744vw;
    width: 1.2820512821vw;
    height: 2.0512820513vw;
  }
  #recruit05 > .wrap:nth-child(2) {
    padding: 0;
  }
}
#recruit06 {
  padding-top: 140px;
}
#recruit06 .bg_bl_btn {
  margin-top: 60px;
}
#recruit06 .bg_bl_btn:nth-child(1)::after {
  background-image: url(/assets/img/recruit/recruit09.jpg?a);
}
#recruit06 .bg_bl_btn a {
  padding: 150px 0;
}

@media screen and (max-width: 768px) {
  #recruit06 {
    padding-top: 17.9487179487vw;
  }
  #recruit06 .bg_bl_btn {
    margin-top: 7.6923076923vw;
  }
  #recruit06 .bg_bl_btn:nth-child(1)::after {
    background-image: url(/assets/img/recruit/recruit09_sp.jpg);
  }
  #recruit06 .bg_bl_btn a {
    padding: 28.2051282051vw 0;
    font-size: 1.6rem;
  }
  #recruit06 .bg_bl_btn a p::after {
    bottom: -8.9743589744vw;
    width: 1.2820512821vw;
    height: 2.0512820513vw;
  }
  #recruit06 > .wrap:nth-child(2) {
    padding: 0;
  }
}
#recruit07 {
  padding: 80px 0;
  margin-top: 140px;
  background-color: #01be78;
}
#recruit07 p.fn_size20 {
  color: #fff;
  margin-bottom: 40px;
}
#recruit07 .l-footer__info__inner__btn {
  margin: 0 auto;
}
#recruit07 .l-footer__info__inner__btn a {
  font-family: "Hind", sans-serif;
  font-size: 30px;
  font-weight: 700;
  margin: 0 auto;
  width: 100%;
  max-width: 500px;
  padding: 35px 20px;
}
#recruit07 .l-footer__info__inner__btn a::after {
  background: url(/assets/img/common/icon__arrow_bold--black.svg) center center/contain no-repeat;
  width: 6px;
  height: 11px;
}
#recruit07 .l-footer__info__inner__btn a:hover {
  padding: 35px 10px 35px 30px;
}

@media screen and (max-width: 768px) {
  #recruit07 {
    padding: 15.3846153846vw 0;
    margin-top: 25.641025641vw;
  }
  #recruit07 p.fn_size20 {
    margin-bottom: 7.6923076923vw;
  }
  #recruit07 .l-footer__info__inner__btn {
    margin-top: 0;
  }
  #recruit07 .l-footer__info__inner__btn a {
    font-size: 2.2rem;
    max-width: 82.0512820513vw;
    padding: 6.4102564103vw 5.1282051282vw;
  }
  #recruit07 .l-footer__info__inner__btn a::after {
    width: 1.5384615385vw;
    height: 2.8205128205vw;
  }
}
/* 社員インタビュー｜
ーーーーーーーーーーーーーーーーーーーーーーーーーーー*/
.interview #kasou_kv .interview_h1 {
  position: relative;
  padding-top: 50px;
  padding-left: 60px;
}
.interview #kasou_kv .interview_h1 .flex {
  align-items: flex-end;
}
.interview #kasou_kv .interview_h1 h1 {
  color: #fff;
}
.interview #kasou_kv .interview_h1 h1 span:nth-child(1) {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 300;
  margin-bottom: 10px;
}
.interview #kasou_kv .interview_h1 h1 span.san {
  display: inline;
  font-weight: 700;
  font-size: 0.7em;
}
.interview #kasou_kv .interview_h1 .flex > span {
  font-weight: 300;
  color: #fff;
  margin-left: 20px;
  margin-bottom: 4px;
}
.interview #kasou_kv .interview_lead {
  display: inline-block;
  font-size: 4rem;
  color: #fff;
  padding: 5px 8px;
  background: linear-gradient(transparent 0%, #000 0%);
  box-decoration-break: clone;
  -webkit-box-decoration-break: clone;
  line-height: 40px;
}
.interview #kasou_kv .interview_lead:first-child {
  margin-bottom: 5px;
}

.oyasu #kasou_kv .interview_h1 .flex:first-child > span {
  margin-left: -28px;
}

@media screen and (min-width: 769px) and (max-width: 930px) {
  .interview #kasou_kv .interview_lead {
    font-size: 3.7634408602vw;
  }
}
@media screen and (max-width: 768px) {
  .interview #kasou_kv .interview_h1 {
    padding-left: 5.1282051282vw;
    padding-top: 6.4102564103vw;
  }
  .interview #kasou_kv .interview_h1 h1 {
    font-size: 2rem;
  }
  .interview #kasou_kv .interview_h1 h1 span:nth-child(1) {
    font-size: 1.3rem;
    margin-bottom: 7px;
  }
  .interview #kasou_kv .interview_h1 .flex > span {
    width: 100%;
    margin-left: 0;
    margin-top: 10px;
    font-size: 1.1rem;
  }
  .interview #kasou_kv .interview_h1 .flex:first-child > span {
    margin-left: 0;
  }
  .interview #kasou_kv .interview_lead {
    font-size: 2rem;
    padding: 0 0.7692307692vw;
    letter-spacing: 0.12em;
    line-height: 7.6923076923vw;
  }
  .interview #kasou_kv .kasou_kv_wrap {
    bottom: 20px;
    left: 0;
    padding: 0 5.1282051282vw;
  }
  .oyasu.interview #kasou_kv .interview_lead,
.kaneko.interview #kasou_kv .interview_lead {
    font-size: 1.7rem;
  }
  .nakagawa.interview #kasou_kv .interview_lead {
    font-size: 1.8rem;
  }
}
#interview01 {
  position: relative;
  z-index: 1;
  padding-top: 100px;
}
#interview01 .profile {
  font-family: "Hind", sans-serif;
  writing-mode: vertical-rl;
  margin-right: 20px;
}
#interview01 .interview01_l {
  width: 45%;
}
#interview01 .interview01_l .interview01_img {
  width: calc(100% - 42px);
}
#interview01 .interview01_r {
  width: 48%;
}
#interview01 .interview01_r .recruit_h2_ttl {
  margin-top: 20px;
}
#interview01 .interview01_r .recruit_h2_ttl h2 {
  font-size: 3.5rem;
}
#interview01 .interview01_r p {
  margin-top: 25px;
}

@media screen and (max-width: 768px) {
  #interview01 {
    padding-top: 12.8205128205vw;
  }
  #interview01 .profile {
    position: absolute;
    font-size: 1.8rem;
    margin-right: 0;
    top: 0;
    left: 5.1282051282vw;
  }
  #interview01 .interview01_r {
    width: 100%;
  }
  #interview01 .interview01_r .recruit_h2_ttl {
    margin-top: 0;
  }
  #interview01 .interview01_r .recruit_h2_ttl h2 {
    font-size: 3rem;
  }
  #interview01 .interview01_r .sp_interview01_l {
    position: relative;
    margin-top: 7.6923076923vw;
  }
  #interview01 .interview01_r .sp_interview01_l .interview01_img {
    width: 61.5384615385vw;
    margin: 0 auto;
  }
  #interview01 .interview01_r p {
    margin-top: 7.6923076923vw;
  }
}
#interview02 {
  padding-top: 195px;
  margin-top: -80px;
  background-color: #e4e8e9;
}
#interview02 .recruit_h2_ttl {
  margin-left: 9%;
}
#interview02 .interview02_l {
  width: 69%;
  margin-top: 60px;
}
#interview02 .interview02_img {
  padding-top: 100px;
}

.interview02_r {
  width: 91%;
  margin-left: auto;
  margin-top: -100px;
  padding: 100px 0;
  position: relative;
  z-index: 1;
  background-color: #fff;
}
.interview02_r ul {
  max-width: 780px;
  width: 80%;
  margin: 0 auto;
}
.interview02_r ul li {
  position: relative;
  margin-bottom: 80px;
}
.interview02_r ul li:last-child {
  margin-bottom: 0;
}
.interview02_r ul li::before {
  content: "";
  position: absolute;
  z-index: -1;
  top: 10px;
  left: 0;
  transform: translate(-50%, -50%);
  width: 84px;
  height: 84px;
  background-image: url(/assets/img/common/icon__q.svg);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
}
.interview02_r ul li p.fn_size22 {
  margin-bottom: 35px;
}

@media screen and (max-width: 768px) {
  #interview02 {
    padding-top: 15.3846153846vw;
    margin-top: 14.1025641026vw;
  }
  #interview02 .recruit_h2_ttl {
    margin-left: 7.6923076923vw;
  }
  #interview02 .interview02_l {
    width: 100%;
    margin-top: 7.6923076923vw;
  }
  #interview02 .interview02_img {
    padding-top: 7.6923076923vw;
  }
  .interview02_r {
    width: calc(100% - 7.6923076923vw);
    margin-top: -7.6923076923vw;
    padding: 12.8205128205vw 6.4102564103vw 12.8205128205vw 11.5384615385vw;
  }
  .interview02_r ul {
    width: 100%;
    max-width: none;
  }
  .interview02_r ul li {
    margin-bottom: 10.2564102564vw;
  }
  .interview02_r ul li::before {
    width: 11.0256410256vw;
    height: 11.0256410256vw;
    top: 3.3333333333vw;
  }
  .interview02_r ul li p.fn_size22 {
    font-size: 1.6rem;
    margin-bottom: 6.4102564103vw;
    line-height: 1.6;
    letter-spacing: 0.12em;
  }
  .interview02_r ul li p.fn_size14 {
    line-height: 1.7;
  }
}
#interview03 {
  padding-top: 120px;
  position: relative;
}
#interview03::after {
  content: "";
  position: absolute;
  z-index: -1;
  top: 0;
  left: 0;
  width: 100%;
  height: 72%;
  background-color: #e4e8e9;
}
#interview03 .recruit_h2_ttl {
  margin-left: 9%;
}
#interview03 .interview02_r {
  margin-top: 60px;
  padding: 60px 0;
}
#interview03 .interview02_r ul {
  max-width: 835px;
  width: 84%;
}
#interview03 .interview02_r li::before {
  display: none;
}
#interview03 .interview02_r li .time {
  font-family: "Hind", sans-serif;
  font-size: 29px;
  color: #ccc;
  width: 15%;
}
#interview03 .interview02_r li .flex-jcs > div:nth-child(2) {
  width: 85%;
}

.interview #recruit07 {
  margin-top: 0;
}

@media screen and (max-width: 768px) {
  #interview03 {
    padding-top: 15.3846153846vw;
  }
  #interview03 .recruit_h2_ttl {
    margin-left: 7.6923076923vw;
  }
  #interview03 .interview02_r {
    margin-top: 7.6923076923vw;
    margin-left: 0;
    padding: 10.2564102564vw 0 12.8205128205vw;
    width: 100%;
  }
  #interview03 .interview02_r ul {
    padding: 0 7.6923076923vw;
    width: 100%;
  }
  #interview03 .interview02_r li .time {
    display: flex;
    align-items: center;
    font-size: 2.2rem;
    width: 100%;
  }
  #interview03 .interview02_r li .time p {
    display: inline;
    font-size: 1.6rem;
    color: #000;
    font-weight: 700;
    letter-spacing: 0.16em;
    margin-left: 25px;
  }
  #interview03 .interview02_r li .flex-jcs > div:nth-child(2) {
    width: 100%;
  }
  #interview03 .interview02_r li .flex-jcs > div:nth-child(2) p.fn_size22 {
    display: none;
  }
  #interview03 .interview02_r li .flex-jcs > div:nth-child(2) p.fn_size14 {
    margin-top: 20px;
  }
  .interview #recruit07 {
    margin-top: 0;
  }
}
/* 採用｜ご家族の皆さまへ
ーーーーーーーーーーーーーーーーーーーーーーーーーーー*/
#family01 {
  padding-top: 100px;
  padding-bottom: 125px;
  background-color: #e4e8e9;
}
#family01 p.fn_size28 {
  margin-bottom: 45px;
}
#family01 p.fn_size14:not(:last-child) {
  margin-bottom: 15px;
}

@media screen and (max-width: 768px) {
  #family01 {
    padding-top: 12.8205128205vw;
    padding-bottom: 15.3846153846vw;
  }
  #family01 p.fn_size28 {
    margin-bottom: 7.6923076923vw;
    font-size: 2rem;
  }
  #family01 p.fn_size14 {
    line-height: 1.9;
  }
  #family01 p.fn_size14:not(:last-child) {
    margin-bottom: 2.5641025641vw;
  }
}
#family02 {
  padding-top: 100px;
}
#family02 .flex {
  margin-top: 45px;
  margin-left: -15px;
}
#family02 .flex .family02_flex_box {
  width: calc(33.3333333333% - 15px);
  margin-left: 15px;
  margin-bottom: 35px;
}
#family02 .flex .family02_flex_box .fn_size17 {
  margin: 25px 0 12px;
  font-weight: 500;
}

@media screen and (max-width: 768px) {
  #family02 {
    padding-top: 12.8205128205vw;
  }
  #family02 .flex {
    margin-top: 7.6923076923vw;
  }
  #family02 .flex .family02_flex_box {
    width: 100%;
  }
  #family02 .flex .family02_flex_box .fn_size17 {
    margin: 3.8461538462vw 0 2.5641025641vw;
  }
  #family02 .flex .family02_flex_box:not(:last-child) {
    margin-bottom: 7.6923076923vw;
  }
}
#family02.family03 {
  padding-top: 130px;
}
#family02.family03 .family02_flex_box:nth-child(-n+3) {
  margin-bottom: 45px;
}

@media screen and (max-width: 768px) {
  #family02.family03 {
    padding-top: 15.3846153846vw;
  }
  #family02.family03 .family02_flex_box:nth-child(-n+3) {
    margin-bottom: 7.6923076923vw;
  }
}
#family04 {
  padding-top: 100px;
  padding-bottom: 100px;
  background-color: #e4e8e9;
  margin-top: 130px;
}
#family04 ul {
  margin-top: 60px;
  background-color: #f7f7f7;
  padding: 70px 80px;
}
#family04 ul li {
  width: 45%;
  border-bottom: 0.5px solid rgba(0, 0, 0, 0.3);
  padding-bottom: 15px;
}
#family04 ul li:not(:last-child) {
  margin-bottom: 35px;
}
#family04 ul li:nth-child(2n) {
  margin-left: 8%;
}

@media screen and (max-width: 768px) {
  #family04 {
    padding-top: 12.8205128205vw;
    padding-bottom: 12.8205128205vw;
    margin-top: 16.6666666667vw;
  }
  #family04 ul {
    margin-top: 7.6923076923vw;
    padding: 8.9743589744vw 10.2564102564vw;
  }
  #family04 ul li {
    width: 100%;
    padding-bottom: 2.5641025641vw;
  }
  #family04 ul li:not(:last-child) {
    margin-bottom: 5.1282051282vw;
  }
  #family04 ul li:nth-child(2n) {
    margin-left: 0;
  }
}
#recruit06.family05 {
  padding-top: 100px;
}

@media screen and (max-width: 768px) {
  #recruit06.family05 {
    padding-top: 12.8205128205vw;
  }
  #recruit06.family05 > .wrap:nth-child(2) {
    padding: 0;
  }
}
/* 採用｜募集要項
ーーーーーーーーーーーーーーーーーーーーーーーーーーー*/
#kasou_kv_no_img {
  padding-top: 100px;
  padding-bottom: 80px;
}
#kasou_kv_no_img h1 {
  color: #2c6439;
}
#kasou_kv_no_img h1 span {
  font-family: "Roboto Condensed", sans-serif;
  font-weight: 400;
  color: #4eb748;
  display: block;
  margin-bottom: 15px;
}

#news_detail #kasou_kv_no_img div {
  color: #2c6439;
}
#news_detail #kasou_kv_no_img div span {
  font-family: "Roboto Condensed", sans-serif;
  font-weight: 400;
  color: #4eb748;
  display: block;
  margin-bottom: 15px;
}

@media screen and (max-width: 768px) {
  #kasou_kv_no_img {
    padding-top: 30.7692307692vw;
    padding-bottom: 10.2564102564vw;
  }
  #kasou_kv_no_img h1 {
    font-size: 2.8rem;
  }
  #kasou_kv_no_img h1 span {
    font-size: 1.1rem;
  }
  #news_detail #kasou_kv_no_img div {
    font-size: 2.8rem;
  }
  #news_detail #kasou_kv_no_img div span {
    font-size: 1.1rem;
  }
}
#requirements01 ul {
  margin-top: 60px;
}
#requirements01 ul li {
  margin-bottom: 20px;
}
#requirements01 ul li p.fn_size20 {
  margin-bottom: 25px;
}
#requirements01 ul li a {
  display: block;
  border: 1px solid #000;
  padding: 40px 50px;
}
#requirements01 ul li a:hover {
  color: #4eb748;
  border: 1px solid #4eb748;
}

@media screen and (max-width: 768px) {
  #requirements01 ul {
    margin-top: 7.6923076923vw;
  }
  #requirements01 ul li a {
    padding: 5.1282051282vw;
  }
  #requirements01 ul li a p.fn_size20 {
    margin-bottom: 3.8461538462vw;
  }
}
/* 採用｜募集要項 | 自動車整備士
ーーーーーーーーーーーーーーーーーーーーーーーーーーー*/
.seibishi01 h3 {
  margin: 60px 0;
}
.seibishi01 dl dt {
  width: 180px;
  border-bottom: 1px solid #01be78;
  font-weight: 500;
}
.seibishi01 dl dd {
  width: calc(100% - 180px);
  font-weight: 300;
  border-bottom: 0.5px solid rgba(0, 0, 0, 0.3);
}
.seibishi01 dl dt, .seibishi01 dl dd {
  padding: 30px 0;
}

@media screen and (max-width: 768px) {
  .seibishi01 {
    padding-bottom: 15.3846153846vw;
  }
  .seibishi01 h3 {
    margin: 7.6923076923vw 0;
  }
  .seibishi01 dl dt, .seibishi01 dl dd {
    width: 100%;
  }
  .seibishi01 dl dt {
    padding: 3.8461538462vw 0 5px;
    border-bottom: unset;
  }
  .seibishi01 dl dd {
    padding: 0 0 3.8461538462vw;
    border-bottom: 1px solid #01be78;
  }
}
/* 採用｜エントリーフォーム
ーーーーーーーーーーーーーーーーーーーーーーーーーーー*/
#recruit_entry #service_contact01 {
  padding-top: 0;
}

/* 企業情報 | ご挨拶
ーーーーーーーーーーーーーーーーーーーーーーーーーーー*/
.about_kv {
  margin-bottom: 75px;
}

.side_ttl {
  position: relative;
}
.side_ttl::after {
  content: "";
  position: absolute;
  z-index: 0;
  background-image: url(/assets/img/about/greeting/side_ttl01.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  width: 124px;
  height: 758px;
}

.about02.side_ttl::after {
  background-image: url(/assets/img/about/greeting/side_ttl02.png);
  height: 999px;
  right: auto;
  z-index: -1;
  top: 0;
}

.about03.side_ttl::after {
  background-image: url(/assets/img/about/greeting/side_ttl03.png);
  height: 542px;
  z-index: -1;
  top: 20px;
}

.about04.side_ttl::after {
  background-image: url(/assets/img/about/greeting/side_ttl04.png);
  height: 393px;
  z-index: -1;
  top: 20px;
  right: auto;
}

@media screen and (min-width: 1300px) {
  .side_ttl::after {
    top: 0;
    right: 0;
  }
  .about02.side_ttl::after,
.about04.side_ttl::after {
    left: -2px;
  }
}
@media screen and (min-width: 1201px) and (max-width: 1299px) {
  .side_ttl::after {
    top: 0;
    right: 0;
  }
  .about02.side_ttl::after,
.about04.side_ttl::after {
    left: -2px;
  }
}
@media screen and (min-width: 891px) and (max-width: 1200px) {
  .side_ttl::after {
    top: 71px;
    right: 0;
  }
  .about02.side_ttl::after,
.about04.side_ttl::after {
    left: -2px;
  }
}
@media screen and (min-width: 769px) and (max-width: 890px) {
  .side_ttl::after {
    top: 71px;
    right: 14px;
  }
  .about02.side_ttl::after,
.about04.side_ttl::after {
    left: 14px;
  }
}
@media screen and (max-width: 768px) {
  .about_kv {
    margin-bottom: 10.2564102564vw;
    position: relative;
  }
  .about_kv::after {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    width: 10.7692307692vw;
    height: 66.4102564103vw;
    background-image: url(/assets/img/about/greeting/side_ttl01.png);
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
  }
  .side_ttl::after {
    display: none;
  }
  .about02.side_ttl::after {
    display: block;
    top: 37.1794871795vw;
    left: 0;
    width: 10.7692307692vw;
    height: 87.4358974359vw;
  }
  .about03.side_ttl::after {
    display: block;
    right: 0;
    top: 36.6666666667vw;
    width: 10.7692307692vw;
    height: 47.4358974359vw;
  }
  .about04.side_ttl::after {
    display: block;
    top: 46.9230769231vw;
    left: 0;
    width: 10.7692307692vw;
    height: 34.1025641026vw;
  }
}
#about01 .fn_size24 {
  font-weight: 500;
  margin-bottom: 50px;
}
#about01 .abou01_p_box {
  margin-bottom: 40px;
}
#about01 .abou01_p_box .abou01_p {
  margin-bottom: 15px;
}
#about01 .about01_l {
  width: 49%;
}
#about01 .about01_l .abou01_p_box {
  margin: 15px 0 60px;
}
#about01 .about01_l .ceo_sign {
  width: 255px;
  margin-left: auto;
}
#about01 .about01_r {
  width: 44%;
}

@media screen and (max-width: 768px) {
  #about01 .wrap:nth-child(1) {
    padding: 0;
  }
  #about01 .fn_size24 {
    margin-bottom: 7.6923076923vw;
    font-size: 1.7rem;
  }
  #about01 .abou01_p_box {
    margin-bottom: 6.4102564103vw;
  }
  #about01 .about01_l {
    width: 100%;
  }
  #about01 .about01_l .abou01_p_box {
    margin: 0 0 8.9743589744vw;
  }
  #about01 .about01_l .ceo_sign {
    width: 57.6923076923vw;
    margin-left: auto;
    margin-top: 5.1282051282vw;
  }
  #about01 .about01_r {
    display: none;
  }
}
#kasou_kv_no_img.about02 {
  padding-top: 135px;
}

#about02 dl {
  font-family: "Zen Old Mincho", serif;
}
#about02 dl dt {
  font-weight: 900;
  color: #ac2125;
}
#about02 dl dd {
  font-weight: 700;
  margin: 10px 0 50px;
  padding-left: 85px;
}
#about02 dl dd:last-child {
  margin-bottom: 0;
}

@media screen and (max-width: 768px) {
  #kasou_kv_no_img.about02 {
    padding-top: 20.5128205128vw;
  }
  #about02 dl dt {
    font-size: 1.6rem;
    text-indent: -3.1em;
    margin-left: 3.1em;
    line-height: 1.4;
  }
  #about02 dl dd {
    font-weight: 700;
    margin: 2.5641025641vw 0 7.6923076923vw;
    padding-left: 0;
  }
  #about02 dl dd:last-child {
    margin-bottom: 0;
  }
}
#kasou_kv_no_img.about03 {
  padding-top: 110px;
}

#about03 {
  font-family: "Zen Old Mincho", serif;
}
#about03 .main_motto {
  font-size: 5.2rem;
  font-weight: 900;
  color: #ac2125;
}
#about03 p.fn_size24 {
  margin: 30px 0 15px;
}
#about03 p.fn_size14 {
  margin-bottom: 30px;
}

@media screen and (max-width: 768px) {
  #kasou_kv_no_img.about03 {
    padding-top: 20.5128205128vw;
  }
  #about03 .main_motto {
    font-size: 3rem;
  }
  #about03 p.fn_size24 {
    margin: 5.1282051282vw 0 2.5641025641vw;
  }
  #about03 p.fn_size14 {
    margin-bottom: 5.1282051282vw;
  }
}
#about04 {
  max-width: 850px;
  margin: 0 auto;
  font-family: "Zen Old Mincho", serif;
}
#about04 .about04_l {
  width: 270px;
}
#about04 .about04_l .about04_l_img {
  width: 200px;
}
#about04 .about04_l p {
  font-weight: 900;
  margin-top: 10px;
  color: #ac2125;
}
#about04 .about04_r {
  width: calc(100% - 270px);
}
#about04 .about04_r p {
  font-weight: 700;
  margin-top: 15px;
}

#about #kankou03 .flex {
  margin-left: -15px;
}
#about #kankou03 .l-footer__info__inner__btn {
  width: calc(33% - 15px);
  margin-left: 15px;
}
#about #kankou03 .l-footer__info__inner__btn:nth-child(-n+3) {
  margin-bottom: 15px;
}

@media screen and (max-width: 768px) {
  #about04 {
    font-family: "Zen Old Mincho", serif;
  }
  #about04 .flex-jcc {
    max-width: 795px;
    margin: 0 auto;
  }
  #about04 .about04_l {
    width: 100%;
  }
  #about04 .about04_l .about04_l_img {
    width: 46.1538461538vw;
    margin: 0 auto;
  }
  #about04 .about04_l p {
    margin-top: 2.5641025641vw;
    font-size: 1.8rem;
    text-align: center;
    margin-left: 5.1282051282vw;
  }
  #about04 .about04_r {
    width: 100%;
    margin-top: 10.2564102564vw;
  }
  #about04 .about04_r p {
    font-size: 1.4rem;
    margin-top: 0;
  }
  #about #kankou03 .flex {
    margin-left: 0;
  }
  #about #kankou03 .l-footer__info__inner__btn {
    width: 100%;
    margin-left: 0;
  }
}
/* 企業情報 | 会社概要・沿革
ーーーーーーーーーーーーーーーーーーーーーーーーーーー*/
#profile01 .about_kv,
#profile02 .about_kv {
  margin-bottom: 30px;
}

#profile01 .seibishi01 dl dt,
#profile02 .seibishi01 dl dt {
  border-bottom: 1px solid #2c6439;
}

.printer_btn {
  width: 240px;
  margin-left: auto;
}
.printer_btn a {
  position: relative;
  display: block;
  width: 100%;
  padding: 23px 20px;
  font-size: 1.4rem;
  font-weight: 300;
  letter-spacing: 0.1em;
  border: 0.5px solid rgba(0, 0, 0, 0.3);
}
.printer_btn a::after {
  content: "";
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 20px;
  width: 20px;
  height: 21px;
  background-image: url(/assets/img/common/icon__printer.svg);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  transition: all 0.3s ease-in-out;
}
.printer_btn a:hover {
  padding: 23px 10px 23px 30px;
}
.printer_btn a:hover::after {
  right: 10px;
}

#profile01 .printer_btn {
  margin-top: 35px;
}

@media screen and (max-width: 768px) {
  #profile01 .about_kv,
#profile02 .about_kv {
    margin-bottom: 3.8461538462vw;
  }
  #profile01 .about_kv::after,
#profile02 .about_kv::after {
    display: none;
  }
  #profile01 .seibishi01 dl dt,
#profile02 .seibishi01 dl dt {
    border-bottom: unset;
  }
  #profile01 .seibishi01 dl dd,
#profile02 .seibishi01 dl dd {
    border-bottom: 1px solid #2c6439;
  }
  #profile01 .seibishi01, #profile02 .seibishi01 {
    padding-bottom: 0;
  }
  #profile01 .printer_btn {
    margin-top: 5.1282051282vw;
    width: 51.2820512821vw;
  }
  #profile01 .printer_btn a {
    padding: 5.1282051282vw 4.358974359vw;
    font-size: 1.3rem;
  }
  #profile01 .printer_btn a::after {
    width: 4.6153846154vw;
    height: 4.6153846154vw;
  }
}
#profile02 {
  padding-top: 100px;
}
#profile02 dl {
  margin-top: 35px;
}

@media screen and (max-width: 768px) {
  #profile02 {
    padding-top: 15.3846153846vw;
  }
  #profile02 dl {
    margin-top: 5.1282051282vw;
  }
}
#kasou_kv_no_img.profile03 {
  padding-top: 130px;
}

#profile03 dl {
  padding: 30px;
}
#profile03 dl:nth-child(2n) {
  background-color: #f2f2f2;
}
#profile03 dl:nth-child(2n+1) {
  background-color: #fcfcfc;
}
#profile03 dl dt {
  width: 150px;
}
#profile03 dl dd {
  width: calc(100% - 150px);
}

@media screen and (max-width: 768px) {
  #kasou_kv_no_img.profile03 {
    padding-top: 20.5128205128vw;
  }
  #profile03 .wrap {
    padding: 0;
  }
  #profile03 dl {
    padding: 6.4102564103vw;
  }
  #profile03 dl dt {
    width: 100%;
    margin-bottom: 15px;
  }
  #profile03 dl dd {
    width: 100%;
    line-height: 1.6;
  }
}
.location01:nth-of-type(n + 2) {
  padding-top: 100px;
}
.location01:nth-of-type(2) .location_img:nth-of-type(2) {
  margin: 40px 0 10px;
}
.location01:nth-of-type(2) .location_img:nth-of-type(3) {
  margin-top: 0;
}
.location01 .location_img {
  margin: 40px 0 30px;
}
.location01 .flex-jcs {
  align-items: flex-end;
}
.location01 .location01_l {
  width: 60%;
}
.location01 .location01_l dl {
  width: 100%;
}
.location01 .location01_l dl dt {
  width: 115px;
  font-weight: 500;
}
.location01 .location01_l dl dd {
  width: calc(100% - 115px);
}
.location01 .location01_l dl dt:not(:nth-last-child(2)), .location01 .location01_l dl dd:not(:last-child) {
  margin-bottom: 20px;
}
.location01 .map_btn {
  width: 60px;
}
.location01 .map_btn a:hover {
  opacity: 0.6;
}

@media screen and (max-width: 768px) {
  .location01:nth-of-type(n + 2) {
    padding-top: 15.3846153846vw;
  }
  .location01:nth-of-type(2) .location_img:nth-of-type(2) {
    margin: 7.6923076923vw 0 10px;
  }
  .location01 .location_img {
    margin: 7.6923076923vw 0;
  }
  .location01 .flex-jcs {
    position: relative;
  }
  .location01 .location01_l {
    width: 100%;
  }
  .location01 .location01_l dl dt {
    width: 100%;
  }
  .location01 .location01_l dl dd {
    width: 100%;
  }
  .location01 .location01_l dl dt {
    margin-bottom: 1.5384615385vw !important;
  }
  .location01 .location01_l dl dd:not(:last-child) {
    margin-bottom: 5.1282051282vw;
  }
  .location01 .map_btn {
    position: absolute;
    top: -1.2820512821vw;
    right: 0;
    width: 15.3846153846vw;
  }
  .location01 .map_btn a:hover {
    opacity: 0.6;
  }
}
#location02 {
  padding-top: 100px;
}
#location02 .Inner1000 {
  background-color: #f2f2f2;
  border-radius: 5px;
  padding-top: 60px;
  padding-bottom: 70px;
}
#location02 .location02_content:nth-child(2) {
  margin-top: 65px;
}
#location02 .location02_content:nth-child(2) p.fn_size14 {
  display: flex;
  flex-wrap: wrap;
}
#location02 .location02_content:nth-child(2) p.fn_size14 .location02_p_l {
  width: 245px;
}
#location02 .location02_content:nth-child(2) p.fn_size14 .location02_p_r {
  width: calc(100% - 245px);
}
#location02 .location02_content p.fn_size18 {
  color: #2c6439;
  font-weight: 500;
}
#location02 .location02_content p.fn_size14 {
  margin: 30px 0;
}
#location02 .location02_content > .flex-jcs > div {
  width: calc(50% - 20px);
}

@media screen and (max-width: 768px) {
  #location02 {
    padding: 8.9743589744vw 0 0;
  }
  #location02 .Inner1000 {
    padding-top: 7.6923076923vw;
    padding-bottom: 7.6923076923vw;
  }
  #location02 .location02_content:nth-child(2) {
    margin-top: 10.2564102564vw;
  }
  #location02 .location02_content:nth-child(2) p.fn_size14 {
    display: flex;
    flex-wrap: wrap;
  }
  #location02 .location02_content:nth-child(2) p.fn_size14 .location02_p_l {
    width: 48.7179487179vw;
  }
  #location02 .location02_content:nth-child(2) p.fn_size14 .location02_p_r {
    width: calc(100% - 48.7179487179vw);
  }
  #location02 .location02_content p.fn_size18 {
    line-height: 1.5;
  }
  #location02 .location02_content p.fn_size14 {
    margin: 3.8461538462vw 0 7.6923076923vw;
  }
  #location02 .location02_content > .flex-jcs > div {
    width: 100%;
  }
  #location02 .location02_content > .flex-jcs > div:nth-child(1) {
    margin-bottom: 10px;
  }
}
/* 企業情報 | CSR
ーーーーーーーーーーーーーーーーーーーーーーーーーーー*/
#csr01 p.fn_size14 {
  margin-top: 40px;
}

@media screen and (max-width: 768px) {
  #csr01 .about_kv::after {
    display: none;
  }
  #csr01 p.fn_size14 {
    margin-top: 8.9743589744vw;
  }
}
.csr02 .Inner860 > p.fn_size14 {
  margin-top: 40px;
}
.csr02 .Inner860 > .flex-jcs {
  margin-top: 50px;
}
.csr02 .Inner860 > .flex-jcs .family02_flex_box:nth-child(-n+3) {
  margin-bottom: 45px;
}

@media screen and (max-width: 768px) {
  .csr02 .Inner860 > p.fn_size14 {
    margin-top: 8.9743589744vw;
  }
}
#csr03 {
  padding-top: 100px;
}
#csr03 p.fn_size14 {
  margin: 40px 0 45px;
}
#csr03 .sdgs_logo {
  width: 400px;
  margin-bottom: 30px;
}
#csr03 .flex > div {
  width: calc(16.6666666667% - 5px);
  margin-right: 5px;
  margin-bottom: 5px;
}

@media screen and (max-width: 768px) {
  #csr03 {
    padding-top: 15.3846153846vw;
  }
  #csr03 p.fn_size14 {
    margin: 8.9743589744vw 0;
  }
  #csr03 .sdgs_logo {
    width: 56.4102564103vw;
    margin-bottom: 3.8461538462vw;
  }
  #csr03 .flex > div {
    width: calc(20% - 1.2820512821vw);
    margin-right: 1.2820512821vw;
    margin-bottom: 1.2820512821vw;
  }
}
#csr04 {
  padding-top: 100px;
}
#csr04 .csr04_img {
  margin: 40px 0;
}
#csr04 p.fn_size13 {
  margin: 25px 0 50px;
}
#csr04 ul li:not(:last-child) {
  margin-bottom: 20px;
}
#csr04 ul li a {
  color: #2c6439;
  text-decoration: underline;
}
#csr04 ul li a:hover {
  opacity: 0.6;
}

@media screen and (max-width: 768px) {
  #csr04 {
    padding-top: 15.3846153846vw;
  }
  #csr04 .csr04_img {
    margin: 8.9743589744vw 0;
  }
  #csr04 p.fn_size13 {
    margin: 5.1282051282vw 0 7.6923076923vw;
    line-height: 1.5;
  }
  #csr04 ul li {
    line-height: 1.5;
  }
  #csr04 ul li:not(:last-child) {
    margin-bottom: 3.8461538462vw;
  }
}
/* お知らせ
ーーーーーーーーーーーーーーーーーーーーーーーーーーー*/
#news01 {
  padding-bottom: 140px;
}
#news01 .p-news__content {
  margin-left: 0;
  max-width: none;
}

.page_number_box {
  position: relative;
  width: 100%;
  max-width: 400px;
  margin: 90px auto 0;
}
.page_number_box a {
  padding: 0 5px;
}
.page_number_box a:hover {
  opacity: 0.6;
}
.page_number_box .prev .arrow, .page_number_box .next .arrow {
  position: absolute;
  top: 50%;
  width: 10px;
  height: 10px;
  border-right: 1px solid #000;
  border-bottom: 1px solid #000;
  margin-top: -4px;
  transition: all 0.3s ease-in-out;
}
.page_number_box .prev .arrow:hover, .page_number_box .next .arrow:hover {
  opacity: 0.6;
}
.page_number_box .prev .arrow {
  left: 0;
  transform: rotate(135deg);
}
.page_number_box .next .arrow {
  right: 0;
  transform: rotate(-45deg);
}

@media screen and (max-width: 768px) {
  #news01 {
    padding-bottom: 25.641025641vw;
  }
  .page_number_box {
    margin: 15.3846153846vw auto 0;
  }
  .page_number_box a {
    padding: 0 1.2820512821vw;
  }
  .page_number_box .prev .arrow, .page_number_box .next .arrow {
    width: 2.5641025641vw;
    height: 2.5641025641vw;
    margin-top: -1.0256410256vw;
  }
}
/* 詳細 | お知らせ
ーーーーーーーーーーーーーーーーーーーーーーーーーーー*/
#news_detail01 {
  padding-bottom: 140px;
}
#news_detail01 .news_detail_ttl_date {
  text-align: right;
  margin: 30px 0 60px;
}
#news_detail01 .pager {
  margin-top: 90px;
}
#news_detail01 .pager ul li {
  width: 33.3%;
}
#news_detail01 .pager ul li.pager_prev {
  text-align: left;
}
#news_detail01 .pager ul li.pager_prev a {
  padding-left: 20px;
}
#news_detail01 .pager ul li.pager_prev a::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  width: 10px;
  height: 10px;
  border-left: 1px solid #000;
  border-bottom: 1px solid #000;
  transform: rotate(45deg) translateY(-50%);
  transition: all 0.3s ease-in-out;
}
#news_detail01 .pager ul li.pager_prev a:hover::before {
  opacity: 0.6;
}
#news_detail01 .pager ul li.pager_list {
  text-align: center;
}
#news_detail01 .pager ul li.pager_next {
  text-align: right;
}
#news_detail01 .pager ul li.pager_next a {
  padding-right: 25px;
}
#news_detail01 .pager ul li.pager_next a::after {
  content: "";
  position: absolute;
  right: 0;
  top: 50%;
  width: 10px;
  height: 10px;
  border-right: 1px solid #000;
  border-bottom: 1px solid #000;
  transform: rotate(-45deg) translateY(-50%);
  transition: all 0.3s ease-in-out;
}
#news_detail01 .pager ul li.pager_next a:hover::after {
  opacity: 0.6;
}
#news_detail01 .pager ul li a {
  display: block;
  position: relative;
}
#news_detail01 .pager ul li a:hover {
  opacity: 0.6;
}

@media screen and (max-width: 768px) {
  #news_detail01 {
    padding-bottom: 25.641025641vw;
  }
  #news_detail01 .news_detail_ttl_date {
    margin: 5.1282051282vw 0 10.2564102564vw;
  }
  #news_detail01 .pager {
    margin-top: 15.3846153846vw;
  }
  #news_detail01 .pager ul li.pager_prev a {
    padding-left: 3.8461538462vw;
  }
  #news_detail01 .pager ul li.pager_prev a::before {
    width: 2.0512820513vw;
    height: 2.0512820513vw;
  }
  #news_detail01 .pager ul li.pager_next a {
    padding-right: 3.8461538462vw;
  }
  #news_detail01 .pager ul li.pager_next a::after {
    width: 2.0512820513vw;
    height: 2.0512820513vw;
  }
}
/* Custum Style Setting
----------------------------------------------------------------------------------------------*/
.post-body strong {
  font-weight: bold;
}

.post-body em {
  font-style: italic;
}

.post-body del {
  text-decoration: line-through;
}

.post-body ul {
  list-style: disc;
  margin: 0 1em 1.5em;
}

.post-body ol {
  list-style: decimal;
  margin: 0 1em 1.5em;
}

.post-body li {
  list-style: inherit;
  margin-bottom: 0.3em;
}

.post-body blockquote {
  margin: 1.2em 1.2em;
}

.post-body h1 {
  font-size: 2em;
  line-height: 1.4em;
  font-weight: bold;
  margin-top: 0em;
  margin-bottom: 0.5em;
}

.post-body h2 {
  font-size: 2em;
  line-height: 1.4em;
  font-weight: bold;
  margin-top: 3em;
  margin-bottom: 0.5em;
}

.post-body h3 {
  font-size: 1.5em;
  line-height: 1.4em;
  font-weight: bold;
  margin-top: 2em;
  margin-bottom: 0.5em;
}

.post-body h4 {
  font-size: 1.2em;
  line-height: 1.4em;
  font-weight: bold;
  margin-top: 1em;
  margin-bottom: 0.5em;
}

.post-body img {
  margin: 1.5em auto;
  max-width: 100%;
  height: auto;
}

.post-body p {
  margin: 0px 0 1.5em;
}

.post-body a {
  text-decoration: underline;
}

.pager .no-page {
  opacity: 0;
  pointer-events: none;
}

/* お問い合わせ
ーーーーーーーーーーーーーーーーーーーーーーーーーーー*/
#service_contact01.contact01 {
  padding-top: 0;
}

.thanks #service_contact01 .fn_size16 {
  margin-top: 20px;
}

@media screen and (max-width: 768px) {
  .thanks #service_contact01 .fn_size16 {
    margin-top: 5.3333333333vw;
  }
}
#kakunin_wrap .formTable {
  width: 100%;
  text-align: left;
  margin-bottom: 50px;
}
#kakunin_wrap .formTable th {
  font-weight: 400;
  padding: 20px 0.6em 20px 0;
  width: 30%;
}
#kakunin_wrap .formTable td {
  padding: 20px 0px 20px 0;
  width: 70%;
}
#kakunin_wrap .formkakunin_btn .formkakunin_btn_back, #kakunin_wrap .formkakunin_btn .formkakunin_btn_submit {
  font-size: 2rem !important;
  width: 100%;
  max-width: 320px;
  height: 75px;
  margin: 0px 10px 20px;
  cursor: pointer;
  transition: all 0.3s;
  -webkit-appearance: none;
  display: block;
  line-height: 75px;
  text-align: center;
  letter-spacing: 0.3rem;
  box-shadow: none;
  font-weight: bold;
  border-radius: 40px;
  color: #fff;
  background: #2c6439;
  border: 1px solid #2c6439;
}
#kakunin_wrap .formkakunin_btn .formkakunin_btn_back:hover, #kakunin_wrap .formkakunin_btn .formkakunin_btn_submit:hover {
  opacity: 0.6;
}
#kakunin_wrap .formkakunin_btn .formkakunin_btn_back {
  color: #2c6439;
  background: #fff;
  border: 1px solid #2c6439;
}

@media screen and (max-width: 768px) {
  #kakunin_wrap form {
    margin-top: 5.3333333333vw;
  }
  #kakunin_wrap .formTable {
    margin-bottom: 8vw;
  }
  #kakunin_wrap .formTable th {
    display: block;
    padding: 4vw 0 2.6666666667vw 0;
    width: 100%;
  }
  #kakunin_wrap .formTable td {
    display: block;
    padding: 0 0px 4vw 0;
    width: 100%;
  }
  #kakunin_wrap .formkakunin_btn {
    flex-flow: column-reverse;
  }
  #kakunin_wrap .formkakunin_btn .formkakunin_btn_back, #kakunin_wrap .formkakunin_btn .formkakunin_btn_submit {
    font-size: 1.8rem !important;
    width: 100%;
    max-width: 100%;
    height: 17.3333333333vw;
    margin: 0 0 5.3333333333vw;
    border-radius: 9.3333333333vw;
    line-height: 17.3333333333vw;
  }
}
/* プライバシーポリシー
ーーーーーーーーーーーーーーーーーーーーーーーーーーー*/
#privacy01 {
  padding-bottom: 100px;
}
#privacy01 .privacytab th, #privacy01 .privacytab td {
  display: block;
  text-align: left;
  line-height: 2;
}
#privacy01 .privacytab th {
  padding-bottom: 15px;
}
#privacy01 .privacytab td {
  padding-bottom: 60px;
}

@media screen and (max-width: 768px) {
  #privacy01 {
    padding-bottom: 12.8205128205vw;
  }
  #privacy01 .privacytab th, #privacy01 .privacytab td {
    display: block;
    text-align: left;
    line-height: 2;
  }
  #privacy01 .privacytab th {
    padding-bottom: 2.5641025641vw;
  }
  #privacy01 .privacytab td {
    padding-bottom: 10.2564102564vw;
  }
}
/* =====================================================
    ./Object/utility/
===================================================== */
.notosans {
  font-family: "Noto Sans JP", sans-serif;
}

.fadeIn {
  opacity: 0;
  transition: 2s;
}

.fadeIn.is-show {
  opacity: 1;
}

.fadeUp {
  opacity: 0;
  transition: all 2s;
  transform: translateY(30px);
}

.fadeUp.is-show {
  opacity: 1;
  transform: translateY(0);
}

.faderight {
  opacity: 0;
  transition: all 1.5s;
  transform: translateX(-30px);
}

.faderight.is-show {
  opacity: 1;
  transform: translateX(0);
}

.fadeleft {
  opacity: 0;
  transition: all 1.5s;
  transform: translateX(30px);
}

.fadeleft.is-show {
  opacity: 1;
  transform: translateX(0);
}

.is-show.delay800 {
  transition-delay: 0.8s;
}

@media screen and (min-width: 768px) {
  .p-content__flexbox__item:hover::after {
    transform: scale(1.03);
  }
  .p-content__service:hover::after {
    transform: scale(1.03);
  }
  .p-content__recruit:hover::after {
    transform: scale(1.03);
  }
  .p-news__content__dl:hover a {
    padding: 30px 20px 30px 30px;
  }
  .p-news__content__dl:hover a::after {
    right: 10px;
  }
  .header__nav__list__item:hover > a {
    background: rgba(0, 0, 0, 0.7);
    color: #fff;
  }
  .p-news__titlebox__btn a:hover {
    opacity: 0.6;
  }
  .l-footer__navPc a:hover {
    opacity: 0.6;
  }
  .l-footer__info__inner__tel a:hover {
    opacity: 0.6;
  }
  .l-footer__info__inner__log a:hover {
    opacity: 0.6;
  }
  .l-footer__info__inner__btn a:hover {
    padding: 20px 10px 20px 30px;
  }
  .l-footer__info__inner__btn a:hover::after {
    right: 10px;
  }
  .header__nav__sublist a:hover {
    opacity: 0.4;
  }
}
@media screen and (min-width: 1201px) {
  .sp-headeropen a:hover {
    opacity: 0.4;
  }
}
.header__title a:hover {
  opacity: 0.4;
}

.sp-header__title a:hover {
  opacity: 0.4;
}
@media screen and (max-width: 768px) {
  .sp-header__title a:hover {
    opacity: 1;
  }
}

.notosans {
  font-family: "Noto Sans JP", sans-serif;
}

.sp-db {
  display: none;
}
@media screen and (max-width: 768px) {
  .sp-db {
    display: block;
  }
}

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

/* =====================================================
    ./Object/component/
===================================================== */
.c-componentTitle {
  font-size: 40px;
  font-size: 4rem;
  font-family: "Roboto Condensed", sans-serif;
  text-align: center;
  letter-spacing: 0.05em;
}
.c-componentTitle--left {
  text-align: left;
}
@media screen and (max-width: 768px) {
  .c-componentTitle--left {
    text-align: center;
  }
}
@media screen and (max-width: 768px) {
  .c-componentTitle {
    font-size: 32px;
    font-size: 3.2rem;
  }
}

.c-componentText {
  font-size: 13px;
  font-size: 1.3rem;
  text-align: center;
  margin-top: 30px;
  letter-spacing: 0.15em;
  font-weight: 300;
}
@media screen and (max-width: 768px) {
  .c-componentText {
    margin-top: 10px;
  }
}

.c-componentBtn {
  text-align: center;
  font-size: 20px;
  font-size: 2rem;
  letter-spacing: 0.15em;
  color: #fff;
  padding-bottom: 38px;
  position: relative;
}
@media screen and (max-width: 768px) {
  .c-componentBtn {
    font-size: 15px;
    font-size: 1.5rem;
    padding-bottom: 30px;
    line-height: 1.4;
  }
}
.c-componentBtn::before {
  content: "";
  width: 5px;
  height: 8px;
  background: url(../img/common/icon__arrow.svg) center center/contain no-repeat;
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
}
.c-componentBtn--smallpadding {
  padding-bottom: 27px;
}
@media screen and (max-width: 768px) {
  .c-componentBtn--smallpadding {
    padding-bottom: 37px;
    margin-bottom: -37px;
  }
}

/* =====================================================
    ./Object/project/
===================================================== */
.p-mv .p-mv__titlebox {
  height: 100vh;
  background: rgba(0, 0, 0, 0.15);
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
}
.p-mv .p-mv__titlebox__title {
  font-size: 50px;
  font-size: 5rem;
  font-family: "Roboto Condensed", sans-serif;
  color: #fff;
}
@media screen and (max-width: 768px) {
  .p-mv .p-mv__titlebox__title {
    font-size: 33px;
    font-size: 3.3rem;
    line-height: 1.3;
  }
}
.p-mv .p-mv__titlebox__text {
  font-size: 25px;
  font-size: 2.5rem;
  margin-top: 40px;
  color: #fff;
  font-weight: 300;
  margin-bottom: -90%;
  padding-bottom: 90%;
}
@media screen and (max-width: 768px) {
  .p-mv .p-mv__titlebox__text {
    font-size: 17px;
    font-size: 1.7rem;
    margin-top: 30px;
    font-feature-settings: "palt";
  }
}

.p-mv__textboxwrap {
  background: linear-gradient(to top, rgba(0, 0, 0, 0.5) 10%, rgba(0, 0, 0, 0.15));
  padding: 25% 16px 200px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}

.p-mv__textbox__text {
  opacity: 0;
  transition: 1.5s ease-in-out;
  text-align: center;
  font-size: 18px;
  font-size: 1.8rem;
  letter-spacing: 0.2em;
  color: #fff;
  line-height: 3;
}
@media screen and (max-width: 768px) {
  .p-mv__textbox__text {
    letter-spacing: 0.1em;
    font-size: 14px;
    font-size: 1.4rem;
  }
}
.p-mv__textbox__text.view {
  opacity: 1;
}

.p-content {
  padding: 149px 0 0;
  background: #fff;
}
@media screen and (max-width: 768px) {
  .p-content {
    padding: 85px 0 0;
  }
}
.p-content__service {
  position: relative;
  overflow: hidden;
}
.p-content__service::after {
  position: absolute;
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  top: 0;
  transition: all 0.3s ease-out;
}
@media screen and (max-width: 768px) {
  .p-content__service {
    margin-top: 20px;
  }
}
.p-content__service:first-of-type {
  margin-top: 80px;
}
@media screen and (max-width: 768px) {
  .p-content__service:first-of-type {
    margin-top: 40px;
  }
}
.p-content__service--no01::after {
  background: url(../img/top/service__img01.jpg) center center/cover no-repeat;
}
@media screen and (max-width: 500px) {
  .p-content__service--no01::after {
    background: url(../img/top/service__img01-sp.jpg) center center/cover no-repeat;
  }
}
.p-content__service--no02::after {
  background: url(../img/top/service__img02.jpg) center center/cover no-repeat;
}
@media screen and (max-width: 500px) {
  .p-content__service--no02::after {
    background: url(../img/top/service__img02-sp.jpg) center center/cover no-repeat;
  }
}
.p-content__service--no03::after {
  background: url(../img/top/service__img03.jpg) center center/cover no-repeat;
}
@media screen and (max-width: 500px) {
  .p-content__service--no03::after {
    background: url(../img/top/service__img03-sp.jpg) center center/cover no-repeat;
  }
}
.p-content__service__inner {
  padding: 13.46% 0 13.1%;
  max-height: 450px;
  background: rgba(0, 0, 0, 0.15);
  position: relative;
  z-index: 1;
}
@media screen and (max-width: 768px) {
  .p-content__service__inner {
    padding: 110px 0 80px;
  }
}
.p-content__service__inner__text {
  font-size: 13px;
  font-size: 1.3rem;
  padding: 16px;
  background: #F2F2F2;
  position: absolute;
  bottom: 0;
  right: 0;
}
@media screen and (max-width: 768px) {
  .p-content__service__inner__text {
    position: static;
    text-align: center;
    width: 100%;
    line-height: 1.6;
  }
}

.p-content__flexbox {
  display: flex;
}
.p-content__flexbox:first-of-type {
  margin-top: 80px;
}
@media screen and (max-width: 768px) {
  .p-content__flexbox:first-of-type {
    margin-top: 40px;
  }
}
@media screen and (max-width: 768px) {
  .p-content__flexbox {
    display: block;
  }
}
.p-content__flexbox .p-content__flexbox__items {
  width: 50%;
}
@media screen and (max-width: 768px) {
  .p-content__flexbox .p-content__flexbox__items {
    width: 100%;
  }
}
.p-content__flexbox .p-content__flexbox__items .p-content__flexbox__item {
  width: 100%;
}
.p-content__flexbox .p-content__flexbox__items .p-content__flexbox__item__inner {
  padding: 20.55% 16px 25.46%;
  background: rgba(0, 0, 0, 0.15);
  max-height: 350px;
}
@media screen and (max-width: 768px) {
  .p-content__flexbox .p-content__flexbox__items .p-content__flexbox__item__inner {
    padding: 23.0769230769vw 0;
  }
}
.p-content__flexbox .p-content__flexbox__item {
  width: 50%;
  text-align: center;
  position: relative;
  overflow: hidden;
}
.p-content__flexbox .p-content__flexbox__item::after {
  position: absolute;
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  top: 0;
  transition: all 0.3s ease-out;
}
@media screen and (max-width: 768px) {
  .p-content__flexbox .p-content__flexbox__item {
    width: 100%;
  }
}
.p-content__flexbox .p-content__flexbox__item--no01::after {
  background: url(../img/top/flexbox__img01.jpg) center center/cover no-repeat;
}
@media screen and (max-width: 768px) {
  .p-content__flexbox .p-content__flexbox__item--no01::after {
    background: url(../img/top/flexbox__img01-sp.jpg) center center/cover no-repeat;
  }
}
.p-content__flexbox .p-content__flexbox__item--no02::after {
  background: url(../img/top/flexbox__img02.jpg) center center/cover no-repeat;
}
.p-content__flexbox .p-content__flexbox__item--no03::after {
  background: url(../img/top/flexbox__img03.jpg) center center/cover no-repeat;
}
.p-content__flexbox .p-content__flexbox__item--no04::after {
  background: url(../img/top/flexbox__img04.jpg) center center/cover no-repeat;
}
@media screen and (max-width: 768px) {
  .p-content__flexbox .p-content__flexbox__item--no04::after {
    background: url(../img/top/flexbox__img04-sp.jpg) center center/cover no-repeat;
  }
}
.p-content__flexbox .p-content__flexbox__item--no05::after {
  background: url(../img/top/flexbox__img05.jpg) center center/cover no-repeat;
}
.p-content__flexbox .p-content__flexbox__item__inner {
  padding: 20.55% 16px 25.46%;
  background: rgba(0, 0, 0, 0.15);
  max-height: 350px;
  position: relative;
  z-index: 1;
}
@media screen and (max-width: 768px) {
  .p-content__flexbox .p-content__flexbox__item__inner {
    padding: 24.358974359vw 0;
  }
}
.p-content__flexbox .p-content__flexbox__item--big .p-content__flexbox__item__inner {
  height: 100%;
  max-height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
}
@media screen and (max-width: 768px) {
  .p-content__flexbox .p-content__flexbox__item--big .p-content__flexbox__item__inner {
    padding: 23.0769230769vw 0;
  }
}

.p-content__recruit {
  margin-top: 80px;
  position: relative;
  overflow: hidden;
}
.p-content__recruit::after {
  position: absolute;
  background: url(../img/top/recruit__img.jpg) center center/cover no-repeat;
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  top: 0;
  transition: all 0.3s ease-out;
}
@media screen and (max-width: 768px) {
  .p-content__recruit::after {
    background: url(../img/top/recruit__img-sp.jpg?a) center center/cover no-repeat;
  }
}
@media screen and (max-width: 768px) {
  .p-content__recruit {
    margin-top: 40px;
  }
}
.p-content__recruit__inner {
  background: rgba(0, 0, 0, 0.15);
  padding: 18.09% 0;
  max-height: 550px;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  z-index: 1;
}
@media screen and (max-width: 768px) {
  .p-content__recruit__inner {
    padding: 24.1025641026vw 0;
  }
}

.p-news {
  background: #fff;
  padding: 150px 16px 170px;
}
@media screen and (max-width: 768px) {
  .p-news {
    padding: 90px 30px 50px;
  }
}

.p-news__inner {
  max-width: 932px;
  margin: 0 auto;
  display: flex;
}
@media screen and (max-width: 768px) {
  .p-news__inner {
    max-width: 100%;
    display: block;
  }
}

.p-news__titlebox__btn {
  margin-top: 45px;
}
@media screen and (max-width: 768px) {
  .p-news__titlebox__btn {
    margin-top: 23px;
    text-align: right;
  }
}
.p-news__titlebox__btn a {
  font-size: 13px;
  font-size: 1.3rem;
  font-family: "Roboto Condensed", sans-serif;
  letter-spacing: 0.05em;
  padding-right: 15px;
  position: relative;
}
@media screen and (max-width: 768px) {
  .p-news__titlebox__btn a {
    padding-right: 24px;
  }
}
.p-news__titlebox__btn a::after {
  content: "";
  width: 3px;
  height: 6px;
  background: url(../img/common/icon__arrow--black.svg) center center/contain no-repeat;
  position: absolute;
  top: 50%;
  right: 0;
  transform: translateY(-50%);
}
@media screen and (max-width: 768px) {
  .p-news__titlebox__btn a::after {
    width: 5px;
    height: 10px;
  }
}

.p-news__content {
  margin-left: 70px;
  max-width: 700px;
  width: 100%;
}
@media screen and (max-width: 768px) {
  .p-news__content {
    margin: 40px 0 0;
    max-width: 100%;
  }
}
.p-news__content__dl {
  border-bottom: 0.25px solid #000;
}
.p-news__content__dl:first-of-type {
  border-top: 0.25px solid #000;
}
.p-news__content__dl a {
  display: flex;
  align-items: center;
  padding: 30px 20px;
  position: relative;
}
@media screen and (max-width: 768px) {
  .p-news__content__dl a {
    display: block;
    padding: 22px 0;
  }
}
.p-news__content__dl a::after {
  content: "";
  width: 5px;
  height: 10px;
  background: url(../img/common/icon__arrow--black.svg) center center/contain no-repeat;
  position: absolute;
  top: 50%;
  right: 20px;
  transform: translateY(-50%);
  transition: all 0.3s ease-in-out;
}
@media screen and (max-width: 768px) {
  .p-news__content__dl a::after {
    right: 0;
  }
}
.p-news__content__dt {
  font-size: 16px;
  font-size: 1.6rem;
  font-family: "Roboto Condensed", sans-serif;
}
.p-news__content__dd {
  font-size: 12px;
  font-size: 1.2rem;
  margin-left: 30px;
  padding-right: 20px;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}
@media screen and (max-width: 768px) {
  .p-news__content__dd {
    margin: 10px 0 0;
    padding-right: 20px;
    line-height: 1.6;
    overflow: visible;
    white-space: normal;
    text-overflow: ellipsis;
  }
}

.top-insta {
  background: #fff;
  padding: 0px 16px 170px;
}
@media screen and (max-width: 768px) {
  .top-insta {
    padding: 0px 30px 50px;
  }
}

.top-insta__inner {
  max-width: 932px;
  margin: 0 auto;
}
@media screen and (max-width: 768px) {
  .top-insta__inner {
    max-width: 100%;
  }
}

.p-mv .swiper {
  position: fixed;
  width: 100%;
  height: 100vh;
  top: 0;
  left: 0;
  z-index: -1;
}
.p-mv .swiper .swiper-slide {
  width: 100%;
  height: 100vh;
  background-attachment: fixed;
}
.p-mv .swiper .swiper-slide--no01 {
  background: url(../img/top/mv_img01.jpg) center center/cover no-repeat;
}
.p-mv .swiper .swiper-slide--no02 {
  background: url(../img/top/mv_img02.jpg) center center/cover no-repeat;
}
.p-mv .swiper .swiper-slide--no03 {
  background: url(../img/top/mv_img03.jpg) center center/cover no-repeat;
}
.p-mv .swiper .swiper-slide--no04 {
  background: url(../img/top/mv_img04.jpg) center center/cover no-repeat;
}
.p-mv .swiper .swiper-slide--no05 {
  background: url(../img/top/mv_img05.jpg) center center/cover no-repeat;
}
.p-mv .swiper .swiper-slide .swiper-slide__inner {
  display: none;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.5);
}
.p-mv .swiper .swiper-pagination {
  bottom: 20px;
  padding-right: 20px;
  text-align: right;
}
@media screen and (max-width: 768px) {
  .p-mv .swiper .swiper-pagination {
    padding-right: 0;
    text-align: center;
  }
}
.p-mv .swiper .swiper-pagination .swiper-pagination-bullet {
  width: 40px !important;
  height: 2px !important;
  margin: 0 0 0 10px !important;
  background: #fff !important;
  opacity: 0.3 !important;
  border-radius: 0 !important;
}
@media screen and (max-width: 768px) {
  .p-mv .swiper .swiper-pagination .swiper-pagination-bullet {
    width: 7.6923076923vw !important;
  }
}
.p-mv .swiper .swiper-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active {
  opacity: 1 !important;
  position: relative;
}
.p-mv .swiper .swiper-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active::before {
  content: " ";
  width: 40px;
  height: 2px;
  background: #fff;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  border-radius: 50px;
}
@media screen and (max-width: 768px) {
  .p-mv .swiper .swiper-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active::before {
    width: 7.6923076923vw !important;
  }
}
/*# sourceMappingURL=common.css.map */