@charset "UTF-8";
/* Scss Document */
/*!
Theme Name: original_soleil
Description: originaltheme.
Version: 1.0
*/
/*!
 * Bootstrap Reboot v4.1.3 (https://getbootstrap.com/)
 * Copyright 2011-2018 The Bootstrap Authors
 * Copyright 2011-2018 Twitter, Inc.
 * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
 * Forked from Normalize.css, licensed MIT (https://github.com/necolas/normalize.css/blob/master/LICENSE.md)
 */
*,
*::before,
*::after {
  box-sizing: border-box;
}

html {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 16px;
  line-height: 1.8;
  font-weight: 400;
  -webkit-text-size-adjust: 100%;
  -ms-overflow-style: scrollbar;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  overflow-x: hidden;
  overflow-y: scroll;
}
article,
aside,
figcaption,
figure,
footer,
header,
hgroup,
main,
nav,
section {
  display: block;
}

body {
  margin: 0;
  font-size: 1rem;
  line-height: inherit;
  color: #000000;
  text-align: left;
  background-color: #ffffff;
}

[tabindex="-1"]:focus {
  outline: 0 !important;
}

hr {
  box-sizing: content-box;
  height: 0;
  overflow: visible;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-size: 1rem;
  line-height: inherit;
  margin-top: 0;
  margin-bottom: 0;
}

p {
  margin: 0;
}

abbr[title],
abbr[data-original-title] {
  text-decoration: underline;
  -webkit-text-decoration: underline dotted;
  text-decoration: underline dotted;
  cursor: help;
  border-bottom: 0;
  -webkit-text-decoration-skip-ink: none;
          text-decoration-skip-ink: none;
}

address {
  font-style: normal;
  line-height: inherit;
}

ol,
ul,
dl {
  margin: 0;
  padding: 0;
  list-style: none;
}

ol ol,
ul ul,
ol ul,
ul ol {
  margin: 0;
  padding: 0;
}

dt {
  font-weight: 700;
}

dd {
  margin-bottom: 0;
  margin-left: 0;
}

blockquote {
  margin: 0 0 1rem;
}

b,
strong {
  font-weight: bolder;
}

small {
  font-size: 80%;
}

sub,
sup {
  position: relative;
  font-size: 75%;
  line-height: 0;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

a {
  color: #007bff;
  text-decoration: none;
  background-color: transparent;
}

a:hover {
  text-decoration: none;
}

a:not([href]):not([tabindex]) {
  color: inherit;
  text-decoration: none;
}

a:not([href]):not([tabindex]):hover,
a:not([href]):not([tabindex]):focus {
  color: inherit;
  text-decoration: none;
}

a:not([href]):not([tabindex]):focus {
  outline: 0;
}

pre,
code,
kbd,
samp {
  font-family: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
  font-size: 1em;
}

pre {
  margin-top: 0;
  margin-bottom: 1rem;
  overflow: auto;
  -ms-overflow-style: scrollbar;
}

figure {
  margin: 0 0 1rem;
}

img {
  max-width: 100%;
  height: auto;
  vertical-align: middle;
  border-style: none;
}

svg {
  overflow: hidden;
  vertical-align: middle;
}

table {
  border-collapse: collapse;
}

caption {
  padding-top: 0.75rem;
  padding-bottom: 0.75rem;
  color: #6c757d;
  text-align: left;
  caption-side: bottom;
}

th {
  text-align: inherit;
}

label {
  display: inline-block;
  margin-bottom: 0.5rem;
}

button {
  border-radius: 0;
}

button:focus {
  outline: 1px dotted;
  outline: 5px auto -webkit-focus-ring-color;
}

input,
button,
select,
optgroup,
textarea {
  margin: 0;
  font-family: inherit;
  font-size: inherit;
  line-height: inherit;
}

button,
input {
  overflow: visible;
}

button,
select {
  text-transform: none;
}

button::-moz-focus-inner,
[type=button]::-moz-focus-inner,
[type=reset]::-moz-focus-inner,
[type=submit]::-moz-focus-inner {
  padding: 0;
  border-style: none;
}

input[type=radio],
input[type=checkbox] {
  box-sizing: border-box;
  padding: 0;
}

textarea {
  overflow: auto;
  resize: vertical;
}

fieldset {
  min-width: 0;
  padding: 0;
  margin: 0;
  border: 0;
}

legend {
  display: block;
  width: 100%;
  max-width: 100%;
  padding: 0;
  margin-bottom: 0.5rem;
  font-size: 1.5rem;
  line-height: inherit;
  color: inherit;
  white-space: normal;
}

progress {
  vertical-align: baseline;
}

[type=number]::-webkit-inner-spin-button,
[type=number]::-webkit-outer-spin-button {
  height: auto;
}

[type=search] {
  outline-offset: -2px;
}

[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}

::-webkit-file-upload-button {
  font: inherit;
  -webkit-appearance: button;
}

output {
  display: inline-block;
}

summary {
  display: list-item;
  cursor: pointer;
}

template {
  display: none;
}

[hidden] {
  display: none !important;
}


/* Scss Document */
.cb {
  color: hsl(31, 80%, 3%);
}

.cw {
  color: hsl(31, 0%, 100%);
}

.cg {
  color: hsl(31, 0%, 60%);
}

.cd {
  color: hsl(31, 10%, 10%);
}

.c1 {
  color: hsl(31, 93%, 53%);
}

.c2 {
  color: hsl(194, 57%, 40%);
}

.c3 {
  color: #f7c894;
}

.c4 {
  color: #f7f1eb;
}

.c5 {
  color: #f61717;
}

.c6 {
  color: #f2f7f9;
}

.bcb {
  background-color: hsl(31, 80%, 3%);
}

.bcw {
  background-color: hsl(31, 0%, 100%);
}

.bcg {
  background-color: hsl(31, 0%, 60%);
}

.bc1 {
  background-color: hsl(31, 93%, 53%);
}

.bc2 {
  background-color: hsl(194, 57%, 40%);
}

.bc3 {
  background-color: #f7c894;
}

.bc4 {
  background-color: #f7f1eb;
}

.bc5 {
  background-color: #f61717;
}

.bc6 {
  background-color: #f2f7f9;
}

/*グレースケール*/
.gray-effect {
  -moz-filter: grayscale(100%);
  -ms-filter: grayscale(100%);
  -o-filter: grayscale(100%);
  filter: grayscale(100%);
  transition: 0.5s;
}

.gray-effect:hover {
  -moz-filter: grayscale(0);
  -ms-filter: grayscale(0);
  -o-filter: grayscale(0);
  filter: grayscale(0);
}

@media only screen and (max-width: 768px) {
  .gray-effect {
    -moz-filter: grayscale(0);
    -ms-filter: grayscale(0);
    -o-filter: grayscale(0);
    filter: grayscale(0);
  }
}
.row-gap-1 {
  row-gap: 0.25rem;
}

.row-gap-2 {
  row-gap: 0.5rem;
}

.row-gap-3 {
  row-gap: 1rem;
}

.row-gap-4 {
  row-gap: 1.5rem;
}

.row-gap-5 {
  row-gap: 3rem;
}

.breakPc {
  display: block;
}

.breakSp {
  display: none;
}

@media only screen and (max-width: 575px) {
  .breakPc {
    display: none;
  }
  .breakSp {
    display: block;
  }
}
@media screen and (min-width: 992px) {
  .nonePc {
    display: none;
  }
}
@media screen and (max-width: 991px) {
  .noneSp {
    display: none;
  }
}
.font-xs {
  font-size: 0.75rem;
}

.font-s {
  font-size: 0.875rem;
}

.font-m {
  font-size: 1.125rem;
}

.font-l {
  font-size: 1.25rem;
}

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

.font-xxl {
  font-size: 1.75rem;
}

.font-1 {
  font-size: 1rem;
}

.font-2 {
  font-size: 2rem;
}

.font-3 {
  font-size: 3rem;
}

.font-4 {
  font-size: 4rem;
}

.font-5 {
  font-size: 5rem;
}

.font-6 {
  font-size: 6rem;
}

.font-7 {
  font-size: 7rem;
}

.font-8 {
  font-size: 8rem;
}

.font-9 {
  font-size: 9rem;
}

.font-10 {
  font-size: 10rem;
}

@media screen and (min-width: 992px) {
  .font-lg-xs {
    font-size: 0.75rem !important;
  }
  .font-lg-s {
    font-size: 0.875rem !important;
  }
  .font-lg-m {
    font-size: 1.125rem !important;
  }
  .font-lg-l {
    font-size: 1.25rem !important;
  }
  .font-lg-xl {
    font-size: 1.5rem !important;
  }
  .font-lg-xxl {
    font-size: 1.75rem !important;
  }
  .font-lg-1 {
    font-size: 1rem !important;
  }
  .font-lg-2 {
    font-size: 2rem !important;
  }
  .font-lg-3 {
    font-size: 3rem !important;
  }
  .font-lg-4 {
    font-size: 4rem !important;
  }
  .font-lg-5 {
    font-size: 5rem !important;
  }
  .font-lg-6 {
    font-size: 6rem !important;
  }
  .font-lg-7 {
    font-size: 7rem !important;
  }
  .font-lg-8 {
    font-size: 8rem !important;
  }
  .font-lg-9 {
    font-size: 9rem !important;
  }
  .font-lg-10 {
    font-size: 10rem !important;
  }
}
@media screen and (max-width: 575px) {
  .font-sm-xs {
    font-size: 0.75rem !important;
  }
  .font-sm-s {
    font-size: 0.875rem !important;
  }
  .font-sm-m {
    font-size: 1.125rem !important;
  }
  .font-sm-l {
    font-size: 1.25rem !important;
  }
  .font-sm-xl {
    font-size: 1.5rem !important;
  }
  .font-sm-xxl {
    font-size: 1.75rem !important;
  }
  .font-sm-1 {
    font-size: 1rem !important;
  }
  .font-sm-2 {
    font-size: 2rem !important;
  }
  .font-sm-3 {
    font-size: 3rem !important;
  }
  .font-sm-4 {
    font-size: 4rem !important;
  }
  .font-sm-5 {
    font-size: 5rem !important;
  }
  .font-sm-6 {
    font-size: 6rem !important;
  }
  .font-sm-7 {
    font-size: 7rem !important;
  }
  .font-sm-8 {
    font-size: 8rem !important;
  }
  .font-sm-9 {
    font-size: 9rem !important;
  }
  .font-sm-10 {
    font-size: 10rem !important;
  }
}
.height-1 {
  line-height: 1;
}

.height-12 {
  line-height: 1.2;
}

.height-2 {
  line-height: 2;
}

.height-3 {
  line-height: 3;
}

html {
  font-size: 16px;
  line-height: 1.15;
  -webkit-text-size-adjust: 100%;
  -ms-overflow-style: scrollbar;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

@media only screen and (max-width: 575px) {
  html {
    font-size: 15px;
  }
}
body {
  display: flex;
  flex-direction: column;
  min-height: 100svh;
  width: 100%;
  overflow-x: hidden;
  font-family: "Lexend Deca", "Noto Sans JP", sans-serif;
  font-weight: 400;
  font-style: normal;
  font-size: 1rem;
  line-height: 1.7;
  letter-spacing: 0.025rem;
  color: hsl(31, 80%, 3%);
  background-color: hsl(31, 0%, 100%);
  margin: 0;
  padding: 0;
  text-align: left;
}

main {
  flex: 1;
}

.section {
  padding: 5rem 1rem;
  position: relative;
}
.section .containers {
  width: 100%;
  padding-right: 15px;
  padding-left: 15px;
  margin-right: auto;
  margin-left: auto;
}

@media screen and (max-width: 991px) {
  .section {
    padding: 3rem 0.5rem;
  }
}
@media only screen and (min-width: 576px) {
  a[href^="tel:"] {
    color: #000000;
    pointer-events: none;
  }
}
@media only screen and (max-width: 575px) {
  a[href^="tel:"] {
    color: #000000;
  }
  a:hover,
  a:active {
    opacity: 0.6;
  }
}
/* CSS Document */
.fadein-b {
  opacity: 0;
  transform: translateY(30px);
  transition: all 0.4s;
}

.delay-01 {
  transition-delay: 0.1s;
}

.delay-02 {
  transition-delay: 0.2s;
}

.delay-03 {
  transition-delay: 0.3s;
}

.delay-04 {
  transition-delay: 0.4s;
}

.delay-05 {
  transition-delay: 0.5s;
}

.delay-06 {
  transition-delay: 0.6s;
}

.delay-07 {
  transition-delay: 0.7s;
}

.delay-08 {
  transition-delay: 0.8s;
}

.delay-09 {
  transition-delay: 0.9s;
}

.delay-010 {
  transition-delay: 1s;
}

.delay-011 {
  transition-delay: 1.1s;
}

.delay-012 {
  transition-delay: 1.2s;
}

.fadein-text {
  opacity: 0;
  transform: translateY(30px);
  transition: all 1s;
  transition-delay: 2s;
  position: relative;
  z-index: 999;
}

/* CSS Document */
header {
  background: hsl(31, 93%, 53%);
  box-shadow: 0px 1px 4px hsla(355, 100%, 2%, 0.2);
}

.naviTab {
  position: absolute;
  z-index: 999;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding-top: 3rem;
  padding-left: 3rem;
  padding-right: 3rem;
}
.naviTab h1 a {
  display: block;
  width: 200px;
  background-color: hsl(31, 0%, 100%);
  border-radius: 8px;
  overflow: hidden;
  padding: 1rem;
}
.naviTab h1 a img {
  transition: all 0.2s;
}
.naviTab h1 a:hover img {
  opacity: 0.6;
}

#global-menu ul.menu {
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  gap: 1.5rem;
  background-color: hsl(31, 0%, 100%);
  box-shadow: 0 0 1px 1px #f7c894;
  border-radius: 100px;
  padding: 1rem 2rem;
}
#global-menu ul.menu li a {
  white-space: nowrap;
  display: flex;
  align-items: center;
  color: hsl(31, 80%, 3%);
  transition: all 0.2s;
}
#global-menu ul.menu li a::before {
  content: "";
  display: inline-block;
  width: 4px;
  height: 4px;
  background-color: hsl(31, 93%, 53%);
  border-radius: 20px;
  margin-right: 0.5rem;
}
@media (hover: hover) {
  #global-menu ul.menu li a:hover {
    color: hsl(31, 93%, 53%);
  }
}
@media (hover: none) {
  #global-menu ul.menu li a:hover {
    opacity: 0.6;
  }
}
#global-menu .snsMenu {
  display: none;
}

.navToggle {
  display: none;
}

@media only screen and (max-width: 991px) {
  .naviTab {
    position: relative;
    height: 64px;
    padding-top: 0;
    padding-left: 1rem;
    padding-right: 1rem;
  }
  .naviTab h1 {
    position: relative;
    z-index: 999;
  }
  .naviTab h1 a {
    width: 128px;
    padding: 0.5rem;
  }
  #global-menu {
    width: calc(100% + 2px);
    height: auto;
    transform: translateY(calc(-100% - 2rem));
    transition: all 0.2s;
    position: fixed;
    z-index: 998;
    top: 0;
    left: -1px;
    background-color: hsl(31, 93%, 53%);
    border-radius: 0 0 32px 32px;
    box-shadow: 0 1px 1px 0px hsl(31, 0%, 100%);
    padding: calc(64px + 2rem) 0 2rem;
    overflow-x: hidden;
  }
  #global-menu ul.menu {
    flex-direction: column;
    background-color: transparent;
    box-shadow: none;
    padding: 1rem 0;
  }
  #global-menu ul.menu li {
    width: 100%;
    border-bottom: solid 1px #f7c894;
  }
  #global-menu ul.menu li a {
    display: flex;
    justify-content: space-between;
    align-items: center;
    color: hsl(31, 0%, 100%);
    padding: 0 2rem 1rem;
  }
  #global-menu ul.menu li a::before {
    content: none;
  }
  #global-menu ul.menu li a::after {
    font: var(--fa-font-solid);
    content: "\f0da";
    font-size: 1rem;
  }
  #global-menu .snsMenu {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 1rem;
    margin-top: 1.5rem;
  }
  #global-menu .snsMenu li a {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    text-align: center;
    font-size: 0.75rem;
    color: hsl(31, 0%, 100%);
  }
  #global-menu .snsMenu li a span {
    width: 48px;
    height: 48px;
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
    background-color: hsl(31, 0%, 100%);
    border: solid 2px hsl(31, 0%, 100%);
    border-radius: 64px;
    margin-bottom: 0.15rem;
  }
  #global-menu .snsMenu li a span img {
    width: 20px;
    transition: all 0.4s;
  }
  #global-menu .snsMenu li a:hover img {
    transform: scale(1.1);
  }
  #global-menu.active {
    transform: translateY(0%);
  }
  .navToggle {
    display: block;
    position: fixed;
    top: 16px;
    right: 16px;
    z-index: 999;
    width: 32px;
    height: 32px;
    cursor: pointer;
  }
  .navToggle span {
    display: block;
    position: absolute;
    width: 24px;
    border-bottom: solid 2px hsl(31, 0%, 100%);
    transition: all 0.2s ease-in-out;
    left: 4px;
  }
  .navToggle span:nth-child(1) {
    top: 9px;
    width: 18px;
  }
  .navToggle span:nth-child(2) {
    top: 15px;
  }
  .navToggle span:nth-child(3) {
    top: 21px;
    width: 14px;
  }
  .navToggle.active span:nth-child(1),
  .navToggle.active span:nth-child(2),
  .navToggle.active span:nth-child(3) {
    top: 15px;
    left: 4px;
    z-index: 101;
    width: 24px;
    transform: rotate(-45deg);
  }
  .navToggle.active span:nth-child(2) {
    transform: rotate(45deg);
  }
}
/* Scss Document */
#footer {
  background: hsl(31, 0%, 100%);
}
#footer .containers {
  border-top: solid 8px #f7c894;
  border-bottom: solid 8px #f7c894;
}
#footer .containers .map-inner {
  position: relative;
  width: 100%;
  height: 0;
  max-width: 960px;
  padding-top: 100%;
  margin: 0 auto;
  overflow: hidden;
}
#footer .containers .map-inner iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
#footer .containers .accessWrap h2 {
  font-size: min(7vw, 2.5rem);
  margin-bottom: 0.5rem;
}
#footer .containers .accessWrap h2::before {
  display: inline-block;
  font: var(--fa-font-solid);
  content: "\f3c5";
  color: #ebc14e;
  margin-right: 1rem;
}
#footer .containers .accessWrap a.map {
  display: inline-block;
  font-size: 0.75rem;
  color: hsl(31, 93%, 53%);
  border: solid 1px hsl(31, 93%, 53%);
  border-radius: 100px;
  padding: 0.25rem 1.5rem 0.15rem;
  margin-top: 1rem;
  transition: all 0.2s;
}
#footer .containers .accessWrap a.map::after {
  display: inline-block;
  font: var(--fa-font-solid);
  content: "\f178";
  margin-left: 1rem;
  transition: all 0.2s;
}
@media (hover: hover) {
  #footer .containers .accessWrap a.map:hover {
    color: hsl(31, 0%, 100%);
    background-color: hsl(31, 93%, 53%);
  }
  #footer .containers .accessWrap a.map:hover::after {
    transform: translateX(4px);
  }
}
@media (hover: none) {
  #footer .containers .accessWrap a.map:hover {
    opacity: 0.6;
  }
}
#footer .containers .timeWrap {
  display: inline-block;
  background: hsl(31, 93%, 53%);
  border-radius: 32px;
  padding: 2rem;
  margin-top: 3rem;
  margin-left: 6px;
  position: relative;
  z-index: 0;
}
#footer .containers .timeWrap::after {
  content: "";
  position: absolute;
  z-index: -1;
  top: -6px;
  left: -6px;
  width: calc(100% + 12px);
  height: calc(100% + 12px);
  border: solid 2px hsl(31, 93%, 53%);
  border-radius: 36px;
}
#footer .containers .timeWrap table {
  margin: 0 auto;
}
#footer .containers .timeWrap table tr {
  border-bottom: solid 1px #f7c894;
}
#footer .containers .timeWrap table tr:first-child th,
#footer .containers .timeWrap table tr:first-child td {
  padding-top: 0;
}
#footer .containers .timeWrap table tr th,
#footer .containers .timeWrap table tr td {
  font-size: 0.875rem;
  font-weight: 500;
  color: hsl(31, 0%, 100%);
  vertical-align: top;
  padding: 1rem;
  white-space: nowrap;
}
#footer .containers .timeWrap table tr th {
  padding-left: 0;
}
#footer .containers .timeWrap table tr td {
  text-align: center;
}
#footer .containers .timeWrap .note {
  font-size: 0.875rem;
  color: hsl(31, 0%, 100%);
  margin-top: 1rem;
}
#footer .leftWrap .logoWrap a {
  display: inline-block;
  width: 100%;
  max-width: 240px;
  transition: all 0.2s;
}
#footer .leftWrap .logoWrap a:hover {
  opacity: 0.6;
}
#footer .rightWrap .contactWrap {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  gap: 1rem;
  margin-bottom: 2rem;
}
#footer .rightWrap .contactWrap .tel a,
#footer .rightWrap .contactWrap .fax {
  display: inline-block;
  font-size: 1.35rem;
  line-height: 1.5;
  color: hsl(31, 80%, 3%);
}
#footer .rightWrap .contactWrap .tel a::before,
#footer .rightWrap .contactWrap .fax::before {
  display: inline-block;
  font: var(--fa-font-solid);
  content: "\f095";
  font-size: 1rem;
  margin-right: 0.5rem;
}
#footer .rightWrap .contactWrap .fax::before {
  content: "\f1ac";
}
#footer .rightWrap .contactWrap .mail a {
  display: inline-block;
  font-size: 0.875rem;
  color: hsl(31, 80%, 3%);
  border: solid 1px hsl(31, 80%, 3%);
  border-radius: 100px;
  padding: 0.5rem 1.5rem 0.35rem;
  transition: all 0.2s;
}
#footer .rightWrap .contactWrap .mail a::before {
  display: inline-block;
  font: var(--fa-font-solid);
  content: "\f0e0";
  font-size: 1rem;
  margin-right: 1rem;
}
@media (hover: hover) {
  #footer .rightWrap .contactWrap .mail a:hover {
    color: hsl(31, 0%, 100%);
    background-color: hsl(31, 80%, 3%);
  }
}
@media (hover: none) {
  #footer .rightWrap .contactWrap .mail a:hover {
    opacity: 0.6;
  }
}
#footer .rightWrap nav ul {
  display: flex;
  gap: 1rem;
}
#footer .rightWrap nav ul li a {
  color: hsl(31, 80%, 3%);
  transition: all 0.2s;
}
@media (hover: hover) {
  #footer .rightWrap nav ul li a:hover {
    color: hsl(31, 93%, 53%);
  }
}
@media (hover: none) {
  #footer .rightWrap nav ul li a:hover {
    opacity: 0.6;
  }
}
#footer .rightWrap nav ul li a::before {
  content: "・";
}

@media only screen and (max-width: 991px) {
  #footer .leftWrap .logoWrap a {
    max-width: 200px;
  }
  #footer .rightWrap {
    display: flex;
    flex-direction: column-reverse;
    gap: 2rem;
  }
  #footer .rightWrap .contactWrap {
    flex-direction: column;
    gap: 1.5rem;
  }
  #footer .rightWrap .contactWrap .mail a {
    color: hsl(31, 0%, 100%);
    background-color: hsl(31, 80%, 3%);
  }
  #footer .rightWrap nav ul {
    flex-wrap: wrap;
    justify-content: center;
    gap: 0.5rem;
  }
}
@media only screen and (max-width: 575px) {
  #footer .containers .accessWrap a.map {
    color: hsl(31, 0%, 100%);
    background-color: hsl(31, 93%, 53%);
  }
  #footer .containers .timeWrap {
    border-radius: 16px;
    padding: 1rem;
    margin: calc(1.5rem + 5px) 0 5px;
  }
  #footer .containers .timeWrap::after {
    top: -5px;
    left: -5px;
    width: calc(100% + 10px);
    height: calc(100% + 10px);
    border-radius: 20px;
  }
  #footer .containers .timeWrap table tr th,
  #footer .containers .timeWrap table tr td {
    font-size: 0.875rem;
    padding: 0.5rem;
  }
  #footer .rightWrap nav ul {
    max-width: 320px;
    margin: 0 auto;
  }
}
@media only screen and (max-width: 390px) {
  #footer .containers .timeWrap table tr th,
  #footer .containers .timeWrap table tr td {
    padding: 0.35rem;
  }
}
/* Scss Document */
.mainview {
  background-color: hsl(31, 0%, 100%);
  padding-top: 1rem;
  position: relative;
  z-index: 0;
}
.mainview::after {
  content: "";
  position: absolute;
  z-index: 1;
  left: 0;
  bottom: -2px;
  width: 100%;
  background: center/cover url(images/hero/mask_mainview.svg) no-repeat;
  padding-top: 20.2586%;
}
.mainview .mainviewSlider {
  overflow: hidden;
}
.mainview .mainviewSlider .swiper {
  overflow: visible;
}
.mainview .mainviewSlider .swiper .swiper-wrapper {
  transition-timing-function: linear !important;
}
.mainview .mainviewSlider .swiper .swiper-wrapper .swiper-slide {
  width: -moz-max-content;
  width: max-content;
}
.mainview .mainviewSlider .swiper .swiper-wrapper .swiper-slide .slide {
  overflow: hidden;
  border-radius: 16px;
}
.mainview .mainviewSlider .swiper .swiper-wrapper .swiper-slide .slide .slide-media {
  padding-top: 150%;
  position: relative;
  overflow: hidden;
}
.mainview .mainviewSlider .swiper .swiper-wrapper .swiper-slide .slide .slide-media img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}
.mainview .titleWrap {
  position: absolute;
  z-index: 2;
  left: 2rem;
  bottom: 2rem;
}
.mainview .titleWrap h2 {
  font-size: min(8vw, 4rem);
  line-height: 1;
}
.mainview .titleWrap h2 .wordWrap {
  display: inline-block;
  background-color: hsl(31, 0%, 100%);
  border-radius: 8px;
  padding: 0.75rem 1rem;
}
.mainview .titleWrap p {
  font-size: 1.15rem;
}

@media screen and (max-width: 991px) {
  .mainview .titleWrap {
    left: 0.5rem;
    bottom: 0;
  }
  .mainview .titleWrap h2 {
    font-size: min(6vw, 4rem);
  }
  .mainview .titleWrap h2 .wordWrap {
    border-radius: 4px;
    padding: 0.35rem 0.5rem;
  }
  .mainview .titleWrap p {
    font-size: 0.875rem;
    text-shadow: 1px 1px 1px hsl(31, 0%, 100%);
  }
}
.pageHero {
  background-color: hsl(31, 93%, 53%);
  position: relative;
  z-index: 0;
}
.pageHero::before {
  content: "";
  position: absolute;
  z-index: -1;
  inset: 0;
  background: center/cover url(images/hero/hero.jpg) no-repeat;
  opacity: 0.1;
}
.pageHero::after {
  content: "";
  position: absolute;
  z-index: 1;
  left: 0;
  bottom: -1px;
  width: 100%;
  background: center/cover url(images/hero/mask_pagehero.svg) no-repeat;
  padding-top: 17.0959%;
}
.pageHero .indexTitle {
  padding-top: 10rem;
  padding-bottom: 10rem;
  text-align: start;
}

.heroNews::before,
.heroSingle::before {
  background-image: url(images/home/dispensing@2x.webp);
}

.heroService::before {
  background-image: url(images/home/medicine_02@2x.webp);
}

.heroCompany::before {
  background-image: url(images/home/exterior_02@2x.webp);
}

.heroAbout::before {
  background-image: url(images/home/feature_02@2x.webp);
}

.heroRecruit::before {
  background-image: url(images/home/interior_01@2x.webp);
}

.heroContact::before {
  background-image: url(images/home/exterior_03@2x.webp);
}

.pageHero.heroService {
  background-color: hsl(31, 0%, 100%);
}
.pageHero.heroService::after {
  background: center/cover url(images/hero/mask_pagehero_o.svg) no-repeat;
}

.pageHero.heroSingle .indexTitle h2 {
  font-size: 2rem;
  line-height: 3rem;
}
.pageHero.heroSingle .indexTitle span {
  font-size: 1rem;
}

@media screen and (max-width: 991px) {
  .pageHero {
    margin-top: -64px;
  }
  .pageHero .indexTitle {
    padding-top: 5.5rem;
    padding-bottom: 3rem;
  }
  .pageHero.heroSingle .indexTitle h2 {
    font-size: 1.5rem;
    line-height: 2.5rem;
  }
}
.breadcrumbsWrap {
  display: flex;
  justify-content: flex-end;
  position: relative;
  z-index: 2;
}
.breadcrumbsWrap .cf {
  display: block;
}
.breadcrumbsWrap .cf li {
  display: inline-block;
  font-size: 0.875rem;
  text-shadow: 1px 1px 1px hsl(31, 0%, 100%);
}
.breadcrumbsWrap .cf li a {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  color: hsl(31, 80%, 3%);
  margin-right: 0.5rem;
  transition: all 0.2s;
  position: relative;
}
.breadcrumbsWrap .cf li a:after {
  font: var(--fa-font-solid);
  content: "\f105";
  color: hsl(31, 0%, 60%);
}
.breadcrumbsWrap .cf li a:hover {
  color: hsl(31, 93%, 53%);
}
.breadcrumbsWrap .cf li a:hover::after {
  color: hsl(31, 0%, 60%);
}

.breadcrumbsWrap.cw .cf li {
  text-shadow: 1px 1px 1px hsl(31, 93%, 53%);
}
.breadcrumbsWrap.cw .cf li a {
  color: hsl(31, 0%, 100%);
}
.breadcrumbsWrap.cw .cf li a:after {
  color: #f7c894;
}
.breadcrumbsWrap.cw .cf li a:hover {
  color: hsl(31, 80%, 3%);
}
.breadcrumbsWrap.cw .cf li a:hover::after {
  color: #f7c894;
}

@media only screen and (max-width: 767px) {
  .breadcrumbsWrap .cf li a,
  .breadcrumbsWrap .cf li span {
    font-size: 0.75rem;
  }
}
#loading {
  position: fixed;
  z-index: 999;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: hsl(31, 93%, 53%);
  opacity: 1;
  visibility: visible;
  transition: opacity 1.5s ease, visibility 1.5s ease;
}
#loading .loader {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 0.5rem;
}
#loading .loader .imgWrap {
  max-width: 80px;
  margin: 0 auto;
}

/* フェードアウト後のスタイル */
#loading.fade-out {
  opacity: 0;
  visibility: hidden;
}

/* メインコンテンツの初期スタイル */
#content {
  opacity: 0;
  visibility: hidden;
  transition: opacity 1.5s ease, visibility 1.5s ease;
}

/* 表示されるときのスタイル */
#content.visible {
  opacity: 1;
  visibility: visible;
}

.yurayura {
  transform-origin: center bottom;
  animation: yurayura 0.8s linear infinite;
}

@keyframes yurayura {
  0%, 100% {
    transform: rotate(10deg);
  }
  50% {
    transform: rotate(-10deg);
  }
}
/* Scss Document */
body {
  background-color: hsl(31, 93%, 53%);
}

.contentWrap {
  background-color: hsl(31, 93%, 53%);
  padding: 1rem;
  position: relative;
  z-index: 0;
}
.contentWrap::before {
  content: "";
  position: absolute;
  z-index: -1;
  top: 0.5rem;
  left: 0.5rem;
  width: calc(100% - 1rem);
  height: calc(100% - 1rem);
  background-color: #f7c894;
}

main {
  background-color: hsl(31, 0%, 100%);
}

.indexTitle h2 {
  font-size: 2.5rem;
  line-height: 3.5rem;
}
.indexTitle span {
  display: block;
  font-size: 1.25rem;
  letter-spacing: 0.05rem;
}

@media only screen and (max-width: 991px) {
  .indexTitle h2 {
    font-size: 1.5rem;
    line-height: 2.25rem;
  }
  .indexTitle span {
    font-size: 0.875rem;
    letter-spacing: 0.01rem;
  }
}
.viewBtn a {
  display: inline-block;
  font-size: 0.75rem;
  color: hsl(31, 93%, 53%);
  border: solid 2px hsl(31, 93%, 53%);
  border-radius: 100px;
  padding: 0.875rem 1.5rem 0.75rem;
  transition: all 0.2s;
}
.viewBtn a::after {
  display: inline-block;
  font: var(--fa-font-solid);
  content: "\f178";
  margin-left: 1rem;
  transition: all 0.2s;
}
@media (hover: hover) {
  .viewBtn a:hover {
    color: hsl(31, 0%, 100%);
    background-color: hsl(31, 93%, 53%);
  }
  .viewBtn a:hover::after {
    transform: translateX(4px);
  }
}
@media (hover: none) {
  .viewBtn a:hover {
    opacity: 0.6;
  }
}

.viewBtn.cw a {
  color: hsl(31, 0%, 100%);
  border: solid 2px hsl(31, 0%, 100%);
}
@media (hover: hover) {
  .viewBtn.cw a:hover {
    color: hsl(31, 93%, 53%);
    background-color: hsl(31, 0%, 100%);
  }
}
@media (hover: none) {
  .viewBtn.cw a:hover {
    opacity: 0.6;
  }
}

@media screen and (max-width: 991px) {
  .viewBtn a {
    color: hsl(31, 0%, 100%);
    background-color: hsl(31, 93%, 53%);
    padding: 0.5rem 1.5rem 0.45rem;
  }
  .viewBtn a::after {
    font-size: 0.875rem;
    margin-left: 0.5rem;
  }
  .viewBtn.cw a {
    color: hsl(31, 93%, 53%);
    background-color: hsl(31, 0%, 100%);
  }
}
.homeAttention {
  background-color: #f7f1eb;
}
.homeAttention .innerWrap {
  color: hsl(31, 0%, 100%);
  background: hsl(31, 93%, 53%);
  border-radius: 26px;
  padding: 3rem 1rem;
  text-align: center;
  position: relative;
  z-index: 0;
}
.homeAttention .innerWrap::after {
  content: "";
  position: absolute;
  z-index: -1;
  top: -8px;
  left: -8px;
  width: calc(100% + 16px);
  height: calc(100% + 16px);
  border: solid 4px hsl(31, 93%, 53%);
  border-radius: 32px;
}

@media screen and (max-width: 991px) {
  .homeAttention .innerWrap {
    border-radius: 28px;
    padding: 1.5rem 0.5rem;
  }
  .homeAttention .innerWrap::after {
    top: -6px;
    left: -6px;
    width: calc(100% + 12px);
    height: calc(100% + 12px);
    border: solid 2px hsl(31, 93%, 53%);
  }
}
.homeConcept {
  background-color: hsl(31, 0%, 100%);
  border-top: solid 8px #f7c894;
}
.homeConcept .indexTitle::before {
  content: "";
  display: block;
  width: 32px;
  height: 32px;
  background: center/contain url(images/home/tablet.svg) no-repeat;
  margin: 0 auto 0.5rem;
}
.homeConcept h3 {
  display: inline;
  line-height: 2;
  background: linear-gradient(transparent 80%, #f7c894 0%);
}

.homeTime {
  background-color: #f7c894;
}
.homeTime .innerWrap {
  border-radius: 32px;
}
.homeTime .innerWrap .timeWrap {
  border-radius: 16px;
  overflow: hidden;
}

.homeFeature {
  background-color: hsl(31, 0%, 100%);
}
.homeFeature .imgWrap {
  border-radius: 32px;
  overflow: hidden;
}
.homeFeature .textWrap {
  background-color: hsl(31, 0%, 100%);
  border-radius: 0 32px 0 0;
  padding: 1rem 1rem 1rem 0;
  margin-top: -8rem;
  margin-right: 2rem;
  position: relative;
}
.homeFeature .textWrap h3 {
  font-size: 1.25rem;
  margin-bottom: 1rem;
}
.homeFeature .textWrap p {
  font-size: 0.875rem;
}
.homeFeature .textWrap a {
  display: inline-block;
  font-size: 0.75rem;
  color: hsl(31, 93%, 53%);
  border: solid 1px hsl(31, 93%, 53%);
  border-radius: 100px;
  padding: 0.25rem 1.5rem 0.15rem;
  margin-top: 1rem;
  transition: all 0.2s;
}
.homeFeature .textWrap a::after {
  display: inline-block;
  font: var(--fa-font-solid);
  content: "\f178";
  margin-left: 1rem;
  transition: all 0.2s;
}
@media (hover: hover) {
  .homeFeature .textWrap a:hover {
    color: hsl(31, 0%, 100%);
    background-color: hsl(31, 93%, 53%);
  }
  .homeFeature .textWrap a:hover::after {
    transform: translateX(4px);
  }
}
@media (hover: none) {
  .homeFeature .textWrap a:hover {
    opacity: 0.6;
  }
}

@media screen and (max-width: 991px) {
  .homeFeature .textWrap a {
    color: hsl(31, 0%, 100%);
    background-color: hsl(31, 93%, 53%);
  }
}
.homeService {
  background-color: #f7f1eb;
  padding-left: 5rem;
  padding-right: 0;
}
.homeService .containerWrap {
  padding: 3rem 0 3rem 3rem;
  background-color: hsl(31, 0%, 100%);
  border-radius: 64px 0 0 64px;
  overflow: hidden;
}
.homeService .containerWrap .serviceSlider {
  overflow: hidden;
  padding-right: 3rem;
}
.homeService .containerWrap .serviceSlider .swiper {
  overflow: visible;
}
.homeService .containerWrap .serviceSlider .swiper .swiper-slide {
  width: -moz-max-content;
  width: max-content;
}
.homeService .containerWrap .serviceSlider .swiper .swiper-slide .slide {
  overflow: hidden;
  border-radius: 4px;
  box-shadow: var(--box-shadow);
}
.homeService .containerWrap .serviceSlider .swiper .swiper-slide .slide .slide-media {
  padding-top: 100%;
  position: relative;
  overflow: hidden;
}
.homeService .containerWrap .serviceSlider .swiper .swiper-slide .slide .slide-media img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}
.homeService .containerWrap .serviceSlider .swiper .swiper-controller {
  max-width: 360px;
  height: 48px;
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 0.5rem auto 0;
  position: relative;
}
.homeService .containerWrap .serviceSlider .swiper .swiper-controller .swiper-pagination {
  position: relative !important;
  bottom: auto;
  width: auto;
  height: auto;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: center;
  gap: 8px 8px;
  margin: 0 35px;
}
.homeService .containerWrap .serviceSlider .swiper .swiper-controller .swiper-pagination .swiper-pagination-bullet {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  margin: 0;
  cursor: pointer;
  transition: all 0.2s ease-in-out;
  vertical-align: top;
  background-color: #f7c894;
  opacity: 0.2;
  pointer-events: none;
}
.homeService .containerWrap .serviceSlider .swiper .swiper-controller .swiper-pagination .swiper-pagination-bullet-active {
  opacity: 1;
}
.homeService .containerWrap .serviceSlider .swiper .swiper-controller .swiper-button-prev,
.homeService .containerWrap .serviceSlider .swiper .swiper-controller .swiper-button-next {
  position: relative !important;
  top: auto;
  display: grid;
  place-content: center;
  width: 32px;
  height: 32px;
  margin: 0;
  cursor: pointer;
}
.homeService .containerWrap .serviceSlider .swiper .swiper-controller .swiper-button-prev::after,
.homeService .containerWrap .serviceSlider .swiper .swiper-controller .swiper-button-next::after {
  width: 8px;
  height: 8px;
  content: "";
  border: solid #f7c894;
  border-width: 2px 2px 0 0;
}
.homeService .containerWrap .serviceSlider .swiper .swiper-controller .swiper-button-prev::after {
  margin-left: 2px;
  transform: rotate(-135deg);
}
.homeService .containerWrap .serviceSlider .swiper .swiper-controller .swiper-button-next::after {
  margin-right: 2px;
  transform: rotate(45deg);
}

@media screen and (max-width: 991px) {
  .homeService {
    padding-left: 2rem;
  }
  .homeService .containerWrap {
    padding: 3rem 0 3rem 1.5rem;
    border-radius: 32px 0 0 32px;
  }
  .homeService .containerWrap .serviceSlider {
    padding-right: 1.5rem;
  }
  .homeService .containerWrap .serviceTitle {
    padding-right: 1.5rem;
  }
}
.homeFlow {
  background-color: hsl(31, 0%, 100%);
}
.homeFlow .innerWrap {
  display: flex;
  flex-direction: column;
  border: solid 4px hsl(31, 93%, 53%);
  border-radius: 16px;
  padding: calc(1rem + 24px) 1rem 1rem 1rem;
  position: relative;
  z-index: 0;
}
.homeFlow .innerWrap span {
  position: absolute;
  top: -24px;
  left: 50%;
  transform: translateX(-50%);
  display: flex;
  justify-content: center;
  align-items: center;
  width: 48px;
  height: 48px;
  color: hsl(31, 0%, 100%);
  background-color: hsl(31, 93%, 53%);
  border-radius: 100px;
}
.homeFlow .innerWrap .imgWrap {
  width: 100%;
  max-width: 64px;
  margin: 1.5rem auto;
  text-align: center;
}
.homeFlow .arrowWrap::after {
  font: var(--fa-font-solid);
  content: "\f0da";
  position: absolute;
  right: -24px;
  top: 50%;
  transform: translateY(-50%);
  font-size: 1.5rem;
  color: #f7c894;
}

@media screen and (max-width: 1200px) {
  .homeFlow .arrowWrap::after {
    content: "\f0d7";
    right: auto;
    left: 50%;
    top: auto;
    bottom: -28px;
    transform: translate(-50%, 0);
  }
}
.homeQa {
  background-color: #f7f1eb;
}
.homeQa .acc-area li {
  margin-bottom: 1rem;
}
.homeQa .acc-area li:last-child {
  margin-bottom: 0;
}
.homeQa .acc-area li .list-wrap {
  background: hsl(31, 0%, 100%);
  border: solid 2px hsl(31, 80%, 3%);
  border-radius: 40px;
  /*　closeというクラスがついたら形状変化　*/
}
.homeQa .acc-area li .list-wrap .acc-btn {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 1rem;
  width: 100%;
  padding: 1.5rem 2rem;
  cursor: pointer;
}
.homeQa .acc-area li .list-wrap .acc-btn::after {
  font: var(--fa-font-solid);
  content: "+";
  transition: all 0.2s;
}
.homeQa .acc-area li .list-wrap .acc-btn.is-open::after {
  transform: rotate(-45deg);
}
.homeQa .acc-area li .list-wrap .box {
  transition: all 0.2s;
  opacity: 0;
  line-height: 1;
  padding: 0 1.5rem 0 2rem;
  height: 0;
  overflow: hidden;
}
.homeQa .acc-area li .list-wrap .box.is-open {
  opacity: 1;
  line-height: inherit;
  height: auto;
  padding-bottom: 1.5rem;
  transition: all 0.2s;
  overflow: visible;
}

@media only screen and (max-width: 575px) {
  .homeQa .acc-area li .list-wrap .acc-btn {
    padding: 1rem 1.5rem;
  }
  .homeQa .acc-area li .list-wrap .box {
    padding: 0 1.5rem;
  }
  .homeQa .acc-area li .list-wrap .box.is-open {
    padding: 0 1.5rem 1.5rem;
  }
}
.homeRecruit,
.homeContact {
  background-color: hsl(31, 0%, 100%);
  padding-left: 5rem;
  padding-right: 0;
}
.homeRecruit .containerWrap,
.homeContact .containerWrap {
  padding: 6rem 3rem;
  background-color: hsl(194, 57%, 40%);
  border-radius: 300px 0 0 300px;
  overflow: hidden;
  position: relative;
  z-index: 0;
}
.homeRecruit .containerWrap::before,
.homeContact .containerWrap::before {
  content: "";
  position: absolute;
  z-index: -1;
  inset: 0;
  background: center/cover url(images/home/interior_01@2x.webp) no-repeat;
  opacity: 0.1;
}
.homeRecruit .containerWrap .contactWrap,
.homeContact .containerWrap .contactWrap {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-end;
  gap: 2rem;
}
.homeRecruit .containerWrap .contactWrap .tel,
.homeRecruit .containerWrap .contactWrap .mail,
.homeRecruit .containerWrap .contactWrap .page,
.homeRecruit .containerWrap .contactWrap .entry,
.homeContact .containerWrap .contactWrap .tel,
.homeContact .containerWrap .contactWrap .mail,
.homeContact .containerWrap .contactWrap .page,
.homeContact .containerWrap .contactWrap .entry {
  width: 100%;
  max-width: 400px;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 1rem;
  font-size: 1.25rem;
  color: hsl(31, 0%, 100%);
  border: solid 3px hsl(31, 0%, 100%);
  border-radius: 100px;
  padding: 1.5rem 2rem;
  transition: all 0.2s;
}
.homeRecruit .containerWrap .contactWrap .tel::before,
.homeRecruit .containerWrap .contactWrap .mail::before,
.homeRecruit .containerWrap .contactWrap .page::before,
.homeRecruit .containerWrap .contactWrap .entry::before,
.homeContact .containerWrap .contactWrap .tel::before,
.homeContact .containerWrap .contactWrap .mail::before,
.homeContact .containerWrap .contactWrap .page::before,
.homeContact .containerWrap .contactWrap .entry::before {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 64px;
  height: 64px;
  font: var(--fa-font-solid);
  content: "\f0e0";
  font-size: 1.5rem;
  color: hsl(194, 57%, 40%);
  background-color: hsl(31, 0%, 100%);
  border-radius: 50px;
  transition: all 0.2s;
}
@media (hover: hover) {
  .homeRecruit .containerWrap .contactWrap .tel:hover,
  .homeRecruit .containerWrap .contactWrap .mail:hover,
  .homeRecruit .containerWrap .contactWrap .page:hover,
  .homeRecruit .containerWrap .contactWrap .entry:hover,
  .homeContact .containerWrap .contactWrap .tel:hover,
  .homeContact .containerWrap .contactWrap .mail:hover,
  .homeContact .containerWrap .contactWrap .page:hover,
  .homeContact .containerWrap .contactWrap .entry:hover {
    color: hsl(194, 57%, 40%);
    background-color: hsl(31, 0%, 100%);
  }
  .homeRecruit .containerWrap .contactWrap .tel:hover::before,
  .homeRecruit .containerWrap .contactWrap .mail:hover::before,
  .homeRecruit .containerWrap .contactWrap .page:hover::before,
  .homeRecruit .containerWrap .contactWrap .entry:hover::before,
  .homeContact .containerWrap .contactWrap .tel:hover::before,
  .homeContact .containerWrap .contactWrap .mail:hover::before,
  .homeContact .containerWrap .contactWrap .page:hover::before,
  .homeContact .containerWrap .contactWrap .entry:hover::before {
    color: hsl(31, 0%, 100%);
    background-color: hsl(194, 57%, 40%);
  }
}
@media (hover: none) {
  .homeRecruit .containerWrap .contactWrap .tel:hover,
  .homeRecruit .containerWrap .contactWrap .mail:hover,
  .homeRecruit .containerWrap .contactWrap .page:hover,
  .homeRecruit .containerWrap .contactWrap .entry:hover,
  .homeContact .containerWrap .contactWrap .tel:hover,
  .homeContact .containerWrap .contactWrap .mail:hover,
  .homeContact .containerWrap .contactWrap .page:hover,
  .homeContact .containerWrap .contactWrap .entry:hover {
    opacity: 0.6;
  }
}
.homeRecruit .containerWrap .contactWrap .page::before,
.homeContact .containerWrap .contactWrap .page::before {
  content: "\f15c";
}
.homeRecruit .containerWrap .contactWrap .entry::before,
.homeContact .containerWrap .contactWrap .entry::before {
  content: "\f5ad";
}
.homeRecruit .containerWrap .contactWrap .tel,
.homeContact .containerWrap .contactWrap .tel {
  font-size: 2rem;
  line-height: 1.25;
}
.homeRecruit .containerWrap .contactWrap .tel::before,
.homeContact .containerWrap .contactWrap .tel::before {
  content: "\f095";
}
.homeRecruit .containerWrap .contactWrap .tel span,
.homeContact .containerWrap .contactWrap .tel span {
  display: block;
  font-size: 0.875rem;
}

@media screen and (max-width: 1200px) {
  .homeRecruit,
  .homeContact {
    padding-left: 2rem;
  }
  .homeRecruit .containerWrap,
  .homeContact .containerWrap {
    padding: 1.5rem;
    border-radius: 32px 0 0 32px;
  }
  .homeRecruit .containerWrap .contactWrap,
  .homeContact .containerWrap .contactWrap {
    gap: 1.5rem;
    margin-top: 2rem;
  }
  .homeRecruit .containerWrap .contactWrap .tel,
  .homeRecruit .containerWrap .contactWrap .mail,
  .homeRecruit .containerWrap .contactWrap .page,
  .homeRecruit .containerWrap .contactWrap .entry,
  .homeContact .containerWrap .contactWrap .tel,
  .homeContact .containerWrap .contactWrap .mail,
  .homeContact .containerWrap .contactWrap .page,
  .homeContact .containerWrap .contactWrap .entry {
    width: auto;
    gap: 0.5rem;
    font-size: 1.15rem;
    border-width: 2px;
    padding: 1rem;
  }
  .homeRecruit .containerWrap .contactWrap .tel::before,
  .homeRecruit .containerWrap .contactWrap .mail::before,
  .homeRecruit .containerWrap .contactWrap .page::before,
  .homeRecruit .containerWrap .contactWrap .entry::before,
  .homeContact .containerWrap .contactWrap .tel::before,
  .homeContact .containerWrap .contactWrap .mail::before,
  .homeContact .containerWrap .contactWrap .page::before,
  .homeContact .containerWrap .contactWrap .entry::before {
    width: 48px;
    height: 48px;
    font-size: 1rem;
  }
  .homeRecruit .containerWrap .contactWrap .tel,
  .homeContact .containerWrap .contactWrap .tel {
    font-size: 1.75rem;
  }
}
@media screen and (max-width: 575px) {
  .homeRecruit .containerWrap .contactWrap .tel,
  .homeContact .containerWrap .contactWrap .tel {
    font-size: 1.5rem;
  }
  .homeRecruit .containerWrap .contactWrap .mail,
  .homeContact .containerWrap .contactWrap .mail {
    font-size: 1rem;
  }
}
.homeContact .containerWrap .contactWrap {
  align-items: flex-start;
}

.homeRecruit {
  padding-top: 0;
}

.homeContact {
  padding-left: 0;
  padding-right: 5rem;
}
.homeContact .containerWrap {
  background-color: hsl(31, 93%, 53%);
  border-radius: 0 300px 300px 0;
}
.homeContact .containerWrap::before {
  background: center/cover url(images/home/exterior_05@2x.webp) no-repeat;
}
.homeContact .containerWrap .contactWrap .tel::before,
.homeContact .containerWrap .contactWrap .mail::before {
  color: hsl(31, 93%, 53%);
}
@media (hover: hover) {
  .homeContact .containerWrap .contactWrap .tel:hover,
  .homeContact .containerWrap .contactWrap .mail:hover {
    color: hsl(31, 93%, 53%);
    background-color: hsl(31, 0%, 100%);
  }
  .homeContact .containerWrap .contactWrap .tel:hover::before,
  .homeContact .containerWrap .contactWrap .mail:hover::before {
    color: hsl(31, 0%, 100%);
    background-color: hsl(31, 93%, 53%);
  }
}

@media screen and (max-width: 1200px) {
  .homeContact {
    padding-right: 2rem;
  }
  .homeContact .containerWrap {
    border-radius: 0 32px 32px 0;
  }
}
/* CSS Document */
.homeNews,
.archiveNews {
  background-color: hsl(31, 0%, 100%);
}
.homeNews .cardWrap,
.archiveNews .cardWrap {
  display: flex;
  align-items: center;
  gap: 1rem;
  color: hsl(31, 80%, 3%);
  border-bottom: solid 1px hsl(31, 80%, 3%);
  padding: 1.25rem 2rem 1.25rem 0;
  position: relative;
  transition: all 0.2s;
}
.homeNews .cardWrap::after,
.archiveNews .cardWrap::after {
  position: absolute;
  right: 1rem;
  top: 50%;
  transform: translateY(-50%);
  font: var(--fa-font-solid);
  content: "\f178";
  transition: all 0.2s;
}
.homeNews .cardWrap:hover,
.archiveNews .cardWrap:hover {
  opacity: 0.6;
}
.homeNews .cardWrap:hover::after,
.archiveNews .cardWrap:hover::after {
  transform: translate(8px, -50%);
}
.homeNews li:first-child .cardWrap,
.archiveNews li:first-child .cardWrap {
  border-top: solid 1px hsl(31, 80%, 3%);
}

@media screen and (max-width: 991px) {
  .homeNews .cardWrap,
  .archiveNews .cardWrap {
    flex-direction: column;
    align-items: flex-start;
    gap: 0.25rem;
    padding: 1rem 1rem 1rem 0;
  }
  .homeNews .cardWrap::after,
  .archiveNews .cardWrap::after {
    right: 0;
    font-size: 0.75rem;
  }
}
.archiveService {
  background-color: hsl(31, 93%, 53%);
}
.archiveService .cateNav {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  row-gap: 0.5rem;
}
.archiveService .cateNav li {
  position: relative;
}
.archiveService .cateNav li::after {
  content: "";
  position: absolute;
  right: 0;
  top: 8px;
  width: 1px;
  height: 16px;
  background-color: hsl(31, 0%, 100%);
}
.archiveService .cateNav li:first-child::before {
  content: "";
  position: absolute;
  left: 0;
  top: 8px;
  width: 1px;
  height: 16px;
  background-color: hsl(31, 0%, 100%);
}
.archiveService .cateNav li a {
  display: block;
  line-height: 1;
  color: hsl(31, 0%, 100%);
  padding: 0.5rem 1rem;
  transition: all 0.2s;
}
@media (hover: hover) {
  .archiveService .cateNav li a:hover {
    color: hsl(31, 93%, 53%);
    background-color: hsl(31, 0%, 100%);
  }
}
@media (hover: none) {
  .archiveService .cateNav li a:hover {
    opacity: 0.6;
  }
}
.archiveService .cateNav .active a {
  color: hsl(31, 93%, 53%);
  background-color: hsl(31, 0%, 100%);
}
.archiveService .articleInner {
  transition: all 0.2s;
}
.archiveService .articleInner img {
  border-radius: 8px;
}
.archiveService .articleInner .cate {
  display: inline-block;
  font-size: 0.75rem;
  color: hsl(31, 93%, 53%);
  background-color: hsl(31, 0%, 100%);
  border-radius: 4px;
  padding: 0.15rem 0.5rem 0.05rem;
  margin-right: 0.5rem;
}
.archiveService a:hover .articleInner {
  opacity: 0.6;
}
.archiveService .pagination ul li a,
.archiveService .pagination ul li span {
  color: hsl(31, 0%, 100%);
  border: solid 1px hsl(31, 0%, 100%);
}
@media only screen and (min-width: 992px) {
  .archiveService .pagination ul li a:hover {
    color: hsl(31, 93%, 53%);
    background: hsl(31, 0%, 100%);
  }
}
.archiveService .pagination ul li.active span {
  color: hsl(31, 93%, 53%);
  background: hsl(31, 0%, 100%);
}

.pagination ul {
  display: flex;
  margin: 3rem auto 0;
}
.pagination ul li {
  width: 48px;
  height: 48px;
  margin: 0 8px;
}
.pagination ul li a,
.pagination ul li span {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
  font-size: 0.875rem;
  line-height: 1;
  color: hsl(31, 93%, 53%);
  background-color: transparent;
  border: solid 1px hsl(31, 93%, 53%);
  border-radius: 50px;
  transition: all 0.2s;
}
@media only screen and (min-width: 992px) {
  .pagination ul li a:hover {
    color: hsl(31, 0%, 100%);
    background: hsl(31, 93%, 53%);
  }
}
.pagination ul li.active span {
  color: hsl(31, 0%, 100%);
  background: hsl(31, 93%, 53%);
}

@media only screen and (max-width: 575px) {
  .pagination ul li {
    width: 40px;
    height: 40px;
    margin: 0 6px;
  }
}
/* Scss Document */
.pageSingle {
  background: hsl(31, 0%, 100%);
}
.pageSingle .cate {
  display: inline-block;
  font-size: 0.75rem;
  color: hsl(31, 80%, 3%);
  border: solid 1px hsl(31, 80%, 3%);
  border-radius: 100px;
  padding: 0.15rem 0.75rem 0.1rem;
  margin-left: 0.5rem;
}
.pageSingle .articleText {
  background-color: hsl(31, 0%, 100%);
  border: solid 8px #f7c894;
  border-radius: 16px 0;
}
.pageSingle .articleText h2,
.pageSingle .articleText h3,
.pageSingle .articleText h4 {
  clear: both;
  text-align: center;
  font-size: 1.25rem;
  color: hsl(31, 93%, 53%);
  border-top: solid 1px hsl(31, 80%, 3%);
  border-bottom: solid 1px hsl(31, 80%, 3%);
  padding: 1rem;
  margin-bottom: 1.5rem;
}
.pageSingle .articleText p {
  text-align: justify;
  margin-bottom: 1.5rem;
}
.pageSingle .articleText .wp-block-image {
  width: 100%;
  max-width: 640px;
  margin-bottom: 1.5rem;
}
.pageSingle .articleText table tr td {
  white-space: nowrap;
  border: solid 1px;
  padding: 0.5rem;
}
.pageSingle .wp-block-file {
  border-top: solid 1px hsl(31, 80%, 3%);
  border-bottom: solid 1px hsl(31, 80%, 3%);
  padding: 3rem 0;
  margin: 3rem 0;
}
.pageSingle .viewBtn a::after {
  content: none;
}
.pageSingle .viewBtn a::before {
  display: inline-block;
  font: var(--fa-font-solid);
  content: "\f177";
  margin-right: 1rem;
  transition: all 0.2s;
}
@media (hover: hover) {
  .pageSingle .viewBtn a:hover::before {
    transform: translateX(-4px);
  }
}
@media (hover: none) {
  .pageSingle .viewBtn a:hover {
    opacity: 0.6;
  }
}

.singleService {
  background: hsl(31, 93%, 53%);
}

@media only screen and (max-width: 575px) {
  .pageSingle .articleText h2 {
    font-size: 1rem;
    padding: 1rem 1rem 0.85rem;
  }
  .pageSingle .articleText h3 {
    font-size: 1.15rem;
  }
}
/*パンくず*/
.breadcrumbs-wrap {
  background: hsl(31, 0%, 100%);
  padding: 1rem;
}
.breadcrumbs-wrap .cf {
  color: hsl(31, 80%, 3%);
}
.breadcrumbs-wrap .cf li {
  display: inline-block;
}
.breadcrumbs-wrap .cf li a {
  text-decoration: none;
  color: hsl(31, 80%, 3%);
  transition: all 0.2s;
  position: relative;
}
.breadcrumbs-wrap .cf li a:after {
  content: ">";
  margin-left: 0.5rem;
  margin-right: 0.5rem;
}
.breadcrumbs-wrap .cf li a:hover {
  color: hsl(31, 93%, 53%);
}

@media only screen and (max-width: 767px) {
  .breadcrumbs-wrap {
    padding: 0.5rem;
  }
  .breadcrumbs-wrap .cf li a,
  .breadcrumbs-wrap li span {
    font-size: 0.85rem;
  }
}
/* Scss Document */
/*---------- About ----------*/
.pageAbout {
  background-color: hsl(31, 0%, 100%);
  margin-top: 5rem;
  position: relative;
  z-index: 0;
}
.pageAbout::before, .pageAbout::after {
  content: "";
  display: block;
  position: absolute;
  z-index: -2;
  bottom: 0;
  right: 0;
  width: 55%;
  height: 100%;
  background: left/cover url(images/home/exterior_04@2x.webp) no-repeat;
}
.pageAbout::before {
  z-index: -1;
  background: hsl(31, 0%, 100%);
  background: linear-gradient(90deg, hsl(31, 0%, 100%) 0%, transparent 30%, transparent 100%);
}
.pageAbout h3 {
  display: inline;
  font-size: 1.5rem;
  color: hsl(31, 80%, 3%);
  background: linear-gradient(transparent 80%, #f7c894 0%);
}
.pageAbout p {
  text-shadow: 1px 1px 1px hsl(31, 0%, 100%);
}

@media screen and (max-width: 991px) {
  .pageAbout {
    margin-top: 3rem;
  }
  .pageAbout::before, .pageAbout::after {
    content: none;
  }
}
.aboutFeature .imgWrap {
  display: block;
  box-shadow: 8px 8px 0 hsl(31, 93%, 53%);
}

/*---------- Company ----------*/
.pageCompany {
  background: hsl(31, 0%, 100%);
}
.pageCompany .innerText {
  text-align: center;
}
.pageCompany .innerText h3 {
  display: inline;
  font-size: 1.5rem;
  color: hsl(31, 93%, 53%);
  background: linear-gradient(transparent 80%, #f7f1eb 0%);
}
.pageCompany .innerText p {
  max-width: 800px;
  margin: auto;
  text-align: left;
}
.pageCompany .innerText .imgWrap {
  display: block;
  width: 100%;
  max-width: 800px;
  border-radius: 32px;
  overflow: hidden;
  margin: 3rem auto 0;
}
.pageCompany h3 {
  display: inline-block;
  font-size: 1rem;
  color: hsl(31, 0%, 100%);
  background: hsl(31, 93%, 53%);
  border-radius: 4px;
  padding: 0.25rem 1rem 0.15rem;
  margin-bottom: 1.5rem;
}
.pageCompany table {
  margin: auto;
  text-align: start;
}
.pageCompany table tr th,
.pageCompany table tr td {
  padding-bottom: 1rem;
  vertical-align: top;
}
.pageCompany table tr th {
  font-weight: 400;
  white-space: nowrap;
  padding-right: 1rem;
}
.pageCompany table tr td a {
  font-size: 0.875rem;
  color: hsl(31, 93%, 53%);
}
.pageCompany table tr td a i {
  margin-left: 0.5rem;
}

@media screen and (max-width: 575px) {
  .pageCompany table tr th,
  .pageCompany table tr td {
    padding-bottom: 0.5rem;
  }
}
/*---------- Recruit ----------*/
.pageRecruit .tableInner {
  width: 100%;
  border-radius: 16px;
  overflow: hidden;
}
.pageRecruit .tableInner dl {
  display: flex;
  margin-bottom: 0.15rem;
}
.pageRecruit .tableInner dl:last-child {
  margin-bottom: 0;
}
.pageRecruit .tableInner dl dt,
.pageRecruit .tableInner dl dd {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  width: 128px;
  font-weight: 500;
  color: hsl(31, 0%, 100%);
  background: hsl(194, 57%, 40%);
  padding: 1rem;
}
.pageRecruit .tableInner dl dd {
  width: calc(100% - 128px);
  color: hsl(31, 80%, 3%);
  background: #f2f7f9;
  margin-left: 0.15rem;
}

@media only screen and (max-width: 575px) {
  .pageRecruit .tableInner {
    border-radius: 8px;
  }
  .pageRecruit .tableInner dl dt,
  .pageRecruit .tableInner dl dd {
    width: 96px;
    padding: 0.75rem;
  }
  .pageRecruit .tableInner dl dd {
    width: calc(100% - 96px);
  }
}
.recruitFlow ul.flowArea {
  list-style: none;
  width: 100%;
  margin: 0.5rem auto;
}
.recruitFlow ul.flowArea li {
  margin-bottom: 2rem;
}
.recruitFlow ul.flowArea li .listInner {
  display: flex;
  justify-content: space-between;
  align-items: center;
  background-color: hsl(31, 0%, 100%);
  border: 2px solid hsl(31, 80%, 3%);
  border-radius: 12px;
  padding: 2rem 1rem;
  position: relative;
}
.recruitFlow ul.flowArea li .listInner h3 .step {
  display: inline-block;
  font-size: 0.875rem;
  padding-right: 1rem;
  margin-right: 1rem;
  position: relative;
}
.recruitFlow ul.flowArea li .listInner h3 .step::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  width: 1px;
  height: 100%;
  background: hsl(31, 0%, 60%);
}
.recruitFlow ul.flowArea li .listInner .arrowBtn {
  position: absolute;
  z-index: 0;
  bottom: -8px;
  left: 50%;
  transform: translateX(-50%);
  background: hsl(31, 0%, 100%);
  padding: 0 16px;
}
.recruitFlow ul.flowArea li .listInner .arrowBtn::before {
  font: var(--fa-font-solid);
  content: "\f063";
  display: block;
}
.recruitFlow ul.flowArea li:last-child {
  margin: 0;
}
.recruitFlow ul.flowArea li:last-child .listInner .arrowBtn {
  display: none;
}

@media only screen and (max-width: 575px) {
  .recruitFlow ul.flowArea li .listInner {
    height: auto;
    flex-direction: column;
  }
  .recruitFlow ul.flowArea li .listInner h3 {
    margin-bottom: 1rem;
  }
}
/* Scss Document */
/*検索窓のエリア*/
#search-btn-wrap {
  position: absolute;
  z-index: 2;
  top: 8px;
  right: 8px;
}
#search-btn-wrap #search-text {
  -webkit-appearance: none;
  width: 64px; /*テキスト入力エリアが伸びる前の横幅*/
  height: 64px;
  padding: 24px;
  border: none;
  background: #fff url(images/icon/search.svg) no-repeat 17px center;
  background-size: 32px 32px;
  transition: all 0.5s;
  outline: none;
  cursor: pointer;
  border-color: hsl(31, 93%, 53%);
  border-radius: 48px;
}
#search-btn-wrap #search-text:focus {
  width: 240px; /*テキスト入力エリアが伸びる後の横幅*/
  padding: 24px 0 24px 64px;
  border: solid 1px hsl(31, 93%, 53%);
}

.archive-information #search-btn-wrap, .search-information #search-btn-wrap {
  position: relative;
  top: auto;
  right: auto;
}
.archive-information #search-btn-wrap #search-text, .search-information #search-btn-wrap #search-text {
  width: 48px;
  height: 48px;
  padding: 24px;
  background: #fff url(images/icon/search.svg) no-repeat 11px center;
  background-size: 24px 24px;
  margin: 1.5rem auto;
}
.archive-information #search-btn-wrap #search-text:focus, .search-information #search-btn-wrap #search-text:focus {
  width: 240px; /*テキスト入力エリアが伸びる後の横幅*/
  padding: 24px 0 24px 64px;
  border: solid 1px hsl(31, 93%, 53%);
}

/* CSS Document */
.pageContact {
  /* Contact Form7 */
}
.pageContact .contactInner {
  background-color: hsl(31, 0%, 100%);
  border: solid 8px #f7c894;
  border-radius: 16px 0;
}
.pageContact input[type=text],
.pageContact input[type=password],
.pageContact input[type=datetime],
.pageContact input[type=date],
.pageContact input[type=month],
.pageContact input[type=time],
.pageContact input[type=week],
.pageContact input[type=number],
.pageContact input[type=email],
.pageContact input[type=url],
.pageContact input[type=search],
.pageContact input[type=tel],
.pageContact input[type=color],
.pageContact select,
.pageContact textarea,
.pageContact .field {
  display: block;
  width: 100%;
  height: 3rem;
  line-height: 3;
  margin-bottom: 0;
  padding: 0 1rem;
  border: none;
  border-radius: 0;
  color: hsl(31, 80%, 3%);
  background: #f3f3f3;
  border-bottom: solid 1px hsl(31, 93%, 53%);
  font-size: 1rem;
  vertical-align: middle;
  transition: background-color 0.24s ease-in-out;
}
.pageContact input,
.pageContact select,
.pageContact textarea {
  letter-spacing: 1px;
  margin: 0;
  max-width: 100%;
  resize: none;
}
.pageContact textarea {
  max-width: 100%;
  min-height: 120px;
  line-height: 1.5em;
  padding: 0.5em;
  overflow: auto;
}
.pageContact .inquiry {
  width: 100%;
  margin: 0 auto;
}
.pageContact .inquiry tbody {
  display: block;
}
.pageContact .inquiry tbody tr {
  display: block;
  margin-bottom: 2rem;
}
.pageContact .inquiry tbody tr th {
  display: block;
  font-weight: 500;
  color: hsl(31, 80%, 3%);
  margin-bottom: 0.5rem;
}
.pageContact .inquiry tbody tr th .haveto,
.pageContact .inquiry tbody tr th .any {
  display: inline-block;
  font-size: 0.75rem;
  padding: 0.15rem 0.5rem 0;
  color: hsl(31, 0%, 100%);
  background: hsl(31, 93%, 53%);
  border: solid 1px hsl(31, 93%, 53%);
  border-radius: 16px;
  margin-left: 0.5rem;
  position: relative;
}
.pageContact .inquiry tbody tr th .any {
  color: hsl(31, 80%, 3%);
  background: hsl(31, 0%, 100%);
  border-color: hsl(31, 80%, 3%);
}
.pageContact .inquiry tbody tr td {
  display: block;
}
.pageContact .wpcf7-form-control-wrap .wpcf7-list-item {
  display: block;
  margin: 0;
}
.pageContact #formbtn {
  display: block;
  background: transparent;
  color: hsl(31, 80%, 3%);
  font-size: 0.875rem;
  border: solid 2px hsl(31, 93%, 53%);
  border-radius: 100px;
  padding: 0.25rem 2rem;
  margin: 1rem auto 0;
  transition: all 0.4s;
}
.pageContact #formbtn:hover {
  background: hsl(31, 93%, 53%);
  color: hsl(31, 0%, 100%);
  cursor: pointer;
}
.pageContact #formbtn {
  opacity: 0.3;
  pointer-events: none;
}
.pageContact #formbtn.btn-active {
  opacity: 1;
  pointer-events: visible;
}
.pageContact span.wpcf7-spinner {
  display: none;
}

/* CSS Document */
.recruitEntry {
  background-color: #f2f7f9;
  /*スパム防止にチェックが入ったら*/
}
.recruitEntry .contactInner {
  background-color: hsl(31, 0%, 100%);
  border: solid 8px hsl(194, 57%, 40%);
  border-radius: 16px 0;
}
.recruitEntry input {
  -webkit-appearance: auto;
  -moz-appearance: auto;
       appearance: auto;
}
.recruitEntry input[type=text],
.recruitEntry input[type=password],
.recruitEntry input[type=datetime],
.recruitEntry input[type=date],
.recruitEntry input[type=month],
.recruitEntry input[type=time],
.recruitEntry input[type=week],
.recruitEntry input[type=number],
.recruitEntry input[type=email],
.recruitEntry input[type=url],
.recruitEntry input[type=search],
.recruitEntry input[type=tel],
.recruitEntry input[type=color],
.recruitEntry select,
.recruitEntry textarea,
.recruitEntry .field {
  display: inline-block;
  padding: 0.5rem;
  margin: 0.5rem 0;
  background: hsl(31, 0%, 100%);
  border: solid 1px hsl(31, 0%, 60%);
  transition: background-color 0.24s ease-in-out;
}
.recruitEntry textarea {
  width: 100%;
}
.recruitEntry .part-full {
  /* デフォルトのボタン */
  /* チェック後のボタン */
}
.recruitEntry .part-full .wpcf7-list-item {
  margin: 1rem 1rem 1rem 0 !important;
}
.recruitEntry .part-full .wpcf7-list-item .wpcf7-list-item-label {
  cursor: pointer;
  display: flex;
}
.recruitEntry .part-full .wpcf7-list-item .wpcf7-list-item-label::before {
  content: "";
  background: hsl(31, 0%, 100%);
  border: 1px solid hsl(31, 0%, 60%);
  border-radius: 100%; /* ラジオボタンっぽく丸くする */
  height: 1.2em;
  margin-bottom: auto;
  margin-right: 0.5em;
  margin-top: auto;
  transition: background-color 0.5s; /* 色をじんわり変化させる */
  width: 1.2em;
}
.recruitEntry .part-full input[type=radio] {
  opacity: 0; /* デフォルトのボタンを非表示 */
  position: absolute;
}
.recruitEntry .part-full input[type=radio]:checked + .wpcf7-list-item-label::before {
  background-color: hsl(194, 57%, 40%); /* チェック後の中心の色 */
  box-shadow: inset 0 0 0 3px hsl(31, 0%, 100%); /* 中心の色のスタイル */
}
.recruitEntry .inquiry {
  width: 100%;
  margin: auto;
}
.recruitEntry .inquiry tbody {
  width: 100%;
  margin: 0 auto;
}
.recruitEntry .inquiry tbody tr {
  width: 100%;
  display: flex;
  text-align: left;
  border-bottom: solid 1px hsl(31, 0%, 60%);
}
.recruitEntry .inquiry tbody tr th,
.recruitEntry .inquiry tbody tr td {
  font-size: 0.875rem;
  font-weight: 400;
  padding: 1rem 1.5rem;
}
.recruitEntry .inquiry tbody tr th {
  width: 30%;
  display: flex;
  justify-content: space-between;
  align-items: center;
  border-right: solid 1px hsl(31, 0%, 60%);
}
.recruitEntry .inquiry tbody tr th .haveto,
.recruitEntry .inquiry tbody tr th .any {
  position: relative;
  font-size: 0.75rem;
  line-height: 1rem;
  padding: 0.25rem;
  margin-left: 0.5rem;
  color: hsl(31, 0%, 100%);
  background: #f61717;
}
.recruitEntry .inquiry tbody tr th .any {
  background: hsl(31, 0%, 60%);
}
.recruitEntry .inquiry tbody tr td {
  width: 70%;
}
.recruitEntry #formbtn {
  display: block;
  padding: 16px;
  width: 100%;
  max-width: 320px;
  background: transparent;
  color: hsl(194, 57%, 40%);
  font-size: 1rem;
  border: solid 1px hsl(194, 57%, 40%);
  margin: 24px auto 0;
  transition: all 0.4s;
}
.recruitEntry #formbtn:hover {
  background: hsl(194, 57%, 40%);
  color: hsl(31, 0%, 100%);
  cursor: not-allowed;
}
.recruitEntry #formbtn {
  cursor: not-allowed;
  pointer-events: none;
}
.recruitEntry #formbtn.btn-active {
  pointer-events: visible;
}
.recruitEntry #formbtn.btn-active:hover {
  cursor: pointer;
}
.recruitEntry .wpcf7 small {
  display: block;
}
.recruitEntry .wpcf7 small a:hover {
  text-decoration: underline;
}

@media (max-width: 575px) {
  .recruitEntry input[type=text],
  .recruitEntry input[type=password],
  .recruitEntry input[type=datetime],
  .recruitEntry input[type=date],
  .recruitEntry input[type=month],
  .recruitEntry input[type=time],
  .recruitEntry input[type=week],
  .recruitEntry input[type=number],
  .recruitEntry input[type=email],
  .recruitEntry input[type=url],
  .recruitEntry input[type=search],
  .recruitEntry input[type=tel],
  .recruitEntry input[type=color],
  .recruitEntry select,
  .recruitEntry textarea,
  .recruitEntry .field {
    width: 100%;
  }
  .recruitEntry input[name=age],
  .recruitEntry input[name=your-zip-code],
  .recruitEntry input[name=your-zip-code2] {
    width: auto;
  }
  .recruitEntry .inquiry tbody tr {
    display: block;
  }
  .recruitEntry .inquiry tbody tr th,
  .recruitEntry .inquiry tbody tr td {
    display: block;
    width: 100%;
    padding: 1rem 0;
  }
  .recruitEntry .inquiry tbody tr th .age,
  .recruitEntry .inquiry tbody tr td .age {
    display: inline-block;
  }
  .recruitEntry .inquiry tbody tr th .your-zip-code,
  .recruitEntry .inquiry tbody tr th .your-zip-code2,
  .recruitEntry .inquiry tbody tr td .your-zip-code,
  .recruitEntry .inquiry tbody tr td .your-zip-code2 {
    display: inline-block;
    margin: 0 0.5rem 0.5rem;
  }
  .recruitEntry .inquiry tbody tr th {
    border-right: none;
    padding-bottom: 0;
  }
  .recruitEntry .inquiry tbody tr th p {
    margin-top: 0.5rem;
  }
}
/* Scss Document */
.page-404 {
  margin-top: 64px;
}
.page-404 .inner-text {
  text-align: center;
  color: hsl(31, 80%, 3%);
  padding-top: 5rem;
}
.page-404 .inner-text h2 {
  margin-bottom: 3rem;
}
.page-404 .inner-text h2 span {
  display: block;
  font-size: min(8vw, 3rem);
  line-height: min(12vw, 4rem);
  font-weight: bold;
}
.page-404 .inner-text p {
  margin-bottom: 3rem;
}
.page-404 .inner-text .btn-wrap {
  display: inline-block;
  color: hsl(31, 0%, 100%);
  background: hsl(31, 80%, 3%);
  border: solid 1px hsl(31, 80%, 3%);
  border-radius: 50px;
  padding: 0.5rem 1rem 0.5rem 3rem;
  transition: all 0.4s;
  position: relative;
}
.page-404 .inner-text .btn-wrap .eiji {
  font-size: 1rem;
}
.page-404 .inner-text .btn-wrap .more-btn {
  position: absolute;
  top: 50%;
  left: 1rem;
  transform: translateY(-50%);
  width: 20px;
  height: 20px;
  display: flex;
  justify-content: center;
  align-items: center;
  border: solid 1px hsl(31, 0%, 100%);
  border-radius: 50px;
}
.page-404 .inner-text .btn-wrap .more-btn i {
  font-size: 0.65rem;
}
@media only screen and (min-width: 992px) {
  .page-404 .inner-text .btn-wrap:hover {
    color: hsl(31, 80%, 3%);
    background: transparent;
  }
  .page-404 .inner-text .btn-wrap:hover .more-btn {
    border-color: transparent;
  }
}

@media only screen and (max-width: 991px) {
  .page-404 .inner-text p {
    text-align: left;
  }
}/*# sourceMappingURL=style.css.map */