@charset "utf-8";
html, body, div, span, object, iframe, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, sup, var, b, i, dl, dt, dd, fieldset, form, label, legend, article, aside, dialog, figure, footer, header, hgroup, menu, nav, section, time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
  box-sizing: border-box;
}
body {
  text-align: center;
  -webkit-text-size-adjust: 100%;
}
article, aside, dialog, figure, footer, header, hgroup, nav, section {
  display: block;
}
nav ul {
  list-style: none;
}
blockquote, q {
  quotes: none;
}
blockquote:before, blockquote:after, q:before, q:after {
  content: '';
  content: none;
}
a {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  vertical-align: baseline;
  background-color: transparent;
}
a, a:hover {
  outline: none;
}
ins {
  background-color: #ff9;
  color: #000;
  text-decoration: none;
}
mark {
  background-color: #ff9;
  color: #000;
  font-style: italic;
  font-weight: bold;
}
del {
  text-decoration: line-through;
}
abbr[title], dfn[title] {
  border-bottom: 1px dotted #000;
  cursor: help;
}
hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #cccccc;
  margin: 1em 0;
  padding: 0;
}
input, select {
  vertical-align: middle;
}
img, img a, img a:hover {
  border: 0;
  margin: 0;
  padding: 0;
}
img {
  max-width: 100%;
  height: auto;
}
.responsive {
  width: 100%;
  height: 0;
  overflow: hidden;
  padding-bottom: 56.25%;
  position: relative;
}
.responsive iframe {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}
p {
  margin: 0 0 .5rem;
  padding: 0;
  line-height: 1.8;
}
#recruit .has-text-align-center {
  text-align: left;
}
#recruit .has-text-align-center.phone {
  text-align: center;
}
.phone strong {
  display: block;
  padding: 2rem 0 0;
  font-size: 1.5rem;
}
section ul, section ol, li {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}
section ul, section ol {
  margin-bottom: 1rem;
}
section li {
  line-height: 1.5rem;
  margin: 0;
  padding: 0;
}
section ul li {
  list-style: disc;
  margin-left: 1.5rem;
  margin-bottom: .5rem;
}
section ol li {
  list-style: decimal;
  margin-left: 1.8rem;
  margin-bottom: .5rem;
}
.alignright, .alignleft {
  float: none;
  margin: 1rem auto;
  display: block;
  max-width: 100%;
  height: auto;
}
html {
  font-size: 16px;
}
body {
  text-align: center;
  font: 1rem "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, "sans-serif";
  margin: 0;
  padding: 0;
}
a {
  text-decoration: none;
  color: #00F;
  outline: none;
}
a[href$=".pdf"] {
  display: block;
  padding-left: 26px;
  line-height: 1.2;
  position: relative;
}
a[href$=".pdf"]::before {
  content: '';
  display: block;
  width: 24px;
  height: 24px;
  background: url(http://ajisaihome.jp/wp-content/uploads/2019/03/PDF_24.png) no-repeat 0 0;
  position: absolute;
  top: -4px;
  left: 0;
  z-index: 1;
}
a:hover {
  text-decoration: underline;
  color: #c00;
}
.clear {
  clear: both;
}
.none {
  display: none;
}
table, th, td {
  text-align: left;
  border-collapse: collapse;
  border-spacing: 0;
  box-sizing: border-box;
}
#recruit table {
  width: 100%;
  border: 1px solid #ddd;
  margin-bottom: 1rem;
}
#recruit table tr {
  display: block;
  border-bottom: 1px solid #ddd;
}
#recruit table tr:last-child {
  border-bottom: 0;
}
#recruit table td {
  display: block;
  padding: 0;
  box-sizing: border-box;
}
#recruit table tr td:first-child {
  padding: .5rem;
  color: #cc6699;
  background-color: rgba(204, 102, 153, .02);
}
#recruit table tr td:last-child {
  padding: .5rem .5rem 1rem;
}
#recruit .faq table, #recruit .faq table tr, #recruit .faq table td {
  border: 0 !important;
}
.faq table tr {
  display: block;
}
.faq table tr:nth-child(even) {
  margin-bottom: 1rem;
}
.faq table tr:last-child {
  margin-bottom: 0;
}
#recruit .faq table tr td {
  width: 100%;
  position: relative;
  padding-left: 1.875rem;
  background-color: transparent !important;
}
#recruit .faq table tr:nth-child(odd) td::before {
  content: 'Q';
  font-size: 1.875rem;
  position: absolute;
  top: -.2rem;
  left: 0;
}
#recruit .faq table tr:nth-child(even) td {
  color: #000;
}
#recruit .faq table tr:nth-child(even) td::before {
  content: 'A';
  font-size: 1.875rem;
  position: absolute;
  top: -.2rem;
  left: 0;
  color: #06c
}
/* 1 ===============================  レイアウト */
#wrapper {
  text-align: left;
  width: 100%;
  margin: 0 auto;
}
.page-id-8996 #wrapper {
  background-color: #fffeee;
}
#header {
  box-sizing: border-box;
  width: 100%;
  padding: 20px 0 80px 20px;
  background: url("../images/bg_page_default_sp.jpg") no-repeat 0 0;
  background-size: cover;
}
.page-id-8996 #header {
  height: 100vh;
  background-image: url("../images/bg_header_sp.jpg");
  background-position: 50% 0;
  background-size: cover;
  position: relative;
}
#content {
  width: 100%;
  margin: 0 auto;
}
.entry {
  width: 100%;
  overflow: hidden;
  margin: 0 auto;
  padding: 3rem 1rem 2rem;
}
.page-id-8996 .entry {
  padding: 0 !important;
}
#footer {
  width: 100%;
  margin: 0 auto;
  padding-top: 3.125rem;
}
#footer.bg_footer {
  background: #fef7fa url("../images/bg_page_footer_smp.svg") no-repeat 50% 0;
  background-size: 100% auto;
}
.contact_btn {
  display: none;
}
.smpFoot_btn {
  background-color: rgba(255, 255, 255, .3);
  display: none;
  width: 100%;
  margin: 0;
  padding: 0;
  position: fixed;
  bottom: 0;
  left: 0;
}
.smpFoot_btn.static {
  bottom: 3rem;
  transition: .2s;
}
.smpFoot_btn ul {
  margin: 0;
  padding: 0;
  display: flex;
  align-items: center;
  height: 50px;
  overflow: hidden;
}
.smpFoot_btn li {
  list-style: none;
  margin: 0;
  padding: 0;
  line-height: 1;
  box-sizing: border-box;
  text-align: center;
}
.smpFoot_btn li:first-child {
  width: 80%;
}
.smpFoot_btn li:nth-child(2) {
  width: 20%;
  color: #cc6699;
  font-size: 2rem;
  display: flex;
  align-items: center;
  justify-content: center;
  padding-top: .1875rem;
}
.smpFoot_btn li img {
  display: block;
  width: auto;
  height: 40px;
  margin: 0 auto;
}
.smpFoot_btn li a {
  color: #fff;
  display: block;
  width: 100%;
  text-align: center;
  padding: .31255rem 0;
}
#footer.static .smpFoot_btn {
  position: static;
}
/* 2 ===============================  ナビゲーション */
.openBtn {
  position: absolute;
  top: 20px;
  right: 20px;
  z-index: 3;
  display: block;
  width: 40px;
  height: 40px;
  cursor: pointer;
  margin: 0;
  background-color: #cc6699;
  border-radius: 5px;
}
.openBtn span {
  display: block;
  position: absolute;
  width: 24px;
  border-bottom: solid 2px #fff;
  -webkit-transition: .2s ease-in-out;
  transition: .2s ease-in-out;
  right: 8px;
}
.openBtn span:nth-child(1) {
  top: 11px;
}
.openBtn span:nth-child(2) {
  top: 19px;
}
.openBtn span:nth-child(3) {
  top: 27px;
}
.closeBtn {
  position: fixed;
  background-color: transparent;
}
.closeBtn span {
  border-color: #fff;
}
.closeBtn span:nth-child(1) {
  top: 19px;
  right: 8px;
  transform: rotate(-45deg);
}
.closeBtn span:nth-child(2), .closeBtn span:nth-child(3) {
  top: 19px;
  transform: rotate(45deg);
}
#header-navigation {
  background-color: rgba(102, 0, 51, .85);
  display: none;
  margin: 0;
  width: 100%;
  height: 100vh;
  overflow-y: scroll;
  position: fixed;
  top: 0;
  right: 0;
  z-index: 1;
}
#menu-recruit {
  box-sizing: border-box;
  width: 100%;
  margin: 0;
  padding: 5rem 1rem 0;
  display: flex;
  flex-wrap: wrap;
}
#menu-recruit li {
  list-style: none;
  width: 50%;
  margin: 0 0 1rem;
  padding: 0 .5rem;
}
#menu-recruit a {
  display: block;
  box-sizing: border-box;
  text-align: center;
  width: 100%;
  padding: 3rem 0;
  background-color: rgba(255, 255, 255, .9);
  color: rgba(102, 0, 51, 1);
  border-radius: 5px;
}
/* 目次 */
#recruit section .page_links ol::before {
  content: "― 目次 ―";
  display: block;
  font-size: 1.25rem;
  margin: 0 0 .5rem;
  color: #cc6699;
}
#recruit section .page_links ol ol::before {
  content: "";
  display: none;
}
#recruit section .page_links ol {
  margin-left: 0;
  padding: 1rem;
  border: 1px solid #cc6699;
  border-radius: 10px;
  background-color: rgba(102, 0, 51, 0.02);
}
#recruit section .page_links ol li {
  margin-bottom: .5rem;
  line-height: 1.2;
  list-style-position: outside;
}
#recruit section .page_links ol li:last-child {
  margin-bottom: 0;
}
#recruit section .page_links ol ol {
  margin-top: .5rem;
  padding: 0;
  border: 0;
  background-color: transparent;
}
#recruit section .page_links ol ol li {
  margin-left: 1.5rem;
}
#recruit section .page_links ol li a {
  color: #000;
}
#recruit .pc section .page_links ol li a:hover {
  text-decoration: none;
  color: #cc6699;
}
#ez-toc-container {
  background: rgba(102, 0, 51, 0.02);
  border-color: #cc6699;
}
div#ez-toc-container p.ez-toc-title {
  font-size: 1.2rem;
  color: #cc6699;
}
/* 3 ===============================  Headding */
h1, h2, h3, h4, h5, h6 {
  font-size: 1rem;
  margin: 0;
  padding: 0;
  line-height: 1.2;
  font-weight: normal;
  box-sizing: border-box;
}
.entryHeader {
  width: 100%;
  height: 80px;
  position: relative;
}
.entryHeader h2 {
  background-color: transparent;
  border: 0;
  margin: 0;
  padding: 0;
  width: 100%;
  position: absolute;
  top: -80px;
  left: 0;
}
.entryHeader h2 img {
  display: block;
  width: auto;
  height: 160px;
  margin: 0 auto;
}
.entry h2 {
  background-color: rgba(204, 102, 153, .1);
  font-size: 1.25rem;
  line-height: 1.25;
  position: relative;
  margin-bottom: 1.5rem;
  padding: .75rem 1rem .5rem;
  color: #cc6699;
  border: 5px dotted #cc6699;
  border-radius: 14px;
}
.entry h3 {
  background-color: transparent;
  border: 0;
  font-size: 1.25rem;
  line-height: 1.25;
  margin-top: 3rem;
  margin-bottom: 1.5rem;
  padding: 0 0 .5rem 1.875rem;
  color: #000;
  position: relative;
  border-bottom: 5px dotted #cc6699;
}
.entry h3::before {
  content: "●";
  font-size: 1.5rem;
  color: #cc6699;
  position: absolute;
  top: -.4rem;
  left: 0;
}
.entry h4 {
  background-color: transparent;
  border: 0;
  color: #000;
  position: relative;
  width: 100%;
  margin-top: 2rem;
  margin-bottom: 1rem;
  padding-bottom: 5px;
  overflow: hidden;
}
.entry h4::before, .entry h4::after {
  content: "";
  position: absolute;
  bottom: 0;
}
.entry h4:before {
  border-bottom: 3px solid #cc6699;
  width: 100%;
}
.entry h4:after {
  border-bottom: 3px solid #fff;
  width: 100%;
}
.entry h2:not(:first-child) {
  margin-top: 5rem;
}
/* 4 ===============================  ヘッダーパーツ */
#header h1 {
  margin: 0 auto;
  padding: 0;
}
#header h1 img {
  display: block;
  margin: 0;
  padding: 0;
  width: 180px;
  height: auto;
}
.pc #header h1 a:hover img {
  opacity: .5;
  transition: .2s;
}
.header_desc {
  width: 100%;
  margin: 0 !important;
  padding: 1rem 0;
  background-color: rgba(255, 255, 255, .75);
  position: absolute;
  bottom: 0;
  left: 0;
}
.header_desc img {
  display: block;
  margin: 0 auto;
  width: 50%;
  max-width: 432px;
  height: auto;
}
/* 5 ===============================  フッターパーツ */
.copyright {
  text-align: center;
  line-height: 1rem;
  margin: 0;
  padding: 1rem 0;
}
/* 6 ===============================  ページナビ等 */
div.pagetop {
  display: none;
  width: 50px;
  margin: 0;
  padding: 0;
  position: fixed;
  bottom: 10px;
  right: 10px;
  z-index: 10;
  cursor: pointer;
}
div.pagetop img {
  width: 100%;
  height: auto;
}
/* 7 ===============================  固定ページ */
.page-id-8996 .wp-block-column {
  margin-bottom: 0;
}
.wp-block-columns img {
  display: block;
  max-width: 100%;
  height: auto;
  margin: 0 auto 2rem;
}
.wp-block-columns .btn img {
  margin: 0 auto;
}
.btn {
  display: block;
  margin: 2rem 0 0;
}
.pc .btn a img {
  transition: .1s;
}
.pc .btn a:hover img {
  opacity: .2;
}
/* 8 ===============================  トップ */
#about, #essentials, #welfare, #voice {
  margin: 0 auto;
  padding: 0;
}
#about .wp-block-group__inner-container, #essentials .wp-block-group__inner-container, #welfare .wp-block-group__inner-container, #voice .wp-block-group__inner-container {
  padding: 15% 8% 10%;
}
#essentials, #voice {
  background: #fef7fa url("../images/top_content_bg_top_smp.svg") no-repeat 50% 0;
  background-size: 100% auto;
}
#essentials .wp-block-group__inner-container, #voice .wp-block-group__inner-container {
  background: url("../images/top_content_bg_bottom_smp.svg") no-repeat 50% 100%;
  background-size: 100% auto;
}
#essentials .wp-block-columns, #voice .wp-block-columns {
  flex-direction: column-reverse;
}
#about .wp-block-column p, #essentials .wp-block-column p, #welfare .wp-block-column p, #voice .wp-block-column p {
  border: 6px dotted #cc6699;
  margin: 0;
  padding: 1.25rem;
  border-radius: 1.5rem;
  background-color: #fff;
}
@media print, screen and (min-width: 768px) {
  #recruit .has-text-align-center {
    text-align: center;
  }
  .phone strong {
    padding-top: 1rem;
    font-size: 2.25rem;
  }
  .phone a {
    pointer-events: none;
    color: #000;
  }
  #recruit table tr {
    display: flex;
  }
  #recruit table tr td:first-child {
    width: 20%;
    padding: 1rem 1.5rem;
    border-right: 1px solid #ddd;
  }
  #recruit table tr td:last-child {
    width: 80%;
    padding: 1rem 1.5rem;
  }
  #recruit .faq table tr:nth-child(odd) td {
    padding: .5rem 0 .5rem 2rem !important;
  }
  #recruit .faq table tr:nth-child(even) td {
    padding: .5rem 0 .5rem 4rem !important;
  }
  #recruit .faq table tr:nth-child(odd) td::before, #recruit .faq table tr:nth-child(even) td::before {
    top: -.1rem;
  }
  #recruit .faq table tr:nth-child(even) td::before {
    left: 2rem;
  }
  /* 1 ===============================  レイアウト */
  #wrapper {
    min-width: 1000px;
  }
  #header {
    height: 390px;
    padding: 0;
    background: url("../images/bg_page_default_pc.jpg") no-repeat 0 0;
    background-size: cover;
    position: relative;
  }
  .page-id-8996 #header {
    background-image: url("../images/bg_header_pc.jpg");
    background-position: 50% 100%;
  }
  .page-id-8996 .tablet #header {
    height: 800px;
  }
  #content {
    width: 1000px;
  }
  .page-id-8996 #content {
    width: 100%;
  }
  .entry {}
  #footer.bg_footer {
    padding-top: 1rem;
    background: #fef7fa url("../images/bg_page_footer_pc.svg") no-repeat 50% 0;
    background-size: 2480px auto;
  }
  .smpFoot_btn {
    display: none !important;
  }
  .contact_btn {
    display: block;
    width: 70px;
    height: 380px;
    position: fixed;
    top: 50%;
    right: 0;
    margin-top: -190px;
    z-index: 1;
  }
  .contact_btn a:hover img {
    opacity: .3;
    transition: .2s;
  }
  /* 2 ===============================  ナビゲーション */
  .openBtn {
    display: none !important;
  }
  #header-navigation {
    background-color: transparent;
    display: block;
    width: 70%;
    height: auto !important;
    overflow-y: visible;
    position: absolute;
    top: 30px;
    right: 30px;
  }
  #menu-recruit {
    background-color: transparent;
    padding: 0;
    align-items: center;
    justify-content: flex-end;
  }
  #menu-recruit li {
    list-style: none;
    width: auto;
    margin: 0;
    padding: 0;
  }
  #menu-recruit a {
    list-style: 1rem;
    padding: 1rem;
    background-color: rgba(255, 255, 255, .75);
    color: #000;
    border-radius: 0;
    transition: all .2s;
  }
  #menu-recruit li:first-child a {
    padding-left: 2rem;
    border-radius: 2rem 0 0 2rem;
  }
  #menu-recruit li:last-child a {
    padding-right: 2rem;
    border-radius: 0 2rem 2rem 0;
  }
  .pc #menu-recruit a:hover {
    text-decoration: none;
    background-color: #cc6699;
    color: #fff;
  }
  /* 3 ===============================  Headding */
  .entryHeader {
    height: 200px;
  }
  .entryHeader h2 {
    top: -200px;
    left: 0;
  }
  .entryHeader h2 img {
    height: 400px;
  }
  .entry h2 {
    font-size: 1.5rem;
    margin-bottom: 2rem;
    text-align: center;
  }
  .entry h3 {
    font-size: 1.5rem;
  }
  .entry h3::before {
    font-size: 2rem;
    left: -.25rem;
  }
  .entry h4 {
    font-size: 1.25rem;
  }
  .entry h4:before {
    border-bottom-width: 5px;
  }
  .entry h4:after {
    border-bottom-width: 5px;
  }
  /* 4 ===============================  ヘッダーパーツ */
  #header h1 {
    width: 280px;
    height: 280px;
    position: absolute;
    top: 30px;
    left: 30px;
  }
  #header h1 img {
    width: 280px;
    height: auto;
  }
  .header_desc {
    padding: 50px 0;
    bottom: 80px;
  }
  /* 7 ===============================  固定ページ */
  .wp-block-columns img {
    margin-bottom: 0;
  }
  /* 8 ===============================  トップ */
  .wp-block-columns img {
    margin-bottom: 0;
  }
  #about .wp-block-group__inner-container, #welfare .wp-block-group__inner-container {
    padding: 100px 0;
  }
  #essentials .wp-block-group__inner-container, #voice .wp-block-group__inner-container {
    padding: 150px 0;
  }
  #essentials, #voice {
    background-image: url("../images/top_content_bg_top_pc.svg");
  }
  #essentials .wp-block-group__inner-container, #voice .wp-block-group__inner-container {
    background-image: url("../images/top_content_bg_bottom_pc.svg");
  }
  #about .wp-block-columns, #essentials .wp-block-columns, #welfare .wp-block-columns, #voice .wp-block-columns {
    width: 90%;
    margin: 0 auto;
    align-items: center;
  }
  #essentials .wp-block-columns, #voice .wp-block-columns {
    flex-direction: inherit;
  }
  #about .wp-block-column:last-child, #welfare .wp-block-column:last-child, #essentials .wp-block-column:first-child, #voice .wp-block-column:first-child {
    flex-basis: 55% !important;
  }
  #about .wp-block-column:first-child, #welfare .wp-block-column:first-child, #essentials .wp-block-column:last-child, #voice .wp-block-column:last-child {
    flex-basis: 40% !important;
  }
  .page-id-8996 .wp-block-column:not(:last-child) {
    margin-right: 5% !important;
  }
  .page-id-8996 .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column:not(:first-child) {
    margin-left: 0 !important;
  }
}
@media print, screen and (min-width: 1366px) {
  #about .wp-block-columns, #essentials .wp-block-columns, #welfare .wp-block-columns, #voice .wp-block-columns {
    width: 100%;
  }
  #about .wp-block-columns {
    padding: 0 15%;
  }
  #essentials .wp-block-columns {
    padding: 0 20% 0 10%;
  }
  #welfare .wp-block-columns {
    padding: 0 10% 0 20%;
  }
  #voice .wp-block-columns {
    padding: 0 20% 0 10%;
  }
}
@media screen and (min-width: 1680px) {
  #header {
    background-position: 0 25%;
  }
}
.fadeinUp {
  opacity: 0;
  transform: translateY(30px);
  transition: 1s;
}
.fadeinUp.is_animation {
  opacity: 1;
  transform: translateY(0px);
}
.fadeinLeft {
  opacity: 0;
  transform: translateX(30px);
  transition: 1s;
}
.fadeinLeft.is_animation {
  opacity: 1;
  transform: translateX(0px);
}
.fadeinRight {
  opacity: 0;
  transform: translateX(-30px);
  transition: 1s;
}
.fadeinRight.is_animation {
  opacity: 1;
  transform: translateX(0px);
}
@media print {
  #wrapper {
    width: 1024px;
  }
  .page-id-8996 #header {
    height: 800px !important;
  }
  #about .wp-block-columns, #essentials .wp-block-columns, #welfare .wp-block-columns, #voice .wp-block-columns {
    width: 100%;
    display: flex !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
  }
  #essentials .wp-block-columns, #voice .wp-block-columns {
    flex-direction: inherit !important;
  }
  #about .wp-block-column:last-child, #welfare .wp-block-column:last-child, #essentials .wp-block-column:first-child, #voice .wp-block-column:first-child {
    flex-basis: 55% !important;
  }
  #about .wp-block-column:first-child, #welfare .wp-block-column:first-child, #essentials .wp-block-column:last-child, #voice .wp-block-column:last-child {
    flex-basis: 40% !important;
  }
  .page-id-8996 .wp-block-column:not(:last-child) {
    margin-right: 5% !important;
  }
  .page-id-8996 .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column:not(:first-child) {
    margin-left: 0 !important;
  }
  .pagetop, .contact_btn, #main-navigation, .sticky, .grecaptcha-badge {
    display: none !important;
  }
  .fadeinUp {
    opacity: 1;
    transform: translateY(0px);
  }
  .fadeinLeft {
    opacity: 1;
    transform: translateX(0px);
  }
  .fadeinRight {
    opacity: 1;
    transform: translateX(0px);
  }
}