@charset "UTF-8";
/*==============================
  Reset
==============================*/
@import url("https://fonts.googleapis.com/css?family=Lato:400,700");
html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 100%;
  font-style: normal;
  vertical-align: baseline;
  background: transparent;
}

body {
  line-height: 1;
}

article, aside, details, figcaption, figure,
footer, header, hgroup, menu, 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;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
}

/* change colours to suit your needs */
ins {
  background-color: #ff9;
  color: #000;
  text-decoration: none;
}

/* change colours to suit your needs */
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;
  cursor: help;
}

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

/* change border colour to suit your needs */
hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #cccccc;
  margin: 1em 0;
  padding: 0;
}

input, select {
  vertical-align: middle;
}

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

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

/*==============================
	Mixin
==============================*/
/*==============================
	Setting
==============================*/
body {
  font-family: "Lato", "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
  font-size: 100%;
  background: #fbfbfb;
  color: #333;
  -webkit-text-size-adjust: 100%;
}

.mincho {
  font-family: "Times New Roman", "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
}

a {
  transition: 0.15s;
  text-decoration: none;
}
a.textlink {
  color: #bc611e;
  text-decoration: underline;
}
a.textlink:hover {
  color: #e0823c;
}

.container {
  margin: auto;
}

@media (max-width: 575px) {
  .container {
    padding: 0 1rem;
    width: 100%;
  }
}
@media (min-width: 576px) {
  .container {
    max-width: 544px;
  }
}
@media (min-width: 768px) {
  .container {
    max-width: 736px;
  }
}
@media (min-width: 992px) {
  .container {
    max-width: 960px;
  }
}
@media (min-width: 1232px) {
  .container {
    max-width: 1200px;
  }
}
/*==============================
	base
==============================*/
header.top-header {
  position: relative;
  height: 100vh;
  min-height: 600px;
}
header.top-header .slider {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  min-height: 600px;
  z-index: 1;
}
header.top-header .slider .slide-item {
  background: url(../images/slider-01.jpg) center center no-repeat;
  background-size: cover;
  height: 100vh;
  min-height: 600px;
}
header.top-header .slider .slide-item.slideimg-02 {
  background: url(../images/back-02.jpg) center center no-repeat;
  background-size: cover;
}
header.top-header .slider .slide-item.slideimg-03 {
  background: url(../images/back-01.jpg) center center no-repeat;
  background-size: cover;
}
header.top-header .slider .slick-dots {
  bottom: 2rem;
  padding: 0 2rem;
  z-index: 10;
  text-align: right;
}
header.top-header .slider .slick-dots li button::before {
  font-size: 14px;
}
header.top-header .top-header-inner {
  position: relative;
  z-index: 5;
  height: 100vh;
  min-height: 600px;
  border: solid 1rem rgba(255, 255, 255, 0.8);
  background-clip: padding-box;
  padding: 3rem 0 2rem;
  pointer-events: none;
}
header.top-header .top-header-inner .container h1 {
  font-size: 1.375rem;
  max-width: 280px;
}
header.top-header .top-header-inner .container h1 a {
  color: #fff;
}
header.top-header .top-header-inner .container .top-header-bar {
  background: rgba(255, 255, 255, 0.85);
  border: solid 4px #f39800;
  border-radius: 12px;
  pointer-events: visible;
}
header.top-header .top-header-inner .header-text {
  position: absolute;
  top: 50%;
  left: 0;
  text-align: center;
  color: #fff;
  font-weight: bold;
  line-height: 1.5;
  font-size: 1.625rem;
  width: 100%;
  text-shadow: 1px 1px 4px #999, -1px 1px 4px #999, 1px -1px 4px #999, -1px -1px 4px #999;
}
header.top-header .top-header-inner .scroll {
  position: absolute;
  color: #fff;
  line-height: 1.5;
  left: 50%;
  bottom: 2rem;
  transform: translateX(-50%);
  font-weight: bold;
}
header.top-header .top-header-inner .scroll::after {
  background: #fff;
  content: "";
  height: 2rem;
  width: 2px;
  position: absolute;
  top: 100%;
  left: calc(50% - 1px);
}

@media (max-width: 991px) {
  header.top-header .top-header-inner {
    padding: 6.5rem 0 2rem;
  }
  header.top-header .top-header-inner .top-header-bar {
    padding: 2rem 1rem;
    max-width: 540px;
    margin: auto;
  }
  header.top-header .top-header-inner .top-header-bar h1 {
    text-align: center;
    margin: auto;
    width: 184px;
  }
  header.top-header .top-header-inner .top-header-bar .global-nav {
    display: none;
  }
  header.top-header .top-header-inner .header-text {
    top: 60%;
  }
}
@media (min-width: 768px) {
  header.top-header .top-header-inner .header-text {
    font-size: 2rem;
  }
}
@media (min-width: 992px) {
  header.top-header .top-header-inner .top-header-bar {
    display: -ms-flex;
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0 1.5rem;
    height: 100px;
  }
  header.top-header .top-header-inner .top-header-bar .global-nav ul {
    display: -ms-flex;
    display: flex;
  }
  header.top-header .top-header-inner .top-header-bar .global-nav ul li + li {
    margin-left: 1.75rem;
  }
  header.top-header .top-header-inner .top-header-bar .global-nav ul li a {
    color: #bc611e;
    font-weight: 700;
    font-size: 1.125rem;
    text-decoration: none;
    border-bottom: solid 2px transparent;
    padding: 0.5rem;
  }
  header.top-header .top-header-inner .top-header-bar .global-nav ul li a:hover {
    border-bottom: solid 2px #bc611e;
    opacity: 0.75;
  }
  header.top-header .top-header-inner .header-text {
    font-size: 2.5rem;
  }
}
header.other-header {
  background: #fff;
  border-bottom: solid 4px #f39800;
  margin-bottom: 2rem;
}
header.other-header .container h1 {
  font-size: 1.375rem;
  max-width: 280px;
}
header.other-header .container h1 a {
  color: #fff;
}

@media (max-width: 991px) {
  header.other-header {
    padding: 1rem 0;
  }
  header.other-header .container h1 {
    max-width: 264px;
  }
  header.other-header .container .global-nav {
    display: none;
  }
}
@media (min-width: 992px) {
  header.other-header {
    line-height: 98px;
  }
  header.other-header .container {
    display: -ms-flex;
    display: flex;
    justify-content: space-between;
    align-items: center;
  }
  header.other-header .container .global-nav ul {
    display: -ms-flex;
    display: flex;
  }
  header.other-header .container .global-nav ul li + li {
    margin-left: 1.75rem;
  }
  header.other-header .container .global-nav ul li a {
    color: #bc611e;
    font-weight: 700;
    font-size: 1.125rem;
    text-decoration: none;
    border-bottom: solid 2px transparent;
    padding: 0.5rem;
  }
  header.other-header .container .global-nav ul li a:hover {
    border-bottom: solid 2px #bc611e;
    opacity: 0.75;
  }
}
.menu-trigger-btn {
  position: fixed;
  top: 1.75rem;
  right: 1.75rem;
  background: #fff;
  border: solid 2px #f39800;
  width: 54px;
  height: 54px;
  padding: 0.75rem 0.625rem;
  cursor: pointer;
  border-radius: 4px;
  z-index: 9990;
  transition: 0.5s ease-in-out;
}
.menu-trigger-btn .menu-trigger {
  display: inline-block;
  transition: all 0.4s;
  box-sizing: border-box;
  position: relative;
  width: 100%;
  height: 100%;
  background: none;
  border: none;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}
.menu-trigger-btn .menu-trigger span {
  display: inline-block;
  transition: all 0.4s;
  box-sizing: border-box;
  position: absolute;
  left: 0;
  width: 100%;
  height: 4px;
  background-color: #f39800;
  border-radius: 4px;
}
.menu-trigger-btn .menu-trigger span:nth-of-type(1) {
  top: 0;
}
.menu-trigger-btn .menu-trigger span:nth-of-type(2) {
  top: 50%;
  transform: translateY(-50%);
}
.menu-trigger-btn .menu-trigger span:nth-of-type(3) {
  bottom: 0;
}
.menu-trigger-btn.active {
  transform: translateX(-264px);
}
.menu-trigger-btn.active .menu-trigger span:nth-of-type(1) {
  transform: translateY(11px) rotate(-45deg);
}
.menu-trigger-btn.active .menu-trigger span:nth-of-type(2) {
  opacity: 0;
}
.menu-trigger-btn.active .menu-trigger span:nth-of-type(3) {
  transform: translateY(-11px) rotate(45deg);
}

body:not(.home) .menu-trigger-btn {
  top: 0.75rem;
  right: 0.75rem;
}
body:not(.home) .menu-trigger-btn.active {
  transform: translateX(-280px);
}

.ph-menu {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 9000;
  pointer-events: none;
}
.ph-menu .ph-menu-area {
  position: absolute;
  top: 0;
  right: 0;
  width: 280px;
  height: 100%;
  background: #f39800;
  z-index: 9500;
  overflow-y: auto;
  transform: translateX(100%);
  transition: 0.5s ease-in-out;
  pointer-events: visible;
}
.ph-menu .ph-menu-area .inner {
  padding: 2.5rem 1rem 2rem;
  line-height: 1.5;
}
.ph-menu .ph-menu-area .inner ._logo {
  color: #fff;
  font-size: 1.25rem;
  margin-bottom: 2.5rem;
  font-weight: bold;
  text-align: center;
}
.ph-menu .ph-menu-area .inner ._logo span {
  display: block;
  font-size: 0.875rem;
  font-weight: normal;
}
.ph-menu .ph-menu-area .inner .ph-nav ul {
  border-top: dashed 1px #ddd;
}
.ph-menu .ph-menu-area .inner .ph-nav ul li a {
  color: #fff;
  display: block;
  border-bottom: dashed 1px #ddd;
  padding: 1rem;
  position: relative;
}
.ph-menu .ph-menu-area .inner .ph-nav ul li a::after {
  content: "\f054";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  position: absolute;
  top: 50%;
  right: 1rem;
  transform: translateY(-50%);
  transition: 0.15s;
}
.ph-menu .ph-menu-area .inner .ph-nav ul li a:hover {
  background: rgba(243, 152, 0, 0.2);
}
.ph-menu .ph-menu-area .inner .ph-nav ul li a:hover::after {
  transform: translate(4px, -50%);
}
.ph-menu .ph-menu-area .inner .ph-manu-ttl {
  color: #fff;
  line-height: 1.5;
  margin: 1.75rem 0 0.75rem;
  position: relative;
  font-weight: bold;
}
.ph-menu .ph-menu-area .inner .ph-manu-ttl::after {
  content: "";
  background: #fff;
  width: calc(100% - 68px);
  height: 1px;
  position: absolute;
  top: 50%;
  right: 0;
}
.ph-menu .ph-menu-area .inner .faci-nav ul li + li {
  margin-top: 0.5rem;
}
.ph-menu .ph-menu-area .inner .faci-nav ul li a {
  display: block;
  border-radius: 4px;
  background: #fff;
  line-height: 1.5;
  padding: 0.625rem 0.75rem;
  font-size: 0.9125rem;
  color: #f39800;
  position: relative;
}
.ph-menu .ph-menu-area .inner .faci-nav ul li a::after {
  content: "\f054";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  position: absolute;
  top: 50%;
  right: 1rem;
  transform: translateY(-50%);
  transition: 0.15s;
}
.ph-menu .ph-menu-area .inner .faci-nav ul li a:hover {
  background: #ddd;
}
.ph-menu .ph-menu-area .inner .faci-nav ul li a:hover::after {
  transform: translate(4px, -50%);
}
.ph-menu .ph-menu-area .inner .ph-last-nav {
  margin-top: 2rem;
}
.ph-menu .ph-menu-area .inner .ph-last-nav ul li a {
  color: #fff;
  font-size: 0.9125rem;
  line-height: 1.6;
}
.ph-menu .overlay {
  background: rgba(243, 152, 0, 0.3);
  position: absolute;
  top: 100;
  left: 0;
  height: 100%;
  width: 100%;
  opacity: 0;
  transition: 0.25s;
}
.ph-menu.is-open .ph-menu-area {
  transform: translateX(0);
}
.ph-menu.is-open .overlay {
  opacity: 1;
  pointer-events: visible;
}

@media (min-width: 992px) {
  .menu-trigger-btn,
  .ph-menu {
    display: none;
  }
}
footer.top-footer {
  border-top: solid 8px #f39800;
}
footer.top-footer .top-footer-main {
  background: #eee;
  padding: 4.75rem 0;
}
footer.top-footer .top-footer-main .container .footer-nav nav {
  line-height: 1.6;
}
footer.top-footer .top-footer-main .container .footer-nav nav p {
  border-bottom: solid 1px #666;
  font-size: 1.25rem;
  font-weight: bold;
}
footer.top-footer .top-footer-main .container .footer-nav nav ul li a {
  color: #262626;
}
footer.top-footer .top-footer-main .container .footer-logo {
  line-height: 1.5;
  text-align: center;
}
footer.top-footer .top-footer-main .container .footer-logo img {
  margin: 0 auto 1rem;
  width: 160px;
}
footer.top-footer .top-footer-main .container .footer-logo span {
  display: block;
  color: #727171;
  font-weight: 700;
}
footer.top-footer .copyright {
  font-size: 0.875rem;
  text-align: center;
  padding: 2rem 1rem;
}

.page-top {
  position: fixed;
  bottom: 1.25rem;
  right: 1.25rem;
  font-size: 0.875rem;
  z-index: 99;
}
.page-top a {
  background: #f39800;
  text-decoration: none;
  color: #fff;
  width: 60px;
  height: 60px;
  text-align: center;
  display: block;
  border-radius: 50%;
  line-height: 1.5;
  opacity: 0.9;
  transition: all 0.3s ease;
  padding: 0.5rem 0;
}
.page-top a::before {
  content: "\f062";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  display: block;
}
.page-top a:hover {
  text-decoration: none;
  opacity: 0.5;
}

@media (max-width: 991px) {
  footer.top-footer .top-footer-main .container .footer-logo {
    text-align: center;
    padding: 3rem 0 0;
  }
}
@media (max-width: 575px) {
  footer.top-footer .top-footer-main .container .footer-nav nav + nav {
    margin-top: 2.5rem;
  }
  footer.top-footer .top-footer-main .container .footer-nav nav p {
    padding: 0.5rem;
  }
  footer.top-footer .top-footer-main .container .footer-nav nav ul li a {
    border-bottom: dashed 1px #262626;
    display: block;
    padding: 1rem 0.5rem;
    position: relative;
  }
  footer.top-footer .top-footer-main .container .footer-nav nav ul li a::after {
    content: "\f054";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    position: absolute;
    top: 50%;
    right: 1rem;
    transform: translateY(-50%);
    transition: 0.15s;
  }
  footer.top-footer .top-footer-main .container .footer-nav nav ul li a:hover {
    background: rgba(243, 152, 0, 0.2);
  }
  footer.top-footer .top-footer-main .container .footer-nav nav ul li a:hover::after {
    transform: translate(4px, -50%);
  }
}
@media (min-width: 576px) {
  footer.top-footer .top-footer-main .container .footer-nav {
    display: -ms-flex;
    display: flex;
    justify-content: space-between;
  }
  footer.top-footer .top-footer-main .container .footer-nav nav {
    width: 47%;
  }
  footer.top-footer .top-footer-main .container .footer-nav nav p {
    margin-bottom: 0.25rem;
    padding: 0 0.5rem 0.5rem;
  }
  footer.top-footer .top-footer-main .container .footer-nav nav ul li {
    padding: 0.25rem 0.5rem;
  }
  footer.top-footer .top-footer-main .container .footer-nav nav ul li a {
    color: #262626;
    font-size: 0.9125rem;
  }
  footer.top-footer .top-footer-main .container .footer-nav nav ul li a:hover {
    opacity: 0.75;
    text-decoration: underline;
  }
}
@media (min-width: 992px) {
  footer.top-footer .top-footer-main .container {
    display: -ms-flex;
    display: flex;
    justify-content: space-between;
    flex-direction: row-reverse;
    align-items: center;
  }
  footer.top-footer .top-footer-main .container .footer-nav {
    width: 600px;
  }
  footer.top-footer .top-footer-main .container .footer-logo img {
    width: 200px;
  }
}
.bread {
  margin-bottom: 2rem;
}
.bread ol {
  list-style: none;
}
.bread ol li {
  display: inline;
  font-size: 0.875rem;
  margin-right: 0.375rem;
}
.bread ol li a {
  color: #bc611e;
  text-decoration: underline;
}
.bread ol li a:hover {
  color: #e0823c;
}
.bread ol li + li::before {
  content: "/";
  margin-right: 0.25rem;
}
.bread ol li:first-child a::before {
  content: "\f015";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
}

input,
button,
select,
textarea {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background: transparent;
  border: none;
  border-radius: 0;
  font: inherit;
  outline: none;
}

textarea {
  resize: vertical;
}

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

input[type=submit],
input[type=button],
label,
button,
select {
  cursor: pointer;
}

select::-ms-expand {
  display: none;
}

input[type=text],
input[type=email],
input[type=tel] {
  border: solid 1px #ccc;
  border-radius: 4px;
  line-height: 1.6;
  padding: 0.5rem;
}
@media (max-width: 767px) {
  input[type=text],
  input[type=email],
  input[type=tel] {
    width: 100%;
  }
}

input[type=number] {
  border: solid 1px #ccc;
  border-radius: 4px;
  line-height: 1.6;
  padding: 0.5rem;
}

select {
  border: solid 1px #ccc;
  border-radius: 4px;
  line-height: 1.6;
  padding: 0.5rem;
}

textarea {
  border: solid 1px #ccc;
  border-radius: 4px;
  line-height: 1.6;
  padding: 0.5rem;
  width: 100%;
  resize: vertical;
}

input[type=checkbox] + span {
  border: solid 1px #ccc;
  border-radius: 4px;
  line-height: 1.6;
  padding: 0.5rem 0.5rem 0.5rem 2.25rem;
  display: inline-block;
  position: relative;
  transition: 0.15s;
}
input[type=checkbox] + span::before {
  content: "\f14a";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  position: absolute;
  font-size: 1.25rem;
  color: #ccc;
  top: 50%;
  left: 0.5rem;
  transform: translateY(-50%);
}
input[type=checkbox] + span:hover {
  background: rgba(188, 97, 30, 0.1);
}

input[type=checkbox]:checked + span {
  border: solid 1px #bc611e;
}
input[type=checkbox]:checked + span::before {
  color: #bc611e;
}

input[type=submit] {
  background: #FFFF14;
  border-radius: 22px;
  border: solid 1px #999;
  color: #262626;
  display: block;
  font-weight: bold;
  height: 44px;
  line-height: 44px;
  margin: auto;
  padding: 0 0.75rem;
  text-align: center;
  width: 264px;
  position: relative;
  transition: 0.15s;
}
input[type=submit]:hover {
  background: rgba(255, 255, 20, 0.6);
}
input[type=submit]:disabled {
  background: #eee;
}

/*==============================
	home
==============================*/
.home-h2 {
  color: #f39800;
  font-size: 1.75rem;
  margin-bottom: 1rem;
  text-align: center;
}
@media (min-width: 768px) {
  .home-h2 {
    font-size: 2.25rem;
  }
}

.home-intro {
  text-align: center;
  line-height: 1.8;
  margin-bottom: 2.75rem;
}

.home-facility-area {
  padding: 4.75rem 0;
}

.facility-list .facility-box figure a {
  display: block;
  box-shadow: 0 0 10px #ccc;
  border-radius: 4px;
  position: relative;
}
.facility-list .facility-box figure a img {
  border-radius: 4px;
}
.facility-list .facility-box figure a .hover-effect {
  position: absolute;
  content: "";
  background: rgba(243, 152, 0, 0.6);
  border-radius: 4px;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  transition: 0.15s ease-in-out;
}
.facility-list .facility-box figure a .hover-effect span {
  color: #fff;
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.facility-list .facility-box figure a:hover .hover-effect {
  opacity: 1;
}
.facility-list .facility-box h3 {
  font-size: 1.25rem;
  line-height: 1.5;
  margin: 1.25rem 0;
  text-align: center;
}
.facility-list .facility-box .vacant {
  width: 176px;
  margin: 1.25rem auto;
}
.facility-list .facility-box .vacant dt {
  background: #ddd;
  display: table-cell;
  border-radius: 4px 0 0 4px;
  width: 88px;
  text-align: center;
  padding: 0.5rem 0.75rem;
}
.facility-list .facility-box .vacant dd {
  border: solid 2px #ddd;
  border-radius: 0 4px 4px 0;
  border-left: none;
  display: table-cell;
  width: 88px;
  padding: 0.5rem 0.75rem;
  text-align: right;
}
.facility-list .facility-box .text {
  line-height: 1.8;
  text-align: justify;
  margin-bottom: 1.25rem;
}
.facility-list .facility-box .btn a {
  background: #FFFBB3;
  border-radius: 22px;
  border: solid 1px #999;
  color: #262626;
  display: block;
  font-weight: bold;
  height: 44px;
  line-height: 44px;
  margin: auto;
  padding: 0 0.75rem;
  text-align: center;
  width: 264px;
  position: relative;
}
.facility-list .facility-box .btn a::after {
  content: "\f061";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  position: absolute;
  top: 50%;
  right: 1.25rem;
  transform: translateY(-50%);
  transition: 0.15s;
}
.facility-list .facility-box .btn a:hover::after {
  transform: translate(4px, -50%);
}
.facility-list .facility-box .btn a:hover {
  background: rgba(255, 255, 20, 0.6);
}

.home-message-area {
  background: url(../images/back-02.jpg) center center no-repeat;
  background-size: cover;
  position: relative;
  padding: 8rem 0;
}
.home-message-area::before {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  content: "";
  background: rgba(243, 152, 0, 0.8);
}
.home-message-area .container {
  position: relative;
  z-index: 5;
}
.home-message-area .container h2 {
  color: #fff;
  line-height: 1.5;
  text-align: center;
  font-size: 1.25rem;
}

.home-recruit-area {
  padding: 4.75rem 0;
}
.home-recruit-area .container .home-recruit-box {
  margin-bottom: 2.75rem;
}
.home-recruit-area .container .home-recruit-box figure img {
  box-shadow: 0 0 10px #ccc;
  border-radius: 4px;
}
.home-recruit-area .container .home-recruit-box .explain h3 {
  border-bottom: solid 1px #f39800;
  font-size: 1.25rem;
  line-height: 1.5;
}
.home-recruit-area .container .home-recruit-box .explain p {
  line-height: 1.8;
}
.home-recruit-area .container .btn a {
  background: #FFFBB3;
  border-radius: 22px;
  border: solid 1px #999;
  color: #262626;
  display: block;
  font-weight: bold;
  height: 44px;
  line-height: 44px;
  margin: auto;
  padding: 0 0.75rem;
  text-align: center;
  width: 264px;
  position: relative;
}
.home-recruit-area .container .btn a::after {
  content: "\f061";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  position: absolute;
  top: 50%;
  right: 1.25rem;
  transform: translateY(-50%);
  transition: 0.15s;
}
.home-recruit-area .container .btn a:hover::after {
  transform: translate(4px, -50%);
}
.home-recruit-area .container .btn a:hover {
  background: rgba(255, 255, 20, 0.6);
}

@media (max-width: 767px) {
  .home-facility-area .container {
    max-width: 100%;
    padding: 0;
  }
  .facility-list .facility-box {
    padding: 0 1rem;
  }
  .facility-list .facility-box .text {
    font-size: 0.9125rem;
  }
  .facility-list ._empty {
    display: none;
  }
  .facility-list .slick-dots {
    bottom: -40px;
  }
  .facility-list .slick-dots li button::before {
    font-size: 12px;
  }
  .home-recruit-area .container .home-recruit-box figure {
    margin-bottom: 1.5rem;
  }
  .home-recruit-area .container .home-recruit-box .explain h3 {
    padding: 0 0.5rem 1rem;
  }
  .home-recruit-area .container .home-recruit-box .explain p {
    font-size: 0.9125rem;
    padding: 1rem 0.5rem 0;
  }
}
@media (max-width: 575px) {
  .facility-list .facility-box {
    padding: 0 0.625rem;
  }
}
@media (min-width: 768px) {
  .facility-list {
    display: -ms-flex;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  .facility-list .facility-box {
    width: 48%;
  }
  .facility-list .facility-box:nth-child(n+3) {
    margin-top: 3rem;
  }
  .home-message-area .container h2 {
    font-size: 1.5rem;
  }
  .home-message-area .container h2 .sp-only {
    display: none;
  }
  .home-recruit-area .container .home-recruit-box {
    display: -ms-flex;
    display: flex;
    align-items: center;
  }
  .home-recruit-area .container .home-recruit-box figure {
    width: 40%;
  }
  .home-recruit-area .container .home-recruit-box .explain {
    width: 60%;
  }
  .home-recruit-area .container .home-recruit-box .explain h3 {
    margin-bottom: 1.5rem;
    padding: 0 1rem 1rem 2rem;
  }
  .home-recruit-area .container .home-recruit-box .explain p {
    padding: 0 1rem 1rem 3rem;
  }
}
@media (min-width: 992px) {
  .facility-list .facility-box {
    width: 30.5%;
  }
  .facility-list .facility-box:nth-child(n+3) {
    margin-top: 0;
  }
  .facility-list .facility-box:nth-child(n+4) {
    margin-top: 3.5rem;
  }
  .home-message-area .container h2 {
    font-size: 2rem;
  }
  .home-recruit-area .container .home-recruit-box .explain h3 {
    font-size: 1.5rem;
  }
}
/*==============================
	page
==============================*/
.page-header {
  align-items: center;
  background-size: cover;
  background: url(../images/page-headimg-01.jpg) center center no-repeat;
  border-radius: 12px;
  display: -ms-flex;
  display: flex;
  height: 160px;
  justify-content: center;
  margin-bottom: 1rem;
  position: relative;
}
.page-header::before {
  background: rgba(255, 255, 255, 0.65);
  content: "";
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
}
.page-header h2 {
  border-bottom: solid 1px #f39800;
  color: #f39800;
  font-size: 1.75rem;
  max-width: 320px;
  padding-bottom: 0.75rem;
  position: relative;
  text-align: center;
  width: 100%;
  z-index: 5;
}
@media (min-width: 768px) {
  .page-header {
    height: 240px;
  }
  .page-header h2 {
    font-size: 2.25rem;
  }
}

.page-h3 {
  border-bottom: solid 1px #f39800;
  color: #f39800;
  font-size: 1.5rem;
  max-width: 320px;
  margin: 0 auto 2.75rem;
  padding-bottom: 0.75rem;
  text-align: center;
  width: 100%;
}
@media (min-width: 768px) {
  .page-h3 {
    font-size: 1.75rem;
  }
}

.about-idea-area {
  padding: 4.75rem 0;
}
.about-idea-area .container .idea-text {
  text-align: center;
  font-size: 1.375rem;
  font-weight: bold;
  line-height: 1.5;
  padding: 3.5rem 0;
  margin-bottom: 2.5rem;
  position: relative;
}
.about-idea-area .container .idea-text::after {
  content: "";
  display: block;
  width: 200px;
  height: 200px;
  background: #eee;
  border-radius: 50%;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: -1;
}

.about-message-area {
  background-size: cover;
  background: url(../images/back-01.jpg) center center no-repeat;
  padding: 4.75rem 0;
  position: relative;
}
.about-message-area::before {
  background: rgba(255, 255, 255, 0.85);
  content: "";
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
}
.about-message-area .container {
  position: relative;
  z-index: 5;
}
.about-message-area .container .message-img {
  margin: 3rem auto 0;
  max-width: 560px;
  width: 100%;
}
.about-message-area .container .message-text {
  max-width: 800px;
  margin: auto;
}
.about-message-area .container .message-text p {
  line-height: 1.8;
  text-align: justify;
}
.about-message-area .container .message-text p + p {
  margin-top: 1.75rem;
}
.about-message-area .container .message-text .boss {
  text-align: right;
  font-weight: bold;
}
@media (min-width: 992px) {
  .about-message-area {
    background-attachment: fixed;
  }
}

.about-outline-area {
  padding: 4.75rem 0;
}
.about-outline-area .container .outline-table {
  line-height: 1.6;
  margin-bottom: 5rem;
  width: 100%;
}
.about-outline-area .container .outline-table tr td.column-1 {
  font-weight: bold;
}

@media (max-width: 575px) {
  .about-outline-area .container .outline-table {
    border-bottom: solid 1px #ddd;
  }
  .about-outline-area .container .outline-table tr td {
    display: block;
    width: 100%;
  }
  .about-outline-area .container .outline-table tr td.column-1 {
    background: #eee;
    border-radius: 2px;
    padding: 0.5rem 0.5rem;
  }
  .about-outline-area .container .outline-table tr td.column-2 {
    padding: 0.75rem 0.5rem 1.5rem;
  }
}
@media (min-width: 576px) {
  .about-outline-area .container .outline-table {
    border-top: solid 1px #ccc;
    margin: 0 auto 5rem;
    max-width: 800px;
  }
  .about-outline-area .container .outline-table tr td {
    border-bottom: solid 1px #ccc;
    padding: 1rem 0.5rem;
  }
  .about-outline-area .container .outline-table tr td.column-1 {
    width: 25%;
  }
}
@media (min-width: 768px) {
  .about-idea-area .container .idea-text {
    font-size: 1.75rem;
    padding: 6rem 0;
  }
  .about-idea-area .container .idea-text::after {
    width: 280px;
    height: 280px;
  }
  .about-idea-area .container .idea-img img {
    margin: auto;
  }
  .about-outline-area .container .outline-table tr th {
    padding: 1rem;
    width: 30%;
  }
  .about-outline-area .container .outline-table tr td {
    border-bottom: solid 1px #ccc;
    padding: 1rem;
  }
}
@media (min-width: 992px) {
  .about-outline-area .container .outline-table tr th {
    padding: 1.5rem;
  }
  .about-outline-area .container .outline-table tr td {
    border-bottom: solid 1px #ccc;
    padding: 1rem;
  }
}
.recruit-intro-area {
  padding: 4.75rem 0;
}
.recruit-intro-area .container h3 {
  font-size: 1.375rem;
  line-height: 1.5;
  margin-bottom: 1.75rem;
}
.recruit-intro-area .container .text {
  line-height: 1.8;
  margin-bottom: 2rem;
}
.recruit-intro-area .container .text p {
  text-align: justify;
}
.recruit-intro-area .container .text p + p {
  margin-top: 1rem;
}
.recruit-intro-area .container .btn a {
  background: #FFFBB3;
  border-radius: 22px;
  border: solid 1px #999;
  color: #262626;
  display: block;
  font-weight: bold;
  height: 44px;
  line-height: 44px;
  margin: auto;
  padding: 0 0.75rem;
  text-align: center;
  width: 264px;
  position: relative;
}
.recruit-intro-area .container .btn a::after {
  content: "\f061";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  position: absolute;
  top: 50%;
  right: 1.25rem;
  transform: translateY(-50%);
  transition: 0.15s;
}
.recruit-intro-area .container .btn a:hover::after {
  transform: translate(4px, -50%);
}
.recruit-intro-area .container .btn a:hover {
  background: rgba(255, 255, 20, 0.6);
}
.recruit-intro-area .container .btn a::after {
  content: "\f063";
}

.recruit-feature-area {
  box-shadow: 10px 0 16px #ccc;
}
.recruit-feature-area .recruit-feature-sec {
  padding: 4.75rem 0;
}
.recruit-feature-area .recruit-feature-sec .container .explain h3 {
  font-size: 1.375rem;
  line-height: 1.5;
  margin-bottom: 1.5rem;
}
.recruit-feature-area .recruit-feature-sec .container .explain p {
  line-height: 1.8;
  text-align: justify;
}
.recruit-feature-area .recruit-feature-sec .container .explain dl {
  line-height: 1.6;
  margin-top: 1rem;
}
.recruit-feature-area .recruit-feature-sec .container .explain dl dt {
  background: #eee;
  border-radius: 4px;
  display: inline-block;
  padding: 0 1rem;
  margin-bottom: 0.5rem;
}
.recruit-feature-area .recruit-feature-sec .container .explain dl dd ul {
  margin-left: 1.25rem;
}
.recruit-feature-area .recruit-feature-sec .container figure img {
  border-radius: 6px;
  box-shadow: 0 0 10px #ccc;
}
.recruit-feature-area .recruit-feature-sec:nth-child(odd) {
  background-size: cover;
  background: url(../images/back-01.jpg) center center no-repeat;
  position: relative;
}
.recruit-feature-area .recruit-feature-sec:nth-child(odd)::before {
  background: rgba(255, 255, 255, 0.85);
  content: "";
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
}
.recruit-feature-area .recruit-feature-sec:nth-child(odd) .container {
  position: relative;
  z-index: 5;
}

.recruit-info-area {
  padding: 4.75rem 0;
}
.recruit-info-area .container .recruiting-list {
  border-top: solid 1px #ccc;
  list-style-type: none;
}
.recruit-info-area .container .recruiting-list li a {
  display: block;
  border-bottom: solid 1px #ccc;
  line-height: 1.5;
  color: #262626;
  padding: 0.875rem 0.75rem;
  position: relative;
}
.recruit-info-area .container .recruiting-list li a::after {
  content: "\f061";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  position: absolute;
  top: 50%;
  right: 1rem;
  transform: translateY(-50%);
  transition: 0.15s;
}
.recruit-info-area .container .recruiting-list li a:hover {
  background: rgba(243, 152, 0, 0.2);
}
.recruit-info-area .container .recruiting-list li a:hover::after {
  transform: translate(4px, -50%);
}
.recruit-info-area .container .no-recruit {
  line-height: 1.5;
  text-align: center;
  color: #9c9c9c;
}

@media (max-width: 767px) {
  .recruit-feature-area .recruit-feature-sec .container .explain {
    margin-bottom: 1.5rem;
  }
}
@media (min-width: 768px) {
  .recruit-intro-area .container {
    max-width: 736px;
  }
  .recruit-intro-area .container h3 {
    font-size: 1.75rem;
    text-align: center;
  }
  .recruit-feature-area .recruit-feature-sec .container {
    display: -ms-flex;
    display: flex;
    justify-content: space-between;
  }
  .recruit-feature-area .recruit-feature-sec .container .explain {
    width: 60%;
  }
  .recruit-feature-area .recruit-feature-sec .container .explain h3 {
    font-size: 1.5rem;
  }
  .recruit-feature-area .recruit-feature-sec .container figure {
    width: 36%;
  }
  .recruit-feature-area .recruit-feature-sec:nth-child(even) .container {
    flex-direction: row-reverse;
  }
}
@media (min-width: 992px) {
  .recruit-intro-area .container h3 {
    font-size: 2rem;
  }
  .recruit-feature-area .recruit-feature-sec .container {
    align-items: center;
  }
  .recruit-feature-area .recruit-feature-sec:nth-child(odd) {
    background-attachment: fixed;
    background-size: cover;
  }
}
.contact-area {
  padding: 4.75rem 0;
}
.contact-area .container .catch {
  color: #f39800;
  font-size: 1.125rem;
  font-weight: bold;
  line-height: 1.8;
  margin-bottom: 3.5rem;
  text-align: center;
}
.contact-area .container .notice {
  background: #eee;
  border-radius: 4px;
  margin-bottom: 3rem;
  padding: 0.875rem 0.875rem 0.875rem 2.5rem;
}
.contact-area .container .notice li {
  line-height: 1.6;
}
.contact-area .container .notice li + li {
  margin-top: 0.375rem;
}
.contact-area .container .from-wrap table {
  width: 100%;
  line-height: 1.6;
}
.contact-area .container .from-wrap table tr th {
  text-align: left;
  vertical-align: middle;
}
.contact-area .container .from-wrap table tr th .f-must {
  background: #f39800;
  border-radius: 2px;
  color: #fff;
  font-size: 0.75rem;
  margin-left: 0.5rem;
  padding: 0.125rem 0.375rem;
}
.contact-area .container .from-wrap .last-notice {
  background: #eee;
  border-radius: 4px;
  margin: 1.5rem auto;
  padding: 0.875rem 0.875rem 0.875rem 2.5rem;
  max-width: 600px;
}
.contact-area .container .from-wrap .last-notice li {
  line-height: 1.6;
}
.contact-area .container .from-wrap .last-notice li + li {
  margin-top: 0.375rem;
}
.contact-area .container .btn a {
  background: #FFFBB3;
  border-radius: 22px;
  border: solid 1px #999;
  color: #262626;
  display: block;
  font-weight: bold;
  height: 44px;
  line-height: 44px;
  margin: auto;
  padding: 0 0.75rem;
  text-align: center;
  width: 264px;
  position: relative;
}
.contact-area .container .btn a::after {
  content: "\f061";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  position: absolute;
  top: 50%;
  right: 1.25rem;
  transform: translateY(-50%);
  transition: 0.15s;
}
.contact-area .container .btn a:hover::after {
  transform: translate(4px, -50%);
}
.contact-area .container .btn a:hover {
  background: rgba(255, 255, 20, 0.6);
}

.wpcf7-form-control-wrap.menu-subject {
  position: relative;
}
.wpcf7-form-control-wrap.menu-subject::after {
  content: "\f0d7";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  position: absolute;
  top: 50%;
  right: 0.5rem;
  transform: translateY(-50%);
  pointer-events: none;
}

.grecaptcha-badge {
  visibility: hidden;
}

.reC {
  border: solid 1px #ccc;
  padding: 1rem 1rem 1rem 2.75rem;
  font-size: 0.875rem;
  position: relative;
}
.reC svg {
  width: 20px;
  position: absolute;
  top: 50%;
  left: 1rem;
  transform: translateY(-50%);
}

@media (max-width: 767px) {
  .contact-area .container .notice li {
    font-size: 0.875rem;
  }
  .contact-area .container .from-wrap table tr th {
    display: block;
    width: 100%;
    border-bottom: dashed 1px #ccc;
    padding: 0 0 0.5rem;
  }
  .contact-area .container .from-wrap table tr td {
    display: block;
    width: 100%;
    padding: 0.5rem 0 2rem;
  }
}
@media (min-width: 768px) {
  .contact-area .container .catch .sp-only {
    display: none;
  }
  .contact-area .container .from-wrap table {
    border-top: dashed 1px #ccc;
  }
  .contact-area .container .from-wrap table tr th {
    border-bottom: dashed 1px #ccc;
    padding: 1rem;
  }
  .contact-area .container .from-wrap table tr td {
    border-bottom: dashed 1px #ccc;
    padding: 1rem;
  }
}
@media (min-width: 992px) {
  .contact-area .container {
    max-width: 960px;
  }
}
.poricy-area {
  padding: 4.75rem 0;
}
.poricy-area .container ._intro {
  line-height: 1.8;
  margin-bottom: 3rem;
  text-align: justify;
}
.poricy-area .container dl dt {
  border-bottom: solid 1px #ccc;
  color: #f39800;
  font-size: 1.125rem;
  font-weight: bold;
  margin-bottom: 1rem;
  padding: 0.375rem 0.5rem;
}
.poricy-area .container dl dd {
  line-height: 1.8;
  margin-bottom: 2.5rem;
  text-align: justify;
  padding: 0 0.5rem;
}
.poricy-area .container dl dd ul {
  margin: 1rem 0 0 1.25rem;
}
.poricy-area .container dl dd ul li + li {
  margin-top: 0.5rem;
}
.poricy-area .container dl dd ._company {
  background: #eee;
  margin-top: 1.5rem;
  padding: 0.875rem;
}
.poricy-area .container dl dd ._company-name {
  font-weight: bold;
  margin-bottom: 0.5rem;
}
@media (min-width: 576px) {
  .poricy-area .container dl dd ._company address br {
    display: none;
  }
}

@media (max-width: 767px) {
  .poricy-area .container ._intro {
    font-size: 0.875rem;
  }
  .poricy-area .container dl dd {
    font-size: 0.875rem;
  }
}
@media (min-width: 992px) {
  .poricy-area .container {
    max-width: 960px;
  }
}
/*==============================
  archive facility
==============================*/
.archive-facility-box {
  padding: 4.75rem 0;
}
.archive-facility-box:nth-child(2n) {
  background: #f4f4f4;
}
.archive-facility-box .facility-box-inener figure a {
  display: block;
}
.archive-facility-box .facility-box-inener figure a img {
  border-radius: 8px;
  box-shadow: 0 0 10px #ccc;
}
.archive-facility-box .facility-box-inener .explain h3 {
  border-bottom: solid 1px #f39800;
  font-size: 1.375rem;
  line-height: 1.5;
  margin-bottom: 1.75rem;
}
.archive-facility-box .facility-box-inener .explain .text {
  line-height: 1.8;
  margin-bottom: 2rem;
  text-align: justify;
}
.archive-facility-box .facility-box-inener .explain .btn a {
  background: #FFFBB3;
  border-radius: 22px;
  border: solid 1px #999;
  color: #262626;
  display: block;
  font-weight: bold;
  height: 44px;
  line-height: 44px;
  margin: auto;
  padding: 0 0.75rem;
  text-align: center;
  width: 264px;
  position: relative;
}
.archive-facility-box .facility-box-inener .explain .btn a::after {
  content: "\f061";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  position: absolute;
  top: 50%;
  right: 1.25rem;
  transform: translateY(-50%);
  transition: 0.15s;
}
.archive-facility-box .facility-box-inener .explain .btn a:hover::after {
  transform: translate(4px, -50%);
}
.archive-facility-box .facility-box-inener .explain .btn a:hover {
  background: rgba(255, 255, 20, 0.6);
}

@media (max-width: 767px) {
  .archive-facility-box .facility-box-inener .explain h3 {
    text-align: center;
    padding: 1.5rem 0;
  }
}
@media (min-width: 768px) {
  .archive-facility-box .facility-box-inener {
    display: -ms-flex;
    display: flex;
  }
  .archive-facility-box .facility-box-inener figure {
    width: 44%;
  }
  .archive-facility-box .facility-box-inener .explain {
    width: 56%;
  }
  .archive-facility-box .facility-box-inener .explain h3 {
    padding: 1rem 2rem;
  }
  .archive-facility-box .facility-box-inener .explain .text {
    padding: 0 2.5rem;
  }
  .archive-facility-box:nth-child(2n) .facility-box-inener {
    flex-direction: row-reverse;
  }
}
@media (min-width: 992px) {
  .archive-facility-box .facility-box-inener .explain h3 {
    font-size: 1.625rem;
    padding: 1rem 2rem;
  }
  .archive-facility-box .facility-box-inener .explain .text {
    padding: 0 2.5rem;
  }
  .archive-facility-box:nth-child(2n) .facility-box-inener {
    flex-direction: row-reverse;
  }
}
/*==============================
  single facility
==============================*/
.facility-header .container {
  position: relative;
}
.facility-header .container .info {
  background: rgba(255, 255, 255, 0.85);
  border-radius: 8px;
  position: absolute;
  width: 100%;
  padding: 1rem;
}
.facility-header .container .info h1 {
  color: #f39800;
  font-size: 1.5rem;
  line-height: 1.5;
}
.facility-header .container .info h1 span {
  color: #6a6a6a;
  display: block;
  font-weight: normal;
  font-size: 1rem;
}
.facility-header .container .info .vacant {
  width: 176px;
}
.facility-header .container .info .vacant dt {
  background: #f39800;
  display: table-cell;
  border-radius: 4px 0 0 4px;
  color: #fff;
  width: 88px;
  text-align: center;
  vertical-align: middle;
  padding: 0.5rem 0.75rem;
}
.facility-header .container .info .vacant dd {
  background: #fff;
  border: solid 2px #f39800;
  border-radius: 0 4px 4px 0;
  border-left: none;
  display: table-cell;
  width: 88px;
  padding: 0.5rem 0.75rem;
  text-align: right;
  font-size: 1.5rem;
  font-weight: bold;
}

.inpage-menu ul li {
  margin-top: 0.875rem;
}
.inpage-menu ul li a {
  color: #262626;
  display: block;
  background: #eee;
  line-height: 1.5;
  padding: 0.5rem 0.75rem;
  position: relative;
}
.inpage-menu ul li a::after {
  content: "\f063";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  position: absolute;
  top: 50%;
  right: 0.75rem;
  transform: translateY(-50%);
}
.inpage-menu ul li a:hover {
  background: #ddd;
}

.faci-infomation {
  padding: 4.75rem 0;
}
.faci-infomation .container .faci-infomation-box .faci-explain h3 {
  color: #f39800;
  font-size: 1.125rem;
  line-height: 1.5;
  margin-bottom: 1.25rem;
}
.faci-infomation .container .faci-infomation-box .faci-explain p {
  line-height: 1.8;
}
.faci-infomation .container .faci-infomation-box .faci-explain p + p {
  margin-top: 1rem;
}
.faci-infomation .container .faci-infomation-box .faci-outline .tablepress {
  line-height: 1.6;
  width: 100%;
}
.faci-infomation .container .faci-infomation-box .faci-outline .tablepress tr td {
  border: none !important;
}
.faci-infomation .container .faci-infomation-box .faci-outline .tablepress tr td.column-1 {
  color: #f39800;
  font-weight: bold;
}

.faci-gallery {
  background: #f4f4f4;
  padding: 4.75rem 0;
}
.faci-gallery .container .click-big {
  text-align: center;
  font-size: 0.875rem;
  margin-bottom: 2rem;
}
.faci-gallery .container .faci-gallery-list {
  display: -ms-flex;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  list-style-type: none;
}
.faci-gallery .container .faci-gallery-list li a {
  display: block;
}
.faci-gallery .container .faci-gallery-list li a:hover {
  opacity: 0.8;
}
.faci-gallery .container .faci-gallery-list li p {
  line-height: 1.6;
  font-size: 0.875rem;
  margin-top: 0.375rem;
}

.faci-map {
  padding: 4.75rem 0 0;
}
.faci-map .gmap {
  height: 0;
  overflow: hidden;
  padding-bottom: 75%;
  position: relative;
}
.faci-map .gmap iframe {
  position: absolute;
  left: 0;
  top: 0;
  height: 100%;
  width: 100%;
}
@media (min-width: 768px) {
  .faci-map .gmap {
    padding-bottom: 56.25%;
  }
}
@media (min-width: 992px) {
  .faci-map .gmap {
    padding-bottom: 36%;
  }
}

.faci-add-area:nth-of-type(2n) {
  background: rgba(243, 152, 0, 0.1);
}

.single-operating-facility .tablepress {
  background: #fff;
  max-width: 800px;
  margin: 0 auto;
  line-height: 1.6;
}
.single-operating-facility .tablepress tr td {
  padding: 1.25rem 0.75rem;
  border: solid 1px #ccc !important;
}
.single-operating-facility .tablepress tr td.column-1 {
  font-weight: bold;
}
@media (max-width: 575px) {
  .single-operating-facility .tablepress {
    font-size: 0.875rem;
  }
}

.faci-usagefee {
  padding: 4.75rem 0;
}
.faci-usagefee .container .tablepress tr td.column-1 {
  background: #eee;
}
.faci-usagefee .container .usingfee-img figure {
  max-width: 800px;
  margin: auto;
}
.faci-usagefee .container .usingfee-img figure + figure {
  margin-top: 1rem;
}
.faci-usagefee .container .usingfee-img figure img {
  margin: auto;
  border: solid 8px #eee;
}

.faci-memo {
  line-height: 1.7;
  max-width: 800px;
  margin: 1rem auto 0;
}

.faci-acceptable {
  padding: 4.75rem 0;
}
.faci-acceptable .container table {
  max-width: 960px;
  table-layout: fixed;
  background: #fff;
}
.faci-acceptable .container table tbody tr td {
  text-align: center;
}
.faci-acceptable .container table tbody tr td.column-1 {
  font-weight: normal;
}
.faci-acceptable .container table tbody tr:nth-child(2n+1) td {
  background: #eee;
  text-align: center;
}

.faci-dayflow {
  padding: 4.75rem 0;
}
.faci-dayflow .container .dayflow-box .tablepress {
  max-width: 100%;
}
.faci-dayflow .container .dayflow-box .tablepress tr td.column-1 {
  background: rgba(243, 152, 0, 0.3);
}

.single-operating-facility .faci-usingflow {
  padding: 4.75rem 0;
}
.single-operating-facility .faci-usingflow .container .tablepress {
  background: #fff;
  border: solid 1px #ccc;
}
.single-operating-facility .faci-usingflow .container .tablepress tr td {
  border: none !important;
  border-bottom: dashed 1px #ccc !important;
  vertical-align: middle;
}
.single-operating-facility .faci-usingflow .container .tablepress tr td.column-1 {
  text-align: center;
  font-size: 1.5rem;
}
.single-operating-facility .faci-usingflow .container .tablepress tr td.column-2 {
  color: #f39800;
  font-weight: bold;
}

.faci-salary {
  padding: 4.75rem 0;
}
.faci-salary .container .salary-img figure {
  max-width: 800px;
  margin: auto;
}
.faci-salary .container .salary-img figure + figure {
  margin-top: 1rem;
}
.faci-salary .container .salary-img figure img {
  margin: auto;
  border: solid 8px #eee;
}

.single-operating-facility .home-recruit-area {
  border-top: solid 2px #ddd;
}
.single-operating-facility .home-recruit-area .page-h3 span {
  font-size: 0.875rem;
  display: block;
  margin-bottom: 0.5rem;
}
.single-operating-facility .home-recruit-area .faci-recruit-list {
  max-width: 960px;
  width: 100%;
  margin: 1.75rem auto 0;
  list-style-type: none;
}
.single-operating-facility .home-recruit-area .faci-recruit-list li {
  margin-bottom: 1rem;
}
.single-operating-facility .home-recruit-area .faci-recruit-list li.no-recruit {
  color: #9c9c9c;
}
.single-operating-facility .home-recruit-area .faci-recruit-list li a {
  border-radius: 6px;
  color: #262626;
  display: block;
  border: solid 1px #ddd;
  line-height: 1.6;
  padding: 0.625rem 1rem;
  position: relative;
}
.single-operating-facility .home-recruit-area .faci-recruit-list li a::after {
  content: "\f061";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  position: absolute;
  top: 50%;
  right: 1rem;
  transform: translateY(-50%);
  transition: 0.15s;
}
.single-operating-facility .home-recruit-area .faci-recruit-list li a:hover {
  background: rgba(243, 152, 0, 0.2);
}
.single-operating-facility .home-recruit-area .faci-recruit-list li a:hover::after {
  transform: translate(4px, -50%);
}
.single-operating-facility .faci-recruit-img {
  margin-top: 2rem;
}
.single-operating-facility .faci-recruit-img .faci-img-list {
  max-width: 640px;
  width: 100%;
  margin: auto;
  display: flex;
  justify-content: center;
  list-style-type: none;
}
.single-operating-facility .faci-recruit-img .faci-img-list li {
  width: 48%;
}
.single-operating-facility .faci-recruit-img .faci-img-list li + li {
  margin-left: 4%;
}
.single-operating-facility .faci-recruit-img .faci-img-list li a {
  display: block;
  border: solid 2px #eee;
}
.single-operating-facility .faci-recruit-img .faci-img-list li a:hover {
  opacity: 0.8;
}

@media (max-width: 991px) {
  .faci-infomation .container .faci-infomation-box .faci-explain {
    background: #f4f4f4;
    margin-bottom: 3.5rem;
    padding: 1.375rem;
  }
  .faci-gallery .container .faci-gallery-list li {
    width: 48%;
  }
  .faci-gallery .container .faci-gallery-list li:nth-child(n+3) {
    margin-top: 1.25rem;
  }
}
@media (max-width: 767px) {
  .facility-header {
    margin-bottom: 8.5rem;
  }
  .facility-header .container {
    max-width: 100%;
    padding: 0;
  }
  .facility-header .container .info {
    border: solid 1px #ccc;
    top: 100%;
    transform: translate(1rem, -25%);
    width: calc(100% - 2rem);
  }
  .facility-header .container .info h1 {
    text-align: center;
  }
  .facility-header .container .info .vacant {
    margin: 1.25rem auto 0;
  }
  .faci-infomation .container .faci-infomation-box .faci-explain {
    padding: 1rem;
  }
  .faci-infomation .container .faci-infomation-box .faci-explain p {
    font-size: 0.9125rem;
  }
  .faci-usingflow .container .tablepress tr {
    display: block;
    position: relative;
  }
  .faci-usingflow .container .tablepress tr td {
    display: block;
    width: 100%;
  }
  .faci-usingflow .container .tablepress tr td.column-1 {
    position: absolute;
    top: 0;
    left: 0;
    width: 3rem;
    height: calc(100% - 1px);
    border-bottom: none !important;
    background: #f4f4f4;
  }
  .faci-usingflow .container .tablepress tr td.column-2 {
    border-bottom: none !important;
    padding-bottom: 0;
  }
  .faci-usingflow .container .tablepress tr td:not(.column-1) {
    padding-left: 3.75rem;
    position: relative;
    z-index: 5;
  }
  .faci-usingflow .container .tablepress tr:last-child td {
    border-bottom: none !important;
  }
}
@media (max-width: 575px) {
  .inpage-menu {
    transition: 0.15s;
    position: fixed;
    padding: 0.75rem;
    top: 0;
    left: 0;
    width: 100%;
    transform: translateY(-4.5rem);
    cursor: pointer;
    z-index: 8000;
  }
  .inpage-menu p {
    background: #fff;
    border: solid 2px #f39800;
    color: #f39800;
    height: 54px;
    line-height: 50px;
    padding: 0 0.75rem;
    font-weight: bold;
    width: 70%;
    border-radius: 2px;
    position: relative;
  }
  .inpage-menu p::before {
    content: "\f0ca";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    margin-right: 0.5rem;
  }
  .inpage-menu p::after {
    content: "\f078";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    position: absolute;
    top: 50%;
    right: 0.75rem;
    transform: translateY(-50%);
  }
  .inpage-menu p.open::after {
    content: "\f077";
  }
  .inpage-menu ul {
    background: #fff;
    border: solid 1px #f39800;
    padding: 0 0.75rem;
    margin-top: 0.75rem;
    display: none;
  }
  .inpage-menu.is-fixed {
    transform: translateY(0);
  }
  .faci-infomation .container .faci-infomation-box .faci-outline .tablepress {
    border: solid 1px #ddd;
  }
  .faci-infomation .container .faci-infomation-box .faci-outline .tablepress tr td {
    display: block;
    width: 100%;
  }
  .faci-infomation .container .faci-infomation-box .faci-outline .tablepress tr td.column-1 {
    background: #eee;
    border-radius: 2px;
    padding: 0.75rem;
  }
  .faci-infomation .container .faci-infomation-box .faci-outline .tablepress tr td.column-2 {
    padding: 0.75rem 0.75rem 1.5rem;
  }
  .faci-acceptable .container .sp-only-memo {
    font-size: 0.875rem;
    line-height: 1.5;
    margin-bottom: 0.5rem;
    color: #696969;
  }
  .faci-acceptable .container .sp-only-memo::after {
    content: "\f061";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    margin-left: 0.5rem;
  }
  .faci-acceptable .container .table-wrap {
    overflow-x: scroll;
  }
  .faci-acceptable .container .table-wrap table {
    width: 160%;
  }
}
@media (min-width: 576px) {
  .inpage-menu p {
    display: none;
  }
  .inpage-menu ul {
    display: -ms-flex;
    display: flex;
    justify-content: space-between;
    flex-flow: wrap;
  }
  .inpage-menu ul li {
    width: 48%;
  }
  .faci-infomation .container .faci-infomation-box .faci-outline .tablepress {
    border-top: solid 1px #ccc !important;
  }
  .faci-infomation .container .faci-infomation-box .faci-outline .tablepress tr td {
    border-bottom: solid 1px #ccc !important;
    padding: 1rem 0.5rem;
  }
  .faci-infomation .container .faci-infomation-box .faci-outline .tablepress tr td.column-1 {
    width: 25%;
  }
  .faci-acceptable .container .sp-only-memo {
    display: none;
  }
}
@media (min-width: 768px) {
  .facility-header {
    margin-bottom: 1rem;
  }
  .facility-header .container .img img {
    border-radius: 12px;
  }
  .facility-header .container .info {
    background: rgba(255, 255, 255, 0.75);
    border-radius: 0;
    bottom: 0;
    display: -ms-flex;
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 1rem 1.5rem;
  }
  .facility-header .container .info h1 {
    font-size: 1.875rem;
    line-height: 1.35;
  }
  .faci-infomation .container .faci-infomation-box .faci-explain h3 {
    font-size: 1.25rem;
  }
  .faci-usingflow .container .tablepress tr td {
    padding: 1rem;
  }
  .faci-usingflow .container .tablepress tr td.column-1 {
    width: 5%;
  }
  .faci-usingflow .container .tablepress tr td.column-2 {
    width: 25%;
  }
  .faci-usingflow .container .tablepress tr td.column-3 {
    width: 70%;
  }
  .single-operating-facility .home-recruit-area .home-recruit-box {
    align-items: flex-start;
  }
  .single-operating-facility .home-recruit-area .home-recruit-box .faci-recruit-list {
    padding: 1.75rem 0 0 3rem;
  }
}
@media (min-width: 992px) {
  .facility-header .container .img img {
    border-radius: 12px;
  }
  .facility-header .container .info {
    padding: 1.5rem 1.75rem;
  }
  .facility-header .container .info h1 {
    font-size: 2rem;
  }
  .inpage-menu ul li {
    width: 24%;
  }
  .faci-infomation .container .faci-infomation-box {
    display: -ms-flex;
    display: flex;
    justify-content: space-between;
  }
  .faci-infomation .container .faci-infomation-box .faci-explain {
    width: 40%;
  }
  .faci-infomation .container .faci-infomation-box .faci-outline {
    width: 55%;
  }
  .faci-infomation .container .faci-infomation-box .faci-outline .tablepress {
    border: solid 1px #ccc !important;
  }
  .faci-infomation .container .faci-infomation-box .faci-outline .tablepress tr td {
    padding: 1rem 1.25rem;
  }
  .faci-gallery .container .faci-gallery-list li {
    width: 23%;
  }
  .faci-gallery .container .faci-gallery-list li:nth-child(n+5) {
    margin-top: 1.75rem;
  }
  .faci-dayflow .container .dayflow-box {
    display: -ms-flex;
    display: flex;
    justify-content: space-between;
  }
  .faci-dayflow .container .dayflow-box .tablepress {
    width: 55%;
  }
  .faci-dayflow .container .dayflow-box figure {
    width: 38%;
  }
  .single-operating-facility .home-recruit-area .faci-recruit-list {
    display: -ms-flex;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  .single-operating-facility .home-recruit-area .faci-recruit-list li {
    width: 49%;
  }
}