@charset "UTF-8";
/*!
 * ress.css v2.0.2
 * MIT License
 * github.com/filipelinhares/ress
 */
/* # =================================================================
   # Global selectors
   # ================================================================= */
html {
  box-sizing: border-box;
  -webkit-text-size-adjust: 100%; /* Prevent adjustments of font size after orientation changes in iOS */
  word-break: break-word;
  -moz-tab-size: 4;
  tab-size: 4;
}

*,
::before,
::after {
  background-repeat: no-repeat; /* Set `background-repeat: no-repeat` to all elements and pseudo elements */
  box-sizing: inherit;
}

::before,
::after {
  text-decoration: inherit; /* Inherit text-decoration and vertical align to ::before and ::after pseudo elements */
  vertical-align: inherit;
}

* {
  padding: 0; /* Reset `padding` and `margin` of all elements */
  margin: 0;
}

/* # =================================================================
   # General elements
   # ================================================================= */
hr {
  overflow: visible; /* Show the overflow in Edge and IE */
  height: 0; /* Add the correct box sizing in Firefox */
}

details,
main {
  display: block; /* Render the `main` element consistently in IE. */
}

summary {
  display: list-item; /* Add the correct display in all browsers */
}

small {
  font-size: 80%; /* Set font-size to 80% in `small` elements */
}

[hidden] {
  display: none; /* Add the correct display in IE */
}

abbr[title] {
  border-bottom: none; /* Remove the bottom border in Chrome 57 */
  /* Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari */
  text-decoration: underline;
  text-decoration: underline dotted;
}

a {
  background-color: transparent; /* Remove the gray background on active links in IE 10 */
}

a:active,
a:hover {
  outline-width: 0; /* Remove the outline when hovering in all browsers */
}

code,
kbd,
pre,
samp {
  font-family: monospace, monospace; /* Specify the font family of code elements */
}

pre {
  font-size: 1em; /* Correct the odd `em` font sizing in all browsers */
}

b,
strong {
  font-weight: bolder; /* Add the correct font weight in Chrome, Edge, and Safari */
}

/* https://gist.github.com/unruthless/413930 */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/* # =================================================================
   # Forms
   # ================================================================= */
input {
  border-radius: 0;
}

/* Replace pointer cursor in disabled elements */
[disabled] {
  cursor: default;
}

[type=number]::-webkit-inner-spin-button,
[type=number]::-webkit-outer-spin-button {
  height: auto; /* Correct the cursor style of increment and decrement buttons in Chrome */
}

[type=search] {
  -webkit-appearance: textfield; /* Correct the odd appearance in Chrome and Safari */
  outline-offset: -2px;
}

[type=search]::-webkit-search-decoration {
  -webkit-appearance: none; /* Remove the inner padding in Chrome and Safari on macOS */
}

textarea {
  overflow: auto; /* Internet Explorer 11+ */
  resize: vertical; /* Specify textarea resizability */
}

button,
input,
optgroup,
select,
textarea {
  font: inherit; /* Specify font inheritance of form elements */
}

optgroup {
  font-weight: bold; /* Restore the font weight unset by the previous rule */
}

button {
  overflow: visible; /* Address `overflow` set to `hidden` in IE 8/9/10/11 */
}

button,
select {
  text-transform: none; /* Firefox 40+, Internet Explorer 11- */
}

/* Apply cursor pointer to button elements */
button,
[type=button],
[type=reset],
[type=submit],
[role=button] {
  cursor: pointer;
  color: inherit;
}

/* Remove inner padding and border in Firefox 4+ */
button::-moz-focus-inner,
[type=button]::-moz-focus-inner,
[type=reset]::-moz-focus-inner,
[type=submit]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

/* Replace focus style removed in the border reset above */
button:-moz-focusring,
[type=button]::-moz-focus-inner,
[type=reset]::-moz-focus-inner,
[type=submit]::-moz-focus-inner {
  outline: 1px dotted ButtonText;
}

button,
html [type=button],
[type=reset],
[type=submit] {
  -webkit-appearance: button; /* Correct the inability to style clickable types in iOS */
}

/* Remove the default button styling in all browsers */
button,
input,
select,
textarea {
  background-color: transparent;
  border-style: none;
}

/* Style select like a standard input */
select {
  -moz-appearance: none; /* Firefox 36+ */
  -webkit-appearance: none; /* Chrome 41+ */
}

select::-ms-expand {
  display: none; /* Internet Explorer 11+ */
}

select::-ms-value {
  color: currentColor; /* Internet Explorer 11+ */
}

legend {
  border: 0; /* Correct `color` not being inherited in IE 8/9/10/11 */
  color: inherit; /* Correct the color inheritance from `fieldset` elements in IE */
  display: table; /* Correct the text wrapping in Edge and IE */
  max-width: 100%; /* Correct the text wrapping in Edge and IE */
  white-space: normal; /* Correct the text wrapping in Edge and IE */
  max-width: 100%; /* Correct the text wrapping in Edge 18- and IE */
}

::-webkit-file-upload-button {
  /* Correct the inability to style clickable types in iOS and Safari */
  -webkit-appearance: button;
  color: inherit;
  font: inherit; /* Change font properties to `inherit` in Chrome and Safari */
}

/* # =================================================================
   # Specify media element style
   # ================================================================= */
img {
  border-style: none; /* Remove border when inside `a` element in IE 8/9/10 */
}

/* Add the correct vertical alignment in Chrome, Firefox, and Opera */
progress {
  vertical-align: baseline;
}

svg:not([fill]) {
  fill: currentColor;
}

/* # =================================================================
   # Accessibility
   # ================================================================= */
/* Hide content from screens but not screenreaders */
@media screen {
  [hidden~=screen] {
    display: inherit;
  }
  [hidden~=screen]:not(:active):not(:focus):not(:target) {
    position: absolute !important;
    clip: rect(0 0 0 0) !important;
  }
}
/* Specify the progress cursor of updating elements */
[aria-busy=true] {
  cursor: progress;
}

/* Specify the pointer cursor of trigger elements */
[aria-controls] {
  cursor: pointer;
}

/* Specify the unstyled cursor of disabled, not-editable, or otherwise inoperable elements */
[aria-disabled] {
  cursor: default;
}

* {
  letter-spacing: 0.05rem;
}

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

ul li {
  list-style: none;
}

a {
  text-decoration: none;
  color: #333;
  transition: all 0.2s;
}
a:focus {
  text-decoration: none;
  color: #333;
  transition: all 0.2s;
}
a:hover {
  opacity: 0.7;
  filter: alpha(opacity=70);
  -moz-opacity: 0.7;
}

html {
  overflow-x: hidden;
  font-size: 16px;
  line-height: 1.6;
  color: #333;
}
@media screen and (max-width: 520px) {
  html {
    font-size: 14px;
  }
}

body {
  margin: 0;
  padding: 0;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 500;
}

@media screen and (min-width: 1251px) {
  .show__1250 {
    display: none !important;
  }
}

@media screen and (max-width: 1250px) {
  .hide__1250 {
    display: none !important;
  }
}

@media screen and (min-width: 1025px) {
  .spc__show {
    display: none !important;
  }
}

@media screen and (max-width: 1024px) {
  .spc__hide {
    display: none !important;
  }
}

@media screen and (max-width: 820px), print {
  .ipad__hide {
    display: none !important;
  }
}
@media print {
  .ipad__hide {
    display: none;
  }
}

@media screen and (min-width: 821px) {
  .ipad__show {
    display: none !important;
  }
}

@media screen and (max-width: 520px) {
  .smp__hide {
    display: none !important;
  }
}

@media screen and (min-width: 521px) {
  .smp__show {
    display: none !important;
  }
}
@media print {
  .smp__show {
    display: none !important;
  }
}

.fs0 {
  font-size: 0;
}

.fs-S {
  font-size: 14px;
}

.fs-M {
  font-size: 18px;
}
@media screen and (max-width: 820px), print {
  .fs-M {
    font-size: 16px;
  }
}

.fs-L {
  font-size: 22px;
}
@media screen and (max-width: 820px), print {
  .fs-L {
    font-size: 18px;
  }
}

.flex {
  display: flex;
}

@media screen and (max-width: 820px), print {
  .flexColumn {
    flex-direction: column;
  }
}

@media screen and (max-width: 820px), print {
  .flexreColumn {
    flex-direction: column-reverse;
  }
}

.alignStart {
  align-items: flex-start;
}

.alignEnd {
  align-items: flex-end;
}

.alignCenter {
  align-items: center;
}

.justBetween {
  justify-content: space-between;
}

.justCenter {
  justify-content: center;
}

.justStart {
  justify-content: flex-start;
}

.justEnd {
  justify-content: flex-end;
}

.textLeft {
  text-align: left;
}

.textRight {
  text-align: right;
}

.textCenter {
  text-align: center;
}

.relative {
  position: relative;
}

.absolute {
  position: absolute;
}

.wrapper {
  max-width: 1200px;
  margin: 0 auto;
  width: 90%;
}

.wrap-1200 {
  max-width: 1000px;
  margin: 0 auto;
  width: 90%;
}

.wrap-1400 {
  max-width: 1400px;
  margin: 0 auto;
  width: 90%;
}

.col-2 {
  width: 47%;
}

.col-3 {
  width: 30%;
}

.col-4 {
  width: 23%;
}

.w-100 {
  width: 100%;
}

:root {
  --headerHeight: 120px;
  --sectionTop: 80px;
  --sectionBottom: 100px;
}
@media screen and (max-width: 1024px) {
  :root {
    --headerHeight: 60px;
  }
}
@media screen and (max-width: 820px), print {
  :root {
    --sectionTop: 40px;
    --sectionBottom: 60px;
  }
}
@media print {
  :root {
    --headerHeight: 60px;
  }
}

.margin {
  margin-top: var(--sectionTop);
  margin-bottom: var(--sectionBottom);
}

.padding {
  padding-top: var(--sectionTop);
  padding-bottom: var(--sectionBottom);
}

.mb-S {
  margin-bottom: 70px;
}

.mb-M {
  margin-bottom: 30px;
}

.mb-L {
  margin-bottom: 40px;
}

.TEL {
  font-size: 20px;
  margin-top: 25px;
  border-top: dashed 1px #5b3f34;
  padding-top: 10px;
}
@media screen and (max-width: 520px) {
  .TEL {
    font-size: 14px;
  }
}

.telFont {
  font-family: "Cantarell";
  font-weight: bold;
  font-size: 32px;
  letter-spacing: 3px;
  color: #90c31f;
}
.telFont a {
  color: #90c31f;
}
@media screen and (max-width: 520px) {
  .telFont {
    font-size: 30px;
  }
}

main,
.second {
  padding-top: var(--headerHeight);
}

#pankuzu {
  margin: 20px 0 60px;
  text-align: right;
}
@media screen and (max-width: 820px), print {
  #pankuzu {
    margin: 10px 0 30px;
  }
}
#pankuzu ul {
  scrollbar-width: thin;
  scrollbar-color: #cdcdcd;
  overflow-x: auto;
  overflow-y: hidden;
  overflow: auto;
  white-space: nowrap;
}
#pankuzu li {
  display: inline-block;
  font-size: 12px;
}
#pankuzu li + li {
  margin-left: 10px;
}
#pankuzu li a {
  color: #90c31f;
  border-bottom: 1px solid #90c31f;
}

#page_header {
  border-bottom: 1px solid #90c31f;
  text-align: center;
  padding: 30px 0 40px;
}
@media screen and (max-width: 520px) {
  #page_header {
    padding: 20px 0;
  }
}
#page_header h1 {
  font-size: 54px;
  color: #90c31f;
  position: relative;
  padding-top: 20px;
  font-weight: 500;
}
@media screen and (max-width: 820px), print {
  #page_header h1 {
    font-size: 42px;
  }
}
@media screen and (max-width: 520px) {
  #page_header h1 {
    font-size: 33px;
  }
}
#page_header .en {
  color: #90c31f;
  font-weight: bold;
  font-family: "Cantarell", sans-serif;
  font-size: 16px;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translate(-50%, 0);
  padding-left: 17px;
}
@media screen and (max-width: 520px) {
  #page_header .en {
    font-size: 12px;
  }
}
#page_header .en::before {
  position: absolute;
  content: "";
  background-image: url(../images/common/pageHeaderDeco.svg);
  background-size: contain;
  background-repeat: no-repeat;
  width: 12px;
  height: 12px;
  top: 50%;
  left: 0;
  transform: translate(0, -50%);
}

.secTitle {
  font-size: 40px;
  font-weight: 500;
  position: relative;
  padding-top: 35px;
  margin-bottom: 35px;
  line-height: 1.3;
}
.secTitle.contact {
  color: #fff;
}
.secTitle.contact .en {
  color: #fff;
}
.secTitle.contact .en::before {
  background-image: url(../images/common/pageHeaderDeco_w.svg);
}
.secTitle.left .en {
  left: 0;
  transform: none;
}
.secTitle .en {
  position: absolute;
  content: "";
  color: #90c31f;
  font-size: 16px;
  font-weight: bold;
  font-family: "Cantarell", sans-serif;
  top: 0;
  left: 50%;
  padding-left: 17px;
  transform: translate(-50%, 0);
  width: max-content;
}
.secTitle .en::before {
  position: absolute;
  content: "";
  background-image: url(../images/common/pageHeaderDeco.svg);
  background-size: contain;
  background-repeat: no-repeat;
  width: 12px;
  height: 12px;
  top: 50%;
  left: 0;
  transform: translate(0, -50%);
}
.secTitle .en.orange {
  color: #f49a40;
}
.secTitle .en.orange::before {
  background-image: url(../images/common/pageHeaderDeco02.svg);
}
.secTitle.__blue::after {
  color: #77a7bc;
}
.secTitle.__white {
  color: #fff;
}
@media screen and (max-width: 820px), print {
  .secTitle {
    padding-top: 30px;
    font-size: 28px;
  }
  .secTitle:after {
    font-size: 26px;
  }
}
@media screen and (max-width: 520px) {
  .secTitle {
    font-size: 26px;
  }
  .secTitle:after {
    font-size: 24px;
  }
}

.brownBg {
  background-color: #f7f2ed;
}

.blueBg {
  background-color: #90c31f;
}

.button01 {
  background-color: #90c31f;
  border: 1px solid #fff;
  color: #fff;
  display: block;
  font-size: 16px;
  padding: 20px;
  position: relative;
  text-align: center;
  transition: 0.3s;
  max-width: 320px;
  width: 100%;
  box-shadow: 0px 0px 0px 2px rgb(144, 195, 31);
  border-radius: 80px;
}
@media screen and (max-width: 520px) {
  .button01 {
    font-size: 16px;
    padding: 15px 0;
    max-width: 100%;
    width: 100%;
  }
}
.button01::before {
  position: absolute;
  content: "";
  border: 1px solid #90c31f;
  border-radius: 80px;
  width: calc(100% + 8px);
  height: calc(100% + 8px);
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  transition: all 0.3s;
  opacity: 0;
}
.button01.__center {
  margin: 0 auto;
}
@media screen and (max-width: 820px), print {
  .button01.__left {
    margin: 0 auto;
  }
}
.button01.orange {
  background-color: #f49a40;
  box-shadow: 0px 0px 0px 2px rgb(224, 154, 64);
}
.button01.orange::before {
  border: 1px solid #f49a40;
}
.button01:visited {
  color: #fff;
}
.button01 span {
  position: relative;
  padding-right: 20px;
}
.button01 span:after {
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  background-image: url(../images/common/arw.svg);
  content: "";
  display: block;
  position: absolute;
  right: 0;
  transition: all 0.2s;
  width: 11px;
  height: 13px;
  top: 50%;
  transform: translate(0, -50%);
}
.button01:hover {
  background-color: #fff;
  box-shadow: 0px 0px 0px 2px rgb(255, 255, 255);
  border: 1px solid #90c31f;
  color: #90c31f;
  opacity: 1;
}
.button01:hover::before {
  transition: all 0.3s;
  opacity: 1;
}
.button01:hover span:after {
  background-image: url(../images/common/arw02.svg);
  transition: all 0.2s;
}
.button01:hover.orange {
  border: 1px solid #f49a40;
  color: #f49a40;
}
.button01:hover.orange span:after {
  background-image: url(../images/recruit/orangeArw.png);
  transition: all 0.2s;
}

#bannerBottom .bannerFlex {
  margin: 120px 0;
}
@media screen and (max-width: 820px), print {
  #bannerBottom .bannerFlex {
    margin: 60px 0;
  }
}
@media screen and (max-width: 520px) {
  #bannerBottom .bannerFlex {
    flex-direction: column;
  }
}
@media print {
  #bannerBottom .bannerFlex {
    padding: 60px 0;
  }
}
#bannerBottom .bannerFlex .bannerItem {
  width: 48%;
}
@media screen and (max-width: 520px) {
  #bannerBottom .bannerFlex .bannerItem {
    width: 100%;
  }
  #bannerBottom .bannerFlex .bannerItem + .bannerItem {
    margin-top: 20px;
  }
}
#bannerBottom .bannerFlex .bannerItem:hover {
  opacity: 0.8 !important;
}

.open-default:hover {
  cursor: pointer;
}

.iziModal {
  height: 80vh !important;
  max-width: 1010px !important;
  border-radius: 30px !important;
  width: 90%;
}
@media screen and (max-width: 820px), print {
  .iziModal {
    border-radius: 15px !important;
  }
}
@media print {
  .iziModal {
    display: none;
  }
}
.iziModal .close_modal {
  position: fixed;
  font-size: 60px;
  line-height: 1;
  top: -65px;
  right: 0;
  font-weight: 100;
}
.iziModal .close_modal:hover {
  cursor: pointer;
}
.iziModal .close_modal a {
  color: #fff;
}
@media print {
  .iziModal .close_modal a {
    color: transparent;
  }
}
.iziModal#modal-kakaritsuke .modal-kakaritsuke {
  overflow-y: scroll;
  max-height: 80vh;
  padding: 50px 60px 0;
  -ms-overflow-style: none;
  /* Firefox 対応 */
  scrollbar-width: none;
}
.iziModal#modal-kakaritsuke .modal-kakaritsuke::-webkit-scrollbar {
  display: none;
}
@media screen and (max-width: 820px), print {
  .iziModal#modal-kakaritsuke .modal-kakaritsuke {
    padding: 45px 45px 0;
  }
}
@media screen and (max-width: 520px) {
  .iziModal#modal-kakaritsuke .modal-kakaritsuke {
    padding: 30px 20px 0;
  }
}
.iziModal#modal-kakaritsuke .modal-kakaritsuke .secTitle {
  padding-top: 0;
}
.iziModal#modal-kakaritsuke .modal-kakaritsuke .secTitle .big {
  color: #90c31f;
  font-size: 70px;
  font-family: "Cantarell";
  font-weight: bold;
}
@media screen and (max-width: 520px) {
  .iziModal#modal-kakaritsuke .modal-kakaritsuke .secTitle .big {
    font-size: 35px;
  }
}
.iziModal#modal-kakaritsuke .modal-kakaritsuke .seidoFlex {
  margin-bottom: 80px;
}
@media screen and (max-width: 820px), print {
  .iziModal#modal-kakaritsuke .modal-kakaritsuke .seidoFlex {
    flex-direction: column;
    margin-bottom: 40px;
  }
}
.iziModal#modal-kakaritsuke .modal-kakaritsuke .seidoFlex .seidoImage {
  width: 50%;
}
@media screen and (max-width: 820px), print {
  .iziModal#modal-kakaritsuke .modal-kakaritsuke .seidoFlex .seidoImage {
    width: 80%;
    margin: 0 auto;
    margin-bottom: 20px;
  }
}
@media screen and (max-width: 520px) {
  .iziModal#modal-kakaritsuke .modal-kakaritsuke .seidoFlex .seidoImage {
    width: 100%;
  }
}
.iziModal#modal-kakaritsuke .modal-kakaritsuke .seidoFlex .seidoTextArea {
  width: 46.5%;
}
@media screen and (max-width: 820px), print {
  .iziModal#modal-kakaritsuke .modal-kakaritsuke .seidoFlex .seidoTextArea {
    width: 100%;
  }
}
.iziModal#modal-kakaritsuke .modal-kakaritsuke .seidoFlex .seidoTextArea .seidoTitle {
  font-size: 22px;
  font-weight: 500;
  color: #90c31f;
  margin-bottom: 15px;
  line-height: 35px;
}
@media screen and (max-width: 820px), print {
  .iziModal#modal-kakaritsuke .modal-kakaritsuke .seidoFlex .seidoTextArea .seidoTitle {
    font-size: 20px;
    line-height: 28px;
  }
}
.iziModal#modal-kakaritsuke .modal-kakaritsuke .seidoFlex .seidoTextArea .seidoText {
  font-weight: 500;
  line-height: 36px;
}
@media screen and (max-width: 820px), print {
  .iziModal#modal-kakaritsuke .modal-kakaritsuke .seidoFlex .seidoTextArea .seidoText {
    line-height: 28px;
  }
}
.iziModal#modal-kakaritsuke .modal-kakaritsuke .tokuchoFlex {
  margin-bottom: 70px;
  flex-wrap: wrap;
}
@media screen and (max-width: 1150px) {
  .iziModal#modal-kakaritsuke .modal-kakaritsuke .tokuchoFlex {
    max-width: 800px;
    margin: 0 auto;
  }
}
@media screen and (max-width: 820px), print {
  .iziModal#modal-kakaritsuke .modal-kakaritsuke .tokuchoFlex {
    margin-bottom: 40px;
  }
}
.iziModal#modal-kakaritsuke .modal-kakaritsuke .tokuchoFlex .tokuchoItem {
  width: 30%;
}
@media screen and (max-width: 1150px) {
  .iziModal#modal-kakaritsuke .modal-kakaritsuke .tokuchoFlex .tokuchoItem {
    width: 48%;
  }
  .iziModal#modal-kakaritsuke .modal-kakaritsuke .tokuchoFlex .tokuchoItem:nth-child(3) {
    margin-top: 30px;
  }
}
.iziModal#modal-kakaritsuke .modal-kakaritsuke .tokuchoFlex .tokuchoItem .tokuchoImage {
  margin-bottom: 35px;
}
@media screen and (max-width: 820px), print {
  .iziModal#modal-kakaritsuke .modal-kakaritsuke .tokuchoFlex .tokuchoItem .tokuchoImage {
    margin-bottom: 20px;
  }
}
.iziModal#modal-kakaritsuke .modal-kakaritsuke .tokuchoFlex .tokuchoItem .tokuchoTitle {
  font-size: 18px;
  font-weight: 500;
  line-height: 25px;
  background-color: #f2e8a7;
  border-radius: 3px;
  padding: 5px 10px;
  margin-bottom: 15px;
}
@media screen and (max-width: 820px), print {
  .iziModal#modal-kakaritsuke .modal-kakaritsuke .tokuchoFlex .tokuchoItem .tokuchoTitle {
    font-size: 14px;
    margin-bottom: 10px;
  }
}
.iziModal#modal-kakaritsuke .modal-kakaritsuke .tokuchoFlex .tokuchoItem .tokuchoText {
  font-weight: 500;
  line-height: 32px;
}
@media screen and (max-width: 820px), print {
  .iziModal#modal-kakaritsuke .modal-kakaritsuke .tokuchoFlex .tokuchoItem .tokuchoText {
    font-size: 13px;
    line-height: 26px;
  }
}
.iziModal#modal-kakaritsuke .modal-kakaritsuke .shimeiFlex {
  margin-top: 30px;
  justify-content: center;
}
@media screen and (max-width: 820px), print {
  .iziModal#modal-kakaritsuke .modal-kakaritsuke .shimeiFlex {
    flex-direction: column;
    align-items: center;
  }
}
.iziModal#modal-kakaritsuke .modal-kakaritsuke .shimeiFlex .shimeiBaloon {
  position: relative;
  background: #f0f9d9;
  padding: 20px 30px;
  border-radius: 10px;
}
@media screen and (max-width: 820px), print {
  .iziModal#modal-kakaritsuke .modal-kakaritsuke .shimeiFlex .shimeiBaloon {
    padding: 15px 20px;
  }
}
.iziModal#modal-kakaritsuke .modal-kakaritsuke .shimeiFlex .shimeiBaloon::after {
  content: "";
  position: absolute;
  background-image: url(../images/top/arw_1.svg);
  background-size: contain;
  background-repeat: no-repeat;
  width: 31px;
  height: 34px;
  top: 50%;
  right: -20px;
  transform: translate(0, -50%);
}
@media screen and (max-width: 820px), print {
  .iziModal#modal-kakaritsuke .modal-kakaritsuke .shimeiFlex .shimeiBaloon::after {
    background-image: url(../images/top/arw_2.svg);
    top: auto;
    bottom: -17px;
    right: auto;
    left: 50%;
    transform: translate(-50%, 0);
  }
}
.iziModal#modal-kakaritsuke .modal-kakaritsuke .shimeiFlex .shimeiBaloon p {
  font-size: 18px;
  font-weight: 500;
  line-height: 36px;
}
@media screen and (max-width: 1024px) {
  .iziModal#modal-kakaritsuke .modal-kakaritsuke .shimeiFlex .shimeiBaloon p {
    font-size: 14px;
  }
}
@media screen and (max-width: 820px), print {
  .iziModal#modal-kakaritsuke .modal-kakaritsuke .shimeiFlex .shimeiBaloon p {
    line-height: 17px;
  }
}
.iziModal#modal-kakaritsuke .modal-kakaritsuke .shimeiFlex .shimeiImage {
  margin-left: 27px;
}
@media screen and (max-width: 820px), print {
  .iziModal#modal-kakaritsuke .modal-kakaritsuke .shimeiFlex .shimeiImage {
    margin-top: 15px;
  }
}

.iziModal-overlay {
  background-color: rgba(144, 195, 31, 0.5) !important;
}

.week-table {
  border-collapse: separate;
  border-spacing: 0;
  border: 1px solid #ccc;
  border-radius: 12px;
  overflow: hidden;
  width: 100%;
}
.week-table th {
  color: #fff;
  width: 30px;
  height: 55px;
}
@media screen and (max-width: 520px) {
  .week-table th {
    height: 35px;
  }
}
.week-table th:nth-child(odd) {
  background-color: #90c31f;
}
.week-table th:nth-child(even) {
  background-color: rgba(144, 195, 31, 0.8);
}
.week-table th:first-child {
  border-top-left-radius: 10px;
}
.week-table th:last-child {
  border-top-right-radius: 10px;
}
.week-table td {
  color: #333;
  line-height: 16px;
  height: 55px;
  background-color: #fff;
}
@media screen and (max-width: 520px) {
  .week-table td {
    height: 35px;
    font-size: 12px;
  }
}
.week-table td.green {
  background-color: #f3f4eb;
}
.week-table td:first-child {
  border-bottom-left-radius: 10px;
}
.week-table td:last-child {
  border-bottom-right-radius: 10px;
}
.week-table th,
.week-table td {
  border: 1px solid #ccc;
  text-align: center;
}

@media print {
  .fadein {
    opacity: 1 !important;
    transform: translateY(0);
  }
}

.editor {
  margin-bottom: 60px;
}
@media screen and (max-width: 820px), print {
  .editor {
    margin-bottom: 40px;
  }
}

.editor h1 {
  font-size: 200%;
}

.editor h2 {
  font-size: 150%;
}

.editor h3 {
  font-size: 120%;
}

.editor h4 {
  font-size: 100%;
}

.editor h5 {
  font-size: 80%;
}

.editor h6 {
  font-size: 70%;
}

.editor p {
  display: block;
  margin: 1em 0;
}

.editor strong {
  font-weight: bold;
}

.editor b {
  font-weight: bold;
}

.editor em {
  font-style: italic;
}

.editor blockquote {
  display: block;
  -webkit-margin-before: 1em;
  -webkit-margin-after: 1em;
  -webkit-margin-start: 40px;
  -webkit-margin-end: 40px;
}

/* img */
.editor .aligncenter {
  display: block;
  margin: 0 auto;
}

.editor .alignright {
  float: right;
}

.editor .alignleft {
  float: left;
}

.editor img[class*=wp-image-],
.editor img[class*=attachment-] {
  height: auto;
  max-width: 100%;
}

/* clearfix */
.clearfix {
  overflow: hidden;
  zoom: 1;
}

.clearfix:after {
  content: "";
  display: block;
  clear: both;
}

.gallery {
  width: 100%;
  margin-bottom: 20px !important;
  overflow: hidden;
}

.gallery br {
  display: none;
}

.gallery-item {
  float: left;
  margin-bottom: 0 !important;
}

.gallery-icon {
  text-align: center;
}

.gallery-icon img {
  height: auto;
  margin-bottom: 10px !important;
}

.gallery-caption {
  color: #222;
  font-size: 12px;
  margin: 0 0 10px;
  text-align: center;
}

.gallery-columns-1 .gallery-item {
  width: 100%;
  margin-right: 0;
}

.gallery-columns-2 .gallery-item {
  width: 48%;
  margin: 0 1%;
}

.gallery-columns-3 .gallery-item {
  width: 31.33333%;
  margin: 0 1%;
}

.gallery-columns-4 .gallery-item {
  width: 23%;
  margin: 0 1%;
}

.gallery-columns-5 .gallery-item {
  width: 18%;
  margin: 0 1%;
}

@media screen and (max-width: 640px) {
  .gallery-columns-3 .gallery-item,
  .gallery-columns-4 .gallery-item {
    width: 48%;
    margin: 0 1%;
  }
  .gallery-columns-5 .gallery-item {
    width: 31.33333%;
    margin: 0 1%;
  }
}
/* header */
.headerInner {
  background-color: #fff;
  top: 0;
  left: 0;
  height: var(--headerHeight);
  position: fixed;
  padding: 0 30px;
  width: 100%;
  z-index: 997;
}
@media screen and (max-width: 820px), print {
  .headerInner {
    padding: 0 0 0 20px;
    box-shadow: 4px -15px 20px 0px #5b3f34;
  }
}
@media screen and (max-width: 520px) {
  .headerInner {
    padding: 0 0 0 10px;
  }
}
@media print {
  .headerInner {
    position: absolute;
  }
}
@media (max-width: 1200px) {
  .headerInner .headerLogo {
    width: 200px;
  }
}
@media screen and (max-width: 1024px) {
  .headerInner .headerLogo {
    width: 150px;
  }
}
@media screen and (max-width: 820px), print {
  .headerInner .headerLogo {
    width: 230px;
  }
}
@media print {
  .headerInner .headerLogo {
    width: 205px;
  }
}

@media screen and (max-width: 1024px) {
  #gNav .headerNav {
    font-size: 12px;
  }
}
@media screen and (max-width: 820px), print {
  #gNav .headerNav {
    font-size: 16px;
  }
}
@media screen and (max-width: 820px), print {
  #gNav {
    background-color: #f3f4eb;
    display: none;
    font-size: 16px;
    position: fixed;
    left: 0;
    top: var(--headerHeight);
    height: calc(100vh - var(--headerHeight));
    overflow-y: auto;
    width: 100%;
  }
  #gNav .headerNav {
    align-items: baseline;
    flex-direction: column;
    padding: 40px 20px 0;
  }
  #gNav .headerNav .headerPrivacy {
    font-size: 13px;
    padding: 30px 10px;
    color: #333;
  }
  #gNav .headerNav .telArea {
    margin: 0 auto;
  }
  #gNav .headerNav .telArea .telImage {
    margin-right: 10px;
    width: 10%;
  }
  #gNav .headerNav .telArea .telNumber {
    font-size: 30px;
    line-height: 1;
  }
  #gNav .headerNav .telArea .telNumber a {
    letter-spacing: 0.1rem;
  }
  #gNav .headerNav .telArea .openTime {
    font-size: 14px;
    letter-spacing: 0.1rem;
    margin-top: 5px;
  }
}
@media print {
  #gNav {
    display: none;
  }
}
#gNav .PriFont {
  font-weight: normal;
  width: 100%;
  padding: 20px 30px;
  display: block;
}
#gNav .h_jouhuo {
  padding: 20px 20px;
}
#gNav .h_jouhuo .font17 {
  font-size: 17px;
  margin-bottom: 10px;
}
#gNav .h_jouhuo .TEL {
  font-size: 17px;
}
#gNav .h_jouhuo .wrapper {
  width: 100%;
}

.headerNavList + .headerNavList {
  margin-left: clamp(1px, 1.7vw, 35px);
}
@media (max-width: 1200px) {
  .headerNavList {
    font-size: 14px;
  }
}
@media screen and (max-width: 1024px) {
  .headerNavList {
    font-size: 12px;
  }
}
@media screen and (max-width: 820px), print {
  .headerNavList {
    font-size: 15px;
  }
}
.headerNavList.headContactBtn {
  background-color: #f49a40;
  color: #fff;
  border-radius: 35px;
}
.headerNavList.headContactBtn .headerNavList__link {
  align-items: center;
  color: #f8f9f4;
  display: flex;
  justify-content: center;
  height: 70px;
  width: 210px;
  border: 1px solid #fff;
  box-shadow: 0px 0px 0px 2px #f49a40;
  border-radius: 35px;
}
@media (max-width: 1200px) {
  .headerNavList.headContactBtn .headerNavList__link {
    width: 170px;
    font-size: 14px;
  }
}
@media screen and (max-width: 1024px) {
  .headerNavList.headContactBtn .headerNavList__link {
    height: 45px;
    width: 112px;
    font-size: 12px;
  }
}
@media screen and (max-width: 820px), print {
  .headerNavList.headContactBtn .headerNavList__link {
    font-size: 14px;
  }
}
@media screen and (max-width: 820px), print {
  .headerNavList {
    width: 100%;
  }
  .headerNavList:first-of-type .headerNavList__link {
    border-top: 1px solid #fff;
  }
  .headerNavList + .headerNavList {
    margin-left: 0;
  }
  .headerNavList .headerNavList__link {
    border-bottom: 1px solid #fff;
    display: block;
    padding: 20px 10px;
    position: relative;
    width: 100%;
  }
  .headerNavList.headContactBtn {
    background-color: transparent;
  }
  .headerNavList.headContactBtn .headerNavList__link {
    color: #f49a40;
    display: block;
    height: auto;
    width: 100%;
  }
}

.acdTitle {
  cursor: pointer;
  padding: 20px;
  position: relative;
}
.acdTitle::after {
  background-image: url(../images/common/bottomArw@2x.png);
  background-size: contain;
  content: "";
  display: block;
  height: 10px;
  position: absolute;
  right: 20px;
  top: 45%;
  width: 15px;
}
.acdTitle.open::after {
  background-image: url(../images/common/topArw@2x.png);
}
.acdTitle.open + .acdInner {
  max-height: 1000px;
  opacity: 1;
  visibility: visible;
}
.acdTitle.open + .acdInner li {
  padding: 15px 0;
}
.acdTitle.open + .acdInner li + li {
  border-top: 1px solid #ccc;
}

@media screen and (max-width: 820px), print {
  .acdTitle2 {
    cursor: pointer;
    padding: 20px;
    position: relative;
  }
  .acdTitle2::after {
    background-image: url(../images/common/rightArw@2x.png);
    background-size: contain;
    content: "";
    display: block;
    height: 10px;
    position: absolute;
    right: 20px;
    top: 45%;
    width: 15px;
  }
}

.acdInner {
  transition: 0.3s;
  background-color: #fff;
  max-height: 0;
  opacity: 0;
  visibility: hidden;
}
.acdInner .linkList {
  padding: 0 20px 0;
  border-bottom: 1px solid #ccc;
}
.acdInner .linkList a {
  display: block;
  padding: 10px 0 10px 20px;
  font-size: 14px;
  position: relative;
}
.acdInner .linkList a::after {
  content: "";
  background-color: #90c31f;
  border-radius: 50%;
  height: 9px;
  left: 0;
  top: 50%;
  transform: translate(0, -50%);
  position: absolute;
  width: 9px;
}
.acdInner .linkList a.Detail02::after {
  top: 50%;
}
.acdInner .linkList li {
  padding: 15px 0;
}

:root {
  --borderPosition: 12px;
}

.telMenu {
  cursor: pointer;
  position: relative;
  height: var(--headerHeight);
  width: var(--headerHeight);
  border-left: solid 1px #90c31f;
}
.telMenu::after {
  content: "";
  background-image: url(../images/common/headerTel.png);
  background-size: contain;
  position: absolute;
  width: 25px;
  height: 25px;
  left: 30%;
  top: 15%;
}
.telMenu::before {
  bottom: 7px;
  content: "TEL";
  font-family: "Cantarell";
  font-weight: bold;
  color: #90c31f;
  font-size: 10px;
  left: 50%;
  position: absolute;
  transform: translate(-50%, 0);
  text-align: center;
  width: 100%;
}

.hunsMenu {
  background: #90c31f;
  cursor: pointer;
  position: relative;
  height: var(--headerHeight);
  width: var(--headerHeight);
}
.hunsMenu::before {
  bottom: 7px;
  content: "MENU";
  font-family: "Cantarell";
  color: #fff;
  font-size: 10px;
  font-weight: bold;
  left: 50%;
  position: absolute;
  transform: translate(-50%, 0);
  text-align: center;
  width: 100%;
}
.hunsMenu span {
  background: #fff;
  display: inline-block;
  left: 50%;
  position: absolute;
  transition: all 0.4s;
  transform: translate(-50%, 0);
  height: 2px;
  width: 30px;
}
.hunsMenu span:nth-of-type(1) {
  top: var(--borderPosition);
}
.hunsMenu span:nth-of-type(2) {
  top: calc(var(--borderPosition) + 10px);
}
.hunsMenu span:nth-of-type(3) {
  top: calc(var(--borderPosition) + 20px);
}
.hunsMenu.active::before {
  content: "CLOSE";
}
.hunsMenu.active span:nth-of-type(1) {
  top: 13px;
  transform: translateX(-50%) translateY(6px) rotate(-45deg);
}
.hunsMenu.active span:nth-of-type(2) {
  opacity: 0;
}
.hunsMenu.active span:nth-of-type(3) {
  top: 25px;
  transform: translateX(-50%) translateY(-6px) rotate(45deg);
}

.footContactsubTitle {
  color: #fff;
  font-size: 18px;
}

@media screen and (max-width: 820px), print {
  .footContactCard {
    flex-direction: column;
  }
}

.greenBg {
  background-color: #90c31f;
  padding: 50px 70px 0;
  margin: 0 auto;
  border-radius: 20px;
  max-width: 1000px;
  box-shadow: 0px 0px 0px 4px rgb(144, 195, 31);
  border: 1px solid #fff;
  position: relative;
  width: 90%;
}
@media screen and (max-width: 820px), print {
  .greenBg {
    width: 80%;
  }
}
@media screen and (max-width: 520px) {
  .greenBg {
    width: 90%;
    padding: 30px 0 0;
  }
}
.greenBg::before {
  content: "";
  position: absolute;
  top: -30px;
  right: -20px;
  width: 100px;
  height: 100px;
  background: url(../images/common/contact1@2x.png) no-repeat center/contain;
  pointer-events: none;
}
@media screen and (max-width: 520px) {
  .greenBg::before {
    width: 80px;
    height: 80px;
  }
}
.greenBg::after {
  content: "";
  position: absolute;
  bottom: -30px;
  left: -30px;
  width: 100px;
  height: 100px;
  background: url(../images/common/contact2@2x.png) no-repeat center/contain;
  pointer-events: none;
}
@media screen and (max-width: 820px), print {
  .greenBg::after {
    left: -20px;
  }
}
@media screen and (max-width: 520px) {
  .greenBg::after {
    left: -10px;
    width: 80px;
    height: 80px;
  }
}

.contactBtn {
  background-color: #fff;
  border-radius: 500px;
  color: #333;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  padding: 15px 0;
  max-width: 415px;
  width: 100%;
  box-shadow: 0px 7px 0px 0px #eaeaea;
}
.contactBtn:visited {
  color: #333;
}
.contactBtn + .contactBtn {
  margin-left: 20px;
}
@media screen and (max-width: 820px), print {
  .contactBtn {
    margin: 0 auto;
  }
  .contactBtn + .contactBtn {
    margin-left: auto;
    margin-top: 70px;
    padding: 25px 0;
  }
}
.contactBtn .text-big {
  font-size: 20px;
}

.telContact {
  pointer-events: none;
  position: relative;
}
@media screen and (max-width: 520px) {
  .telContact {
    pointer-events: auto;
  }
}
.telContact .hukidashi {
  position: absolute;
  top: -25px;
  background-color: #f2e8a7;
  padding: 4px 6px 5px;
  border-radius: 3px;
}
.telContact .hukidashi::after {
  content: "";
  position: absolute;
  bottom: -18px;
  left: 50%;
  transform: translateX(-50%);
  border: 10px solid transparent;
  border-top-color: #f2e8a7;
}
.telContact .hukidashi .hukidashi-deko {
  position: relative;
  padding-left: 24px;
}
.telContact .hukidashi .hukidashi-deko::before {
  position: absolute;
  background-image: url(../images/common/tel_deko@2x.png);
  content: "";
  background-size: contain;
  background-position: center;
  top: 50%;
  transform: translate(0, -50%);
  left: 0;
  height: 20px;
  width: 20px;
}
.telContact .hukidashi .text-big {
  font-size: 20px;
}
.telContact .telNumber {
  font-size: 30px;
}
.telContact .telNumber .telIcon {
  padding-left: 30px;
  position: relative;
  font-family: "Cantarell";
  font-weight: bold;
  font-size: 23px;
}
.telContact .telNumber .telIcon::before {
  content: "";
  position: absolute;
  background-image: url(../images/common/tel@2x.png);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  top: 50%;
  transform: translate(0, -50%);
  left: 0;
  height: 26px;
  width: 26px;
}
.telContact .saleTime {
  font-size: 14px;
  text-align: center;
  color: #666666;
}
@media screen and (max-width: 520px) {
  .telContact .saleTime {
    font-size: 16px;
  }
}

.formContact {
  position: relative;
}
.formContact .hukidashi {
  position: absolute;
  top: -25px;
  background-color: #f2e8a7;
  padding: 4px 6px 5px;
  border-radius: 3px;
}
.formContact .hukidashi::after {
  content: "";
  position: absolute;
  bottom: -18px;
  left: 50%;
  transform: translateX(-50%);
  border: 10px solid transparent;
  border-top-color: #f2e8a7;
}
.formContact .hukidashi .hukidashi-deko {
  position: relative;
  padding-left: 24px;
}
.formContact .hukidashi .hukidashi-deko::before {
  position: absolute;
  background-image: url(../images/common/form_deko@2x.png);
  content: "";
  background-size: contain;
  background-position: center;
  top: 50%;
  transform: translate(0, -50%);
  left: 0;
  height: 20px;
  width: 20px;
}
.formContact .hukidashi .text-big {
  font-size: 20px;
}
.formContact .saleTime {
  text-align: center;
  font-size: 14px;
  color: #666666;
}
.formContact .mailIcon {
  position: relative;
  padding-left: 30px;
}
.formContact .mailIcon::before {
  position: absolute;
  content: "";
  background-image: url(../images/common/mail@2x.png);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  top: 50%;
  transform: translate(0, -50%);
  left: 0;
  height: 26px;
  width: 26px;
}

@media screen and (max-width: 820px), print {
  .talkSpace .flex {
    display: block;
  }
}
.talkSpace .space {
  margin-top: 30px;
  justify-content: center;
}
.talkSpace .space .speech-bubble {
  position: relative;
  background: #f0f9d9;
  padding: 1em;
  border-radius: 10px;
  width: fit-content;
  margin: 20px;
}
@media screen and (max-width: 820px), print {
  .talkSpace .space .speech-bubble {
    margin: 40px 20px 20px;
  }
}
.talkSpace .space .speech-bubble::after {
  content: "";
  position: absolute;
  top: 50%;
  right: -19px; /* 吹き出しの右側に */
  margin-top: -10px;
  border-width: 10px;
  border-style: solid;
  border-color: transparent transparent transparent #f0f9d9;
}
@media screen and (max-width: 820px), print {
  .talkSpace .space .speech-bubble::after {
    right: 0;
    /* bottom: -20px; */
    top: 98%;
    left: 0;
    width: 0px;
    height: 0px;
    margin: auto;
    border-style: solid;
    border-color: #f0f9d9 transparent transparent transparent;
    border-width: 15px 15px 0 15px;
  }
}
@media screen and (max-width: 520px) {
  .talkSpace .space .speech-bubble p {
    font-size: 16px;
  }
}
@media screen and (max-width: 820px), print {
  .talkSpace .space .staff {
    text-align: center;
  }
}
.talkSpace .space .staff img {
  margin-bottom: -6px;
}
@media screen and (max-width: 820px), print {
  .talkSpace .space .staff img {
    width: 25%;
  }
}

/*  footer  */
footer {
  background-color: #f3f4eb;
  position: relative;
  border-radius: 90px 90px 0 0;
  padding-top: 120px;
}
@media screen and (max-width: 820px), print {
  footer {
    padding-top: 80px;
    border-radius: 45px 45px 0 0;
  }
}
@media screen and (max-width: 520px) {
  footer {
    padding-top: 60px;
  }
}
footer::before {
  position: absolute;
  content: "";
  background-image: url(../images/common/cloverBg1@2x.png);
  background-size: contain;
  width: 502px;
  height: 757px;
  top: 250px;
  left: 0;
}
@media screen and (max-width: 820px), print {
  footer::before {
    width: 302px;
    height: 667px;
    top: 620px;
  }
}
footer::after {
  position: absolute;
  content: "";
  background-image: url(../images/common/cloverBg2@2x.png);
  background-size: contain;
  width: 174px;
  height: 270px;
  bottom: 10px;
  right: 0;
}
@media screen and (max-width: 820px), print {
  footer.Wf_pad {
    padding-bottom: 80px;
  }
}
@media screen and (max-width: 520px) {
  footer.Wf_pad {
    padding-bottom: 60px;
  }
}
footer .footLogo {
  display: inline-block;
  margin-bottom: 20px;
}
@media screen and (max-width: 820px), print {
  footer .footLogo {
    width: 70%;
  }
}
footer .footer-inner {
  display: flex;
  justify-content: space-between;
  margin-top: 90px;
}
@media screen and (max-width: 1024px) {
  footer .footer-inner {
    display: block;
  }
}
footer .footer-left {
  width: 50%;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}
@media screen and (max-width: 1024px) {
  footer .footer-left {
    width: 100%;
    text-align: center;
  }
}
@media print {
  footer .footer-left {
    width: 100%;
    text-align: center;
  }
}
@media screen and (max-width: 1024px) {
  footer .footer-left .ipadFlex {
    display: flex;
    justify-content: space-between;
  }
}
@media screen and (max-width: 767px) {
  footer .footer-left .ipadFlex {
    flex-direction: column;
  }
}
@media screen and (max-width: 1024px) {
  footer .footer-left .ipadFlex .ipadLeft {
    width: 360px;
    text-align: justify;
  }
}
@media screen and (max-width: 767px) {
  footer .footer-left .ipadFlex .ipadLeft {
    width: 100%;
  }
}
@media screen and (max-width: 1024px) {
  footer .footer-left .ipadFlex .ipadRight {
    width: calc(100% - 360px);
    text-align: justify;
  }
}
@media screen and (max-width: 767px) {
  footer .footer-left .ipadFlex .ipadRight {
    width: 80%;
    margin: 0 auto;
  }
}
@media screen and (max-width: 520px) {
  footer .footer-left .ipadFlex .ipadRight {
    width: 100%;
  }
}
footer .footer-right {
  width: calc(50% - 60px);
}
@media screen and (max-width: 1024px) {
  footer .footer-right {
    display: none;
  }
}
@media print {
  footer .footer-right {
    display: none;
  }
}
footer .font17 {
  font-size: 17px;
  margin-bottom: 10px;
}
@media screen and (max-width: 520px) {
  footer .font17 {
    font-size: 14px;
  }
}
footer .font14 {
  font-size: 14px;
  margin: 5px 0 15px;
}
footer .logo {
  margin-bottom: 40px;
}
@media screen and (max-width: 1024px) {
  footer .logo {
    justify-content: center;
  }
}
@media screen and (max-width: 520px) {
  footer .logo {
    margin-bottom: 20px;
  }
}
footer .logo img {
  margin-right: 15px;
}
@media screen and (max-width: 520px) {
  footer .logo img {
    margin-bottom: 10px;
    margin-right: 0;
    width: 95%;
  }
}
footer .shain {
  margin-left: 100px;
}
@media screen and (max-width: 1024px) {
  footer .shain {
    margin-left: 0;
  }
}
@media screen and (max-width: 520px) {
  footer .shain {
    width: 85%;
  }
}
@media print {
  footer .shain {
    margin-left: 0;
  }
}
footer .wrap {
  flex-wrap: wrap;
}
footer .accessCard {
  margin-bottom: 30px;
  font-size: 16px;
}
@media screen and (max-width: 520px) {
  footer .accessCard {
    font-size: 14px;
  }
}
footer .sitemap1 {
  padding: 10px 0 30px;
}
footer .sitemap1 li {
  font-size: 18px;
  border-right: solid 1px #ccc;
  padding-right: 15px;
  margin-right: 15px;
}
footer .sitemap1 li:nth-child(1) {
  border-right: none;
  padding-right: 0;
  margin-right: 0;
}
footer .sitemap1 li:nth-last-child(1) {
  border-right: none;
  padding-right: 0;
  margin-right: 0;
}
footer .sitemap2 {
  padding: 30px 0 30px;
  border-top: dashed 1px #c5bdb4;
}
footer .sitemap2 li {
  font-size: 18px;
  border-right: solid 1px #ccc;
  padding-right: 15px;
  margin-right: 15px;
  margin-top: 10px;
}
footer .sitemap2 li:nth-child(1) {
  border-right: none;
  padding-right: 0;
  margin-right: 0;
}
footer .sitemap2 li:nth-last-child(1) {
  border-right: none;
  padding-right: 0;
  margin-right: 0;
}
footer .sitemap3 {
  padding: 30px 0 25px;
  border-top: dashed 1px #c5bdb4;
}
footer .sitemap3 li {
  font-size: 18px;
  border-right: solid 1px #ccc;
  padding-right: 15px;
  margin-right: 15px;
}
footer .sitemap3 li:nth-last-child(1) {
  border-right: none;
  padding-right: 0;
  margin-right: 0;
}
footer .siteMap-deko {
  margin-bottom: 10px;
  font-size: 22px;
  gap: 8px;
  display: flex;
}
footer .siteMap-deko .arrow {
  position: relative;
  display: inline-block;
  width: 12px;
}
footer .siteMap-deko .arrow::before, footer .siteMap-deko .arrow::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 0;
  width: 10px;
  height: 1px;
  border-radius: 9999px;
  background-color: #333;
  transform-origin: calc(100% - 0.5px) 50%;
}
footer .siteMap-deko .arrow::before {
  transform: rotate(45deg);
}
footer .siteMap-deko .arrow::after {
  transform: rotate(-45deg);
}
footer .siteFoot {
  background-color: #90c31f;
  padding: 15px 0;
}
footer .siteFoot .siteFootItem__link {
  color: #fff;
  font-size: 13px;
}
footer .widget_foot {
  background-color: #90c31f;
  bottom: 0;
  position: fixed;
  z-index: 1;
  width: 100%;
  height: 80px;
  padding: 28px 0;
}
@media screen and (max-width: 520px) {
  footer .widget_foot {
    height: 60px;
    padding: 19px 0;
  }
}
@media print {
  footer .widget_foot {
    position: relative;
  }
}
footer .widget_foot .border_foot {
  position: relative;
}
footer .widget_foot .border_foot::before {
  position: absolute;
  content: "";
  border: 1px solid #fff;
  width: 100%;
  top: -20px;
}
@media screen and (max-width: 520px) {
  footer .widget_foot .border_foot::before {
    top: -15px;
  }
}
footer .widget_foot .border_foot::after {
  position: absolute;
  content: "";
  border: 1px solid #fff;
  width: 100%;
  bottom: -20px;
}
@media screen and (max-width: 520px) {
  footer .widget_foot .border_foot::after {
    bottom: -15px;
  }
}
footer .widget_foot .border_foot .wf_Clover {
  position: relative;
}
footer .widget_foot .border_foot .wf_Clover::before {
  position: absolute;
  content: "";
  background-image: url(../images/top/wiget_foot1@2x.png);
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  width: 33px;
  height: 33px;
  left: 6%;
  top: 50%;
  transform: translate(0, -50%);
}
@media screen and (max-width: 520px) {
  footer .widget_foot .border_foot .wf_Clover::before {
    width: 23px;
    height: 23px;
  }
}
footer .widget_foot .border_foot .wf_Clover::after {
  position: absolute;
  content: "";
  background-image: url(../images/top/wiget_foot2@2x.png);
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  width: 80px;
  height: 60px;
  right: 0;
  top: 30px;
  transform: translate(0, -50%);
}
@media screen and (max-width: 520px) {
  footer .widget_foot .border_foot .wf_Clover::after {
    top: 23px;
    width: 60px;
    height: 40px;
  }
}
footer .widget_foot .border_foot .wf_Clover span {
  color: #fff;
  position: relative;
  padding-right: 20px;
  font-size: 18px;
  line-height: 1;
}
@media screen and (max-width: 520px) {
  footer .widget_foot .border_foot .wf_Clover span {
    font-size: 14px;
  }
}
footer .widget_foot .border_foot .wf_Clover span::after {
  position: absolute;
  content: "";
  background-image: url(../images/common/arw.svg);
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  width: 11px;
  height: 13px;
  right: 0;
  top: 50%;
  transform: translate(0, -50%);
}

#About {
  padding-top: 100px;
  margin-top: -100px;
}

#Day,
#Access,
#Feature,
#Feature1,
#Feature2,
#Feature3,
#Feature4,
#Feature5,
#Feature6,
#Feature7 {
  padding-top: 150px;
  margin-top: -150px;
}

/** top 共通 ***********************************************************/
#topSNS .infoCard {
  padding: 0 10px;
}

.infoCardImage {
  width: 38.3%;
}
@media screen and (max-width: 820px), print {
  .infoCardImage {
    margin: 0 auto 30px;
    width: 60%;
  }
}
@media screen and (max-width: 520px) {
  .infoCardImage {
    width: 80%;
  }
}

.infoCardText {
  width: 55%;
}
@media screen and (max-width: 820px), print {
  .infoCardText {
    width: 100%;
  }
}
#topSNS .infoCardText {
  margin-bottom: 20px;
}
.infoCardText .infoText {
  letter-spacing: -0.01em;
  line-height: 2.2em;
}

@media screen and (max-width: 520px) {
  .secTitle {
    font-size: 22px;
  }
}

@keyframes rotateAnimation {
  from {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(360deg);
  }
}
.widget_top {
  position: fixed;
  z-index: 100;
  bottom: 80px;
  right: -5px;
  width: 300px;
  height: 225px;
  display: none;
}
@media screen and (max-width: 1400px) {
  .widget_top {
    width: 250px;
    height: 175px;
    bottom: 60px;
  }
}
@media screen and (max-width: 1024px) {
  .widget_top {
    width: 200px;
  }
}
@media screen and (max-width: 820px), print {
  .widget_top {
    width: 150px;
    display: none !important;
  }
}
@media screen and (max-width: 520px) {
  .widget_top {
    width: 155px;
    bottom: 40px;
  }
}
.widget_top.none {
  display: none !important;
}
.widget_top .close {
  position: absolute;
  z-index: 101;
  right: 14px;
  top: -5px;
  width: 20px;
}
.widget_top .close:hover {
  cursor: pointer;
}
@media screen and (max-width: 1400px) {
  .widget_top .close {
    width: 20px;
  }
}
@media screen and (max-width: 1024px) {
  .widget_top .close {
    width: 18px;
  }
}
@media screen and (max-width: 820px), print {
  .widget_top .close {
    width: 14px;
    top: -3px;
  }
}
@media screen and (max-width: 520px) {
  .widget_top .close {
    width: 20px;
  }
}

/** topFv ***********************************************************/
#topFv {
  position: relative;
}
#topFv::after {
  position: absolute;
  content: "";
  background-image: url(../images/top/Clover3@2x.png);
  background-size: contain;
  background-position: center;
  height: 830px;
  width: 829px;
  z-index: -1;
  left: -266px;
  bottom: -650px;
  animation: rotateAnimation 35s linear infinite;
}
@media (max-width: 1150px) {
  #topFv::after {
    width: 700px;
    height: 700px;
    top: 340px;
    left: -230px;
  }
}
@media screen and (max-width: 1024px) {
  #topFv::after {
    width: 600px;
    height: 600px;
    top: 340px;
    left: -230px;
  }
}
@media screen and (max-width: 820px), print {
  #topFv::after {
    width: 500px;
    height: 500px;
    top: 70vw;
    left: -160px;
  }
}
@media screen and (max-width: 520px) {
  #topFv::after {
    width: 220px;
    height: 220px;
    top: 90vw;
    left: -60px;
  }
}
#topFv .topFvCard {
  padding-left: 90px;
}
@media (max-width: 1350px) {
  #topFv .topFvCard {
    padding-left: 70px;
  }
}
@media (max-width: 1150px) {
  #topFv .topFvCard {
    padding-left: 80px;
  }
}
@media screen and (max-width: 1024px) {
  #topFv .topFvCard {
    margin-top: 35px;
  }
}
@media screen and (max-width: 820px), print {
  #topFv .topFvCard {
    padding-left: 0px;
    margin-top: 40px;
    flex-direction: column;
    align-items: flex-end;
  }
}
#topFv .topFvCard .topFvBox {
  width: 527px;
}
@media (max-width: 1350px) {
  #topFv .topFvCard .topFvBox {
    width: 430px;
  }
}
@media (max-width: 1150px) {
  #topFv .topFvCard .topFvBox {
    width: 527px;
  }
}
@media screen and (max-width: 820px), print {
  #topFv .topFvCard .topFvBox {
    margin: 0 auto;
    width: auto;
  }
}
#topFv .topFvCard .topFvBox .topFvTitle {
  font-size: clamp(12px, 4vw, 50px);
  font-weight: 500;
}
@media (max-width: 1350px) {
  #topFv .topFvCard .topFvBox .topFvTitle {
    font-size: 3.1vw;
  }
}
@media (max-width: 1150px) {
  #topFv .topFvCard .topFvBox .topFvTitle {
    font-size: 3vw;
  }
}
@media screen and (max-width: 820px), print {
  #topFv .topFvCard .topFvBox .topFvTitle {
    font-size: 35px;
    margin: 30px auto 40px;
  }
}
@media screen and (max-width: 520px) {
  #topFv .topFvCard .topFvBox .topFvTitle {
    font-size: 24px;
    margin: 0 auto 30px;
  }
}
#topFv .topFvCard .topFvBox .topFvTitle::before {
  position: absolute;
  content: "";
  background-image: url(../images/top/Clover2@2x.png);
  background-size: contain;
  background-position: center;
  height: 103px;
  width: 103px;
  z-index: -1;
  left: 410px;
  bottom: 150px;
  animation: rotateAnimation 15s linear infinite;
}
@media (max-width: 1150px) {
  #topFv .topFvCard .topFvBox .topFvTitle::before {
    display: none;
  }
}
#topFv .topFvCard .topFvBox .topFvText {
  font-size: clamp(12px, 1.3vw, 16px);
}
@media screen and (max-width: 820px), print {
  #topFv .topFvCard .topFvBox .topFvText {
    font-size: 14px;
  }
}
#topFv .topFvCard .mainImg {
  width: calc(100% - 600px);
  position: relative;
}
@media (max-width: 1350px) {
  #topFv .topFvCard .mainImg {
    width: calc(100% - 470px);
  }
}
@media (max-width: 1150px) {
  #topFv .topFvCard .mainImg {
    width: calc(100% - 150px);
  }
}
@media screen and (max-width: 820px), print {
  #topFv .topFvCard .mainImg {
    width: 90%;
  }
}
#topFv .topFvCard .mainImg::before {
  position: absolute;
  content: "";
  background-image: url(../images/top/Clover1@2x.png);
  background-size: contain;
  background-position: center;
  height: 219px;
  width: 219px;
  top: 1%;
  right: 83%;
  z-index: -1;
  animation: rotateAnimation 24s linear infinite;
}
@media screen and (max-width: 1024px) {
  #topFv .topFvCard .mainImg::before {
    width: 140px;
    height: 140px;
  }
}
@media screen and (max-width: 820px), print {
  #topFv .topFvCard .mainImg::before {
    width: 100px;
    height: 100px;
    right: 30px;
    top: -60px;
  }
}
@media screen and (max-width: 520px) {
  #topFv .topFvCard .mainImg::before {
    width: 80px;
    height: 80px;
    top: -50px;
  }
}

/** Day&Access ***********************************************************/
#topDayAc {
  margin: 80px auto 40px;
}
@media screen and (max-width: 520px) {
  #topDayAc {
    margin: -20px auto 40px;
  }
}
@media screen and (max-width: 820px), print {
  #topDayAc .flex {
    display: block;
  }
}
#topDayAc .secTitle {
  margin-bottom: 25px;
}
#topDayAc .topDayTel {
  width: 47.4%;
}
@media screen and (max-width: 820px), print {
  #topDayAc .topDayTel {
    width: 100%;
    margin-bottom: 45px;
  }
}
#topDayAc .topDayTel .font20 {
  font-size: 20px;
  margin-bottom: 10px;
}
@media screen and (max-width: 520px) {
  #topDayAc .topDayTel .font20 {
    font-size: 14px;
  }
}
#topDayAc .topAccess {
  width: 45.5%;
}
@media screen and (max-width: 820px), print {
  #topDayAc .topAccess {
    width: 100%;
  }
}
#topDayAc .topAccess .gmap {
  height: 299px;
  margin-bottom: 15px;
}
@media screen and (max-width: 520px) {
  #topDayAc .topAccess .gmap {
    height: 180px;
  }
}

/** About ***********************************************************/
#topAbout {
  margin: 120px auto 300px;
}
@media screen and (max-width: 820px), print {
  #topAbout {
    margin: 65px auto 210px;
  }
}
@media screen and (max-width: 520px) {
  #topAbout {
    margin: 65px auto 65px;
  }
}
@media screen and (max-width: 520px) {
  #topAbout .infoCardText h2 {
    margin-bottom: 25px;
  }
}
@media screen and (max-width: 520px) {
  #topAbout .infoCardText .mb-L {
    margin-bottom: 30px;
  }
}
#topAbout .infoCardText .about_il {
  position: relative;
}
#topAbout .infoCardText .about_il::after {
  content: "";
  position: absolute;
  background-image: url(../images/top/about_il@2x.png);
  background-size: contain;
  background-position: center;
  top: 55%;
  transform: translate(0, -50%);
  right: -25px;
  height: 125px;
  width: 110px;
}
@media screen and (max-width: 520px) {
  #topAbout .infoCardText .about_il::after {
    right: 10px;
    top: 50%;
    width: 65px;
    height: 75px;
  }
}
#topAbout .infoCardText .about_il .link-gap {
  display: inline-block;
  margin-bottom: 1rem;
}
#topAbout .infoCardText .about_il a {
  position: relative;
  color: #90c31f;
  margin-top: 10px;
}
#topAbout .infoCardText .about_il a .arw::after {
  content: "";
  position: absolute;
  background-image: url(../images/top/arw@2x.png);
  background-size: contain;
  background-position: center;
  top: 55%;
  transform: translate(0, -50%);
  right: -20px;
  height: 14px;
  width: 14px;
}
#topAbout .infoCardText .about_il a .border_ {
  border-bottom: solid 1px #90c31f;
  font-size: 18px;
}
@media screen and (max-width: 520px) {
  #topAbout .infoCardText .about_il a .border_ {
    font-size: 14px;
  }
}

#modal-meeting .modal-meeting {
  overflow-y: scroll;
  max-height: 80vh;
  padding: 50px 60px 0;
  -ms-overflow-style: none;
  /* Firefox 対応 */
  scrollbar-width: none;
}
@media screen and (max-width: 820px), print {
  #modal-meeting .modal-meeting {
    padding: 50px 50px 0;
  }
}
@media screen and (max-width: 520px) {
  #modal-meeting .modal-meeting {
    padding: 30px 20px 0;
  }
}
#modal-meeting .modal-meeting::-webkit-scrollbar {
  display: none;
}
#modal-meeting .modal-meeting .greeting {
  display: flex;
  justify-content: space-between;
  margin-bottom: 80px;
}
@media screen and (max-width: 820px), print {
  #modal-meeting .modal-meeting .greeting {
    flex-direction: column;
    align-items: center;
  }
}
@media screen and (max-width: 520px) {
  #modal-meeting .modal-meeting .greeting {
    flex-direction: column;
    margin-bottom: 45px;
  }
}
#modal-meeting .modal-meeting .greeting .greeting_img {
  width: 38%;
}
@media screen and (max-width: 820px), print {
  #modal-meeting .modal-meeting .greeting .greeting_img {
    width: 70%;
    margin-bottom: 50px;
  }
}
@media screen and (max-width: 520px) {
  #modal-meeting .modal-meeting .greeting .greeting_img {
    width: 100%;
    margin-bottom: 25px;
  }
}
#modal-meeting .modal-meeting .greeting .greeting_p {
  width: 55.5%;
}
@media screen and (max-width: 820px), print {
  #modal-meeting .modal-meeting .greeting .greeting_p {
    width: 100%;
  }
}
#modal-meeting .modal-meeting .greeting .greeting_p p {
  letter-spacing: 0.03em;
  line-height: 2em;
}
#modal-meeting .modal-meeting .greeting .greeting_p .greeting_name {
  text-align: right;
  font-size: 20px;
  margin-top: 10%;
}
@media screen and (max-width: 1024px) {
  #modal-meeting .modal-meeting .greeting .greeting_p .greeting_name {
    margin-top: 2%;
  }
}
@media screen and (max-width: 820px), print {
  #modal-meeting .modal-meeting .greeting .greeting_p .greeting_name {
    font-size: 17px;
    margin-top: 20px;
  }
}
#modal-meeting .modal-meeting .philosophy {
  margin-bottom: 70px;
}
@media screen and (max-width: 520px) {
  #modal-meeting .modal-meeting .philosophy {
    margin-bottom: 25px;
  }
}
#modal-meeting .modal-meeting .philosophy .secTitle {
  margin-bottom: 20px;
}
#modal-meeting .modal-meeting .philosophy .philosophyBg {
  background-color: #f4f9e8;
  border-radius: 15px;
  padding: 55px 60px;
  width: 100%;
  height: 100%;
  position: relative;
}
@media screen and (max-width: 820px), print {
  #modal-meeting .modal-meeting .philosophy .philosophyBg {
    padding: 35px 45px;
  }
}
@media screen and (max-width: 520px) {
  #modal-meeting .modal-meeting .philosophy .philosophyBg {
    padding: 20px 18px;
  }
}
#modal-meeting .modal-meeting .philosophy .philosophyBg::after {
  background-image: url(../images/top/philosophyBg@2x.png);
  position: absolute;
  background-size: contain;
  content: "";
  width: 337px;
  height: 482px;
  bottom: 0;
  right: 0;
}
@media screen and (max-width: 820px), print {
  #modal-meeting .modal-meeting .philosophy .philosophyBg::after {
    width: 281px;
    height: 402px;
  }
}
@media screen and (max-width: 520px) {
  #modal-meeting .modal-meeting .philosophy .philosophyBg::after {
    width: 180px;
    height: 257px;
  }
}
#modal-meeting .modal-meeting .philosophy .philosophyBg .textareaP {
  margin-bottom: 35px;
}
@media screen and (max-width: 520px) {
  #modal-meeting .modal-meeting .philosophy .philosophyBg .textareaP {
    margin-bottom: 30px;
  }
}
#modal-meeting .modal-meeting .philosophy .philosophyBg .textareaP:nth-last-child(1) {
  margin-bottom: 0px;
}
#modal-meeting .modal-meeting .philosophy .philosophyBg .textareaP .philosophy_h {
  font-size: 20px;
  margin-bottom: 5px;
}
@media screen and (max-width: 520px) {
  #modal-meeting .modal-meeting .philosophy .philosophyBg .textareaP .philosophy_h {
    font-size: 17px;
  }
}
@media screen and (max-width: 520px) {
  #modal-meeting .modal-meeting .philosophy .philosophyBg .textareaP .philosophy_h span {
    margin-left: -15px;
    letter-spacing: 0;
  }
}
#modal-meeting .modal-meeting .philosophy .philosophyBg .textareaP .philosophy_p {
  line-height: 2em;
}

#modal-company .modal-company {
  padding: 50px 50px;
  overflow-y: scroll;
  max-height: 80vh;
  -ms-overflow-style: none;
  /* Firefox 対応 */
  scrollbar-width: none;
}
@media screen and (max-width: 820px), print {
  #modal-company .modal-company {
    padding: 50px 50px 0;
  }
}
@media screen and (max-width: 520px) {
  #modal-company .modal-company {
    padding: 30px 20px 0;
  }
}
#modal-company .modal-company::-webkit-scrollbar {
  display: none;
}
#modal-company .modal-company .profileArea {
  width: 100%;
}
@media screen and (max-width: 820px), print {
  #modal-company .modal-company .profileArea .profileFlex {
    flex-direction: column;
  }
}
#modal-company .modal-company .profileArea .profileFlex .secTitle {
  text-align: left;
  width: 330px;
}
@media screen and (max-width: 1024px) {
  #modal-company .modal-company .profileArea .profileFlex .secTitle {
    width: 250px;
  }
}
@media screen and (max-width: 820px), print {
  #modal-company .modal-company .profileArea .profileFlex .secTitle {
    width: 100%;
    text-align: center;
  }
}
#modal-company .modal-company .profileArea .profileFlex .secTitle:after {
  left: 0;
  transform: translate(0, 0);
}
@media screen and (max-width: 820px), print {
  #modal-company .modal-company .profileArea .profileFlex .secTitle:after {
    left: 50%;
    transform: translate(-50%, 0);
  }
}
#modal-company .modal-company .profileArea .profileFlex .profileLeft {
  width: 57.3%;
}
@media screen and (max-width: 820px), print {
  #modal-company .modal-company .profileArea .profileFlex .profileLeft {
    width: 100%;
  }
}
#modal-company .modal-company .profileArea .profileFlex .profileLeft dl {
  display: flex;
  border-bottom: 1px solid #ccc;
  padding: 20px 30px;
}
@media screen and (max-width: 1024px) {
  #modal-company .modal-company .profileArea .profileFlex .profileLeft dl {
    padding: 20px;
  }
}
@media screen and (max-width: 520px) {
  #modal-company .modal-company .profileArea .profileFlex .profileLeft dl {
    flex-direction: column;
    padding: 10px;
  }
}
#modal-company .modal-company .profileArea .profileFlex .profileLeft dl:nth-of-type(1) {
  border-top: 1px solid #ccc;
}
#modal-company .modal-company .profileArea .profileFlex .profileLeft dl dt {
  width: 140px;
}
@media screen and (max-width: 520px) {
  #modal-company .modal-company .profileArea .profileFlex .profileLeft dl dt {
    width: 100%;
    margin-bottom: 5px;
    font-weight: bold;
  }
}
#modal-company .modal-company .profileArea .profileFlex .profileLeft dl dd {
  width: calc(100% - 140px);
}
@media screen and (max-width: 520px) {
  #modal-company .modal-company .profileArea .profileFlex .profileLeft dl dd {
    width: 100%;
  }
}
#modal-company .modal-company .profileArea .profileFlex .profileLeft dl dd ul li {
  text-indent: -1.5em;
  padding-left: 1.5em;
  letter-spacing: -0.01rem;
}
#modal-company .modal-company .profileArea .profileFlex .profileLeft dl dd ul li span {
  color: #ccc;
}
#modal-company .modal-company .profileArea .profileFlex .profile_img {
  width: 36.7%;
}
@media screen and (max-width: 820px), print {
  #modal-company .modal-company .profileArea .profileFlex .profile_img {
    width: 100%;
    margin: 30px auto 50px;
  }
}

/** Feature ***********************************************************/
#topFeature {
  background-color: #e9f3d2;
  padding: 220px 0px 90px;
  margin: 200px auto;
  position: relative;
}
@media screen and (max-width: 1024px) {
  #topFeature {
    padding: 170px 0px 90px;
  }
}
@media screen and (max-width: 820px), print {
  #topFeature {
    padding: 80px 0px 70px;
    margin: 90px auto;
  }
}
@media screen and (max-width: 520px) {
  #topFeature {
    padding: 120px 0px 70px;
    margin: 95px auto;
  }
}
#topFeature::before {
  background-image: url(../images/top/featureBg1@2x.png);
  content: "";
  position: absolute;
  background-size: cover;
  width: 100%;
  height: 190px;
  background-position: center;
  top: -184px;
}
@media (min-width: 1921px) {
  #topFeature::before {
    background-size: 100% 100%;
    top: -189px;
  }
}
@media (max-width: 1150px) {
  #topFeature::before {
    background-size: 200% 100%;
    top: -139px;
  }
}
@media screen and (max-width: 520px) {
  #topFeature::before {
    background-size: 100% 20%;
    top: -111px;
  }
}
#topFeature::after {
  background-image: url(../images/top/featureBg2@2x.png);
  content: "";
  position: absolute;
  background-size: cover;
  width: 100%;
  height: 190px;
  background-position: center;
  bottom: -185px;
}
@media (min-width: 1921px) {
  #topFeature::after {
    background-size: 100% 100%;
    bottom: -189px;
  }
}
@media (max-width: 1150px) {
  #topFeature::after {
    background-size: 200% 100%;
    bottom: -139px;
  }
}
@media screen and (max-width: 520px) {
  #topFeature::after {
    background-size: 100% 20%;
    bottom: -111px;
  }
}
#topFeature .h2Feature {
  color: #90c31f;
  font-size: 70px;
  font-family: "Cantarell";
  font-weight: bold;
}
@media screen and (max-width: 520px) {
  #topFeature .h2Feature {
    font-size: 35px;
  }
}
#topFeature .wrap-1500 {
  max-width: 1500px;
  background-color: #fff;
  box-shadow: 5px 5px 7px 0px rgba(91, 63, 52, 0.2);
  border-radius: 30px;
  margin: 0 auto;
  width: 90%;
  padding: 75px 80px;
}
@media screen and (max-width: 820px), print {
  #topFeature .wrap-1500 {
    padding: 65px 60px;
  }
}
@media screen and (max-width: 520px) {
  #topFeature .wrap-1500 {
    padding: 25px 20px;
  }
}
#topFeature .wrap-1500::after {
  position: absolute;
  content: "";
  background-image: url(../images/top/featureS@2x.png);
  background-size: contain;
  background-repeat: no-repeat;
  width: 535px;
  height: 240px;
  top: -238px;
  right: 18.8vw;
}
@media screen and (max-width: 1024px) {
  #topFeature .wrap-1500::after {
    width: 420px;
    height: 190px;
    right: 16vw;
    top: -187px;
  }
}
@media screen and (max-width: 820px), print {
  #topFeature .wrap-1500::after {
    width: 310px;
    height: 140px;
    right: 16vw;
    top: -138px;
  }
}
@media screen and (max-width: 520px) {
  #topFeature .wrap-1500::after {
    width: 204px;
    height: 90px;
    right: 14.1vw;
    top: -90px;
  }
}
#topFeature .wrap-1500 .h2-mb {
  margin-bottom: 20px;
}
@media screen and (max-width: 820px), print {
  #topFeature .wrap-1500 .h2-mb {
    margin-bottom: 10px;
  }
}
@media screen and (max-width: 820px), print {
  #topFeature .wrap-1500 .h2-mb {
    margin-bottom: 10px;
    letter-spacing: 0.1em;
  }
}
#topFeature .wrap-1500 .mb-p {
  text-align: center;
  margin-bottom: 50px;
}
@media screen and (max-width: 1024px) {
  #topFeature .wrap-1500 .mb-p {
    text-align: left;
  }
}
@media screen and (max-width: 520px) {
  #topFeature .wrap-1500 .mb-p {
    margin-bottom: 30px;
  }
}
#topFeature .wrap-1500 .flex {
  flex-wrap: wrap;
}
@media (max-width: 1150px) {
  #topFeature .wrap-1500 .flex {
    max-width: 800px;
    margin: 0 auto;
  }
}
#topFeature .wrap-1500 .serviceCard {
  margin-bottom: 0px;
}
@media screen and (max-width: 820px), print {
  #topFeature .wrap-1500 .serviceCard {
    margin-bottom: 20px;
    flex-wrap: wrap;
  }
}
@media (max-width: 1150px) {
  #topFeature .wrap-1500 .serviceCard .col-4 {
    width: 48%;
  }
}
#topFeature .wrap-1500 .serviceCard .serviceCardItem {
  margin-bottom: 85px;
}
@media (max-width: 1150px) {
  #topFeature .wrap-1500 .serviceCard .serviceCardItem {
    margin-bottom: 45px;
  }
}
@media screen and (max-width: 820px), print {
  #topFeature .wrap-1500 .serviceCard .serviceCardItem {
    margin-bottom: 30px;
    width: 47%;
  }
}
#topFeature .wrap-1500 .serviceCard .serviceCardItem:nth-child(1) {
  margin-left: 13%;
}
@media (max-width: 1150px) {
  #topFeature .wrap-1500 .serviceCard .serviceCardItem:nth-child(1) {
    margin-left: 0%;
  }
}
#topFeature .wrap-1500 .serviceCard .serviceCardItem:nth-child(3) {
  margin-right: 13%;
}
@media (max-width: 1150px) {
  #topFeature .wrap-1500 .serviceCard .serviceCardItem:nth-child(3) {
    margin-right: 0%;
  }
}
#topFeature .wrap-1500 .serviceCard .serviceCardItem .mb-S {
  margin-bottom: 20px;
}
#topFeature .wrap-1500 .serviceCard .serviceCardItem .serviceCardItem--title {
  background-color: #f2e8a7;
  border-radius: 3px;
  text-align: center;
  margin: 0 auto 15px;
  font-weight: 500;
  padding: 2px;
}
@media (max-width: 1150px) {
  #topFeature .wrap-1500 .serviceCard .serviceCardItem .serviceCardItem--title {
    width: 80%;
  }
}
@media screen and (max-width: 820px), print {
  #topFeature .wrap-1500 .serviceCard .serviceCardItem .serviceCardItem--title {
    width: 100%;
    font-size: 20px;
  }
}
@media screen and (max-width: 520px) {
  #topFeature .wrap-1500 .serviceCard .serviceCardItem .serviceCardItem--title {
    font-size: 14px;
  }
}
#topFeature .wrap-1500 .serviceCard .serviceCardItem .serviceCardItem--text {
  letter-spacing: 0.08em;
}
@media (max-width: 1150px) {
  #topFeature .wrap-1500 .serviceCard .serviceCardItem .serviceCardItem--text {
    width: 80%;
    margin: 0 auto;
  }
}
@media screen and (max-width: 820px), print {
  #topFeature .wrap-1500 .serviceCard .serviceCardItem .serviceCardItem--text {
    width: 100%;
  }
}
@media screen and (max-width: 520px) {
  #topFeature .wrap-1500 .serviceCard .serviceCardItem .serviceCardItem--text {
    font-size: 13px;
  }
}
@media (max-width: 1150px) {
  #topFeature .wrap-1500 .serviceCard .serviceCardItem .mb-M {
    width: 80%;
    margin: 0 auto 30px;
  }
}
@media screen and (max-width: 820px), print {
  #topFeature .wrap-1500 .serviceCard .serviceCardItem .mb-M {
    width: 100%;
  }
}
#topFeature .wrap-1500 .wrap-1000 {
  max-width: 1000px;
  margin: 0 auto;
  width: 90%;
}
#topFeature .wrap-1500 .wrap-1000 .serviceCardItem--title {
  font-size: 24px;
  font-weight: 500;
  margin-bottom: 25px;
  letter-spacing: 0.04em;
}
@media screen and (max-width: 520px) {
  #topFeature .wrap-1500 .wrap-1000 .serviceCardItem--title {
    font-size: 20px;
    margin-bottom: 10px;
  }
}
#topFeature .wrap-1500 .torikumi {
  background-color: #f3f4eb;
  border-radius: 15px;
  padding: 40px 45px;
}
@media screen and (max-width: 1024px) {
  #topFeature .wrap-1500 .torikumi {
    width: 100%;
  }
}
@media screen and (max-width: 520px) {
  #topFeature .wrap-1500 .torikumi {
    padding: 20px 20px;
  }
}
#topFeature .wrap-1500 .torikumi ul li {
  text-indent: -1em;
  padding-left: 1em;
}
#topFeature .wrap-1500 .torikumi ul li + li {
  margin-top: 10px;
}

/** Topics ***********************************************************/
#topTopics {
  margin: 300px auto 115px;
  position: relative;
  overflow-x: clip;
}
@media screen and (max-width: 820px), print {
  #topTopics {
    margin: 220px auto 115px;
  }
}
@media screen and (max-width: 520px) {
  #topTopics {
    margin: 100px auto 60px;
  }
}
#topTopics::before {
  position: absolute;
  content: "";
  background-image: url(../images/top/Clover4@2x.png);
  background-size: contain;
  background-position: center;
  height: 830px;
  width: 830px;
  z-index: -1;
  bottom: -700px;
  right: -270px;
  animation: rotateAnimation 35s linear infinite;
}
@media screen and (max-width: 1024px) {
  #topTopics::before {
    width: 310px;
    height: 460px;
    right: 0;
    bottom: -200px;
  }
}
@media screen and (max-width: 820px), print {
  #topTopics::before {
    display: none;
  }
}
#topTopics .secTitle {
  margin-bottom: 15px;
}
#topTopics .mb-50 {
  margin-bottom: 50px;
  letter-spacing: 0.04em;
}

/** recruit ***********************************************************/
#topRecruit {
  margin: 120px auto 120px;
}
@media screen and (max-width: 820px), print {
  #topRecruit {
    margin: 70px auto 90px;
  }
}
@media screen and (max-width: 520px) {
  #topRecruit {
    margin: 0px auto 60px;
  }
}
#topRecruit .button01 {
  background-color: #fff;
  border: 1px solid #f49a40;
  color: #f49a40;
  box-shadow: 0px 0px 0px 2px rgb(255, 255, 255);
}

/** topics ***********************************************************/
#topics .categoryName {
  font-size: 30px;
  font-weight: normal;
  color: #90c31f;
  text-align: center;
  margin-bottom: 50px;
}
@media screen and (max-width: 820px), print {
  #topics .categoryName {
    font-size: 24px;
    margin-bottom: 25px;
  }
}
#topics .category__list {
  margin: 0 auto 70px;
}
@media screen and (max-width: 820px), print {
  #topics .category__list {
    flex-wrap: wrap;
    justify-content: space-between;
    margin: 0 auto 40px;
    padding: 0 15px;
  }
}
#topics .category__list li {
  text-align: center;
  border: 1px solid #90c31f;
  width: 150px;
  border-radius: 30px;
}
@media screen and (max-width: 820px), print {
  #topics .category__list li {
    width: 32%;
  }
  #topics .category__list li:nth-child(n+4) {
    margin-top: 15px;
  }
}
@media screen and (max-width: 520px) {
  #topics .category__list li {
    width: 48%;
  }
  #topics .category__list li:nth-child(n+3) {
    margin-top: 15px;
  }
}
#topics .category__list li + li {
  margin-left: 25px;
}
@media screen and (max-width: 820px), print {
  #topics .category__list li + li {
    margin-left: 0;
  }
}
#topics .category__list li a {
  display: block;
  padding: 6px;
}
#topics .category__list li.choice {
  background-color: #90c31f;
  border: 1px solid #fff;
  color: #fff;
}
#topics .category__list li.choice a {
  color: #fff;
  font-weight: bold;
}
#topics .category__list li:hover {
  background-color: #90c31f;
}
#topics .category__list li:hover a {
  color: #fff;
  opacity: 1;
}
#topics .category__list .dummy {
  display: none;
}
@media screen and (max-width: 820px), print {
  #topics .category__list .dummy {
    width: 32%;
    display: block;
  }
}

.topicsItemCategory {
  border: 1px solid #90c31f;
  border-radius: 15px;
  background-color: #fff;
  font-size: 14px;
  text-align: center;
  padding: 3px;
  display: inline-block;
  width: 123px;
}
@media screen and (max-width: 820px), print {
  .topicsItemCategory {
    font-size: 13px;
    width: 113px;
  }
}

/** topics トップ＆一覧***********************************************************/
.topicsBox {
  flex-wrap: wrap;
}
.topicsBox .topicsListItem {
  width: 23.6%;
  position: relative;
}
@media print {
  .topicsBox .topicsListItem {
    page-break-inside: avoid;
  }
}
.topicsBox .topicsListItem:nth-child(n+5) {
  margin-top: 40px;
}
@media screen and (max-width: 820px), print {
  .topicsBox .topicsListItem {
    width: 47.3%;
  }
  .topicsBox .topicsListItem:nth-child(n+3) {
    margin-top: 40px;
  }
}
@media print {
  .topicsBox .topicsListItem {
    width: 47.3%;
  }
  .topicsBox .topicsListItem:nth-child(n+3) {
    padding-top: 20px;
    margin-top: 0;
  }
}
.topicsBox .topicsListItem .topicsItemTitle {
  font-size: 18px;
  margin-top: 10px;
  line-height: 27px;
}
@media screen and (max-width: 1024px) {
  .topicsBox .topicsListItem .topicsItemTitle {
    font-size: 14px;
  }
}
@media print {
  .topicsBox .topicsListItem .topicsItemTitle {
    font-size: 14px;
  }
}
.topicsBox .topicsListItem .topicsList {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  height: 100%;
  position: relative;
  background-color: #f3f4eb;
  padding: 35px 20px 40px;
  border-radius: 20px;
}
@media screen and (max-width: 820px), print {
  .topicsBox .topicsListItem .topicsList {
    border-radius: 10px;
  }
}
@media screen and (max-width: 520px) {
  .topicsBox .topicsListItem .topicsList {
    padding: 20px 10px;
  }
}
.topicsBox .topicsListItem .topicsList:hover .thumb {
  transform: scale(1.2, 1.2);
}
.topicsBox .topicsListItem .topicsList .topicsItemTime {
  font-size: 38px;
  font-weight: bold;
  font-family: "Cantarell", sans-serif;
  position: absolute;
  top: -20px;
  right: 20px;
  line-height: 1;
}
@media screen and (max-width: 1024px) {
  .topicsBox .topicsListItem .topicsList .topicsItemTime {
    font-size: 30px;
    right: 10px;
    top: -10px;
  }
}
@media screen and (max-width: 520px) {
  .topicsBox .topicsListItem .topicsList .topicsItemTime {
    font-size: 20px;
  }
}
.topicsBox .topicsListItem .topicsList .topicsItemTime span {
  font-size: 14px;
}
@media screen and (max-width: 520px) {
  .topicsBox .topicsListItem .topicsList .topicsItemTime span {
    font-size: 10px;
  }
}
.topicsBox .topicsListItem .topicsList .thumb_area {
  width: 100%;
  font-size: 0;
  overflow: hidden;
  transition: 0.4s all;
  border-radius: 10px;
}
@media screen and (max-width: 820px), print {
  .topicsBox .topicsListItem .topicsList .thumb_area {
    border-radius: 5px;
  }
}
.topicsBox .topicsListItem .topicsList .thumb_area .thumb {
  background-position: center;
  background-size: cover;
  padding-top: 100%;
  transition: 0.4s all;
}
.topicsBox .topicsListItem .topicsList .thumb_area .no-image {
  background-image: url(../images/topics/no-image@2x.png);
}
.topicsBox .topicsListItem .topicsList .topicsTextArea {
  margin-top: 15px;
}
.topicsBox .topicsListItem .topicsList .topicsTextArea .topicsItemHead .cateAera {
  display: flex;
  align-items: center;
}
.topicsBox .topicsListItem .topicsList .detailText {
  position: relative;
  bottom: 0;
  right: 0;
  padding-right: 50px;
  margin-bottom: 10px;
  text-align: right;
  color: #999999;
  font-size: 14px;
}
.topicsBox .topicsListItem .topicsList .detailText::after {
  position: absolute;
  content: "";
  background-image: url("data:image/svg+xml;charset=utf8,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22UTF-8%22%3F%3E%3Csvg%20id%3D%22_%E3%83%AC%E3%82%A4%E3%83%A4%E3%83%BC_2%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2021%207%22%3E%3Cg%20id%3D%22_%E3%83%A1%E3%82%A4%E3%83%B3%22%3E%3Cpolygon%20points%3D%2221%207%200%207%200%206%2018.98%206%2014.89%20.61%2015.69%200%2021%207%22%20style%3D%22fill%3A%23999999%3B%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E");
  top: 50%;
  transform: translate(0, -50%);
  height: 7px;
  width: 26px;
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  height: 5px;
  width: 18px;
  right: 10px;
}

.dummy {
  width: 23%;
}

/** pagination ***********************************************************/
.pagination .inner {
  display: flex;
  font-size: 18px;
  font-weight: 300;
  justify-content: center;
  text-align: center;
  margin-top: 60px;
}
@media screen and (max-width: 820px), print {
  .pagination .inner {
    margin-top: 30px;
    page-break-inside: avoid;
  }
}
.pagination .inner .pn-prev {
  display: inline-block;
  width: 30px;
  height: 30px;
  border-radius: 50%;
  position: relative;
  background-color: #fff;
  border: 1px solid #90c31f;
  margin: 0 10px;
}
.pagination .inner .pn-prev::before {
  content: "";
  display: block;
  height: 8px;
  position: absolute;
  left: 44%;
  top: 50%;
  -webkit-transform: translate(0, -50%) rotate(225deg);
  transform: translate(0, -50%) rotate(225deg);
  width: 8px;
  border-top: 1px solid #90c31f;
  border-right: 1px solid #90c31f;
}
.pagination .inner .pn-prev.opa {
  border: 1px solid #999;
  background-color: #999;
}
.pagination .inner .pn-prev.opa::before {
  border-top: 1px solid #fff;
  border-right: 1px solid #fff;
}
.pagination .inner .pn-next {
  display: inline-block;
  border-radius: 50%;
  width: 30px;
  height: 30px;
  position: relative;
  background-color: #fff;
  border: 1px solid #90c31f;
  margin: 0 10px;
}
.pagination .inner .pn-next::before {
  content: "";
  display: block;
  height: 8px;
  position: absolute;
  right: 42%;
  top: 50%;
  -webkit-transform: translate(0, -50%) rotate(45deg);
  transform: translate(0, -50%) rotate(45deg);
  width: 8px;
  border-top: 1px solid #90c31f;
  border-right: 1px solid #90c31f;
}
.pagination .inner .pn-next.opa {
  border: 1px solid #999;
  background-color: #999;
}
.pagination .inner .pn-next.opa::before {
  border-top: 1px solid #fff;
  border-right: 1px solid #fff;
}
.pagination .inner .current {
  background-color: #90c31f;
  border: 1px solid #90c31f;
  border-radius: 50%;
  color: #fff;
  display: flex;
  height: 30px;
  width: 30px;
  margin: 0 10px;
  justify-content: center;
  align-items: center;
  padding-left: 2px;
  padding-bottom: 2px;
}
.pagination .inner .pn-numbers {
  background-color: #fff;
  border: 1px solid #90c31f;
  border-radius: 50%;
  color: #90c31f;
  display: flex;
  height: 30px;
  width: 30px;
  margin: 0 10px;
  justify-content: center;
  align-items: center;
  padding-left: 1px;
  padding-bottom: 2px;
}

/** topicsDetail 詳細***********************************************************/
#topics_detail .topics_detail__main {
  background-color: #f3f4eb;
  border-radius: 30px;
  padding: 80px;
}
@media screen and (max-width: 1024px) {
  #topics_detail .topics_detail__main {
    padding: 50px;
  }
}
@media screen and (max-width: 820px), print {
  #topics_detail .topics_detail__main {
    padding: 40px;
    border-radius: 15px;
  }
}
@media screen and (max-width: 520px) {
  #topics_detail .topics_detail__main {
    padding: 25px;
  }
}
#topics_detail .topicsItemHead {
  padding-bottom: 60px;
  margin-bottom: 50px;
  border-bottom: 1px dashed #c5bdb4;
  justify-content: space-between;
  align-items: flex-start;
}
@media screen and (max-width: 820px), print {
  #topics_detail .topicsItemHead {
    padding-bottom: 20px;
    margin-bottom: 20px;
  }
}
@media screen and (max-width: 520px) {
  #topics_detail .topicsItemHead {
    flex-direction: column;
  }
}
#topics_detail .topicsItemTime {
  font-size: 38px;
  font-weight: bold;
  font-family: "Cantarell", sans-serif;
}
@media screen and (max-width: 520px) {
  #topics_detail .topicsItemTime {
    font-size: 30px;
  }
}
#topics_detail .topicsItemTime span {
  font-size: 14px;
}
#topics_detail .topicsItemTitle {
  font-size: 28px;
  margin-top: 15px;
  font-weight: 500;
}
@media screen and (max-width: 820px), print {
  #topics_detail .topicsItemTitle {
    font-size: 22px;
    line-height: 1.3;
  }
}
@media screen and (max-width: 520px) {
  #topics_detail .topicsItemTitle {
    font-size: 18px;
    margin-top: 10px;
  }
}
#topics_detail .topicsItemCategory {
  border: 1px solid #90c31f;
  border-radius: 15px;
  background-color: #fff;
  font-size: 14px;
  text-align: center;
  padding: 3px;
  display: inline-block;
  width: 123px;
  margin-left: 20px;
}
@media screen and (max-width: 520px) {
  #topics_detail .topicsItemCategory {
    margin-left: 0;
  }
}
#topics_detail .new-label {
  margin-right: 5px;
  padding: 0 10px;
}
#topics_detail .thumb_area {
  width: 180px;
  border-radius: 8px;
  overflow: hidden;
}
@media screen and (max-width: 820px), print {
  #topics_detail .thumb_area {
    border-radius: 4px;
  }
}
@media screen and (max-width: 520px) {
  #topics_detail .thumb_area {
    width: 100%;
    margin-bottom: 20px;
  }
}
#topics_detail .thumb_area .thumb {
  background-position: center;
  background-size: cover;
  padding-top: 100%;
}
#topics_detail .thumb_area .no-image {
  background-image: url(../images/topics/no-image@2x.png);
}
#topics_detail .topicsTitleArea {
  width: calc(100% - 220px);
}
@media screen and (max-width: 520px) {
  #topics_detail .topicsTitleArea {
    width: 100%;
  }
  #topics_detail .topicsTitleArea .flex {
    flex-direction: column;
    align-items: flex-start;
  }
}
#topics_detail .shareArea {
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 10px;
  background-color: #fff;
  padding: 20px;
  margin-top: 50px;
}
@media screen and (max-width: 820px), print {
  #topics_detail .shareArea {
    margin-top: 40px;
    padding: 10px;
    border-radius: 5px;
  }
}
#topics_detail .shareArea .share {
  border-right: 1px solid #ccc;
  margin-right: 40px;
  padding-right: 40px;
}
@media screen and (max-width: 820px), print {
  #topics_detail .shareArea .share {
    margin-right: 15px;
    padding-right: 15px;
  }
}
#topics_detail .shareArea .a2a_kit {
  display: flex;
  align-items: center;
}
#topics_detail .shareArea .a2a_button_facebook,
#topics_detail .shareArea .a2a_button_x {
  margin-left: 30px;
}
@media screen and (max-width: 520px) {
  #topics_detail .shareArea .a2a_button_facebook,
  #topics_detail .shareArea .a2a_button_x {
    margin-left: 10px;
  }
}

.sin_btns {
  margin-top: 60px;
  font-size: 18px;
}
@media screen and (max-width: 820px), print {
  .sin_btns {
    margin-top: 30px;
    font-size: 16px;
  }
}
@media screen and (max-width: 520px) {
  .sin_btns {
    font-size: 14px;
  }
}

.sin_pre,
.sin_nex {
  position: relative;
}
.sin_pre::before,
.sin_nex::before {
  content: "";
  display: block;
  height: 10px;
  position: absolute;
  right: 42%;
  top: 50%;
  -webkit-transform: translate(0, -50%) rotate(45deg);
  transform: translate(0, -50%) rotate(45deg);
  width: 10px;
  border-top: 1px solid #333;
  border-right: 1px solid #333;
}

.sin_pre {
  padding-left: 25px;
}
.sin_pre::before {
  left: 0;
  transform: translate(0, -50%) rotate(225deg);
}

.sin_nex {
  padding-right: 25px;
}
.sin_nex::before {
  right: 0;
}

.tab .tab_panel {
  display: none;
}
.tab .category-area {
  display: flex;
  justify-content: center;
  margin-bottom: 60px;
}
@media screen and (max-width: 820px), print {
  .tab .category-area {
    margin-bottom: 50px;
    flex-wrap: wrap;
    justify-content: space-between;
    padding: 0 14px;
  }
}
.tab .category-area .cate-link {
  text-align: center;
  border: 1px solid #90c31f;
  width: 150px;
  border-radius: 30px;
  padding: 3px;
  background-color: #fff;
  font-weight: bold;
  display: block;
  transition: all 0.3s;
}
@media screen and (max-width: 820px), print {
  .tab .category-area .cate-link {
    width: 32%;
  }
  .tab .category-area .cate-link:nth-child(n+4) {
    margin-top: 15px;
  }
}
@media screen and (max-width: 520px) {
  .tab .category-area .cate-link {
    width: 47.3%;
  }
  .tab .category-area .cate-link:nth-child(n+3) {
    margin-top: 15px;
  }
}
.tab .category-area .cate-link:hover {
  background-color: #90c31f;
  color: #fff;
  transition: all 0.3s;
  cursor: pointer;
}
.tab .category-area .cate-link + .cate-link {
  margin-left: 25px;
}
@media screen and (max-width: 820px), print {
  .tab .category-area .cate-link + .cate-link {
    margin-left: 0;
  }
}
@media screen and (max-width: 820px), print {
  .tab .category-area .dummy {
    width: 32%;
  }
}
.tab #tab1:checked ~ .category-area .tab1_label {
  background-color: #90c31f;
  color: #fff;
}
.tab #tab1:checked ~ .category-area .tab1_label,
.tab #tab2:checked ~ .category-area .tab2_label,
.tab #tab3:checked ~ .category-area .tab3_label,
.tab #tab4:checked ~ .category-area .tab4_label,
.tab #tab5:checked ~ .category-area .tab5_label {
  color: #fff;
}
.tab #tab1:checked ~ .panel_area #panel1,
.tab #tab2:checked ~ .panel_area #panel2,
.tab #tab3:checked ~ .panel_area #panel3,
.tab #tab4:checked ~ .panel_area #panel4,
.tab #tab5:checked ~ .panel_area #panel5 {
  display: block;
}
.tab #tab2:checked ~ .category-area .tab2_label,
.tab #tab3:checked ~ .category-area .tab3_label,
.tab #tab4:checked ~ .category-area .tab4_label,
.tab #tab5:checked ~ .category-area .tab5_label {
  text-align: center;
  border: 1px solid #90c31f;
  border-radius: 30px;
  padding: 3px;
  background-color: #90c31f;
  color: #fff;
  font-weight: 500;
  display: block;
}
.tab input[type=radio] {
  display: none;
}
.tab .button01 {
  margin-top: 60px;
}
@media screen and (max-width: 820px), print {
  .tab .button01 {
    margin-top: 40px;
  }
}

@media screen and (max-width: 520px) {
  #contact .textCenter {
    text-align: left;
  }
}
#contact .doiChecks {
  text-align: center !important;
}
#contact .contactText {
  margin-bottom: 60px;
  line-height: 30px;
}
@media screen and (max-width: 820px), print {
  #contact .contactText {
    margin-bottom: 30px;
    letter-spacing: 0.03rem;
  }
}
@media screen and (max-width: 520px) {
  #contact .contactText {
    line-height: 24px;
  }
}
#contact .contactBg {
  background-color: rgba(242, 232, 167, 0.3);
  border-radius: 30px;
  padding: 90px 195px;
}
@media screen and (max-width: 1024px) {
  #contact .contactBg {
    padding: 50px;
  }
}
@media screen and (max-width: 820px), print {
  #contact .contactBg {
    border-radius: 15px;
  }
}
@media screen and (max-width: 520px) {
  #contact .contactBg {
    padding: 30px 20px;
  }
}
@media screen and (max-width: 820px), print {
  #contact .contactBg {
    padding: 50px;
  }
}
@media screen and (max-width: 520px) {
  #contact .contactBg {
    padding: 50px 30px;
  }
}
#contact .step-area {
  text-align: center;
  margin: 0 auto 55px;
  width: 90%;
}
@media screen and (max-width: 1024px) {
  #contact .step-area {
    margin: 0 auto 35px;
    width: 90%;
  }
}
#contact .table-area dl {
  border-bottom: 1px solid #ccc;
  padding: 20px;
}
@media print {
  #contact .table-area dl {
    flex-direction: column;
    padding: 25px 0;
  }
}
@media screen and (max-width: 1024px) {
  #contact .table-area dl {
    padding: 25px 0;
  }
}
@media screen and (max-width: 820px), print {
  #contact .table-area dl {
    flex-direction: column;
  }
}
#contact .table-area dl.dlTop {
  border-top: 1px solid #ccc;
}
@media screen and (max-width: 820px), print {
  #contact .table-area dl .dtFlex {
    align-items: center;
  }
}
#contact .table-area dl dt {
  width: 237px;
}
@media print {
  #contact .table-area dl dt {
    margin-bottom: 20px;
    width: 100%;
  }
}
@media screen and (max-width: 1024px) {
  #contact .table-area dl dt {
    width: 200px;
  }
}
@media screen and (max-width: 820px), print {
  #contact .table-area dl dt {
    margin-bottom: 10px;
    width: 100%;
    justify-content: start;
  }
}
#contact .table-area dl dt .note {
  font-size: 0.875rem;
  text-indent: -1em;
  padding-left: 1em;
  display: block;
  margin-top: 10px;
}
#contact .table-area dl dd {
  width: calc(100% - 290px);
}
@media print {
  #contact .table-area dl dd {
    width: 100%;
  }
}
@media screen and (max-width: 1024px) {
  #contact .table-area dl dd {
    width: calc(100% - 220px);
  }
}
@media screen and (max-width: 820px), print {
  #contact .table-area dl dd {
    width: 100%;
    border-left: none;
    padding-left: 0;
  }
}
#contact .table-area dl dd .textArea__form,
#contact .table-area dl dd .textBox__form {
  background-color: #fff;
  border: 1px solid #ccc;
  padding: 8px 10px;
  font-size: 16px;
  width: 100%;
}
@media screen and (max-width: 520px) {
  #contact .table-area dl dd .textArea__form,
  #contact .table-area dl dd .textBox__form {
    font-size: 14px;
  }
}
#contact .table-area dl dd .parent .textArea__form,
#contact .table-area dl dd .parent .textBox__form,
#contact .table-area dl dd .parent .textArea__form2 {
  background-color: #fff;
}
#contact .table-area dl dd .textArea__form2 {
  background-color: #fff;
  border: 1px solid #ccc;
  padding: 8px 10px;
  font-size: 16px;
  margin-bottom: 10px;
  width: 180px;
  margin-left: 10px;
}
#contact .table-area dl dd #mail_box {
  border-top: 1px dashed #ccc;
  border-bottom: 1px dashed #ccc;
  pointer-events: none;
  font-size: 16px;
  padding: 8px 15px;
  width: 100%;
}
#contact .table-area dl dd .mail_box-title {
  margin: 10px 0;
}
@media screen and (max-width: 520px) {
  #contact .table-area dl dd .mail_box-title {
    letter-spacing: 0.03rem;
  }
}
#contact .table-area dl dd .parent .radio-field-text::before {
  background-color: #fcf0f0;
}
#contact .privacy_area {
  margin: 30px 0;
}
@media screen and (max-width: 520px) {
  #contact .privacy_area {
    margin: 20px 0;
  }
}
#contact .privacy_area .privacyTitle {
  font-size: 18px;
  margin-bottom: 15px;
  font-weight: normal;
}
@media screen and (max-width: 520px) {
  #contact .privacy_area .privacyTitle {
    font-size: 16px;
    margin-bottom: 10px;
  }
}
#contact .privacy_area .privacyBox {
  border: 1px solid #f2f2f2;
  overflow-y: scroll;
  max-width: 880px;
  width: 100%;
  height: 200px;
  padding: 30px;
  margin: 0 auto 30px;
  overflow-y: scroll;
  -ms-overflow-style: none;
  /* IE, Edge 対応 */
  scrollbar-width: none;
  /* Firefox 対応 */
}
@media screen and (max-width: 820px), print {
  #contact .privacy_area .privacyBox {
    padding: 25px;
    margin-bottom: 15px;
    height: 250px;
  }
}
#contact .privacy_area .privacyBox ul {
  margin: 0;
}
#contact .privacy_area .privacyBox ul li {
  text-indent: -1.4em;
  padding-left: 2.4em;
}
#contact .privacy_area .privacyBox .privacy_sub {
  color: #90c31f;
}
#contact .privacy_area .privacyBox .privacyText + .privacy_sub {
  margin-top: 35px;
}
@media screen and (max-width: 520px) {
  #contact .privacy_area .privacyBox {
    text-align: left;
  }
}
#contact .privacy_area .privacyBox .privacyBox__title {
  font-size: 20px;
  font-weight: 500;
  margin-bottom: 10px;
}
@media screen and (max-width: 520px) {
  #contact .privacy_area .privacyBox .privacyBox__title + p {
    font-size: 15px;
  }
}
#contact .privacy_area .privacy_inner {
  display: flex;
  justify-content: center;
}
@media print {
  #contact .privacy_area .privacy_inner {
    flex-wrap: wrap;
  }
}
@media screen and (max-width: 820px), print {
  #contact .privacy_area .privacy_inner {
    flex-wrap: wrap;
  }
}
@media screen and (max-width: 520px) {
  #contact .privacy_area .privacy_inner {
    font-size: 14px;
    justify-content: center;
  }
}
#contact .privacy_area .privacy_inner + .error {
  text-align: center;
  width: 100%;
}
#contact .privacy_area .privacy_inner label {
  margin-right: 15px;
  margin-bottom: 5px;
}
#contact label {
  position: relative;
}
#contact label:first-child .radio-field-text {
  margin-top: 0px;
}
#contact .radioBox label {
  display: block;
}
#contact .checkbox-field-text,
#contact .radio-field-text {
  cursor: pointer;
  display: inline-block;
  padding-left: 30px;
  position: relative;
}
#contact input[type=checkbox]:checked + .checkbox-field-text::after,
#contact input[type=radio]:checked + .radio-field-text::after {
  opacity: 1;
}
#contact input[type=radio],
#contact input[type=checkbox] {
  position: absolute;
  width: 1px;
  height: 1px;
  top: 20px;
  left: 15px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0;
}
#contact .checkbox-field-text::before {
  content: "";
  display: block;
  width: 18px;
  height: 18px;
  position: absolute;
  top: 50%;
  left: 5px;
  transform: translateY(-50%);
  border: 1px solid #ccc;
  background-color: #fff;
}
#contact .checkbox-field-text::after {
  content: "";
  display: block;
  width: 9px;
  height: 17px;
  position: absolute;
  top: 31%;
  left: 7px;
  transform: rotate(42deg) skewY(13deg) translateY(-46%);
  transform-origin: center right;
  border-right: 2px solid #90c31f;
  border-bottom: 2px solid #90c31f;
  border-radius: 0;
  background-color: transparent;
  opacity: 0;
}
#contact .radio-field-text {
  margin-top: 10px;
}
#contact .radio-field-text::before {
  content: "";
  display: block;
  width: 18px;
  height: 18px;
  position: absolute;
  left: 5px;
  top: 50%;
  transform: translateY(-50%);
  border: 1px solid #ccc;
  border-radius: 50%;
  background-color: #fff;
}
#contact .radio-field-text::after {
  content: "";
  display: block;
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background-color: #90c31f;
  position: absolute;
  top: 50%;
  left: 9px;
  transform: translateY(-50%);
  opacity: 0;
}
#contact .privacyBox {
  margin-top: 20px;
}
@media screen and (max-width: 520px) {
  #contact .privacyBox {
    text-align: left;
  }
  #contact .privacyBox p {
    letter-spacing: -0.01rem;
  }
}
#contact .privacyBox .privacyBox__title {
  font-size: 20px;
  font-weight: 500;
  margin-bottom: 10px;
}
@media screen and (max-width: 520px) {
  #contact .privacyBox .privacyBox__title + p {
    font-size: 15px;
  }
}
#contact .privacyBox a {
  color: #90c31f;
  border-bottom: 1px solid #90c31f;
}
#contact .privacy_area {
  margin: 25px 0;
}
#contact .privacy_area .privacy_Text {
  margin-bottom: 40px;
}
@media screen and (max-width: 520px) {
  #contact .privacy_area .privacy_Text {
    margin-bottom: 20px;
  }
}
#contact .privacy_area .privacy_inner {
  display: flex;
  justify-content: center;
}
@media print {
  #contact .privacy_area .privacy_inner {
    flex-wrap: wrap;
  }
}
@media screen and (max-width: 820px), print {
  #contact .privacy_area .privacy_inner {
    flex-wrap: wrap;
  }
}
@media screen and (max-width: 520px) {
  #contact .privacy_area .privacy_inner {
    font-size: 14px;
    justify-content: center;
  }
}
#contact .privacy_area .privacy_inner + .error {
  text-align: center;
  width: 100%;
}
#contact .compTitle {
  color: #90c31f;
  font-size: 24px;
  font-weight: 500;
  margin-bottom: 25px;
  text-align: center;
}
@media screen and (max-width: 520px) {
  #contact .compTitle {
    margin-bottom: 15px;
  }
}
#contact .compText {
  line-height: 30px;
  font-weight: 500;
  margin-bottom: 30px;
}
@media screen and (max-width: 520px) {
  #contact .compText {
    line-height: 24px;
  }
}

.required {
  background-color: #f49a40;
  color: #fff;
  text-align: center;
  padding: 0 10px;
}
@media screen and (max-width: 820px), print {
  .required {
    margin-left: 1em;
  }
}

@media screen and (max-width: 820px), print {
  .formItem + .formItem {
    display: block;
    margin-top: 20px;
  }
}
.formItem th, .formItem td {
  padding: 10px;
}
@media screen and (max-width: 820px), print {
  .formItem th, .formItem td {
    padding: 5px 10px;
    display: block;
    width: 100%;
  }
}

.formTitle {
  vertical-align: top;
  text-align: left;
  width: 280px;
}

.formInner {
  text-align: left;
  width: calc(100% - 280px);
}

.formInputBox {
  border: 1px solid #ccc;
  padding: 5px 1em;
  font-size: 16px;
  width: 100%;
}

.mailConf {
  border-top: 1px dashed #ccc;
  border-bottom: 1px dashed #ccc;
}
.mailConf input {
  padding: 5px 1em;
  font-size: 16px;
  width: 100%;
}

.privacyLink {
  text-decoration: underline;
  color: #90c31f;
}

.radioInput,
.checkInput {
  display: none;
}

.mwform-radio-field-text {
  position: relative;
  padding-left: 30px;
}
.mwform-radio-field-text::before {
  content: "";
  position: absolute;
  border: 1px solid #333;
  border-radius: 50%;
  top: 50%;
  transform: translate(0, -50%);
  left: 0;
  height: 16px;
  width: 16px;
}
.radioInput:checked + .mwform-radio-field-text::after {
  content: "";
  position: absolute;
  border-radius: 50%;
  background-color: #333;
  top: 50%;
  transform: translate(0, -50%);
  left: 3px;
  height: 10px;
  width: 10px;
}

.mwform-checkbox-field-text {
  position: relative;
  padding-left: 30px;
}
.mwform-checkbox-field-text::before {
  content: "";
  position: absolute;
  border: 1px solid #333;
  top: 50%;
  transform: translate(0, -50%);
  left: 0;
  height: 16px;
  width: 16px;
}
.checkInput:checked + .mwform-checkbox-field-text::after {
  border-bottom: 2px solid #333;
  border-right: 2px solid #333;
  content: "";
  position: absolute;
  top: 25%;
  transform: translate(0, -50%) rotate(45deg);
  left: 3px;
  height: 18px;
  width: 11px;
}

.cofirm-btn-wrap {
  margin-top: 40px;
}
@media screen and (max-width: 520px) {
  .cofirm-btn-wrap {
    flex-direction: column;
  }
}
.cofirm-btn-wrap .back-btn,
.cofirm-btn-wrap .submit-btn {
  width: 320px;
}
@media screen and (max-width: 520px) {
  .cofirm-btn-wrap .back-btn,
  .cofirm-btn-wrap .submit-btn {
    width: 100%;
  }
}
.cofirm-btn-wrap .back-btn .button01 {
  background-color: #999;
  box-shadow: 0px 0px 0px 2px #999;
}
.cofirm-btn-wrap .back-btn .button01::before {
  position: absolute;
  content: "";
  border: 1px solid #999;
  border-radius: 80px;
  width: calc(100% + 8px);
  height: calc(100% + 8px);
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  transition: all 0.3s;
  opacity: 0;
}
.cofirm-btn-wrap .back-btn .button01 span {
  padding-right: 0;
  padding-left: 20px;
}
.cofirm-btn-wrap .back-btn .button01 span::after {
  transform: translate(0, -50%) rotate(180deg);
  left: 0;
}
.cofirm-btn-wrap .back-btn .button01:hover {
  background-color: #fff;
  box-shadow: 0px 0px 0px 2px rgb(255, 255, 255);
  border: 1px solid #999;
  color: #999;
  opacity: 1;
}
.cofirm-btn-wrap .back-btn .button01:hover::before {
  transition: all 0.3s;
  opacity: 1;
}
.cofirm-btn-wrap .back-btn .button01:hover span:after {
  background-image: url(../images/common/arw03.svg);
  transition: all 0.2s;
}
.cofirm-btn-wrap .submit-btn {
  margin-left: 30px;
}
@media screen and (max-width: 520px) {
  .cofirm-btn-wrap .submit-btn {
    margin-left: 0;
    margin-top: 20px;
  }
}

#recruitNews,
#Concept,
#Data,
#Interview,
#Oneday,
#FAQ,
#Entry {
  padding-top: 150px;
  margin-top: -150px;
  position: relative;
  z-index: -1;
}

/** recruit 共通 ***********************************************************/
.h2-mb {
  margin-bottom: 20px;
}

.mb-p {
  text-align: center;
  margin-bottom: 60px;
}
@media screen and (max-width: 820px), print {
  .mb-p {
    margin-bottom: 40px;
  }
}
@media screen and (max-width: 520px) {
  .mb-p {
    text-align: left;
    margin-bottom: 30px;
  }
}

.recBg {
  background-color: #f7f4e8;
  padding: 60px 0px;
  margin: 200px auto;
  position: relative;
}
@media screen and (max-width: 1024px) {
  .recBg {
    padding: 60px 0px 60px;
  }
}
@media screen and (max-width: 820px), print {
  .recBg {
    padding: 10px 0px 60px;
    margin: 0 auto;
  }
}
@media screen and (max-width: 520px) {
  .recBg {
    padding: 30px 0px 30px;
    margin: 95px auto;
  }
}
.recBg::before {
  background-image: url(../images/recruit/recruitBg1@2x.png);
  content: "";
  position: absolute;
  background-size: cover;
  width: 100%;
  height: 190px;
  background-position: center;
  top: -184px;
}
@media (min-width: 1921px) {
  .recBg::before {
    background-size: 100% 100%;
    top: -189px;
  }
}
@media (max-width: 1150px) {
  .recBg::before {
    background-size: 200% 100%;
    top: -139px;
  }
}
@media screen and (max-width: 520px) {
  .recBg::before {
    background-size: 100% 20%;
    top: -111px;
  }
}
.recBg::after {
  background-image: url(../images/recruit/recruitBg2@2x.png);
  content: "";
  position: absolute;
  background-size: cover;
  width: 100%;
  height: 190px;
  background-position: center;
  bottom: -185px;
}
@media (min-width: 1921px) {
  .recBg::after {
    background-size: 100% 100%;
    bottom: -189px;
  }
}
@media (max-width: 1150px) {
  .recBg::after {
    background-size: 200% 100%;
    bottom: -139px;
  }
}
@media screen and (max-width: 520px) {
  .recBg::after {
    background-size: 100% 20%;
    bottom: -111px;
  }
}

/** recruitFv ***********************************************************/
#recFv {
  overflow-x: clip;
  position: relative;
}
#recFv .mainImg {
  margin-top: 30px;
}
@media screen and (max-width: 820px), print {
  #recFv .mainImg {
    margin: 30px auto 0;
    width: 80%;
  }
}
@media screen and (max-width: 520px) {
  #recFv .mainImg {
    width: 100%;
  }
}
#recFv .mainImg::before {
  position: absolute;
  content: "";
  background-image: url(../images/top/Clover1@2x.png);
  background-size: contain;
  background-position: center;
  height: 17.4vw;
  width: 17.4vw;
  top: 1vw;
  right: -2.5vw;
  z-index: -1;
  animation: rotateAnimation 24s linear infinite;
}
@media screen and (max-width: 820px), print {
  #recFv .mainImg::before {
    height: 21vw;
    width: 21vw;
    top: 86vw;
    right: 4vw;
  }
}
@media screen and (max-width: 520px) {
  #recFv .mainImg::before {
    height: 28.3vw;
    width: 28.3vw;
    top: 105vw;
    right: -3vw;
  }
}
#recFv .mainImg::after {
  position: absolute;
  content: "";
  background-image: url(../images/top/Clover2@2x.png);
  background-size: contain;
  background-position: center;
  height: 5.4vw;
  width: 5.4vw;
  top: 34.5vw;
  left: 3.7vw;
  z-index: -1;
  animation: rotateAnimation 24s linear infinite;
}
@media screen and (max-width: 820px), print {
  #recFv .mainImg::after {
    height: 8vw;
    width: 8vw;
    top: -0.5vw;
    left: 8.5vw;
  }
}
@media screen and (max-width: 520px) {
  #recFv .mainImg::after {
    height: 9.6vw;
    width: 9.6vw;
    top: -1vw;
    left: 7.2vw;
  }
}

/** recruitNews ***********************************************************/
#recNews {
  margin: 120px auto 310px;
}
@media screen and (max-width: 820px), print {
  #recNews {
    margin: 100px auto 260px;
  }
}
@media screen and (max-width: 520px) {
  #recNews {
    margin: 60px auto 120px;
  }
}
#recNews .recNewsText {
  margin-bottom: 60px;
}
@media screen and (max-width: 820px), print {
  #recNews .recNewsText {
    margin-bottom: 45px;
  }
}
@media screen and (max-width: 520px) {
  #recNews .recNewsText {
    text-align: left;
    letter-spacing: 0.04em;
  }
}
#recNews .button01 {
  margin-top: 60px;
}
@media screen and (max-width: 820px), print {
  #recNews .button01 {
    margin-top: 30px;
  }
}

/** recConcept ***********************************************************/
#recConcept .orangeBg {
  background-color: #f2e8a7;
  border-radius: 3px;
  font-size: 24px;
  padding: 5px 13px;
}
@media screen and (max-width: 520px) {
  #recConcept .orangeBg {
    font-size: 16px;
  }
}
@media screen and (max-width: 520px) {
  #recConcept .secTitle {
    margin-bottom: 20px;
    font-size: 22px;
  }
}
#recConcept .secTitle2 {
  font-size: 52px;
  color: #f49a40;
  font-weight: 500;
}
@media (max-width: 960px) {
  #recConcept .secTitle2 {
    font-size: 4.8vw;
  }
}
@media screen and (max-width: 520px) {
  #recConcept .secTitle2 {
    font-size: 24px;
  }
}
#recConcept .secTitle2::before {
  background-image: url(../images/recruit/concept1@2x.png);
  content: "";
  position: absolute;
  background-size: contain;
  width: 261px;
  height: 331px;
  top: -30px;
  left: 0;
  background-position: center;
}
@media (max-width: 1250px) {
  #recConcept .secTitle2::before {
    width: 221px;
    height: 291px;
    top: 80px;
  }
}
@media screen and (max-width: 1024px) {
  #recConcept .secTitle2::before {
    width: 191px;
    height: 261px;
    top: 110px;
  }
}
@media (max-width: 960px) {
  #recConcept .secTitle2::before {
    width: 21vw;
    height: 23vw;
    top: 103px;
    left: 0px;
  }
}
@media screen and (max-width: 520px) {
  #recConcept .secTitle2::before {
    background-image: url(../images/recruit/concept1_ipad@2x.png);
    width: 110px;
    height: 120px;
    top: 180px;
    left: 25px;
  }
}
#recConcept .secTitle2::after {
  background-image: url(../images/recruit/concept2@2x.png);
  content: "";
  position: absolute;
  background-size: contain;
  width: 282px;
  height: 299px;
  top: 0;
  right: 0;
  background-position: center;
}
@media (max-width: 1250px) {
  #recConcept .secTitle2::after {
    width: 242px;
    height: 259px;
    top: 100px;
  }
}
@media screen and (max-width: 1024px) {
  #recConcept .secTitle2::after {
    width: 212px;
    height: 229px;
    top: 140px;
  }
}
@media (max-width: 960px) {
  #recConcept .secTitle2::after {
    width: 20vw;
    height: 21vw;
    top: 115px;
    right: -10px;
  }
}
@media screen and (max-width: 520px) {
  #recConcept .secTitle2::after {
    background-image: url(../images/recruit/concept2_ipad@2x.png);
    width: 98px;
    height: 104px;
    top: 195px;
    right: 15px;
  }
}
#recConcept .aisatsu {
  margin: 90px auto 90px;
}
@media (max-width: 960px) {
  #recConcept .aisatsu {
    margin: 65px auto 90px;
  }
}
@media screen and (max-width: 820px), print {
  #recConcept .aisatsu {
    flex-direction: column;
    align-items: center;
  }
}
@media screen and (max-width: 520px) {
  #recConcept .aisatsu {
    flex-direction: column;
    margin: 140px auto 45px;
  }
}
#recConcept .aisatsu .aisatsu_img {
  width: 33.6%;
}
@media screen and (max-width: 820px), print {
  #recConcept .aisatsu .aisatsu_img {
    width: 60%;
    margin-bottom: 50px;
  }
}
@media screen and (max-width: 520px) {
  #recConcept .aisatsu .aisatsu_img {
    width: 100%;
    margin-bottom: 25px;
  }
}
#recConcept .aisatsu .aisatsu_p {
  width: 55.8%;
}
@media screen and (max-width: 1024px) {
  #recConcept .aisatsu .aisatsu_p {
    width: 60%;
  }
}
@media screen and (max-width: 820px), print {
  #recConcept .aisatsu .aisatsu_p {
    width: 100%;
  }
}
#recConcept .aisatsu .aisatsu_p .d_aisatsu {
  margin-bottom: 30px;
}
@media screen and (max-width: 520px) {
  #recConcept .aisatsu .aisatsu_p .d_aisatsu {
    margin-bottom: 15px;
  }
}
#recConcept .aisatsu .aisatsu_p .letter {
  letter-spacing: 0.03em;
  line-height: 2.3em;
}
@media screen and (max-width: 520px) {
  #recConcept .aisatsu .aisatsu_p .letter {
    line-height: 1.8;
  }
}
#recConcept .aisatsu .aisatsu_p .aisatsu_name {
  text-align: right;
  font-size: 20px;
  margin-top: 10%;
}
@media screen and (max-width: 1024px) {
  #recConcept .aisatsu .aisatsu_p .aisatsu_name {
    margin-top: 2%;
  }
}
@media screen and (max-width: 820px), print {
  #recConcept .aisatsu .aisatsu_p .aisatsu_name {
    font-size: 17px;
    margin-top: 20px;
  }
}
@media screen and (max-width: 520px) {
  #recConcept .aisatsu .aisatsu_p .aisatsu_name {
    margin-top: 10px;
  }
}
#recConcept .hukuri,
#recConcept .kenshu {
  background-color: #fff;
  box-shadow: 5px 5px 7px 0px rgba(91, 63, 52, 0.2);
  border-radius: 20px;
  padding: 50px;
}
@media screen and (max-width: 820px), print {
  #recConcept .hukuri,
  #recConcept .kenshu {
    padding: 35px;
    border-radius: 10px;
  }
}
@media screen and (max-width: 520px) {
  #recConcept .hukuri,
  #recConcept .kenshu {
    padding: 20px;
  }
}
#recConcept .hukuri .flex,
#recConcept .kenshu .flex {
  flex-wrap: wrap;
  margin-top: 30px;
}
@media screen and (max-width: 520px) {
  #recConcept .hukuri .flex,
  #recConcept .kenshu .flex {
    margin-top: 15px;
  }
}
#recConcept .hukuri .flex .orangeBg2,
#recConcept .kenshu .flex .orangeBg2 {
  background-color: #fbf8e4;
  border-radius: 5px;
  padding: 25px 25px 25px 50px;
  width: 49%;
}
@media screen and (max-width: 820px), print {
  #recConcept .hukuri .flex .orangeBg2,
  #recConcept .kenshu .flex .orangeBg2 {
    width: 100%;
  }
}
@media screen and (max-width: 520px) {
  #recConcept .hukuri .flex .orangeBg2,
  #recConcept .kenshu .flex .orangeBg2 {
    padding: 15px 15px 15px 40px;
  }
}
#recConcept .hukuri .flex .orangeBg2 + .orangeBg2,
#recConcept .kenshu .flex .orangeBg2 + .orangeBg2 {
  margin-top: 30px;
}
@media screen and (max-width: 520px) {
  #recConcept .hukuri .flex .orangeBg2 + .orangeBg2,
  #recConcept .kenshu .flex .orangeBg2 + .orangeBg2 {
    margin-top: 15px;
  }
}
#recConcept .hukuri .flex .orangeBg2:nth-child(2),
#recConcept .kenshu .flex .orangeBg2:nth-child(2) {
  margin-top: 0px;
}
@media screen and (max-width: 820px), print {
  #recConcept .hukuri .flex .orangeBg2:nth-child(2),
  #recConcept .kenshu .flex .orangeBg2:nth-child(2) {
    margin-top: 30px;
  }
}
@media screen and (max-width: 520px) {
  #recConcept .hukuri .flex .orangeBg2:nth-child(2),
  #recConcept .kenshu .flex .orangeBg2:nth-child(2) {
    margin-top: 15px;
  }
}
#recConcept .hukuri .flex .orangeBg2 .orange,
#recConcept .kenshu .flex .orangeBg2 .orange {
  color: #f49a40;
  position: relative;
  font-size: 20px;
  letter-spacing: 0em;
  font-weight: bold;
}
@media screen and (max-width: 520px) {
  #recConcept .hukuri .flex .orangeBg2 .orange,
  #recConcept .kenshu .flex .orangeBg2 .orange {
    font-size: 15px;
    letter-spacing: 0.01em;
  }
}
#recConcept .hukuri .flex .orangeBg2 .orange::before,
#recConcept .kenshu .flex .orangeBg2 .orange::before {
  background-image: url(../images/common/pageHeaderDeco.svg);
  content: "";
  position: absolute;
  background-size: contain;
  width: 18px;
  height: 18px;
  top: 7px;
  left: -25px;
  background-position: center;
}
@media screen and (max-width: 520px) {
  #recConcept .hukuri .flex .orangeBg2 .orange::before,
  #recConcept .kenshu .flex .orangeBg2 .orange::before {
    top: 2px;
  }
}
#recConcept .hukuri .flex .orangeBg2 .orange .font14,
#recConcept .kenshu .flex .orangeBg2 .orange .font14 {
  font-size: 14px;
}
#recConcept .hukuri .flex .orangeBg2 .mt_p,
#recConcept .kenshu .flex .orangeBg2 .mt_p {
  letter-spacing: 0.07em;
  margin-top: 5px;
}
@media screen and (max-width: 820px), print {
  #recConcept .hukuri .flex .orangeBg2 .mt_p,
  #recConcept .kenshu .flex .orangeBg2 .mt_p {
    letter-spacing: 0.04em;
  }
}
#recConcept .kenshu {
  margin-top: 50px;
}
@media screen and (max-width: 520px) {
  #recConcept .kenshu {
    margin-top: 30px;
  }
}

/** recData ***********************************************************/
#recData {
  margin: 320px auto;
}
@media screen and (max-width: 820px), print {
  #recData {
    margin: 230px auto;
  }
}
@media screen and (max-width: 520px) {
  #recData {
    margin: 100px auto;
  }
}
#recData .flex {
  flex-wrap: wrap;
  justify-content: space-between;
}
#recData .flex .data-item:nth-child(n+4) {
  margin-top: 30px;
}
@media screen and (max-width: 820px), print {
  #recData .flex .data-item:nth-child(n+4) {
    margin-top: 0;
  }
}
@media screen and (max-width: 820px), print {
  #recData .flex .data-item:nth-child(n+3) {
    margin-top: 15px;
  }
}
#recData .flex .data-item.item1 {
  width: 31.6%;
}
@media screen and (max-width: 820px), print {
  #recData .flex .data-item.item1 {
    width: 48%;
  }
}
#recData .flex .data-item.item2 {
  width: 31.6%;
}
@media screen and (max-width: 820px), print {
  #recData .flex .data-item.item2 {
    width: 48%;
  }
}
#recData .flex .data-item.item3 {
  width: 31.6%;
  position: relative;
}
@media screen and (max-width: 820px), print {
  #recData .flex .data-item.item3 {
    width: 48%;
  }
}
#recData .flex .data-item.item3::before {
  position: absolute;
  content: "";
  background-image: url(../images/recruit/Data.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  width: 235px;
  height: 226px;
  transform: translate(0, -50%);
  top: -110px;
  right: 20%;
}
@media (max-width: 1200px) {
  #recData .flex .data-item.item3::before {
    width: 185px;
    height: 176px;
    right: 15%;
    top: -86px;
  }
}
@media screen and (max-width: 1024px) {
  #recData .flex .data-item.item3::before {
    width: 175px;
    height: 165px;
    top: -80px;
  }
}
@media screen and (max-width: 820px), print {
  #recData .flex .data-item.item3::before {
    display: none;
  }
}
#recData .flex .data-item.item4 {
  width: 48.6%;
}
@media screen and (max-width: 820px), print {
  #recData .flex .data-item.item4 {
    width: 48%;
  }
}
#recData .flex .data-item.item5 {
  width: 48.6%;
}
@media screen and (max-width: 820px), print {
  #recData .flex .data-item.item5 {
    width: 100%;
  }
}
#recData .flex .data-item.item6 {
  width: 31.6%;
}
@media screen and (max-width: 820px), print {
  #recData .flex .data-item.item6 {
    width: 48%;
  }
}
#recData .flex .data-item.item7 {
  width: 31.6%;
}
@media screen and (max-width: 820px), print {
  #recData .flex .data-item.item7 {
    width: 48%;
  }
}
#recData .flex .data-item.item8 {
  width: 31.6%;
}
@media screen and (max-width: 820px), print {
  #recData .flex .data-item.item8 {
    width: 100%;
  }
}
#recData .flex .data-item.item9 {
  width: 48.6%;
}
@media screen and (max-width: 820px), print {
  #recData .flex .data-item.item9 {
    width: 100%;
  }
}
#recData .flex .data-item.item10 {
  width: 48.6%;
}
@media screen and (max-width: 820px), print {
  #recData .flex .data-item.item10 {
    width: 100%;
  }
}
#recData .flex .data-item.item11 {
  width: 48.6%;
}
@media screen and (max-width: 820px), print {
  #recData .flex .data-item.item11 {
    width: 48%;
  }
}
#recData .flex .data-item.item12 {
  width: 48.6%;
}
@media screen and (max-width: 820px), print {
  #recData .flex .data-item.item12 {
    width: 48%;
  }
}
#recData .flex .data-item.item13 {
  width: 31.6%;
}
@media screen and (max-width: 820px), print {
  #recData .flex .data-item.item13 {
    width: 48%;
  }
}
#recData .flex .data-item.item14 {
  width: 31.6%;
}
@media screen and (max-width: 820px), print {
  #recData .flex .data-item.item14 {
    width: 48%;
  }
}
#recData .flex .data-item.item15 {
  width: 31.6%;
}
@media screen and (max-width: 820px), print {
  #recData .flex .data-item.item15 {
    width: 48%;
  }
}
#recData .flex .data-item.item16 {
  width: 31.6%;
}
@media screen and (max-width: 820px), print {
  #recData .flex .data-item.item16 {
    width: 48%;
  }
}
#recData .flex .data-item.item17 {
  width: 31.6%;
}
@media screen and (max-width: 820px), print {
  #recData .flex .data-item.item17 {
    width: 48%;
  }
}
#recData .flex .data-item.item18 {
  width: 31.6%;
}
@media screen and (max-width: 820px), print {
  #recData .flex .data-item.item18 {
    width: 48%;
  }
}

/** recInterview ***********************************************************/
#recInterview .wrap-1400 {
  max-width: 1400px;
}
#recInterview .wrap-1400 .InterviewCard {
  background-color: #fff;
  box-shadow: 5px 5px 7px 0px rgba(91, 63, 52, 0.2);
  border-radius: 30px;
  padding: 100px;
  margin-bottom: 110px;
}
@media screen and (max-width: 1024px) {
  #recInterview .wrap-1400 .InterviewCard {
    padding: 70px;
  }
}
@media screen and (max-width: 820px), print {
  #recInterview .wrap-1400 .InterviewCard {
    padding: 50px;
    margin-bottom: 70px;
  }
}
@media screen and (max-width: 520px) {
  #recInterview .wrap-1400 .InterviewCard {
    padding: 30px 25px;
    margin-bottom: 50px;
  }
}
#recInterview .wrap-1400 .InterviewCard:nth-last-child(1) {
  margin-bottom: 0;
}
#recInterview .wrap-1400 .InterviewCard .Interview_img {
  margin-bottom: 80px;
}
@media screen and (max-width: 820px), print {
  #recInterview .wrap-1400 .InterviewCard .Interview_img {
    margin-bottom: 40px;
  }
}
@media screen and (max-width: 520px) {
  #recInterview .wrap-1400 .InterviewCard .Interview_img {
    margin-bottom: 30px;
  }
}
#recInterview .wrap-1400 .InterviewCard .QAarea {
  margin-bottom: 60px;
}
@media screen and (max-width: 820px), print {
  #recInterview .wrap-1400 .InterviewCard .QAarea {
    margin-bottom: 35px;
  }
}
@media screen and (max-width: 520px) {
  #recInterview .wrap-1400 .InterviewCard .QAarea {
    margin-bottom: 25px;
  }
}
#recInterview .wrap-1400 .InterviewCard .QAarea .flex {
  align-items: baseline;
}
#recInterview .wrap-1400 .InterviewCard .QAarea .In_Question {
  margin-bottom: 25px;
  border-bottom: 1px solid #f49a40;
  padding-bottom: 15px;
  display: inline-block;
}
@media screen and (max-width: 1024px) {
  #recInterview .wrap-1400 .InterviewCard .QAarea .In_Question {
    margin-bottom: 10px;
  }
}
@media screen and (max-width: 820px), print {
  #recInterview .wrap-1400 .InterviewCard .QAarea .In_Question {
    margin-bottom: 10px;
    padding-bottom: 5px;
  }
}
#recInterview .wrap-1400 .InterviewCard .QAarea .In_Question .Qn {
  font-size: 30px;
  color: #f49a40;
}
@media screen and (max-width: 820px), print {
  #recInterview .wrap-1400 .InterviewCard .QAarea .In_Question .Qn {
    font-size: 20px;
    width: 40px;
  }
}
@media screen and (max-width: 520px) {
  #recInterview .wrap-1400 .InterviewCard .QAarea .In_Question .Qn {
    font-size: 16px;
    width: 35px;
  }
}
#recInterview .wrap-1400 .InterviewCard .QAarea .In_Question .Qp {
  font-size: 20px;
  color: #f49a40;
  padding-left: 10px;
}
@media screen and (max-width: 820px), print {
  #recInterview .wrap-1400 .InterviewCard .QAarea .In_Question .Qp {
    font-size: 20px;
    padding-left: 0px;
  }
}
@media screen and (max-width: 520px) {
  #recInterview .wrap-1400 .InterviewCard .QAarea .In_Question .Qp {
    font-size: 16px;
    line-height: 1.4;
    letter-spacing: 0.03em;
  }
}
#recInterview .wrap-1400 .InterviewCard .QAarea:nth-last-child(1) {
  margin-bottom: 0;
}
#recInterview .wrap-1400 .InterviewCard .QAarea .In_answer {
  line-height: 1.9em;
}
@media screen and (max-width: 520px) {
  #recInterview .wrap-1400 .InterviewCard .QAarea .In_answer {
    line-height: 1.6;
  }
}

/** recOneday ***********************************************************/
#recOneday {
  margin: 300px auto 0;
}
@media screen and (max-width: 820px), print {
  #recOneday {
    margin: 230px auto 0;
  }
}
@media screen and (max-width: 520px) {
  #recOneday {
    margin: 100px auto 0;
  }
}
@media screen and (max-width: 820px), print {
  #recOneday .flex {
    flex-direction: column;
  }
}
#recOneday .mb_f {
  margin-bottom: 50px;
}
#recOneday .flowContens {
  position: relative;
  margin-left: 20px;
}
#recOneday .flowContens::after {
  position: absolute;
  content: "";
  top: -20px;
  bottom: 0;
  left: -3px;
  right: auto;
  transform: translate(0, 0);
  height: 98%;
  margin: auto;
  width: 3px;
  border-left: 2px dashed #86776a;
  opacity: 0.8;
}
@media screen and (max-width: 820px), print {
  #recOneday .flowContens::after {
    height: 99%;
    top: -10px;
  }
}
#recOneday .flowContens + .flowContens {
  margin-top: 40px;
}
#recOneday .flowContens .flex_left {
  width: 52%;
}
@media screen and (max-width: 820px), print {
  #recOneday .flowContens .flex_left {
    width: 100%;
  }
}
#recOneday .flowContens .flex_left .flowContens__list {
  padding-left: 40px;
  color: #f49a40;
  position: relative;
  align-items: baseline;
}
@media screen and (max-width: 820px), print {
  #recOneday .flowContens .flex_left .flowContens__list {
    flex-direction: row;
  }
}
@media screen and (max-width: 520px) {
  #recOneday .flowContens .flex_left .flowContens__list {
    padding-left: 20px;
  }
}
#recOneday .flowContens .flex_left .flowContens__list + .flowContens__list {
  margin-top: 30px;
}
#recOneday .flowContens .flex_left .flowContens__list::before {
  content: "";
  position: absolute;
  background-image: url(../images/common/pageHeaderDeco.svg);
  top: 6px;
  bottom: auto;
  left: -1px;
  right: auto;
  transform: translate(-50%, 0);
  height: 26px;
  width: 26px;
  z-index: 2;
}
@media screen and (max-width: 820px), print {
  #recOneday .flowContens .flex_left .flowContens__list::before {
    top: 8px;
  }
}
@media screen and (max-width: 520px) {
  #recOneday .flowContens .flex_left .flowContens__list::before {
    top: 1px;
  }
}
#recOneday .flowContens .flex_left .flowContens__list02 {
  padding-left: 40px;
}
@media screen and (max-width: 520px) {
  #recOneday .flowContens .flex_left .flowContens__list02 {
    padding-left: 20px;
    margin-bottom: 25px;
  }
}
#recOneday .flowContens .flex_left .flowContens__list02 p {
  padding: 10px 0;
  line-height: 2.1;
}
@media screen and (max-width: 820px), print {
  #recOneday .flowContens .flex_left .flowContens__list02 p {
    line-height: 1.8;
  }
}
@media screen and (max-width: 520px) {
  #recOneday .flowContens .flex_left .flowContens__list02 p {
    line-height: 1.5;
  }
}
#recOneday .flowContens .flex_left .flowContens__list03 {
  margin-bottom: 30px;
  padding-left: 40px;
}
@media screen and (max-width: 520px) {
  #recOneday .flowContens .flex_left .flowContens__list03 {
    padding-left: 20px;
    margin-bottom: 25px;
  }
}
#recOneday .flowContens .flex_left .flowContens__list03 p {
  padding: 10px 0;
  line-height: 2.1;
}
@media screen and (max-width: 820px), print {
  #recOneday .flowContens .flex_left .flowContens__list03 p {
    line-height: 1.8;
  }
}
@media screen and (max-width: 520px) {
  #recOneday .flowContens .flex_left .flowContens__list03 p {
    line-height: 1.5;
  }
}
#recOneday .flowContens .flex_left .flowContens__inner {
  font-size: 24px;
  font-weight: 500;
  width: calc(100% - 110px);
}
#recOneday .flowContens .flex_left .flowContens__inner span {
  color: #333;
  font-size: 16px;
}
@media (max-width: 1300px) {
  #recOneday .flowContens .flex_left .flowContens__inner {
    font-size: 21px;
  }
}
@media screen and (max-width: 820px), print {
  #recOneday .flowContens .flex_left .flowContens__inner {
    width: 77.2%;
    letter-spacing: 0.02em;
  }
}
@media screen and (max-width: 520px) {
  #recOneday .flowContens .flex_left .flowContens__inner {
    font-size: 15px;
  }
}
#recOneday .flowContens .flex_left .flowContens__time {
  font-family: "Cantarell";
  font-size: 20px;
  font-weight: bold;
  width: 90px;
}
@media screen and (max-width: 520px) {
  #recOneday .flowContens .flex_left .flowContens__time {
    font-size: 15px;
    width: 60px;
  }
}
#recOneday .flowContens .flex_right {
  width: 42.6%;
}
@media screen and (max-width: 820px), print {
  #recOneday .flowContens .flex_right {
    width: 100%;
    margin: 10px 30px 0;
  }
}
@media screen and (max-width: 520px) {
  #recOneday .flowContens .flex_right {
    width: 90%;
    margin: 0px 0 0 20px;
  }
}

/** recFAQ ***********************************************************/
#recFAQ {
  margin: 110px auto;
  position: relative;
  z-index: 1;
}
@media screen and (max-width: 820px), print {
  #recFAQ {
    margin: 70px auto;
  }
}
@media screen and (max-width: 520px) {
  #recFAQ {
    margin: 60px auto;
  }
}
#recFAQ .acdContetns + .acdContetns {
  margin-top: 35px;
}
@media screen and (max-width: 820px), print {
  #recFAQ .acdContetns + .acdContetns {
    margin-top: 10px;
  }
}
#recFAQ .acdContetns .acdTitle02 {
  background-color: #f2e8a7;
  box-shadow: 0px 10px 0px 0px #ead786;
  border-radius: 10px;
  cursor: pointer;
  font-size: 20px;
  font-weight: 500;
  padding: 10px 50px 15px 30px;
  position: relative;
  align-items: baseline;
}
@media screen and (max-width: 820px), print {
  #recFAQ .acdContetns .acdTitle02 {
    font-size: 16px;
    padding: 5px 50px 5px 20px;
  }
}
@media screen and (max-width: 520px) {
  #recFAQ .acdContetns .acdTitle02 {
    font-size: 14px;
    letter-spacing: 0.02em;
    padding: 10px 40px 10px 15px;
    box-shadow: 0px 7px 0px 0px #ead786;
  }
}
#recFAQ .acdContetns .acdTitle02::before, #recFAQ .acdContetns .acdTitle02::after {
  content: "";
  display: inline-block;
  width: 20px;
  height: 2px;
  background-color: #f49a40;
  position: absolute;
  right: 20px;
  top: 50%;
  transform: translateY(-50%);
  transition: opacity 0.5s;
}
@media screen and (max-width: 520px) {
  #recFAQ .acdContetns .acdTitle02::before, #recFAQ .acdContetns .acdTitle02::after {
    right: 10px;
  }
}
#recFAQ .acdContetns .acdTitle02::after {
  transform: translateY(-50%) rotate(90deg);
  transition: transform 0.5s;
}
#recFAQ .acdContetns .acdTitle02.open {
  border-radius: 10px 10px 0 0;
  display: flex;
  align-items: baseline;
}
#recFAQ .acdContetns .acdTitle02.open::before {
  opacity: 0;
}
#recFAQ .acdContetns .acdTitle02.open::after {
  transform: translateY(-50%) rotate(180deg);
}
#recFAQ .acdContetns .acdTitle02.open + .acdInner {
  background-color: #f7f4e8;
  border-radius: 0 0 10px 10px;
  padding: 10px 30px 20px;
  max-height: 1000px;
  opacity: 1;
  visibility: visible;
  transition: 0.5s;
  position: relative;
}
@media screen and (max-width: 820px), print {
  #recFAQ .acdContetns .acdTitle02.open + .acdInner {
    font-size: 16px;
    padding: 3px 25px 15px;
  }
}
@media screen and (max-width: 520px) {
  #recFAQ .acdContetns .acdTitle02.open + .acdInner {
    padding: 5px 20px 10px;
  }
}
#recFAQ .acdContetns .acdTitle02.open + .acdInner.flex {
  align-items: baseline;
}
#recFAQ .acdContetns .acdTitle02 .FAQ_left2 {
  width: 35px;
}
@media screen and (max-width: 520px) {
  #recFAQ .acdContetns .acdTitle02 .FAQ_left2 {
    width: 26px;
  }
}
#recFAQ .acdContetns .acdTitle02 .FAQ_right2 {
  width: calc(100% - 35px);
}
@media screen and (max-width: 520px) {
  #recFAQ .acdContetns .acdTitle02 .FAQ_right2 {
    width: calc(100% - 26px);
  }
}
#recFAQ .acdContetns .acdInner {
  padding: 0 30px;
  max-height: 0;
  opacity: 0;
  visibility: hidden;
  transition: 0.5s;
  align-items: baseline;
}
@media screen and (max-width: 820px), print {
  #recFAQ .acdContetns .acdInner {
    font-size: 16px;
    padding: 3px 20px 15px;
  }
}
@media screen and (max-width: 520px) {
  #recFAQ .acdContetns .acdInner {
    padding: 5px 15px 10px;
  }
}
#recFAQ .acdContetns .acdInner span {
  line-height: 1.5;
}
#recFAQ .acdContetns .acdInner a {
  position: relative;
  border-bottom: 1px solid #f49a40;
}
#recFAQ .acdContetns .acdInner a::after {
  position: absolute;
  content: "";
  background-image: url(../images/recruit/orangeArw.png);
  background-position: center;
  background-size: contain;
  background-repeat: no-repeat;
  width: 13px;
  height: 14px;
  top: 50%;
  transform: translate(0%, -50%);
  right: 0;
}
#recFAQ .acdContetns .acdInner .FAQ_left {
  width: 35px;
}
@media screen and (max-width: 520px) {
  #recFAQ .acdContetns .acdInner .FAQ_left {
    width: 26px;
  }
}
#recFAQ .acdContetns .acdInner .FAQ_right {
  width: calc(100% - 35px);
}
#recFAQ .acdContetns .acd-inner {
  /*(開く前の)中身の装飾*/
  max-height: 0;
  opacity: 0;
  transition: 0.5s;
  visibility: hidden;
}
#recFAQ .acdContetns .QA {
  font-size: 28px;
}
#recFAQ .acdContetns .QA.orange_A {
  color: #f49a40;
}
@media screen and (max-width: 820px), print {
  #recFAQ .acdContetns .QA {
    font-size: 24px;
  }
}
@media screen and (max-width: 520px) {
  #recFAQ .acdContetns .QA {
    font-size: 18px;
  }
}
#recFAQ .acdContetns .FAQ_p {
  font-size: 20px;
}
#recFAQ .acdContetns .FAQ_p.orange_A {
  color: #f49a40;
  padding-right: 17px;
}
@media screen and (max-width: 820px), print {
  #recFAQ .acdContetns .FAQ_p {
    font-size: 16px;
  }
}
@media screen and (max-width: 520px) {
  #recFAQ .acdContetns .FAQ_p {
    font-size: 14px;
  }
}

/** recEntry ***********************************************************/
#recEntry {
  overflow-x: clip;
  position: relative;
  z-index: 0;
}
#recEntry::after {
  position: absolute;
  content: "";
  background-image: url(../images/recruit/Clover3@2x.png);
  background-size: contain;
  background-position: center;
  height: 602px;
  width: 602px;
  z-index: -1;
  bottom: -20px;
  right: -200px;
  animation: rotateAnimation 35s linear infinite;
}
@media screen and (max-width: 1024px) {
  #recEntry::after {
    height: 542px;
    width: 542px;
  }
}
@media screen and (max-width: 820px), print {
  #recEntry::after {
    display: none;
  }
}

#privacyContents .wrapper {
  max-width: 900px;
}
#privacyContents dl + dl {
  margin-top: 30px;
}
#privacyContents dl dt {
  color: #90c31f;
  font-weight: 500;
  margin-bottom: 10px;
  font-size: 18px;
}
@media screen and (max-width: 520px) {
  #privacyContents dl dt {
    font-size: 16px;
  }
}
#privacyContents dl dd {
  font-weight: 500;
  line-height: 28px;
}
@media screen and (max-width: 520px) {
  #privacyContents dl dd {
    line-height: 24px;
  }
}
#privacyContents dl dd ul li {
  letter-spacing: 0.03rem;
  text-indent: -1.6em;
  padding-left: 1.6em;
}
@media screen and (max-width: 520px) {
  #privacyContents dl dd ul li {
    letter-spacing: 0;
    text-indent: -1.5em;
    padding-left: 1.5em;
  }
}