@charset "utf-8";
/*! destyle.css v4.0.0 | MIT License | https://github.com/nicolas-cusan/destyle.min.css */
a,hr{color:inherit}address,blockquote,body,dl,fieldset,figure,form,h1,h2,h3,h4,h5,h6,hr,iframe,ol,p,pre,table,ul{margin:0}progress,sub,sup{vertical-align:baseline}fieldset,legend,ol,option,td,th,ul{padding:0}caption,th{text-align:left}*,::after,::before{box-sizing:border-box;border-style:solid;border-width:0}html{line-height:1.15;-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent;}details,main{display:block}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}ol,ul{list-style:none}dt{font-weight:700}dd{margin-left:0}hr{box-sizing:content-box;height:0;overflow:visible;border-top-width:1px;clear:both}code,kbd,pre,samp{font-family:monospace,monospace;font-size:inherit}address{font-style:inherit}a{background-color:transparent;text-decoration:none}abbr[title]{text-decoration:underline dotted}b,strong{font-weight:bolder}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}embed,iframe,img,object,svg{vertical-align:bottom}button,input,optgroup,select,textarea{-webkit-appearance:none;appearance:none;vertical-align:middle;color:inherit;font:inherit;background:0 0;padding:0;margin:0;border-radius:0;text-align:inherit;text-transform:inherit}[type=button],[type=reset],[type=submit],button,label[for]{cursor:pointer}[type=button]:disabled,[type=reset]:disabled,[type=submit]:disabled,button:disabled{cursor:default}:-moz-focusring{outline:auto}select:disabled{opacity:inherit}fieldset{min-width:0}textarea{overflow:auto}[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{-webkit-appearance:button;font:inherit}[type=number]{-moz-appearance:textfield}summary{display:list-item}[contenteditable]:focus{outline:auto}table{border-color:inherit;border-collapse:collapse}td,th{vertical-align:top}th{font-weight:700}

:root {
  --color-bg: #FEF7EE;
  --color-txt: #49321a;
  --color-key: #f8850e;
	--dur: .4s;
  --modal-dur: .8s;
  --modal-ease: cubic-bezier(.2, .7, .2, 1);
} 

body {
    font-family: "Noto Sans JP","游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
    font-weight: 400;
     color: var(--color-txt);
    font-size: 1.05vw;
    background: var(--color-bg);
}

.key {
 color: var(--color-key);
}
.pc {
  display: block;
}
.sp {
  display: none;
}
.jp {
 font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 400;
  font-style: normal;
}

.en {
  font-family: "Outfit", sans-serif;
  font-weight: 400;
  font-style: normal;
}

img {
  width: 100%;
}
p {
    line-height: 2;
    letter-spacing: 0.1em;
    font-feature-settings: "palt";
}
.flex {
	display: flex;
}
/* ハンバーガーメニュー */

body{
  overflow-x: hidden;
}

header {
    position: relative;
    z-index: 3;
}
.hamburger {
    width: 5.5vw;
    position: fixed;
    top: 2vw;
    right: 1.6vw;
    border-radius: 999px;
    z-index: 5;
    cursor: pointer;
    transition: .4s;
    font-weight: 600;
    border: var(--color-key) solid 0.1em;
    padding: 0.56em 0 0.5em;
    text-align: center;
    color: var(--color-key);
    background: var(--color-bg);
    line-height: 1em;
}
.hamburger:hover {
    transition: .4s;
    color: var(--color-bg);
    background: var(--color-key);
}



.point-lead .pic-wrap img {
    border-radius: 0 40px 40px 0;
}

.menu-active .hamburger {
    background: #f88714;
    color: #fff;
}
.hamburger span {
    position: absolute;
    width: 52%;
    height: 4px;
    background-color: #fefcef;
    transition: .3s;
    margin: 0 auto;
    left: 0;
    right: 0;
    border-radius: 5px;
}
.hamburger span:first-of-type {
    top: 2.15vw;
}
.hamburger span:nth-of-type(2) {
    top: 2.84vw;
}
.slide-menu {
    background: #fef7eeeb;
    position: fixed;
    top: 0;
    width: 100%;
    transition: .5s;
    height: 100%;
    z-index: 4;
    opacity: 0;
    transform: scale(0.97, 0.97);
    pointer-events: none;
}
.slide-menu-facility a {
	color: var(--color-key);
}
.menu-active .slide-menu {
  transform: translateX(0);
}
.slide-menu li a {
    text-decoration: none;
    display: inline-block;
    padding: 0.3em;
    color:var(--color-key);;
}
.slide-menu .primary li a {
    padding: 0.3em;
}
.slide-menu li.sub {
    font-size: 1em;
}
.slide-menu li .js-modal-trigger {
    cursor: pointer;
    display: inline-block;
    padding: 0 0.3em;
}

.menu-active .hamburger span:first-of-type{
  top: 50%;
  transform: rotate(45deg);    background-color: #fff;
}
.menu-active .hamburger span:nth-of-type(2){
  top: 50%;
  transform: rotate(-45deg);    background-color: #fff;
}
.menu-active .hamburger{
 

}
.slide-menu-wrap.flex {
    width: 70%;
    margin: 0 auto;
    height: 100vh;
    align-items: center;
    gap: 3em;
}
.menu-active .slide-menu {
opacity: 1;
	 transform: scale(1, 1);
	pointer-events: auto;
}
.body.menu-active {
  overflow: hidden;
  transition: .7s;
}

.slide-menu-logo {
    width: 44%;
    text-align: center;
    margin: 0 auto;
}

.nav-en {
    font-size: 60px;
    display: block;
    line-height: 1;
}
.slide-menu-link {
    width: 50%;
}
.slide-menu-facility {
    width: 50%;
}
.slide-facilities-item a {
	    display: flex;
    gap: 1.4em;
	margin-bottom: 1em;
}
.slide-facilities-item-img {
    width: 25%;
}
.slide-facilities-item-img img {
   border-radius:0.5em;
}

.slide-facilities-item-txt {
    width: 75%;
}
.slide-facilities-item-title.jp {
    font-size: 1.1em;
    font-weight: 600;
    padding: 0.5em 0;
}
.slide-facilities-item-type {
    font-size: 0.8em;
	    padding-bottom: 0.3em;
}
.slide-menu ul {
    padding-left: 2em;
}
.slide-menu-wrap li {
    font-size: 1.8em;
    text-align: left;
    font-weight: 700;
}

.slide-menu li.sub {
    font-size: 1em;
    padding-bottom: 0.8em;
}
ul.primary {
    padding-top: 2em;
}
.slide-menu-wrap .primary li {
    font-size: 1em;
    text-align: left;
    font-weight: 700;
	border-bottom: none;
}

.row-reverse {
  flex-direction: row-reverse;
}

.hero-fade {
  animation: fadeInlogo 0.5s ease forwards;
  animation-delay: 0.5s;
  opacity: 0;
}

.content {
  animation: fadeInlogo 0.5s ease forwards;
  animation-delay: 0.5s;
  opacity: 0;
}
@keyframes fadeInhero {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 0.8;
  }
}
@keyframes fadeInlogo {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}



.inner {
  width: 80%;
  margin: 0 auto;
	position: relative;
}
section#facility-philosophy .inner {
    padding: 0 5em;
}
.inner-min {
    width:52.6%;
    margin: 0 auto;
	position: relative;
}
.message .inner-min {
    width:56%;
    margin: 0 auto;
	position: relative;
}


.inner-mid {
    width:68%;
    margin: 0 auto;
	position: relative;
}
.l-sec {
  padding-top: 8em;
  position: relative;
}

.hero {
    width: 100%;
    position: relative;
    display: flex;
    justify-content: space-between;
}
#home .l-sec {
    padding-top: 10em;
}
.hero-img {
    width: 65%;
}
.hero-img img {
    border-radius: 0 6em 6em 0;
}
.hero-sub {
    width: 30%;
    position: relative;
}
.hero-sub img {
    border-radius: 4em 0 4em 4em;
}
.himawari-bg.himawari01 {
    width: 30%;
    top: 20vw;
    position: absolute;
    right: 20%;
    z-index: 2;
}
.hero-copy {
    width: 30%;
    position: absolute;
    z-index: 4;
    right: 40%;
    top: 25vw;
}
.hero-sub .hero-copy img {
    border-radius: 0;
}
.himawari-bg.himawari01 {
    width: 36%;
    top: 17vw;
    position: absolute;
    right: 20%;
    z-index: 2;
}
.hero-sub .himawari-bg img {
    border-radius: 0;
}

.more {
    text-align: center;
    padding-top: 3em;
}
.hero-txt {

}
.home-philosophy-img {
    width: 50%;
}
.home-philosophy-txt {
    width: 50%;
    padding: 0 10vw;
}
.home-philosophy-txt p {
    text-align: justify;
    font-size: 1.02em;
    line-height: 2.1em;
}
.home-service-img {
    width: 50%;
}
.home-service-txt {
    width: 50%;
    padding: 0 10vw;
}
.home-service-txt p {
    text-align: justify;
    font-size: 1.02em;
    line-height: 2.1em;
}



.home-facility-items.flex {
    gap: 2em;
}
.home-facility-item {
    width: 25%;
	transition: .4s;
}

.home-facility-item:hover {
  transform: translateY(-4px);
}


.home-facility-item-name {
    font-size: 1.15em;
    text-align: center;
    display: block;
    color: var(--color-key);
    font-weight: 600;
    line-height: 1.4;
}
.home-facility-item-name span{
    font-size: 0.80em;
    display: block;
}
.home-facility-item p {
    font-size: 0.82em;
    line-height: 1.8em;
    padding-top: 1em;
}

.more a {
    font-size: 1.03em;
    font-weight: 600;
    border: var(--color-key) solid 0.12em;
    text-align: center;
    color: var(--color-key);
    background: var(--color-bg);
    line-height: 1em;
    padding: 0.7em 2.6em 0.76em;
    border-radius: 99px;
    display: inline-block;
    transition: .4s;
    letter-spacing: 0.05em;
}
.more a:hover {
    background: var(--color-key);
    color: var(--color-bg);
}



.home-philosophy-img img {
border-radius: 7em 0 7em 7em;
}
.home-service-img img {
border-radius: 0em 7em 7em 7em;
}

.home-philosophy-copy {
    font-size: 1.1em;
    text-align: center;
    letter-spacing: 0.05em;
    line-height: 1.6em;
    padding-bottom: 1em;
    font-weight: 600;
}
.home-service-copy {
    font-size: 1.1em;
    text-align: center;
    letter-spacing: 0.05em;
    line-height: 1.6em;
    padding-bottom: 1em;
    font-weight: 600;
}
.sec-title {
width: 28em;
	margin: 0 auto;
	    padding-bottom: 4em;

}
.home-facility-item-logo {
    width: 56%;
    height: 4.5em;
    display: flex;
    align-items: flex-end;
    margin: 0 auto 1em;
}
.caretownhimawari .home-facility-item-logo {
    width: 48%;
}
.auza .home-facility-item-logo {
    width: 48%;
}

.home-facility-item-img {
    border-radius: 0.6em;
    overflow: hidden;
    margin-bottom: 1.5em;
}


.youtube {
    position: relative;
    width: 100%;
    padding-top: 56.25%;
    border: #00a73b solid 0.4em;
    border-radius: 1.4vw;
    overflow: hidden;
}
.youtube iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100%;
  height: 100%;
}


 .sec-title-wrap {
text-align: center;
	 padding-bottom: 4em;
}

.home-philosophy-txt .sec-title-wrap {
text-align: center;
	 padding: 2em 0;
}

.home-service-txt .sec-title-wrap {
text-align: center;
	 padding: 2em 0;
}

 .sec-title-jp {
    font-size: 1.6em;
    font-weight: 600;
    letter-spacing: 0.08em;
}
.sec-title-en {
    font-size: 1.12em;
    text-align: center;
    padding-top: 0.3em;
    font-weight: 600;
  color: var(--color-key);
}
#himawari-bg path {
  fill: #ffcc00; /* 例：黄色 */
}


/* ------------------------------
header
------------------------------ */


.header-nav-wrap ul {
justify-content: center;
gap:1.8em;
}

.nav-facility ul li a {
    transition: .4s;
    display: block;
}
.nav-facility ul li a:hover {

}

.footer-nav-wrap .nav-facility ul li a:hover {
background: none;
}
.hover-line {
  position: relative;
  display: inline-block;
  padding-bottom: 4px;
  overflow: hidden; /* 線がはみ出す部分を隠す */
}

.link-underline {
  position: relative;
  display: inline-block;
  padding-bottom: 4px;
  overflow: hidden;
	    padding-bottom: 0.5em;
}

.link-underline::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0px;
  height: 2px;
  width: 100%;
  background: var(--color-txt);

  transform-origin: left;             /* ← 左起点を強制 */
  transform: scaleX(0);               /* ← 0から開始 */
  transition: transform 0.35s ease;
}

/* hover時：左→右に伸びる */
.link-underline:hover::after {
  transform: scaleX(1);               /* ← 1で右端まで伸びる */
}

/* hover解除時：右へ抜けて消える */
.link-underline:not(:hover)::after {
  transform-origin: right;            /* ← 右基点に切替 */
  transform: scaleX(0);               /* ← 右方向へ消える */
  transition: transform 0.45s ease;   /* 軽く長め */
}
.key .link-underline::after {
    background: var(--color-key);
}



h1.siteid {
    position: absolute;
    width: 11em;
    top: 2.24em;
    left: 2em;
}
.header-nav-wrap {
    padding-top: 2.5em;
    padding-bottom: 2.5em;
  padding-left: 1em;
}
nav.nav-global {
font-size: 0.85em;
    font-weight: 600;
    padding-bottom: 0.2em;
    letter-spacing: 0.04em;
}
nav.nav-facility {
    font-weight: 600;
    font-size: 1.06em;
    letter-spacing: 0.08em;
}
.tel.key {
    position: absolute;
    top: 2em;
    right: 6.6em;
    font-size: 1.2em;
    font-weight: 600;
}
#recruit-bnr {
    position: relative;
    padding-top: 10em;
    margin: 0 auto;
}
.recruit-bnr-img {
    border-radius: 0em 8em 8em 0em;
    overflow: hidden;
    width: 80%;
    position: relative;
    z-index: 2;
}
.recruit-bnr-txt {
    position: absolute;
    bottom: -3vw;
    z-index: 2;
    right: 12%;
}
.recruit-bnr-txt a {
   width: 100%;
  display: block;
    background: #f8850e;
    padding: 2em;
    border-radius: 2em;
    text-align: center;
    color: #fff;
}.recruit-bnr-title {
    font-size: 1.4em;
    font-weight: 600;
    padding-bottom: 0.5em;
}
.recruit-bg {
    width: 100%;
    height: 9em;
    position: absolute;
    background: #fff;
    bottom: 0;
    z-index: 1;
}
.recruit-bnr-txt {
    position: absolute;
    bottom: 0;
    z-index: 2;
    right: 5em;
}
.home-facility-items.flex {
    gap: 2.4em;
    padding: 2em 0;
}
.recruit-bnr-img-s {
    position: absolute;
    top: 0vw;
    width: 30%;
    right: 0;
}
.recruit-bnr-copy {
    font-size: 1.6em;
    line-height: 1.5em;
    font-weight: 600;
    text-align: right;
}
.recruit-bnr-link {
    position: absolute;
    z-index: 2;
    top: 5.5em;
    right: 5.5em;
    text-align: right;
}
.recruit-bnr-link a {
    display: inline-block;
    font-size: 1.1em;
    background: #66c1b5;
    padding: .5em 2em;
    border-radius: 99px;
    margin-top: 1em;
    color: #fff;
    font-weight: 600;
	transition: .4s;
}
.recruit-bnr-link a:hover {
    background: #49321a;
}



/* ------------------------------
page
------------------------------ */
.page-hero {
    align-items: center;
}
.page-hero-img {
    width: 65%;
    border-radius: 8em 0 0 8em;
    overflow: hidden;
}
.page-title-wrap {
    width: 35%;
    margin: 0 auto;
    box-sizing: border-box;
    padding-left: 10%;
}
.page-title-jp.jp {
    font-size: 2.3em;
    font-weight: 500;
    letter-spacing: 0.05em;
}
.page-title-en.en {
    font-size: 1.2em;
    padding-top: 0.4em;
    font-weight: 600;
    padding-left: 0.18em;
    color: var(--color-key);
}
.job-description-list-title.jp {
    font-size: 1.2em;
    font-weight: 600;
    padding-bottom: 1em;
}
.job-description-list ul {
	column-gap: 1em;
}
.job-description-list li {
    width: 25%;
}
.job-description-list li a {
    width: 100%;
    border-radius: 999px;
    transition: .4s;
    font-weight: 600;
    border: #f8730e solid 0.15em;
    padding: 0.8em 0 0.8em;
    text-align: center;
    color: #f8730e;
    background: #fff9f4;
    line-height: 1em;
    display: block;
}
.job-description-list li a:hover {
    color: #fff9f4;
    background: #f8730e;
}
.page-lead {

}
.btn {
    padding-top: 3em;
    text-align: center;
}
.btn a {
    font-size: 1.1em;
    font-weight: 600;
    border: var(--color-key) solid 0.12em;
    text-align: center;
    color: var(--color-key);
    background: var(--color-bg);
    line-height: 1em;
    padding: 0.7em 2.6em 0.7em;
    border-radius: 99px;
    display: inline-block;
  transition: .4s;
}
.btn a:hover {
    color: var(--color-bg);
    background:var(--color-key);
  transition: .4s;
}
.page-lead p {
    font-size: 1.1em;
    line-height: 2.2em;
  text-align: justify;
  padding-bottom: 1em;
}
.page-lead-copy.jp {
    font-size: 1.6em;
    text-align: center;
    line-height: 1.6;
    padding-bottom: 1em;
    font-weight: 600;
}
.job-point-item-pic {
    width: 50%;
  padding-bottom: 3em;
}
.job-point-item-pic img{
    border-radius: 2em;
}
.job-point-item.flex {
    padding-bottom: 3em;
}
.job-point-item-txt {
    padding: 2em 0 0 5em;
    width: 50%;
}
.row-reverse .job-point-item-txt {
    padding: 2em 5em 0 0;
}

.job-point-item-txt p {
line-height: 2;
    letter-spacing: 0.1em;
    font-feature-settings: "palt";
  text-align: justify;
}
.job-point-items {
    padding-bottom: 4em;
}
.job-point-item-txt-copy {
    font-size: 1.5em;
    font-weight: 600;
    line-height: 1.4em;
    padding-bottom: 1em;
}
.job-voice-item {
    height: 100%;
    cursor: pointer;
  transition: .4s;
  padding-right: 2em;
}

.job-voice-item:hover {
 transform: translateY(-6px); /* 少し上に */
}
.job-voice-item:hover img {
  box-shadow: 0 10px 24px rgba(0,0,0,0.12); /* 影で浮かせる効果 */
}

section.l-sec.voice {
    background: #f3e9dd;
    border-radius: 0 6em 6em 0;
padding: 6em 0;
}
section.l-sec.voice .inner {
margin-left: 12%;
    width: 88%;
}
.job.jp {
    text-align: center;
    background: var(--color-txt);
    display: inline-block;
    color: #fff;
    padding: 0.4em 1em;
    font-size: 0.88em;
    margin-bottom: 0.6em;
    border-radius: 1em;
line-height: 1em;
}
.sec-subtitle-en.en {
    text-align: left;
    font-size: 1.5em;
    color: var(--color-key);
    font-weight: 600;
}
.job-voice-item-pic {
    
}
.job-voice-item-pic img {
    border-radius: 1em;
    margin-bottom: 1.4em;
}
.job-voice-item-txt {
    width: 100%;
    text-align: center;
}
.job-voice-item-txt-copy {
    font-size: 0.85em;
    line-height: 1.6em;
    padding: 1em 0 2em;
    text-align: justify;
}
.job-voice-item-txt-name {
    font-weight: 600;
    padding-bottom: 0.6em;
    font-size: 1.2em;
    padding-left: 1em;
}

span.san {
    font-size: 0.7em;
    padding-left: 0.4em;
}
.job-voice-item-txt-summary {
    font-size: 0.84em;
  line-height: 1.5;
}
.toggle_title-name {
    font-size: 1.4em;
    padding-bottom: 0.4em;
    font-weight: 600;
}
.job-item-facility {
    font-size: 1.1em;
    font-weight: 600;
    padding: 0 0.3em 0.8em;
}
.job-items-wrap {
    padding: 1.5em 0 1.5em 1em;
    cursor: pointer;
    border-bottom: #dfdbd5 solid 1px;
}
.job-items {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    gap: 0.8em;
}
.job-item-btn {
    color: #49321a;
    background: #fff;
    padding: 1.2em;
    border-radius: 10px;
    transition: .4s;
    cursor: pointer;
    width: calc(33.3333% - 0.8em);
    box-shadow: rgba(0, 0, 0, 0.15) 0px 1px 4px;
}

.job-item-btn:hover {
    transition: .4s;
     transform: translateY(-4px);
	box-shadow: rgba(0, 0, 0, 0.30) 0px 1px 4px;
}
.job-item-jobname {
    font-size: 1em;
    font-weight: 600;
    padding-bottom: 0.5em;
}
.job-item-jobtype {
    font-size: 0.8em;
    line-height: 1.3em;
}
.modal-facility-name {
    padding-top: 1em;
    font-weight: 600;
    font-size: 0.9em;
}
.modal-content-inner {
    padding: 3em;
}
.modal-content-inner p{
    font-size: 0.9em;
    line-height: 1.8em;
}
.modal-job-copy {
    font-weight: 600;
    font-size: 1.1em;
    padding-bottom: 1em;
}
.modal-job {
    font-weight: 600;
    display: inline-block;
    background: #f8850e;
    color: #fff;
    padding: 0.6em 1em;
    margin: 0.5em 0 1em;
    border-radius: 5px;
}
.modal-job-copy {
    font-weight: 600;
    font-size: 1.3em;
    padding-bottom: 0.8em;
    padding-top: 0.6em;
}
.job-detail table {
    margin: 2em 0;
}




.job-detail th {
    font-weight: 500;
    padding: 1em;
    border-bottom: #bdb7b1 solid 1px;
    width: 8em;
   line-height: 1.6;
    font-size: 0.9em;
}
.job-detail td {
    font-weight: 400;
    padding: 1em;
    border-bottom: #bdb7b1 solid 1px;
    line-height: 1.6;
    font-size: 0.9em;
}
.job-detail table {
  width: 100%;
}

.modal-content-inner .btn a {
    background: #ffffff;
}
.modal-content-inner .btn a:hover {
    color: #ffffff;
    background: var(--color-key);
    transition: .4s;
}
.modal-content-inner .modal__close.txt {
    position: relative;
    background: #fff;
    top: auto;
    left: auto;
    color: #f88b19;
    border: none;
    width: 8em;
    height: 2em;
    line-height: 2em;
    display: block;
    margin: 1em auto 0;
    font-size: 1em;
    font-weight: 700;
    transition: .4s;
    cursor: pointer;
    box-sizing: border-box;
    right: auto;
}



/* ------------------------------
facilities
------------------------------ */
.facility-hero {
    display: flex;
    flex-direction: row-reverse;
}
.facility-hero-img {
    width: 65%;
}.facilities-list {
       padding: 3em 0 8em;
}
.facility-hero-type {
    font-size: 0.96em;
    font-weight: 600;
    padding-bottom: 0.6em;
}
.facility-hero-type a{
text-decoration: underline;
}



.facility-hero-img img {
    border-radius: 6em 0 6em 6em;
}
.facility-hero-txt {
    width: 35%;
    padding: 5em 4em 0 6em;
}
.facility-hero-name {
    text-align: center;
}
.facility-hero-name-logo {
    padding-bottom: 1em;
    width: 75%;
    margin: 0 auto;
}
#caretown-himawari .facility-hero-name-logo {
    width: 65%;
}
#auza .facility-hero-name-logo {
    width: 65%;
	    padding-right: 5%;
}
.facilities-item-types.flex {
    flex-wrap: wrap;
    padding-bottom: 0.5em;
}
.hover-card {
  transition: transform 0.4s ease, box-shadow 0.4s ease;
}

/* ホバー時：少し拡大＋シャドウ */
.hover-card:hover {
  transform: scale(1.01); /* 1.0〜1.05くらいが無難 */
  box-shadow: 0 8px 20px rgba(0, 0, 0, 0.1);
}
.facilities-item-type {
    font-size: 0.78em;
    padding: 0.5em 0.7em 0.55em;
    margin-right: 0.4em;
    border-radius: 0.3em;
    font-weight: 500;
    line-height: 1em;
    display: inline-block;
    margin-bottom: 0.5em;
    background: #f8850e;
    color: #fff;
}
.facility-service-status-link {
    padding-top: 1em;
    font-size: 0.9em;
    text-decoration: underline;
    text-align: right;
}

.facility-hero-name-txt {
    font-size: 1em;
    text-align: center;
    font-weight: 600;
    padding-bottom: 1.2em;
    letter-spacing: 0.08em;
}
.facility-hero-txt p {
    font-size: 0.92em;
    line-height: 1.8em;
    padding-bottom: 2em;
	text-align: justify;
}
.facility-hero-tag.tag {
    font-size: 0.78em;
    border: var(--color-key) solid 0.1em;
       padding: 0.5em 0.7em 0.55em;
    margin-right: 0.4em;
    color: var(--color-key);
    line-height: 1em;
      border-radius: 0.3em;
    font-weight: 500;
}

.facility-hero-tags.flex {
    justify-content: flex-start;
    padding-bottom: 1em;
}
.facility-hero-no {
    font-weight: 600;
    padding-bottom: 0.5em;
}
.facility-hero-address {
    line-height: 1.6em;
    font-size: 0.88em;
}
.facility-info-item {
    border-bottom: #ddd8d4 solid 1px;
}

.facility-info-item a {
    display: block;
    width: 100%;
    padding: 1.4em;
    transition: .4s;
}
.facility-info-item a:hover {
background: #fff;
    transition: .4s;
	box-shadow: 0 8px 20px rgba(0, 0, 0, 0.1);
	border-radius: 0.5em;    transform: scale(1.01);
}	

.facility-info-item:last-child a {
    border-bottom: none;
}
.info-list-summary {
    display: flex;
    align-items: center;
    justify-content: flex-start;
}

.facility-info-item-cat {
    font-weight: 600;
    font-size: 0.74em;
    text-align: center;
    background: #fabe00;
    padding: 0.6em 0.7em 0.5em;
    margin-right: 1em;
    display: inline-block;
    line-height: 1em;
    border-radius: 3px;
}
.info-facility-name {
    font-size: 0.9em;
    font-weight: 600;
    padding-right: 1em;
}
.facility-info-item-cat.cat-news {
    background: #fabe00;
}
.facility-info-item-cat.cat-recruit {
    background: #66c1b5;
    color: #fff;
}
.facility-info-item-cat.cat-event {
    background: #937665;
    color: #fff;
}
.facility-info-item-data {
    font-size: 0.85em;
    padding-right: 1em;
    display: inline-block;
}
.facility-info-item-title {
    display: block;
    padding-top: 0.5em;
}
.facility-philosophy-item.flex {
    gap: 3.6em;
  padding-bottom: 4em;
}

.facility-philosophy-item.flex.bottom0 {
  padding-bottom: 0;
}


.facility-philosophy-img {
    width: 40%;
}
.facility-philosophy-img img {
  border-radius: 2em;
}
.facility-philosophy-txt {
    width: 60%;
}
.facility-philosophy-copy {
    font-size: 1.32em;
    padding: 0 0 1em 0;
    font-weight: 600;
    line-height: 1.6em;
}
.facility-service-tags {
    justify-content: flex-start;
    padding-bottom: 0.8em;
  display: flex;
}
.facility-service-tag.tag {
    font-size: 0.78em;
    border: #56421d solid 0.1em;
    padding: 0.5em 0.7em 0.55em;
    margin-right: 0.4em;
    border-radius: 0.3em;
    font-weight: 500;
    line-height: 1em;
}
.facility-service-title.jp {
    font-size: 2em;
    font-weight: 600;
    line-height: 1.2em;
    padding-bottom: 0.5em;
}
.facility-service-status {
    display: flex;
    justify-content: flex-start;
    gap: 1em;
    padding: 0.76em 1.4em;
    background: #f2e9e2;
    border-radius: 0.3em;
    font-size: 0.88em;
    position: relative;
    align-items: center;
}
.target {
    font-weight: 600;
    padding-bottom: 1.5em;
      letter-spacing: 0.04em;
}
.facility-service-status-capacity-data {
    position: absolute;
    top: 1.5em;
    right: 2em;
    font-size: 0.78em;
    z-index: 2;
}
.facility-service-status dl {
    display: flex;
    align-items: center;
    padding-left: 1em;
}
.facility-service-status dt {
    font-weight: 400;
    padding-right: 1em;
}
.facility-service-status dd {
    font-weight: 600;
    color: #fff;
    background: #56421d;
    padding: 0.43em 0.8em;
    border-radius: 0.3em;
    font-size: 0.92em;
}
.facility-service-status dd.available {
    color: #f8730e;
    background: #fff;
}
.tab-content-sec {
    padding-top: 5em;
}
.tab-content-sec.facility-service-summary {
    padding-top: 3em;
}
.facility-service-summary.flex.row-reverce {
    gap: 2.5em;
    flex-direction: row-reverse;
}
.facility-service-summary-txt {
    width: 60%;
}
.facility-service-summary-txt.w100 {
    width: 100%;
}

.txt-inner {
  padding: 0 1em;
}
.facility-service-summary-txt p {
padding-bottom: 1em;
}



.facility-service-summary-pic {
    width: 40%;
}
.facility-service-summary-pic img {
border-radius: 1em;
}
.facility-service-outline table {
    border-bottom: #d7d1cd solid 1px;
	width: 100%;
}
.facility-service-outline th {
    font-weight: 600;
    font-size: 0.92em;
    padding: 1.15em;
    border-top: #d7d1cd solid 1px;
    width: 10em;
  line-height: 1.6em;
}
.facility-service-outline td {
    font-size: 0.9em;
    padding: 1.15em;
    border-top: #d7d1cd solid 1px;
     line-height: 1.6em;
  font-weight: 400;
}
.facility-service-gallery {
    justify-content: space-between;
    flex-wrap: wrap;
}
.facility-service-gallery-item {
    width: 25%;
    width: calc(25% - 1em);
}
.facility-service-gallery-item img {
border-radius: 0.8em;
}
.facility-service-gallery-item p {
    font-size: 0.8em;
    line-height: 1.4em;
    padding-top: 1em;
	text-align: center;
}

.facility-service-status-capacity {
    font-size: 1.1em;
    font-weight: 600;
}
.tab-content-sec-title {
    padding: 0.8em 1.2em;
    background: #f2e9e2;
    border-radius: 0.3em;
    font-size: 1.15em;
    font-weight: 600;
  margin-bottom: 2em;
}
.pdf-links li {
    padding-bottom: 0.8em;
    position: relative;
    padding-left: 3.6em;
}
.pdf-ico {
  display: block;
  width: 4em;
  font-size: 0.7em;
  font-weight: 600;
  color: #FFFFFF;
  background: #d73939;
  text-align: center;
  padding: 0.4em;
  border-radius: 0.2em;
  position: absolute;
  left: 0;
  top: 0;
}
.pdf-name {
text-decoration: underline;
}
.swiper-slide {
    overflow: hidden;
}



.facility-outline-table {
    padding: 3em 0;
}
.facility-outline .facility-outline-table {
    padding: 3em 0 0;
}
section#facility-access {
    padding-bottom: 8em;
}



.facility-outline-table th {
    font-weight: 600;
    font-size: 0.92em;
    padding: 1.15em;
    border-top: #d7d1cd solid 1px;
    width: 10em;
    line-height: 1.6em;
}
.facility-outline-table td {
    font-size: 0.92em;
    padding: 1.15em;
    border-top: #d7d1cd solid 1px;
    line-height: 1.6em;
    font-weight: 400;
}
.facility-outline-table table {
    border-bottom: #d7d1cd solid 1px;
	margin: 1em 0;
}
.price-table table {
 margin: 1em 0;
    width: 100%;
}

.price-table thead th {
    background: #7d654b;
    color: #fff;
    font-size: 0.8em;
    padding: 1em 0.3em;
    font-weight: 500;
	max-width: 6em;
	vertical-align: middle;
	text-align: center
}
.price-table tbody th {
    font-size: 0.8em;
    vertical-align: middle;
    line-height: 1em;
    text-align: left;
    padding: 1.3em 0.8em;
    background: #a1886d;
    color: #fff;
}
.price-table tbody td {
text-align: center;
    font-size: 0.8em;
    padding: 1em 0.8em;
	border-top: #977c5f solid 1px;
    border-bottom: #977c5f solid 1px;
	border-left: #977c5f dotted 1px;
    vertical-align: middle;
    line-height: 1em;
}
.price-table tbody td:first-child {
border-left: none;
}
ul.sup.indent {
    padding-top: 1em;
}
ul.sup.indent li {
    font-size: 0.9em;
    line-height: 1.4em;
    padding-bottom: 0.2em;
    text-indent: -1em;
    padding-left: 1em;
}

.price-table-title {
    font-size: 0.95em;
    font-weight: 600;
    padding: 3em 0 1em;
}

.price-table tbody tr:nth-child(2n) {
    background: #f5f4f2;
}
.job-voice-items {
  overflow: hidden;   /* はみ出し防止 */
  padding-bottom: 32px; /* 下にページネーション分の余白 */
}
.sup.txt-right {
    font-size: 0.85em;
    text-align: right;
}


.job-voice-pagination {
  margin-top: 16px;
  text-align: center;
      padding-right: 12%;
}
.access-map iframe{
width: 100%;
    border-radius: 2em;
    margin-bottom: 2em;
}

footer {
    padding: 11em 0 2em;
    background: #fff;
}
footer nav.nav-facility {
    width: 60%;
    margin: 0 auto;
}
footer nav.nav-facility {
    width: 60%;
    margin: 0 auto;
}
.footer-siteid {
    width: 45%;
    padding-left: 5%;
}
.footer-logo {
    width: 45%;
    padding-right: 5%;
    border-right: #49321a solid 1px;
}
.footer-name {
    font-size: 1.1em;
    font-weight: 600;
    padding-bottom: 0.3em;
}
.footer-tel.en {
    padding-top: 0;
    font-size: 2em;
    font-weight: 600;
}
.footer-addless {
    font-size: 0.85em;
}
.footer-inner {
    width: 80%;
    margin: 0 auto;
}
.footer-inner nav.nav-global {
    font-size: 1.1em;
	    padding-bottom: 0.8em;
}
.footer-inner .flex {
    gap: 1.5em;
    justify-content: center;
}
.footer-inner .footer-logo-wrap.flex {
    width: 50%;
    margin: 0 auto;
    padding-bottom: 3em;
    gap: 0;
}
.footer-inner .nav-facility .flex {
    gap: 2.5em;
}

.footer-inner .nav-facility li:nth-child(1) {
    width: 30%;
}
.footer-inner .nav-facility li:nth-child(2) {
    width: 20%;
}
.footer-inner .nav-facility li:nth-child(3) {
    width: 30%;
}
.footer-inner .nav-facility li:nth-child(4) {
    width: 20%;
}




.copyright {
    font-size: 0.8em;
    text-align: center;
    padding-top: 6em;
}nav.nav-primary.jp {
    padding-bottom: 4em;
    font-weight: 600;
    font-size: 0.9em;
}
/* ------------------------------
Tabs
------------------------------ */
.tab-switch {
    display: flex;
    flex-wrap: wrap;
    margin-inline: auto;
    border-radius: 1.2em;
    background: #fff;
    border: var(--color-key) solid 0.2em;
    overflow: hidden;
}

/* タブボタン */
.tab-switch label {
    padding: 1.4em 0.2em;
     border: var(--color-key) solid 0.2em;
    cursor: pointer;
    order: -1;
    text-align: center;
    font-weight: 600;
    width: 25%;
    align-items: center;
    display: flex;
    justify-content: center;
    line-height: 1.3em;
    color: var(--color-key);
    border-top: 0;
    border-left: 0;
	transition: .4s;
}
.tab-switch label.nobd {
     border-right:none;
}




.tab-switch label:hover {
background: var(--color-key);
    color:#fff;
}




/* ラジオ非表示 */
.tab-switch input {
  display: none;
}

/* コンテンツ非表示 */
.tab-content {
  display: none;
  width: 100%;
     padding: 5em;
}

/* 選択されたタブ＋コンテンツ表示 */
.tab-switch label:has(:checked) {
  background: var(--color-key);
  color: #fff;
}
.tab-switch label:has(:checked) + .tab-content {
  display: block;
}

/* ------------------------------
acordion
------------------------------ */
.toggle_title {
    font-weight: 500;
    margin: 0;
    padding: 1.5em 0;
    position: relative;
    cursor: pointer;
    transition: 0.4s;
    border-bottom: #7d654b solid 1px;
}
.dli-plus-wrap {
    width: 26px;
    height: 26px;
    right: 1em;
    top: 36%;
    border-radius: 99px;
    display: inline-block;
    position: absolute;
    background: #f8850e;
}
.dli-plus {
    position: absolute;
    vertical-align: middle;
    color: #ffffff;
    line-height: 1;
    width: 12px;
    height: 2px;
    background: currentColor;
    right: 7px;
    top: 12px;
}

.toggle_title .ico-q {
    font-weight: 700;
    color: #62b9df;
    font-size: 1.6em;
    position: absolute;
    left: 0.2em;
    top: 0.36em;
}
  
  .dli-plus::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: inherit;
    border-radius: inherit;
    transform: rotate(90deg);
    transition: 0.4s;
}
  .is-open .dli-plus::before {
    transform: translateY(-50%) rotate(180deg);
    transition: 0.4s;
}

  .toggle_txt {
 max-height: 0; transition: max-height 0.3s ease;
   overflow: hidden;
}



/* 開いている時の状態 */
.toggle_title.is-open + .toggle_txt {
  max-height: 6000px; /* 中身より少し大きめの値にしておく */
}

/* ------------------------------
 MODAL
------------------------------ */
.modal {
  position: fixed;
  inset: 0;
  place-items: center;
  z-index: 1000;
  transition: .5s;
  /* 初期状態は見えない */
  visibility: hidden;
  pointer-events: none;
}
.modal[aria-hidden="true"] .modal__overlay {
  opacity: 0;
}
.modal[aria-hidden="true"] .modal__panel {
  opacity: 0;
  transform: scale(.98);
}
.modal[aria-hidden="false"] {
  visibility: visible;
  pointer-events: auto;
}
.modal__overlay {
    position: absolute;
    inset: 0;
    background: rgb(239 229 223 / 90%);
    transition: opacity var(--modal-dur) var(--modal-ease);
}
.modal__wrap {
    height: 100vh;
    overflow-y: scroll;
    padding: 5em 0;
    width: 100%;
}
.modal__panel {
    position: relative;
    overflow: hidden;
    border-radius: 2em;
    box-sizing: border-box;
    width: 65%;
    background: #fff;
    transition: opacity var(--modal-dur) var(--modal-ease),
    transform var(--modal-dur) var(--modal-ease);
    margin: 0 auto;
}
.modal-hero-copy {
    position: absolute;
    bottom: -3.5em;
    background: #fff;
    border-radius: 1em;
    padding: 1.3em;
    text-align: center;
    z-index: 2;
    left: 4em;
}
.modal-hero .job-voice-item-txt-name {
    font-weight: 600;
    padding-bottom: 0.6em;
    font-size: 1.3em;
    padding-left: 1em;
}
.modal-hero .job.jp {
    text-align: center;
    background: var(--color-txt);
    display: inline-block;
    color: #fff;
    padding: 0.4em 1em;
    margin-bottom: 0.6em;
    border-radius: 1em;
    line-height: 1em;
    font-size: 1em;
    font-weight: 500;
}
.modal-hero {
    overflow: visible;
    position: relative;
}
.modal-items {
    width: 80%;
    margin: 0 auto;
  padding: 5em 0;
}
.modal-items {
    padding-bottom: 2em;
    text-align: justify;
    font-size: 1.06em;
}
.modal-item-title {
    font-size: 1.12em;
    font-weight: 600;
    padding-bottom: 1em;
    position: relative; /* ← 必須 */
    display: inline-block; /* ← タイトルの長さに合わせる */
}

.modal-item-title::after {
    content: "";
    position: absolute;
    top: 30%;
    transform: translateY(-50%);
    right: -90px;
    width: 80px;
    height: 1px;
    background-color: #988571;
}

.modal-item-img {
      padding: 3em 0 4em;
}

.modal-item-img img {
 border-radius: 2em;
}
.modal-lead {
    font-size: 1.6em;
    line-height: 1.6em;
    font-weight: 600;
    padding-bottom: 2em;
    letter-spacing: 0.03em;
}


.modal-content {

}
.modal__title {
  font-weight: 700;
  text-align: center;
  font-size: var(--font-size-lg);
  padding: var(--padding-sm) 0 0;

}
.modal__close {
    position: absolute;
top: 1em;
    right: 1em;
    inline-size: 2em;
    block-size: 2em;
    border: none;
    border-radius: 999px;
    background: var(--color-key);
    font-size: 1.3em;
    line-height: 1;
    cursor: pointer;
    color: #fff;
    font-weight: 900;
    text-align: center;
}



button.modal__close.circle__close__btn {
    position: absolute;
    top: 16px;
    right: 8px;
    border: none;
    border-radius: 999px;
    background: #b59675;
    font-size: var(--font-size-lg);
    line-height: 1;
    cursor: pointer;
    z-index: 3;
    font-weight: 900;
    color: #fff;
    padding: 8px;
    text-align: center;
}
.modal__close.txt {
    position: relative;
    background: #fff;
    top: auto;
    left: auto;
    color: #49321a;
    border: #49321a solid 1px;
    width: 8em;
    height: 2em;
    line-height: 2em;
    display: block;
    margin: 0 auto 5em;
    font-size: 1.2em;
    font-weight: 700;
  transition: .4s;
  cursor: pointer;
}
.modal__close.txt:hover {
    background: #49321a;
    color: #fff;
}
/* ------------------------------
philosophy
------------------------------ */
.philosophy-copy {
    font-size: 2.8em;
    text-align: center;
    padding-bottom: 1em;
    font-weight: 500;
    line-height: 1.3em;
    letter-spacing: 0.05em;
}
.philosophy-txt {
    padding-bottom: 3em;
}
.philosophy-txt p {
    font-size: 1.08em;
    line-height: 2.2em;
    width: 62%;
    margin: 0 auto;
    text-align: justify;
  padding-bottom: 1em;
}
.message-copy {
    font-size: 1.6em;
    text-align: left;
    padding-bottom: 1em;
    line-height: 1.6;
    font-weight: 500;
}
.message-txt {
    padding-bottom: 3em;
}
.message-txt p {
    font-size: 1.08em;
    line-height: 2.2em;
  padding-bottom: 1em;
  text-align: justify;
}
section.l-sec.message {
    padding-bottom: 6em;
}
.autor {
    text-align: center;
    width: 32%;
    float: right;
    padding: 0 0 2em 2.8em;
}
.autor-name {
    font-size: 1.2em;
    padding-top: 0.4em;
    font-weight: 600;
}
.autor-img {
    margin-bottom: 1em;
}
.autor-img img {
    border-radius: 0.5em;
}
.message-job {
    font-size: 0.85em;
}

.philosophy-img {
position: absolute;
border-radius: 999px;
    overflow: hidden;
}
.philosophy-img.pic01 {
    width: 10vw;
    right: 6vw;
    top: -2vw;
}
.philosophy-img.pic02 {
    width: 8vw;
    right: 1vw;
    top: 9vw;
}
.philosophy-img.pic03 {
    width: 15vw;
    left: -7vw;
    bottom: 0vw;
}
.philosophy-img.pic04 {
    width: 6vw;
    left: 7vw;
    bottom: -7vw;
}.philosophy-title-line {
    width: 8em;
    height: 0.15em;
    border-radius: 8px;
    background: #675b4e;
    margin: 1em auto 1.5em;
}
.philosophy-title-jp.jp {
    text-align: center;
    font-size: 1.25em;
    font-weight: 600;
    letter-spacing: 0.05em;
    padding-top: 1em;
}
.facilities-item a {
    background: #fff;
    padding: 2em;
    border-radius: 1em;
    gap: 2.5em;
    margin-bottom: 1.5em;
  display: flex;
}
.facilities-item-img {
    width: 25%;
}
.facilities-item-txt {
    width: 75%;
}
.facilities-item-txt p {
    font-size: 0.9em;
    line-height: 1.5em;
}
.facilities-item-title.jp {
    font-size: 1.4em;
    font-weight: 600;
    padding-bottom: 0.5em;
}
.facilities-item-img img {
border-radius: 1em;
}
/* ------------------------------
services
------------------------------ */

.services-list {
    display: flex;
    flex-wrap: wrap;
    margin-inline: auto;
    border-radius: 1.2em;
    background: #fff;
    overflow: hidden;
    margin-top: 4em;
}
.services-list td, .services-list th {
   border-bottom: #d7d1cd solid 1px;
  border-left: #d7d1cd solid 1px;
    padding: 1em;
  font-size: 0.82em;
   font-feature-settings: "palt";
}

.services-list th {
  border-left: none;
}
.services-list thead th {
    background: #746452;
    color: #fff;
    text-align: center;
    font-size: 0.94em;
	    padding: 1.2em 1em;
}
span.service-copy {
    display: block;
    font-size: 0.88em;
    font-weight: 600;
    line-height: 1.3em;
    padding-bottom: 0.3em;
    color: var(--color-key);
}
span.service-name {
    font-size: 1.25em;
    font-weight: 600;
  line-height: 1.3em;
}

.services-list span.sup {
    display: block;
    font-size: 0.8em;
}
.services-lead {
    padding-bottom: 4em;
}
.services-list li {
    padding-bottom: 0.2em;
    line-height: 1.3em;
}
.services-list li a {
    color: var(--color-key);
    text-decoration: underline;
    font-weight: 600;
}
.services-list table {
    width: 100%;
}
.services-lead-title.jp {
    font-size: 1.7em;
    text-align: center;
    line-height: 1.6;
    padding-bottom: 1em;
    font-weight: 600;
}

span.type {
    background:var(--color-key);
    color: #fff;
    padding: 0.4em 1em 0.35em;
    line-height: 1em;
    display: inline-block;
    border-radius: 0.2em;
}

tr.type1 {
    background: #fffcfa;
}
tr.type3 {
    background: #fffcfa;
}
tr.type5 {
    background: #fffcfa;
}
section.l-sec.services {

}

/* ------------------------------
about
------------------------------ */
.sec-table th {
    border-bottom: #d7d1cd solid 1px;
    padding: 1em;
    font-feature-settings: "palt";
}

.sec-table td {
    border-bottom: #d7d1cd solid 1px;
    padding: 1em;
    font-feature-settings: "palt";
}

section.l-sec.about {
    padding-bottom: 8em;
}
.sec-table table {
	 border-top: #d7d1cd solid 1px;
width: 100%;
	margin: 1em 0;
}
.sec-map {
padding-top: 2em;
}
.sec-map iframe {
	width: 100%;
}

/* ------------------------------
about
------------------------------ */
.row-title {
    background: #49321a;
    margin: 1em 0 2em;
    padding: 1em;
    color: #fff;
    font-weight: 600;
    border-radius: 5px;
}

#disclosure .inner-min {
    padding-bottom: 3em;
}
.table-update {
    font-size: 0.88em;
    text-align: right;
}
#disclosure .inner-min p{
    letter-spacing: 0;
    padding-bottom: 1em;
}
/* ------------------------------
policy
------------------------------ */

#privacypolicy .page-title-jp.jp {
    font-size: 2em;
    letter-spacing: 0em;
}
section.l-sec.privacypolicy {
    padding-bottom: 8em;
}

#privacypolicy dt{
    font-size: 1.1em;
    line-height: 1.5em;
    padding: 0 0 1em;
}
#privacypolicy dd{
    text-indent: -1em;
    padding-left: 1em;
    line-height: 1.5em;
    padding-bottom: 0.5em;
}
#privacypolicy dl{
padding-bottom: 2em;
}
.privacypolicy-title {
    font-size: 1.3em;
    font-weight: 600;
    padding-bottom: 2em;
}

/* ------------------------------
faq
------------------------------ */
.faq-item {
    padding: 2em;
    background: #fff;
    margin-bottom: 1em;
    border-radius: 1em;
}
h3.faq-question.jp {
    font-size: 1.3em;
    font-weight: 600;
}
.faq-answer {
    padding: 1em 2em 0;
}
.faq-answer p {
   font-size: 0.94em;
	line-height: 1.7em;
	padding-bottom: 1em;
}
section.l-sec.job-opportunities {
    padding-bottom: 8em;
}

section.l-sec.faq {
    padding-bottom: 8em;
}
.job-opportunities .inner {
    width: 65%;
    margin: 0 auto;
    position: relative;
}
.job-opportunities .toggle_txt {
    background: #fff;
}
.job-opportunities table {
width: 90%;
margin: 3em auto;
  
}
.job-opportunities th {
padding: 1em;
    border-bottom: #a19c95 solid 1px;line-height: 1.6;
}
.job-opportunities td {
padding: 1em;
    border-bottom: #a19c95 solid 1px;line-height: 1.6;
}
.job-opportunities .btn {
    padding-top: 0;
    text-align: center;
    padding-bottom: 3em;
}
.job-opportunities .btn a {
background: #fff;
}
.job-opportunities .btn a:hover {
background: var(--color-key);
}
.single-facility {
    font-size: 1.1em;
    font-weight: 600;
    padding-bottom: 1.5em;
    text-align: center;
    margin-bottom: 1.5em;
    border-bottom: #b5a1a1 solid 1px;
}
#information .single-title {
    font-size: 1.6em;
    line-height: 1.5em;
    padding-bottom: 0.6em;
    font-weight: 500;
}#information .single-data {
    font-size: 0.8em;
    padding-top: 0.4em;
    padding-bottom: 2em;
    display: inline-block;
}
#information .single-body img{
    border-radius: 1em;
    margin: 1.5em 0;
}
    .single-body p{

}#information .single-body {
    padding-bottom: 6em;
}#information .single-archive-title {
    font-size: 1.1em;
    font-weight: 600;
    padding-bottom: 2em;
}
   #information section.l-sec.single {
    padding-bottom: 0;
}
   #information .single-archive-items.flex {
 
}
#information .single-archive-item-tmb {
    border-radius: 0 0.6em 0.8em;
    overflow: hidden;
    margin-bottom: 1em;
    position: relative;
}
#information .single-archive-item-title {
    font-size: 0.83em;
    line-height: 1.5em;
    font-weight: 400;
    font-feature-settings: "palt";
}
#information .single-archive-item-data {
    font-size: 0.75em;
    padding-top: 0.6em;
}
.single-archive-item-name {
    text-align: center;
    font-weight: 600;
    font-size: 0.88em;
    padding-bottom: 0.7em;
}
#information .single-cat.news {
    background: #49321a;
    display: inline-block;
    color: #fef7ee;
    font-weight: 600;
    font-size: 0.8em;
    padding: 0.5em 0.7em;
    line-height: 1em;
    margin-bottom: 0.6em;
    margin-right: 1em;
    border-radius: 3px;
}
   #information .single-cat.news {
    background: #fabe00;
    color: #fff;
}
 #information .single-cat.event {
    background: #fabe00;
    color: #4c351e;
}

    #information .single-archive-item {
    width: calc(25% - 1.4em);
    margin-bottom: 2.8em;
}
    #information .single-archive-items.flex {
     flex-wrap: wrap;
    justify-content: space-between;
}
	#information .facility-info-item-cat {
    position: absolute;
		top: 0;    border-radius: 0 0 3px 0;
}


.info-anchor {
    padding-bottom: 4em;
    text-align: center;
	font-weight: 600;
}
.info-anchor li {
 display: inline-block;
	
}
.info-anchor li:after {
content: ""
	
}
.info-anchor li a {
    padding: 0.5em 0.8em;
    font-size: 0.95em;
	line-height: 1em;
	display: block;
	transition: .4s;
	 border-radius: 3px;
}
.info-anchor li.select a {
    background: #f88a16;
    color: #fff;
    border-radius: 3px;
}
.info-anchor li a:hover {
 background: #f88a16;
    color: #fff;
	transition: .4s;
}
	#information .single-archive-item {
transition: .4s;
}
#information .single-archive-item:hover {
    transform: translateY(-4px);
}
.sec-table.outline table {
    margin: 0 0 5em;
}
.sec-table.history table {
    margin: 0 0 3em;
}

.facility-outline-slide img{
    border-radius: 2em;
}
.swiper {
padding-bottom: 40px;
}
.facility-outline-slide p {
    font-size: 0.8em;
    text-align: center;
    padding-top: 0.6em;
}
.insta-items.flex {
    gap: 1em;
}
section#facility-outline img {
	border-radius: 2em;
}
.insta-item img {
	border-radius: 0.5em;
}

.accordion-content {
  max-height: 0;
  overflow: hidden;
  transition: max-height .4s ease;
}
.accordion-header {
    background-color: #FFF;
    padding: 1.5em 3.6em;
    transition: background .3s ease;
    cursor: pointer;
    position: relative;
      border-radius: 0.3em;
}
.accordion-content {
    background-color: #ffffff;
}
.accordion-header.active .dli-plus::before {
   transform:rotate(0deg);
    transition: 0.4s;
}
.toggle_title-ico.en {
    position: absolute;
    font-size: 2em;
    font-weight: 600;
    color: #f8850e;
    left: 0.6em;
    top: 0.55em;
}
    .accordion-content-inner {
      padding: 2em 2.8em;
    }
.accordion-content-inner p {
    line-height: 1.9em;
    padding-bottom: 0.8em;
    font-weight: 500;
}
    .q-title.jp {
    font-size: 1.26em;
    font-weight: 600;
}
.accordion {
    margin-bottom: 1em;
}

/* hover */
.accordion-header:hover {
  background-color:#f8850e;
}
    .accordion-header:hover .q-title.jp{
  color: #fff;
}
    .accordion-header:hover .toggle_title-ico.en{
  color: #fff;
}



@media screen and (max-width:1600px) {
	
	 body {
font-size: 1.14vw;
} 
	
}
@media screen and (max-width:1400px) {
 body {
    font-size: 16px;
}  
.header-nav-wrap ul {
    justify-content: center;
    gap: 1em;
}
	.inner-min {
    width: 70%;
}.home-philosophy-txt {
    width: 50%;
    padding: 0 7vw;
}.home-service-txt {
    width: 50%;
    padding: 0 7vw;
}
	.home-philosophy-img img {
    border-radius: 5em 0 5em 5em;
}
	.home-service-img img {
    border-radius: 0em 5em 5em 5em;
}
	.hero-img img {
    border-radius: 0 5em 5em 0;
}.inner {
    width: 88%;
}
	.home-facility-items.flex {
    gap: 1.6em;
    padding: 2em 0;
}
	.recruit-bnr-img {
    border-radius: 0em 8em 8em 0em;
    overflow: hidden;
    width: 88%;
    position: relative;
    z-index: 2;
}
	.recruit-bnr-link {
    position: absolute;
    z-index: 2;
    top: 5em;
    right: 5em;
    text-align: right;
}
  .footer-inner .footer-logo-wrap.flex {
    width: 70%;
    margin: 0 auto;
    padding-bottom: 3em;
    gap: 0;
}
  footer nav.nav-facility {
    width: 80%;
    margin: 0 auto;
}
  #information .single-archive-items.flex {
    justify-content: space-between;
}


	.tel.key {
    position: absolute;
    top: 2em;
    right: 6em;
    font-size: 1em;
    font-weight: 600;
}.page-title-jp.jp {
    font-size: 2em;
    font-weight: 600;
    letter-spacing: 0.05em;
}.facility-hero-txt {
    width: 35%;
    padding: 3em 3em 0 3em;
}.facility-hero-txt p {
    font-size: 14px;
    line-height: 1.8em;
    padding-bottom: 2em;
    text-align: justify;
}.tab-content {
    padding: 4em;
}.slide-menu-wrap.flex {
    width: 80%;
}
}

@media screen and (max-width:1200px) {

}

@media screen and (max-width:1000px) {
 body {
    font-size: 15px;
} 
  .header-nav-wrap {
display: none;
}
  	  .pc {
    display: none;
  }
  .sp {
    display: block;
  }
h1.siteid {
    position: relative;
    width: 140px;
    top: 20px;
    left: 20px;
}
  header {
    position: relative;
    z-index: 3;
    height: 85px;
}.tel.key {
    position: absolute;
    top: 30px;
    right: 110px;
    font-size: 20px;
    font-weight: 600;
}.hamburger {
    width: 5em;
    position: fixed;
    top: 23px;
    right: 12px;
    border-radius: 999px;
    z-index: 5;
    cursor: pointer;
    transition: .4s;
    font-weight: 600;
    border: var(--color-key) solid 0.1em;
    padding: 0.56em 0 0.5em;
    text-align: center;
    color: var(--color-key);
    background: var(--color-bg);
    line-height: 1em;
    font-size: 16px;
}#home .l-sec {
    padding-top: 80px;
}.sec-title-jp {
    font-size: 20px;
    font-weight: 600;
    letter-spacing: 0.08em;
}.sec-title-en {
    font-size: 16px;
    text-align: center;
    padding-top: 0.3em;
    font-weight: 600;
    color: var(--color-key);
}.facility-info-item-cat.cat-news {
    font-weight: 600;
    font-size: 12px;
    text-align: center;
    background: #fabe00;
    padding: 0.4em 1em;
    margin-right: 1em;
}.facility-info-item-data {
    font-size: 12px;
    padding-right: 1em;
}.more a {
    font-size: 16px;
    font-weight: 600;
    border: var(--color-key) solid 0.12em;
    text-align: center;
    color: var(--color-key);
    background: var(--color-bg);
    line-height: 1em;
    padding: 0.7em 2em 0.76em;
    border-radius: 99px;
    display: inline-block;
    transition: .4s;
    letter-spacing: 0.05em;
}.home-philosophy-item.flex {
    display: block;
}.home-philosophy-img {
    width: 80%;
    margin-left: 20%;
}.home-philosophy-txt {
        width: 70%;
        padding: 0;
        margin: 0 auto;
}.home-service-item.flex {
    display: block;
}.home-service-img {
    width: 80%;
}.home-service-txt {
        width: 70%;
        padding: 0;
        margin: 0 auto;
}.home-facility-items.flex {
    gap: 0;
    padding: 0;
    justify-content: space-between;
    flex-wrap: wrap;
}.home-facility-item {
    width: calc(50% - 10px);
    transition: .4s;
    margin-bottom: 30px;
}.home-facility-item-name span {
    font-size: 13px;
    display: block;
}.home-facility-item-name {
    font-size: 15px;
    text-align: center;
    display: block;
    color: var(--color-key);
    font-weight: 600;
    line-height: 1.4;
}.home-facility-item p {
    font-size: 12px;
    line-height: 1.8em;
    padding-top: 1em;
}.recruit-bnr-copy {
    font-size: 18px;
    line-height: 1.5em;
    font-weight: 600;
    text-align: right;
}.page-title-jp.jp {
    font-size: 24px;
    font-weight: 600;
    letter-spacing: 0.05em;
}.page-title-en.en {
    font-size: 13px;
    padding-top: 0.4em;
    font-weight: 600;
    padding-left: 0.18em;
    color: var(--color-key);
}.facilities-item-title.jp {
    font-size: 20px;
    font-weight: 600;
    padding-bottom: 0.5em;
}.page-lead p {
    font-size: 15px;
    line-height: 2.2em;
    text-align: justify;
    padding-bottom: 1em;
}.facilities-item-type {
    font-size: 12px;
    padding: 0.5em 0.7em 0.55em;
    margin-right: 0.4em;
    border-radius: 0.3em;
    font-weight: 500;
    line-height: 1em;
    display: inline-block;
    margin-bottom: 0.5em;
    background: #f8850e;
    color: #fff;
}.facilities-item-txt p {
    font-size: 12px;
    line-height: 1.5em;
}.facility-hero {
    display: block;
    flex-direction: row-reverse;
}.facility-hero-img {
    width: 100%;
}.facility-hero-txt {
    width: 70%;
    padding: 3em 3em 0 3em;
    margin: 0 auto;
}.facility-hero-txt p {
    font-size: 15px;
    line-height: 1.8em;
    padding-bottom: 2em;
    text-align: justify;
}.facility-hero-type {
    font-size: 15px;
    font-weight: 600;
    padding-bottom: 0.6em;
}.sec-title-wrap {
    text-align: center;
    padding-bottom: 30px;
}.facility-philosophy-item.flex {
    padding-bottom: 30px;
    display: block;
}.facility-philosophy-img {
    width: 100%;
    margin-bottom: 20px;
}.facility-philosophy-copy {
    font-size: 18px;
    padding: 0 0 1em 0;
    font-weight: 600;
    line-height: 1.6em;
    text-align: center;
}.facility-philosophy-txt {
    width: 90%;
    margin: 0 auto;
}
  .tab-switch label {
    padding: 1.4em 0.2em;
    border: var(--color-key) solid 0.2em;
    cursor: pointer;
    order: -1;
    text-align: center;
    font-weight: 600;
    width: 33.3333%;
    align-items: center;
    display: flex;
    justify-content: center;
    line-height: 1.3em;
    color: var(--color-key);
    border-top: 0;
    border-left: 0;
    transition: .4s;
}
  .tab-switch label.nobd {
    border-right: var(--color-key) solid 0.2em;
}
  .facility-service-summary.flex.row-reverce {
    display: block;
}
  .facility-service-summary-pic {
    width: 100%;
    margin-bottom: 20px;
}.facility-service-summary-txt {
    width: 100%;
}.tab-content-sec {
    padding-top: 20px;
}.facility-service-outline th {
    font-weight: 600;
    font-size: 13px;
    padding: 10px 4px;
    width: 5em;
}.facility-service-outline td {
 font-size: 13px;
    padding: 10px 4px;
}
 .facility-service-gallery-item {
    width: calc(50% - 1em);
    margin-bottom: 20px;
} 
  .facility-service-gallery-item p {
    font-size: 12px;
    line-height: 1.4em;
    padding-top: 1em;
    text-align: center;
}.tab-content-sec-title {
    padding: 0.8em 1.2em;
    background: #f2e9e2;
    border-radius: 0.3em;
    font-size: 16px;
    font-weight: 600;
    margin-bottom: 20px;
}.pdf-ico {
    display: block;
    width: 4em;
    font-size: 10px;
    font-weight: 600;
    color: #FFFFFF;
    background: #d73939;
    text-align: center;
    padding: 0.4em;
    border-radius: 0.2em;
    position: absolute;
    left: 0;
    top: 0;
}
  .facility-outline-table th {
    font-size: 13px;
    padding: 10px 4px;
    width: 5em;
}
   .facility-outline-table td {
    font-size: 13px;
    padding: 10px 4px;
} section#facility-access {
    padding-bottom: 0;
}
  #recruit-bnr {
    position: relative;
    padding-top: 100px;
    margin: 0 auto;
}.slide-menu {
    overflow: scroll;
}
  .slide-menu-wrap.flex {
    width: 80%;
    padding-top: 40px;
}
  .slide-menu-link {
    width: 100%;
}.slide-menu-facility {
    width: 100%;
    padding-top: 40px;
}
}

@media screen and (max-width:800px) {
h1.siteid {
    position: relative;
    width: 100px;
    top: 20px;
    left: 20px;
}
.tel.key {
    position: absolute;
    top: 30px;
    right: 110px;
    font-size: 15px;
    font-weight: 600;
}.hamburger {
    font-size: 15px;
}.hero {
    width: 100%;
    position: relative;
    display: block;
    justify-content: space-between;
}.hero-img {
    width: 85%;
}.hero-sub {
    width: 50%;
    position: relative;
    margin-left: 50%;
    padding-top: 20px;
}.hero-sub img {
    border-radius: 2em 0 2em 2em;
}.hero-img img {
    border-radius: 0 2em 2em 0;
}.himawari-bg.himawari01 {
    width: 36%;
    top: 40px;
    position: absolute;
    right: auto;
    left: -30%;
    z-index: 2;
}.hero-copy {
    width: 40%;
    position: absolute;
    z-index: 4;
    right: auto;
    top: 100px;
    left: -55%;
}.inner-min {
    width: 80%;
}.facility-info-item a {
    display: block;
    width: 100%;
    padding: 14px 0;
    justify-content: flex-start;
    align-items: center;
    transition: .4s;
    border-bottom: #c3b4a5 solid 1px;
}

	
	
	.facility-info-item-data {
    font-size: 12px;
    padding-right: 1em;
    padding: 6px 0;
}.facility-info-item-title {
    font-size: 14px;
    line-height: 1.5em;
}.more a {
    font-size: 14px;
    font-weight: 600;
    border: var(--color-key) solid 0.12em;
    text-align: center;
    color: var(--color-key);
    background: var(--color-bg);
    line-height: 1em;
    padding: 0.7em 2em 0.76em;
    border-radius: 99px;
    display: inline-block;
    transition: .4s;
    letter-spacing: 0.05em;
}.home-philosophy-img {
    width: 90%;
    margin-left: 10%;
}.home-philosophy-img img {
    border-radius: 2em 0 2em 2em;
}.sec-title-en {
    font-size: 12px;
    text-align: center;
    padding-top: 0.3em;
    font-weight: 600;
    color: var(--color-key);
}.sec-title-jp {
    font-size: 18px;
    font-weight: 600;
    letter-spacing: 0.08em;
}.home-philosophy-txt .sec-title-wrap {
    text-align: center;
    padding: 2em 0 1em;
}.home-philosophy-txt {
    width: 80%;
    padding: 0;
    margin: 0 auto;
}.home-philosophy-txt p {
    text-align: justify;
    font-size: 14px;
    line-height: 2em;
}.home-service-img img {
    border-radius: 0em 2em 2em 2em;
}.home-service-img {
    width: 90%;
}.home-service-txt .sec-title-wrap {
    text-align: center;
    padding: 2em 0 1em;
}.home-service-txt {
    width: 80%;
    padding: 0;
    margin: 0 auto;
}.home-service-txt p {
    text-align: justify;
    font-size: 14px;
    line-height: 2em;
}.more {
    text-align: center;
    padding-top: 30px;
}.home-facility-item-name {
    font-size: 14px;
    text-align: center;
    display: block;
    color: var(--color-key);
    font-weight: 600;
    line-height: 1.4;
}.home-facility-item-name span {
    font-size: 11px;
    display: block;
}.home-facility-item {
    width: calc(50% - 6px);
    transition: .4s;
    margin-bottom: 30px;
}.home-facility-item-img {
    border-radius: 0.4em;
    overflow: hidden;
    margin-bottom: 1em;
}.home-facility-item p {
    font-size: 11px;
    line-height: 1.8em;
    padding-top: 1em;
}.recruit-bnr-img {
    border-radius: 0;
    overflow: hidden;
    width: 100%;
    position: relative;
    z-index: 2;
}.recruit-bg {
    width: 100%;
    height: 40px;
    position: absolute;
    background: #fff;
    bottom: 0;
    z-index: 1;
}.recruit-bnr-link {
    position: absolute;
    z-index: 2;
    top: 20px;
    right: 20px;
    text-align: right;
}.recruit-bnr-copy {
    font-size: 11px;
    line-height: 1.5em;
    font-weight: 600;
    text-align: right;
}.recruit-bnr-link a {
    display: inline-block;
    font-size: 13px;
    padding: .5em 2em;
    border-radius: 99px;
    margin-top: 1em;
    color: #fff;
    font-weight: 600;
    transition: .4s;
}footer {
    padding: 100px 0 30px;
    background: #fff;
}.footer-inner .footer-logo-wrap.flex {
    width: 90%;
    margin: 0 auto;
    padding-bottom: 3em;
    gap: 0;
}.footer-name {
    font-size: 13px;
    font-weight: 600;
    padding-bottom: 0.3em;
}.footer-addless {
    font-size: 11px;
}.footer-inner {
    width: 90%;
    margin: 0 auto;
}.footer-tel.en {
    padding-top: 0;
    font-size: 19px;
    font-weight: 600;
    padding-top: 4px;
}.footer-inner nav.nav-global {
    font-size: 1.1em;
    display: none;
}nav.nav-primary.jp {
    padding-bottom: 4em;
    font-weight: 600;
    font-size: 0.9em;
    display: none;
}.copyright {
    font-size: 10px;
    text-align: center;
    padding-top: 30px;
}.nav-facility ul li a {
    transition: .4s;
    display: block;
}.footer-inner .nav-facility .flex {
    gap: 5px;
}footer nav.nav-facility {
    width: 100%;
    margin: 0 auto;
}footer {
    padding: 50px 0 30px;
    background: #fff;
}.slide-menu-wrap.flex {
    width: 80%;
    padding-top: 40px;
    display: block;
}.slide-menu ul {
    padding-left: 0;
}.slide-facilities-item-type {
    font-size: 11px;
    padding-bottom: 0.3em;
}.slide-facilities-item-title.jp {
    font-size: 14px;
    font-weight: 600;
    padding: 0 0 10px;
}.slide-menu-facility {
    width: 100%;
    padding-top: 40px;
    padding-bottom: 40px;
}.slide-facilities-item-txt {
    width: 80%;
}.slide-facilities-item a {
    display: flex;
    gap: 12px;
    margin-bottom: 20px;
}.page-hero {
    align-items: center;
    display: block;
}.page-hero-img {
    width: 95%;
    border-radius: 4em 0 0 4em;
    overflow: hidden;
    margin-left: 5%;
}.page-title-wrap {
    width: 100%;
    margin: 0 auto;
    box-sizing: border-box;
    padding-left: 0;
    text-align: center;
    padding-top: 30px;
}.l-sec {
    padding-top: 40px;
    position: relative;
}#information .single-archive-items.flex {
    gap: 8px;
    flex-wrap: wrap;
    padding-bottom: 30px;
}#information .single-archive-items.flex {
    gap: 0;
    flex-wrap: wrap;
    padding-bottom: 30px;
    justify-content: space-between;
}#information .single-archive-item {
    width: calc(50% - 8px);
    margin-bottom: 30px;
}#information .single-archive-item-tmb {
    border-radius: 10px;
    overflow: hidden;
    margin-bottom: 1em;
	position: relative;
}


	
	#information .single-archive-item-title {
    font-size: 13px;
    line-height: 1.5em;
    font-weight: 500;
}#information .single-archive-item-data {
    font-size: 10px;
    padding-top: 1em;
}.philosophy-copy {
    font-size: 24px;
    text-align: center;
    padding-bottom: 1em;
    font-weight: 500;
    line-height: 1.3em;
    letter-spacing: 0.05em;
}.philosophy-txt p {
    font-size: 15px;
    line-height: 2.2em;
    width: 100%;
    margin: 0 auto;
    text-align: justify;
    padding-bottom: 1em;
}.philosophy-img.pic03 {
    width: 15%;
    left: -7vw;
    bottom: 0vw;
}.page-title-en.en {
    font-size: 13px;
    padding-top: 0.4em;
    font-weight: 600;
    padding-left: 0;
    color: var(--color-key);
}.page-lead-copy.jp {
    font-size: 18px;
    text-align: center;
    line-height: 1.6;
    padding-bottom: 1em;
    font-weight: 600;
}.services-list {
    
    border-radius: 5px;
    width: 900px;
}
 section.l-sec.services .inner {
    overflow-x: scroll;
    padding-bottom: 20px;
}
 .facilities-item a {
    background: #fff;
    padding: 20px;
    border-radius: 10px;
    gap: 10px;
    margin-bottom: 30px;
    display: block;
} .facilities-item-img {
    width: 100%;
    margin-bottom: 20px;
}
  .facilities-item-txt {
    width: 100%;
}.facilities-item-title.jp {
    font-size: 16px;
    font-weight: 600;
    padding-bottom: 15px;
    text-align: center;
}.facilities-item-txt p {
    font-size: 11px;
    line-height: 1.5em;
    font-weight: 400;
}.facility-hero-img img {
    border-radius: 0 0 3em 0;
}#auza .facility-hero-name-logo {
    width: 55%;
    padding-right: 5%;
}.facility-hero-txt {
    width: 100%;
    padding: 30px;
    margin: 0 auto;
}section#facility-philosophy .inner {
    padding: 0;
}.facility-philosophy-img img {
    border-radius: 10px;
}.tab-switch label {
    width: 50%;
}.tab-content {
    padding: 20px;
}.facility-service-title.jp {
    font-size: 18px;
    font-weight: 600;
    line-height: 1.2em;
    padding-bottom: 0.5em;
}.target {
    font-weight: 500;
    padding-bottom: 1.5em;
    letter-spacing: 0.04em;
    font-size: 12px;
}.facility-service-status {
    display: flex;
    justify-content: flex-start;
    gap: 1em;
    padding: 10px;
    background: #f2e9e2;
    border-radius: 0.3em;
    font-size: 11px;
    position: relative;
    align-items: center;
}.facility-service-status {
    display: flex;
    justify-content: flex-start;
    gap: 1em;
    padding: 10px;
    background: #f2e9e2;
    border-radius: 0.3em;
    font-size: 11px;
    position: relative;
    align-items: center;
    flex-wrap: wrap;
}.facility-service-status-capacity-data {
    position: relative;
    top: 1.5em;
    right: 2em;
    font-size: 0.78em;
    z-index: 2;
    display: none;
}.tab-content-sec.facility-service-summary {
    padding-top: 20px;
}.facility-service-summary-pic img {
    border-radius: 10px;
}.facility-service-summary-txt p {
    padding-bottom: 1em;
    font-size: 13px;
}.facility-service-gallery-item {
    width: calc(50% - 5px);
    margin-bottom: 20px;
}.facility-service-gallery-item img {
    border-radius: 8px;
}.facility-service-gallery-item p {
    font-size: 10px;
    line-height: 1.4em;
    padding-top: 1em;
    text-align: left;
}.pdf-name {
    text-decoration: underline;
    line-height: 1.5em;
}.pdf-ico {
    display: block;
    width: 4em;
    font-size: 10px;
    font-weight: 600;
    color: #FFFFFF;
    background: #d73939;
    text-align: center;
    padding: 0.4em;
    border-radius: 0.2em;
    position: absolute;
    left: 0;
    top: 4px;
}.sec-title-wrap {
    text-align: center;
    padding-bottom: 20px;
}.tab-switch {
    display: flex;
    flex-wrap: wrap;
    margin-inline: auto;
    border-radius: 15px;
    background: #fff;
    border: var(--color-key) solid 2px;
    overflow: hidden;
}.tab-switch label {
    padding: 20px 0.2em;
    border: var(--color-key) solid 2px;
    cursor: pointer;
    order: -1;
    text-align: center;
    font-weight: 600;
    width: 50%;
    align-items: center;
    display: flex;
    justify-content: center;
    line-height: 1.3em;
    color: var(--color-key);
    border-top: 0;
    border-left: 0;
    transition: .4s;
    font-size: 13px;
}
  .facility-outline .inner-min {
    width: 88%;
}
  .slide-menu-wrap li {
    font-size: 24px;
    text-align: left;
    font-weight: 700;
}
  
}


@media screen and (max-width:650px) {
  
  body {
    font-size: 14px;
}
  
h1.siteid {
    position: relative;
    width: 96px;
    top: 18px;
    left: 18px;
}
.hamburger {
    width: 5em;
    position: fixed;
    top: 20px;
    right: 12px;
    border-radius: 999px;
    z-index: 5;
    cursor: pointer;
    transition: .4s;
    font-weight: 600;
    border: var(--color-key) solid 0.1em;
    padding: 0.4em 0 0.4em;
    text-align: center;
    color: var(--color-key);
    background: var(--color-bg);
    line-height: 1em;
    font-size: 14px;
}
.tel.key {
    position: absolute;
    top: 26px;
    right: 95px;
    font-size: 13px;
    font-weight: 600;
}
header {
    position: relative;
    z-index: 3;
    height: 66px;
}.facility-hero-name-logo {
    padding-bottom: 1em;
    width: 65%;
    margin: 0 auto;
}.facility-info-item-data {
    font-size: 12px;
    padding-right: 1em;
    padding: 6px 0 3px;
}.facility-philosophy-copy {
    font-size: 16px;
    padding: 0 0 15px 0;
    font-weight: 600;
    line-height: 1.6em;
    text-align: center;
}.facility-philosophy-txt {
    width: 100%;
    margin: 0 auto;
}
  
  
  .tab-switch label {
    padding: 14px 10px;
}.facility-service-status dl {
    display: flex;
    align-items: center;
    padding-left: 8px;
}.facility-service-status dt {
    font-weight: 400;
    padding-right: 8px;
}.facility-service-outline td {
    font-size: 12px;
    padding: 10px 4px;
    line-height: 1.4em;
}.facility-service-outline th {
    font-weight: 600;
    font-size: 12px;
    padding: 10px 4px;
    width: 6em;
    line-height: 1.4em;
}.tab-content-sec-title {
    padding: 0.8em 1.2em;
    background: #f2e9e2;
    border-radius: 0.3em;
    font-size: 14px;
    font-weight: 600;
    margin-bottom: 20px;
}.pdf-name {
    text-decoration: underline;
    line-height: 1.5em;
    font-size: 12px;
}.facility-outline-table td {
    font-size: 12px;
    padding: 10px 4px;
    line-height: 1.4em;
}.facility-outline-table th {
    font-size: 12px;
    padding: 10px 4px;
    width: 6em;
    line-height: 1.4em;
}.access-map iframe {
    width: 100%;
    border-radius: 10px;
    margin-bottom: 2em;
}#recruit-bnr {
    position: relative;
    padding-top: 40px;
    margin: 0 auto;
}.footer-inner .footer-logo-wrap.flex {
    width: 100%;
    margin: 0 auto;
    padding-bottom: 3em;
    gap: 0;
}.footer-name {
    font-size: 12px;
    font-weight: 600;
    padding-bottom: 0.3em;
}.footer-tel.en {
    padding-top: 0;
    font-size: 17px;
    font-weight: 600;
    padding-top: 4px;
}.recruit-bnr-link {
    position: absolute;
    z-index: 2;
    top: 15px;
    right: 20px;
    text-align: right;
}.recruit-bnr-link a {
    display: inline-block;
    font-size: 12px;
    background: #f8850e;
    padding: .5em 2em;
    border-radius: 99px;
    margin-top: 8px;
    color: #fff;
    font-weight: 600;
    transition: .4s;
}
  .facility-access .inner-min {
    width: 88%;
}
  .single-archive-item {
    width: calc(50% - 8px);
    margin-bottom: 2em;
}.facility-hero-type {
    font-size: 14px;
    font-weight: 600;
    padding-bottom: 0.6em;
}
  .facility-service-status dl {
    display: flex;
    align-items: center;
    padding-left: 0;
    padding-right: 10px;
}.facility-service-status {
    display: flex;
    justify-content: flex-start;
    gap: 4px;
    padding: 10px;
    background: #f2e9e2;
    border-radius: 0.3em;
    font-size: 11px;
    position: relative;
    align-items: center;
    flex-wrap: wrap;
}.toggle_title {
    font-weight: 500;
    margin: 0;
    padding: 14px 0;
    position: relative;
    cursor: pointer;
    transition: 0.4s;
    border-bottom: #7d654b solid 1px;
    font-size: 13px;
}.dli-plus-wrap {
    width: 23px;
    height: 23px;
    right: 8px;
    top: 25%;
    border-radius: 99px;
    display: inline-block;
    position: absolute;
    background: #f8850e;
}.dli-plus {
    position: absolute;
    vertical-align: middle;
    color: #ffffff;
    line-height: 1;
    width: 9px;
    height: 2px;
    background: currentColor;
    right: 7px;
    top: 11px;
}.txt-inner {
    padding: 0;
}.pdf-links li {
    padding-bottom: 0.8em;
    position: relative;
    padding-left: 3.3em;
}
  #facility-access p {
    line-height: 1.6em;
    letter-spacing: 0.1em;
    font-feature-settings: "palt";
    font-size: 14px;
}
  .page-lead p {
    font-size: 14px;
    line-height: 2.2em;
    text-align: justify;
    padding-bottom: 1em;
}
  .job-point-item.flex {
    padding-bottom: 30px;
    display: block;
}.job-point-item-pic {
    width: 100%;
    padding-bottom: 24px;
}.job-point-item-pic img {
    border-radius: 10px;
}.job-point-item-txt {
    padding: 0;
    width: 100%;
}.job-point-item-txt-copy {
    font-size: 16px;
    font-weight: 600;
    line-height: 1.4em;
    padding-bottom: 14px;
    text-align: center;
}.job-point-item-txt p {
    line-height: 2;
    letter-spacing: 0.1em;
    font-feature-settings: "palt";
    text-align: justify;
    font-size: 14px;
}.row-reverse .job-point-item-txt {
    padding: 0;
}.job-point-items {
    padding-bottom: 0px;
}section.l-sec.voice {
    background: #f3e9dd;
    border-radius: 0 20px 20px 0;
    padding: 30px 0;
}.job-voice-item-txt-copy {
    font-size: 11px;
    line-height: 1.6em;
    padding: 1em 0 2em;
    text-align: justify;
}.modal__panel {
    position: relative;
    overflow: hidden;
    border-radius: 10px;
    box-sizing: border-box;
    width: 96%;
    background: #fff;
    transition: opacity var(--modal-dur) var(--modal-ease),
    transform var(--modal-dur) var(--modal-ease);
    margin: 0 auto;
}.modal-hero-copy {
    position: relative;
    bottom: auto;
    background: #fff;
    border-radius: 0;
    padding: 0;
    text-align: center;
    z-index: 2;
    left: 0;
    right: 0;
    margin: 30px 0;
}.modal-items {
    width: 80%;
    margin: 0 auto;
    padding: 0;
}.modal-lead {
    font-size: 16px;
    line-height: 1.6em;
    font-weight: 600;
    padding-bottom: 2em;
    letter-spacing: 0.03em;
}.modal-item-title {
    font-size: 15px;
    font-weight: 600;
    padding-bottom: 1em;
    position: relative;
    display: inline-block;
}
.modal-item p {
    line-height: 2;
    letter-spacing: 0.1em;
    font-feature-settings: "palt";
    font-size: 13px;
}.modal-item-img {
    padding: 30px 0;
}.modal-item-img img {
    border-radius: 12px;
}.modal-items {
    padding-bottom: 2em;
    text-align: left;
    font-size: 13px;
    box-sizing: border-box;
}.modal__close.txt {
    position: relative;
    background: #fff;
    top: auto;
    left: auto;
    right: auto;
    color: #49321a;
    border: #49321a solid 1px;
    width: 8em;
    height: 2em;
    line-height: 2em;
    display: block;
    margin: 0 auto 30px;
    font-size: 14px;
    font-weight: 700;
    transition: .4s;
    cursor: pointer;
    box-sizing: border-box;
}.facility-philosophy-img {
    width: 100%;
    margin-bottom: 30px;
}.target {
    font-weight: 500;
    padding-bottom: 1.5em;
    letter-spacing: 0.04em;
    font-size: 12px;
    line-height: 1.4em;
}.facility-service-status-capacity {
    font-size: 13px;
    font-weight: 600;
    width: 100%;
    padding-bottom: 3px;
}.facility-service-tag.tag {
    font-size: 10px;
    border: #56421d solid 0.1em;
    padding: 0.5em 0.7em 0.55em;
    margin-right: 0.4em;
    border-radius: 0.3em;
    font-weight: 500;
    line-height: 1em;
}
	.inner-mid {
    width: 88%;
    margin: 0 auto;
    position: relative;
}
	.job-items {
    width: 100%;
}
	.job-item-btn {
    width: 100%;
}.job-item-facility {
    font-size: 16px;
    font-weight: 600;
    padding: 0 0.3em 0.8em;
}.job-item-jobname {
    font-size: 15px;
}.job-item-jobtype {
    font-size: 12px;
    line-height: 1.3em;
}
	.job-items-wrap {
    padding: 1.5em 0 1.5em 0;
}.modal__wrap {
    padding: 0.5em 0;
}.modal-content-inner {
    padding: 2em;
}.modal__close {
    right: 0.7em;
}.modal-facility-name {

    font-size: 12px;
}.modal-job-copy {
    font-size: 18px;
    line-height: 1.5;
}.modal-content-inner p {
    font-size: 14px;
    line-height: 1.8em;
}.job-detail th {
    font-weight: 500;
    padding: 1em 0.5em;
    border-bottom: #bdb7b1 solid 1px;
    width: 6em;
    line-height: 1.6;
    font-size: 13px;
}.job-detail td {
    font-weight: 400;
    padding: 1em 0.5em;
    border-bottom: #bdb7b1 solid 1px;
    line-height: 1.6;
    font-size: 13px;
}.btn {
    padding-top: 24px;
    text-align: center;
}.job-detail table {
    margin: 20px 0;
}.contact-title {
    font-size: 18px;
    font-weight: 600;
    margin-bottom: 24px;
    text-align: center;
    letter-spacing: 0.04em;
    color: #333;
}.oubo-name {
    font-size: 16px;
    font-weight: 600;
    line-height: 1.5;
}
	
.form-item p {
    font-size: 12px;
    line-height: 1.5;
    padding-bottom: 10px;
}
	.form-privacy-lead {
    font-size: 12px;
    line-height: 1.5;
    padding-bottom: 10px;
}
	.form-item label {
    display: block;
    margin-bottom: 0.8em;
    font-weight: 600;
    color: #49321a;
    font-size: 15px;
}
	.insta-items.flex {
    gap: 0;
    justify-content: space-between;
    flex-wrap: wrap;
}.q-title.jp {
    font-size: 15px;
    font-weight: 600;
}.toggle_title-ico.en {
    position: absolute;
    font-size: 20px;
    font-weight: 600;
    color: #f8850e;
    left: 0.6em;
    top: 0.55em;
}.accordion-header {
    background-color: #FFF;
    padding: 1.2em 3em;
    transition: background .3s ease;
    cursor: pointer;
    position: relative;
    border-radius: 0.3em;
}.toggle_title-ico.en {
    position: absolute;
    font-size: 20px;
    font-weight: 600;
    color: #f8850e;
    left: 0.6em;
    top: 0.7em;
}.accordion-content-inner {
    padding: 24px;
}.accordion-content-inner p {
    line-height: 1.9em;
    padding-bottom: 0.8em;
    font-weight: 500;
    font-size: 13px;
    font-weight: 400;
}.page-title-wrap {
    padding-top: 46px;
}
}
@media screen and (max-width:450px) {

  .modal-items {
    width: 85%;
}.insta-items.flex {
    gap: 0.5em;
}.insta-item {
    width: calc(50% - 5px);
    margin-bottom: 10px;
}.btn a {
    font-size: 13px;
    padding: 0.7em 1.6em 0.7em;
}.footer-inner .nav-facility .flex {
    gap: 15px;
}.page-title-jp.jp {
    font-size: 21px;
    font-weight: 600;
    letter-spacing: 0.05em;
}
}

@media screen and (max-width:380px) {
.page-lead-copy.jp {
    font-size: 16px;
}
	.modal-lead {
    font-size: 15px;
}
}

