@charset "UTF-8";

/**
 *    サイト全体で利用する共通レイアウト
 *    (reset.css、フォントなど)
 *
/* ======================================================================================= */
html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
embed,
figure,
figcaption,
footer,
header,
hgroup,
menu,
nav,
output,
ruby,
section,
summary,
time,
mark,
audio,
video {
  margin: 0;
  padding: 0;
  border: 0;
  font: inherit;
  font-size: 100%;
  vertical-align: baseline;
}

html {
  line-height: 1;
}

ol,
ul {
  list-style: none;
}

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

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

q,
blockquote {
  quotes: none;
}

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

a img {
  border: none;
}

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

a {
  color: inherit;
  text-decoration: inherit;
}

/* ======================================================================================= */
*,
*::before,
*::after {
  box-sizing: border-box;
}

.textBoxGrp {
  display: flex;
  gap: 5px;
  align-items: center;
}

.inputText {
  position: relative;
  display: inline-block;
}

.inputText input,
.inputText select,
.inputText textarea {
  position: relative;
  z-index: 1;
  outline: none;
  box-sizing: border-box;
  background: transparent;
}

.inputText input::-ms-clear,
.inputText select::-ms-clear,
.inputText textarea::-ms-clear {
  visibility: hidden;
}

.inputText img {
  position: absolute;
  z-index: 2;
  top: 0;
  bottom: 0;
  margin: auto 0;
  width: auto;
}

.inputText1 {
  width: 100%;
  display: flex;
  align-items: center;
}

.inputText1 input,
.inputText1 select,
.inputText1 textarea {
  width: 100%;
  height: 5rem;
  padding: 0 1.4rem;
  border-radius: 0.4rem;
  font-family: "Hiragino Kaku Gothic ProN", "游ゴシック", sans-serif;
  color: #404040;
  font-size: 1.6rem;
  letter-spacing: 0.02em;
  background: #EEEEE6;
  border: 1px solid #EEEEE6;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

.inputText1 input.valid,
.inputText1 select.valid,
.inputText1 textarea.valid {
  background: transparent;
  color: #404040;
  border-color: #AFAFAF;
}

.inputText1 input {
  color: #404040;
}

.inputText1 input::-ms-clear {
  visibility: hidden;
}

.inputText1 input::-moz-placeholder {
  color: #AFAFAF;
}

.inputText1 input:-ms-input-placeholder {
  color: #AFAFAF;
}

.inputText1 input::placeholder {
  color: #AFAFAF;
}

.inputText1 select {
  color: #404040;
}

.inputText1 select option {
  color: #404040;
}

.inputText1 textarea {
  height: auto;
  border-radius: 6px;
  border: 1px solid #E9EFE4;
  padding: 0.7rem 1.2rem;
  font-size: 1.5rem;
  line-height: 2.5rem;
}

.inputText1 textarea:focus {
  border: 1px solid #363025;
}

.checkBoxGrp {
  margin-top: 1.3rem;
  margin-bottom: -0.7rem;
}

.checkBoxGrp.column {
  display: flex;
  flex-flow: column;
}

.inputCheck {
  position: relative;
}

.inputCheck input {
  display: none;
}

.inputCheck label {
  display: inline-block;
  vertical-align: top;
  position: relative;
}

.inputCheck label::before {
  content: "";
  display: block;
  position: absolute;
  top: 2px;
  bottom: auto;
  left: 0;
  margin: auto 0;
}

.inputCheck label::after {
  content: "";
  display: block;
  position: absolute;
  top: 7px;
  bottom: auto;
  margin: auto 0;
}

.inputCheck1 {
  font-size: 1.4rem;
  line-height: 1.6rem;
}

.inputCheck1 label {
  padding-left: 2rem;
  letter-spacing: 0.05em;
}

.inputCheck1 label::before {
  width: 1.4rem;
  height: 1.4rem;
  border: 1px solid #AFAFAF;
  border-radius: 0.2rem;
}

.inputCheck1 label::after {
  width: 1rem;
  height: 0.8rem;
  background: url(../svg/icons/check1.svg) center center/contain no-repeat;
  left: 0.2rem;
  top: 5px;
}

.inputCheck1 input:checked+label::before {
  background-color: #F78640;
  border-color: #F78640;
}

.inputCheck1 input:checked+label::after {
  background-image: url(../svg/icons/check2.svg);
}

.inputCheck2,
.inputCheck3 {
  line-height: 3.4rem;
}

.inputCheck2 label,
.inputCheck3 label {
  font-weight: 500;
  padding-left: 2.6rem;
  font-size: 1.6rem;
  line-height: 1.4;
}

.inputCheck2 label::before,
.inputCheck3 label::before {
  width: 2rem;
  height: 2rem;
  border: 1px solid #AFAFAF;
  border-radius: 0.2rem;
}

.inputCheck2 label::after {
  width: 1rem;
  height: 0.8rem;
  background: url(../svg/icons/check1.svg) center center/contain no-repeat;
  left: 0.5rem;
}

.inputCheck2 input:checked+label::before {
  background-color: #F78640;
  border-color: #F78640;
}

.inputCheck2 input:checked+label::after {
  background-image: url(../svg/icons/check2.svg);
}

.inputCheck3 {
  display: inline-block;
  vertical-align: top;
  margin-right: 2rem;
  max-width: 100%;
}

.inputCheck3 label::before {
  border-radius: 50%;
}

.inputCheck3 label::after {
  width: 1rem;
  height: 1rem;
  background-color: #DDDDDD;
  border-radius: 50%;
  left: 0.5rem;
}

.inputCheck3 input:checked+label::after {
  background-color: #F78640;
}

/**
 *  アニメーションパーツページ
 *  　※「class="ani aniFadeUp"」のように、セットで記載すること
 *  　※　js制御で、aniクラスのついている対象が表示された際に、activeクラスを付与することで制御しています。
 *
/* ======================================================================================= */
.ani,
.aniNotAuto {
  opacity: 0;
  position: relative;
}

.ani.active,
.aniNotAuto.active {
  opacity: 1;
  -webkit-animation-timing-function: ease-in-out;
  animation-timing-function: ease-in-out;
}
.aniFadeIn.active {
  -webkit-animation-name: fadeIn;
  animation-name: fadeIn;
  -webkit-animation-duration: 0.3s;
  animation-duration: 0.3s;
}

@-webkit-keyframes fadeIn {
  0% {
    opacity: 0;
  }

  100% {
    opacity: 1;
  }
}

@keyframes fadeIn {
  0% {
    opacity: 0;
  }

  100% {
    opacity: 1;
  }
}

.aniFadeUp {
  transform: translateY(-40px);
  opacity: 0;
}

.aniFadeUp.active {
  transform: translateY(0);
  opacity: 1;
  transition: all 0.8s 0s ease;
}

.aniFadeLeft {
  transform: translateX(-40px);
  opacity: 0;
}

.aniFadeLeft.active {
  transform: translateX(0);
  opacity: 1;
  transition: all 0.8s 0s ease;
}

.aniFadeLeft2 {
  transform: translateX(-120px);
  opacity: 0;
}

.aniFadeLeft2.active {
  transform: translateX(0);
  opacity: 1;
  transition: all 1.2s 0s ease;
}

.aniFadeLeft3 {
  transform: translateX(0);
  opacity: 0;
}

.aniFadeLeft3.active {
  transform: translateX(0);
  opacity: 1;
  transition: all 1.6s 0s ease-in;
}

.aniFadeRight {
  transform: translateX(40px);
  opacity: 0;
}

.aniFadeRight.active {
  transform: translateX(0);
  opacity: 1;
  transition: all 0.8s 0s ease;
  -webkit-animation-name: fadeIn;
  animation-name: fadeIn;
}

.aniFadeRight2 {
  opacity: 0;
}

.aniFadeRight2.active {
  opacity: 0;
  -webkit-animation-delay: 0.2s;
  animation-delay: 0.2s;
  -webkit-animation-duration: 0.8s;
  animation-duration: 0.8s;
  -webkit-animation-timing-function: ease;
  animation-timing-function: ease;
  -webkit-animation-fill-mode: forwards;
  animation-fill-mode: forwards;
  -webkit-animation-name: fadeRight2;
  animation-name: fadeRight2;
}

@-webkit-keyframes fadeRight2 {
  0% {
    opacity: 0;
    filter: blur(6px);
    transform: translateX(40px);
  }

  100% {
    opacity: 1;
    filter: blur(0);
    transform: translateX(0);
  }
}

@keyframes fadeRight2 {
  0% {
    opacity: 0;
    filter: blur(6px);
    transform: translateX(40px);
  }

  100% {
    opacity: 1;
    filter: blur(0);
    transform: translateX(0);
  }
}

.aniFadeDown {
  transform: translateY(40px);
  opacity: 0;
}

.aniFadeDown.active {
  transform: translateY(0);
  opacity: 1;
  transition: all 0.4s 0s ease-out;
}

.aniFadeIn03.active {
  -webkit-animation-name: fadeIn;
  animation-name: fadeIn;
  transition: all 1s 0.3s ease-out;
}

.aniFadeIn08.active {
  -webkit-animation-name: fadeIn;
  animation-name: fadeIn;
  transition: all 1s 0.8s ease-out;
}

.aniFadeRight15 {
  transform: translateX(40px);
}

.aniFadeRight15.active {
  transform: translateX(0);
  transition: all 1s 1.5s ease-out;
}

.aniFadeLeft06 {
  transform: translateX(-40px);
}

.aniFadeLeft06.active {
  transform: translateX(0);
  transition: all 1s 0.6s ease-out;
}

.aniFadeDown05 {
  transform: translateY(40px);
  opacity: 0;
}

.aniFadeDown05.active {
  transform: translateY(0);
  opacity: 1;
  transition: all 0.8s 0.5s ease;
}

.aniFadeDown15 {
  transform: translateY(80px);
  opacity: 1;
}

.aniFadeDown15.active {
  transform: translateY(0);
  opacity: 1;
  transition: all 0.6s 1.5s ease;
}

.aniFadeDown20 {
  transform: translateY(40px);
  opacity: 0;
}

.aniFadeDown20.active {
  transform: translateY(0);
  opacity: 1;
  transition: all 0.8s 2s ease;
}

.aniRotate20 {
  transform-origin: 50% 50%;
  transform: rotate(20deg);
}

.aniRotate20.active {
  transform: rotate(0);
  transition: all 1s 0.8s ease-out;
}

.textBoxGrp {
  display: flex;
  gap: 5px;
  align-items: center;
}

.inputText {
  position: relative;
  display: inline-block;
}

.inputText input,
.inputText select,
.inputText textarea {
  position: relative;
  z-index: 1;
  outline: none;
  box-sizing: border-box;
  background: transparent;
}

.inputText input::-ms-clear,
.inputText select::-ms-clear,
.inputText textarea::-ms-clear {
  visibility: hidden;
}

.inputText img {
  position: absolute;
  z-index: 2;
  top: 0;
  bottom: 0;
  margin: auto 0;
  width: auto;
}

.inputText1 {
  width: 100%;
  display: flex;
  align-items: center;
}

.inputText1 input,
.inputText1 select,
.inputText1 textarea {
  width: 100%;
  height: 5rem;
  padding: 0 1.4rem;
  border-radius: 0.4rem;
  font-family: "Hiragino Kaku Gothic ProN", "游ゴシック", sans-serif;
  color: #404040;
  font-size: 1.6rem;
  letter-spacing: 0.02em;
  background: #EEEEE6;
  border: 1px solid #EEEEE6;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

.inputText1 input.valid,
.inputText1 select.valid,
.inputText1 textarea.valid {
  background: transparent;
  color: #404040;
  border-color: #AFAFAF;
}

.inputText1 input {
  color: #404040;
}

.inputText1 input::-ms-clear {
  visibility: hidden;
}

.inputText1 input::-moz-placeholder {
  color: #AFAFAF;
}

.inputText1 input:-ms-input-placeholder {
  color: #AFAFAF;
}

.inputText1 input::placeholder {
  color: #AFAFAF;
}

.inputText1 select {
  color: #404040;
}

.inputText1 select option {
  color: #404040;
}

.inputText1 textarea {
  height: auto;
  border-radius: 6px;
  border: 1px solid #E9EFE4;
  padding: 0.7rem 1.2rem;
  font-size: 1.5rem;
  line-height: 2.5rem;
}

.inputText1 textarea:focus {
  border: 1px solid #363025;
}

.checkBoxGrp {
  margin-top: 1.3rem;
  margin-bottom: -0.7rem;
}

.checkBoxGrp.column {
  display: flex;
  flex-flow: column;
}

.inputCheck {
  position: relative;
}

.inputCheck input {
  display: none;
}

.inputCheck label {
  display: inline-block;
  vertical-align: top;
  position: relative;
}

.inputCheck label::before {
  content: "";
  display: block;
  position: absolute;
  top: 2px;
  bottom: auto;
  left: 0;
  margin: auto 0;
}

.inputCheck label::after {
  content: "";
  display: block;
  position: absolute;
  top: 7px;
  bottom: auto;
  margin: auto 0;
}

.inputCheck1 {
  font-size: 1.4rem;
  line-height: 1.6rem;
}

.inputCheck1 label {
  padding-left: 2rem;
  letter-spacing: 0.05em;
}

.inputCheck1 label::before {
  width: 1.4rem;
  height: 1.4rem;
  border: 1px solid #AFAFAF;
  border-radius: 0.2rem;
}

.inputCheck1 label::after {
  width: 1rem;
  height: 0.8rem;
  background: url(../svg/icons/check1.svg) center center/contain no-repeat;
  left: 0.2rem;
  top: 5px;
}

.inputCheck1 input:checked+label::before {
  background-color: #F78640;
  border-color: #F78640;
}

.inputCheck1 input:checked+label::after {
  background-image: url(../svg/icons/check2.svg);
}

.inputCheck2,
.inputCheck3 {
  line-height: 3.4rem;
}

.inputCheck2 label,
.inputCheck3 label {
  font-weight: 500;
  padding-left: 2.6rem;
  font-size: 1.6rem;
  line-height: 1.4;
}

.inputCheck2 label::before,
.inputCheck3 label::before {
  width: 2rem;
  height: 2rem;
  border: 1px solid #AFAFAF;
  border-radius: 0.2rem;
}

.inputCheck2 label::after {
  width: 1rem;
  height: 0.8rem;
  background: url(../svg/icons/check1.svg) center center/contain no-repeat;
  left: 0.5rem;
}

.inputCheck2 input:checked+label::before {
  background-color: #F78640;
  border-color: #F78640;
}

.inputCheck2 input:checked+label::after {
  background-image: url(../svg/icons/check2.svg);
}

.inputCheck3 {
  display: inline-block;
  vertical-align: top;
  margin-right: 2rem;
  max-width: 100%;
}

.inputCheck3 label::before {
  border-radius: 50%;
}

.inputCheck3 label::after {
  width: 1rem;
  height: 1rem;
  background-color: #DDDDDD;
  border-radius: 50%;
  left: 0.5rem;
}

.inputCheck3 input:checked+label::after {
  background-color: #F78640;
}

.popup_open {
  display: none;
}

.popup_open:checked+.popup {
  opacity: 1;
  pointer-events: auto;
}

.popup {
  width: 100%;
  height: 100%;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 200;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.5s;
}

.popup .bg {
  display: block;
  width: 100%;
  height: 100%;
  background-color: rgba(64, 64, 64, 0.8);
  position: absolute;
  top: 0;
  left: 0;
}

#reserv_popup {
  z-index: 400;
}

#reserv_popup .popup_body {
  width: 100%;
  height: 100%;
  overflow-y: auto;
  position: relative;
  background-color: #fff;
  border-radius: 0.5rem;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 91.4666666667%;
  height: calc(100% - 4rem);
  max-width: 45rem;
  padding: 5rem 0 1.6rem;
}

#reserv_popup .popup_body>.wrapper {
  width: 100%;
  max-width: 45rem;
  margin: 0 auto;
  padding: 1.2rem 2rem 4rem;
  background-color: #fff;
  border-radius: 0.6rem;
  position: relative;
}

#reserv_popup .popup_close1 {
  height: 3rem;
  display: flex;
  align-items: center;
  font-family: "Quicksand", sans-serif;
  font-size: 1.4rem;
  line-height: 1.8rem;
  font-weight: 400;
  position: absolute;
  top: 2rem;
  right: 2rem;
  z-index: 2;
}

#reserv_popup .popup_close1 svg {
  width: 1rem;
  height: 1rem;
  fill: currentColor;
  margin-right: 0.6rem;
}

#reserv_popup .popup_close2 {
  height: 2.2rem;
  padding: 0 1rem;
  background-color: #fff;
  border-radius: 1.1rem;
  box-shadow: 0 1rem 2rem rgba(64, 64, 64, 0.3);
  display: flex;
  align-items: center;
  color: #F78640;
  font-family: "Quicksand", sans-serif;
  font-size: 1.4rem;
  line-height: 1.8rem;
  font-weight: 400;
  position: absolute;
  right: max(0.6rem, 50% - 21.9rem);
  bottom: 0.8rem;
  z-index: 2;
}

#reserv_popup .popup_close2 svg {
  width: 1rem;
  height: 1rem;
  fill: currentColor;
  margin-right: 0.6rem;
}

#reserv_popup .ttl {
  text-align: center;
  color: #F78640;
  font-size: 20px;
  letter-spacing: 0.1em;
  line-height: 32px;
  font-weight: bold;
  margin: 0 -0.1em 32px 0;
}

#reserv_popup .txt1 {
  margin: 0 -0.1em 0 0;
  font-size: 14px;
  line-height: 22px;
  letter-spacing: 0.05em;
}

#reserv_popup .txt1+.txt1 {
  margin-top: 2rem;
}

#reserv_popup .txt1 .link1 {
  text-decoration: underline;
}

#reserv_popup .txt1 em {
  font-weight: bold;
}

#reserv_popup .formBox {
  margin: 30px 0 40px;
}

#reserv_popup .formBox .formUnit:not(:first-child) {
  margin-top: 36px;
}

#reserv_popup .formBox .formUnit .formUnitGroupHead {
  font-size: 18px;
  letter-spacing: 0.08em;
  margin-bottom: 18px;
}

#reserv_popup .formBox .formUnit .formUnitHead {
  display: flex;
  align-items: center;
}

#reserv_popup .formBox .formUnit .formUnitHead .item {
  font-size: 16px;
  letter-spacing: 0.06em;
  line-height: 20px;
  margin: -2px 0;
}

#reserv_popup .formBox .formUnit .formUnitHead .required,
#reserv_popup .formBox .formUnit .formUnitHead .optional {
  margin-left: 10px;
  font-size: 11px;
  letter-spacing: 0.1em;
  white-space: nowrap;
}

#reserv_popup .formBox .formUnit .formUnitHead .required {
  color: #F78640;
  font-weight: 700;
}

#reserv_popup .formBox .formUnit .formUnitHead .optional {
  color: #1497BC;
}

#reserv_popup .formBox .formUnit .formUnitBody {
  margin-top: 12px;
}

#reserv_popup .formBox .calendar img {
  left: 15px;
  pointer-events: none;
}

#reserv_popup .formBox .calendar input {
  padding-left: 50px;
}

#reserv_popup .formBox .calendar input::-moz-placeholder {
  color: #404040;
}

#reserv_popup .formBox .calendar input:-ms-input-placeholder {
  color: #404040;
}

#reserv_popup .formBox .calendar input::placeholder {
  color: #404040;
}

#reserv_popup .formBox .time {
  margin-top: 8px;
}

#reserv_popup .formBox .time img {
  left: 15px;
  pointer-events: none;
}

#reserv_popup .formBox .time select {
  padding-left: 50px;
}

#reserv_popup .note {
  margin: -3px 0 17px;
  font-size: 12px;
  line-height: 18px;
}

#reserv_popup .checkBoxGrp+.note {
  margin-top: 15px;
}

#reserv_popup .checkBoxGrp.flexwrap {
  display: flex;
  flex-wrap: wrap;
  gap: 0 20px;
}

#reserv_popup .privacyBox {
  text-align: center;
  color: #757C84;
}

#reserv_popup .privacyBox a {
  text-decoration: underline;
  display: inline;
}

#reserv_popup #btnReserv {
  width: 260px;
  height: 70px;
  margin: 10px auto 0;
  cursor: pointer;
}

#reserv_popup label.error {
  display: block;
  vertical-align: top;
  color: #f00;
  font-size: 12px;
  letter-spacing: 0.05em;
  margin-top: 8px;
}

#reserv_popup .thanksWrap {
  display: none;
  height: 100%;
}

#reserv_popup .thanksWrap .txtBox {
  margin: auto;
}

#reserv_popup .thanksWrap .mainText {
  margin: 0 auto;
  font-size: 14px;
  line-height: 22px;
  letter-spacing: 0.05em;
}

#reserv_popup .thanksWrap .mainText .b {
  font-weight: 700;
}

#reserv_popup .thanksWrap .mainText .b2 {
  color: #F78640;
}

#reserv_popup .thanksWrap .mainText+.mainText {
  margin-top: 20px;
}

#reserv_popup .thanksWrap .btn_line+.mainText {
  margin-top: 20px;
}

#reserv_popup .thanksWrap .btn_line {
  width: 300px;
  height: 70px;
  margin: 20px auto 0;
  padding-left: 0.1em;
  border: 1px solid currentColor;
  border-radius: 2px;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #F78640;
  font-size: 17px;
  line-height: 28px;
  font-weight: 700;
  letter-spacing: 0.1em;
}

#reserv_popup .thanksWrap .btn_line svg {
  width: 32px;
  height: 32px;
  fill: currentColor;
  margin-right: 20px;
}

#reserv_popup.thanks .formWrap {
  display: none;
}

#reserv_popup.thanks .thanksWrap {
  display: flex;
}

#reserv_c_popup,
#reserv_a_popup {
  z-index: 400;
}

#reserv_c_popup .popup_body,
#reserv_a_popup .popup_body {
  width: 100%;
  position: relative;
  background-color: #fff;
  border-radius: 0.5rem;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  max-width: 800px;
  padding: 5px 0 0;
}

@media (min-width: 768px) {

  #reserv_c_popup .popup_body,
  #reserv_a_popup .popup_body {
    height: calc(100vh - 100px);
  }
}

@media (max-width: 767.99px) {

  #reserv_c_popup .popup_body,
  #reserv_a_popup .popup_body {
    height: 100%;
  }
}

#reserv_c_popup .popup_body>.wrapper,
#reserv_a_popup .popup_body>.wrapper {
  font-family: "Zen Maru Gothic";
  width: 100%;
  height: 100%;
  overflow-y: auto;
  margin: 0 auto;
  background-color: #fff;
  border-radius: 0.6rem;
  position: relative;
}

@media (min-width: 768px) {

  #reserv_c_popup .popup_body>.wrapper,
  #reserv_a_popup .popup_body>.wrapper {
    padding: 50px 40px;
  }
}

@media (max-width: 767.99px) {

  #reserv_c_popup .popup_body>.wrapper,
  #reserv_a_popup .popup_body>.wrapper {
    padding: 2rem 2rem 4rem;
  }
}

#reserv_c_popup .popup_close1,
#reserv_a_popup .popup_close1 {
  height: 6rem;
  display: flex;
  align-items: center;
  font-family: "Quicksand", sans-serif;
  font-size: 2.8rem;
  line-height: 3.6rem;
  font-weight: 500;
  position: absolute;
  top: 2rem;
  right: 4rem;
  z-index: 2;
}

#reserv_c_popup .popup_close1 svg,
#reserv_a_popup .popup_close1 svg,
#reserv_c_popup .popup_close1 img,
#reserv_a_popup .popup_close1 img {
  width: 2rem;
  height: 2rem;
  fill: currentColor;
}

#reserv_c_popup .popup_close2,
#reserv_a_popup .popup_close2 {
  height: 2.2rem;
  padding: 0 1rem;
  background-color: #fff;
  border-radius: 1.1rem;
  box-shadow: 0 1rem 2rem rgba(64, 64, 64, 0.3);
  display: flex;
  align-items: center;
  color: #F78640;
  font-family: "Quicksand", sans-serif;
  font-size: 1.4rem;
  line-height: 1.8rem;
  font-weight: 400;
  position: absolute;
  right: max(0.6rem, 50% - 21.9rem);
  bottom: 0.8rem;
  z-index: 2;
}

#reserv_c_popup .popup_close2 svg,
#reserv_a_popup .popup_close2 svg {
  width: 1rem;
  height: 1rem;
  fill: currentColor;
  margin-right: 0.6rem;
}

#reserv_c_popup .ttlHead,
#reserv_a_popup .ttlHead {
  display: flex;
  justify-content: center;
  margin-bottom: 20px;
}

#reserv_c_popup .ttlHead>.inner,
#reserv_a_popup .ttlHead>.inner {
  display: inline-flex;
  height: 40px;
  border-radius: 100px;
  background: #6FBC58;
  padding: 0 20px;
  align-items: center;
  justify-content: center;
  margin: 0 auto;
}

#reserv_c_popup .ttlHead>.inner .txt1,
#reserv_a_popup .ttlHead>.inner .txt1 {
  color: #FFF;
  font-family: "Noto Sans JP";
  font-size: 15px;
  font-style: normal;
  font-weight: 700;
  line-height: 26px;
  /* 173.333% */
}

#reserv_c_popup .ttl,
#reserv_a_popup .ttl {
  color: #6FBC58;
  text-align: center;
  font-weight: 700;
  margin: 0 auto 30px;
}

@media (min-width: 768px) {

  #reserv_c_popup .ttl,
  #reserv_a_popup .ttl {
    font-size: 30px;
    line-height: 36px;
    /* 120% */
  }
}

@media (max-width: 767.99px) {

  #reserv_c_popup .ttl,
  #reserv_a_popup .ttl {
    font-size: 20px;
    line-height: 29px;
    font-size: 20px;
  }
}

#reserv_c_popup .txt1,
#reserv_a_popup .txt1 {
  margin: 0 -0.1em 0 0;
  font-size: 16px;
  line-height: 1.4;
  letter-spacing: 0.05em;
}

@media (min-width: 768px) {

  #reserv_c_popup .txt1,
  #reserv_a_popup .txt1 {
    text-align: center;
  }
}

#reserv_c_popup .txt1+.txt1,
#reserv_a_popup .txt1+.txt1 {
  margin-top: 2rem;
}

#reserv_c_popup .txt1 .link1,
#reserv_a_popup .txt1 .link1 {
  text-decoration: underline;
}

#reserv_c_popup .txt1 em,
#reserv_a_popup .txt1 em {
  font-weight: bold;
}

#reserv_c_popup .formBox,
#reserv_a_popup .formBox {
  margin: 30px 0 40px;
}

#reserv_c_popup .formBox .formUnit:not(:first-child),
#reserv_a_popup .formBox .formUnit:not(:first-child) {
  margin-top: 36px;
}

#reserv_c_popup .formBox .formUnit .formUnitGroupHead,
#reserv_a_popup .formBox .formUnit .formUnitGroupHead {
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  position: relative;
}

@media (min-width: 768px) {

  #reserv_c_popup .formBox .formUnit .formUnitGroupHead,
  #reserv_a_popup .formBox .formUnit .formUnitGroupHead {
    margin-top: 50px;
  }
}

@media (max-width: 767.99px) {

  #reserv_c_popup .formBox .formUnit .formUnitGroupHead,
  #reserv_a_popup .formBox .formUnit .formUnitGroupHead {
    margin-top: 30px;
  }
}

#reserv_c_popup .formBox .formUnit .formUnitGroupHead::before,
#reserv_a_popup .formBox .formUnit .formUnitGroupHead::before {
  content: "";
  display: block;
  width: 100%;
  height: 2px;
  border-radius: 2px;
  background-color: #777;
  position: absolute;
  inset: 0 0 0 0;
  margin: auto;
  z-index: 0;
}

#reserv_c_popup .formBox .formUnit .formUnitGroupHead .head1,
#reserv_a_popup .formBox .formUnit .formUnitGroupHead .head1 {
  display: inline-block;
  font-size: 20px;
  font-weight: 700;
  letter-spacing: 0.08em;
  white-space: nowrap;
  flex-shrink: 0;
  position: relative;
  background-color: #FFF;
  padding: 0 30px;
}

#reserv_c_popup .formBox .formUnit .formUnitHead,
#reserv_a_popup .formBox .formUnit .formUnitHead {
  display: flex;
  align-items: center;
}

#reserv_c_popup .formBox .formUnit .formUnitHead .item,
#reserv_a_popup .formBox .formUnit .formUnitHead .item {
  font-size: 16px;
  font-weight: 700;
  letter-spacing: 0.06em;
  line-height: 20px;
  margin: -2px 0;
}

#reserv_c_popup .formBox .formUnit .formUnitHead .required,
#reserv_c_popup .formBox .formUnit .formUnitHead .optional,
#reserv_a_popup .formBox .formUnit .formUnitHead .required,
#reserv_a_popup .formBox .formUnit .formUnitHead .optional {
  margin-left: 10px;
  font-size: 11px;
  letter-spacing: 0.1em;
  white-space: nowrap;
}

#reserv_c_popup .formBox .formUnit .formUnitHead .required,
#reserv_a_popup .formBox .formUnit .formUnitHead .required {
  color: #F78640;
  font-weight: 700;
}

#reserv_c_popup .formBox .formUnit .formUnitHead .optional,
#reserv_a_popup .formBox .formUnit .formUnitHead .optional {
  color: #1497BC;
}

#reserv_c_popup .formBox .formUnit .formUnitBody,
#reserv_a_popup .formBox .formUnit .formUnitBody {
  margin-top: 12px;
}

#reserv_c_popup .formBox .formUnit .formUnitBody.UnitBodyGrp,
#reserv_a_popup .formBox .formUnit .formUnitBody.UnitBodyGrp {
  background-color: #FFF9CB;
  padding: 20px;
  border-radius: 10px;
}

#reserv_c_popup .formBox .calendar img,
#reserv_a_popup .formBox .calendar img {
  left: 15px;
  pointer-events: none;
}

#reserv_c_popup .formBox .calendar input,
#reserv_a_popup .formBox .calendar input {
  padding-left: 50px;
}

#reserv_c_popup .formBox .calendar input::-moz-placeholder,
#reserv_a_popup .formBox .calendar input::-moz-placeholder {
  color: #404040;
}

#reserv_c_popup .formBox .calendar input:-ms-input-placeholder,
#reserv_a_popup .formBox .calendar input:-ms-input-placeholder {
  color: #404040;
}

#reserv_c_popup .formBox .calendar input::placeholder,
#reserv_a_popup .formBox .calendar input::placeholder {
  color: #404040;
}

#reserv_c_popup .formBox .time,
#reserv_a_popup .formBox .time {
  margin-top: 8px;
}

#reserv_c_popup .formBox .time img,
#reserv_a_popup .formBox .time img {
  left: 15px;
  pointer-events: none;
}

#reserv_c_popup .formBox .time select,
#reserv_a_popup .formBox .time select {
  padding-left: 50px;
}

#reserv_c_popup .note,
#reserv_a_popup .note {
  margin: -3px 0 17px;
  font-size: 12px;
  line-height: 18px;
}

#reserv_c_popup .checkBoxGrp+.note,
#reserv_a_popup .checkBoxGrp+.note {
  margin-top: 15px;
}

#reserv_c_popup .checkBoxGrp.flexwrap,
#reserv_a_popup .checkBoxGrp.flexwrap {
  display: flex;
  flex-wrap: wrap;
  gap: 0 20px;
}

#reserv_c_popup .privacyBox,
#reserv_a_popup .privacyBox {
  text-align: center;
}

#reserv_c_popup .privacyBox a,
#reserv_a_popup .privacyBox a {
  color: #F78640;
  text-decoration: underline;
  display: inline;
}

#reserv_c_popup .btnForma,
#reserv_a_popup .btnForma {
  display: flex;
  align-items: center;
  justify-content: center;
  max-width: 350px;
  width: 100%;
  height: 60px;
  border-radius: 100px;
  background: #6FBC58;
  margin: 20px auto 0;
  cursor: pointer;
}

#reserv_c_popup .btnForma .text1,
#reserv_a_popup .btnForma .text1 {
  color: #FFF;
  text-align: center;
  font-family: "Zen Maru Gothic";
  font-size: 20px;
  font-style: normal;
  font-weight: 700;
  line-height: 26px;
  /* 130% */
}

#reserv_c_popup label.error,
#reserv_a_popup label.error {
  display: block;
  vertical-align: top;
  color: #f00;
  font-size: 12px;
  letter-spacing: 0.05em;
  margin-top: 8px;
}

#reserv_c_popup .thanksWrap,
#reserv_a_popup .thanksWrap {
  display: none;
  height: 100%;
  flex-flow: column;
  align-items: center;
  justify-content: center;
}

#reserv_c_popup .thanksWrap .mainText,
#reserv_a_popup .thanksWrap .mainText {
  margin: 0 -0.1em 0 0;
  font-size: 16px;
  line-height: 1.4;
  letter-spacing: 0.05em;
}

@media (min-width: 768px) {

  #reserv_c_popup .thanksWrap .mainText,
  #reserv_a_popup .thanksWrap .mainText {
    text-align: center;
  }
}

#reserv_c_popup .thanksWrap .mainText .b,
#reserv_a_popup .thanksWrap .mainText .b {
  font-weight: 700;
}

#reserv_c_popup .thanksWrap .mainText .b2,
#reserv_a_popup .thanksWrap .mainText .b2 {
  color: #F78640;
}

#reserv_c_popup .thanksWrap .mainText .link1,
#reserv_a_popup .thanksWrap .mainText .link1 {
  font-weight: 700;
  color: #F78640;
  text-decoration: underline;
}

#reserv_c_popup .thanksWrap .mainText+.mainText,
#reserv_a_popup .thanksWrap .mainText+.mainText {
  margin-top: 20px;
}

#reserv_c_popup .thanksWrap .btn_line+.mainText,
#reserv_a_popup .thanksWrap .btn_line+.mainText {
  margin-top: 20px;
}

#reserv_c_popup .thanksWrap .btn_line,
#reserv_a_popup .thanksWrap .btn_line {
  width: 300px;
  height: 70px;
  margin: 20px auto 0;
  padding-left: 0.1em;
  border: 1px solid currentColor;
  border-radius: 2px;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #F78640;
  font-size: 17px;
  line-height: 28px;
  font-weight: 700;
  letter-spacing: 0.1em;
}

#reserv_c_popup .thanksWrap .btn_line svg,
#reserv_a_popup .thanksWrap .btn_line svg {
  width: 32px;
  height: 32px;
  fill: currentColor;
  margin-right: 20px;
}

#reserv_c_popup.thanks .formWrap,
#reserv_a_popup.thanks .formWrap {
  display: none;
}

#reserv_c_popup.thanks .thanksWrap,
#reserv_a_popup.thanks .thanksWrap {
  display: flex;
}

#reserv_c_popup.thanks .btnForma,
#reserv_a_popup.thanks .btnForma {
  background-color: #aaa;
  margin-top: 40px;
}

#reserv_a_popup .ttlHead>.inner {
  background: #6FBC58;
}

#reserv_a_popup .ttl {
  color: #6FBC58;
}

#reserv_a_popup .inputCheck1 input:checked+label::before {
  background-color: #6FBC58;
  border-color: #6FBC58;
}

#reserv_a_popup .privacyBox a {
  color: #6FBC58;
}

#reserv_a_popup .btnForma {
  background: #6FBC58;
}

#reserv_a_popup .thanksWrap .mainText .b2 {
  color: #6FBC58;
}

#reserv_a_popup .thanksWrap .mainText .link1 {
  color: #6FBC58;
}

#reserv_c_popup .ttlHead>.inner {
  background: #F18E38;
}

#reserv_c_popup .ttl {
  color: #F18E38;
}

#reserv_c_popup .inputCheck1 input:checked+label::before {
  background-color: #F78640;
  border-color: #F78640;
}

#reserv_c_popup .privacyBox a {
  color: #F78640;
}

#reserv_c_popup .btnForma {
  background: #F18E38;
}

#reserv_c_popup .thanksWrap .mainText .b2 {
  color: #F78640;
}

#reserv_c_popup .thanksWrap .mainText .link1 {
  color: #F78640;
}

/**
 *  サイト、LP共通レイアウト
 *  （PCレイアウト、wrap350_390、gap10などの共通パーツ）
 *
/* ======================================================================================= */
html {
  overflow-y: scroll;
  font-size: 62.5%;
}

body {
  background-color: #fff;
  color: #333;
  font-size: 15px;
  font-style: normal;
  font-weight: 400;
  line-height: 28px;
  /* 186.667% */
  font-feature-settings: "pwid";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-family: "Noto Sans JP";
}

body picture {
  display: block;
  max-width: 100%;
  height: auto;
}

body picture:not(.picc) img,
body picture:not(.picc) svg {
  display: block;
  max-width: 100%;
  width: 100%;
  height: auto;
}

body .relative {
  position: relative;
}

@media (min-width: 768px) {
  body .pc {
    display: block;
  }
}

@media (max-width: 767.99px) {
  body .pc {
    display: none;
  }
}

@media (min-width: 768px) {
  body .pcinline {
    display: inline;
  }
}

@media (max-width: 767.99px) {
  body .pcinline {
    display: none;
  }
}

@media (max-width: 767.99px) {
  body .spNone {
    display: none;
  }
}

@media (min-width: 768px) {
  body .sp {
    display: none;
  }
}

@media (max-width: 767.99px) {
  body .sp {
    display: block;
  }
}

@media (min-width: 768px) {
  body .spinline {
    display: none;
  }
}

@media (max-width: 767.99px) {
  body .spinline {
    display: inline;
  }
}

@media (min-width: 768px) {
  body .pcNone {
    display: none;
  }
}

@media (min-width: 1080px) {
  body .xl_lg {
    display: block;
  }
}

@media (max-width: 1079.99px) {
  body .xl_lg {
    display: none;
  }
}

@media (max-width: 1079.99px) {
  body .md_spNone {
    display: none;
  }
}

@media (min-width: 1080px) {
  body .md_sp {
    display: none;
  }
}

@media (max-width: 1079.99px) {
  body .md_sp {
    display: block;
  }
}

@media (min-width: 1080px) {
  body .xl_lgNone {
    display: none;
  }
}

body .sm {
  display: none;
}

@media (max-width: 767.99px) and (min-width: 375px) {
  body .sm {
    display: block;
  }
}

body .xs {
  display: none;
}

@media (max-width: 374.99px) {
  body .xs {
    display: block;
  }
}

.no-touchevents body label,
.no-touchevents body a {
  transition: all 0.3s ease-out;
  cursor: pointer;
}

.no-touchevents body label:hover,
.no-touchevents body a:hover {
  opacity: 0.5;
}

body .bgColorY {
  background: url(../img/common/bg_color_y.jpg.webp) center center/375px 950px repeat;
}

.no-webp body .bgColorY {
  background-image: url(../img/common/bg_color_y.jpg);
}

body .wrap360_375 {
  width: 96%;
  margin: 0 auto;
}

body .wrap350_375 {
  width: 93.3333333333%;
  margin: 0 auto;
}

body .wrap343_375 {
  width: 91.4666666667%;
  margin: 0 auto;
}

body .wrap335_375 {
  width: 89.3333333333%;
  margin: 0 auto;
}

body .wrap330_375 {
  width: 88%;
  margin: 0 auto;
}

body .wrap320_375 {
  width: 85.3333333333%;
  margin: 0 auto;
}

body .wrap315_375 {
  width: 84%;
  margin: 0 auto;
}

body .wrap310_375 {
  width: 82.6666666667%;
  margin: 0 auto;
}

body .wrap300_375 {
  width: 80%;
  margin: 0 auto;
}

body .wrap315_350 {
  width: 90%;
  margin: 0 auto;
}

body .wrap305_335 {
  width: 91.0447761194%;
  margin: 0 auto;
}

body .wrap310_330 {
  width: 93.9393939394%;
  margin: 0 auto;
}

body .wrap310_342 {
  width: 90.6432748538%;
  margin: 0 auto;
}

body .wrap310_350 {
  width: 88.5714285714%;
  margin: 0 auto;
}

@media (min-width: 768px) {
  body .pcWrap585 {
    width: 100%;
    max-width: 585px;
    margin: 0 auto;
  }

  body .pcWrap600 {
    width: 100%;
    max-width: 600px;
    margin: 0 auto;
  }

  body .pcWrap700 {
    width: 100%;
    max-width: 700px;
    margin: 0 auto;
  }

  body .pcWrap800 {
    width: 100%;
    max-width: 800px;
    margin: 0 auto;
  }

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

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

  body .pcWrap1200 {
    width: 100%;
    max-width: 1200px;
    margin: 0 auto;
  }

  body .pcWrap1300 {
    width: 100%;
    max-width: 1300px;
    margin: 0 auto;
  }

  body .pcWrapLeft {
    margin: 0 auto 0 0;
  }
}

@media (max-width: 767.99px) {
  body .spWrap315_375 {
    width: 84%;
    margin: 0 auto;
  }

  body .spWrap335_375 {
    width: 89.3333333333%;
    margin: 0 auto;
  }

  body .spWrap355_335 {
    width: 105.9701492537%;
    margin: 0 0 0 auto;
  }
}

body .gap {
  display: flex;
  flex-flow: column;
}

body .gap2 {
  display: flex;
  flex-flow: column;
  gap: 2px;
}

body .gap4 {
  display: flex;
  flex-flow: column;
  gap: 4px;
}

body .gap10 {
  display: flex;
  flex-flow: column;
  gap: 10px;
}

body .gap13 {
  display: flex;
  flex-flow: column;
  gap: 13px;
}

body .gap15 {
  display: flex;
  flex-flow: column;
  gap: 15px;
}

body .gap16 {
  display: flex;
  flex-flow: column;
  gap: 16px;
}

body .gap17 {
  display: flex;
  flex-flow: column;
  gap: 17px;
}

body .gap20 {
  display: flex;
  flex-flow: column;
  gap: 20px;
}

body .gap24 {
  display: flex;
  flex-flow: column;
  gap: 24px;
}

body .gap25 {
  display: flex;
  flex-flow: column;
  gap: 25px;
}

body .gap26 {
  display: flex;
  flex-flow: column;
  gap: 26px;
}

body .gap30 {
  display: flex;
  flex-flow: column;
  gap: 30px;
}

body .gap36 {
  display: flex;
  flex-flow: column;
  gap: 36px;
}

body .gap40 {
  display: flex;
  flex-flow: column;
  gap: 40px;
}

body .gap45 {
  display: flex;
  flex-flow: column;
  gap: 45px;
}

body .gap50 {
  display: flex;
  flex-flow: column;
  gap: 50px;
}

body .gap60 {
  display: flex;
  flex-flow: column;
  gap: 60px;
}

body .gap68 {
  display: flex;
  flex-flow: column;
  gap: 68px;
}

body .gap70 {
  display: flex;
  flex-flow: column;
  gap: 70px;
}

body .gap80 {
  display: flex;
  flex-flow: column;
  gap: 80px;
}

@media (min-width: 768px) {
  body .pcGap120 {
    display: flex;
    flex-flow: column;
    gap: 120px;
  }

  body .pcGap100 {
    display: flex;
    flex-flow: column;
    gap: 100px;
  }

  body .pcGap80 {
    display: flex;
    flex-flow: column;
    gap: 80px;
  }

  body .pcGap60 {
    display: flex;
    flex-flow: column;
    gap: 60px;
  }

  body .pcGap50 {
    display: flex;
    flex-flow: column;
    gap: 50px;
  }

  body .pcGap40 {
    display: flex;
    flex-flow: column;
    gap: 40px;
  }

  body .pcGap30 {
    display: flex;
    flex-flow: column;
    gap: 30px;
  }
}

@media (max-width: 767.99px) {
  body .spGap60 {
    display: flex;
    flex-flow: column;
    gap: 60px;
  }

  body .spGap50 {
    display: flex;
    flex-flow: column;
    gap: 50px;
  }

  body .spGap40 {
    display: flex;
    flex-flow: column;
    gap: 40px;
  }

  body .spGap35 {
    display: flex;
    flex-flow: column;
    gap: 35px;
  }

  body .spGap20 {
    display: flex;
    flex-flow: column;
    gap: 20px;
  }

  body .spGap16 {
    display: flex;
    flex-flow: column;
    gap: 16px;
  }
}

body .mt-70 {
  margin-top: -70px;
}

body .mt40 {
  margin-top: 40px;
}

body .pt40 {
  padding-top: 40px;
}

@media (min-width: 768px) {
  body .pcmt80 {
    margin-top: 80px;
  }

  body .pcmt120 {
    margin-top: 120px;
  }
}

@media (max-width: 767.99px) {
  body .spmt40 {
    margin-top: 40px;
  }

  body .spmt60 {
    margin-top: 60px;
  }

  body .spmt80 {
    margin-top: 80px;
  }
}

body .mt-05em {
  margin-top: -0.5em;
}

body .en {
  font-family: "Roboto", sans-serif;
  font-weight: 400;
}

body .size {
  font-size: 1.5rem;
}

body .b100 {
  font-weight: 100;
}

body .b200 {
  font-weight: 200;
}

body .b300 {
  font-weight: 300;
}

body .b400 {
  font-weight: 400;
}

body .b500 {
  font-weight: 500;
}

body .b600 {
  font-weight: 600;
}

body .b700 {
  font-weight: 700;
}

body .b800 {
  font-weight: 800;
}

body .b900 {
  font-weight: 900;
}

body #bodyWrapper {
  width: 100%;
  max-width: 600px;
  min-height: 100vh;
  margin: 0 auto;
  background-color: #FFFFFF;
  position: relative;
  z-index: 1;
}

@media (max-width: 767px) {
  body #bodyWrapper {
    border-radius: 30px 30px 0 0;
  }
}

@media (600px < width) {
  body #bodyWrapper {
    box-shadow: 0 0 60px rgba(50, 57, 59, 0.1);
    margin-left: calc((100% - 600px) * 0.5);
  }
}

body #bodyWrapper main {
  -webkit-clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
  clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
}

body #bodyWrapper::before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  z-index: -1;
  background: url(../img/common/bg_color_y.jpg.webp) center center/375px 950px repeat;
}

.no-webp body #bodyWrapper::before {
  background-image: url(../img/common/bg_color_y.jpg);
}

body #pcLayout {
  width: 100%;
  height: 100%;
  background: #FEFFF2;
  position: fixed;
  top: 0;
  left: 0;
  z-index: -1;
}

body #pcLayout .pcLeft {
  width: calc((100% - 600px) * 0.5);
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  position: absolute;
  top: 0;
  left: 0;
  padding: 0 20px;
}

body #pcLayout .pcLeft>.wrapper {
  display: flex;
  flex-flow: column;
  max-width: 420px;
  width: 100%;
  text-align: center;
}

body #pcLayout .pcRight {
  width: calc((100% - 600px) * 0.5);
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  position: absolute;
  top: 0;
  right: 0;
}

@media (max-width: 1079px) {
  body #pcLayout {
    background-position: left;
  }

  body #pcLayout .pcLeft,
  body #pcLayout .pcRight {
    display: none;
  }
}

body.pcPage .sec {
  background-color: #FFFFFF;
}

@media (min-width: 768px) {
  body.pcPage .sec {
    padding: 130px 40px;
  }
}

@media (max-width: 767.99px) {
  body.pcPage .sec {
    padding: 60px 0;
  }
}

@media (min-width: 768px) {
  body.pcPage .sec>.wrapper.width100 {
    width: calc(100% + 80px);
    margin-left: -40px;
  }
}

@media (max-width: 768px) {
  body.pcPage .sec.-news {
    padding: 130px 40px;
  }
}

@media (min-width: 768px) {
  body.pcPage {
    margin: 0 auto;
  }

  body.pcPage #bodyWrapper {
    max-width: none;
    width: calc(100% - 320px - 20px);
    margin: 0 20px 0 auto;
    box-shadow: none;
    background: #FFF;
  }

  body.pcPage #bodyWrapper main {
    -webkit-clip-path: none;
    clip-path: none;
    margin: 0 auto;
  }

  body.pcPage #pcLayout .pcLeft,
  body.pcPage #pcLayout .pcRight {
    display: none;
  }

  body.pcPage #mainArea {
    position: relative;
    background-color: #EDF3EB;
    padding-top: 60px;
  }

  body.pcPage .pcMenu {
    display: block;
    width: 320px;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 2;
  }

  body.pcPage .pcMenu .contents {
    position: -webkit-sticky;
    position: sticky;
    top: 60px;
    left: 0;
    width: 100%;
  }
}

@media (min-width: 768px) and (min-width: 768px) {
  body.pcPage .pcMenu .contents {
    padding: 54px 20px 40px;
    height: calc(100vh - 60px);
    overflow-y: auto;
  }
}

@media (max-width: 1634.99px) and (min-width: 1280px) {
  body.pcPage .pcMenu {
    display: none;
  }

  body.pcPage #bodyWrapper {
    width: calc(100% - 40px);
    margin: 0 20px;
  }
}

@media (max-width: 1279.99px) and (min-width: 1080px) {
  body.pcPage .pcMenu {
    display: none;
  }

  body.pcPage #bodyWrapper {
    width: calc(100% - 40px);
    margin: 0 20px;
  }
}

@media (max-width: 1079.99px) and (min-width: 768px) {
  body.pcPage .pcMenu {
    display: none;
  }

  body.pcPage #bodyWrapper {
    width: calc(100% - 40px);
    margin: 0 20px;
  }
}

@media (max-width: 767.99px) {
  body.pcPage .pcMenu {
    display: none;
  }

  body.pcPage #mainArea {
    padding-top: 50px;
  }
}

body {
  /*
      .sliderArea3 {
          @include media(pc) {
              animation: scroll-left 20s infinite linear .5s both;
          }
          @include media(sp) {
              animation: scroll-left 5s infinite linear .5s both;
          }

      }
      @keyframes scroll-left {
          from {
              transform: translateX(0);
          }
          to {
              transform: translateX(-100%);
          }
      }
  */
}

body #wpadminbar {
  position: fixed;
}

body .secColorW,
body .secColorY {
  width: 100%;
  position: relative;
  z-index: 1;
  padding: 0;
  margin-top: -70px;
  background-color: transparent;
  overflow: hidden;
}

body .secColorW .bg,
body .secColorY .bg {
  width: 100%;
  -webkit-mask-image: url(../img/common/h2a_clip.svg), linear-gradient(#000, #000);
  mask-image: url(../img/common/h2a_clip.svg), linear-gradient(#000, #000);
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center 0, center 100px;
  mask-position: center 0, center 100px;
  -webkit-mask-size: 100% auto, 100% 100%;
  mask-size: 100% auto, 100% 100%;
  -webkit-mask-composite: source-over;
  mask-composite: add;
  padding: 100px 0 0;
  position: absolute;
  inset: 0 auto auto auto;
  margin: 0 auto;
  z-index: -1;
  background: #BBB;
}

body .secColorW .bg {
  background: #FFF;
}

body .secColorY .bg {
  background: url(../img/common/bg_color_y.jpg.webp) center center/375px 950px repeat;
}

.no-webp body .secColorY .bg {
  background-image: url(../img/common/bg_color_y.jpg);
}

body .secColorY2 {
  background-color: #FFF9CB;
}

body .bgColorY {
  background: url(../img/common/bg_color_y.jpg.webp) center center/375px 950px repeat;
  padding-bottom: 150px;
}

.no-webp body .bgColorY {
  background-image: url(../img/common/bg_color_y.jpg);
}

body .bgColorW {
  background: #FFF;
  padding-bottom: 150px;
}

body .bgColorG {
  background: url(../img/common/footer_bg.jpg.webp) center center/1920px 928px repeat;
}

.no-webp body .bgColorG {
  background-image: url(../img/common/footer_bg.jpg);
}

body .breadcrumbs {
  width: 100%;
  margin: -6px -0.1em -7px 0;
}

body .breadcrumbs ol {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
}

body .breadcrumbs li {
  display: flex;
  align-items: center;
  color: #333;
  leading-trim: both;
  text-edge: cap;
  font-family: "Noto Sans JP";
  font-size: 12px;
  font-style: normal;
  font-weight: 500;
  line-height: 22px;
  margin: 0 -0.1em 0 0;
}

body .breadcrumbs li:not(:last-child)::after {
  content: "　-　";
  display: block;
  color: #FFB215;
  leading-trim: both;
  text-edge: cap;
  font-family: "Noto Sans JP";
  font-size: 12px;
  font-style: normal;
  font-weight: 500;
  line-height: 22px;
}

body .breadcrumbs a {
  color: #FFB215;
  leading-trim: both;
  text-edge: cap;
  font-family: "Noto Sans JP";
  font-size: 12px;
  font-style: normal;
  font-weight: 500;
  line-height: 22px;
  /* 183.333% */
  -webkit-text-decoration-line: underline;
  text-decoration-line: underline;
  -webkit-text-decoration-style: solid;
  text-decoration-style: solid;
  -webkit-text-decoration-skip: ink;
  text-decoration-skip-ink: auto;
  text-decoration-thickness: auto;
  text-underline-offset: auto;
  text-underline-position: from-font;
}

body .h1a {
  display: flex;
  align-items: center;
  min-width: 250px;
  min-height: 80px;
  margin: 0 auto;
  overflow: hidden;
  padding: 30px 0;
  margin-top: -45px;
  background: url(../img/common/h1a_bg.png.webp) center top/250px 130px no-repeat;
}

.no-webp body .h1a {
  background-image: url(../img/common/h1a_bg.png);
}

body .h1a .ttl1 {
  color: #333;
  leading-trim: both;
  text-edge: cap;
  font-family: "Noto Sans JP";
  font-size: 13px;
  font-style: normal;
  font-weight: 400;
  line-height: 30px;
  /* 230.769% */
  margin: -8px -0.1em -9px 0;
}

body .h1a .ttl2 {
  color: #6EBB57;
  font-family: "Zen Maru Gothic";
  font-size: 24px;
  font-style: normal;
  font-weight: 700;
  line-height: 30px;
  /* 125% */
}

body .h1b {
  position: relative;
}

body .h1b .ttlGrp {
  display: flex;
  flex-flow: column;
  gap: 5px;
  position: absolute;
  inset: auto auto 13px 0;
  z-index: 1;
}

body .h1b .ttlGrp .ttl1 {
  display: inline-block;
}

body .h1b .ttlGrp .ttl1>.inner {
  display: flex;
}

body .h1b .ttlGrp .ttl1 .text1 {
  border-radius: 0 100px 100px 0;
  background: #FFF;
  padding: 4px 10px;
  color: #333;
  leading-trim: both;
  text-edge: cap;
  font-family: "Zen Maru Gothic";
  font-size: 13px;
  font-style: normal;
  font-weight: 500;
  line-height: 17px;
  /* 130.769% */
  flex-shrink: 0;
  white-space: nowrap;
}

body .h1b .ttlGrp .ttl2 {
  display: inline-block;
}

body .h1b .ttlGrp .ttl2>.inner {
  display: flex;
}

body .h1b .ttlGrp .ttl2 .text1 {
  border-radius: 0 100px 100px 0;
  background: #FFF;
  padding: 3px 29px 2px 10px;
  color: #6EBB57;
  leading-trim: both;
  text-edge: cap;
  font-family: "Zen Maru Gothic";
  font-size: 22px;
  font-style: normal;
  font-weight: 700;
  line-height: 30px;
  /* 136.364% */
  flex-shrink: 0;
  white-space: nowrap;
}

body .h1c {
  color: #333;
  leading-trim: both;
  text-edge: cap;
  font-family: "Zen Maru Gothic";
  font-size: 20px;
  font-style: normal;
  font-weight: 700;
  line-height: 30px;
  /* 150% */
  margin: -8px -0.1em -8px 0;
}

body .h1d {
  position: relative;
  aspect-ratio: 375/180;
}

body .h1d .bg1 {
  width: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  position: absolute;
  inset: 0 auto auto 0;
  z-index: 1;
}

body .h1d .bg1::before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background-color: rgba(188, 128, 38, 0.8);
  position: absolute;
  inset: 0 auto auto 0;
}

body .h1d .ttlGrp {
  display: block;
  width: 100%;
  position: absolute;
  inset: auto auto 30px 0;
  z-index: 1;
}

body .h1d .ttlGrp>.inner {
  display: flex;
  flex-flow: column;
  gap: 10px;
}

body .h1d .ttlGrp .ttl1 {
  display: inline-block;
}

body .h1d .ttlGrp .ttl1>.inner {
  display: flex;
}

body .h1d .ttlGrp .ttl1 .text1 {
  color: #FFF;
  leading-trim: both;
  text-edge: cap;
  font-family: "Zen Maru Gothic";
  font-size: 13px;
  font-style: normal;
  font-weight: 500;
  line-height: 17px;
  /* 130.769% */
  flex-shrink: 0;
  white-space: nowrap;
}

body .h1d .ttlGrp .ttl2 {
  display: inline-block;
}

body .h1d .ttlGrp .ttl2>.inner {
  display: flex;
}

body .h1d .ttlGrp .ttl2 .text1 {
  color: #FFF;
  font-family: "Zen Maru Gothic";
  font-size: 22px;
  font-style: normal;
  font-weight: 700;
  line-height: 30px;
  /* 136.364% */
  flex-shrink: 0;
  white-space: nowrap;
}

body .h2b {
  width: 100%;
  position: relative;
  display: flex;
  flex-flow: column;
  align-items: center;
  justify-content: center;
  padding-bottom: 44px;
  min-height: 80px;
}

body .h2b.mb0 {
  padding-bottom: 0;
}

body .h2b .bg {
  width: 100%;
  min-height: 100%;
  -webkit-mask-image: url(../img/common/h2a_clip.svg), linear-gradient(#000, #000);
  mask-image: url(../img/common/h2a_clip.svg), linear-gradient(#000, #000);
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center 0, center 100px;
  mask-position: center 0, center 100px;
  -webkit-mask-size: 100% auto, 100% 100%;
  mask-size: 100% auto, 100% 100%;
  -webkit-mask-composite: source-over;
  mask-composite: add;
  padding: 100px 0 0;
  position: absolute;
  inset: 0 auto auto auto;
  margin: 0 auto;
  z-index: -1;
  background: #FFF;
}

body .h2b .icon1 {
  display: block;
  width: 168px;
  height: 58px;
  margin: 36px auto 0;
  transform: translateX(-6px);
}

body .h2b .sub {
  color: #333;
  leading-trim: both;
  text-edge: cap;
  font-family: "Noto Sans JP";
  font-size: 12px;
  font-style: normal;
  font-weight: 700;
  line-height: 26px;
  /* 216.667% */
  margin-top: -26px;
}

body .h2b .en {
  color: #6EBB57;
  font-family: "Century Gothic";
  font-size: 10px;
  font-style: normal;
  font-weight: 700;
  line-height: 26px;
  /* 260% */
  margin-top: -26px;
}

body .h2b .ttl1 {
  color: #333;
  text-align: center;
  leading-trim: both;
  text-edge: cap;
  font-family: "Zen Maru Gothic";
  font-size: 24px;
  font-style: normal;
  font-weight: 700;
  line-height: 36px;
  /* 150% */
  margin: 6px -0.1em -10px 0;
}

body .h2b.colorY .bg {
  background: url(../img/common/bg_color_y.jpg.webp) center center/375px 950px repeat;
}

.no-webp body .h2b.colorY .bg {
  background-image: url(../img/common/bg_color_y.jpg);
}

body .h2c {
  display: flex;
  align-items: center;
  width: 100%;
  border-bottom: 1px solid #6EBB57;
  position: relative;
  margin: -8px auto 12px;
  padding: 8px 0 8px;
}

body .h2c .icon1 {
  margin-left: -7px;
  margin-bottom: -12px;
}

body .h2c .icon1 svg {
  position: relative;
  width: 56px;
  height: 49px;
  fill: #6EBB57;
}

body .h2c .ttl1 {
  color: #333;
  leading-trim: both;
  text-edge: cap;
  font-family: "Zen Maru Gothic";
  font-size: 18px;
  font-style: normal;
  font-weight: 700;
  line-height: 26px;
  /* 144.444% */
  margin: -4px -0.1em -4px 0;
}

body .h2c.noicon .icon1 {
  display: block;
  width: 7px;
  height: 49px;
}

body .h2c.colorG {
  border-bottom: 1px solid #6FBC58;
}

body .h2c.colorG .icon1 svg {
  fill: #6FBC58;
}

body .h2d {
  display: flex;
  flex-flow: column;
  justify-content: center;
  text-align: center;
}

@media (min-width: 768px) {
  body .h2d {
    gap: 34px;
  }
}

@media (max-width: 767.99px) {
  body .h2d {
    gap: 20px;
  }
}

@media (min-width: 768px) {
  body .h2d.row3 {
    gap: 0;
  }
}

@media (max-width: 767.99px) {
  body .h2d.row3 {
    gap: 0;
  }
}

body .h2d .sub {
  color: #6EBB57;
  font-family: "Century Gothic";
  font-style: normal;
  font-weight: 700;
  margin: 0 -0.1em 0 0;
}

body .h2d .sub.-gray {
  color: #999;
}


@media (min-width: 768px) {
  body .h2d .sub {
    font-size: 20px;
    letter-spacing: 2px;
    line-height: 25px;
  }
}

@media (max-width: 767.99px) {
  body .h2d .sub {
    font-size: 13px;
    letter-spacing: 1.3px;
    line-height: normal;
  }
}

body .h2d .sub2 {
  color: #333;
  font-family: "Zen Maru Gothic";
  font-style: normal;
  font-weight: 700;
  line-height: normal;
}

@media (min-width: 768px) {
  body .h2d .sub2 {
    font-size: 18px;
    margin: 16px auto 21px;
  }
}

@media (max-width: 767.99px) {
  body .h2d .sub2 {
    font-size: 13px;
    margin: 7px auto 12px;
  }
}

body .h2d .ttl1 {
  align-items: center;
  color: #333;
  font-family: "Zen Maru Gothic";
  font-style: normal;
  font-weight: 700;
  line-height: 38px;
  /* 146.154% */
}

@media (min-width: 768px) {
  body .h2d .ttl1 {
    font-size: 38px;
    line-height: 1.4;
    margin: -10px -0.1em -11px 0;
  }
}

@media (max-width: 767.99px) {
  body .h2d .ttl1 {
    font-size: 26px;
    margin: -10px -0.1em -10px 0;
  }
}

body .h2d.center {
  align-items: center;
}

body .h2e {
  display: flex;
  flex-flow: column;
  justify-content: center;
  align-items: center;
  gap: 10px;
}

body .h2e .ttl1 {
  color: #6FBC58;
  font-family: "Century Gothic";
  font-weight: 700;
  letter-spacing: 0.1em;
}

@media (min-width: 768px) {
  body .h2e .ttl1 {
    font-size: 40px;
  }
}

@media (max-width: 767.99px) {
  body .h2e .ttl1 {
    font-size: 28px;
  }
}

body .h2e .sub {
  color: var(---1, #404040);
  font-family: "Zen Maru Gothic";
  font-weight: 700;
}

@media (min-width: 768px) {
  body .h2e .sub {
    font-size: 17px;
    line-height: 30px;
    /* 176.471% */
  }
}

@media (max-width: 767.99px) {
  body .h2e .sub {
    font-size: 15px;
    line-height: 1.2;
  }
}

body .h3a {
  display: flex;
  align-items: center;
  gap: 10px;
  border-bottom: 2px solid #FFD886;
  position: relative;
}

@media (min-width: 768px) {
  body .h3a {
    padding-bottom: 18px;
  }
}

@media (max-width: 767.99px) {
  body .h3a {
    padding-bottom: 6px;
  }
}

body .h3a::before {
  content: "";
  display: block;
  width: 30px;
  height: 23px;
  flex-shrink: 0;
  background: url(../svg/icons/logo_mark.svg) left center/30px 23px no-repeat;
}

body .h3a .text1 {
  color: #333;
  font-family: "Zen Maru Gothic";
  font-style: normal;
  font-weight: 700;
  line-height: 30px;
  /* 125% */
  margin: -3px -0.1em -4px 0;
}

@media (min-width: 768px) {
  body .h3a .text1 {
    font-size: 24px;
  }
}

@media (max-width: 767.99px) {
  body .h3a .text1 {
    font-size: 15px;
  }
}

body .h3b {
  position: relative;
  padding-left: 16px;
  margin: -3px -0.1em -3px 0;
}

body .h3b::before {
  content: "";
  display: block;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background-color: #6FBC58;
  position: absolute;
  inset: 10px auto auto 0;
}

body .h3b .ttl1 {
  color: #333;
  leading-trim: both;
  text-edge: cap;
  font-family: "Zen Maru Gothic";
  font-size: 20px;
  font-style: normal;
  font-weight: 700;
  line-height: 26px;
  /* 130% */
}

body .h3b.colorG::before {
  background-color: #9DCB64;
}

body .h3b.colorB::before {
  background-color: #51A7DD;
}

body .h3b.colorO::before {
  background-color: #6EBB57;
}

body .h3b.colorP::before {
  background-color: #ED7980;
}

body .h3b.colorG2::before {
  background-color: #6FBC58;
}

body .h3b.colorO2::before {
  background-color: #F18E38;
}

body .h3b.colorW::before {
  background-color: #999999;
}

body .h3c {
  text-align: center;
}

body .h3c .ttl1 {
  display: inline-block;
  color: #333;
  leading-trim: both;
  text-edge: cap;
  font-family: "Zen Maru Gothic";
  font-size: 20px;
  font-style: normal;
  font-weight: 500;
  line-height: 30px;
  /* 150% */
  padding: 0 17px 18px;
  background: url(../img/common/h3c_bg.png.webp) left bottom/194px 3px repeat-x;
}

.no-webp body .h3c .ttl1 {
  background-image: url(../img/common/h3c_bg.png);
}

body .h3d {
  display: flex;
  gap: 30px;
  flex-flow: column;
  align-items: flex-start;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
  margin: 0 auto;
  position: relative;
  z-index: 1;
  margin-bottom: -70px;
}

body .h3d .ttl1 {
  color: #333;
  leading-trim: both;
  text-edge: cap;
  font-family: "Zen Maru Gothic";
  font-size: 20px;
  font-style: normal;
  font-weight: 700;
  line-height: 26px;
  /* 130% */
  margin: 0 -3px -0.1em -3px;
  text-shadow: 2px 2px 0 #FFFFFF, -2px -2px 0 #FFFFFF, -2px 2px 0 #FFFFFF, 2px -2px 0 #FFFFFF, 2px 0 0 #FFFFFF, -2px 0 0 #FFFFFF, 0 2px 0 #FFFFFF, 0 -2px 0 #FFFFFF;
}

body .h3d2 {
  width: 100%;
  display: flex;
  gap: 20px;
  flex-flow: column;
  align-items: flex-start;
  justify-content: center;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
  margin: 0 auto;
  position: relative;
  z-index: 1;
  padding-bottom: 52px;
  margin-bottom: -22px;
}

body .h3d2 .en {
  color: #6EBB57;
  font-family: "Century Gothic";
  font-size: 12px;
  font-style: normal;
  font-weight: 700;
  line-height: 30px;
  /* 250% */
  letter-spacing: 1.2px;
  display: flex;
  white-space: nowrap;
  margin: 0 -9px -0.1em -9px;
}

body .h3d2 .ttl1 {
  color: #333;
  leading-trim: both;
  text-edge: cap;
  font-family: "Zen Maru Gothic";
  font-size: 20px;
  font-style: normal;
  font-weight: 700;
  line-height: 46px;
  /* 130% */
  margin: 0 -13px -0.1em -13px;
  text-shadow: 2px 2px 0 #FFFFFF, -2px -2px 0 #FFFFFF, -2px 2px 0 #FFFFFF, 2px -2px 0 #FFFFFF, 2px 0 0 #FFFFFF, -2px 0 0 #FFFFFF, 0 2px 0 #FFFFFF, 0 -2px 0 #FFFFFF;
}

body .h3d2 .pic01 {
  position: absolute;
  inset: auto auto 0 0;
  width: 66px;
  height: 105px;
}

body .h3d2 .pic02 {
  position: absolute;
  inset: auto 0 58px auto;
  width: 70px;
  height: 96px;
}

body .h3d3 {
  width: 100%;
  display: flex;
  gap: 20px;
  flex-flow: column;
  align-items: flex-start;
  justify-content: center;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
  margin: 0 auto;
  position: relative;
  z-index: 1;
}

body .h3d3.bg345 {
  width: 345px;
  height: 345px;
  padding-top: 37px;
}

body .h3d3.bg280 {
  width: 280px;
  height: 280px;
  padding-top: 41px;
}

body .h3d3.bg345::before,
body .h3d3.bg280::before {
  content: "";
  display: block;
  border-radius: 100%;
  background: rgba(247, 184, 54, 0.1);
  position: absolute;
  inset: 0 0 0 0;
  margin: auto;
  z-index: -1;
}

body .h3d3 .en {
  color: #6EBB57;
  font-family: "Century Gothic";
  font-size: 12px;
  font-style: normal;
  font-weight: 700;
  line-height: 30px;
  /* 250% */
  letter-spacing: 1.2px;
  display: flex;
  white-space: nowrap;
  margin: 3px -9px -0.1em -9px;
}

body .h3d3 .sub {
  color: #333;
  leading-trim: both;
  text-edge: cap;
  font-family: "Noto Sans JP";
  font-size: 13px;
  font-style: normal;
  font-weight: 500;
  line-height: 32px;
  /* 246.154% */
}

body .h3d3 .ttl1 {
  color: #333;
  leading-trim: both;
  text-edge: cap;
  font-family: "Zen Maru Gothic";
  font-size: 18px;
  font-style: normal;
  font-weight: 500;
  line-height: 32px;
  /* 177.778% */
  margin: 0 -13px -0.1em -13px;
}

body .h3e {
  display: flex;
  align-items: center;
  width: 100%;
  border-bottom: 1px solid #6EBB57;
  position: relative;
  padding: 0 0 12px;
}

body .h3e .ttl1 {
  color: #333;
  leading-trim: both;
  text-edge: cap;
  font-family: "Zen Maru Gothic";
  font-size: 18px;
  font-style: normal;
  font-weight: 700;
  line-height: 26px;
  /* 144.444% */
  margin: -4px -0.1em -4px 0;
}

body .h3f {
  display: flex;
}

@media (min-width: 768px) {
  body .h3f {
    gap: 70px;
    flex-direction: row-reverse;
  }
}

@media (max-width: 767.99px) {
  body .h3f {
    gap: 35px;
    flex-direction: row-reverse;
  }
}

body .h3f .ttlGrp1 {
  display: flex;
}

@media (min-width: 768px) {
  body .h3f .ttlGrp1 {
    gap: 5px;
    flex-direction: row-reverse;
  }
}

@media (max-width: 767.99px) {
  body .h3f .ttlGrp1 {
    gap: 10px;
    flex-direction: row-reverse;
  }
}

body .h3f .ttlGrp1 .ttl1 {
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
  color: #6FBC58;
  font-family: "Century Gothic";
  font-weight: 700;
  letter-spacing: 0.1em;
}

@media (min-width: 768px) {
  body .h3f .ttlGrp1 .ttl1 {
    font-size: 40px;
    line-height: 49px;
  }
}

@media (max-width: 767.99px) {
  body .h3f .ttlGrp1 .ttl1 {
    font-size: 24px;
    line-height: 29px;
  }
}

body .h3f .ttlGrp1 .sub1 {
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
  color: #333;
  font-family: "Century Gothic";
  font-weight: 700;
}

@media (min-width: 768px) {
  body .h3f .ttlGrp1 .sub1 {
    font-size: 15px;
    line-height: 13px;
    letter-spacing: 0.2em;
  }
}

@media (max-width: 767.99px) {
  body .h3f .ttlGrp1 .sub1 {
    font-size: 15px;
    line-height: 13px;
    letter-spacing: 0.1em;
  }
}

body .h3f .text1 {
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
  color: #333;
  font-family: "Zen Maru Gothic";
  font-style: normal;
  font-weight: 700;
}

@media (min-width: 768px) {
  body .h3f .text1 {
    font-size: 26px;
    line-height: 44px;
    letter-spacing: 0.05em;
  }
}

@media (max-width: 767.99px) {
  body .h3f .text1 {
    font-size: 18px;
    line-height: 29px;
    letter-spacing: 0.03em;
  }
}

@media (min-width: 768px) {
  body .h3f.reverse {
    flex-direction: row;
  }
}

body .h4a {
  display: flex;
  gap: 26px;
}

body .h4a .ttlGrp .ttl1 {
  color: #333;
  leading-trim: both;
  text-edge: cap;
  font-family: "Zen Maru Gothic";
  font-size: 20px;
  font-style: normal;
  font-weight: 700;
  line-height: 26px;
  /* 185.714% */
}

body .h4a .ttlGrp .ttl1 .small {
  font-size: 14px;
}

body .h4a .ttlGrp .en {
  color: #FFB215;
  font-family: "Century Gothic";
  font-size: 11px;
  font-style: normal;
  font-weight: 700;
  line-height: 26px;
  /* 236.364% */
  letter-spacing: 1.1px;
}

body .h4a .pic01 {
  width: 140px;
  height: 160px;
  border-radius: 5px;
  box-shadow: 10px 10px 20px 0 rgba(0, 0, 0, 0.2);
  transform: rotate(5deg);
  flex-shrink: 0;
  overflow: hidden;
  margin-top: -90px;
}

body .h4b {
  color: #6EBB57;
  font-family: "Zen Old Mincho";
  font-style: normal;
  font-weight: 700;
  line-height: normal;
}

@media (min-width: 768px) {
  body .h4b {
    font-size: 20px;
    letter-spacing: 2px;
  }
}

@media (max-width: 767.99px) {
  body .h4b {
    font-size: 16px;
    letter-spacing: 1.6px;
  }
}

body .h5a .text1 {
  display: inline-block;
  border-radius: 100px;
  background: #6FBC58;
  padding: 7px 24px 7px 37px;
  position: relative;
  color: #FFF;
  leading-trim: both;
  text-edge: cap;
  font-family: "Zen Maru Gothic";
  font-size: 18px;
  font-style: normal;
  font-weight: 700;
  line-height: 26px;
  margin-right: -0.1em;
}

body .h5a .text1::before {
  content: "";
  display: block;
  width: 17px;
  height: 12px;
  background: url(../img/common/h5a_bg.svg) center center/cover repeat;
  position: absolute;
  inset: 15px auto auto 14px;
}

body .h5b {
  position: relative;
  padding-left: 16px;
  margin: -6px -0.1em -7px 0;
}

body .h5b::before {
  content: "";
  display: block;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background-color: #6FBC58;
  position: absolute;
  inset: 11px auto auto 0;
}

body .h5b .ttl1 {
  color: #333;
  leading-trim: both;
  text-edge: cap;
  font-family: "Zen Maru Gothic";
  font-size: 15px;
  font-style: normal;
  font-weight: 700;
  line-height: 28px;
  margin: -6px -0.1em -7px 0;
}

body .txta {
  color: #333;
  leading-trim: both;
  text-edge: cap;
  font-family: "Noto Sans JP";
  font-size: 15px;
  font-style: normal;
  font-weight: 500;
  line-height: 28px;
  /* 186.667% */
  margin: -6px -0.1em -7px 0;
}

body .txta em {
  color: #6FBC58;
  font-weight: 700;
}

body .txta .link1 {
  font-weight: 700;
  color: #F78640;
  text-decoration: underline;
}

body .txta .b1 {
  display: inline-block;
  font-size: 17px;
  font-weight: 700;
  font-family: "Zen Maru Gothic";
}

body .txta .line1 {
  display: inline-block;
  padding-left: 1em;
  text-indent: -1em;
}

body .txta.right {
  text-align: right;
}

body .txtb {
  color: #000;
  leading-trim: both;
  text-edge: cap;
  font-family: "Zen Maru Gothic";
  font-size: 18px;
  font-style: normal;
  font-weight: 500;
  line-height: 30px;
  /* 166.667% */
  margin: -8px -0.1em -9px 0;
}

body .txtb.right {
  text-align: right;
}

body .read1 {
  color: #333;
  text-align: center;
  font-family: "Noto Sans JP";
  font-style: normal;
  font-weight: 500;
  text-align: center;
}

@media (min-width: 768px) {
  body .read1 {
    font-size: 20px;
    line-height: 40px;
    margin: -12px -0.1em -13px 0;
  }
}

@media (max-width: 767.99px) {
  body .read1 {
    font-size: 15px;
    line-height: 34px;
    margin: -11px -0.1em -12px 0;
  }
}

body .read1 .emY {
  font-weight: 700;
  color: #FFB215;
}

body .read1 .emG {
  font-weight: 700;
  color: #6EBB57;
}

body .read1.left {
  text-align: left;
}

body .areaRead2 {
  display: flex;
  flex-direction: column;
  justify-content: center;
}

@media (min-width: 768px) {
  body .areaRead2 {
    gap: 40px;
  }
}

@media (max-width: 767.99px) {
  body .areaRead2 {
    gap: 20px;
  }
}

body .areaRead2 .pic01 {
  width: 130px;
  height: 67px;
  margin: 0 auto;
}

body .read2 {
  color: #000;
  font-family: "Zen Maru Gothic";
  font-style: normal;
  font-weight: 500;
}

@media (min-width: 768px) {
  body .read2 {
    font-size: 17px;
    line-height: 36px;
    /* 211.765% */
    margin: -12px -0.1em -12px 0;
  }
}

@media (max-width: 767.99px) {
  body .read2 {
    font-size: 15px;
    line-height: 34px;
    margin: -11px -0.1em -12px 0;
  }
}

body .read2 em {
  font-weight: 700;
}

body .read2 .red {
  font-weight: 700;
  color: #FF0000;
}

body .read2 .link1 {
  font-weight: 700;
  color: #0026FF;
  text-decoration: underline;
}

body .pica {
  display: block;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  max-width: 100%;
  height: auto;
  margin: 0 auto;
  border-radius: 6px;
  overflow: hidden;
}

body .pica img {
  margin: 0 auto;
  max-width: 100%;
  display: block;
  width: 100%;
  height: auto;
}

body .pica.video {
  aspect-ratio: 350/180;
}

body .pica.video video {
  margin: 0 auto;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}

body .pica.youtube {
  width: 100%;
  aspect-ratio: 16/9;
}

body .pica.youtube iframe {
  width: 100%;
  height: 100%;
}

body .pica.closed {
  position: relative;
}

body .pica.closed::after {
  content: "募集停止中";
  display: flex;
  align-items: center;
  justify-content: center;
  width: 220px;
  height: 65px;
  flex-shrink: 0;
  border-radius: 5px;
  background: #FFB215;
  color: #FFF;
  leading-trim: both;
  text-edge: cap;
  font-family: "Zen Maru Gothic";
  font-size: 20px;
  font-style: normal;
  font-weight: 700;
  line-height: 28px;
  /* 140% */
  pointer-events: none;
  position: absolute;
  inset: 0 0 0 0;
  margin: auto;
  z-index: 1;
}

body .picb {
  display: block;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  max-width: 100%;
  height: auto;
  margin: 0 auto;
  padding: 20px;
  background: #fff;
  box-shadow: 0px 1px 1px 0px rgba(70, 90, 107, 0.2);
  border-radius: 6px;
}

body .picb img {
  margin: 0 auto;
  max-width: 100%;
  display: block;
  width: 100%;
  height: auto;
}

body .picc {
  display: block;
  text-align: center;
  margin: 0 auto;
}

body .picc img {
  margin: 0 auto;
  display: block;
  max-width: 100%;
  height: auto;
}

body .picc.left {
  margin: 0 auto 0 0;
}

body .picMapa {
  display: block;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  max-width: 100%;
  height: auto;
  margin: 0 auto;
  border-radius: 5px;
  background: #FFF;
  overflow: hidden;
  box-shadow: 0 0 30px 0 rgba(0, 0, 0, 0.15);
}

body .picMapa img {
  margin: 0 auto;
  max-width: 100%;
  display: block;
  width: 100%;
  height: auto;
}

body .areaPicMapa {
  position: relative;
}

@media (min-width: 1640px) {
  body .areaPicMapa {
    aspect-ratio: 1200/580;
    margin: 40px auto;
  }
}

@media (max-width: 1639.99px) {
  body .areaPicMapa {
    max-width: 600px;
    aspect-ratio: 375/632;
    margin: 20px auto 20px 0;
  }
}

body .areaPicMapa .boxServiceb.inMap {
  position: absolute;
  z-index: 1;
}

@media (min-width: 1640px) {
  body .areaPicMapa .boxServiceb.inMap {
    inset: 60px auto auto 60px;
  }
}

@media (max-width: 1639.99px) {
  body .areaPicMapa .boxServiceb.inMap {
    inset: auto 20px 0 auto;
    max-width: 335px;
  }
}

@media (min-width: 1640px) {
  body .areaPicMapa .boxServiceb.inMap.right {
    inset: 60px 60px auto auto;
  }
}

body .boxBtnRight {
  margin: 0 0 0 auto;
}

body .btna {
  width: 100%;
  padding: 8px 40px 8px 20px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 5px;
  position: relative;
  background: url(../img/common/btna_bg.png.webp) center center/cover repeat;
  min-height: 60px;
}

.no-webp body .btna {
  background-image: url(../img/common/btna_bg.png);
}

body .btna .text1 {
  color: #FFF;
  text-align: center;
  font-family: "Noto Sans JP";
  font-size: 15px;
  font-style: normal;
  font-weight: 700;
  line-height: 22px;
  /* 146.667% */
  margin: 0 -0.1em 0 0;
}

body .btna .icon1 {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 22px;
  height: 22px;
  background-color: #FFF;
  border-radius: 50%;
  position: absolute;
  inset: auto 9px auto auto;
  margin: auto 0;
}

body .btna .icon1 svg {
  display: block;
  width: 6px;
  height: 10px;
  fill: #F18E38;
}

body .btna.small {
  justify-content: flex-start;
  max-width: 240px;
}

body .btna.small .text1 {
  text-align: left;
}

body .btna.right {
  margin-left: auto;
  margin-right: 0;
}

body .btnb {
  padding: 10px 15px;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  border-radius: 100px;
  background: #6FBC58;
}

body .btnb .text1 {
  color: #FFF;
  leading-trim: both;
  text-edge: cap;
  font-family: "Noto Sans JP";
  font-size: 13px;
  font-style: normal;
  font-weight: 700;
  line-height: 28px;
  /* 215.385% */
  margin: -7px -0.1em -7px 0;
}

body .btnb .icon1 {
  display: block;
  width: 6px;
  height: 10px;
  fill: #FFF;
  position: absolute;
  inset: auto 15px auto auto;
  margin: auto 0;
}

body .btnc {
  display: flex;
  align-items: center;
  width: 100%;
  height: 70px;
  border-radius: 5px;
  overflow: hidden;
  border: 1px solid #9DCB64;
  background: #FFF;
  position: relative;
  padding: 0 40px 0 95px;
}

body .btnc .icon1 {
  width: 80px;
  height: 70px;
  -webkit-mask-image: url(../img/common/btnc_clip.svg);
  mask-image: url(../img/common/btnc_clip.svg);
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: left center;
  mask-position: left center;
  -webkit-mask-size: 100% auto;
  mask-size: 100% auto;
  background: #9DCB64;
  position: absolute;
  inset: 0 auto auto 0;
}

body .btnc .icon1 svg {
  position: relative;
  width: 80px;
  height: 70px;
  fill: #FFF;
}

body .btnc .text1 {
  color: #333;
  font-family: "Noto Sans JP";
  font-size: 17px;
  font-style: normal;
  font-weight: 500;
  line-height: 22px;
  /* 129.412% */
}

body .btnc .icon2 {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 20px;
  height: 20px;
  background-color: #9DCB64;
  border-radius: 50%;
  position: absolute;
  inset: auto 9px auto auto;
  margin: auto 0;
}

body .btnc .icon2 svg {
  display: block;
  width: 6px;
  height: 10px;
  fill: #FFF;
}

body .btnc.colorG {
  border: 1px solid #9DCB64;
}

body .btnc.colorG .icon1 {
  background: #9DCB64;
}

body .btnc.colorG .icon2 {
  background-color: #9DCB64;
}

body .btnc.colorB {
  border: 1px solid #51A7DD;
}

body .btnc.colorB .icon1 {
  background: #51A7DD;
}

body .btnc.colorB .icon2 {
  background-color: #51A7DD;
}

body .btnc.colorO {
  border: 1px solid #6EBB57;
}

body .btnc.colorO .icon1 {
  background: #6EBB57;
}

body .btnc.colorO .icon2 {
  background-color: #6EBB57;
}

body .btnc.colorP {
  border: 1px solid #ED7980;
}

body .btnc.colorP .icon1 {
  background: #ED7980;
}

body .btnc.colorP .icon2 {
  background-color: #ED7980;
}

body .btnc.colorG2 {
  border: 1px solid #6FBC58;
}

body .btnc.colorG2 .icon1 {
  background: #6FBC58;
}

body .btnc.colorG2 .icon2 {
  background-color: #6FBC58;
}

body .btnc.colorO2 {
  border: 1px solid #F18E38;
}

body .btnc.colorO2 .icon1 {
  background: #F18E38;
}

body .btnc.colorO2 .icon2 {
  background-color: #F18E38;
}

body .btnc.colorW {
  border: 1px solid #999999;
}

body .btnc.colorW .icon1 {
  background: #999999;
}

body .btnc.colorW .icon2 {
  background-color: #999999;
}

body .btnd {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 100px;
  position: relative;
  background: url(../img/common/btna_bg.png.webp) center center/cover repeat;
}

@media (min-width: 768px) {
  body .btnd {
    min-height: 60px;
    padding: 13px 40px 13px 20px;
  }
}

@media (max-width: 767.99px) {
  body .btnd {
    min-height: 40px;
    padding: 13px 40px 13px 20px;
  }
}

.no-webp body .btnd {
  background-image: url(../img/common/btna_bg.png);
}

body .btnd .text1 {
  color: #FFF;
  text-align: center;
  font-family: "Noto Sans JP";
  font-style: normal;
  font-weight: 700;
  line-height: 26px;
}

@media (min-width: 768px) {
  body .btnd .text1 {
    font-size: 18px;
    margin: -6px -0.1em -7px 0;
  }
}

@media (max-width: 767.99px) {
  body .btnd .text1 {
    font-size: 15px;
    margin: -7px -0.1em -8px 0;
  }
}

body .btnd .icon1 {
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #FFF;
  border-radius: 50%;
  position: absolute;
  margin: auto 0;
}

@media (min-width: 768px) {
  body .btnd .icon1 {
    width: 34px;
    height: 34px;
    inset: auto 13px auto auto;
  }
}

@media (max-width: 767.99px) {
  body .btnd .icon1 {
    width: 28px;
    height: 28px;
    inset: auto 10px auto auto;
  }
}

body .btnd .icon1 svg {
  display: block;
  fill: #6EBB57;
}

@media (min-width: 768px) {
  body .btnd .icon1 svg {
    width: 7px;
    height: 12px;
  }
}

@media (max-width: 767.99px) {
  body .btnd .icon1 svg {
    width: 6px;
    height: 10px;
  }
}

body .btnd.small {
  justify-content: flex-start;
  max-width: 240px;
}

body .btnd.small .text1 {
  text-align: left;
}

body .btnd.middle {
  justify-content: flex-start;
  max-width: 340px;
}

body .btnd.right {
  margin-left: auto;
  margin-right: 0;
}

body .btne {
  position: relative;
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 100px;
  position: relative;
  background: url(../img/common/btna_bg.png.webp) center center/cover repeat;
  min-height: 40px;
  padding: 7px 30px 7px 30px;
  border: 1px solid transparent;
  overflow: hidden;
  transition: all 0.3s;
}

.no-webp body .btne {
  background-image: url(../img/common/btna_bg.png);
}

body .btne .text1 {
  color: #FFF;
  text-align: center;
  font-family: "Noto Sans JP";
  font-style: normal;
  font-weight: 700;
  line-height: 26px;
  position: relative;
  transition: all 0.3s;
}

@media (min-width: 768px) {
  body .btne .text1 {
    font-size: 15px;
    margin: 0 -0.1em 0 0;
  }
}

@media (max-width: 767.99px) {
  body .btne .text1 {
    font-size: 13px;
    margin: 0 -0.1em 0 0;
  }
}

body .btne .icon1 {
  position: absolute;
  inset: 0 15px 0 auto;
  margin: auto 0;
  display: block;
  fill: #FFF;
}

@media (min-width: 768px) {
  body .btne .icon1 {
    width: 7px;
    height: 12px;
  }
}

@media (max-width: 767.99px) {
  body .btne .icon1 {
    width: 5px;
    height: 9px;
  }
}

body .btne::before {
  position: absolute;
  content: "";
  top: 50%;
  right: 20px;
  transform: translateY(-50%);
  width: 7px;
  height: 12px;
  background: url(../svg/icons/arrow_r1_white.svg) no-repeat center / cover;
  transition: all 0.3s;
}

@media (any-hover: hover) {
  body .btne:hover {
    background: #fff;
    border-color: #338751;
  }

  body .btne:hover .text1 {
    color: #338751;
  }

  body .btne:hover::before {
    background: url(../svg/icons/arrow_r1.svg) no-repeat center / cover;
    border: unset;
  }
}

/* .no-touchevents body a.btne,
.no-touchevents body label.btne {
  transition: all 0.3s ease-out;
  cursor: pointer;
}

.no-touchevents body a.btne::before,
.no-touchevents body label.btne::before {
  content: "";
  display: block;
  width: calc(100% - 2px);
  height: calc(100% - 2px);
  border-radius: 100px;
  background: #FFF;
  border: 1px solid #FFB215;
  position: absolute;
  inset: 0 0 0 0;
  margin: auto;
  z-index: 0;
  transition: all 0.3s ease-out;
  pointer-events: none;
  opacity: 0;
}

.no-touchevents body a.btne:hover,
.no-touchevents body label.btne:hover {
  opacity: 1;
}

.no-touchevents body a.btne:hover::before,
.no-touchevents body label.btne:hover::before {
  opacity: 1;
}

.no-touchevents body a.btne:hover .text1,
.no-touchevents body label.btne:hover .text1 {
  color: #FFB215;
}

.no-touchevents body a.btne:hover .icon1,
.no-touchevents body label.btne:hover .icon1 {
  fill: #FFB215;
} */

@media (min-width: 768px) {
  body .large {
    min-height: 60px;
    padding: 7px 50px;
  }
}

@media (max-width: 767.99px) {
  body .large {
    min-height: 50px;
    padding: 7px 35px;
  }
}

body .btne.colorO {
  background: url(../img/common/btne_bg_o.png.webp) center center/cover no-repeat;
}

.no-webp body .btne.colorO {
  background-image: url(../img/common/btne_bg_o.png);
}

.no-touchevents body .btne.colorO::before {
  border: 1px solid #F78640;
}

.no-touchevents body .btne.colorO:hover .text1 {
  color: #F78640;
}

.no-touchevents body .btne.colorO:hover .icon1 {
  fill: #F78640;
}

body .btne.colorY {
  background: url(../img/common/btne_bg_y.png.webp) center center/cover no-repeat;
}

.no-webp body .btne.colorY {
  background-image: url(../img/common/btne_bg_y.png);
}

.no-touchevents body .btne.colorY::before {
  border: 1px solid #6EBB57;
}

.no-touchevents body .btne.colorY:hover .text1 {
  color: #6EBB57;
}

.no-touchevents body .btne.colorY:hover .icon1 {
  fill: #6EBB57;
}

body .btne.colorG {
  background: #6FBC58;
  background: url(../img/common/btne_bg_g.png.webp) center center/cover no-repeat;
}

.no-webp body .btne.colorG {
  background-image: url(../img/common/btne_bg_g.png);
}

.no-touchevents body .btne.colorG::before {
  border: 1px solid #6FBC58;
}

.no-touchevents body .btne.colorG:hover .text1 {
  color: #6FBC58;
}

.no-touchevents body .btne.colorG:hover .icon1 {
  fill: #6FBC58;
}

body .btnf {
  width: 100%;
  max-width: 580px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-flow: column;
  border-radius: 5px;
  position: relative;
  background: url(../img/common/btna_bg.png.webp) center center/cover repeat;
  min-height: 90px;
}

@media (min-width: 768px) {
  body .btnf {
    padding: 8px 40px 8px 20px;
  }
}

@media (max-width: 767.99px) {
  body .btnf {
    padding: 20px 40px 14px 20px;
  }
}

.no-webp body .btnf {
  background-image: url(../img/common/btna_bg.png);
}

body .btnf.textLeft {
  align-items: flex-start;
}

body .btnf .btnSub1 {
  color: #333;
  font-family: "Noto Sans JP";
  font-style: normal;
  font-weight: 700;
}

@media (min-width: 768px) {
  body .btnf .btnSub1 {
    font-size: 15px;
    line-height: 26px;
    margin-bottom: 5px;
  }
}

@media (max-width: 767.99px) {
  body .btnf .btnSub1 {
    font-size: 13px;
    line-height: 20px;
    margin: -5px -0.1em 10px 0;
  }
}

body .btnf .btnText1 {
  color: #FFF;
  font-family: "Noto Sans JP";
  font-style: normal;
  font-weight: 700;
}

@media (min-width: 768px) {
  body .btnf .btnText1 {
    text-align: center;
    font-size: 24px;
    line-height: 26px;
    margin: 0 -0.1em 0 0;
  }
}

@media (max-width: 767.99px) {
  body .btnf .btnText1 {
    font-size: 15px;
    line-height: 26px;
    margin: -7px -0.1em -8px 0;
  }
}

body .btnf .btnIcon1 {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 25px;
  height: 25px;
  background-color: #FFF;
  border-radius: 50%;
  position: absolute;
  inset: auto 11px auto auto;
  margin: auto 0;
}

body .btnf .btnIcon1 svg {
  display: block;
  width: 7px;
  height: 12px;
  fill: #F78640;
}

body .btnf.colorG {
  background: url(../img/common/btnf_bg_g.png) center center/cover repeat;
}

.no-webp body .btnf.colorG {
  background-image: url(../img/common/btnf_bg_g.png);
}

body .btnf.colorG .icon1 svg,
body .btnf.colorG .btnIcon1 svg {
  fill: #6FBC58;
}

body .btnf.colorO {
  background: url(../img/common/btnf_bg_o.png.webp) center center/cover repeat;
}

.no-webp body .btnf.colorO {
  background-image: url(../img/common/btnf_bg_o.png);
}

body .btnf.colorO .icon1 svg,
body .btnf.colorO .btnIcon1 svg {
  fill: #F78640;
}

body .btnf.colorY {
  background: url(../img/common/btnf_bg_y.png.webp) center center/cover repeat;
}

.no-webp body .btnf.colorY {
  background-image: url(../img/common/btnf_bg_y.png);
}

body .btnf.colorY .icon1 svg,
body .btnf.colorY .btnIcon1 svg {
  fill: #6EBB57;
}

@media (min-width: 768px) {
  body .btnf.small .btnSub1 {
    font-size: 12px;
    line-height: 26px;
    margin: -8px -0.1em 3px 0;
  }
}

@media (max-width: 767.99px) {
  body .btnf.small .btnSub1 {
    font-size: 12px;
    line-height: 26px;
    margin: -8px -0.1em 3px 0;
  }
}

@media (min-width: 768px) {
  body .btnf.small .btnText1 {
    text-align: left;
    font-size: 17px;
    line-height: 23px;
    margin: 0 -0.1em 0 0;
  }
}

@media (max-width: 767.99px) {
  body .btnf.small .btnText1 {
    font-size: 17px;
    line-height: 23px;
    margin: -5px -0.1em -6px 0;
  }
}

@media (min-width: 768px) {
  body .btnf.medium .btnSub1 {
    font-size: 15px;
    line-height: 26px;
    margin: -8px -0.1em 3px 0;
  }
}

@media (max-width: 767.99px) {
  body .btnf.medium .btnSub1 {
    font-size: 13px;
    line-height: 26px;
    margin: -8px -0.1em 3px 0;
  }
}

@media (min-width: 768px) {
  body .btnf.medium .btnText1 {
    text-align: left;
    font-size: 20px;
    line-height: 23px;
    margin: 0 -0.1em 0 0;
  }
}

@media (max-width: 767.99px) {
  body .btnf.medium .btnText1 {
    font-size: 17px;
    line-height: 23px;
    margin: -5px -0.1em -6px 0;
  }
}

body .btnForma {
  width: 100%;
  padding: 15px 40px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  border-radius: 100px;
  position: relative;
  background: url(../img/common/btnf_bg_o.png.webp) center center/cover repeat;
  min-height: 50px;
}

.no-webp body .btnForma {
  background-image: url(../img/common/btnf_bg_o.png);
}

body .btnForma .icon1 {
  display: block;
  width: 22px;
  height: 22px;
  fill: #FFF;

  display: flex;
  justify-content: center;
  align-items: center;
}

body .btnForma .text1 {
  color: #FFF;
  text-align: center;
  font-family: "Noto Sans JP";
  font-size: 15px;
  font-style: normal;
  font-weight: 700;
  line-height: 23px;
  margin: 0 -0.1em 0 0;
}

body .btnForma.small {
  padding: 8px 10px;
  min-height: 0;
}

body .btnForma.small .icon1 {
  width: 16px;
  height: 16px;
}

body .btnForma.small .text1 {
  font-size: 12px;
  line-height: 1.4;
}

body .gMenuBody .btnGmenua {
  display: flex;
  align-items: center;
  padding: 11px 32px 11px 13px;
  min-height: 50px;
  border-radius: 5px;
  background: #FFF;
  position: relative;
}

body .gMenuBody .btnGmenua .iconGmenu {
  display: block;
  width: 28px;
  height: 28px;
  margin-right: 4px;
}

body .gMenuBody .btnGmenua .text1 {
  color: #333;
  font-family: "Noto Sans JP";
  font-size: 15px;
  font-style: normal;
  font-weight: 500;
  line-height: normal;
}

body .gMenuBody .btnGmenua .icon_arw {
  width: 7px;
  height: 12px;
  fill: #6EBB57;
  position: absolute;
  inset: 0 13px 0 auto;
  margin: auto 0;
}

body .gMenuBody .btnGmenua.active {
  background-color: #FEDC5E;
}

body .gMenuBody .btnGmenua.active .icon_arw {
  fill: #FFF;
}

body .gMenuBody .btnGmenua .icon_toggle {
  width: 18px;
  height: 18px;
  background-color: #6EBB57;
  border-radius: 50%;
  position: absolute;
  inset: 0 10px 0 auto;
  margin: auto 0;
}

body .gMenuBody .btnGmenua .icon_toggle::before,
body .gMenuBody .btnGmenua .icon_toggle::after {
  content: "";
  display: block;
  width: 8px;
  height: 2px;
  background-color: #FFF;
  position: absolute;
  inset: 0;
  margin: auto;
}

body .gMenuBody .btnGmenua .icon_toggle::after {
  transform: rotate(90deg);
  transition: 0.5s;
}

body .gMenuBody .submenu_open:checked+.btnGmenua .icon_toggle::after {
  transform: rotate(0);
}

body .gMenuBody .submenu_open {
  display: none;
}

body .gMenuBody .submenu_open:checked~.folder {
  max-height: 2000px;
  padding: 0 10px 5px;
}

body .gMenuBody .folder {
  background: #FFF;
  max-height: 0;
  padding: 0 20px;
  border-radius: 0 0 5px 5px;
  overflow: hidden;
  transition: 0.5s;
}

body .gMenuBody .btnGmenub {
  display: flex;
  align-items: center;
  position: relative;
  min-height: 40px;
  padding: 0 20px 0 0;
  border-top: 1px solid #FEDC5E;
}

body .gMenuBody .btnGmenub .text1 {
  color: #333;
  font-family: "Noto Sans JP";
  font-size: 15px;
  font-style: normal;
  font-weight: 500;
  line-height: normal;
  line-height: 26px;
  margin: -5px -0.1em -6px 0;
}

body .gMenuBody .btnGmenub .icon_arw {
  width: 7px;
  height: 12px;
  fill: #6EBB57;
  position: absolute;
  inset: 0 13px 0 auto;
  margin: auto 0;
}

body .gMenuBody .btnGmenub .text2 {
  color: #333;
  font-family: "Noto Sans JP";
  font-size: 14px;
  font-style: normal;
  font-weight: 500;
  line-height: 22px;
  /* 157.143% */
  text-indent: -1em;
  padding-top: 10px;
  padding-bottom: 10px;
  padding-left: 1em;
}

body .gMenuBody .btnGmenub .text2::before {
  content: "・";
  display: inline;
}

body .gMenuBody ul li:first-child .btnGmenub {
  border-top: 0;
  padding-top: 10px;
}

body .gMenuBody ul li.item.active {
  background-color: #FDF1D7;
  transition: all 0.3s ease-out;
}

@media (min-width: 768px) {
  body .gMenuBody ul li.item.active {
    width: 109.2307692308%;
    margin-left: -4.6153846154%;
    padding: 0 10px;
  }
}

@media (max-width: 767.99px) {
  body .gMenuBody ul li.item.active {
    width: 106.6666666667%;
    margin-left: -3.3333333333%;
    padding: 0 10px;
  }
}

body .gMenuBody .gMenuBanner01 {
  width: 100%;
  display: block;
  aspect-ratio: 280 / 80;
  filter: drop-shadow(0 0 15px rgba(0, 0, 0, 0.08));
  margin: 51px auto 0;
}

body .gMenuBody .gMenuBanner02,
body .gMenuBody .gMenuBanner03 {
  width: 100%;
  display: block;
  aspect-ratio: 280/80;
  filter: drop-shadow(0 0 15px rgba(0, 0, 0, 0.08));
  margin: 20px auto 0;
}

@media (max-width: 1179.99px) {
  body .gMenuBody .gMenuBanner01 {
    padding-right: 15px;
  }

  body .gMenuBody .gMenuBanner02,
  body .gMenuBody .gMenuBanner03 {
    padding-right: 15px;
    margin: 15px auto 0;
  }
}

body .btnTouko {
  width: 100%;
  max-width: 400px;
  height: 80px;
  border-radius: 5px;
  border: 2px solid #6EBB57;
  background: #FFF;
  display: flex;
  align-items: center;
  gap: 15px;
  padding: 0 0 0 45px;
  position: relative;
  margin-left: auto;
  margin-right: auto;
}

body .btnTouko .icon1 {
  width: 65px;
  height: 49px;
}

body .btnTouko .text1 {
  color: #333;
  leading-trim: both;
  text-edge: cap;
  font-family: "Zen Maru Gothic";
  font-size: 20px;
  font-style: normal;
  font-weight: 700;
  line-height: 24px;
  /* 120% */
}

body .btnTouko .icon2 {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 22px;
  height: 22px;
  background-color: #6EBB57;
  border-radius: 50%;
  position: absolute;
  inset: auto 9px auto auto;
  margin: auto 0;
}

body .btnTouko .icon2 svg {
  display: block;
  width: 6px;
  height: 10px;
  fill: #FFF;
}

body .areaMap .mapHead1 {
  display: flex;
  align-items: center;
  gap: 14px;
  width: 100%;
  border-bottom: 1px solid #6EBB57;
  position: relative;
  padding-bottom: 12px;
}

body .areaMap .mapHead1 .icon1 {
  width: 21px;
  height: 30px;
}

body .areaMap .mapHead1 .icon1 svg {
  width: 21px;
  height: 30px;
  fill: #6EBB57;
}

body .areaMap .mapHead1 .ttl1 {
  color: #333;
  leading-trim: both;
  text-edge: cap;
  font-family: "Zen Maru Gothic";
  font-size: 18px;
  font-style: normal;
  font-weight: 700;
  line-height: 26px;
  /* 144.444% */
  margin: -4px -0.1em -4px 0;
}

body .areaMap .map {
  margin: 0 auto;
  width: 100%;
}

body .areaMap .map iframe {
  width: 100%;
  aspect-ratio: 335/240;
}

body .areaMap .map .text1 {
  color: #333;
  leading-trim: both;
  text-edge: cap;
  font-family: "Noto Sans JP";
  font-size: 15px;
  font-style: normal;
  font-weight: 400;
  line-height: 28px;
  /* 186.667% */
  margin: -8px -0.1em -9px 0;
}

body .areaMap .map .btn1 {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 180px;
  height: 25px;
  flex-shrink: 0;
  border-radius: 100px;
  background: #6EBB57;
  color: #FFF;
  leading-trim: both;
  text-edge: cap;
  font-family: "Noto Sans JP";
  font-size: 12px;
  font-style: normal;
  font-weight: 700;
  line-height: 25px;
}

body .btnEntrya {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  min-height: 60px;
  padding: 10px 10px 10px 10px;
  border-radius: 10px;
  background: url(../img/recruit/common/btn_entrya_bg.png.webp) center center/cover no-repeat;
}

.no-webp body .btnEntrya {
  background-image: url(../img/recruit/common/btn_entrya_bg.png);
}

body .btnEntrya .tag1 {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  flex-shrink: 0;
  border-radius: 7px;
  background: rgba(255, 255, 255, 0.6);
  color: #333;
  text-align: center;
  leading-trim: both;
  text-edge: cap;
  font-family: "Zen Maru Gothic";
  font-size: 12px;
  font-style: normal;
  font-weight: 700;
  line-height: 13px;
  /* 108.333% */
}

body .btnEntrya .text1 {
  color: #FFF;
  text-align: center;
  leading-trim: both;
  text-edge: cap;
  font-family: "Zen Maru Gothic";
  font-size: 18px;
  font-style: normal;
  font-weight: 700;
  line-height: 30px;
  /* 166.667% */
  margin: -8px -0.1em -9px 0;
}

body .areaEntryb {
  width: 100%;
  min-height: 140px;
  padding: 15px 10px;
  background: url(../img/recruit/common/area_entryb_bg.png.webp) center center/cover no-repeat;
}

.no-webp body .areaEntryb {
  background-image: url(../img/recruit/common/area_entryb_bg.png);
}

body .areaEntryb .areText1 {
  color: #FFF;
  text-align: center;
  leading-trim: both;
  text-edge: cap;
  font-family: "Zen Maru Gothic";
  font-size: 16px;
  font-style: normal;
  font-weight: 700;
  line-height: 30px;
  /* 187.5% */
  margin: -9px -0.1em -10px 0;
}

body .areaEntryb .areText1>.in {
  display: inline-block;
  position: relative;
  text-align: center;
  margin: 0 auto 10px;
}

body .areaEntryb .areText1 .line1_1,
body .areaEntryb .areText1 .line1_2,
body .areaEntryb .areText1 .line2_1,
body .areaEntryb .areText1 .line2_2 {
  display: block;
  width: 1px;
  height: 17px;
  background-color: #FFF;
  position: absolute;
}

body .areaEntryb .areText1 .line1_1 {
  transform: rotate(-20deg);
  inset: auto auto 5px -9px;
}

body .areaEntryb .areText1 .line1_2 {
  transform: rotate(-20deg);
  inset: auto auto 5px -12px;
}

body .areaEntryb .areText1 .line2_1 {
  transform: rotate(20deg);
  inset: auto -9px 5px auto;
}

body .areaEntryb .areText1 .line2_2 {
  transform: rotate(20deg);
  inset: auto -12px 5px auto;
}

body .areaEntryb .btnEntryb {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 15px;
  border-radius: 7px;
  background: #FFF;
  padding: 19px 10px 19px 10px;
}

body .areaEntryb .btnEntryb .tag1 {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 65px;
  height: 47px;
  flex-shrink: 0;
  border-radius: 3px;
  background: #FDDD9C;
  color: #333;
  text-align: center;
  leading-trim: both;
  text-edge: cap;
  font-family: "Zen Maru Gothic";
  font-size: 12px;
  font-style: normal;
  font-weight: 700;
  line-height: 16px;
  /* 133.333% */
}

body .areaEntryb .btnEntryb .textGrp1 .text1 {
  color: #333;
  text-align: center;
  leading-trim: both;
  text-edge: cap;
  font-family: "Zen Maru Gothic";
  font-size: 18px;
  font-style: normal;
  font-weight: 700;
  line-height: 30px;
  /* 166.667% */
  margin: -8px -0.1em -9px 0;
}

body .areaEntryb .btnEntryb .textGrp1 .text2 {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 22px;
  flex-shrink: 0;
  border-radius: 100px;
  background: #6EBB57;
  color: #FFF;
  text-align: center;
  leading-trim: both;
  text-edge: cap;
  font-family: "Noto Sans JP";
  font-size: 13px;
  font-style: normal;
  font-weight: 700;
  line-height: 30px;
  /* 230.769% */
}

.no-touchevents body .areaEntryb .btnEntryb:hover {
  opacity: 0.8;
}

body.closed .btnEntrya {
  background: none;
  pointer-events: none;
}

body.closed .btnEntrya .tag1,
body.closed .btnEntrya .text1 {
  display: none;
}

body.closed .areaEntryb {
  position: relative;
  pointer-events: none;
}

body.closed .areaEntryb .btnEntryb {
  background: none;
}

body.closed .areaEntryb .areText1,
body.closed .areaEntryb .btnEntryb .tag1,
body.closed .areaEntryb .btnEntryb .textGrp1 {
  display: none;
  background: none;
}

body.closed .btnEntrya::after,
body.closed .btnEntryb::after {
  content: "募集停止中";
  display: flex;
  align-items: center;
  justify-content: center;
  width: 220px;
  height: 65px;
  flex-shrink: 0;
  border-radius: 5px;
  background: #FFB215;
  color: #FFF;
  leading-trim: both;
  text-edge: cap;
  font-family: "Zen Maru Gothic";
  font-size: 20px;
  font-style: normal;
  font-weight: 700;
  line-height: 28px;
  /* 140% */
  pointer-events: none;
  position: absolute;
  inset: 0 0 0 0;
  margin: auto;
  z-index: 1;
}

body.closed .btnEntryb::after {
  background: #FFF;
  color: #FFB215;
}

body .btnAreaFixed1 {
  display: flex;
  align-items: center;
  justify-content: center;
  position: fixed;
  z-index: 10;
}

@media (min-width: 768px) {
  body .btnAreaFixed1 {
    flex-direction: column;
    gap: 10px;
    width: 50px;
    inset: auto 0 50px auto;
  }
}

@media (max-width: 767.99px) {
  body .btnAreaFixed1 {
    gap: 5px;
    width: 100%;
    height: 35px;
    inset: auto 0 0 0;
    margin: 0 auto;
  }
}

body .btnAccepta {
  display: flex;
  align-items: center;
  justify-content: center;
  background: #6FBC58;
}

@media (min-width: 768px) {
  body .btnAccepta {
    flex-direction: column;
    gap: 8px;
    border-radius: 10px 0 0 10px;
    width: 50px;
    height: 210px;
  }
}

@media (max-width: 767.99px) {
  body .btnAccepta {
    border-radius: 10px 10px 0 0;
    gap: 5px;
    width: 100%;
    max-width: 175px;
    height: 35px;
  }
}

body .btnAccepta .icon1 {
  width: 16px;
  height: 18px;
  fill: #477739;
}

body .btnAccepta .text1 {
  color: #FFF;
  text-align: center;
  font-family: "Zen Maru Gothic";
  font-size: 15px;
  font-style: normal;
  font-weight: 700;
  line-height: 16px;
  /* 106.667% */
}

@media (min-width: 768px) {
  body .btnAccepta .text1 {
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
  }
}

body .btnRecruita {
  display: flex;
  align-items: center;
  justify-content: center;
  background: #FFB215;
}

@media (min-width: 768px) {
  body .btnRecruita {
    flex-direction: column;
    gap: 10px;
    border-radius: 10px 0 0 10px;
    width: 50px;
    height: 140px;
  }
}

@media (max-width: 767.99px) {
  body .btnRecruita {
    border-radius: 10px 10px 0 0;
    gap: 8px;
    width: 100%;
    max-width: 175px;
    height: 35px;
  }
}

body .btnRecruita .icon1 {
  width: 16px;
  height: 16px;
  fill: #CF7500;
}

body .btnRecruita .text1 {
  color: #FFF;
  text-align: center;
  font-family: "Zen Maru Gothic";
  font-size: 15px;
  font-style: normal;
  font-weight: 700;
  line-height: 16px;
  /* 106.667% */
}

@media (min-width: 768px) {
  body .btnRecruita .text1 {
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
  }
}

body .btnTela {
  width: 430px;
  height: 90px;
  border-radius: 10px;
  border: 2px solid #6EBB57;
  background: #FFF;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 9px;
}

body .btnTela .btnTextGrp1 {
  text-align: center;
}

body .btnTela .btnTextGrp1 .btnText1 {
  display: flex;
  color: #FFB215;
  font-family: "Noto Sans JP";
  font-size: 15px;
  font-style: normal;
  font-weight: 700;
  line-height: 20px;
  /* 133.333% */
}

@media (max-width: 374.99px) {
  body .btnTela .btnTextGrp1 .btnText1 {
    font-size: 13px;
  }
}

body .btnTela .btnTextGrp2 {
  display: flex;
  flex-direction: column;
  gap: 10px;
  padding-left: 10px;
  border-left: 1px solid #FFB215;
}

body .btnTela .btnTextGrp2 .btnText1 {
  display: flex;
  align-items: center;
  gap: 3px;
}

body .btnTela .btnTextGrp2 .btnText1 .btnIcon1 {
  box-sizing: content-box;
  width: 14px;
  height: 18px;
  padding-top: 2px;
  fill: #333;
}

body .btnTela .btnTextGrp2 .btnText1 .btnText1_1 {
  color: #333;
  font-family: "Zen Maru Gothic";
  font-size: 26px;
  font-style: normal;
  font-weight: 700;
  line-height: 26px;
  /* 100% */
  letter-spacing: 2.08px;
  margin: -4px -0.1em -4px 0;
}

@media (max-width: 374.99px) {
  body .btnTela .btnTextGrp2 .btnText1 .btnText1_1 {
    font-size: 20px;
    letter-spacing: 1.6px;
  }
}

body .btnTela .btnTextGrp2 .btnText2 {
  color: #333;
  font-family: "Noto Sans JP";
  font-size: 14px;
  font-style: normal;
  font-weight: 500;
  line-height: 22px;
  /* 157.143% */
  margin: -6px -0.1em -6px 0;
}

@media (min-width: 768px) {
  body .btnTela.medium {
    gap: 24px;
  }
}

@media (min-width: 768px) {
  body .btnTela.medium .btnTextGrp1 .btnText1 {
    font-size: 20px;
  }
}

@media (max-width: 374.99px) {
  body .btnTela.medium .btnTextGrp1 .btnText1 {
    font-size: 13px;
  }
}

@media (min-width: 768px) {
  body .btnTela.medium .btnTextGrp2 {
    padding-left: 20px;
  }
}

body .btnDla {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  width: 230px;
  height: 40px;
  border-radius: 100px;
  background: #6FBC58;
}

body .btnDla .btnText1 {
  color: #FFF;
  font-family: "Noto Sans JP";
  font-size: 15px;
  font-style: normal;
  font-weight: 700;
  line-height: 23px;
  /* 153.333% */
}

body .btnDla .btnIcon1 {
  width: 13px;
  height: 15.5px;
  stroke-width: 2px;
  stroke: #FFF;
  fill: transparent;
}

body .linka {
  display: flex;
  align-items: center;
  gap: 8px;
}

body .linka .text1 {
  color: #333;
  font-family: "Noto Sans JP";
  font-size: 18px;
  font-style: normal;
  font-weight: 500;
  line-height: 34px;
  /* 188.889% */
}

body .linka .icon1 {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 18px;
  height: 18px;
  border-radius: 50%;
  background: #555;
  flex-shrink: 0;
}

body .linka .icon1 svg {
  width: 5px;
  height: 8px;
  fill: #FFF;
}

body .linka.big {
  gap: 35px;
}

body .linka.big .text1 {
  font-size: 20px;
}

body .linka.big .icon1 {
  width: 40px;
  height: 40px;
}

body .linka.big .icon1 svg {
  width: 11px;
  height: 18px;
}

body .linka.colorO .icon1 {
  background: #F78640;
}

body .linka.colorY .icon1 {
  background: #6EBB57;
}

body .linka.colorG .icon1 {
  background: #6FBC58;
}

body .linkb {
  text-decoration: underline;
  color: #F78640;
}

body .boxa {
  border-radius: 5px;
  background: #FFF;
  box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.1);
  padding: 40px 20px 40px 20px;
  position: relative;
}

body .boxa.colorY {
  background: #FFFBDB;
}

body .boxb {
  border-radius: 10px;
  background: rgba(110, 187, 87, 0.15);
}

body .boxb .boxHead {
  border-radius: 10px 10px 0 0;
  background: #6FBC58;
  padding: 12px;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 20px;
}

body .boxb .boxHead .ttl1 {
  color: #FFF;
  font-family: "Zen Maru Gothic";
  font-size: 18px;
  font-style: normal;
  font-weight: 700;
  line-height: 26px;
  /* 144.444% */
}

body .boxb .boxBody {
  padding: 20px 20px 40px;
}

body .boxFacility {
  border-radius: 5px;
  background: #FFF;
  box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.1);
  padding: 40px 15px 40px 20px;
  position: relative;
}

body .boxFacility .ttl1 {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-flow: column;
  gap: 15px;
}

body .boxFacility .ttl1 .ttl {
  color: #333;
  leading-trim: both;
  text-edge: cap;
  font-family: "Zen Maru Gothic";
  font-size: 20px;
  font-style: normal;
  font-weight: 700;
  line-height: 22px;
  /* 110% */
  text-align: center;
  margin: -4px -0.1em -4px 0;
}

body .boxFacility .ttl1 .sub {
  color: #333;
  leading-trim: both;
  text-edge: cap;
  font-family: "Zen Maru Gothic";
  font-size: 16px;
  font-style: normal;
  font-weight: 700;
  line-height: 22px;
  /* 137.5% */
  text-align: center;
  margin: -5px -0.1em -6px 0;
}

body .boxFacility .pic_r {
  border-radius: 100px 5px 5px 5px;
  overflow: hidden;
}

body .boxFacility .pic_l {
  border-radius: 5px 100px 5px 5px;
  overflow: hidden;
}

body .boxFacility .illust1 {
  position: absolute;
}

body .boxFacility .txt1 {
  color: #333;
  leading-trim: both;
  text-edge: cap;
  font-family: "Noto Sans JP";
  font-size: 15px;
  font-style: normal;
  font-weight: 400;
  line-height: 26px;
  /* 173.333% */
  margin: -7px -0.1em -8px 0;
}

body .facility1 .illust1 {
  width: 63px;
  height: 80px;
  inset: 47px auto auto 36px;
}

body .facility2 .illust1 {
  width: 57px;
  height: 79px;
  inset: 80px 18px auto auto;
}

body .facility3 .illust1 {
  width: 79px;
  height: 60px;
  inset: 74px auto auto 20px;
}

body .facility4 .illust1 {
  width: 64px;
  height: 65px;
  inset: 45px 34px auto auto;
}

body .boxFacilityb {
  border-radius: 5px;
  overflow: hidden;
  background: #FFF;
  box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.15);
}

body .boxFacilityb .ttl1 {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-flow: wrap;
  background: #6FBC58;
}

@media (min-width: 768px) {
  body .boxFacilityb .ttl1 {
    gap: 9px;
    padding: 13px 20px 10px;
    min-height: 40px;
  }
}

@media (max-width: 767.99px) {
  body .boxFacilityb .ttl1 {
    flex-flow: column;
    gap: 10px;
    padding: 14px 20px 12px;
  }
}

body .boxFacilityb .ttl1 .ttl1_1 {
  color: #FFF;
  font-family: "Zen Maru Gothic";
  font-style: normal;
  font-weight: 700;
  letter-spacing: 0.1em;
  line-height: 38px;
}

@media (min-width: 768px) {
  body .boxFacilityb .ttl1 .ttl1_1 {
    font-size: 24px;
    margin: -10px -0.1em -11px 0;
  }
}

@media (max-width: 767.99px) {
  body .boxFacilityb .ttl1 .ttl1_1 {
    font-size: 20px;
    margin: -12px -0.1em -12px 0;
  }
}

body .boxFacilityb .ttl1 .ttl1_2 {
  color: #FFF;
  font-family: "Zen Maru Gothic";
  font-style: normal;
  font-weight: 700;
  line-height: 38px;
}

@media (min-width: 768px) {
  body .boxFacilityb .ttl1 .ttl1_2 {
    font-size: 18px;
    margin: -10px -0.1em -11px 0;
  }
}

@media (max-width: 767.99px) {
  body .boxFacilityb .ttl1 .ttl1_2 {
    font-size: 14px;
    margin: -12px -0.1em -12px 0;
  }
}

body .boxFacilityb .ttl1 .ttl1_3 {
  color: #FFF;
  font-family: "Zen Maru Gothic";
  font-style: normal;
  font-weight: 700;
  line-height: 38px;
}

@media (min-width: 768px) {
  body .boxFacilityb .ttl1 .ttl1_3 {
    font-size: 18px;
    margin: -10px -0.1em -11px 0;
  }
}

@media (max-width: 767.99px) {
  body .boxFacilityb .ttl1 .ttl1_3 {
    font-size: 18px;
    margin: -12px -0.1em -12px 0;
  }
}

body .boxFacilityb .body1 {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 20px;
}

@media (min-width: 768px) {
  body .boxFacilityb .body1 {
    padding: 20px 25px 20px 20px;
  }
}

@media (max-width: 767.99px) {
  body .boxFacilityb .body1 {
    flex-flow: column;
    padding: 20px;
  }
}

body .boxFacilityb .body1 .pic01 {
  max-width: 240px;
  border-radius: 5px;
  overflow: hidden;
  flex-shrink: 0;
}

body .boxFacilityb .body1 .text1 {
  color: #333;
  font-family: "Noto Sans JP";
  font-size: 15px;
  font-style: normal;
  font-weight: 400;
  line-height: 28px;
  margin: -8px -0.1em -9px 0;
}

body .boxFacilitybGrp {
  max-width: 630px;
  margin: 0 auto;
  border-radius: 5px;
  position: relative;
  display: flex;
  flex-flow: column;
  background: url(../img/common/bg_facilityb.png.webp) center center/630px 620px repeat;
}

.no-webp body .boxFacilitybGrp {
  background-image: url(../img/common/bg_facilityb.png);
}

@media (min-width: 768px) {
  body .boxFacilitybGrp {
    gap: 25px;
    padding: 86px 50px 50px;
  }
}

@media (max-width: 767.99px) {
  body .boxFacilitybGrp {
    gap: 20px;
    padding: 64px 20px 20px;
  }
}

body .boxFacilitybGrp .grpHead1 {
  display: flex;
  flex-flow: column;
  align-items: center;
  justify-content: center;
  gap: 20px;
  color: #6FBC58;
  font-family: "Zen Maru Gothic";
  font-style: normal;
  font-weight: 700;
  line-height: 38px;
  position: absolute;
}

@media (min-width: 768px) {
  body .boxFacilitybGrp .grpHead1 {
    inset: -7px 0 auto 0;
  }
}

@media (max-width: 767.99px) {
  body .boxFacilitybGrp .grpHead1 {
    inset: -5px 0 auto 0;
  }
}

@media (min-width: 768px) {
  body .boxFacilitybGrp .grpHead1 .head1 {
    font-size: 20px;
    margin: -12px -0.1em -12px 0;
  }
}

@media (max-width: 767.99px) {
  body .boxFacilitybGrp .grpHead1 .head1 {
    font-size: 16px;
    margin: -13px -0.1em -14px 0;
  }
}

@media (min-width: 768px) {
  body .boxFacilitybGrp .grpHead1 .head2 {
    font-size: 40px;
    margin: -5px -0.1em -6px 0;
  }
}

@media (max-width: 767.99px) {
  body .boxFacilitybGrp .grpHead1 .head2 {
    font-size: 26px;
    margin: -10px -0.1em -10px 0;
  }
}

body .boxFacilitybGrp.colorO .grpHead1 {
  color: #6EBB57;
}

body .boxFacilitybGrp.colorO .boxFacilityb .ttl1 {
  background: #6EBB57;
}

body .boxFacilitybGrp.colorG .grpHead1 {
  color: #6FBC58;
}

body .boxFacilitybGrp.colorG .boxFacilityb .ttl1 {
  background: #6FBC58;
}

body .areaFacilityb {
  display: flex;
  justify-content: center;
  flex-flow: wrap;
  gap: 35px 40px;
  container-type: inline-size;
}

@container (1100px <=width) {
  body .areaFacilityb .boxFacilitybGrp {
    width: calc((100% - 40px) / 2);
  }
}

@container (width < 1100px) {
  body .areaFacilityb .boxFacilitybGrp {
    width: 100%;
  }
}

body .areaBoxFacilityc {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  flex-wrap: wrap;
  gap: 30px;
  container-type: inline-size;
}

@container (1000px <=width) {
  body .areaBoxFacilityc .boxFacilityc {
    width: calc((100% - 60px) / 3);
  }
}

@container (width < 1000px) {
  body .areaBoxFacilityc .boxFacilityc {
    width: calc((100% - 30px) / 2);
  }
}

@container (width < 800px) {
  body .areaBoxFacilityc .boxFacilityc {
    width: 100%;
    margin: 0 auto;
  }
}

body .boxFacilityc {
  max-width: 500px;
  min-height: 500px;
  border-radius: 5px;
  overflow: hidden;
  background: url(../img/common/bg_facilityb.png.webp) center center/630px 620px repeat;
}

.no-webp body .boxFacilityc {
  background-image: url(../img/common/bg_facilityb.png);
}

body .boxFacilityc .ttl1 {
  display: flex;
  align-items: center;
  justify-content: center;
  background: #CCC;
}

@media (min-width: 768px) {
  body .boxFacilityc .ttl1 {
    min-height: 70px;
    padding: 11px 10px;
  }
}

@media (max-width: 767.99px) {
  body .boxFacilityc .ttl1 {
    min-height: 70px;
    padding: 11px 10px;
  }
}

body .boxFacilityc .ttl1 .ttl1_1 {
  color: #FFF;
  text-align: center;
  font-family: "Zen Maru Gothic";
  font-weight: 700;
  line-height: 24px;
}

@media (min-width: 768px) {
  body .boxFacilityc .ttl1 .ttl1_1 {
    font-size: 22px;
  }
}

@media (max-width: 767.99px) {
  body .boxFacilityc .ttl1 .ttl1_1 {
    font-size: 20px;
  }
}

@media (max-width: 374.99px) {
  body .boxFacilityc .ttl1 .ttl1_1 {
    font-size: 18px;
  }
}

body .boxFacilityc .body1 {
  position: relative;
}

@media (min-width: 768px) {
  body .boxFacilityc .body1 {
    padding: 20px 20px 44px;
  }
}

@media (max-width: 767.99px) {
  body .boxFacilityc .body1 {
    padding: 20px 20px 26px;
  }
}

body .boxFacilityc .body1 .pic01 {
  max-width: 300px;
  border-radius: 5px;
  overflow: hidden;
  margin: 0 auto 20px;
}

body .boxFacilityc .body1 .pic01 img {
  transition: all 0.3s ease-out;
}

body .boxFacilityc .body1 .boxText1 {
  color: #333;
  font-family: "Noto Sans JP";
  font-size: 15px;
  font-style: normal;
  font-weight: 400;
  line-height: 26px;
  margin: -7px -0.1em -8px 0;
}

body .boxFacilityc .body1 .btne {
  margin: 20px auto 0;
}

.no-touchevents body .boxFacilityc .body1 .pic01:has(~ .btne:hover) img {
  cursor: pointer;
  transform: scale(1.1);
}

body .boxFacilityc.colorY .ttl1 {
  background: #FFB215;
}

body .boxFacilityc.colorO .ttl1 {
  background: #F78640;
}

body .boxFacilityc.colorG .ttl1 {
  background: #6FBC58;
}

body .boxService {
  border-radius: 5px;
  border: 2px solid #FFD886;
  background: rgba(247, 184, 54, 0.1);
  padding: 30px 20px 65px;
  overflow: hidden;
  position: relative;
}

body .boxService .ttl1 {
  color: #333;
  leading-trim: both;
  text-edge: cap;
  font-family: "Zen Maru Gothic";
  font-size: 18px;
  font-style: normal;
  font-weight: 700;
  line-height: 30px;
  /* 166.667% */
  text-align: center;
  margin: -8px -0.1em -9px 0;
}

body .boxService .pic1 {
  border-radius: 5px;
  overflow: hidden;
}

body .boxService .txt1 {
  color: #333;
  leading-trim: both;
  text-edge: cap;
  font-family: "Noto Sans JP";
  font-size: 15px;
  font-style: normal;
  font-weight: 400;
  line-height: 26px;
  /* 173.333% */
  letter-spacing: 1.5px;
  margin: -7px -0.1em -8px 0;
}

body .boxService .link1 {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 40px;
  background: #FFD886;
  position: absolute;
  inset: auto 0 0;
  margin: 0 auto;
}

body .boxService .link1 .text1 {
  color: #333;
  leading-trim: both;
  text-edge: cap;
  font-family: "Noto Sans JP";
  font-size: 13px;
  font-style: normal;
  font-weight: 700;
  line-height: 28px;
  /* 215.385% */
}

body .boxService .link1 .icon1 {
  display: block;
  width: 6px;
  height: 10px;
  fill: #333;
  position: absolute;
  inset: 0 20px 0 auto;
  margin: auto 0;
}

body .boxServiceb {
  border-radius: 5px;
  overflow: hidden;
  background: url(../img/common/bg_serviceb.png.webp) center center/2108px 1205px repeat;
}

.no-webp body .boxServiceb {
  background-image: url(../img/common/bg_serviceb.png);
}

@media (min-width: 768px) {
  body .boxServiceb {
    max-width: 380px;
    padding: 20px 20xp 26px;
  }
}

body .boxServiceb .ttl1 {
  background: #D1E47D;
  text-align: center;
}

@media (min-width: 768px) {
  body .boxServiceb .ttl1 {
    min-height: 50px;
    padding: 9px 10px;
  }
}

@media (max-width: 767.99px) {
  body .boxServiceb .ttl1 {
    min-height: 40px;
    padding: 5px 10px 6px;
  }
}

body .boxServiceb .ttl1 .ttl1_1 {
  color: #333;
  font-family: "Zen Maru Gothic";
  font-style: normal;
  font-weight: 700;
  line-height: 26px;
}

@media (min-width: 768px) {
  body .boxServiceb .ttl1 .ttl1_1 {
    font-size: 22px;
    margin: -3px -0.1em -3px 0;
  }
}

@media (max-width: 767.99px) {
  body .boxServiceb .ttl1 .ttl1_1 {
    font-size: 20px;
    margin: -1px -0.1em -2px 0;
  }
}

body .boxServiceb .body1 {
  position: relative;
}

@media (min-width: 768px) {
  body .boxServiceb .body1 {
    padding: 20px 20px 44px;
  }
}

@media (max-width: 767.99px) {
  body .boxServiceb .body1 {
    padding: 20px 20px 26px;
  }
}

body .boxServiceb .body1 .tag1 {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 13px 17px 13px 14px;
  border-radius: 5px 0;
  background: #6FBC58;
  color: #FFF;
  font-family: "Noto Sans JP";
  font-size: 18px;
  font-style: normal;
  font-weight: 700;
  line-height: 18px;
  position: absolute;
  inset: 20px auto auto 20px;
  z-index: 1;
}

body .boxServiceb .body1 .pic01 {
  border-radius: 5px;
  overflow: hidden;
  margin: 0 auto 20px;
}

body .boxServiceb .body1 .pic01 img {
  transition: all 0.3s ease-out;
}

body .boxServiceb .body1 .boxText1 {
  color: #333;
  font-family: "Noto Sans JP";
  font-size: 15px;
  font-style: normal;
  font-weight: 400;
  line-height: 26px;
  margin: -7px -0.1em -8px 0;
}

body .boxServiceb .body1 .btne {
  margin: 20px auto 0;
}

body .boxServiceb .body1 .telGrp {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: 10px 0;
  margin: 15px auto 0;
}

body .boxServiceb .body1 .telGrp .tel1 {
  display: block;
  width: 14px;
  height: 18px;
  flex-shrink: 0;
  margin-right: 5px;
}

body .boxServiceb .body1 .telGrp .tel2 {
  color: #333;
  font-family: "Zen Maru Gothic";
  font-size: 26px;
  font-style: normal;
  font-weight: 700;
  line-height: 26px;
  /* 100% */
  letter-spacing: 2.08px;
  margin: -4px -0.1em -4px 0;
  white-space: nowrap;
}

body .boxServiceb .body1 .telGrp .tel3 {
  color: #333;
  font-family: "Noto Sans JP";
  font-size: 14px;
  font-style: normal;
  font-weight: 500;
  line-height: 22px;
  /* 157.143% */
  margin: -6px -0.1em -6px 7px;
  white-space: nowrap;
}

.no-touchevents body .boxServiceb .body1 .pic01:has(~ a.btne:hover) img,
.no-touchevents body .boxServiceb .body1 .pic01:has(~ label.btne:hover) img {
  cursor: pointer;
  transform: scale(1.1);
}

body .boxServiceb.inMap .body1 {
  padding: 20px 20px 26px;
}

body .boxServiceb.inMap .body1 .btne {
  width: 268px;
}

body .boxServiceb.inMap .body1 .telGrp {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 11px;
  margin: 15px auto 0;
}

body .boxServiceb.inMap .body1 .telGrp .tel1_2 {
  display: flex;
  align-items: center;
  justify-content: center;
}

body .boxServiceb.-aboutgroup {
  background: #fff;
}

body .boxServiceb.-aboutgroup .ttl1 {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
}

body .boxServiceb.-aboutgroup .ttl1 .ttl1_1 {
  color: #fff;
}

body .boxServiceb.-aboutgroup:nth-child(1) .ttl1 {
  background: #F78640;
}

body .boxServiceb.-aboutgroup:nth-child(2) .ttl1 {
  background: #FFB215;
}

body .boxServiceb.-aboutgroup:nth-child(3) .ttl1 {
  background: #6FBC58;
}

body .boxServiceb.-aboutgroup:nth-child(1) .body1 .btne {
  background: url(../img/common/btna_bg_red.png.webp) center center/cover repeat;
}

body .boxServiceb.-aboutgroup:nth-child(2) .body1 .btne {
  background: url(../img/common/btna_bg_orange.png.webp) center center/cover repeat;
}

body .boxServiceb.-aboutgroup:nth-child(3) .body1 .btne {
  background: url(../img/common/btna_bg_green.png.webp) center center/cover repeat;
}

@media (any-hover: hover) {

  body .boxServiceb.-aboutgroup:nth-child(1) .body1 .btne:hover,
  body .boxServiceb.-aboutgroup:nth-child(2) .body1 .btne:hover,
  body .boxServiceb.-aboutgroup:nth-child(3) .body1 .btne:hover {
    background: #fff;
  }

  body .boxServiceb.-aboutgroup:nth-child(1) .body1 .btne:hover {
    border-color: #F78640;
  }

  body .boxServiceb.-aboutgroup:nth-child(1) .body1 .btne:hover .text1 {
    color: #F78640;
  }

  body .boxServiceb.-aboutgroup:nth-child(1) .body1 .btne:hover::before {
    background: url(../svg/icons/arrow_r1_orange.svg) no-repeat center / cover;
  }

  body .boxServiceb.-aboutgroup:nth-child(2) .body1 .btne:hover {
    border-color: #FFB215;
  }

  body .boxServiceb.-aboutgroup:nth-child(2) .body1 .btne:hover .text1 {
    color: #FFB215;
  }

  body .boxServiceb.-aboutgroup:nth-child(2) .body1 .btne:hover::before {
    background: url(../svg/icons/arrow_r1_yellow.svg) no-repeat center / cover;
  }
}

@media (min-width: 768px) {
  body .boxServiceb.-aboutgroup .ttl1 {
    min-height: 70px;
  }

  body .boxServiceb.-aboutgroup:nth-child(1) .ttl1 .ttl1_1 {
    font-size: 18px;
  }

  body .boxServiceb.-aboutgroup:nth-child(2) .ttl1 .ttl1_1 {
    font-size: 20px;
  }

  body .boxServiceb.-aboutgroup:nth-child(3) .ttl1 .ttl1_1 {
    font-size: 22px;
  }

  body .boxServiceb.-aboutgroup .body1 {
    padding: 20px 20px 25px;
  }
}

body .areaServiceb {
  display: flex;
  flex-flow: wrap;
  max-width: 100%;
}

@media (min-width: 768px) {
  body .areaServiceb {
    gap: 60px 30px;
  }
}

@media (max-width: 767.99px) {
  body .areaServiceb {
    gap: 30px;
  }
}

body .boxServicec {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  justify-content: center;
  gap: 30px;
  container-type: inline-size;
}

body .boxServicec .pic01 {
  border-radius: 100px 5px 5px 5px;
  overflow: hidden;
}

body .boxServicec .pic01 img {
  transition: all 0.3s ease-out;
}

body .boxServicec .body1 {
  display: flex;
  flex-flow: column;
}

@media (min-width: 768px) {
  body .boxServicec .body1 {
    gap: 40px;
  }
}

@media (max-width: 767.99px) {
  body .boxServicec .body1 {
    gap: 30px;
  }
}

body .boxServicec .body1 .ttl1 {
  color: #333;
  font-family: "Zen Maru Gothic";
  font-style: normal;
  font-weight: 700;
}

@media (min-width: 768px) {
  body .boxServicec .body1 .ttl1 {
    font-size: 22px;
    line-height: 32px;
    margin: -8px -0.1em -9px 0;
  }
}

@media (max-width: 767.99px) {
  body .boxServicec .body1 .ttl1 {
    font-size: 20px;
    line-height: 30px;
    margin: -7px -0.1em -7px 0;
  }
}

body .boxServicec .body1 .boxText1 {
  color: #333;
  font-family: "Noto Sans JP";
  font-size: 15px;
  font-style: normal;
  font-weight: 400;
}

@media (min-width: 768px) {
  body .boxServicec .body1 .boxText1 {
    line-height: 32px;
    margin: -10px -0.1em -11px 0;
  }
}

@media (max-width: 767.99px) {
  body .boxServicec .body1 .boxText1 {
    line-height: 28px;
    margin: -7px -0.1em -7px 0;
  }
}

body .boxServicec .body1 .boxText1.colorO em {
  color: #F78640;
  font-weight: 700;
}

body .boxServicec .body1 .boxText1.colorY em {
  color: #F3A300;
  font-weight: 700;
}

body .boxServicec .body1 .boxText1.colorG em {
  color: #6EBB57;
  font-weight: 700;
}

body .boxServicec .body1 .btne {
  max-width: 360px;
}

@container (600px <=width) {
  body .boxServicec .pic01 {
    width: 40%;
    max-width: 400px;
  }

  body .boxServicec .body1 {
    width: 55%;
  }
}

@container (width < 600px) {
  body .boxServicec .pic01 {
    width: 100%;
    max-width: 400px;
  }

  body .boxServicec .body1 {
    width: 100%;
    max-width: 400px;
  }

  body .boxServicec .body1 .btne {
    margin: 0 auto;
  }
}

.no-touchevents body .boxServicec .pic01:has(+ .body1 .btne:hover) img {
  cursor: pointer;
  transform: scale(1.1);
}

body .areaServicec .boxServicec+.boxServicec {
  border-top: 1px solid #C2C2C2;
}

@media (min-width: 768px) {
  body .areaServicec .boxServicec+.boxServicec {
    margin-top: 40px;
    padding-top: 40px;
  }
}

@media (max-width: 767.99px) {
  body .areaServicec .boxServicec+.boxServicec {
    margin-top: 30px;
    padding-top: 30px;
  }
}

body .boxForRelated {
  display: flex;
  position: relative;
  padding: 40px 0;
}

@media (min-width: 768px) {
  body .boxForRelated {
    gap: 40px;
    align-items: center;
  }
}

@media (max-width: 767.99px) {
  body .boxForRelated {
    flex-flow: column;
    gap: 30px;
    padding: 0 6% 40px;
  }
}

body .boxForRelated::before {
  content: "";
  display: block;
  border-radius: 5px;
  background: #FFF9CB;
  position: absolute;
  z-index: -1;
}

@media (min-width: 768px) {
  body .boxForRelated::before {
    width: 67.5%;
    height: 100%;
    inset: 0 0 0 auto;
  }
}

@media (max-width: 767.99px) {
  body .boxForRelated::before {
    width: 100%;
    height: calc(100% - 100px);
    inset: auto 0 0 0;
  }
}

body .boxForRelated .pic01 {
  border-radius: 5px;
  overflow: hidden;
}

@media (min-width: 768px) {
  body .boxForRelated .pic01 {
    max-width: 560px;
    width: 46.6666666667%;
  }
}

body .boxForRelated .pic01 img {
  transition: all 0.3s ease-out;
}

body .boxForRelated .body1 {
  display: flex;
  flex-flow: column;
}

@media (min-width: 768px) {
  body .boxForRelated .body1 {
    gap: 40px;
    max-width: 560px;
    width: 46.6666666667%;
    padding: 0 30px 0 0;
  }
}

@media (max-width: 767.99px) {
  body .boxForRelated .body1 {
    gap: 30px;
  }
}

body .boxForRelated .body1 .ttl1 {
  color: #333;
  font-family: "Zen Maru Gothic";
  font-style: normal;
  font-weight: 700;
}

@media (min-width: 768px) {
  body .boxForRelated .body1 .ttl1 {
    font-size: 28px;
    line-height: 38px;
    margin: -9px -0.1em -9px 0;
  }
}

@media (max-width: 767.99px) {
  body .boxForRelated .body1 .ttl1 {
    font-size: 20px;
    line-height: 38px;
    margin: -12px -0.1em -12px 0;
  }
}

body .boxForRelated .body1 .boxText1 {
  color: #333;
  font-family: "Noto Sans JP";
  font-size: 15px;
  font-style: normal;
  font-weight: 400;
  line-height: 30px;
  margin: -9px -0.1em -10px 0;
}

body .boxForRelated .body1 .btne {
  position: relative;
  z-index: 2;
}

@media (max-width: 767.99px) {
  body .boxForRelated .body1 .btne {
    max-width: 315px;
    height: 35px;
    margin: 0 auto;
  }
}

.no-touchevents body .boxForRelated .pic01:has(+ .body1 .btne:hover) img {
  cursor: pointer;
  transform: scale(1.1);
}

@media (min-width: 768px) {
  body .boxForRelated.reverce {
    flex-direction: row-reverse;
  }
}

@media (min-width: 768px) {
  body .boxForRelated.reverce::before {
    inset: 0 auto 0 0;
  }
}

@media (min-width: 768px) {
  body .boxForRelated.reverce .body1 {
    padding: 0 0 0 30px;
  }
}

@media (min-width: 768px) {
  body .boxForRelated.reverce .body1 .ttl1 {
    padding-right: 70px;
  }
}

@media (min-width: 768px) {
  body .boxForRelated.no {
    padding: 20px 0;
  }
}

body .boxForRelated.no::before {
  background: rgba(157, 203, 100, 0.2);
}

body .boxForRelated.no .no1 {
  color: #9DCB64;
  font-family: "Century Gothic";
  font-style: normal;
  font-weight: 700;
  line-height: normal;
}

@media (min-width: 768px) {
  body .boxForRelated.no .no1 {
    position: absolute;
    inset: 20px 20px auto auto;
    font-size: 64px;
  }
}

@media (max-width: 767.99px) {
  body .boxForRelated.no .no1 {
    font-size: 36px;
    margin: -50px 0 -20px auto;
  }
}

@media (min-width: 768px) {
  body .boxForRelated.no.reverce .no1 {
    inset: 20px auto auto 44.1666666667%;
  }
}

body .areaBoxSupporta {
  display: flex;
  flex-wrap: wrap;
  gap: 50px 30px;
  container-type: inline-size;
}

@media (min-width: 768px) {
  body .areaBoxSupporta {
    margin-top: 17px;
  }
}

body .areaBoxSupporta .boxSupporta {
  max-width: 570px;
}

@container (900px <=width) {
  body .areaBoxSupporta .boxSupporta {
    width: 47.5%;
  }

  body .areaBoxSupporta .textGrp1 {
    width: 47.5%;
  }

  body .areaBoxSupporta .textGrp2 {
    width: 100%;
  }
}

@container (width < 900px) {
  body .areaBoxSupporta .boxSupporta {
    width: 100%;
  }

  body .areaBoxSupporta .textGrp1 {
    width: 100%;
  }

  body .areaBoxSupporta .textGrp2 {
    width: 100%;
  }
}

body .boxSupporta {
  max-width: 570px;
  background-color: #FFF9CB;
  position: relative;
}

body .boxSupporta.-backgreen {
  background: #EDF3EB;
}

@media (min-width: 768px) {
  body .boxSupporta {
    padding: 50px 40px 38px;
  }
}

@media (max-width: 767.99px) {
  body .boxSupporta {
    margin-top: 20px;
    padding: 50px 10px 38px;
  }
}

body .boxSupporta .tag2 {
  display: inline-block;
  text-align: center;
  width: 77.1929824561%;
  border-radius: 100px;
  background: #6FBC58;
  padding: 4px 10px 3px;
  position: absolute;
  inset: -17px 0 auto;
  margin: 0 auto;
}

body .boxSupporta .tag2 .text1 {
  color: #FFF;
  text-align: center;
  font-family: "Noto Sans JP";
  font-size: 15px;
  font-style: normal;
  font-weight: 700;
  line-height: 26px;
  /* 173.333% */
  margin: -8px 0 -9px 0;
}

body .boxSupporta .tag2::after {
  content: "";
  display: block;
  width: 14px;
  height: 13px;
  background: url(../svg/icons/icon_pop_b.svg) center center/cover no-repeat;
  position: absolute;
  inset: auto 0 -9px 0;
  margin: 0 auto;
}

body .boxSupporta .ttl1 {
  color: #333;
  font-family: "Zen Maru Gothic";
  font-size: 24px;
  font-style: normal;
  font-weight: 700;
  line-height: 26px;
  /* 108.333% */
  text-align: center;
}

body .boxSupporta .inner {
  border-radius: 5px;
  background: #FFF;
  margin: 34px auto 0;
  position: relative;
}

@media (min-width: 768px) {
  body .boxSupporta .inner {
    padding: 35px 32px 29px;
  }
}

@media (max-width: 767.99px) {
  body .boxSupporta .inner {
    padding: 35px 10px 15px;
  }
}

body .boxSupporta .inner .ttl2 {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  height: 10px;
  position: absolute;
  inset: -5px auto auto auto;
  margin: 0 auto;
}

@media (min-width: 768px) {
  body .boxSupporta .inner .ttl2 {
    width: calc(100% - 64px);
  }
}

@media (max-width: 767.99px) {
  body .boxSupporta .inner .ttl2 {
    width: calc(100% - 20px);
  }
}

body .boxSupporta .inner .ttl2::after {
  content: "";
  display: block;
  width: 100%;
  height: 1px;
  background-color: #6FBC58;
}

body .boxSupporta .inner .ttl2 .text1 {
  color: #6EBB57;
  text-align: center;
  font-family: "Zen Maru Gothic";
  font-size: 15px;
  font-style: normal;
  font-weight: 700;
  line-height: 26px;
  /* 173.333% */
  display: inline-block;
  height: 10px;
  line-height: 10px;
  white-space: nowrap;
}

body .boxSupporta .inner .telBox1 {
  display: flex;
  gap: 9px;
}

body .boxSupporta .inner .telBox1+.telBox1 {
  margin-top: 24px;
}

body .boxSupporta .inner .telBox1 .boxHead1 {
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 5px;
  background: #6FBC58;
  flex-shrink: 0;
}

@media (min-width: 768px) {
  body .boxSupporta .inner .telBox1 .boxHead1 {
    width: 60px;
  }
}

@media (max-width: 767.99px) {
  body .boxSupporta .inner .telBox1 .boxHead1 {
    width: 48px;
  }
}

body .boxSupporta .inner .telBox1 .boxHead1 .text1 {
  color: #FFF;
  text-align: center;
  font-family: "Noto Sans JP";
  font-size: 15px;
  font-style: normal;
  font-weight: 700;
  line-height: 26px;
  /* 173.333% */
}

body .boxSupporta .inner .telBox1 .boxBody1 {
  width: 100%;
}

body .boxSupporta .inner .telBox1 .boxBody1 .tel1 {
  display: block;
  color: #333;
  font-family: "Zen Maru Gothic";
  font-style: normal;
  font-weight: 700;
  line-height: 26px;
  /* 86.667% */
  letter-spacing: 3px;
  margin: -2px -0.1em -2px 0;
}

@media (min-width: 768px) {
  body .boxSupporta .inner .telBox1 .boxBody1 .tel1 {
    font-size: 30px;
  }
}

@media (max-width: 767.99px) {
  body .boxSupporta .inner .telBox1 .boxBody1 .tel1 {
    font-size: 24px;
  }
}

body .boxSupporta .inner .telBox1 .boxBody1 .tel2 {
  display: block;
  color: #000;
  font-family: "Noto Sans JP";
  font-size: 14px;
  font-style: normal;
  font-weight: 400;
  line-height: 20px;
  /* 142.857% */
  margin: 7px -0.1em 0 0;
}

body .boxSupporta .inner .telBox1 .boxBody1 .tel3 {
  color: #333;
  font-family: "Zen Maru Gothic";
  font-size: 20px;
  font-style: normal;
  font-weight: 700;
  line-height: 26px;
  /* 130% */
  letter-spacing: 1.6px;
  margin: -6px -0.1em -6px 0;
}

body .boxSupporta .inner .btnForma {
  margin: 20px auto;
  padding: 15px 20px;
}

body .areaBoxGraph {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
  container-type: inline-size;
}

@container (1200px <=width) {
  body .areaBoxGraph .boxGraph {
    width: calc((100% - 40px) / 3);
  }
}

@container (800px <=width < 1200px) {
  body .areaBoxGraph .boxGraph {
    width: calc((100% - 20px) / 2);
  }
}

@container (width < 800px) {
  body .areaBoxGraph .boxGraph {
    width: 100%;
  }
}

body .boxGraph {
  width: 100%;
  max-width: 500px;
  border-radius: 7px;
  overflow: hidden;
  border: 1px solid #6EBB57;
  background: #FFF;
}

body .boxGraph.noBorder {
  border: 0;
}

body .boxGraph .ttl1 {
  padding: 12px;
  background-color: #6EBB57;
  text-align: center;
}

body .boxGraph .ttl1 .text1 {
  color: #FFF;
  font-family: "Noto Sans JP";
  font-size: 20px;
  font-style: normal;
  font-weight: 700;
  line-height: 26px;
  /* 130% */
}

body .boxGraph .inner {
  padding: 30px 20px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 12px;
}

body .boxGraph .inner.-p0 {
  padding: unset;
}

body .boxGraph .inner .pic01 {
  width: 100%;
}

body .boxGraph .inner .pic01.radius5 {
  border-radius: 5px;
  overflow: hidden;
}

body .boxGraph .inner .textArea1 {
  line-height: 20px;
}

body .boxGraph .inner .textArea1 .text1 {
  color: #000;
  font-family: "Noto Sans JP";
  font-size: 12px;
  font-style: normal;
  font-weight: 700;
}

body .boxGraph .inner .textArea1 .text1 .link1 {
  color: #0026FF;
  font-weight: 400;
  -webkit-text-decoration-line: underline;
  text-decoration-line: underline;
  -webkit-text-decoration-style: solid;
  text-decoration-style: solid;
}

body .boxFlowa {
  border-radius: 10px;
  background: #FFF;
  box-shadow: 0 0 30px 0 rgba(0, 0, 0, 0.05);
  display: flex;
  align-items: center;
  gap: 30px;
  min-height: 230px;
  position: relative;
}

@media (min-width: 768px) {
  body .boxFlowa {
    padding: 0 34px 0 20px;
  }
}

@media (max-width: 767.99px) {
  body .boxFlowa {
    flex-direction: column;
    padding: 0 15px 35px 20px;
    overflow: hidden;
  }
}

body .boxFlowa .no {
  width: 80px;
  height: 80px;
  border-radius: 10px 0 50px 0;
  background: #6EBB57;
  position: absolute;
  inset: 0 auto auto 0;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #FFF;
  font-family: "Century Gothic";
  font-size: 30px;
  font-weight: 700;
}

body .boxFlowa .pic01 {
  width: 230px;
  height: 230px;
  flex-shrink: 0;
}

@media (min-width: 768px) {
  body .boxFlowa .pic01 {
    margin: -50px 0;
  }
}

@media (max-width: 767.99px) {
  body .boxFlowa .pic01 {
    margin: -10px 0;
  }
}

body .boxFlowa .inner {
  display: flex;
  flex-direction: column;
  gap: 30px;
  margin: 0 auto 0 0;
}

@media (min-width: 768px) {
  body .boxFlowa .inner {
    padding: 50px 0;
  }
}

body .boxFlowa .inner .ttl1 {
  color: #333;
  font-size: 20px;
  font-weight: 700;
  line-height: 30px;
  /* 150% */
  margin: -8px -0.1em -8px 0;
}

body .boxFlowa .inner .text1 {
  color: #333;
  font-family: "Noto Sans JP";
  font-size: 15px;
  font-weight: 400;
  line-height: 30px;
  /* 200% */
  margin: -9px -0.1em -10px 0;
}

body .boxFlowa .inner .text1 em {
  font-weight: 700;
}

body .boxFlowa .inner .btnGrp1 {
  display: flex;
  gap: 20px;
  flex-wrap: wrap;
}

@media (min-width: 768px) {
  body .boxFlowa .inner .btnGrp1 {
    align-items: center;
  }
}

@media (max-width: 767.99px) {
  body .boxFlowa .inner .btnGrp1 {
    flex-direction: column;
  }
}

body .boxFlowa .inner .btnGrp1 .btnf {
  border-radius: 10px;
}

@media (min-width: 768px) {
  body .boxFlowa .inner .btnGrp1 .btnf {
    max-width: 255px;
  }
}

@media (max-width: 767.99px) {
  body .boxFlowa .inner .btnGrp1 .btnf {
    max-width: 295px;
    width: 100%;
  }
}

body .boxFlowa .inner .btnGrp1 .btnTela {
  max-width: 295px;
}

@media (max-width: 767.99px) {
  body .boxFlowa .inner .btnGrp1 .btnTela {
    width: 100%;
  }
}

body .boxFlowa .inner .btnGrp2 {
  display: flex;
}

@media (min-width: 768px) {
  body .boxFlowa .inner .btnGrp2 {
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
  }
}

@media (max-width: 767.99px) {
  body .boxFlowa .inner .btnGrp2 {
    flex-direction: column;
    gap: 15px;
  }
}

body .boxFlowa .inner .btnGrp2 .textFax1 {
  color: #000;
  font-family: "Noto Sans JP";
  font-size: 15px;
  font-style: normal;
  font-weight: 500;
  line-height: 26px;
  /* 173.333% */
  margin: -7px -0.1em -8px 0;
  white-space: nowrap;
}

body .dotGrpa {
  display: flex;
  flex-direction: column;
  gap: 9px;
}

@media (min-width: 768px) {
  body .dotGrpa {
    margin-left: 130px;
  }
}

@media (max-width: 767.99px) {
  body .dotGrpa {
    margin-left: 27px;
  }
}

body .dotGrpa .dot1 {
  display: block;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background-color: #FFB215;
}

body .dotGrpa.-green .dot1 {
  background-color: #6EBB57;
}

body .areaGrapha {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  flex-wrap: wrap;
  width: 100%;
  container-type: inline-size;
}

@media (min-width: 768px) {
  body .areaGrapha {
    gap: 40px 20px;
  }

  body .areaGrapha.-img300max .boxGraph {
    max-width: 300px;
  }

  body .areaGrapha.-img300max .textGrp1 {
    flex: 1;
  }

  body .areaGrapha.-pcreverse {
    flex-direction: row-reverse;
  }
}

@media (max-width: 767.99px) {
  body .areaGrapha {
    gap: 20px;
  }
}

@container (800px <=width) {
  body .areaGrapha .textGrp1 {
    width: 54.1666666667%;
  }

  body .areaGrapha .boxGraph {
    width: 41.6666666667%;
  }
}

@container (width < 800px) {
  body .areaGrapha .textGrp1 {
    width: 100%;
  }

  body .areaGrapha .boxGraph {
    width: 100%;
    margin: 0 auto;
  }
}

body .areaGrapha .boxGraph {
  max-width: 500px;
  flex-shrink: 0;
}

body .areaContacta {
  width: 100%;
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 30px 25px;
  container-type: inline-size;
}

body .areaContacta>.inner {
  display: flex;
  justify-content: center;
  width: 100%;
}

@media (min-width: 768px) {
  body .areaContacta>.inner {
    gap: 25px;
  }
}

@media (max-width: 767.99px) {
  body .areaContacta>.inner {
    gap: 30px;
  }
}

body .areaContacta>.inner .boxContacta {
  flex-shrink: 0;
  width: calc((100% - 25px) / 2);
}

@container (width < 585px) {
  body .areaContacta>.inner {
    flex-flow: column;
  }

  body .areaContacta>.inner .boxContacta {
    width: 100%;
    flex-shrink: 0;
  }
}

body .boxContacta {
  border-radius: 10px;
  background: #FFF;
  box-shadow: 0 0 30px 0 rgba(0, 0, 0, 0.08);
  position: relative;
}

@media (min-width: 768px) {
  body .boxContacta {
    padding: 30px 20px 38px;
  }
}

@media (max-width: 767.99px) {
  body .boxContacta {
    padding: 30px;
  }
}

body .boxContacta::before {
  content: "";
  display: block;
  background-color: #333;
  height: 3px;
  width: calc(100% - 80px);
  border-radius: 3px;
  position: absolute;
  inset: 0;
  margin: 0 auto;
}

body .boxContacta .boxTtl1 {
  display: flex;
  align-items: center;
  justify-content: center;
  color: #333;
  text-align: center;
  font-family: "Zen Maru Gothic";
  font-style: normal;
  font-weight: 700;
  min-height: 58px;
  line-height: 29px;
  font-size: 20px;
  margin: -7px -0.1em -8px 0;
}

body .boxContacta>.body {
  display: flex;
  gap: 20px;
}

@media (min-width: 768px) {
  body .boxContacta>.body {
    margin: 34px auto 0;
  }
}

@media (max-width: 767.99px) {
  body .boxContacta>.body {
    margin: 25px auto 0;
    flex-flow: column;
  }
}

body .boxContacta>.body .btnf {
  margin: 0 auto 20px;
}

body .boxContacta>.body .boxText1 {
  color: #333;
  font-family: "Noto Sans JP";
  font-size: 15px;
  font-style: normal;
  font-weight: 500;
  line-height: 26px;
  margin: -7px -0.1em -8px 0;
}

body .boxContacta.colorO::before {
  background-color: #F78640;
}

body .boxContacta.colorO .boxTtl1 {
  color: #F78640;
}

body .boxContacta.colorG::before {
  background-color: #6FBC58;
}

body .boxContacta.colorG .boxTtl1 {
  color: #6FBC58;
}

body .boxContacta.colorY::before {
  background-color: #6EBB57;
}

body .boxContacta.colorY .boxTtl1 {
  color: #6EBB57;
}

body .areaContactb {
  display: flex;
  flex-direction: column;
  align-items: center;
  border-radius: 10px;
  background-color: #FFF9CB;
}

@media (min-width: 768px) {
  body .areaContactb {
    padding: 0 20px 60px;
    gap: 40px;
  }
}

@media (max-width: 767.99px) {
  body .areaContactb {
    padding: 0 20px 30px;
    gap: 20px;
  }
}

body .areaContactb .areaHead1 {
  display: inline-flex;
  color: #333;
  text-align: center;
  font-family: "Zen Maru Gothic";
  font-weight: 700;
  border-top: 3px solid #F78640;
}

@media (min-width: 768px) {
  body .areaContactb .areaHead1 {
    font-size: 30px;
    line-height: 36px;
    /* 120% */
    margin: 0 auto -8px;
    padding-top: 45px;
  }
}

@media (max-width: 767.99px) {
  body .areaContactb .areaHead1 {
    font-size: 20px;
    line-height: 29px;
    font-size: 20px;
    margin: 0px -0.1em -8px 0;
    padding-top: 23px;
  }
}

body .areaContactb .btnGrp1 {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  width: 100%;
  container-type: inline-size;
}

@media (min-width: 768px) {
  body .areaContactb .btnGrp1 {
    gap: 20px 30px;
  }
}

@media (max-width: 767.99px) {
  body .areaContactb .btnGrp1 {
    gap: 20px;
  }
}

@container (850px <=width) {
  body .areaContactb .btnGrp1 .btnf {
    width: calc((100% - 30px) / 2);
  }

  body .areaContactb .btnGrp1 .btnTela {
    width: calc((100% - 30px) / 2);
  }
}

@container (width < 850px) {
  body .areaContactb .btnGrp1 .btnf {
    width: 100%;
  }

  body .areaContactb .btnGrp1 .btnTela {
    width: 100%;
  }
}

body .areaContactb .btnGrp1 .btnf {
  max-width: 430px;
}

body .areaContactb .btnGrp1 .btnTela {
  max-width: 430px;
}

@media (min-width: 768px) {
  body .areaContactb.wide {
    padding-bottom: 110px;
  }
}

@media (max-width: 767.99px) {
  body .areaContactb.wide {
    padding-bottom: 65px;
  }
}

@media (min-width: 768px) {
  body .areaContactb.wide .areaHead1 {
    padding-top: 96px;
  }
}

@media (max-width: 767.99px) {
  body .areaContactb.wide .areaHead1 {
    padding-top: 53px;
  }
}

body .areaPhotoa {
  display: flex;
  flex-wrap: wrap;
  position: relative;
  container-type: inline-size;
}

@media (min-width: 768px) {
  body .areaPhotoa {
    gap: 40px 25px;
  }
}

@media (max-width: 767.99px) {
  body .areaPhotoa {
    gap: 20px;
  }
}

body .areaPhotoa .logomark1 {
  display: block;
  width: 990px;
  height: 758px;
  fill: rgba(255, 249, 203, 0.5);
  position: absolute;
  inset: -236px -22.8% auto auto;
  z-index: -1;
}

@container (800px <=width) {
  body .areaPhotoa .boxPhotoa {
    width: calc((100% - 50px) / 3);
    display: flex;
    flex-direction: column;
    gap: 20px;
  }
}

@container (width < 800px) {
  body .areaPhotoa .logomark1 {
    transform-origin: top right;
    transform: scale(0.5);
  }

  body .areaPhotoa .boxPhotoa {
    width: calc((100% - 25px) / 2);
    display: flex;
    flex-direction: column;
    gap: 20px;
  }
}

@container (width < 500px) {
  body .areaPhotoa .logomark1 {
    transform-origin: top right;
    transform: scale(0.5);
  }

  body .areaPhotoa .boxPhotoa {
    width: 100%;
    display: flex;
    flex-direction: column;
    gap: 20px;
    margin: 0 auto;
  }
}

body .boxPhotoa .pic01 {
  border-radius: 5px;
  overflow: hidden;
}

body .boxPhotoa .photoText1 {
  color: #333;
  font-family: "Noto Sans JP";
  font-size: 13px;
  font-style: normal;
  font-weight: 400;
  line-height: 26px;
  /* 200% */
  margin: -8px -0.1em -8px 0;
}

body .boxStagea {
  border-radius: 5px;
}

body .boxStagea.colorG {
  border: 2px solid #9DCB64;
  background: #FAFAFA;
  padding: 8px 22px 35px 23px;
}

body .boxStagea.colorY {
  border: 2px solid #6EBB57;
  background: #FFF;
  padding: 11px 23px 35px 23px;
}

body .boxStagea.colorO {
  border: 2px solid #F78640;
  background: #FFF;
  padding: 16px 13px 35px 23px;
}

body .boxStagea .btnGrp1 {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  row-gap: 7px;
  margin-top: 15px;
}

body .boxStagea .btnGrp1 .stage1_btn1,
body .boxStagea .btnGrp1 .stage1_btn2,
body .boxStagea .btnGrp1 .stage2_btn1,
body .boxStagea .btnGrp1 .stage2_btn2,
body .boxStagea .btnGrp1 .stage2_btn3 {
  width: 49.1228070175%;
}

body .boxStagea .btnGrp1 .stage1_btn3 {
  width: 56.1403508772%;
}

body .boxStagea .btnGrp1 .stage3_btn1 {
  width: 100%;
}

body .boxStagea .btnGrp1 .stage1_text1,
body .boxStagea .btnGrp1 .stage2_text1 {
  display: flex;
  align-items: flex-end;
  color: #333;
  leading-trim: both;
  text-edge: cap;
  font-family: "Noto Sans JP";
  font-size: 12px;
  font-style: normal;
  font-weight: 500;
  line-height: 12px;
}

body .boxStagea .btnGrp1 .stage1_text1 {
  width: 41.4035087719%;
}

body .boxStagea .btnGrp1 .stage2_text1 {
  width: 49.1228070175%;
}

body .boxStagea+.arrow_d1 {
  display: block;
  width: 25px;
  height: 15px;
  margin: 0 auto;
}

body .boxStagea+.arrow_d1.colorG {
  fill: #9DCB64;
}

body .boxStagea+.arrow_d1.colorY {
  fill: #6EBB57;
}

body .boxOthers {
  border-radius: 10px;
  background: #FFF;
  box-shadow: 0 0 30px 0 rgba(0, 0, 0, 0.08);
}

@media (min-width: 768px) {
  body .boxOthers {
    padding: 60px 60px 53px;
  }
}

@media (max-width: 767.99px) {
  body .boxOthers {
    padding: 30px;
  }
}

body .boxOthers .boxText1 {
  color: #333;
  font-family: "Noto Sans JP";
  font-style: normal;
  font-weight: 500;
}

@media (min-width: 768px) {
  body .boxOthers .boxText1 {
    text-align: center;
    font-size: 18px;
    line-height: 32px;
    margin: -9px -0.1em -10px 0;
  }
}

@media (max-width: 767.99px) {
  body .boxOthers .boxText1 {
    font-size: 15px;
    line-height: 26px;
    margin: -7px -0.1em -8px 0;
  }
}

@media (min-width: 768px) {
  body .boxOthers .btnf {
    margin: 40px auto 0;
  }
}

@media (max-width: 767.99px) {
  body .boxOthers .btnf {
    margin: 30px auto 0;
  }
}

body .boxSpirits {
  position: relative;
  padding: 70px 20px 44px;
  background-color: #FFF;
  border-radius: 5px;
}

body .boxSpirits .logo1 {
  width: 155px;
  height: 128px;
  position: absolute;
  inset: -64px 0 auto 0;
  margin: 0 auto;
  transform: translateX(-20px);
}

body .boxSpirits .boxTtl .sub {
  color: #6EBB57;
  text-align: center;
  font-family: "Century Gothic";
  font-size: 10px;
  font-style: normal;
  font-weight: 700;
  line-height: 26px;
  /* 260% */
  letter-spacing: 2px;
}

body .boxSpirits .boxTtl .ttl1 {
  color: #6EBB57;
  text-align: center;
  leading-trim: both;
  text-edge: cap;
  font-family: "Zen Maru Gothic";
  font-size: 20px;
  font-style: normal;
  font-weight: 700;
  line-height: 30px;
  /* 150% */
  margin: -8px -0.1em -8px 0;
}

body .boxSpirits .text1 {
  color: #333;
  text-align: center;
  leading-trim: both;
  text-edge: cap;
  font-family: "Noto Sans JP";
  font-size: 15px;
  font-style: normal;
  font-weight: 500;
  line-height: 30px;
  /* 200% */
  margin: -9px -0.1em -10px 0;
}

body .boxSpirits .pic02,
body .boxSpirits .pic03 {
  position: absolute;
}

body .boxSpirits .pic02 {
  width: 50px;
  inset: auto auto -55px 30px;
}

body .boxSpirits .pic03 {
  width: 50px;
  inset: auto 31px -25px auto;
}

body .boxRecruita {
  border-radius: 5px;
  box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.1);
  overflow: hidden;
  position: relative;
  /*
          // 求人停止中
          .offRecruit {
              display: flex;
              align-items: center;
              justify-content: center;

              width: 220px;
              height: 65px;
              flex-shrink: 0;
              border-radius: 5px;
              background: #FFB215;

              color: #FFF;
              leading-trim: both;
              text-edge: cap;
              font-family: "Zen Maru Gothic";
              font-size: 20px;
              font-style: normal;
              font-weight: 700;
              line-height: 28px;

              position: absolute;
              inset: 73px 0 auto 0;
              margin: 0 auto;
              z-index: 1;
          }
  */
}

body .boxRecruita>.inner {
  background: #FFF;
  padding: 20px 20px 20px;
}

body .boxRecruita .pica {
  margin-bottom: 26px;
}

body .boxRecruita .boxHead1 .ttl1 {
  color: #333;
  leading-trim: both;
  text-edge: cap;
  font-family: "Zen Maru Gothic";
  font-size: 18px;
  font-style: normal;
  font-weight: 700;
  line-height: 26px;
  /* 144.444% */
  margin: -2px -0.1em -3px 0;
}

body .boxRecruita .boxHead1 .ttl2 {
  color: #333;
  leading-trim: both;
  text-edge: cap;
  font-family: "Noto Sans JP";
  font-size: 15px;
  font-style: normal;
  font-weight: 500;
  line-height: 26px;
  /* 173.333% */
  margin: -2px -0.1em -2px 0;
}

body .boxRecruita .boxBody1 {
  margin-top: 20px;
  padding-top: 20px;
  border-top: 1px solid rgba(110, 187, 87, 0.4);
}

body .boxRecruita .boxBody1 .boxList1 {
  display: flex;
  align-items: center;
  gap: 13px;
}

body .boxRecruita .boxBody1 .boxList1 .head1 {
  display: flex;
  align-items: center;
  justify-content: center;
  min-width: 67px;
  min-height: 20px;
  border-radius: 3px;
  background: #6FBC58;
  flex-shrink: 0;
  padding: 5px;
}

body .boxRecruita .boxBody1 .boxList1 .head1 .head1_1 {
  color: #FFF;
  leading-trim: both;
  text-edge: cap;
  font-family: "Noto Sans JP";
  font-size: 13px;
  font-style: normal;
  font-weight: 700;
  line-height: 28px;
  /* 215.385% */
  margin: -9px -0.1em -9px 0;
}

body .boxRecruita .boxBody1 .boxList1 .text1 {
  color: #333;
  leading-trim: both;
  text-edge: cap;
  font-family: "Noto Sans JP";
  font-size: 15px;
  font-style: normal;
  font-weight: 500;
  line-height: 22px;
  /* 146.667% */
  margin: -3px -0.1em -4px 0;
}

body .boxRecruita .boxBtn1 {
  width: 100%;
  height: 30px;
  flex-shrink: 0;
  background: #6FBC58;
  display: flex;
  gap: 15px;
  align-items: center;
  justify-content: center;
}

body .boxRecruita .boxBtn1 .text1 {
  color: #FFF;
  leading-trim: both;
  text-edge: cap;
  font-family: "Noto Sans JP";
  font-size: 13px;
  font-style: normal;
  font-weight: 700;
  line-height: 28px;
  /* 215.385% */
}

body .boxRecruita .boxBtn1 .icon1 svg {
  width: 6px;
  height: 10px;
  flex-shrink: 0;
  fill: #FFF;
}

body .sv_doctor .sv_head {
  display: inline-block;
  border-radius: 5px 5px 0 0;
  background: #9DCB64;
  padding: 8px 26px;
  color: #FFF;
  leading-trim: both;
  text-edge: cap;
  font-family: "Noto Sans JP";
  font-size: 12px;
  font-style: normal;
  font-weight: 700;
  line-height: 20px;
  /* 166.667% */
  margin: -5px -0.1em -6px 0;
}

body .sv_doctor .sv_body {
  border-radius: 0 5px 5px 5px;
  background: #FFF;
  padding: 15px 25px 15px 30px;
  margin: 0 auto;
  display: flex;
  align-items: center;
  gap: 25px;
}

body .sv_doctor .sv_body .portrait {
  display: block;
  width: 95px;
  border-radius: 50%;
  overflow: hidden;
}

body .sv_doctor .sv_body .balloon {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  height: 25px;
  margin-bottom: 15px;
  padding: 8px 13px 7px 21px;
  border-radius: 5px;
  background: rgba(157, 203, 100, 0.3);
  color: #333;
  leading-trim: both;
  text-edge: cap;
  font-family: "Zen Maru Gothic";
  font-size: 14px;
  font-style: normal;
  font-weight: 700;
  line-height: 10px;
  white-space: nowrap;
  position: relative;
}

body .sv_doctor .sv_body .balloon::before {
  content: "";
  display: block;
  width: 10px;
  height: 10px;
  background: rgba(157, 203, 100, 0.3);
  -webkit-clip-path: polygon(0 50%, 100% 0, 100% 100%);
  clip-path: polygon(0 50%, 100% 0, 100% 100%);
  position: absolute;
  top: calc(50% - 5px);
  left: -10px;
}

body .sv_doctor .sv_body .txtGrp {
  padding: 8px 0 9px 13px;
  display: flex;
  flex-flow: column;
  align-items: flex-start;
  justify-content: center;
  gap: 16px;
  position: relative;
}

body .sv_doctor .sv_body .txtGrp::before {
  content: "";
  display: block;
  width: 3px;
  height: 100%;
  background: #9DCB64;
  border-radius: 2px;
  position: absolute;
  inset: 0 auto auto 0;
}

body .sv_doctor .sv_body .clinic {
  color: #333;
  leading-trim: both;
  text-edge: cap;
  font-family: "Noto Sans JP";
  font-size: 12px;
  font-style: normal;
  font-weight: 400;
  line-height: 20px;
  /* 166.667% */
  margin: -5px -0.1em -6px 0;
}

body .sv_doctor .sv_body .name {
  color: #333;
  leading-trim: both;
  text-edge: cap;
  font-family: "Noto Sans JP";
  font-size: 18px;
  font-style: normal;
  font-weight: 400;
  line-height: 20px;
  /* 111.111% */
  margin: -3px -0.1em -4px 0;
}

body .sv_doctor .sv_body .job {
  font-size: 12px;
  margin: -5px 12px -6px 0;
}

body .thanks_doctor {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  text-align: left;
}

body .thanks_doctor .balloon {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  padding: 8px 20px 8px 20px;
  border-radius: 5px;
  background: rgba(157, 203, 100, 0.3);
  color: #333;
  leading-trim: both;
  text-edge: cap;
  font-family: "Zen Maru Gothic";
  font-size: 14px;
  font-style: normal;
  font-weight: 700;
  line-height: 1.5;
  white-space: nowrap;
  position: relative;
}

body .thanks_doctor .balloon::before {
  content: "";
  display: block;
  width: 10px;
  height: 10px;
  background: rgba(157, 203, 100, 0.3);
  -webkit-clip-path: polygon(0 0, 100% 50%, 0 100%);
  clip-path: polygon(0 0, 100% 50%, 0 100%);
  position: absolute;
  top: calc(50% - 5px);
  right: -10px;
}

body .thanks_doctor .portrait {
  display: block;
  width: 95px;
  border-radius: 50%;
  overflow: hidden;
}

body .formNewslettera {
  width: 100%;
  max-width: 720px;
  margin: 0 auto;
}

body .formNewslettera .formWrap {
  width: 100%;
}

body .formNewslettera .formUnitGrp {
  display: flex;
  flex-direction: column;
}

@media (min-width: 768px) {
  body .formNewslettera .formUnitGrp {
    gap: 10px;
  }
}

@media (max-width: 767.99px) {
  body .formNewslettera .formUnitGrp {
    gap: 20px;
  }
}

body .formNewslettera .formUnitGrp .formUnit {
  display: flex;
}

@media (min-width: 768px) {
  body .formNewslettera .formUnitGrp .formUnit {
    justify-content: space-between;
  }
}

@media (max-width: 767.99px) {
  body .formNewslettera .formUnitGrp .formUnit {
    flex-direction: column;
  }
}

body .formNewslettera .formUnitGrp .formUnit .unitHead {
  display: flex;
  align-items: center;
}

@media (min-width: 768px) {
  body .formNewslettera .formUnitGrp .formUnit .unitHead {
    width: 29.1666666667%;
    min-height: 60px;
  }
}

@media (max-width: 767.99px) {
  body .formNewslettera .formUnitGrp .formUnit .unitHead {
    width: 100%;
  }
}

body .formNewslettera .formUnitGrp .formUnit .unitHead .head1 {
  color: #333;
  font-family: "Zen Maru Gothic";
  font-size: 18px;
  font-style: normal;
  font-weight: 500;
  line-height: 26px;
  /* 144.444% */
}

body .formNewslettera .formUnitGrp .formUnit .unitHead .head1 .required {
  color: #F78640;
}

body .formNewslettera .formUnitGrp .formUnit .unitBody {
  min-height: 60px;
  display: flex;
  flex-direction: column;
  gap: 5px;
}

@media (min-width: 768px) {
  body .formNewslettera .formUnitGrp .formUnit .unitBody {
    width: 69.4444444444%;
  }
}

@media (max-width: 767.99px) {
  body .formNewslettera .formUnitGrp .formUnit .unitBody {
    width: 100%;
  }
}

body .formNewslettera .formUnitGrp .formUnit .unitBody input.text1 {
  height: 60px;
  width: 100%;
  position: relative;
  z-index: 1;
  outline: none;
  box-sizing: border-box;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border-radius: 5px;
  border: 1px solid #CCC;
  background: #FFF;
  color: #333;
  font-family: "Noto Sans JP";
  font-size: 18px;
  font-style: normal;
  font-weight: 500;
  line-height: 26px;
  /* 144.444% */
  padding: 0 20px;
}

body .formNewslettera .formUnitGrp .formUnit .unitBody input.text1::-ms-clear {
  visibility: hidden;
}

body .formNewslettera .formUnitGrp .formUnit .unitBody input.text1::-moz-placeholder {
  color: #AFAFAF;
}

body .formNewslettera .formUnitGrp .formUnit .unitBody input.text1:-ms-input-placeholder {
  color: #AFAFAF;
}

body .formNewslettera .formUnitGrp .formUnit .unitBody input.text1::placeholder {
  color: #AFAFAF;
}

body .formNewslettera label.error {
  display: block;
  vertical-align: top;
  color: #F78640;
  font-size: 13px;
  letter-spacing: 0.05em;
}

body .formNewslettera .newsPrivacyBox {
  text-align: center;
  color: #404040;
  margin: 30px auto;
}

body .formNewslettera .newsPrivacyBox a {
  color: #F78640;
  text-decoration: underline;
  display: inline;
}

body .formNewslettera .btnNewslettera {
  display: flex;
  align-items: center;
  justify-content: center;
  max-width: 350px;
  width: 100%;
  height: 60px;
  border-radius: 100px;
  background: #F78640;
  margin: 0 auto;
  cursor: pointer;
}

body .formNewslettera .btnNewslettera .text1 {
  color: #FFF;
  text-align: center;
  font-family: "Zen Maru Gothic";
  font-size: 20px;
  font-style: normal;
  font-weight: 700;
  line-height: 26px;
  /* 130% */
}

body .formNewslettera .btnNewslettera.unlink {
  background: #CCC;
  cursor: auto;
}

body .formNewslettera .thanksWrap {
  display: none;
  height: 100%;
  flex-flow: column;
  align-items: center;
  justify-content: center;
}

body .formNewslettera .thanksWrap .ttlHead {
  display: flex;
  justify-content: center;
  margin-bottom: 20px;
}

body .formNewslettera .thanksWrap .ttlHead>.inner {
  display: inline-flex;
  height: 40px;
  border-radius: 100px;
  background: #F78640;
  padding: 0 20px;
  align-items: center;
  justify-content: center;
  margin: 0 auto;
}

body .formNewslettera .thanksWrap .ttlHead>.inner .txt1 {
  color: #FFF;
  font-family: "Noto Sans JP";
  font-size: 15px;
  font-style: normal;
  font-weight: 700;
  line-height: 26px;
  /* 173.333% */
}

body .formNewslettera .thanksWrap .ttl {
  color: #F78640;
  text-align: center;
  font-weight: 700;
  margin: 0 auto 30px;
}

@media (min-width: 768px) {
  body .formNewslettera .thanksWrap .ttl {
    font-size: 30px;
    line-height: 36px;
    /* 120% */
  }
}

@media (max-width: 767.99px) {
  body .formNewslettera .thanksWrap .ttl {
    font-size: 20px;
    line-height: 29px;
    font-size: 20px;
  }
}

body .formNewslettera .thanksWrap .txt1 {
  margin: 0 -0.1em 0 0;
  font-size: 16px;
  line-height: 1.4;
  letter-spacing: 0.05em;
}

@media (min-width: 768px) {
  body .formNewslettera .thanksWrap .txt1 {
    text-align: center;
  }
}

body .formNewslettera .thanksWrap .txt1+.txt1 {
  margin-top: 2rem;
}

body .formNewslettera .thanksWrap .txt1 .link1 {
  text-decoration: underline;
}

body .formNewslettera .thanksWrap .txt1 em {
  font-weight: bold;
}

body .formNewslettera .thanksWrap .mainText {
  margin: 0 -0.1em 0 0;
  font-size: 16px;
  line-height: 1.4;
  letter-spacing: 0.05em;
}

@media (min-width: 768px) {
  body .formNewslettera .thanksWrap .mainText {
    text-align: center;
  }
}

body .formNewslettera .thanksWrap .mainText+.mainText {
  margin-top: 20px;
}

body .formNewslettera#reserv_n_form.thanks .formWrap {
  display: none;
}

body .formNewslettera#reserv_n_form.thanks .thanksWrap {
  display: flex;
}

body .messagea .txt1 {
  color: #333;
  leading-trim: both;
  text-edge: cap;
  font-family: "Noto Sans JP";
  font-size: 15px;
  font-style: normal;
  font-weight: 500;
  line-height: 28px;
  /* 186.667% */
}

body .messagea .txt1 em {
  color: #6EBB57;
  font-weight: 700;
}

body .messagea .txt2 {
  color: #6EBB57;
  leading-trim: both;
  text-edge: cap;
  font-family: "Zen Maru Gothic";
  font-size: 18px;
  font-style: normal;
  font-weight: 700;
  line-height: 30px;
  /* 166.667% */
  text-indent: -1em;
}

body .messagea .txt3 {
  color: #333;
  leading-trim: both;
  text-edge: cap;
  font-family: "Zen Maru Gothic";
  font-size: 17px;
  font-style: normal;
  font-weight: 700;
  line-height: 26px;
  /* 152.941% */
}

body .indexa {
  padding: 30px 30px 45px;
  border-radius: 10px;
  background: #FFF9CB;
}

body .indexa .ttl1 {
  display: block;
  text-align: center;
  color: #FFB215;
  leading-trim: both;
  text-edge: cap;
  font-family: "Zen Maru Gothic";
  font-size: 20px;
  font-style: normal;
  font-weight: 700;
  line-height: 28px;
  /* 140% */
  padding-bottom: 15px;
  border-bottom: 1px solid #FFB215;
  margin-bottom: 34px;
}

body .indexa>.list1 {
  margin: -17px 0 -17px;
}

body .indexa>.list1>.item {
  padding-left: 16px;
  position: relative;
}

body .indexa>.list1>.item::before {
  content: "";
  display: block;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background-color: #FFB215;
  position: absolute;
  inset: 15px auto auto 0;
}

body .indexa>.list1>.item>a {
  color: #333;
  leading-trim: both;
  text-edge: cap;
  font-family: "Noto Sans JP";
  font-size: 17px;
  font-style: normal;
  font-weight: 500;
  line-height: 36px;
  /* 211.765% */
  -webkit-text-decoration-line: underline;
  text-decoration-line: underline;
  -webkit-text-decoration-style: solid;
  text-decoration-style: solid;
  -webkit-text-decoration-skip-ink: none;
  text-decoration-skip-ink: none;
  text-decoration-thickness: auto;
  text-underline-offset: auto;
  text-underline-position: from-font;
}

body .indexa>.list1>.item .list1 {
  margin: -1px 0 -10px;
}

body .indexa>.list1>.item .list1>.item {
  padding-left: 13px;
  position: relative;
}

body .indexa>.list1>.item .list1>.item::before {
  content: "";
  display: block;
  width: 3px;
  height: 3px;
  border-radius: 50%;
  background-color: #333;
  position: absolute;
  inset: 15px auto auto 0;
}

body .indexa>.list1>.item .list1>.item>a {
  color: #333;
  leading-trim: both;
  text-edge: cap;
  font-family: "Noto Sans JP";
  font-size: 15px;
  font-style: normal;
  font-weight: 400;
  line-height: 30px;
  -webkit-text-decoration-line: underline;
  text-decoration-line: underline;
  -webkit-text-decoration-style: solid;
  text-decoration-style: solid;
  -webkit-text-decoration-skip-ink: none;
  text-decoration-skip-ink: none;
  text-decoration-thickness: auto;
  text-underline-offset: auto;
  text-underline-position: from-font;
}

body .staffArea1 {
  width: 100%;
  position: relative;
  padding: 60px 0 50px;
}

body .staffArea1 .illust .icon1 {
  width: 120px;
  height: 95px;
  position: absolute;
  inset: 0 calc(50% + 15px) auto auto;
}

body .staffArea1 .illust .icon2 {
  width: 81px;
  height: 65px;
  position: absolute;
  inset: 0 auto auto calc(50% + 57px);
}

body .staffArea1 .illust .icon3 {
  width: 76px;
  height: 92px;
  position: absolute;
  inset: auto auto 0 calc(50% + 20px);
  z-index: 2;
}

body .sliderArea1 {
  position: relative;
  z-index: 1;
}

body .sliderArea1 .slide_item {
  margin: 30px 10px;
  padding: 10px 10px 30px;
  border-radius: 5px;
  background: #FFF;
  box-shadow: 10px 10px 20px 0 rgba(0, 0, 0, 0.1);
  position: relative;
  transform: rotate(-5deg);
}

body .sliderArea1 .slide_item .icon1 {
  display: block;
  width: 39px;
  height: 41px;
  position: absolute;
  inset: -10px auto auto 43px;
}

body .sliderArea1 .slide_item .icon1.colorG {
  fill: #9DCB64;
}

body .sliderArea1 .slide_item .icon1.colorO {
  fill: #FFB215;
}

body .sliderArea1 .slide_item .icon1.colorP {
  fill: #ED7980;
}

body .sliderArea1 .slide_item .pic1 {
  border-radius: 5px;
  overflow: hidden;
}

body .staffArea2 {
  width: 100%;
  position: relative;
}

body .sliderArea2 {
  position: relative;
  z-index: 1;
}

body .sliderArea2 .slide_item {
  margin: 0 5px;
}

body .sliderArea2 .slide_item:nth-child(odd) .pic1 {
  border-radius: 5px 100px 5px 5px;
  overflow: hidden;
}

body .sliderArea2 .slide_item:nth-child(even) .pic1 {
  border-radius: 5px 5px 5px 100px;
  overflow: hidden;
}

body .staffArea3 {
  width: 100%;
  height: calc(100vh - 60px + 2px);
  position: relative;
  /* max-height: 690px; */
}

body .key-img-wrap {
  width: 100%;
  height: 100%;
  position: relative;
}

body .key-img-wrap .key-img {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

body .key-img-wrap .key-img .ofi>img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

body .key-img-wrap .key-img .ofi {
  width: 100%;
  height: 100%;
}

body .sliderArea3 {
  display: flex;
  position: relative;
  z-index: 1;
  height: 100%;
}

body .sliderArea3 .slide_item {
  flex-shrink: 0;
  height: 100%;
  width: auto;
  border-radius: 5px;
  overflow: hidden;
  position: relative;
  padding: 0 5px;
}

body .sliderArea3 .slide_item .pic1 {
  height: calc(100vh - 60px);
  width: auto;
}

body .sliderArea3 .slide_item .pic1 img {
  height: 100%;
  width: auto;
}

body .staffArea4 {
  display: flex;
  justify-content: center;
  gap: 8px;
  width: 100%;
  height: 770px;
  position: relative;
  overflow: hidden;
}

body .sliderArea4 {
  height: 2374px;
  width: auto;
  display: flex;
  flex-flow: column;
  gap: 8px;
  position: relative;
  z-index: 1;
}

body .sliderArea4 .slide_item {
  flex-shrink: 0;
  display: flex;
  gap: 8px;
  height: auto;
  border-radius: 5px;
  overflow: hidden;
  position: relative;
  height: calc((100% - 40px) / 6);
  aspect-ratio: 786/389;
}

body .sliderArea4 .slide_item .pic1 {
  height: 100%;
  width: auto;
  aspect-ratio: 1/1;
}

body .sliderArea4 .slide_item .pic1 img {
  height: 100%;
  width: auto;
}

@media (max-width: 767.99px) {
  body #slider_04_2 {
    display: none;
  }
}

body .sliderArea4 {
  -webkit-animation: scroll-top 20s infinite linear 0.5s both;
  animation: scroll-top 20s infinite linear 0.5s both;
}

body .sliderArea4.reverse {
  -webkit-animation: scroll-bottom 20s infinite linear 0.5s both;
  animation: scroll-bottom 20s infinite linear 0.5s both;
}

@-webkit-keyframes scroll-top {
  from {
    transform: translateY(0%);
  }

  to {
    transform: translateY(-50%);
  }
}

@keyframes scroll-top {
  from {
    transform: translateY(0%);
  }

  to {
    transform: translateY(-50%);
  }
}

@-webkit-keyframes scroll-bottom {
  from {
    transform: translateY(-50%);
  }

  to {
    transform: translateY(0%);
  }
}

@keyframes scroll-bottom {
  from {
    transform: translateY(-50%);
  }

  to {
    transform: translateY(0%);
  }
}

body .staffArea5 {
  width: 100%;
  height: auto;
  position: relative;
}

body .sliderArea5 {
  height: 100%;
  display: flex;
  position: relative;
  z-index: 1;
}

body .sliderArea5 .slide_item {
  flex-shrink: 0;
  height: 100%;
  border-radius: 5px;
  overflow: hidden;
  position: relative;
  padding: 0 5px;
}

@media (min-width: 768px) {
  body .sliderArea5 .slide_item {
    width: 25%;
  }
}

@media (max-width: 767.99px) {
  body .sliderArea5 .slide_item {
    width: 50%;
  }
}

@media (min-width: 768px) {
  body .sliderArea5 {
    -webkit-animation: scroll-left 20s infinite linear 0.5s both;
    animation: scroll-left 20s infinite linear 0.5s both;
  }
}

@media (max-width: 767.99px) {
  body .sliderArea5 {
    -webkit-animation: scroll-left_sp 20s infinite linear 0.5s both;
    animation: scroll-left_sp 20s infinite linear 0.5s both;
  }
}

@-webkit-keyframes scroll-left {
  from {
    transform: translateX(0);
  }

  to {
    transform: translateX(-150%);
  }
}

@keyframes scroll-left {
  from {
    transform: translateX(0);
  }

  to {
    transform: translateX(-150%);
  }
}

@-webkit-keyframes scroll-left_sp {
  from {
    transform: translateX(0);
  }

  to {
    transform: translateX(-300%);
  }
}

@keyframes scroll-left_sp {
  from {
    transform: translateX(0);
  }

  to {
    transform: translateX(-300%);
  }
}

body .staffArea6 {
  overflow: hidden;
  display: flex;
  align-items: flex-end;
  width: 100%;
  position: relative;
}

body .sliderArea6 {
  width: 100%;
  display: flex;
  position: relative;
  z-index: 1;
}

body .sliderArea6 .slide_item {
  flex-shrink: 0;
  width: 100%;
  display: flex;
  height: auto;
  position: relative;
  padding: 0 5px;
}

@media (min-width: 768px) {
  body .sliderArea6 .slide_item {
    width: 33.3333333333%;
  }
}

@media (max-width: 767.99px) {
  body .sliderArea6 .slide_item {
    width: 50%;
  }
}

@media (min-width: 768px) {
  body .sliderArea6 {
    -webkit-animation: scroll-left 20s infinite linear 0.5s both;
    animation: scroll-left 20s infinite linear 0.5s both;
  }
}

@media (max-width: 767.99px) {
  body .sliderArea6 {
    -webkit-animation: scroll-left-sp 20s infinite linear 0.5s both;
    animation: scroll-left-sp 20s infinite linear 0.5s both;
  }
}

@keyframes scroll-left {
  from {
    transform: translateX(0);
  }

  to {
    transform: translateX(-200%);
  }
}

@-webkit-keyframes scroll-left-sp {
  from {
    transform: translateX(0);
  }

  to {
    transform: translateX(-400%);
  }
}

@keyframes scroll-left-sp {
  from {
    transform: translateX(0);
  }

  to {
    transform: translateX(-400%);
  }
}

body .boxPromisea {
  border-radius: 10px;
  background: #FFFBDB;
  padding: 20px 20px 28px;
}

body .boxPromisea .pic1 {
  border-radius: 10px 10px 100px 10px;
  background: #D9D9D9;
  aspect-ratio: 295/170;
  overflow: hidden;
  margin: -60px auto 0;
}

body .boxPromisea .no1 {
  color: #6EBB57;
  font-family: "Century Gothic";
  font-size: 50px;
  font-style: normal;
  font-weight: 700;
  line-height: 26px;
  /* 52% */
  margin: -30px 0 0 auto;
}

body .boxPromisea .ttl1 {
  color: #333;
  leading-trim: both;
  text-edge: cap;
  font-family: "Zen Maru Gothic";
  font-size: 18px;
  font-style: normal;
  font-weight: 700;
  line-height: 30px;
  /* 166.667% */
  margin: -8px -0.1em -9px 0;
}

body .boxPromisea .text1 {
  color: #333;
  leading-trim: both;
  text-edge: cap;
  font-family: "Noto Sans JP";
  font-size: 15px;
  font-style: normal;
  font-weight: 400;
  line-height: 26px;
  /* 173.333% */
  margin: -7px -0.1em -8px 0;
}

body .areaBoxpromiseb {
  position: relative;
}

body .areaBoxpromiseb .bg01 {
  width: 191px;
  height: 187px;
  position: absolute;
  inset: -167px auto auto 27px;
  z-index: -1;
}

body .areaBoxpromiseb .bg02 {
  width: 346px;
  height: 270px;
  position: absolute;
  inset: -201px -91px auto auto;
  z-index: -1;
}

body .areaBoxpromiseb .wrap {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: stretch;
  gap: 30px;
}

body .boxPromiseb {
  border-radius: 5px 100px 5px 5px;
  background: #FFF9CB;
  padding: 20px 20px 38px;
  width: 100%;
}

body .boxPromiseb .pic1 {
  border-radius: 5px 80px 5px 5px;
  aspect-ratio: 320/230;
  overflow: hidden;
  margin: 0 auto;
}

body .boxPromiseb .inner {
  padding: 0 10px;
}

body .boxPromiseb .inner .no1 {
  color: #6EBB57;
  font-family: "Century Gothic";
  font-size: 36px;
  font-style: normal;
  font-weight: 700;
  line-height: 26px;
  /* 52% */
  margin-top: -13px;
}

body .boxPromiseb .inner .ttl1 {
  color: var(---1, #404040);
  font-family: "Zen Maru Gothic";
  font-size: 20px;
  font-style: normal;
  font-weight: 700;
  line-height: 30px;
  /* 166.667% */
  margin: 12px -0.1em -8px 0;
}

body .boxPromiseb .inner .text1 {
  color: #333;
  font-family: "Noto Sans JP";
  font-size: 15px;
  font-style: normal;
  font-weight: 500;
  line-height: 28px;
  /* 186.667% */
  margin: 24px -0.1em -7px 0;
}

body .areaBoxexama {
  display: flex;
  flex-wrap: wrap;
  container-type: inline-size;
}

@media (min-width: 768px) {
  body .areaBoxexama {
    gap: 20px 40px;
  }

  body .areaBoxexama.-reverse {
    flex-direction: row-reverse;
  }
}

@media (max-width: 767.99px) {
  body .areaBoxexama {
    gap: 20px;
  }
}

@container (800px <=width) {
  body .areaBoxexama .boxExam {
    width: calc((100% - 40px) / 2);
  }
}

@container (width < 800px) {
  body .areaBoxexama .boxExam {
    width: 100%;
  }
}

body .boxExam {
  border-radius: 10px;
  background: #FFF;
  overflow: hidden;
}

body .boxExam .ttl1 {
  background: #FFB215;
  padding: 13px 20px;
}

body .boxExam .ttl1 .text1 {
  color: #FFF;
  font-family: "Zen Maru Gothic";
  font-size: 20px;
  font-weight: 700;
  line-height: 28px;
  /* 140% */
  margin: -7px -0.1em -7px 0;
}

body .boxExam .inner {
  display: flex;
}

@media (min-width: 768px) {
  body .boxExam .inner {
    padding: 40px 30px 40px 30px;
    height: calc(100% - 80px);
  }
}

@media (max-width: 767.99px) {
  body .boxExam .inner {
    flex-direction: column;
    padding: 30px 20px;
    height: calc(100% - 60px);
  }
}

body .boxExam .inner .icon1 {
  flex-shrink: 0;
}

body .boxExam .inner .textArea1 {
  display: flex;
  flex-direction: column;
  gap: 20px;
}

body .boxExam .inner .textArea1 .text1,
body .boxExam .inner .textArea1 .list1 {
  color: #333;
  font-family: "Noto Sans JP";
  font-size: 16px;
  font-weight: 500;
  line-height: 32px;
  /* 200% */
  margin: -10px -0.1em -10px 0;
}

body .boxExam .inner .textArea1 .list1 {
  text-indent: -1em;
  padding-left: 1em;
}

body .boxExam.maru .inner,
body .boxExam.batsu .inner {
  gap: 30px;
}

@media (min-width: 768px) {

  body .boxExam.maru .inner,
  body .boxExam.batsu .inner {
    align-items: center;
  }
}

body .boxExam.maru .ttl1 {
  background: #FFB215;
}

body .boxExam.maru .icon1 {
  display: block;
  width: 80px;
  height: 80px;
  border-radius: 50%;
  border: 3px solid #FFB215;
}

@media (max-width: 767.99px) {
  body .boxExam.maru .icon1 {
    margin: 0 auto;
    width: 30px;
    height: 30px;
  }
}

body .boxExam.batsu .ttl1 {
  background: #51A7DD;
}

body .boxExam.batsu .icon1 {
  display: block;
  position: relative;
  width: 80px;
  height: 80px;
}

@media (max-width: 767.99px) {
  body .boxExam.batsu .icon1 {
    margin: 0 auto;
    width: 35px;
    height: 35px;
  }
}

body .boxExam.batsu .icon1::before,
body .boxExam.batsu .icon1::after {
  /* 共通設定 */
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 3px;
  /* 棒の幅（太さ） */
  border-radius: 3px;
  background: #51A7DD;
  height: 100px;
  /* 棒の高さ */
}

@media (max-width: 767.99px) {

  body .boxExam.batsu .icon1::before,
  body .boxExam.batsu .icon1::after {
    height: 45px;
  }
}

body .boxExam.batsu .icon1::before {
  transform: translate(-50%, -50%) rotate(45deg);
}

body .boxExam.batsu .icon1::after {
  transform: translate(-50%, -50%) rotate(-45deg);
}

body .boxExam.-backgreen {
  background: #EDF3EB;
}

body .boxExam.-backgreen .ttl1 {
  background: #6EBB57;
}

body .tablea {
  border-collapse: separate;
  border-spacing: 0 5px;
}

body .tablea .line1 .head1 {
  background: #6FBC58;
  color: #FFF;
  leading-trim: both;
  text-edge: cap;
  font-family: "Noto Sans JP";
  font-size: 14px;
  font-style: normal;
  font-weight: 500;
  line-height: 30px;
  /* 214.286% */
  padding: 10px 9px 10px 10px;
  min-width: 84px;
}

body .tablea .line1 .body1 {
  background: #FFF;
  color: #333;
  leading-trim: both;
  text-edge: cap;
  font-family: "Noto Sans JP";
  font-size: 14px;
  font-style: normal;
  font-weight: 500;
  line-height: 30px;
  /* 214.286% */
  padding: 13px 17px 12px 17px;
}

body .areaTableb .inner,
body .areaTablec .inner {
  overflow-x: auto;
}

@media (min-width: 768px) {

  body .areaTableb .inner,
  body .areaTablec .inner {
    margin-right: -80px;
    padding-right: 80px;
  }
}

@media (max-width: 767.99px) {

  body .areaTableb .inner,
  body .areaTablec .inner {
    margin-right: -20px;
    padding-right: 20px;
  }
}

body .areaTableb .tableMemo1,
body .areaTablec .tableMemo1 {
  color: #333;
  font-family: "Noto Sans JP";
  font-size: 13px;
  font-weight: 400;
  line-height: 24px;
  /* 184.615% */
}

body .areaTableb .tableMemo1 em,
body .areaTablec .tableMemo1 em {
  font-weight: 700;
}

body .areaTableb .tableMemo1 .link1,
body .areaTablec .tableMemo1 .link1 {
  text-decoration: underline;
  color: #0026FF;
}

@media (min-width: 768px) {

  body .areaTableb .tableMemo1,
  body .areaTablec .tableMemo1 {
    margin-top: 20px;
  }
}

@media (max-width: 767.99px) {

  body .areaTableb .tableMemo1,
  body .areaTablec .tableMemo1 {
    margin-top: 10px;
  }
}

body .tableb,
body .tablec {
  border-collapse: separate;
  border-spacing: 5px;
  width: 100%;
}

@media (min-width: 768px) {

  body .tableb,
  body .tablec {
    font-size: 15px;
    line-height: 28px;
  }
}

@media (max-width: 767.99px) {

  body .tableb,
  body .tablec {
    font-size: 10.5px;
    line-height: 19.6px;
  }
}

@media (min-width: 768px) {

  body .tableb.minWidth1400,
  body .tablec.minWidth1400 {
    min-width: 1400px;
  }

  body .tableb.minWidth1300,
  body .tablec.minWidth1300 {
    min-width: 1300px;
  }

  body .tableb.minWidth1200,
  body .tablec.minWidth1200 {
    min-width: 1200px;
  }

  body .tableb.minWidth1100,
  body .tablec.minWidth1100 {
    min-width: 1100px;
  }

  body .tableb.minWidth1000,
  body .tablec.minWidth1000 {
    min-width: 1000px;
  }

  body .tableb.minWidth900,
  body .tablec.minWidth900 {
    min-width: 900px;
  }

  body .tableb.minWidth800,
  body .tablec.minWidth800 {
    min-width: 800px;
  }

  body .tableb.minWidth700,
  body .tablec.minWidth700 {
    min-width: 700px;
  }

  body .tableb.minWidth600,
  body .tablec.minWidth600 {
    min-width: 600px;
  }

  body .tableb.minWidth500,
  body .tablec.minWidth500 {
    min-width: 500px;
  }

  body .tableb.minWidth400,
  body .tablec.minWidth400 {
    min-width: 400px;
  }
}

@media (max-width: 767.99px) {

  body .tableb.minWidth1400,
  body .tablec.minWidth1400 {
    min-width: 980px;
  }

  body .tableb.minWidth1300,
  body .tablec.minWidth1300 {
    min-width: 910px;
  }

  body .tableb.minWidth1200,
  body .tablec.minWidth1200 {
    min-width: 840px;
  }

  body .tableb.minWidth1100,
  body .tablec.minWidth1100 {
    min-width: 770px;
  }

  body .tableb.minWidth1000,
  body .tablec.minWidth1000 {
    min-width: 700px;
  }

  body .tableb.minWidth900,
  body .tablec.minWidth900 {
    min-width: 630px;
  }

  body .tableb.minWidth800,
  body .tablec.minWidth800 {
    min-width: 560px;
  }

  body .tableb.minWidth700,
  body .tablec.minWidth700 {
    min-width: 490px;
  }

  body .tableb.minWidth600,
  body .tablec.minWidth600 {
    min-width: 420px;
  }

  body .tableb.minWidth500,
  body .tablec.minWidth500 {
    min-width: 350px;
  }

  body .tableb.minWidth400,
  body .tablec.minWidth400 {
    min-width: 280px;
  }
}

body .tableb tbody,
body .tablec tbody {
  width: 100%;
}

body .tableb tr,
body .tablec tr {
  width: 100%;
}

body .tableb th,
body .tablec th {
  color: #333;
  font-family: "Zen Maru Gothic";
  font-size: 20px;
  font-weight: bold;
  background: #EFEDEE;
  text-align: center;
}

@media (min-width: 768px) {

  body .tableb th,
  body .tablec th {
    font-size: 20px;
    /* line-height: 30px; */
    /* 200% */
    padding: 12px 20px;
  }
}

@media (max-width: 767.99px) {

  body .tableb th,
  body .tablec th {
    font-size: 15px;
    line-height: 21px;
    /* 200% */
    padding: 8.4px 14px;
  }
}

body .tableb td,
body .tablec td {
  color: #333;
  font-family: "Zen Maru Gothic";
  font-size: 20px;
  font-weight: bold;
  background: #EDF3EB;
  text-align: center;
}

@media (min-width: 768px) {

  body .tableb td,
  body .tablec td {
    font-size: 18px;
    line-height: 26px;
    padding: 16px 8px;
    min-height: 84px;
    height: 84px;
  }
}

@media (max-width: 767.99px) {

  body .tableb td,
  body .tablec td {
    font-size: 15px;
    line-height: 18.2px;
    /* 200% */
    padding: 8.4px 8px;
  }
}

body .tableb th.left,
body .tableb td.left,
body .tablec th.left,
body .tablec td.left {
  text-align: left;
}

body .tableb th.line-height-s,
body .tableb td.line-height-s,
body .tablec th.line-height-s,
body .tablec td.line-height-s {
  line-height: 1.2;
}

body .tableb th .link1,
body .tableb td .link1,
body .tablec th .link1,
body .tablec td .link1 {
  text-decoration: underline;
  color: #0026FF;
}

body .tableb th .s,
body .tableb td .s,
body .tablec th .s,
body .tablec td .s {
  font-weight: 400;
}

body .tableb th .small1,
body .tableb td .small1,
body .tablec th .small1,
body .tablec td .small1 {
  font-size: 11px;
}

body .tableb th .small2,
body .tableb td .small2,
body .tablec th .small2,
body .tablec td .small2 {
  font-size: 10px;
  font-weight: 400;
}

body .tableb th em,
body .tableb td em,
body .tablec th em,
body .tablec td em {
  color: #F78640;
  font-weight: 700;
}

body .tableb tr.colorO th,
body .tablec tr.colorO th {
  color: #FFF;
  font-family: "Zen Maru Gothic";
  font-weight: 700;
  background: #6EBB57;
}

@media (min-width: 768px) {

  body .tableb tr.colorO th,
  body .tablec tr.colorO th {
    font-size: 20px;
    line-height: 30px;
    /* 150% */
    padding: 15px 20px;
  }
}

@media (max-width: 767.99px) {

  body .tableb tr.colorO th,
  body .tablec tr.colorO th {
    font-size: 14px;
    line-height: 21px;
    /* 200% */
    padding: 10.5px 14px;
  }
}

body .tableb tr.colorY th,
body .tableb tr.colorY td,
body .tablec tr.colorY th,
body .tablec tr.colorY td {
  background: #D1E47D;
}

body .tableb tr.colorY th.left,
body .tablec tr.colorY th.left {
  background-color: #EBEBEB;
}

body .tableb tr.colorY th.p10,
body .tableb tr.colorY td.p10,
body .tablec tr.colorY th.p10,
body .tablec tr.colorY td.p10 {
  padding-top: 2px;
  padding-bottom: 2px;
}

body .tableb tr.colorY th.nowrap,
body .tableb tr.colorY td.nowrap,
body .tablec tr.colorY th.nowrap,
body .tablec tr.colorY td.nowrap {
  white-space: nowrap;
}

body .tableb tr.colorY th.par10,
body .tableb tr.colorY td.par10,
body .tablec tr.colorY th.par10,
body .tablec tr.colorY td.par10 {
  width: 10%;
}

body .tableb tr.colorY th.par20,
body .tableb tr.colorY td.par20,
body .tablec tr.colorY th.par20,
body .tablec tr.colorY td.par20 {
  width: 20%;
}

body .tableb tr.colorY th.par30,
body .tableb tr.colorY td.par30,
body .tablec tr.colorY th.par30,
body .tablec tr.colorY td.par30 {
  width: 30%;
}

body .tableb tr.colorY th.par40,
body .tableb tr.colorY td.par40,
body .tablec tr.colorY th.par40,
body .tablec tr.colorY td.par40 {
  width: 40%;
}

body .tableb tr.colorY th.par50,
body .tableb tr.colorY td.par50,
body .tablec tr.colorY th.par50,
body .tablec tr.colorY td.par50 {
  width: 50%;
}

body .tableb tr.colorY th.par60,
body .tableb tr.colorY td.par60,
body .tablec tr.colorY th.par60,
body .tablec tr.colorY td.par60 {
  width: 60%;
}

body .tableb tr.colorY th.par70,
body .tableb tr.colorY td.par70,
body .tablec tr.colorY th.par70,
body .tablec tr.colorY td.par70 {
  width: 70%;
}

body .tableb tr.colorY th.par80,
body .tableb tr.colorY td.par80,
body .tablec tr.colorY th.par80,
body .tablec tr.colorY td.par80 {
  width: 80%;
}

body .tableb tr.colorG th,
body .tablec tr.colorG th {
  background: #BBBBBB;
}

body .tableb tr.colorG td,
body .tablec tr.colorG td {
  background: rgba(255, 216, 134, 0.4);
}

body .tablec thead tr th.-clear {
  background: unset;
}


body .tablec tr:first-child th {
  border-radius: 10px 0px 0 0;
  background: url(../img/common/tablea_bg.jpg.webp) center center/400px 400px repeat;
}

body .tablec thead tr th,
body .tablec thead tr:first-child th {
  border-radius: 10px 10px 0 0;
}

body .tablec tbody tr th,
body .tablec tbody tr:first-child th {
  text-align: left;
  background: #6EBB57;
  color: #fff;
  font-family: "Zen Maru Gothic";
  font-size: 20px;
  font-weight: bold;
}

body .tablec tbody tr.-wide th,
body .tablec tbody tr.-wide td {
  padding: 60px 15px;
}

.no-webp body .tablec tr:first-child th {
  background-image: url(../img/common/tablea_bg.jpg);
}

body .tablec tr.colorO th {
  background: rgba(247, 134, 64, 0.4);
}

body .tablec tr.colorO td {
  background: rgba(247, 134, 64, 0.15);
}

body .tablec tr.colorY th {
  background: rgba(255, 178, 21, 0.4);
}

body .tablec tr.colorY td {
  background: rgba(247, 184, 54, 0.2);
}

body .tablec tr.colorG th {
  background: rgba(110, 187, 87, 0.4);
}

body .tablec tr.colorG td {
  background: rgba(110, 187, 87, 0.2);
}

body .tablec tr.colorP th {
  background: rgba(237, 121, 128, 0.4);
}

body .tablec tr.colorP td {
  background: rgba(237, 121, 128, 0.2);
}

@media (max-width: 767.99px) {
  body .tablec .linka .text1 {
    font-size: 12.6px;
    line-height: 23.8px;
  }

  body .tablec .linka .icon1 {
    width: 12.6px;
    height: 12.6px;
  }

  body .tablec .linka .icon1 svg {
    width: 3.5px;
    height: 5.6px;
  }

  body .tablec .linka.big .text1 {
    font-size: 14px;
    line-height: 23.8px;
  }

  body .tablec .linka.big .icon1 {
    width: 28px;
    height: 28px;
  }

  body .tablec .linka.big .icon1 svg {
    width: 7.7px;
    height: 12.6px;
  }
}

body .areaDla {
  display: flex;
  flex-direction: column;
}

body .areaDla .dla:first-child {
  border-top: 1px solid #6EBB57;
}

body .dla {
  display: flex;
  border-bottom: 1px solid #6EBB57;
}

@media (max-width: 767.99px) {
  body .dla {
    flex-direction: column;
  }
}

@media (min-width: 768px) {
  body .dla .dt1 {
    padding: 30px;
    width: 30%;
    flex-shrink: 1;
  }
}

@media (max-width: 767.99px) {
  body .dla .dt1 {
    padding: 20px 20px 10px;
    width: 100%;
  }
}

body .dla .dt1 .text1 {
  color: #6EBB57;
  font-family: "Noto Sans JP";
  font-size: 15px;
  font-style: normal;
  font-weight: 700;
  line-height: normal;
  margin: -7px -0.1em -7px 0;
}

body .dla .dd1 {
  display: flex;
  flex-direction: column;
  width: 100%;
}

@media (min-width: 768px) {
  body .dla .dd1 {
    padding: 30px;
    gap: 30px;
  }
}

@media (max-width: 767.99px) {
  body .dla .dd1 {
    padding: 10px 20px 20px;
    gap: 20px;
  }
}

body .dla .dd1 .text1 {
  color: #333;
  font-family: "Noto Sans JP";
  font-size: 15px;
  font-style: normal;
  font-weight: 500;
  line-height: 25px;
  /* 166.667% */
  margin: -7px -0.1em -7px 0;
}

body .areaFixed {
  width: 100%;
  height: 100px;
  padding: 0 10px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  max-width: 600px;
  position: fixed;
  inset: auto auto 0 auto;
  margin: 0 auto;
  z-index: 100;
}

body .areaFixed::before {
  content: "";
  width: 100%;
  height: 100%;
  background: url(../img/common/bg_color_y.jpg.webp) center center/375px 950px repeat;
  opacity: 0.8;
  position: absolute;
  inset: 0 0 0 0;
  margin: 0 auto;
  z-index: -1;
}

.no-webp body .areaFixed::before {
  background-image: url(../img/common/bg_color_y.jpg);
}

body .areaIntroduction {
  background-color: #FFF;
  border-radius: 10px;
  overflow: hidden;
}

@media (min-width: 768px) {
  body .areaIntroduction {
    padding: 40px 40px;
    margin: 40px auto;
  }
}

@media (max-width: 767.99px) {
  body .areaIntroduction {
    padding: 40px 40px;
    margin: 40px auto;
  }
}

body .areaIndexWrap {
  display: none;
}

body .areaIndex {
  display: none;
  padding-left: 20px;
}

body .areaIndex .indexHead1 {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
}

body .areaIndex .indexHead1 .text1 {
  color: #F78640;
  font-family: "Noto Sans JP";
  font-size: 12px;
  font-weight: 700;
  flex-shrink: 0;
}

body .areaIndex .indexHead1::after {
  content: "";
  display: block;
  width: 100%;
  height: 1px;
  background-color: #F78640;
}

body .areaIndex .indexBody1 {
  padding: 0 0 7px;
}

body .areaIndex .indexBody1 .indexItem {
  color: #333;
  font-family: "Noto Sans JP";
  font-size: 13px;
  font-weight: 400;
  line-height: 26px;
  /* 200% */
}

body .areaIndex .indexBody1 .indexItem:hover {
  opacity: 1;
  text-decoration: underline;
}

body#homereha .areaIndex.homereha,
body#dayservice .areaIndex.dayservice,
body#dayreha .areaIndex.dayreha,
body#shortstay .areaIndex.shortstay,
body#shortreha .areaIndex.shortreha,
body#nursinghome .areaIndex.nursinghome,
body#healthfacility .areaIndex.healthfacility,
body#grouphome .areaIndex.grouphome,
body#outpatient .areaIndex.outpatient,
body#inpatientreha .areaIndex.inpatientreha {
  display: block;
}

body#frontier .areaIndex.frontier,
body#toukoen .areaIndex.toukoen,
body#hokota .areaIndex.hokota {
  display: block;
}

body#community .areaIndexWrap {
  display: block;
  background: #FDF1D7;
  padding: 15px 20px 5px;
  border-radius: 0 0 5px 5px;
  overflow: hidden;
  transition: 0.5s;
  margin-top: -15px;
  position: relative;
}

body#community .areaIndex.community {
  display: block;
}

body .areaPhilosophy {
  position: relative;
  height: 618px;
  max-width: 100%;
  width: 375px;
  margin: 0 auto;
}

body .areaPhilosophy .bg345 {
  position: absolute;
  inset: 0 auto auto -81px;
  justify-content: flex-start;
  padding: 45px 64px 0 0;
}

body .areaPhilosophy .bg280 {
  position: absolute;
  inset: auto -39px 0 auto;
  justify-content: flex-start;
  padding: 45px 59px 0 0;
}

body .areaPhilosophy .bg01,
body .areaPhilosophy .bg02,
body .areaPhilosophy .bg03 {
  border-radius: 50%;
  overflow: hidden;
  position: absolute;
}

body .areaPhilosophy .bg01 {
  width: 210px;
  height: 210px;
  inset: -33px -58px auto auto;
}

body .areaPhilosophy .bg02 {
  width: 120px;
  height: 120px;
  inset: 177px 77px auto auto;
}

body .areaPhilosophy .bg03 {
  width: 205px;
  height: 205px;
  inset: auto auto 40px -18px;
}

body .areaFva {
  display: flex;
  position: relative;
  width: 100%;
  overflow: hidden;
}

@media (min-width: 768px) {
  body .areaFva {
    align-items: center;
    height: 350px;
  }
}

@media (max-width: 767.99px) {
  body .areaFva {
    height: 500px;
    max-height: calc(100vh - 50px);
  }
}

body .areaFva .bg1 {
  width: 100%;
  height: 100%;
  position: absolute;
  inset: 0 auto auto 0;
  z-index: -1;
}

body .areaFva .bg1::before {
  position: absolute;
  content: "";
  inset: 0;
  background: rgba(255, 255, 255, 0.6);
}

body .areaFva .bg1 img {
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: top center;
  object-position: top center;
  height: 100%;
  width: 100%;
}

@media (max-width: 767.99px) {
  body .areaFva .bg1.-clinicald img {
    object-position: top 100% left 28%;
  }
}

body .areaFva .logo1 {
  position: absolute;
  z-index: -1;
}

@media (min-width: 768px) {
  body .areaFva .logo1 {
    width: 628px;
    height: 477px;
    inset: -35px 100px auto auto;
  }
}

@media (max-width: 767.99px) {
  body .areaFva .logo1 {
    width: 377px;
    height: 286px;
    inset: auto -100px -90px auto;
  }
}

@media (min-width: 768px) {
  body .areaFva .textGrp1 {
    padding: 40px 100px;
    width: 100%;
  }
}

@media (max-width: 767.99px) {
  body .areaFva .textGrp1 {
    padding: 20px 20px;
    width: 100%;
  }
}

body .areaFva .textGrp1 .tag1 {
  display: inline-block;
  border-radius: 5px;
  background: #6FBC58;
  padding: 12px 15px;
}

body .areaFva .textGrp1 .tag1 .text1 {
  color: #FFF;
  font-family: "Noto Sans JP";
  font-size: 20px;
  font-style: normal;
  font-weight: 700;
  line-height: 26px;
  /* 130% */
}

body .areaFva .textGrp1 .ttl1 {
  color: #333;
  font-family: "Zen Maru Gothic";
  font-style: normal;
  font-weight: 700;
  line-height: normal;
}

@media (min-width: 768px) {
  body .areaFva .textGrp1 .ttl1 {
    font-size: 36px;
    margin-top: 30px;
  }
}

@media (max-width: 767.99px) {
  body .areaFva .textGrp1 .ttl1 {
    font-size: 26px;
    margin-top: 20px;
  }
}

@media (min-width: 768px) {
  body .areaFva .textGrp1 .breadcrumbs {
    margin-top: 30px;
  }
}

@media (max-width: 767.99px) {
  body .areaFva .textGrp1 .breadcrumbs {
    margin-top: 20px;
  }
}

body .areaFva .textGrp1 .ttl2 {
  color: #333;
  leading-trim: both;
  text-edge: cap;
  font-family: "Zen Maru Gothic";
  font-size: 18px;
  font-style: normal;
  font-weight: 500;
  line-height: 30px;
  /* 166.667% */
}

@media (min-width: 768px) {
  body .areaFva .textGrp1 .ttl2 {
    margin-top: 40px;
  }
}

@media (max-width: 767.99px) {
  body .areaFva .textGrp1 .ttl2 {
    margin-top: 28px;
  }
}

body .areaFva .textGrp1 .time {
  padding-top: 17px;
  font-family: "Noto Sans JP";
  font-size: 15px;
  font-style: normal;
}

body main .sec {
  padding: 40px 0;
  margin: 0;
  overflow: hidden;
}

body main .sec.pt0 {
  padding-top: 0;
}

body main .sec.pb0 {
  padding-bottom: 0;
}

body main .sec.p0 {
  padding: 0;
}

@media (min-width: 768px) {
  body main .sec.pcpt80 {
    padding-top: 80px;
  }
}

body #spFooter {
  position: relative;
  padding: 120px 0 37px;
  margin-top: -70px;
  z-index: 1;
  overflow: hidden;
}

body #spFooter .bg {
  width: 100%;
  min-height: 100%;
  -webkit-mask-image: url(../img/common/h2a_clip.svg), linear-gradient(#000, #000);
  mask-image: url(../img/common/h2a_clip.svg), linear-gradient(#000, #000);
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center 0, center 100px;
  mask-position: center 0, center 100px;
  -webkit-mask-size: 100% auto, 100% 100%;
  mask-size: 100% auto, 100% 100%;
  -webkit-mask-composite: source-over;
  mask-composite: add;
  padding: 100px 0 0;
  position: absolute;
  inset: 0 auto auto auto;
  margin: 0 auto;
  z-index: -1;
  background: url(../img/common/foot_bg.jpg.webp) center center/100% 266.6666666667% repeat;
}

.no-webp body #spFooter .bg {
  background-image: url(../img/common/foot_bg.jpg);
}

body #spFooter .bg .bgLogo {
  display: block;
  width: 384px;
  height: 289px;
  position: absolute;
  inset: -7px -43px auto auto;
  fill: #FFF;
  opacity: 0.2;
  z-index: 1;
}

body #spFooter .footArea1 .textLinkList1 {
  margin: -10px 0;
}

body #spFooter .footArea1 .textLinkList1>.item {
  display: flex;
  align-items: center;
  padding-left: 12px;
  position: relative;
}

body #spFooter .footArea1 .textLinkList1>.item::before {
  content: "";
  display: block;
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background-color: #FFF;
  position: absolute;
  inset: 10px auto auto 0;
  flex-shrink: 0;
}

body #spFooter .footArea1 .textLinkList1>.item .text1 {
  color: #FFF;
  leading-trim: both;
  text-edge: cap;
  font-family: "Noto Sans JP";
  font-size: 15px;
  font-style: normal;
  font-weight: 700;
  line-height: 28px;
  flex-shrink: 0;
}

body #spFooter .footArea1 .textLinkList1>.item.line::after {
  content: "";
  display: block;
  width: 100%;
  height: 1px;
  background-color: #FFF;
  margin-left: 10px;
}

body #spFooter .footArea1 .textLinkList2Grp {
  margin-top: 25px;
  display: flex;
  gap: 30px;
  padding-bottom: 30px;
}

body #spFooter .footArea1 .textLinkList2Grp.bbline {
  border-bottom: 1px solid #FFF;
}

body #spFooter .footArea1 .textLinkList2 {
  margin: -10px 0;
  display: flex;
  flex-wrap: wrap;
  -moz-column-gap: 8px;
  column-gap: 8px;
}

body #spFooter .footArea1 .textLinkList2>.item {
  min-width: calc((100% - 8px) / 2);
  flex-shrink: 0;
}

body #spFooter .footArea1 .textLinkList2>.item .text1 {
  color: #FFF;
  leading-trim: both;
  text-edge: cap;
  font-family: "Noto Sans JP";
  font-size: 15px;
  font-style: normal;
  font-weight: 400;
  line-height: 36px;
  /* 240% */
}

body #spFooter .footArea1 .textLinkList2>.item .text1::before {
  content: "- ";
}

body #spFooter .footArea2 .footTtl1 {
  color: #FFF;
  text-align: center;
  leading-trim: both;
  text-edge: cap;
  font-family: "Zen Maru Gothic";
  font-size: 17px;
  font-style: normal;
  font-weight: 700;
  line-height: 24px;
  /* 141.176% */
  margin: -6px -0.13m -6px 0;
}

body #spFooter .footArea2 .footLogo {
  display: block;
  width: 260px;
  height: 65px;
  fill: #FFF;
  margin: 0 auto;
}

body #spFooter .footArea2 .copyright {
  color: #FFF;
  leading-trim: both;
  text-edge: cap;
  font-family: "Noto Sans JP";
  font-size: 10px;
  font-style: normal;
  font-weight: 400;
  line-height: 26px;
  /* 260% */
  text-align: center;
  margin: -8px -0.1em -8px 0;
}

body #menu_popup .popup_body {
  padding: 50px 0;
  position: absolute;
  inset: 0 0 0 0;
  margin: auto;
  width: 100%;
  height: 100%;
  overflow-y: scroll;
  max-width: 600px;
}

body.pcPage #menu_popup .popup_body {
  max-width: none;
  background: #EDF3EB;
}

body.pcPage #menu_popup .gMenuBody {
  margin: 0 auto;
  padding: 40px 40px;
  max-width: 400px;
}

body.pcPage .pcMenu .gMenuBody .logoCol1 {
  display: block;
  margin: 0 auto 53px;
  width: 155px;
  height: 122px;
}

body.pcPage .pcMenu .gMenuBody .logoCol1 img {
  margin: 0 auto;
}

body #menu_popup .areaMenua {
  position: relative;
  width: 100%;
  padding: 50px 0;
}

body #menu_popup .areaMenua .menuArea2 .areaHead1 {
  display: flex;
  align-items: center;
  gap: 17px;
}

body #menu_popup .areaMenua .menuArea2 .areaHead1 .text1 {
  color: #333;
  leading-trim: both;
  text-edge: cap;
  font-family: "Zen Maru Gothic";
  font-size: 17px;
  font-style: normal;
  font-weight: 700;
  line-height: 42px;
  /* 247.059% */
  white-space: nowrap;
  flex-shrink: 0;
  margin: -15px -0.1em -15px 0;
}

body #menu_popup .areaMenua .menuArea2 .areaHead1::after {
  content: "";
  display: block;
  width: 100%;
  height: 1px;
  background-color: #333;
}

body #menu_popup .areaMenua .menuGrp .navLink {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 15px 15px 13px 20px;
  border-radius: 5px 5px 0 0;
}

body #menu_popup .areaMenua .menuGrp .navLink.colorG {
  background-color: #9DCB64;
}

body #menu_popup .areaMenua .menuGrp .navLink.colorB {
  background-color: #51A7DD;
}

body #menu_popup .areaMenua .menuGrp .navLink.colorO {
  background-color: #6EBB57;
}

body #menu_popup .areaMenua .menuGrp .navLink.colorP {
  background-color: #ED7980;
}

body #menu_popup .areaMenua .menuGrp .navLink.colorG2 {
  background-color: #6FBC58;
}

body #menu_popup .areaMenua .menuGrp .navLink.colorO2 {
  background-color: #F18E38;
}

body #menu_popup .areaMenua .menuGrp .navLink.colorW {
  background-color: #999999;
}

body #menu_popup .areaMenua .menuGrp .navLink .text1 {
  color: #FFF;
  leading-trim: both;
  text-edge: cap;
  font-family: "Zen Maru Gothic";
  font-size: 17px;
  font-style: normal;
  font-weight: 700;
  line-height: 26px;
  /* 152.941% */
  margin: -7px -0.1em -7px 0;
}

body #menu_popup .areaMenua .menuGrp .navLink .icon_toggle {
  width: 9px;
  height: 15px;
  transition: 0.5s;
}

body #menu_popup .areaMenua .menuGrp .submenu_open:checked+.navLink .icon_toggle {
  transform: scale(1, -1);
}

body #menu_popup .areaMenua .menuGrp .submenu_open {
  display: none;
}

body #menu_popup .areaMenua .menuGrp .submenu_open:checked~.folder {
  max-height: 2000px;
  padding: 22px 5.1282051282% 25px;
}

body #menu_popup .areaMenua .menuGrp .folder {
  background: #FFF;
  max-height: 0;
  padding: 0 5.3333333333%;
  border-radius: 0 0 5px 5px;
  overflow: hidden;
  transition: 0.5s;
}

body #menu_popup .areaMenua .menuArea3 .areaHead1 {
  color: #333;
  text-align: center;
  leading-trim: both;
  text-edge: cap;
  font-family: "Zen Maru Gothic";
  font-size: 17px;
  font-style: normal;
  font-weight: 700;
  line-height: 24px;
  /* 141.176% */
  margin: -6px -0.1em -6px 0;
}

body #menu_popup .areaMenua .textLinkList1 {
  margin: -9px 0;
}

body #menu_popup .areaMenua .textLinkList1>.item .text1 {
  color: #333;
  leading-trim: both;
  text-edge: cap;
  font-family: "Zen Maru Gothic";
  font-size: 17px;
  font-style: normal;
  font-weight: 700;
  line-height: 30px;
  margin: -9px -0.1em -9px 0;
  position: relative;
  padding-left: 12px;
}

.no-touchevents body #menu_popup .areaMenua .textLinkList1>.item .text1 {
  transition: all 0.3s ease-out;
  cursor: pointer;
}

.no-touchevents body #menu_popup .areaMenua .textLinkList1>.item .text1:hover {
  opacity: 0.5;
}

body #menu_popup .areaMenua .textLinkList1>.item .text1::before {
  content: "";
  display: block;
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background-color: #333333;
  position: absolute;
  inset: 11px auto auto 0;
}

body #menu_popup .areaMenua .textLinkList2 {
  display: flex;
  justify-content: center;
}

body #menu_popup .areaMenua .textLinkList2>.item {
  display: flex;
  align-items: center;
}

body #menu_popup .areaMenua .textLinkList2>.item .text1 {
  color: #333;
  leading-trim: both;
  text-edge: cap;
  font-family: "Noto Sans JP";
  font-size: 15px;
  font-style: normal;
  font-weight: 500;
  line-height: 42px;
  /* 280% */
  padding-right: 30px;
  position: relative;
}

body #menu_popup .areaMenua .textLinkList2>.item .text1::before {
  content: "- ";
  display: inline;
}

body #menu_popup .areaMenua .textLinkList2>.item .text1 .icon_arrow {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 20px;
  height: 20px;
  border-radius: 50%;
  position: absolute;
  inset: 11px 0 auto auto;
}

body #menu_popup .areaMenua .textLinkList2>.item .text1 .icon_arrow.colorG {
  background-color: #9DCB64;
}

body #menu_popup .areaMenua .textLinkList2>.item .text1 .icon_arrow.colorB {
  background-color: #51A7DD;
}

body #menu_popup .areaMenua .textLinkList2>.item .text1 .icon_arrow.colorO {
  background-color: #6EBB57;
}

body #menu_popup .areaMenua .textLinkList2>.item .text1 .icon_arrow.colorP {
  background-color: #ED7980;
}

body #menu_popup .areaMenua .textLinkList2>.item .text1 .icon_arrow.colorG2 {
  background-color: #6FBC58;
}

body #menu_popup .areaMenua .textLinkList2>.item .text1 .icon_arrow.colorO2 {
  background-color: #F18E38;
}

body #menu_popup .areaMenua .textLinkList2>.item .text1 .icon_arrow.colorW {
  background-color: #999999;
}

body #menu_popup .areaMenua .textLinkList2>.item .text1 .icon_arrow::after {
  content: "";
  display: block;
  width: 6px;
  height: 10px;
  background: url(../svg/icons/icon_arrow_r.svg) center center/cover no-repeat;
}

/*
// デバッグ用↓↓　DEBUG ↓↓
body.pcPage {
    @include media(pc) {
        .pcMenu {
            display: none;
        }
        #bodyWrapper {
            width: 100%;
        }
    }
}
// デバッグ用↑↑
*/
#spHeader {
  width: 100%;
  height: 50px;
  padding: 0 10px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  background-color: #FFF;
  max-width: 600px;
  position: fixed;
  z-index: 300;
}

#spHeader>.wrapper {
  width: 100%;
}

#spHeader .logoGrp {
  display: flex;
  align-items: center;
  width: 254px;
  height: 35px;
}

#spHeader .logoGrp .headLogo {
  display: block;
  width: 140px;
  height: 35px;
}

#spHeader .logoGrp .headLogo img {
  width: 140px;
  height: 35px;
}

#spHeader .logoGrp .headText1 {
  color: #333;
  leading-trim: both;
  text-edge: cap;
  font-family: "Zen Maru Gothic";
  font-size: 15px;
  font-style: normal;
  font-weight: 700;
  line-height: 30px;
  /* 200% */
  white-space: nowrap;
}

@media (max-width: 374.99px) {
  #spHeader .logoGrp .headText1 {
    font-size: 12px;
  }
}

#spHeader .btnArea1 {
  position: absolute;
  inset: 0 0 auto auto;
  caret-color: transparent;
}

#spHeader .btnArea1 .btnHeadMenu {
  display: flex;
  flex-flow: column;
  align-items: flex-end;
  gap: 5px;
  width: 80px;
  height: 80px;
  padding: 19px 16px 0 0;
  background: url(../img/common/menu_bg.png.webp) center center/cover no-repeat;
}

.no-webp #spHeader .btnArea1 .btnHeadMenu {
  background-image: url(../img/common/bmenu_bg.png);
}

#spHeader .btnArea1 .btnHeadMenu .icon1 {
  display: block;
  width: 28px;
  height: 3px;
  flex-shrink: 0;
  border-radius: 2px;
  background-color: #FFF;
  transition: all 0.3s ease-out;
}

#spHeader .btnArea1 .btnHeadMenu .menu1 {
  display: block;
  width: 28px;
  height: 7px;
  position: relative;
  text-align: center;
}

#spHeader .btnArea1 .btnHeadMenu .menu1::before {
  content: "MENU";
  display: inline;
  color: #FFF;
  leading-trim: both;
  text-edge: cap;
  font-family: "Noto Sans JP";
  font-size: 9px;
  font-style: normal;
  font-weight: 700;
  line-height: 7px;
  height: 7px;
  width: 100%;
  position: absolute;
  inset: 0 auto auto 0;
}

#menu_open:checked~#spHeader .btnArea1 .btnHeadMenu .icon1:nth-child(1) {
  transform: rotate(135deg);
  margin-top: 8px;
}

#menu_open:checked~#spHeader .btnArea1 .btnHeadMenu .icon1:nth-child(2) {
  transform: rotate(-135deg);
  margin-top: -8px;
}

#menu_open:checked~#spHeader .btnArea1 .btnHeadMenu .icon1:nth-child(3) {
  opacity: 0;
}

#menu_open:checked~#spHeader .btnArea1 .btnHeadMenu .menu1::before {
  content: "CLOSE";
}

#pcHeader {
  width: 100%;
  padding: 10px;
  background-color: #EDF3EB;
  display: flex;
  align-items: center;
  justify-content: space-between;
  position: fixed;
  z-index: 300;
}

@media (min-width: 768px) {
  #pcHeader {
    height: 60px;
  }
}

@media (max-width: 767.99px) {
  #pcHeader {
    height: 60px;
  }
}

#pcHeader>.wrapper {
  max-width: 1280px;
  width: 100%;
  margin: 0 auto;
  display: flex;
  align-items: center;
  justify-content: center;
}

#pcHeader .headLogo {
  display: block;
  width: 140px;
  height: 35px;
}

#pcHeader .headLogo img {
  width: 140px;
  height: 35px;
}

#pcHeader .gMenuList {
  display: flex;
  align-items: center;
  gap: 30px;
  margin-left: 35px;
}

#pcHeader .gMenuList>.item {
  line-height: 15px;
}

#pcHeader .gMenuList>.item a {
  color: #333;
  font-family: "Zen Maru Gothic";
  font-size: 15px;
  font-style: normal;
  font-weight: 700;
  line-height: 15px;
}

#pcHeader .gMenuList>.item.active a {
  color: #FFB215;
  position: relative;
  display: inline-block;
}

#pcHeader .gMenuList>.item.active a::after {
  content: "";
  display: block;
  width: 100%;
  height: 1px;
  background-color: #FFB215;
  position: absolute;
  inset: auto 0 -3px 0;
  margin: 0 auto;
}

#pcHeader .telBox1 {
  display: flex;
  flex-flow: column;
  margin-left: 33px;
}

#pcHeader .telBox1 .tel1 {
  display: flex;
  align-items: center;
}

#pcHeader .telBox1 .tel1 .icon1 {
  display: block;
  width: 10px;
  height: 14px;
  fill: #F8B836;
  margin: 0 3px 8px 0px;
}

#pcHeader .telBox1 .tel1 .icon1>img {
  width: 100%;
  height: 100%;
}

#pcHeader .telBox1 .tel1 .text1 {
  color: #F8B836;
  font-family: "Noto Sans JP";
  font-size: 20px;
  font-style: normal;
  font-weight: 600;
  line-height: normal;
}

@media (min-width: 1180px) {
  #pcHeader .telBox1>a {
    pointer-events: none;
  }
}

@media (max-width: 1179.99px) {
  #pcHeader .telBox1 {
    position: relative;
    background: #F8B836;
    border-radius: 5px;
    padding: 3px 6px;
    margin-left: 15px;
  }

  #pcHeader .telBox1>a {
    display: block;
    height: 100%;
    width: 100%;
    font-size: 0;
    position: absolute;
    z-index: 9;
    top: 0;
    left: 0;
  }

  #pcHeader .telBox1 .tel1 {
    justify-content: center;
    align-items: flex-start;
    color: #fff;
  }

  #pcHeader .telBox1 .tel1 .icon1 {
    fill: #fff;
    width: 7px;
    height: 7px;
    padding-top: 6px;
  }

  #pcHeader .telBox1 .tel1 .text1 {
    color: #fff;
    font-size: 14px;
  }

  #pcHeader .telBox1 p.tel2 {
    color: #fff;
    font-size: 8px;
    text-align: center;
  }
}

#pcHeader .telBox1 .tel2 {
  color: #333;
  font-family: "Noto Sans JP";
  font-size: 13px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
}

#pcHeader .btnArea1 {
  position: absolute;
  inset: 0 0 auto auto;
  caret-color: transparent;
}

#pcHeader .btnArea1 .btnHeadMenu {
  display: flex;
  flex-flow: column;
  align-items: flex-end;
  gap: 5px;
  width: 80px;
  height: 80px;
  padding: 19px 16px 0 0;
  background: url(../img/common/menu_bg_g.png.webp) center center/cover no-repeat;
}

.no-webp #pcHeader .btnArea1 .btnHeadMenu {
  background-image: url(../img/common/menu_bg_g.png);
}

#pcHeader .btnArea1 .btnHeadMenu .icon1 {
  display: block;
  width: 28px;
  height: 3px;
  flex-shrink: 0;
  border-radius: 2px;
  background-color: #FFF;
  transition: all 0.3s ease-out;
}

#pcHeader .btnArea1 .btnHeadMenu .menu1 {
  display: block;
  width: 28px;
  height: 7px;
  position: relative;
  text-align: center;
}

#pcHeader .btnArea1 .btnHeadMenu .menu1::before {
  content: "MENU";
  display: inline;
  color: #FFF;
  leading-trim: both;
  text-edge: cap;
  font-family: "Noto Sans JP";
  font-size: 9px;
  font-style: normal;
  font-weight: 700;
  line-height: 7px;
  height: 7px;
  width: 100%;
  position: absolute;
  inset: 0 auto auto 0;
}

/* @media (min-width: 1635px) {
  #pcHeader .headLogo {
    display: none;
  }
} */

@media (min-width: 1180px) {
  #pcHeader .btnArea1 {
    display: none;
  }
}

@media (min-width: 1080px) and (max-width: 1179.99px) {
  #pcHeader>.wrapper {
    justify-content: flex-start;
  }

  #pcHeader .gMenuList {
    display: none;
  }

  #pcHeader .telBox1 {
    display: block;
  }

  #pcHeader .btnArea1 {
    display: block;
  }
}

@media (max-width: 1079.99px) and (min-width: 768px) {
  #pcHeader>.wrapper {
    justify-content: flex-start;
  }

  #pcHeader .gMenuList {
    display: none;
  }
}

@media (max-width: 767.99px) {
  #pcHeader>.wrapper {
    justify-content: flex-start;
  }

  #pcHeader .gMenuList {
    display: none;
  }

  #pcHeader .telBox1 {
    display: block;
  }
}

#menu_open:checked~#pcHeader .btnArea1 .btnHeadMenu .icon1:nth-child(1) {
  transform: rotate(135deg);
  margin-top: 8px;
}

#menu_open:checked~#pcHeader .btnArea1 .btnHeadMenu .icon1:nth-child(2) {
  transform: rotate(-135deg);
  margin-top: -8px;
}

#menu_open:checked~#pcHeader .btnArea1 .btnHeadMenu .icon1:nth-child(3) {
  opacity: 0;
}

#menu_open:checked~#pcHeader .btnArea1 .btnHeadMenu .menu1::before {
  content: "CLOSE";
}

.popup_open {
  display: none;
}

.popup_open:checked+.popup {
  opacity: 1;
  pointer-events: auto;
}

.popup {
  width: 100%;
  height: 100%;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 200;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.5s;
}

.popup .bg {
  display: block;
  width: 100%;
  height: 100%;
  background-color: rgba(45, 51, 54, 0.8);
  position: absolute;
  top: 0;
  left: 0;
}

body.fixed {
  position: fixed;
  width: 100%;
  height: 100%;
  left: 0;
}

/*
#popMenu1 {
    >.wrapper {
        width: 100%;
        height: 100%;
		margin: auto;
        background-color: $blackBackground1;
		position: absolute;
		top: 0;
		left: 0;
		right: 0;
		bottom: 0;
		overflow: hidden;
        overflow-y: auto;
    }    

}

#popMenu1 {
    .popBody {
        >.footContent {
            width: 100%;
            display: flex;
            justify-content: space-between;
            @include media(pc) {
                margin-top: 80px;
                height: 398px;
                position: relative;
            }
            @include media(sp) {
                flex-flow: column;
                margin-top: 40px;
            }
        }
    }

    .link1 {
        display: inline-block;
        letter-spacing: 0.1em;
        vertical-align: top;
        @include media(pc) {
            height: 1.4rem;
            font-size: 1.4rem;
        }
        @include media(sp) {
            height: 1.6rem;
            font-size: 1.6rem;
            cursor: pointer;
        }
    }
    .link2 {
        display: inline-block;
        position: relative;
        vertical-align: top;
        @include media(pc) {
            height: 1.2rem;
            font-size: 1.2rem;
            padding-left: 2.8rem;
        }
        @include media(sp) {
            height: 1.4rem;
            font-size: 1.4rem;
            padding-left: 2.0rem;
        }
        .icon {
            display: block;
            width: 0.3rem;
            height: 0.6rem;
            fill: $blackDefault;
            position: absolute;
            top: 0;
            bottom: 0;
            margin: auto 0;
            @include media(pc) {
                left: 1.5rem;
            }
            @include media(sp) {
                left: 1.0rem;
            }

        }
    }
    .link3 {
        display: inline-block;
        vertical-align: top;
        @include media(pc) {
            height: 1.0rem;
            font-size: 1.0rem;
        }
        @include media(sp) {
            height: 1.2rem;
            font-size: 1.2rem;
            letter-spacing: 0.1em;
        }
    }

    .logo {
        display: block;
        @include media(pc) {
            width: 24.0rem;
            height: 4.0rem;
        }
        @include media(sp) {
            width: 21.0rem;
            height: 3.5rem;
        }
        .img {}
    }

} 
*/
#menu_popup .logoCol1 {
  display: none;
}

.footer {
  overflow: hidden;
}

.footer .sec {
  padding: 40px 0;
  background: #FFF9CB;
}

.footer #footer01 {
  background-color: #EDF3EB;
}

.footer #footer01 .btnd {
  max-width: 480px;
  margin: 0 auto;
}

.footer #footer01 .btnd.-grad {
  background: url(../img/common/btna_bg_orange.png.webp) no-repeat center / cover;
}

@media (min-width: 768px) {
  .footer #footer01 {
    padding-left: 60px;
    padding-right: 60px;
    padding-bottom: 340px;
  }
}

@media (max-width: 767.99px) {
  .footer #footer01 {
    padding-bottom: 250px;
  }
}

.footer #footer02 {
  background-color: #FFF9CB;
}

@media (min-width: 768px) {
  .footer #footer02 {
    padding: 40px 60px 0;
  }
}

@media (max-width: 767.99px) {
  .footer #footer02 {
    padding-top: 30px;
    padding-bottom: 0;
  }
}

.footer #footer02 .boxOthers {
  position: relative;
  z-index: 2;
}

.footer #footer03 {
  width: 100%;
  position: relative;
  display: flex;
  flex-flow: column;
  align-items: center;
  justify-content: center;
  z-index: 1;
}

@media (min-width: 768px) {
  .footer #footer03 {
    margin-top: -213px;
    padding: 197px 0 0;
  }
}

@media (max-width: 767.99px) {
  .footer #footer03 {
    margin-top: -190px;
    padding: 77px 0 0;
  }
}

.footer #footer03::before {
  content: "";
  display: block;
  width: 100%;
  min-height: 100%;
  min-height: 400px;
  -webkit-mask-image: url(../img/common/footer_clip.svg), linear-gradient(#000, #000);
  mask-image: url(../img/common/footer_clip.svg), linear-gradient(#000, #000);
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center 0, center 190px;
  mask-position: center 0, center 190px;
  -webkit-mask-size: 100% auto, 100% 100%;
  mask-size: 100% auto, 100% 100%;
  -webkit-mask-composite: source-over;
  mask-composite: add;
  padding: 0 0 0;
  position: absolute;
  inset: 0 auto auto auto;
  margin: 0 auto;
  z-index: -1;
  background: #CDE5BC;
}

.no-webp .footer #footer03::before {
  background-image: url(../img/common/footer_bg.jpg);
}

@media (max-width: 1279.99px) and (min-width: 1080px) {
  .footer #footer03::before {
    -webkit-mask-position: center 0, center 220px;
    mask-position: center 0, center 220px;
  }
}

@media (max-width: 767.99px) {
  .footer #footer03::before {
    -webkit-mask-position: center 0, center 70px;
    mask-position: center 0, center 70px;
  }
}

.footer #footer03>.bg1 {
  width: 100%;
  background: #CDE5BC;
}

.no-webp .footer #footer03>.bg1 {
  background-image: url(../img/common/footer_bg.jpg);
}

@media (min-width: 768px) {
  .footer #footer03>.bg1 {
    padding: 0 60px 110px;
  }
}

@media (max-width: 767.99px) {
  .footer #footer03>.bg1 {
    padding: 0 20px 30px;
    padding-bottom: 30px;
  }
}

.footer #footer03>.bg1>.wrapper {
  position: relative;
  z-index: 1;
}

.footer #footer03 .footLogoArea .areaText1 {
  color: #333;
  font-family: "Zen Maru Gothic";
  font-style: normal;
  font-weight: 500;
  text-align: center;
}

@media (min-width: 768px) {
  .footer #footer03 .footLogoArea .areaText1 {
    font-size: 30px;
    line-height: 36px;
    margin: -7px -0.1em -8px 0;
  }
}

@media (max-width: 767.99px) {
  .footer #footer03 .footLogoArea .areaText1 {
    font-size: 18px;
    line-height: 34px;
    margin: 28px -0.1em -7px 0;
  }
}

.footer #footer03 .footLogoArea .areaLogo1 {
  display: block;
  margin: 30px auto 0;
}

@media (min-width: 768px) {
  .footer #footer03 .footLogoArea .areaLogo1 {
    width: 446px;
    height: 103px;
    margin: -55px auto 64px;
  }
}

@media (max-width: 767.99px) {
  .footer #footer03 .footLogoArea .areaLogo1 {
    width: 308px;
    height: 71px;
    margin: 30px auto 0;
  }
}

.footer #footer03 .footLogoArea .areaLogo1 img {
  width: 100%;
  height: auto;
}

.footer #footer03 .footMenuArea {
  max-width: 1088px;
  width: 100%;
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 70px 40px;
  container-type: inline-size;
}

@media (min-width: 768px) {
  .footer #footer03 .footMenuArea {
    margin: 77px auto 0;
  }
}

@media (max-width: 767.99px) {
  .footer #footer03 .footMenuArea {
    margin: 40px auto 0;
  }
}

.footer #footer03 .footMenuArea .areaGrp1,
.footer #footer03 .footMenuArea .areaGrp2 {
  max-width: 632px;
}

@container (1088px <=width) {
  .footer #footer03 .footMenuArea .areaGrp1 {
    /* width: 46.875%; */
    width: 632px;
  }

  .footer #footer03 .footMenuArea .areaGrp2 {
    display: flex;
    justify-content: space-between;
    width: 46.6911764706%;
    width: 280px;
  }

  .footer #footer03 .footMenuArea .areaGrp2 .area2 {
    /* width: 47.2440944882%; */
    width: 280px;
  }

  .footer #footer03 .footMenuArea .areaGrp2 .area3 {
    width: 38.9763779528%;
  }
}

@container (width < 1088px) {
  .footer #footer03 .footMenuArea .areaGrp1 {
    width: 100%;
  }

  .footer #footer03 .footMenuArea .areaGrp2 {
    display: flex;
    justify-content: space-between;
    width: 100%;
  }

  .footer #footer03 .footMenuArea .areaGrp2 .area3 {
    padding-top: 0;
    border-top: 0;
  }
}

@container (width < 768px) {
  .footer #footer03 .footMenuArea .areaGrp1 {
    width: 100%;
  }

  .footer #footer03 .footMenuArea .areaGrp2 {
    display: flex;
    flex-direction: column;
    gap: 50px;
    width: 100%;
  }

  .footer #footer03 .footMenuArea .areaGrp2 .area2 {
    width: 100%;
  }

  .footer #footer03 .footMenuArea .areaGrp2 .area2 .grp1 .gMenuBanner01 {
    padding: 0 27px;
  }

  .footer #footer03 .footMenuArea .areaGrp2 .area3 {
    width: 100%;
    padding-top: 30px;
    border-top: 2px solid #F8B836;
  }
}

.footer #footer03 .footMenuArea .grp1 {
  display: flex;
  flex-flow: column;
  gap: 30px;
}

.footer #footer03 .footMenuArea .grp2 {
  display: flex;
  flex-flow: column;
  gap: 29px;
}

.footer #footer03 .footMenuArea .grpSet {
  display: flex;
}

@media (min-width: 768px) {
  .footer #footer03 .footMenuArea .grpSet {
    justify-content: space-between;
  }
}

@media (max-width: 767.99px) {
  .footer #footer03 .footMenuArea .grpSet {
    /* flex-flow: column; */
    gap: 0;
  }

  .footer #footer03 .footMenuArea .grp1 {
    gap: 25px;
  }
}

.footer #footer03 .footMenuArea .menuHead1 {
  padding-bottom: 14px;
  border-bottom: 2px solid #F8B836;
  margin-bottom: 30px;
}

.footer #footer03 .footMenuArea .menuHead1 .text1 {
  color: #333;
  font-family: "Zen Maru Gothic";
  font-size: 18px;
  font-style: normal;
  font-weight: 700;
  line-height: 26px;
  /* 144.444% */
  margin: -6px -0.1em -7px 0;
}

.footer #footer03 .footMenuArea .menuHead1_1 {
  line-height: 26px;
  margin: -7px -0.1em -8px 0;
}

.footer #footer03 .footMenuArea .menuHead1_1 .text1 {
  display: inline-block;
  color: #333;
  font-family: "Zen Maru Gothic";
  font-size: 18px;
  font-style: normal;
  font-weight: bold;
  line-height: 26px;
  margin: -7px -0.1em -8px 0;
}

.footer #footer03 .footMenuArea .menuHead2 {
  line-height: 26px;
  margin: -6px -0.1em -7px 0;
}

.footer #footer03 .footMenuArea .menuHead2 .text1 {
  display: inline-block;
  color: #333;
  font-family: "Zen Maru Gothic";
  font-size: 18px;
  font-style: normal;
  font-weight: 700;
  line-height: 26px;
  margin: -6px -0.1em -7px 0;
}

@media (min-width: 768px) {
  .footer #footer03 .copyright {
    margin: 80px auto 0;
    text-align: center;
  }
}

@media (max-width: 767.99px) {
  .footer #footer03 .copyright {
    margin: 38px auto 11px;
    text-align: center;
  }

  .footer #footer03 .footMenuArea .menuHead1_1 .text1 {
    font-size: 15px;
  }
}

.footer #footer03 .copyright .text1 {
  color: #777;
  leading-trim: both;
  text-edge: cap;
  font-family: "Noto Sans JP";
  font-size: 14px;
  font-style: normal;
  font-weight: 400;
  line-height: 26px;
  /* 216.667% */
  margin: -8px -0.1em -9px 0;
}

.footer #footer03 .logomark1 {
  fill: rgba(255, 255, 255, 0.6);
  position: absolute;
}

.footer #footer03 .logomark1>img {
  width: 100%;
  height: 100%;
}

@media (min-width: 768px) {
  .footer #footer03 .logomark1 {
    width: 63.125vw;
    height: 40.3645833333vw;
    inset: auto 9px -150px auto;
  }
}

@media (max-width: 767.99px) {
  .footer #footer03 .logomark1 {
    /* width: 125.3333333333%; */
    /* height: 95.2%; */
    width: 219.125vw;
    height: 100.364583vw;
    max-width: 1223px;
    max-height: 560px;
    inset: auto -227px 83px auto;
  }

  .footer #footer03 .copyright .text1 {
    font-size: 12px;
  }
}

body#recruitTop #bodyWrapper::before {
  opacity: 0.1;
  background: url(../img/recruit/top/bc_top.png.webp) center center/1500px 1349px repeat;
}

.no-webp body#recruitTop #bodyWrapper::before {
  background-image: url(../img/recruit/top/bc_top.png);
}

body#recruitTop #secTop {
  aspect-ratio: 375/530;
  padding: 0;
  position: absolute;
  inset: 0 auto 0 auto;
  margin: 0 auto;
  margin-bottom: 30px;
  position: -webkit-sticky;
  position: sticky;
  inset: 0 auto auto auto;
}

body#recruitTop #secTop .topFilter01 {
  display: block;
  width: 100%;
  height: 20px;
  background: url(../img/common/bg_color_y.jpg.webp) center center/375px 950px repeat;
  position: absolute;
  filter: blur(2px);
  inset: auto -12px -12px auto;
}

body#recruitTop #secTop>.wrapper {
  position: relative;
  width: 100%;
  height: 100%;
}

body#recruitTop #secTop .mark01 {
  width: 54.4%;
  height: 33.0188679245%;
  position: absolute;
  inset: 13.2075471698% 0 auto auto;
}

body#recruitTop #secTop img {
  display: block;
  width: 100%;
  height: auto;
}

body#recruitTop #secTop .pic01 {
  width: 42.4%;
  height: 44.3396226415%;
  position: absolute;
  inset: 0 auto auto 0;
}

body#recruitTop #secTop .pic02 {
  width: 36%;
  height: 25.4716981132%;
  position: absolute;
  inset: 6.9811320755% 17.0666666667% auto auto;
}

body#recruitTop #secTop .pic03 {
  width: 92%;
  height: 82.0754716981%;
  position: absolute;
  inset: 39.6226415094% 0 auto auto;
}

body#recruitTop #secTop .reaf01 {
  width: 11.7333333333%;
  height: 6.4150943396%;
  position: absolute;
  inset: 26.4150943396% auto auto 35.2%;
}

body#recruitTop #secTop .reaf02 {
  width: 21.3333333333%;
  height: 14.7169811321%;
  position: absolute;
  inset: 68.8679245283% auto auto 3.4666666667%;
}

body#recruitTop #secTop .topHead01 {
  width: 137.3333333333%;
  height: 96.9811320755%;
  position: absolute;
  inset: 32.0754716981% auto auto -3.4666666667%;
}

body#recruitTop #secTop .topHead02 {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 66.6666666667%;
  height: 5.6603773585%;
  flex-shrink: 0;
  border-radius: 100px;
  background: #FFF;
  color: #ECAA21;
  leading-trim: both;
  text-edge: cap;
  font-family: "Zen Maru Gothic";
  font-size: 4.2666666667vw;
  font-style: normal;
  font-weight: 700;
  line-height: 187.5%;
  white-space: nowrap;
  position: absolute;
  inset: 80.1886792453% -4% auto auto;
}

@media (min-width: 600px) {
  body#recruitTop #secTop .topHead02 {
    font-size: 25.5px;
  }
}

body#recruitTop #secTop .topHead03 {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 45.3333333333%;
  height: 3.7735849057%;
  flex-shrink: 0;
  border-radius: 100px;
  background: #FFF;
  color: #333;
  leading-trim: both;
  text-edge: cap;
  font-family: "Noto Sans JP";
  font-size: 3.2vw;
  font-style: normal;
  font-weight: 500;
  line-height: 250%;
  white-space: nowrap;
  position: absolute;
  inset: 86.7924528302% -4% auto auto;
}

@media (min-width: 600px) {
  body#recruitTop #secTop .topHead03 {
    font-size: 19px;
  }
}

body#recruitTop #sec03 .h3d {
  padding-top: 16px;
}

body#recruitPhilosophy #secTop {
  padding: 0;
}

body#recruitPhilosophy #secTop>.wrapper {
  padding-top: 50px;
}

body#recruitPhilosophy #sec01 {
  margin-top: -135px;
}

body#recruitPhilosophy #sec01>.bgColorY {
  position: relative;
  height: 698px;
}

body#recruitPhilosophy #sec02 {
  margin-top: -80px;
}

body#recruitPhilosophy #sec02>.bgColorY {
  padding-top: 80px;
}

body#recruitFirst_guide #secTop {
  padding: 0;
}

body#recruitFirst_guide #secTop>.wrapper {
  padding-top: 50px;
}

body#recruitFirst_guide #sec01 {
  margin-top: -105px;
}

body#recruitFirst_guide #sec01>.bgColorY {
  position: relative;
  height: 698px;
}

body#recruitFirst_guide #sec02 {
  margin-top: -80px;
}

body#recruitFirst_guide #sec02>.bgColorY {
  padding-top: 80px;
}

body#recruitFirst_guide #sec03 {
  margin-top: -50px;
}

body#recruitList .pagination {
  text-align: center;
  margin: 0 auto;
}

body#recruitList .pagination .nav-links .page-numbers {
  color: #333;
  font-size: 17px;
  line-height: 17px;
  padding: 10px;
}

body#recruitList .pagination .nav-links .page-numbers+.page-numbers {
  margin-left: 5px;
}

body#recruitList .pagination .nav-links .page-numbers.prev,
body#recruitList .pagination .nav-links .page-numbers.next {
  width: 23px;
  height: 12px;
  color: #333;
}

body#recruitList .pagination .nav-links .page-numbers.prev {
  margin-right: 15px;
}

body#recruitList .pagination .nav-links .page-numbers.next {
  margin-left: 20px;
}

body#recruitList .pagination .nav-links .page-numbers.current {
  color: #A7A7A7;
}

.no-touchevents body#recruitList .pagination .nav-links .page-numbers:hover {
  color: #A7A7A7;
}

body#recruitList .pagination .nav-links span.page-numbers {
  color: #A7A7A7;
}

body#recruitList .pagination .nav-links span.page-numbers.prev,
body#recruitList .pagination .nav-links span.page-numbers.next {
  color: #A7A7A7;
}

body#recruitList #secTop {
  padding: 0;
}

body#recruitList #secTop>.wrapper {
  padding-top: 70px;
}

body#recruitList #secTop .bgColorY {
  padding-bottom: 40px;
}

body#recruitList #sec01 {
  padding: 0;
}

body#recruitDetail #spFooter {
  padding-bottom: 120px;
}

body#recruitDetail #secTop {
  padding: 85px 0 0;
  padding-bottom: 150px;
}

body#recruitDetail #sec01 {
  padding: 0;
}

body#recruitDetail .mainContent .contents>.sec {
  width: 100%;
  position: relative;
  display: flex;
  flex-flow: column;
  align-items: center;
  justify-content: center;
  margin-top: -85px;
  padding-bottom: 150px;
  z-index: 1;
  padding-left: 5.3333333333%;
  padding-right: 5.3333333333%;
}

body#recruitDetail .mainContent .contents>.sec::before {
  content: "";
  display: block;
  width: 100%;
  min-height: 100%;
  -webkit-mask-image: url(../img/common/h2a_clip.svg), linear-gradient(#000, #000);
  mask-image: url(../img/common/h2a_clip.svg), linear-gradient(#000, #000);
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center 0, center 100px;
  mask-position: center 0, center 100px;
  -webkit-mask-size: 100% auto, 100% 100%;
  mask-size: 100% auto, 100% 100%;
  -webkit-mask-composite: source-over;
  mask-composite: add;
  padding: 100px 0 0;
  position: absolute;
  inset: 0 auto auto auto;
  margin: 0 auto;
  z-index: -1;
  background: #FFF;
}

body#recruitDetail .mainContent .contents>.sec:nth-child(odd)::before {
  background: #FFF;
}

body#recruitDetail .mainContent .contents>.sec:nth-child(even)::before {
  background: url(../img/common/bg_color_y.jpg.webp) center center/375px 950px repeat;
}

.no-webp body#recruitDetail .mainContent .contents>.sec:nth-child(even)::before {
  background-image: url(../img/common/bg_color_y.jpg);
}

body#recruitDetail .mainContent .contents .h2a_wrap {
  position: relative;
  margin: 0 auto 60px;
}

body#recruitDetail .mainContent .contents .h2a_wrap::before {
  content: "";
  display: block;
  width: 75px;
  height: 44px;
  background: url(../img/common/h2_bg.svg) center center/cover repeat;
  margin: 0 auto 9px;
}

body#recruitDetail .mainContent .contents .h2a_wrap .sub {
  color: #333;
  text-align: center;
  leading-trim: both;
  text-edge: cap;
  font-family: "Noto Sans JP";
  font-size: 12px;
  font-style: normal;
  font-weight: 700;
  line-height: 26px;
  /* 216.667% */
  margin: -8px -0.1em 11px 0;
}

body#recruitDetail .mainContent .contents .h2a_wrap h2 {
  color: #333;
  text-align: center;
  leading-trim: both;
  text-edge: cap;
  font-family: "Zen Maru Gothic";
  font-size: 24px;
  font-style: normal;
  font-weight: 700;
  line-height: 36px;
  /* 150% */
  margin: -9px -0.1em -10px 0;
}

body#recruitDetail .mainContent .contents>.sec:nth-child(odd) .boxFacility {
  background: #FFFBDB;
  box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.1);
}

body#recruitDetail .mainContent .contents>.sec:nth-child(odd) .boxPromisea {
  background: #FFFBDB;
  box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.1);
}

body#recruitDetail .mainContent .contents>.sec:nth-child(odd) .boxPromisea .pic1 {
  box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.1);
}

body#recruitDetail .mainContent .contents>.sec:nth-child(even) .boxFacility {
  background: #FFF;
  box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.1);
}

body#recruitDetail .mainContent .contents>.sec:nth-child(even) .boxPromisea {
  background: #FFF;
  box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.1);
}

body#recruitDetail .mainContent .contents>.sec:nth-child(even) .boxPromisea .pic1 {
  box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.1);
}

body#recruitDetail .mainContent .contents.blog .h2a_wrap {
  margin: 0 auto 30px;
}

body#recruitDetail .mainContent .contents.blog .hInsta {
  margin: 30px auto;
}

body#recruitDetail .mainContent .contents.blog .hInsta img.pic1 {
  display: block;
  width: 54px;
  height: 54px;
  margin: 0 auto;
}

body#recruitDetail .mainContent .contents.blog .hInsta p.ttl1 {
  color: #333;
  text-align: center;
  leading-trim: both;
  text-edge: cap;
  font-family: "Zen Maru Gothic";
  font-size: 24px;
  font-style: normal;
  font-weight: 700;
  line-height: 36px;
  /* 150% */
  margin: 6px -0.1em -10px 0;
}

body#recruitDetail .mainContent .contents.blog h3 {
  display: flex;
  align-items: center;
  width: 100%;
  border-bottom: 1px solid #6EBB57;
  position: relative;
  color: #333;
  leading-trim: both;
  text-edge: cap;
  font-family: "Zen Maru Gothic";
  font-size: 18px;
  font-style: normal;
  font-weight: 700;
  line-height: 26px;
  /* 144.444% */
  padding: 8px 0;
  margin: -8px auto 12px;
  margin: 18px auto 20px;
}

body#recruitDetail .mainContent .contents.blog h4,
body#recruitDetail .mainContent .contents.blog h5,
body#recruitDetail .mainContent .contents.blog h6 {
  position: relative;
  padding-left: 16px;
  margin: -3px auto -3px 0;
  margin: 12px auto 12px 0;
  color: #333;
  leading-trim: both;
  text-edge: cap;
  font-family: "Zen Maru Gothic";
  font-size: 16px;
  font-style: normal;
  font-weight: 700;
  line-height: 26px;
  /* 130% */
}

body#recruitDetail .mainContent .contents.blog h4::before,
body#recruitDetail .mainContent .contents.blog h5::before,
body#recruitDetail .mainContent .contents.blog h6::before {
  content: "";
  display: block;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background-color: #6FBC58;
  position: absolute;
  inset: 11px auto auto 0;
}

body#recruitDetail .mainContent .contents.blog p {
  color: var(---1, #404040);
  leading-trim: both;
  text-edge: cap;
  font-family: "Noto Sans JP";
  font-size: 15px;
  font-style: normal;
  font-weight: 400;
  line-height: 26px;
  letter-spacing: 1.5px;
  margin: -7px auto -8px 0;
  text-align: left;
  margin-bottom: 32px;
  margin: 8px auto 7px 0;
}

body#recruitDetail .mainContent .contents.blog strong {
  color: #6FBC58;
  font-size: 15px;
  font-weight: 700;
}

body#recruitDetail .mainContent .contents.blog em {
  font-style: italic;
}

body#recruitDetail .mainContent .contents.blog a {
  text-decoration: underline;
}

body#recruitDetail .mainContent .contents.blog ul,
body#recruitDetail .mainContent .contents.blog ol {
  padding-left: 16px;
  margin: 0 auto 0 0;
  margin: 15px auto 15px 0;
}

body#recruitDetail .mainContent .contents.blog ul li,
body#recruitDetail .mainContent .contents.blog ol li {
  position: relative;
  color: var(---1, #404040);
  leading-trim: both;
  text-edge: cap;
  font-family: "Noto Sans JP";
  font-size: 15px;
  font-style: normal;
  font-weight: 400;
  line-height: 26px;
  letter-spacing: 1.5px;
  padding: 3px 0 3px 0;
}

body#recruitDetail .mainContent .contents.blog ul {
  list-style-type: disc;
}

body#recruitDetail .mainContent .contents.blog ol {
  list-style-type: decimal;
}

body#recruitDetail .mainContent .contents.blog blockquote {
  position: relative;
  padding: 10px 15px 10px 70px;
  box-sizing: border-box;
  font-style: italic;
  background: #efefef;
  width: 100%;
  margin: 15px auto 15px 0;
}

body#recruitDetail .mainContent .contents.blog blockquote::before {
  display: inline-block;
  position: absolute;
  top: 10px;
  left: 5px;
  content: "“";
  font-family: sans-serif;
  color: #cfcfcf;
  font-size: 90px;
  line-height: 1;
}

body#recruitDetail .mainContent .contents.blog blockquote p {
  padding: 0;
  margin: 0;
  line-height: 1.7;
}

body#recruitDetail .mainContent .contents.blog blockquote cite {
  display: block;
  text-align: right;
  color: #888888;
  font-size: 9px;
}

body#recruitDetail .mainContent .contents.blog sup {
  font-size: 70%;
  vertical-align: super;
}

body#recruitDetail .mainContent .contents.blog sub {
  font-size: 70%;
  vertical-align: sub;
}

body#recruitDetail .mainContent .contents.blog table {
  margin: 15px auto 15px 0;
  border-spacing: 0;
}

body#recruitDetail .mainContent .contents.blog table thead {
  border: 0;
}

body#recruitDetail .mainContent .contents.blog table th {
  font-weight: 700;
  border: 1px solid #ddd;
  padding: 10px;
  text-align: left;
  background: #f6f6f6;
}

body#recruitDetail .mainContent .contents.blog table td {
  border: 1px solid #ddd;
  padding: 10px;
}

body#recruitDetail .mainContent .contents.blog picture,
body#recruitDetail .mainContent .contents.blog figure {
  display: block;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  max-width: 100%;
  height: auto;
  margin: 0 auto;
  border-radius: 6px;
  overflow: hidden;
  margin: 15px auto 15px 0;
}

body#recruitDetail .mainContent .contents.blog picture img,
body#recruitDetail .mainContent .contents.blog picture svg,
body#recruitDetail .mainContent .contents.blog figure img,
body#recruitDetail .mainContent .contents.blog figure svg {
  margin: 0 auto;
  max-width: 100%;
  display: block;
  width: 100%;
  height: auto;
}

body#recruitDetail .mainContent .contents.blog picture figcaption,
body#recruitDetail .mainContent .contents.blog figure figcaption {
  color: #333;
  leading-trim: both;
  text-edge: cap;
  font-family: "Noto Sans JP";
  font-size: 15px;
  font-style: normal;
  font-weight: 400;
  line-height: 26px;
  /* 173.333% */
  margin: -7px auto 0 0;
  margin-top: 8px;
}

body#recruitDetail .mainContent .contents.blog figure.is-type-video {
  display: flex;
  flex-flow: column;
  align-items: center;
  justify-content: center;
}

body#recruitDetail .mainContent .contents.blog figure.is-type-video iframe {
  border-radius: 6px;
  overflow: hidden;
}

body#recruitDetail .mainContent .contents.blog figure.is-type-video figcaption {
  max-width: 500px;
  margin-top: 0px;
}

body#recruitDetail .mainContent .contents.blog .wp-block-cover {
  width: 100%;
  margin: 15px auto 15px 0;
}

body#recruitDetail .mainContent .contents.blog .wp-block-cover p {
  color: #FFF;
}

body#recruitDetail .mainContent .contents.blog .areaEntryb {
  margin: 15px auto;
}

body#recruitDetail .mainContent .contents.blog .aligncenter {
  margin-left: auto;
  margin-right: auto;
}

body#about #sec02 {
  position: relative;
  z-index: 1;
}

@media (min-width: 768px) {
  body#about #sec02 {
    padding-bottom: 390px;
  }
}

@media (max-width: 767.99px) {
  body#about #sec02 {
    padding-bottom: 210px;
  }
}

body#about #sec02 .areaMission {
  border-radius: 10px;
  background: #FFF;
  position: relative;
  z-index: 1;
}

body#about #sec02 .areaMission .inner {
  position: relative;
  z-index: 1;
}

@media (min-width: 1280px) {
  body#about #sec02 .areaMission .inner {
    padding: 97px 78px 73px;
  }
}

@media (max-width: 1279.99px) and (min-width: 1080px) {
  body#about #sec02 .areaMission .inner {
    padding: 50px 20px 277px 20px;
  }
}

@media (max-width: 1079.99px) and (min-width: 768px) {
  body#about #sec02 .areaMission .inner {
    padding: 50px 20px 277px 20px;
    min-height: 520px;
  }
}

@media (max-width: 767.99px) {
  body#about #sec02 .areaMission .inner {
    padding: 50px 20px 277px 20px;
    min-height: 520px;
  }
}

@media (max-width: 1279.99px) and (min-width: 1080px) {
  body#about #sec02 .areaMission .inner .h3f {
    justify-content: center;
  }
}

@media (max-width: 1079.99px) and (min-width: 768px) {
  body#about #sec02 .areaMission .inner .h3f {
    justify-content: center;
    margin: 0 auto;
    position: relative;
    z-index: 1;
  }
}

@media (max-width: 767.99px) {
  body#about #sec02 .areaMission .inner .h3f {
    min-height: 193px;
    justify-content: center;
    margin: 0 auto;
    position: absolute;
    inset: 50px 0 auto 0;
    z-index: 1;
  }
}

@media (max-width: 767.99px) {
  body#about #sec02 .areaMission .inner .h3f .text1 {
    font-size: 18px;
    line-height: 29px;
    letter-spacing: 0.03em;
  }
}

@media (min-width: 1280px) {
  body#about #sec02 .areaMission .inner .picGrp1 {
    position: absolute;
    width: 62.4166666667%;
    height: 620px;
    aspect-ratio: 749/620;
    inset: -86px auto auto 524px;
    z-index: 1;
  }
}

body#about #sec02 .areaMission .inner .pic01,
body#about #sec02 .areaMission .inner .pic02,
body#about #sec02 .areaMission .inner .pic03 {
  border-radius: 50%;
  overflow: hidden;
  position: absolute;
}

@media (min-width: 1280px) {
  body#about #sec02 .areaMission .inner .pic01 {
    width: 61.4152202937%;
    aspect-ratio: 1/1;
    inset: 0 0 auto auto;
  }
}

@media (max-width: 1279.99px) and (min-width: 1080px) {
  body#about #sec02 .areaMission .inner .pic01 {
    width: 233px;
    height: 233px;
    inset: auto auto 42px calc(50% - 24px);
  }
}

@media (max-width: 1079.99px) {
  body#about #sec02 .areaMission .inner .pic01 {
    width: 233px;
    height: 233px;
    inset: auto auto 62px calc(50% - 24px);
  }
}

@media (min-width: 1280px) {
  body#about #sec02 .areaMission .inner .pic02 {
    width: 34.7129506008%;
    aspect-ratio: 1/1;
    inset: 200px auto auto 0;
  }
}

@media (max-width: 1279.99px) and (min-width: 1080px) {
  body#about #sec02 .areaMission .inner .pic02 {
    width: 132px;
    height: 132px;
    inset: auto calc(50% + 39px) 62px auto;
  }
}

@media (max-width: 1079.99px) {
  body#about #sec02 .areaMission .inner .pic02 {
    width: 132px;
    height: 132px;
    inset: auto calc(50% + 39px) 62px auto;
  }
}

@media (min-width: 1280px) {
  body#about #sec02 .areaMission .inner .pic03 {
    width: 24.0320427236%;
    aspect-ratio: 1/1;
    inset: auto auto 0 211px;
  }
}

@media (max-width: 1279.99px) and (min-width: 1080px) {
  body#about #sec02 .areaMission .inner .pic03 {
    width: 91px;
    height: 91px;
    inset: auto 41.4084507042% -21px auto;
  }
}

@media (max-width: 1079.99px) {
  body#about #sec02 .areaMission .inner .pic03 {
    width: 91px;
    height: 91px;
    inset: auto 41.4084507042% -21px auto;
  }
}

body#about #sec02 .areaVision {
  border-radius: 10px;
  background: #FFF;
  overflow: hidden;
  position: relative;
  z-index: 1;
}

@media (min-width: 1280px) {
  body#about #sec02 .areaVision {
    padding: 120px 120px 120px 80px;
  }
}

@media (max-width: 1279.99px) and (min-width: 1080px) {
  body#about #sec02 .areaVision {
    padding: 60px 20px;
  }
}

@media (max-width: 1079.99px) {
  body#about #sec02 .areaVision {
    padding: 60px 20px;
  }
}

body#about #sec02 .areaVision .inner {
  display: flex;
  position: relative;
  z-index: 1;
}

@media (min-width: 1280px) {
  body#about #sec02 .areaVision .inner {
    gap: 80px;
    gap: 30px;
    justify-content: space-between;
    flex-direction: row-reverse;
  }
}

@media (max-width: 1279.99px) and (min-width: 1080px) {
  body#about #sec02 .areaVision .inner {
    flex-direction: column;
    gap: 50px;
  }
}

@media (max-width: 1079.99px) {
  body#about #sec02 .areaVision .inner {
    flex-direction: column;
    gap: 50px;
  }
}

body#about #sec02 .areaVision .inner .pic01 {
  max-width: 650px;
}

@media (max-width: 1279.99px) and (min-width: 1080px) {
  body#about #sec02 .areaVision .inner .pic01 {
    margin: 0 auto;
    max-width: 450px;
  }
}

@media (max-width: 1079.99px) {
  body#about #sec02 .areaVision .inner .pic01 {
    margin: 0 auto;
  }
}

@media (max-width: 1279.99px) and (min-width: 1080px) {
  body#about #sec02 .areaVision .inner .h3f {
    justify-content: center;
  }
}

@media (max-width: 1079.99px) {
  body#about #sec02 .areaVision .inner .h3f {
    justify-content: center;
  }
}

body#about #sec02 .areaVision .areaSpirits {
  text-align: center;
  position: relative;
  z-index: 1;
}

@media (min-width: 1280px) {
  body#about #sec02 .areaVision .areaSpirits {
    margin: 60px auto;
  }
}

@media (max-width: 1279.99px) and (min-width: 1080px) {
  body#about #sec02 .areaVision .areaSpirits {
    margin: 50px auto;
  }
}

@media (max-width: 1079.99px) {
  body#about #sec02 .areaVision .areaSpirits {
    margin: 50px auto;
  }
}

body#about #sec02 .areaVision .areaSpirits .textGrp1 .txtb {
  font-family: "Zen Old Mincho";
  line-height: 45px;
  letter-spacing: 0.1em;
}

body#about #sec02 .areaVision .logomark1 {
  display: block;
  width: 82.5%;
  aspect-ratio: 990/758;
  fill: #FFF9CB;
  opacity: 0.5;
  position: absolute;
  z-index: 0;
}

@media (min-width: 1280px) {
  body#about #sec02 .areaVision .logomark1 {
    inset: auto 50px 154px auto;
  }
}

@media (max-width: 1279.99px) and (min-width: 1080px) {
  body#about #sec02 .areaVision .logomark1 {
    inset: auto -50px 50px auto;
  }
}

@media (max-width: 1079.99px) {
  body#about #sec02 .areaVision .logomark1 {
    inset: auto -50px 50px auto;
  }
}

body#about #sec02 .areaPromise {
  border-radius: 10px;
  background: #FFF;
  position: relative;
  z-index: 1;
  container-type: inline-size;
}

@media (min-width: 768px) {
  body#about #sec02 .areaPromise {
    padding: 115px 30px;
  }
}

@media (max-width: 767.99px) {
  body#about #sec02 .areaPromise {
    padding: 60px 20px;
  }
}

@container (600px <=width) {
  body#about #sec02 .areaPromise .areaBoxpromiseb .boxPromiseb {
    width: calc((100% - 30px) / 2);
  }
}

@container (width < 700px) {
  body#about #sec02 .areaPromise .areaBoxpromiseb .bg01 {
    display: none;
  }

  body#about #sec02 .areaPromise .areaBoxpromiseb .bg02 {
    width: 173px;
    height: 135px;
    inset: -100px -35px auto auto;
  }
}

@container (width < 600px) {
  body#about #sec02 .areaPromise .areaBoxpromiseb {
    max-width: 500px;
    margin: 0 auto;
  }

  body#about #sec02 .areaPromise .areaBoxpromiseb .boxPromiseb {
    width: 100%;
  }
}

body#about #sec03 {
  position: relative;
  z-index: 1;
  background-color: transparent;
  overflow: visible;
}

@media (min-width: 768px) {
  body#about #sec03 {
    margin-top: -250px;
    padding: 250px 0 0;
  }
}

@media (max-width: 767.99px) {
  body#about #sec03 {
    margin-top: -150px;
    padding: 150px 0 0;
  }
}

body#about #sec03 .wideimg1 {
  position: relative;
  z-index: 1;
}

@media (min-width: 768px) {
  body#about #sec03 .wideimg1 {
    margin-top: -250px;
  }
}

@media (max-width: 767.99px) {
  body#about #sec03 .wideimg1 {
    margin-top: -150px;
  }
}

body#about #sec04 {
  overflow: visible;
}

body#about #sec04 .areaFeature {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 50px;
}

body#about #sec04 .areaFeature .boxForRelated {
  position: relative;
}

body#about #sec04 .areaFeature .boxForRelated .reaf1 {
  display: block;
  position: absolute;
}

@media (min-width: 768px) {
  body#about #sec04 .areaFeature .boxForRelated .reaf1 {
    width: 510px;
    height: 226px;
    inset: auto auto -197px -138px;
  }
}

@media (max-width: 767.99px) {
  body#about #sec04 .areaFeature .boxForRelated .reaf1 {
    width: 223px;
    height: 98px;
    inset: auto auto -75px -15px;
  }
}

body#about #sec05 .btnd {
  max-width: 480px;
  margin: 0 auto;
}

body#service .sec.secServiceContent {
  position: relative;
  z-index: 2;
  border-radius: 100px;
  margin-bottom: -95px;
}

@media (min-width: 768px) {
  body#service .sec.secGallery {
    padding-top: 235px;
  }
}

@media (max-width: 767.99px) {
  body#service .sec.secGallery {
    padding-top: 155px;
  }
}

body#service .sec.secGallery .h2d {
  position: relative;
  z-index: 1;
}

@media (max-width: 767.99px) {
  body#service #sec01 .picMapa {
    background: none;
    box-shadow: none;
  }
}

body#top #bodyWrapper {
  overflow: hidden;
}

body#top #pcHeader {
  background-color: #FFF;
}

body#top #pcHeader .wrapper {
  container-type: inline-size;
}

@media (max-width: 767.99px) {
  body#top #pcHeader .wrapper {
    justify-content: flex-start;
  }
}

@container (width < 1180px) {
  body#top #pcHeader .wrapper .telBox1 {
    /* display: none; */
    display: block;
  }
}

body#top #pcHeader .headLogo {
  display: block;
}

@media (min-width: 768px) {
  body#top #mainArea {
    padding-top: 25px;
  }
}

@media (max-width: 767.99px) {
  body#top #mainArea {
    padding-top: 0;
    background: #EDF3EB;
  }
}

body#top #siteTop {
  width: 100%;
  min-height: 600px;
  background-color: #FFF;
  position: relative;
  overflow: hidden;
  container-type: inline-size;
  container-type: inline-size;
}

@media (min-width: 768px) {
  body#top #siteTop {
    padding-top: 60px;
  }
}

@media (max-width: 767.99px) {
  body#top #siteTop {
    padding-top: 50px;
  }
}

body#top #siteTop::after {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  inset: auto auto 0 0;
  background: url(../img/top/sitetop_bg.png.webp) left bottom/1920px auto no-repeat;
  z-index: 1;
}

@media (max-width: 767.99px) {
  body#top #siteTop::after {
    background-size: auto 336px;
  }
}

.no-webp body#top #siteTop::after {
  background-image: url(../img/top/sitetop_bg.png);
}

@container (1680px <=width) {
  body#top #siteTop::after {
    background-size: 100% auto;
  }
}

body#top #siteTop .textGrp1 {
  display: block;
  position: absolute;
  z-index: 3;
}

@media (min-width: 768px) {
  body#top #siteTop .textGrp1 {
    width: 833px;
    height: 190px;
    inset: auto auto 211px 170px;
  }
}

@media (max-width: 767.99px) {
  body#top #siteTop .textGrp1 {
    width: 504px;
    height: 242px;
    inset: auto auto 103px 20px;
  }
}

body#top #siteTop .textGrp1 .text1 {
  display: block;
  position: absolute;
}

@media (min-width: 768px) {
  body#top #siteTop .textGrp1 .text1 {
    width: 16px;
    height: 195px;
    inset: 0px auto auto 21px;
  }
}

@media (max-width: 767.99px) {
  body#top #siteTop .textGrp1 .text1 {
    width: 13px;
    height: 141px;
    inset: 39px auto auto 23px;
  }
}

body#top #siteTop .textGrp1 .text2 {
  display: block;
  position: absolute;
}

@media (min-width: 768px) {
  body#top #siteTop .textGrp1 .text2 {
    width: 190px;
    height: 329px;
    inset: 0 auto auto 61px;
  }
}

@media (max-width: 767.99px) {
  body#top #siteTop .textGrp1 .text2 {
    width: 104px;
    height: 195px;
    inset: 39px auto auto 45px;
  }
}

body#top #siteTop .textGrp1 .logo1 {
  position: absolute;
}

@media (min-width: 768px) {
  body#top #siteTop .textGrp1 .logo1 {
    width: 376px;
    height: 87px;
    inset: 247px auto auto 269px;
  }
}

@media (max-width: 767.99px) {
  body#top #siteTop .textGrp1 .logo1 {
    width: 205px;
    height: 47px;
    inset: 187px auto auto 124px;
  }
}

body#top #siteTop .textGrp1 .reaf1 {
  position: absolute;
  transform: rotate(-0deg);
}

@media (min-width: 768px) {
  body#top #siteTop .textGrp1 .reaf1 {
    width: 539px;
    height: 218px;
    inset: 6px auto auto 272px;
  }
}

@media (max-width: 767.99px) {
  body#top #siteTop .textGrp1 .reaf1 {
    width: 191px;
    height: 133px;
    inset: 28px auto auto 160px;
  }
}

@media (min-width: 1280px) {
  body#top #siteTop .logomark1 {
    display: block;
    width: 591px;
    height: 450px;
    fill: #FFFFFF;
    opacity: 0.7;
    position: absolute;
    inset: auto 210px -80px auto;
    z-index: 2;
  }
}

@container (width < 1400px) {
  body#top #siteTop .logomark1 {
    display: none;
  }
}

@media (max-width: 767.99px) {
  body#top #sec01 {
    padding-bottom: 0;
  }
}

body#top #sec01>.wrapper {
  z-index: 1;
}

@media (min-width: 768px) {
  body#top #sec01 .btnd {
    max-width: 480px;
    margin: 0 auto;
  }
}

@media (max-width: 767.99px) {
  body#top #sec01 .btnd {
    max-width: 290px;
    margin: 0 auto;
  }
}

body#top #sec01 .logomark1 {
  display: block;
  position: absolute;
  fill: #FFF9CB;
  opacity: 0.5;
}

@media (min-width: 768px) {
  body#top #sec01 .logomark1 {
    width: 85.4166666667vw;
    height: 65.4166666667vw;
    max-width: 1640px;
    max-height: 1256px;
    inset: 223px auto auto 290px;
  }
}

@media (max-width: 767.99px) {
  body#top #sec01 {
    padding: 59px 0px;
  }

  body#top #sec01 .logomark1 {
    width: 139.7333333333%;
    height: 107.2%;
    max-width: 524px;
    max-height: 402px;
    inset: 175px -8.5333333333% auto auto;
  }
}

@media (min-width: 768px) {
  body#top #sec02 {
    padding: 13px 40px 0px;
  }
}

@media (max-width: 767.99px) {
  body#top #sec02 {
    padding: 10px 0 0;
  }
}

body#top #sec02 .wideimg1 {
  width: 100%;
  height: auto;
}

body#top #sec03 {
  position: relative;
  overflow: visible;
  container-type: inline-size;
  container-type: inline-size;
  container-type: inline-size;
  padding: 72px 0 0px;
}

@media (max-width: 767.99px) {
  body#top #sec03 {
    padding-bottom: 373px;
    padding: 0 0;
  }
}

body#top #sec03>.wrapper {
  position: relative;
  z-index: 1;
}

body#top #sec03 .circleimg1 {
  width: 260px;
  height: 260px;
  position: absolute;
  inset: -15px 430px auto auto;
}

@media (max-width: 767.99px) {
  body#top #sec03 .circleimg1 {
    display: none;
  }
}

body#top #sec03 .circleimg2 {
  width: 350px;
  height: 350px;
  position: absolute;
  inset: -115px 50px auto auto;
}

@media (max-width: 767.99px) {
  body#top #sec03 .circleimg2 {
    display: none;
  }
}

body#top #sec03 .circleimg3 {
  display: block;
  width: 180px;
  height: 180px;
  position: absolute;
  inset: 265px 190px auto auto;
}

@container (width < 1200px) {
  body#top #sec03 .circleimg3 {
    display: none;
  }
}

body#top #sec03 .circleimg4 {
  position: absolute;
}

@container (1200px <=width) {
  body#top #sec03 .circleimg4 {
    width: 945px;
    height: 683px;
    inset: auto 221px -62px auto;
  }
}

@container (width < 1200px) {
  body#top #sec03 .circleimg4 {
    width: 381px;
    height: 275px;
    inset: auto 50px 35px auto;
  }
}

body#top #sec03 .circleimg5 {
  position: absolute;
}

@container (1000px <=width) {
  body#top #sec03 .circleimg5 {
    width: 320px;
    height: 320px;
    inset: auto 70px 500px auto;
  }
}

@container (width < 1000px) {
  body#top #sec03 .circleimg5 {
    width: 129px;
    height: 129px;
    inset: auto -10px 262px auto;
  }
}

body#top #sec04 {
  position: relative;
  z-index: 1;
}

@media (min-width: 768px) {
  body#top #sec04 {
    padding-bottom: 130px;
    padding-top: 114px;
  }
}

@media (max-width: 767.99px) {
  body#top #sec04 {
    padding: 40px 0;
  }
}

body#top #sec04 .read2 {
  color: #333;
  text-align: center;
  leading-trim: both;
  text-edge: cap;
  font-family: "Noto Sans JP";
  font-style: normal;
  font-weight: 500;
  line-height: 36px;
  /* 200% */
  text-align: center;
}

@media (min-width: 768px) {
  body#top #sec04 .read2 {
    font-size: 18px;
    margin: -11px -0.1em -12px 0;
  }
}

@media (max-width: 767.99px) {
  body#top #sec04 .read2 {
    font-size: 15px;
    margin: -12px -0.1em -13px 0;
  }
}

@media (min-width: 768px) {
  body#top #sec05 {
    /* margin-top: -250px; */
    padding-bottom: 150px;
    padding-top: 0;
  }
}

@media (max-width: 767.99px) {
  body#top #sec05 {
    /* margin-top: -150px; */
    padding: 22px 0 60px;
  }
}

body#top #sec05 .wideimg2 {
  position: relative;
  z-index: 1;
}

body#top #sec05 .btnd {
  max-width: 480px;
  margin: 0 auto;
}

@media (max-width: 767.99px) {
  body#top #sec05 .btnd {
    max-width: 290px;
    margin: 0 auto;
  }
}

/* body#top #sec06 {
  overflow: visible;
}

body#top #sec06 .boxForRelated {
  position: relative;
}

@media (max-width: 767.99px) {
  body#top #sec06 .boxForRelated {
    max-width: 520px;
    margin: 0 auto;
  }
}

@media (max-width: 767.99px) {
  body#top #sec06 .boxForRelated .pic01 {
    max-width: 350px;
    margin: 0 auto;
  }
}

body#top #sec06 .boxForRelated .reaf1 {
  display: block;
  position: absolute;
}

@media (min-width: 768px) {
  body#top #sec06 .boxForRelated .reaf1 {
    width: 510px;
    height: 226px;
    inset: auto auto -174px -128px;
  }
}

@media (max-width: 767.99px) {
  body#top #sec06 .boxForRelated .reaf1 {
    width: 223px;
    height: 98px;
    inset: auto auto -45px -46px;
  }
} */

body#top #sec06 {
  padding: 0;
}

body#top #sec06 .boxRecruita {
  flex-shrink: 0;
  border-radius: 10px;
  opacity: 0.9;
  background: #FFF;
  z-index: 10;
}

@media (min-width: 768px) {
  body#top #sec06 {
    padding: 0 0 125px;
  }

  body#top #sec06 .boxRecruita {
    width: 400px;
    height: 610px;
    padding: 55px 20px 50px;
    position: absolute;
    inset: 0;
    margin: auto;
  }
}

@media (max-width: 767.99px) {
  body#top #sec06 .boxRecruita {
    width: 78.6666666667%;
    min-width: 295px;
    height: 610px;
    padding: 50px 25px 50px;
    position: absolute;
    inset: 0;
    margin: auto;
  }

  body#top #sec06 {
    padding: 0 0 82px;
  }
}

body#top #sec06 .boxRecruita .ttlGrp {
  display: flex;
  flex-direction: row-reverse;
  justify-content: center;
}

body#top #sec06 .boxRecruita .ttlGrp .ttl1 {
  color: #BDBDBD;
  font-family: "Century Gothic";
  font-style: normal;
  font-weight: 400;
  line-height: normal;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
}

@media (min-width: 768px) {
  body#top #sec06 .boxRecruita .ttlGrp .ttl1 {
    font-size: 14px;
    letter-spacing: 1.4px;
  }
}

@media (max-width: 767.99px) {
  body#top #sec06 .boxRecruita .ttlGrp .ttl1 {
    font-size: 10px;
    letter-spacing: 1px;
  }
}

@media (min-width: 768px) {
  body#top #sec06 .boxRecruita .ttlGrp .ttl2 {
    width: 34.5px;
    height: 147px;
    margin-right: 14px;
  }
}

@media (max-width: 767.99px) {
  body#top #sec06 .boxRecruita .ttlGrp .ttl2 {
    width: 28px;
    height: 118px;
    margin-right: 9px;
  }
}

@media (min-width: 768px) {
  body#top #sec06 .boxRecruita .ttlGrp .ttl3 {
    width: 155px;
    height: 233px;
    margin-right: 40px;
  }
}

@media (max-width: 767.99px) {
  body#top #sec06 .boxRecruita .ttlGrp .ttl3 {
    width: 124px;
    height: 187px;
    margin-right: 33px;
  }
}

body#top #sec06 .boxRecruita .boxText1 {
  color: #333;
  font-family: "Noto Sans JP";
  font-size: 15px;
  font-style: normal;
  font-weight: 500;
  line-height: 30px;
  margin: 31px -0.1em -10px 0;
}

@media (min-width: 768px) {
  body#top #sec06 .boxRecruita .boxText1 {
    text-align: center;
  }
}

body#top #sec06 .boxRecruita .btne {
  margin: 30px auto 0;
}

@media (min-width: 768px) {
  body#top #sec06 .boxRecruita .btne {
    max-width: 310px;
  }
}

@media (max-width: 767.99px) {
  body#top #sec06 .boxRecruita .btne {
    max-width: 243px;
  }
}

/* 追加 */
body ul.news-list li {
  position: relative;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: center;
  gap: 35px;
  padding: 17px 40px 15px;
  background: #EDF3EB;
  border-radius: 5px;
  cursor: pointer;
  transition: all 0.3s;
}

@media (any-hover: hover) {
  body ul.news-list li:hover {
    opacity: 0.6;
  }
}

body ul.news-list li:not(:last-child) {
  margin-bottom: 10px;
}

body ul.news-list li::before {
  position: absolute;
  content: "";
  top: 50%;
  right: 20px;
  transform: translateY(-50%);
  width: 22px;
  height: 22px;
  background: url(../img/common/news-icon.webp) no-repeat center / cover;
}

body ul.news-list li>a {
  display: block;
  height: 100%;
  width: 100%;
  font-size: 0;
  position: absolute;
  z-index: 9;
  top: 0;
  left: 0;
}

body ul.news-list li .day {
  width: 90px;
  font-family: "Noto Sans JP";
  font-size: 15px;
  font-weight: bold;
  color: #6EBB57;
}

body ul.news-list li .news-ttl {
  flex: 1;
  font-family: "Noto Sans JP";
  font-size: 15px;
  font-weight: 400;
  color: #333333;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

@media (max-width: 767.99px) {
  body ul.news-list li {
    gap: 1px;
    padding: 2px 35px 7px 16px;
  }

  body ul.news-list li::before {
    width: 18px;
    height: 18px;
    right: 15px;
  }

  body ul.news-list li .day {
    width: 100%;
    text-align: center;
  }

  body ul.news-list li .news-ttl {
    width: 100%;
  }
}

body ul.news-list.-side li {
  background: unset;
  gap: 5px;
  padding: 10px 0px;
  border-bottom: 1px solid #6EBB57;
  border-radius: unset;
}

body ul.news-list.-side li:first-child {
  border-top: 1px solid #6EBB57;
}

body ul.news-list.-side li:not(:last-child) {
  margin-bottom: 0;
}

body ul.news-list.-side li .day {
  width: 100%;
}

body ul.news-list.-side li .news-ttl {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  white-space: wrap;
}

body ul.news-list.-side li::before {
  content: none;
}

body ul.indent-list {
  padding-bottom: 50px;
}

body ul.indent-list li p {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: flex-start;
}

body ul.indent-list li p .label {
  font-family: "Noto Sans JP";
  font-size: 18px;
  color: #6EBB57;
  font-weight: bold;
}

body ul.indent-list li p .txt {
  flex: 1;
  font-family: "Noto Sans JP";
  font-size: 18px;
}

@media (max-width: 767.99px) {
  body ul.indent-list {
    display: flex;
    flex-direction: column;
    flex-wrap: wrap;
    justify-content: flex-start;
    align-items: flex-start;
    padding-bottom: unset;
  }

  body ul.indent-list li p {
    display: contents;
  }

  body ul.indent-list li p .label,
  body ul.indent-list li p .txt {
    font-size: 15px;
  }
}

body p.small-ttl {
  position: relative;
  padding-left: 15px;
  margin-bottom: 30px;
  font-family: "Zen Maru Gothic";
  font-size: 24px;
  font-weight: bold;
}

body p.small-ttl::before {
  position: absolute;
  content: "・";
  top: 50%;
  left: -9px;
  transform: translateY(-50%);
}

body p.small-ttl::after {
  position: absolute;
  content: "";
  top: 50%;
  right: 0;
  transform: translateY(-50%);
  width: calc(100% - 155px);
  height: 1px;
  background: #6EBB57;
}

@media (max-width: 767.99px) {
  body p.small-ttl {
    font-size: 18px;
    padding-left: 19px;
    margin-bottom: 0;
  }

  body p.small-ttl::before {
    left: 0px;
  }

  body p.small-ttl::after {
    width: calc(100% - 120px);
  }
}

body p.scroll-txt {
  text-align: right;
  color: #F78640;
  font-family: "Noto Sans JP";
  font-size: 12px;
}

@media (max-width: 767.99px) {
  body p.scroll-txt {
    margin-top: -14px;
  }
}

.mb10 {
  margin-bottom: 10px !important;
}

.mb30 {
  margin-bottom: 30px !important;
}

@media (max-width: 767.99px) {
  .mb30-tb {
    margin-bottom: 30px !important;
  }
}

.mb16 {
  margin-bottom: 16px !important;
}

.bold {
  font-weight: bold !important;
}

.f20px {
  font-size: 20px !important;
}

.right-text {
  text-align: right !important;
}

.w100 {
  width: 100%;
}

.pc {
  display: block !important;
}

@media (max-width: 767.99px) {
  .pc {
    display: none !important;
  }
}

.tb {
  display: none !important;
}

@media (max-width: 767.99px) {
  .tb {
    display: block !important;
  }
}

.sp {
  display: none !important;
}

@media (max-width: 480px) {
  .sp {
    display: block !important;
  }
}

body p.dep-ttl {
  margin-bottom: 8px;
  font-family: "Zen Maru Gothic";
  font-size: 20px;
  font-weight: bold;
  color: #6EBB57;
}

.owl30>*+* {
  margin-top: 30px !important;
}

a.blue-link {
  color: #0026FF;
  text-decoration: underline;
}

@media (any-hover: hover) {
  a.blue-link:hover {
    text-decoration: none;
  }
}

body .h4c {
  color: #B5BE18;
  font-family: "Zen Maru Gothic";
  font-style: normal;
  font-weight: 700;
  line-height: normal;
  position: relative;
  padding-left: 16px;
}

body .h4c::before {
  content: "";
  display: block;
  height: calc(100% - 6px);
  border-radius: 2px;
  width: 3px;
  position: absolute;
  background-color: #B5BE18;
  inset: auto auto 2px 0;
}

@media (min-width: 768px) {
  body .h4c {
    font-size: 20px;
    letter-spacing: 2px;
  }
}

@media (max-width: 767.99px) {
  body .h4c {
    font-size: 16px;
    letter-spacing: 1.6px;
  }
}

.green-txt {
  color: #6FBC58;
}

ul.cms-ullist li::before,
ul.dot-list li::before {
  content: "・";

}

.hover-all {
  position: relative;
}

.hover-all>a {
  display: block;
  height: 100%;
  width: 100%;
  font-size: 0;
  position: absolute;
  z-index: 9;
  top: 0;
  left: 0;
}

.center-text {
  text-align: center;
}

.anchor-box .anchor-list {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: stretch;
  gap: 20px;
  width: 100%;
}

.anchor-box .anchor-list li {
  width: calc((100% - 40px) / 3);
}

.anchor-box .anchor-list li>a {
  width: 100%;
  min-height: 50px;
  padding: 15px 5px;
  background: #D4EBB8;
  border-radius: 10px;
  transition: all 0.3s;

  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  gap: 7px;

  font-family: "Zen Maru Gothic";
  font-size: 22px;
  font-weight: 500;
  text-align: center;
}

.anchor-box .anchor-list li>a .icon>img {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
}

@media (min-width: 768px) {
  .anchor-box {
    max-width: 880px;
    width: 100%;
    margin: 0 auto;
  }
}

@media (max-width: 767.99px) {
  .anchor-box {
    max-width: 455px;
    width: 100%;
    margin: 0 auto;
  }

  .anchor-box .anchor-list {
    gap: 15px;
  }

  .anchor-box .anchor-list li {
    width: calc(50% - 8px);
  }

  .anchor-box .anchor-list li>a {
    padding: 10px 5px;
    min-height: 70px;
  }
}

@media (any-hover: hover) {
  .anchor-box .anchor-list li>a:hover {
    opacity: 0.7;
  }
}

.red-txt {
  color: #FF0000 !important;
}

.-flex1 {
  flex: 1;
}

@media (max-width: 767.99px) {
  .-flex1 {
    flex: unset;
    width: 100%;
  }
}

ol.cms-ollist,
ol.num-list {
  counter-reset: section;
}

ol.cms-ollist>li,
ol.num-list>li {
  counter-increment: section;
  position: relative;
}

ol.cms-ollist>li::before,
ol.num-list>li::before {
  content: counter(section) ".";
}

body .areaDouble1 {
  display: flex;
}

@media (min-width: 768px) {
  body .areaDouble1 {
    gap: 40px;
  }

  body .areaDouble1>* {
    width: calc((100% - 40px) / 2);
  }
}

@media (max-width: 767.99px) {
  body .areaDouble1 {
    flex-flow: column;
    flex-direction: column-reverse;
    gap: 20px;
  }
}

.pagination {
  display: flex;
  flex-flow: row wrap;
  justify-content: center;
  align-items: stretch;
  gap: 8px;
  margin-top: 80px;
}

@media only screen and (max-width: 767px) {
  .pagination {
    gap: 5px;
    margin-top: 40px;
  }
}

.pagination .item {
  display: grid;
  height: 50px;
  width: 50px;
  font-size: 16px;
  font-weight: bold;
  color: #333;
  line-height: 48px;
  text-align: center;
  text-decoration: none;
  border-radius: 50%;
  background-color: #ddd;
  transition: all 0.3s;
  place-content: center;
}

.pagination .item.icon {
  display: none;
}

/* href="#" 対応 */
.pagination .item[href="#"] {
  cursor: default;
  pointer-events: none;
}

@media only screen and (max-width: 767px) {
  .pagination .item {
    height: 40px;
    width: 40px;
    font-size: 14px;
  }

  .pagination .item .icon::before {
    font-size: 12px;
  }
}

/* hover / active */
.pagination a:hover,
.pagination .active {
  color: #fff;
  background: #EDF3EB;
}


/* 記事ページカラム */
.column-container {
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  justify-content: flex-start;
  align-items: flex-start;
  gap: 100px;
}

.column-container .l-page {
  flex: 1;
  margin: 0 auto;
  max-width: 700px;
}

.column-container .l-side {
  width: 300px;
  flex-shrink: 0;
  padding: 24px 20px;
  border-radius: 10px;
  background: #EDF3EB;
}

.column-container .l-side .side-ttl {
  font-family: "Zen Maru Gothic";
  font-size: 20px;
  font-weight: bold;
  color: #6EBB57;
  margin-bottom: 30px;
}

@media only screen and (max-width: 1200px) {
  .column-container .l-page {
    max-width: unset;
  }

  .column-container .l-side {
    display: none;
  }
}

.news-detail>*:empty {
  display: none;
  font-size: 0;
  line-height: 0;
  border: none;
  background: none;
  padding: 0;
  margin: 0;
}

.news-detail>*:empty::before,
.news-detail>*:empty::after {
  display: none;
}

.news-detail .h3a {
  margin-bottom: 30px;
}

.news-detail>*+.h3a {
  margin-top: 60px;
}

.news-detail .h4c {
  margin-bottom: 20px;
}

.news-detail>*+.h4c {
  margin-top: 40px;
}

.news-detail .news-detail-free {
  margin: 0 0 40px;
}

.news-detail .news-detail-free p {
  margin-bottom: 20px;
}

.news-detail .news-detail-image {
  margin: 30px auto;
}

.news-detail .news-detail-image>img,
.news-detail .news-detail-image>figure>img {
  height: auto;
  width: auto;
  max-width: 100%;
}

.news-detail .news-detail-image>figure>figcaption {
  font-size: 15px;
}

.news-detail a {
  color: #0026FF;
  text-decoration: underline;
}

@media (any-hover: hover) {
  .news-detail a:hover {
    text-decoration: none;
  }
}

.mb120 {
  margin-bottom: 120px !important;
}

@media only screen and (max-width: 768px) {
  .mb100-tb {
    margin-bottom: 100px !important;
  }
}

.fade {
  display: inline-block;
  opacity: 1;
  transition: opacity 0.2s;

  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}

.fade:hover {
  opacity: 0.7;
}

.bdrs10 {
  overflow: hidden;
  border-radius: 10px;
}

a[href^="tel:"] {
  color: inherit;
  text-decoration: underline;
}

@media only screen and (min-width: 769px) {
  a[href^="tel:"] {
    text-decoration: none;
    pointer-events: none;
  }
}

.gap10 {
  gap: 10px !important;
}

.close-text {
  font-family: "Noto Sans JP";
  font-size: 10px;
  font-weight: 600;
  line-height: 1;
  color: #F78640;
  text-align: center;
  letter-spacing: 0.001em;
  white-space: nowrap;
}

#tinymce .ani,
#tinymce .aniNotAuto,
#tinymce .aniFadeIn,
#tinymce .aniFadeIn03,
#tinymce .aniFadeIn08,
#tinymce .aniFadeUp,
#tinymce .aniFadeLeft,
#tinymce .aniFadeLeft2,
#tinymce .aniFadeLeft3,
#tinymce .aniFadeLeft06,
#tinymce .aniFadeRight,
#tinymce .aniFadeRight2,
#tinymce .aniFadeRight15,
#tinymce .aniFadeDown,
#tinymce .aniFadeDown05,
#tinymce .aniFadeDown15,
#tinymce .aniFadeDown20,
#tinymce .popup {
  opacity: 1;
  transform: 0;
}