@charset "UTF-8";
*, *:before, *:after {
 -webkit-box-sizing: border-box;
 box-sizing: border-box;
}
/* Simple fluid media
   Note: Fluid media requires that you remove the media's height and width attributes from the HTML
   http://www.alistapart.com/articles/fluid-images/
*/
img, object, embed, video {
 max-width: 100%;
}
/* IE 6 does not support max-width so default to width 100% */
.ie6 img {
 width: 100%;
}
/*
	Dreamweaver Fluid Grid Properties
	----------------------------------
	dw-num-cols-mobile:		4;
	dw-num-cols-tablet:		8;
	dw-num-cols-desktop:	12;
	dw-gutter-percentage:	25;

	Inspiration from "Responsive Web Design" by Ethan Marcotte
	http://www.alistapart.com/articles/responsive-web-design

	and Golden Grid System by Joni Korpi
	http://goldengridsystem.com/
*/
html {
 font-size: 10px;
}
body {
 font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
 font-family: 'Noto Sans JP', sans-serif;
 font-weight: 400;
 background-color: #fff;
 color: #333333;
}
ul, ol {
 list-style: none;
}
a {
 text-decoration: none;
}
a:hover, a:visited {
 color: #ffffff;
 transition: all 0.3s;
}
a:hover {
 opacity: 0.7;
}
p {
 margin: 0;
 line-height: 1.8;
}
h1, h2, h3, h4 {
 margin: 0;
 line-height: 1;
}
.gridContainer {
 width: 90%;
 margin: auto;
 padding-left: 0;
 padding-right: 0;
}
.oli {
 font-family: omnes-pro, sans-serif;
 font-weight: 400;
 font-style: italic;
}
.olm {
 font-family: omnes-pro, sans-serif;
 font-weight: 600;
 font-style: normal;
}
.pc-mode {
 display: none;
}
.sp-mode {
 display: block;
}
.pos {
 position: relative;
}
.center {
 text-align: center;
}
.left {
 text-align: left;
}
.right {
 text-align: right;
}
.middle {
 vertical-align: middle;
}
.bottom {
 vertical-align: bottom;
}
.img-100 {
 display: block;
 width: 100%;
}
.img-50 {
 display: block;
 width: 50%;
 margin: 0 auto;
}
.img-74 {
 display: block;
 width: 100%;
}
.br-ip::before {
 content: "\A";
 white-space: pre;
}
.br-sp::before {
 content: "\A";
 white-space: pre;
}
.br-sp02::before {
 content: "";
}
.br-tab::before {
 content: "";
}
.top01 {
 padding-top: 1rem;
}
.top01 .item-text01 {
 display: block;
}
.mtop01 {
 margin-top: 1.2rem;
}
.top015 {
 padding-top: 1.5rem;
}
.top02 {
 padding-top: 2rem;
}
.top026 {
 padding-top: 2.666rem;
}
.top03 {
 padding-top: 3rem;
}
.top033 {
 padding-top: 3.333rem;
}
.top04 {
 padding-top: 4rem;
}
.top05 {
 padding-top: 5rem;
}
.top066 {
 padding-top: 6.666rem;
}
.bottom012 {
 padding-bottom: 1.2rem;
}
.bottom015 {
 padding-bottom: 1.5rem;
}
.bottom02 {
 padding-bottom: 2rem;
}
.bottom026 {
 padding-bottom: 2.66rem;
}
.bottom033 {
 padding-bottom: 3.33rem;
}
.mbottom04 {
 margin-bottom: 4.5rem;
}
.bottom045 {
 padding-bottom: 4.5rem;
}
.bottom066 {
 padding-bottom: 6.66rem;
}
.bottom07 {
 padding-bottom: 7rem;
}
.bottom08 {
 padding-bottom: 8rem;
}
.left015 {
 padding-left: 1.5rem;
}
/*  font color
---------------------------------------*/
.color-gray {
 color: #6d6f72;
}
a.color-brown01:hover, a.color-brown01:visited {
 color: #804e12;
}
.color-brown02 {
 color: #3c2000;
}
.color-white {
 color: #ffffff;
}
.color-green01 {
 color: #94cc78;
}
.color-blue01 {
 color: #0085c9;
}
.color-red01 {
 color: #e84709;
}
.color-pink {
 color: #ff9982;
}
/*  bg
---------------------------------------*/
.bg-white {
 background-color: #ffffff;
}
.bg-orange01 {
 background-color: #f29600;
}
.bg-beige01 {
 background-color: #fdf7e9;
}
.bg-green01 {
 background-color: #dfe672;
}
.bg-pink {
 background-color: #ff9982;
}
/*  border
---------------------------------------*/
.border-orange01 {
 border-bottom: 1px solid #f29600;
}
.border-green {
 border-bottom: 1px solid #94cc78;
}
.border-career01 {
 border: 2px solid #ffffff;
}
.border-career02 {
 border: 2.8px solid #ff9982;
}
/*  button
---------------------------------------*/
.round-10 {
 border-radius: 7px;
}
.round-15 {
 border-radius: 10.5px;
}
.round-20 {
 border-radius: 14px;
}
.round-50 {
 border-radius: 20px;
}
.round-staff {
 width: 80vw;
 padding: 0.8em 0;
 position: absolute;
 bottom: 0;
 left: 0;
 right: 0;
 margin: 0 auto;
}
/*  flexbox
---------------------------------------*/
.flex-box01 {
 display: -webkit-box;
 display: -ms-flexbox;
 display: flex;
 -webkit-box-align: center;
 -ms-flex-align: center;
 align-items: center;
 -webkit-box-pack: center;
 -ms-flex-pack: center;
 justify-content: center;
}
.flex-box02 {
 display: -webkit-box;
 display: -ms-flexbox;
 display: flex;
 -webkit-box-orient: vertical;
 -webkit-box-direction: normal;
 -ms-flex-direction: column;
 flex-direction: column;
}
.flex-box03 {
 display: -webkit-box;
 display: -ms-flexbox;
 display: flex;
 -webkit-box-orient: vertical;
 -webkit-box-direction: normal;
 -ms-flex-direction: column;
 flex-direction: column;
}
.flex-box04 {
 display: -webkit-box;
 display: -ms-flexbox;
 display: flex;
 -ms-flex-pack: distribute;
 justify-content: space-around;
}
.flex-box05 {
 display: -webkit-box;
 display: -ms-flexbox;
 display: flex;
 -webkit-box-pack: justify;
 -ms-flex-pack: justify;
 justify-content: space-between;
 -ms-flex-wrap: wrap;
 flex-wrap: wrap;
}
.flex-box06 {
 display: -webkit-box;
 display: -ms-flexbox;
 display: flex;
 -webkit-box-pack: center;
 -ms-flex-pack: center;
 justify-content: center;
 -webkit-box-align: center;
 -ms-flex-align: center;
 align-items: center;
 -webkit-box-orient: vertical;
 -webkit-box-direction: normal;
 -ms-flex-direction: column;
 flex-direction: column;
}
/*  hedaer
---------------------------------------*/
.header-logo {
 display: block;
 width: 53vw;
 margin: 0 auto;
}
/*  footer
---------------------------------------*/
.footer-logo {
 display: block;
 width: 53%;
 margin: 0 auto;
}
.is {
 padding: 30px 0 0 0;
 text-align: center;
}
.is img {
 width: 40px;
 height: auto;
}
.footer-left {
 width: 100%;
 padding: 0 2rem 0 2rem;
}
.footer-right {
 width: 100%;
 padding: 2rem 2rem 0 2rem;
}
.footer-text {
 font-size: 10px;
}
.copy-text {
 font-size: 10px;
}
#footer h1 {
 font-size: 18px;
 font-weight: normal;
 text-align: center;
 padding: 40px 0 0 0;
 color: #898b8e;
}
.footer_tel {
 padding-top: 0.8vw;
 font-size: 1.8vw;
 color: #999899;
 font-family: omnes-pro, sans-serif;
 font-weight: 600;
 font-style: normal;
 line-height: 1;
}
.footer_tel a {
 color: #999899;
}
/*  Content
---------------------------------------*/
.full-screen {
 width: 100%;
}
.block-title01 {
 font-size: 17px;
}
.block-title02 {
 font-size: 20px;
 border-bottom: 2px #dfe672 solid;
}
.block-title03 {
 font-size: 20px;
}
.block-text {
 font-size: 14px;
}
.item-title01 {
 font-size: 15px;
}
.item-title02 {
 font-size: 14px;
}
.item-text01 {
 font-size: 3.466vw;
}
.text-high {
 line-height: 2;
}
.footer-high {
 line-height: 2.2;
}
.text-low {
 line-height: 1.7;
}
.text-nomal {
 line-height: 1.8;
}
.text-space-005 {
 letter-spacing: -0.05em;
}
.text-space-02 {
 letter-spacing: -0.2em;
}
.text-space-04 {
 letter-spacing: -0.4em;
}
.text-space00 {
 letter-spacing: 0;
}
.text-space005 {
 letter-spacing: 0.025em;
}
.text-space01 {
 letter-spacing: 0.05em;
}
.text-space015 {
 letter-spacing: 0.075em;
}
.text-space02 {
 letter-spacing: 0.1em;
}
.text-space03 {
 letter-spacing: 0.15em;
}
.text-space04 {
 letter-spacing: 0.2em;
}
.text-space05 {
 letter-spacing: 0.3em;
}
.footer-space01 {
 letter-spacing: 0.5em;
}
.footer-space02 {
 letter-spacing: 1em;
}
.footer-space03 {
 letter-spacing: -0.1em;
}
/*  1ページ目
---------------------------------------*/
/*header*/
.top-img-sp {
 display: block;
 width: 100%;
}
.top-img-pc {
 display: none;
}
.top-text01 {
 font-size: 28px;
 white-space: nowrap;
}
.top-text02 {
 font-size: 16px;
 padding: 0 0 0.7em 0;
 white-space: nowrap;
}
.top-text03 {
 font-size: 18px;
}
.top-text04 {
 font-size: 13px;
 padding-top: 0.8em;
}
.top-img {
 padding-bottom: 3.2rem;
}
.top-title {
 padding-top: 2.7rem;
}
.top-title h2 {
 padding-bottom: 1.8rem;
}
/*profile*/
.profile-left {
 width: 85%;
 margin: 0 auto;
 text-align: center;
}
.profile-right {
 width: 87%;
 margin: 0 auto;
 padding-top: 3rem;
}
.profile-left .block-text {
 font-size: 18px;
}
.profile-left2 {
 width: 86.66%;
 margin: 0 auto;
}
.profile-left3 {
 width: 100%;
 margin: 0 auto;
 padding-top: 3rem;
}
.profile-right2 {
 width: 85%;
 margin: 0 auto;
 padding-top: 3rem;
}
.profile-career {
 width: 100%;
}
.profile-career th {
 width: 22%;
 line-height: 2;
 font-weight: 400;
 text-align: left;
}
.profile-career td {
 width: 78%;
 line-height: 2;
 font-weight: 400;
}
.profile-affiliation {
 width: 100%;
}
.profile-affiliation td {
 width: 100%;
 line-height: 2;
}
/*career*/
.career-title {
 font-size: 20px;
}
.career-text {
 font-size: 13px;
 line-height: 1.4;
}
.career-box {
 padding: 0.5em;
 width: 48%;
 line-height: 1;
 letter-spacing: 0.125em;
}
.career-note {
 line-height: 1.4;
 font-weight: normal;
}
.title-career {
 width: 100%;
 padding: 0.6em 1em;
}
.career-table {
 width: 100%;
}
.career-table tr {
 width: 100%;
 border-top: 2px solid #dfe672;
 border-bottom: 2px solid #dfe672;
}
.career-table th {
 width: 30%;
 line-height: 2.2;
}
.career-table td {
 width: 70%;
 line-height: 2.2;
}
.career-indent {
 text-indent: -1.2em;
 padding-left: 1.2em;
}
/*features*/
.features-logo {
 width: 100%;
 display: block;
 padding: 4rem 0;
}
.features-logo img {
 width: 30vw;
 display: block;
 margin: 0 auto;
}
.features-box {
 padding: 0 0 3.9rem 0;
 width: 85%;
 margin: 0 auto;
}
/* 動き
---------------------------*/
/*  menu
---------------------------------------*/
/*  googlemap枠
----------------------------------*/
.ggmap {
 position: relative;
 padding-bottom: 60%;
 padding-top: 30px;
 height: 0;
 overflow: hidden;
}
.ggmap iframe, .ggmap object, .ggmap embed {
 position: absolute;
 top: 0;
 left: 0;
 width: 100%;
 height: 100%;
}
@media only screen and (min-width: 560px) {
 html {
  font-size: 11px;
 }
 .gridContainer {
  width: 85%;
 }
 .br-ip::before {
  content: "";
 }
 .br-sp02::before {
  content: "\A";
  white-space: pre;
 }
 /*  button
---------------------------------------*/
 .round-50 {
  border-radius: 30px;
 }
 /*  hedaer
---------------------------------------*/
 /*  footer
---------------------------------------*/
 .footer-text {
  font-size: 13px;
 }
 .copy-text {
  font-size: 10px;
 }
 /*  Content
---------------------------------------*/
 .block-title01 {
  font-size: 24px;
 }
 .block-title02 {
  font-size: 26px;
 }
 .block-title03 {
  font-size: 26px;
 }
 .block-text {
  font-size: 18px;
 }
 .item-title01 {
  font-size: 17px;
 }
 .item-title02 {
  font-size: 20px;
 }
 .item-text01 {
  font-size: 14px;
 }
 /*  1ページ目
---------------------------------------*/
 /*header*/
 .top-text01 {
  font-size: 45px;
 }
 .top-text02 {
  font-size: 25px;
 }
 .top-text03 {
  font-size: 26px;
 }
 .top-text04 {
  font-size: 19px;
 }
 .top-img {
  padding-bottom: 4.3rem;
 }
 .top-title {
  padding-top: 3.8rem;
 }
 .top-title h2 {
  padding-bottom: 2.2rem;
 }
 /*profile*/
 .profile-left .block-text {
  font-size: 22px;
 }
 /*career*/
 .career-title {
  font-size: 30px;
 }
 .career-text {
  font-size: 15px;
 }
 .career-box {
  width: 42%;
 }
 .round-career {
  font-size: 12px;
 }
 .career-table th {
  width: 20%;
 }
 .career-table td {
  width: 80%;
 }
 /*features*/
 .features-title {
  font-size: 22px;
 }
}
@media only screen and (min-width: 768px) {
 html {
  font-size: 12px;
 }
 .gridContainer {
  width: 80%;
 }
 .pc-mode {
  display: block;
 }
 .sp-mode {
  display: none;
 }
 .br-sp::before {
  content: "";
 }
 .br-sp02::before {
  content: "";
 }
 .br-tab::before {
  content: "\A";
  white-space: pre;
 }
 .br-pc::before {
  content: "\A";
  white-space: pre;
 }
 .img-74 {
  display: block;
  width: 74%;
 }
 /*  border
---------------------------------------*/
 .border-career01 {
  border: 3px solid #ffffff;
 }
 /*  button
---------------------------------------*/
 .round-10 {
  border-radius: 10px;
 }
 .round-15 {
  border-radius: 15px;
 }
 .round-20 {
  border-radius: 16px;
 }
 .round-50 {
  border-radius: 40px;
 }
 .round-staff {
  padding: 0.8em 0;
  width: 37.5vw;
 }
 /*  flexbox
---------------------------------------*/
 .flex-box01 {
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
 }
 .flex-box02 {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  flex-direction: row;
 }
 .flex-box03 {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
 }
 .flex-box06 {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  flex-direction: row;
 }
 /*  hedaer
---------------------------------------*/
 .header-logo {
  width: 30vw;
 }
 /*  footer
----------------------------------*/
 .footer-logo {
  width: 28%;
 }
 .footer-left {
  width: 50%;
  padding: 0;
 }
 .footer-right {
  width: 50%;
  padding: 0 0 0 2.5rem;
  margin-top: -0.7em;
 }
 .footer-text {
  font-size: 1.25vw;
  line-height: 2.2;
 }
 .copy-text {
  font-size: 10px;
 }
 /*  Content(mediaQuery 768-)
---------------------------------------*/
 .block-title01 {
  font-size: 30px;
 }
 .block-title02 {
  font-size: 30px;
  border-bottom: 2px #dfe672 solid;
 }
 .block-title03 {
  font-size: 30px;
 }
 .block-text {
  font-size: 18.5px !important;
 }
 .item-title01 {
  font-size: 17px;
 }
 .item-title02 {
  font-size: 22px;
 }
 .item-text01 {
  font-size: 14px;
 }
 .text-space005 {
  letter-spacing: 0.0125em;
 }
 .text-space01 {
  letter-spacing: 0.025em;
 }
 .text-space015 {
  letter-spacing: 0.0375em;
 }
 .text-space02 {
  letter-spacing: 0.05em;
 }
 .text-space03 {
  letter-spacing: 0.075em;
 }
 .text-space04 {
  letter-spacing: 0.1em;
 }
 .text-space05 {
  letter-spacing: 0.2em;
 }
 .text-low {
  line-height: 1.7;
 }
 /*  1ページ目
---------------------------------------*/
 /*header*/
 .top-img-sp {
  display: none;
 }
 .top-img-pc {
  display: block;
  width: 100%;
 }
 .top-text01 {
  font-size: 38px;
 }
 .top-text02 {
  font-size: 20px;
  padding: 0.2em 0.5rem 0 0;
 }
 .top-text03 {
  font-size: 28px;
 }
 .top-text04 {
  font-size: 22px;
 }
 .top-img {
  padding-bottom: 4.3rem;
 }
 .top-title {
  padding-top: 3.8rem;
 }
 .top-title h2 {
  padding-bottom: 2.2rem;
 }
 /*profile*/
 .profile-left {
  width: 30%;
 }
 .profile-right {
  width: 70%;
  padding-left: 2rem;
  padding-top: 0;
 }
 .profile-left2 {
  width: 50%;
  margin: 0 0 0 0;
 }
 .profile-left3 {
  width: 100%;
  padding-top: 3rem;
  margin: 0 0 0 0;
 }
 .profile-right2 {
  width: 50%;
  padding-left: 4rem;
  padding-top: 0;
 }
 .profile-career th {
  width: 20%;
 }
 .profile-career td {
  width: 80%;
 }
 /*career*/
 .career-title {
  font-size: 35px;
 }
 .career-text {
  font-size: 16px;
  line-height: 1;
 }
 .career-category {
  width: 80%;
  margin: 0 auto;
 }
 .career-note {
  line-height: 1;
 }
 /*features*/
 .features-box {
  width: 30%;
 }
 /*  googlemap枠
----------------------------------*/
 .ggmap {
  padding-bottom: 35%;
 }
}
/* Desktop Layout: 769px to a max of 1232px.  Inherits styles from: Mobile Layout and Tablet Layout. */
@media only screen and (min-width: 1024px) {
 html {
  font-size: 13px;
 }
 .gridContainer {
  width: 80%;
  max-width: 1300px;
 }
 .br-tab::before {
  content: "";
 }
 /*  button
---------------------------------------*/
 .round-50 {
  border-radius: 33px;
 }
 /*  hedaer
---------------------------------------*/
 /*  footer
---------------------------------------*/
 .footer-right {
  padding: 0 0 0 3rem;
  margin-top: -0.7em;
 }
 .footer-text {
  font-size: 1.25vw;
  line-height: 2.2;
 }
 .copy-text {
  font-size: 11px;
 }
 /*  Content
---------------------------------------*/
 .block-title01 {
  font-size: 27px;
 }
 .block-title02 {
  font-size: 27px;
 }
 .block-title03 {
  font-size: 27px;
 }
 .block-text {
  font-size: 16px !important;
 }
 .item-title01 {
  font-size: 18px;
 }
 .item-title02 {
  font-size: 24px;
 }
 .item-text01 {
  font-size: 12px;
 }
 .text-high {
  line-height: 2.2;
 }
 .footer-high {
  line-height: 2.4;
 }
 .text-space005 {
  letter-spacing: 0.025em;
 }
 .text-space01 {
  letter-spacing: 0.05em;
 }
 .text-space015 {
  letter-spacing: 0.075em;
 }
 .text-space02 {
  letter-spacing: 0.09em;
 }
 .text-space03 {
  letter-spacing: 0.15em;
 }
 .text-space04 {
  letter-spacing: 0.2em;
 }
 .text-space05 {
  letter-spacing: 0.4em;
 }
 .text-space02-04 {
  letter-spacing: 0.2em;
 }
 .footer-space01 {
  letter-spacing: 0.5em;
 }
 /*  1ページ目
---------------------------------------*/
 /*header*/
 .top-text01 {
  font-size: 34px;
 }
 .top-text02 {
  font-size: 17px;
 }
 .top-text03 {
  font-size: 24px;
 }
 .top-text04 {
  font-size: 18px;
 }
 .top-img {
  padding-bottom: 3.5rem;
 }
 .top-title {
  padding-top: 3rem;
 }
 .top-title h2 {
  padding-bottom: 1.8rem;
 }
 /*profile*/
 .profile-left {
  width: 37%;
 }
 .profile-right {
  width: 63%;
  padding-left: 4rem;
 }
 .profile-career th {
  width: 15%;
 }
 .profile-career td {
  width: 85%;
 }
 /*career*/
 .career-title {
  font-size: 36px;
 }
 .career-text {
  font-size: 18px;
 }
 .career-category {
  width: 70%;
 }
}
@media only screen and (min-width: 1440px) {
 html {
  font-size: 15px;
 }
 .gridContainer {
  width: 75%;
  max-width: 1300px;
 }
 /*  button
---------------------------------------*/
 .round-20 {
  border-radius: 20px;
 }
 .round-50 {
  border-radius: 50px;
 }
 /*  hedaer
---------------------------------------*/
 /*  footer
---------------------------------------*/
 .footer-right {
  padding: 0 0 0 3.5rem;
  color: #898b8e;
  margin-top: -0.7em;
 }
 .footer-text {
  font-size: 17px;
  line-height: 2.4;
 }
 .copy-text {
  font-size: 12px;
 }
 /*  Content
---------------------------------------*/
 .block-title01 {
  font-size: 40px;
 }
 .block-title02 {
  font-size: 40px;
 }
 .block-title03 {
  font-size: 40px;
 }
 .block-text {
  font-size: 24px !important;
 }
 .item-title01 {
  font-size: 25px;
 }
 .item-title02 {
  font-size: 37px;
 }
 .item-text01 {
  font-size: 16px;
 }
 /*  1ページ目
---------------------------------------*/
 /*header*/
 .top-text01 {
  font-size: 53px;
 }
 .top-text02 {
  font-size: 26.28px;
 }
 .top-text03 {
  font-size: 32px;
 }
 .top-text04 {
  font-size: 27px;
 }
 .top-img {
  padding-bottom: 4.5rem;
 }
 .top-title {
  padding-top: 4rem;
 }
 .top-title h2 {
  padding-bottom: 2.5rem;
 }
 /*career*/
 .career-title {
  font-size: 54px;
 }
 .career-text {
  font-size: 24px;
 }
 .career-category {
  width: 78%;
 }
}
@media only screen and (max-width: 768px) {
 #profile .full-screen.bg-white.pos.mbottom04 {
  margin-bottom: 0;
 }
 #career02 .gridContainer.top066 {
  padding-top: 4.2rem;
 }
 #career01 .flex-box04 {
  display: block;
 }
 #career01 .career01link {
  padding: 2rem 0;
  display: block;
 }
 #career01 .career01link p {
  width: 64vw;
  margin: 0 auto;
  display: block;
 }
 #career01 .career01link p + p {
  margin: 1em auto 0 auto;
 }
 .features-logo img {
  width: 64vw;
 }
 .rub {
  text-align: center !important;
 }
 .profile-left img {
  width: 60%;
  margin: 0 auto;
 }
 .profile-left2 img {
  width: 60%;
  margin: 0 auto;
 }
}
#js-infiniteslide ul {
 overflow: hidden;
}
.photoSlide {
 margin-bottom: 8.533vw;
 overflow: hidden;
}
#js-infiniteslide li {
 height: 320px;
 float: left;
}
#js-infiniteslide li img {
 width: auto;
 height: 100%;
}
/*header*/
#header {
 background: #fff;
 height: 160px;
 position: fixed;
 z-index: 10;
}
.header_inner {
 max-width: 1500px;
 height: 160px;
 margin: 0 auto;
 position: relative;
}
.header_logo {
 width: 395px;
 position: absolute;
 top: 20px;
 left: 0;
}
.header_gnav {
 width: 800px;
 position: absolute;
 top: 106px;
 left: 396px;
}
.header_gnav li a, .header_tel a {
 color: #898b8e;
}
.header_gnav li a:hover, .header_tel a:hover {
 color: #94cc78;
}
.header_gnav li {
 display: inline-block;
 margin-right: 25px;
}
.header_gnav li a:hover {
 color: #94cc78;
 border-bottom: #94cc78 1px solid;
}
.header_tel {
 position: absolute;
 top: 106px;
 right: 0;
 font-family: omnes-pro, sans-serif;
 font-weight: 600;
 font-style: normal;
 font-size: 25px;
 line-height: 1;
}
.header_sns {
 position: absolute;
 top: 20px;
 right: 0;
 width: 505px;
 height: 58px;
 display: flex;
 justify-content: space-between;
}
.header_sns li {
 width: 245px;
}
.header_sns li a {
 font-weight: 400;
 font-style: normal;
 font-size: 15px;
 line-height: 1;
 color: #fff;
 border-radius: 5px;
}
.yoyaku_web a {
 width: 245px;
 height: 58px;
 background: #73B8D8;
 display: flex;
 align-items: center;
 position: relative;
}
.yoyaku_web a:before {
 content: "";
 display: inline-block;
 width: 36px;
 height: 36px;
 background-image: url("../img/02.svg");
 background-repeat: no-repeat;
 background-position: 0 top;
 background-size: contain;
 vertical-align: middle;
 margin: -2px 10px 0 15px;
}
.yoyaku_web a:after {
 content: '';
 width: 7px;
 height: 7px;
 border: 0;
 border-top: solid 2px #fff;
 border-right: solid 2px #fff;
 transform: rotate(45deg);
 position: absolute;
 top: 0;
 right: 15px;
 bottom: 0;
 margin: auto;
}
.yoyaku_line a {
 width: 245px;
 height: 58px;
 background: #06C755;
 display: flex;
 align-items: center;
 position: relative;
}
.yoyaku_line a:before {
 content: "";
 display: inline-block;
 width: 36px;
 height: 37px;
 background-image: url("../img/01.svg");
 background-repeat: no-repeat;
 background-position: 0 top;
 background-size: contain;
 vertical-align: middle;
 margin: -1px 10px 0 15px;
}
.yoyaku_line a:after {
 content: '';
 width: 7px;
 height: 7px;
 border: 0;
 border-top: solid 2px #fff;
 border-right: solid 2px #fff;
 transform: rotate(45deg);
 position: absolute;
 top: 0;
 right: 15px;
 bottom: 0;
 margin: auto;
}
@media only screen and (max-width: 1500px) {
 #header {
  height: 10.666vw;
  padding: 0 3.333vw;
 }
 .header_inner {
  height: 10.666vw;
 }
 .header_logo {
  width: 26.33vw;
  top: 1.333vw;
 }
 .header_gnav {
  position: absolute;
  top: 7vw;
  left: 26vw;
 }
 .header_gnav li a {
  font-size: 1vw;
 }
 .header_gnav li {
  display: inline-block;
  margin-right: 1.6vw;
 }
 .header_gnav li a:hover {
  color: #94cc78;
  border-bottom: #94cc78 1px solid;
 }
 .header_tel {
  position: absolute;
  top: 7vw;
  right: 0;
  font-size: 1.6666vw;
 }
 .header_sns {
  position: absolute;
  top: 1.333vw;
  right: 0;
  width: 33.667vw;
  height: 3.867vw;
  display: flex;
  justify-content: space-between;
 }
 .header_sns li {
  width: 16.333vw;
 }
 .header_sns li a {
  font-weight: 400;
  font-style: normal;
  font-size: 1vw;
  line-height: 1;
  color: #fff;
  border-radius: 0.333vw;
 }
 .yoyaku_web a {
  width: 16.333vw;
  height: 3.867vw;
  background: #73B8D8;
  display: flex;
  align-items: center;
  position: relative;
 }
 .yoyaku_web a:before {
  content: "";
  display: inline-block;
  width: 2.4vw;
  height: 2.4vw;
  background-image: url("../img/02.svg");
  background-repeat: no-repeat;
  background-position: 0 top;
  background-size: contain;
  vertical-align: middle;
  margin: -0.133vw 0.667vw 0 1vw;
 }
 .yoyaku_web a:after {
  content: '';
  width: 0.467vw;
  height: 0.467vw;
  border: 0;
  border-top: solid 2px #fff;
  border-right: solid 2px #fff;
  transform: rotate(45deg);
  position: absolute;
  top: 0;
  right: 1vw;
  bottom: 0;
  margin: auto;
 }
 .yoyaku_line a {
  width: 16.333vw;
  height: 3.867vw;
  background: #06C755;
  display: flex;
  align-items: center;
  position: relative;
 }
 .yoyaku_line a:before {
  content: "";
  display: inline-block;
  width: 2.4vw;
  height: 2.467vw;
  background-image: url("../img/01.svg");
  background-repeat: no-repeat;
  background-position: 0 top;
  background-size: contain;
  vertical-align: middle;
  margin: -0.067vw 0.667vw 0 1vw;
 }
 .yoyaku_line a:after {
  content: '';
  width: 0.467vw;
  height: 0.467vw;
  border: 0;
  border-top: solid 2px #fff;
  border-right: solid 2px #fff;
  transform: rotate(45deg);
  position: absolute;
  top: 0;
  right: 1vw;
  bottom: 0;
  margin: auto;
 }
}
@media only screen and (max-width: 768px) {
 #header {
  background: #fff;
  height: 13.333vw;
  position: fixed;
  padding: 0;
 }
 .header_inner {
  height: 13.333vw;
  position: relative;
 }
 .header_logo {
  width: 55.733vw;
  position: absolute;
  top: 1.733vw;
  left: 6.66vw;
 }
 .header_gnav {
  display: none;
 }
 .header_tel {
  position: absolute;
  display: none;
 }
}
#main {
 max-width: 1500px;
 margin: 0 auto 13.333vw auto;
 padding: 176px 0 0 0;
 position: relative;
}
#main .bnr_recruit {
 width: 500px;
 position: absolute;
 left: 50%;
 top: 820px;
 transform: translateX(-50%);
}
@media only screen and (max-width: 1500px) {
 #main {
  max-width: 1500px;
  margin: 0 auto 13.333vw auto;
  padding: 5.26vw 0 0 0;
 }
 #main .bnr_recruit {
  width: 31.333vw;
  position: absolute;
  left: 50%;
  top: 54.666vw;
  transform: translateX(-50%);
 }
}
@media only screen and (max-width: 768px) {
 #main .bnr_recruit {
  width: 80vw;
  position: absolute;
  left: 50%;
  top: 86vw;
  transform: translateX(-50%);
 }
}
.bx-wrapper {
 -moz-box-shadow: 0 0 0 #fff;
 -webkit-box-shadow: 0 0 0 #fff;
 box-shadow: 0 0 0 #fff !important;
 border: none !important;
 background: #fff;
 margin-bottom: 5.333vw !important;
}
.main_catch {
 font-size: 28px;
 color: #94cc78;
 text-align: center;
 margin-bottom: 2vw;
}
.main_read {
 font-size: 1vw;
 text-align: center;
 line-height: 2.5;
}
@media only screen and (max-width: 1500px) {
 .main_catch {
  font-size: 2vw;
  color: #94cc78;
  text-align: center;
  margin-bottom: 2vw;
 }
 .main_read {
  font-size: 1.5vw;
  text-align: center;
  line-height: 2.5;
 }
}
@media only screen and (max-width: 768px) {
 .bx-wrapper {
  margin-bottom: 8.533vw !important;
 }
 .main_catch {
  font-size: 5.8vw;
  color: #94cc78;
  text-align: center;
  margin-bottom: 8.533vw;
  line-height: 1.6;
 }
 .main_read {
  font-size: 3.73vw;
  text-align: center;
  line-height: 2;
 }
}
.cat_title {
 margin-bottom: 4vw;
 position: relative;
 display: inline-block;
 text-align: center;
}
.cat_title:before {
 content: '';
 position: absolute;
 bottom: -1.333vw;
 display: inline-block;
 width: 2.6666vw;
 height: 2px;
 left: 50%;
 -webkit-transform: translateX(-50%);
 transform: translateX(-50%);
 background-color: #94cc78;
}
.cat_title h2 {
 font-size: 2vw;
 color: #94cc78;
 margin-bottom: 1.66vw;
 line-height: 1;
 letter-spacing: 5px;
 font-weight: 500;
}
.cat_title p {
 color: #94cc78;
 font-family: omnes-pro, sans-serif;
 font-weight: 400;
 font-style: italic;
 letter-spacing: 2px;
}
.cat_read {
 font-size: 15px;
}
.link_bnr {
 width: 72vw;
 margin: 5.333vw auto 0 auto;
 background: #dfe672;
 text-align: left;
}
.link_bnr a {
 display: block;
 overflow: hidden;
 color: #333333;
}
.link_name {
 width: 50%;
 float: left;
 background: url("../img/mark.svg") no-repeat 3.8666vw 1.8666vw;
 background-size: 6.93333vw auto;
 font-size: 1.333vw;
 padding: 4vw 0 4vw 16.2666vw;
 line-height: 1;
 font-weight: 500;
 letter-spacing: 3px;
}
.link_bnr figure {
 width: 49%;
 float: left;
}
.link_bnr figure img {
 width: 100%;
 height: auto;
 vertical-align: bottom;
}
@media only screen and (max-width: 768px) {
 .cat_title {
  margin-bottom: 8.2vw;
  position: relative;
  display: inline-block;
  text-align: center;
 }
 .cat_title:before {
  content: '';
  position: absolute;
  bottom: -2vw;
  display: inline-block;
  width: 8.5vw;
  height: 1px;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  background-color: #94cc78;
 }
 .cat_title h2 {
  font-size: 5.866vw;
  color: #94cc78;
  margin-bottom: 1.66vw;
  line-height: 1.4;
  letter-spacing: 2px;
  font-weight: 500;
 }
 .cat_title p {
  color: #94cc78;
  font-family: omnes-pro, sans-serif;
  font-weight: 400;
  font-style: italic;
  letter-spacing: 2px;
  font-size: 2.66vw;
 }
 .cat_read {
  font-size: 3.466vw;
 }
 .link_bnr {
  width: 86.66vw;
  margin: 8.5vw auto 0 auto;
  background: #dfe672;
  text-align: left;
  padding-bottom: 1.6vw;
 }
 .link_bnr a {
  display: block;
  overflow: hidden;
  color: #333333;
 }
 .link_name {
  width: 100%;
  float: none;
  background: url("../img/mark.svg") no-repeat 14.933vw 2.9vw;
  background-size: 14.666vw auto;
  font-size: 4vw;
  padding: 8.5vw 0 6.2vw 32vw;
  line-height: 1;
  font-weight: 500;
  letter-spacing: 3px;
 }
 .link_bnr figure {
  width: 100%;
  float: none;
 }
 .link_bnr figure img {
  width: 100%;
  height: auto;
  vertical-align: bottom;
 }
}
#news {
 background: #fafce6;
 padding: 8vw 0;
 text-align: center;
}
#medecalItem {
 padding: 13.3333vw 0;
 text-align: center;
}
#medecalItem table {
 width: 72vw;
 margin: 0 auto;
 text-align: left;
}
#medecalItem table th {
 width: 12.6666vw;
 box-sizing: border-box;
 padding: 2.6666vw 0 2.6666vw 2.6666vw;
 color: #94cc78;
 font-size: 1vw;
 border-bottom: #94cc78 1px solid;
 border-right: #94cc78 1px solid;
 letter-spacing: 3px;
}
#medecalItem table td {
 width: 59.3333vw;
 box-sizing: border-box;
 padding: 2.6666vw 0 2.6666vw 2.6666vw;
 font-size: 1vw;
 border-bottom: #94cc78 1px solid;
 letter-spacing: 2px;
 line-height: 2;
}
#medecalItem table tr:last-child th, #medecalItem table tr:last-child td {
 border-bottom: none;
}
#reservation {
 background: #fafce6;
 padding: 8vw 0;
 text-align: center;
}
.reservation_tel {
 margin-top: 2.6666vw;
}
.reservation_tel a {
 color: #94cc78;
 font-family: omnes-pro, sans-serif;
 font-weight: 600;
 font-style: normal;
 font-size: 2.4vw;
 line-height: 1;
 letter-spacing: 3px;
}
#profile {
 padding: 13.3333vw 0;
 text-align: center;
}
#profile .gridContainer {
 text-align: left;
}
.top01 .item-text01 {
 display: inline-block;
}
#profile h3 {
 letter-spacing: 5px;
}
#staff {
 background: linear-gradient(#fafce6 50%, white 50%);
 padding: 8vw 0 12.5vw 0;
 text-align: center;
}
#staff .cat_read {
 background: url("../img/logo_mark.svg") no-repeat center bottom;
 background-size: 8vw auto;
 padding-bottom: 10vw;
 position: relative;
 z-index: 10;
}
#staff figure {
 width: 62.5vw;
 margin: -1.125vw auto 0 auto;
 position: relative;
 z-index: 5;
}
#covid {
 background: #fafafa;
 padding: 8vw 0;
 text-align: center;
}
#covid .cat_title {
 margin-bottom: 6vw;
}
.covid_list {
 width: 72vw;
 padding-top: 1.6vw;
 margin: 0 auto;
 overflow: hidden;
 text-align: left;
}
.covid_list ul {
 float: left;
 width: 35.53vw;
}
.covid_list li {
 list-style-type: none;
 padding: .1em .5em 0.8em 1em;
 position: relative;
}
.covid_list li:before {
 background-color: #94cc78; /* 円の色 */
 border-radius: 50%;
 content: '';
 position: absolute;
 top: .5em; /* 円の上側位置調整 */
 left: 0; /* 円の左側位置調整 */
 width: 10px; /* 円の幅 */
 height: 10px; /* 円の高さ */
}
#recruit {
 padding: 0px 0 5.3333vw 0;
 text-align: center;
}
#recruit .link_name {
 padding: 4vw 0 4vw 12.3333vw;
}

@media only screen and (max-width: 1500px) {
 #medecalItem table th, #medecalItem table td {
  font-size: 1.3vw;
 }
}
@media only screen and (max-width: 768px) {
 #news {
  background: #fafce6;
  padding: 13.3vw 0;
  text-align: center;
 }
 #medecalItem {
  padding: 13.3333vw 0;
  text-align: center;
 }
 #medecalItem table {
  width: 87vw;
  margin: 0 auto;
  text-align: left;
 }
 #medecalItem table th {
  width: 26vw;
  box-sizing: border-box;
  padding: 8vw 0 8vw 0;
  color: #94cc78;
  border-bottom: #94cc78 1px solid;
  border-right: #94cc78 1px solid;
  letter-spacing: 3px;
  font-size: 3vw;
  text-align: center;
  vertical-align: middle;
 }
 #medecalItem table td {
  width: 60vw;
  box-sizing: border-box;
  padding: 4.6vw 0 4.6vw 3.3vw;
  border-bottom: #94cc78 1px solid;
  letter-spacing: 2px;
  font-size: 3vw;
  line-height: 1.7;
 }
 #medecalItem table tr:last-child th, #medecalItem table tr:last-child td {
  border-bottom: none;
 }
 #reservation {
  background: #fafce6;
  padding: 13vw 0;
  text-align: center;
 }
 .reservation_tel {
  margin-top: 4.6vw;
 }
 .reservation_tel a {
  font-size: 7.466vw;
 }
 #profile {
  padding: 13.3333vw 0;
  text-align: center;
 }
 #profile .gridContainer {
  width: 100%;
 }
 #profile h3 {
  letter-spacing: 5px;
  text-align: center;
  font-size: 3.466vw
 }
 #profile .top03 {
  padding-top: 2rem;
 }
 #profile .pr-txt {
  text-align: center;
  font-size: 3.2vw;
  color: #333333;
 }
 #profile .profile-career td {
  text-align: left;
 }
 #profile .gridContainer {
  text-align: left;
 }
 .top01 .item-text01 {
  display: inline-block;
 }
 #profile h3 {
  letter-spacing: 5px;
 }
 #staff {
  background: #fafce6;
  padding: 13.33vw 0 13.33vw 0;
  text-align: center;
 }
 #staff .cat_read {
  background: url("../img/logo_mark.svg") no-repeat center bottom;
  background-size: 17vw auto;
  padding-bottom: 20vw;
  position: relative;
  z-index: 10;
 }
 #staff figure {
  width: 86.666vw;
  margin: -1.733vw auto 0 auto;
  position: relative;
  z-index: 5;
 }
 #covid {
  padding: 8vw 0;
 }
 #covid .cat_title {
  margin-bottom: 6vw;
 }
 .covid_list {
  width: 88vw;
  padding-top: 1.6vw;
  margin: 8.5vw auto 0 auto;
  overflow: hidden;
  text-align: left;
 }
 .covid_list ul {
  float: none;
  width: auto;
 }
 .covid_list li {
  list-style-type: none;
  padding: .1em .5em 0.8em 1em;
  position: relative;
  font-size: 3.2vw;
 }
 .covid_list li:before {
  background-color: #94cc78; /* 円の色 */
  border-radius: 50%;
  content: '';
  position: absolute;
  top: .5em; /* 円の上側位置調整 */
  left: 0; /* 円の左側位置調整 */
  width: 2.5vw; /* 円の幅 */
  height: 2.5vw; /* 円の高さ */
 }
 #recruit {
  padding: 0px 0 13.33vw 0;
  text-align: center;
 }
 #recruit .link_bnr {
  margin: 13.33vw auto 0 auto;
 }
 #recruit .link_name {
  width: 100%;
  float: none;
  background: url("../img/mark.svg") no-repeat 5.3vw 2.9vw;
  background-size: auto;
  background-size: 14.666vw auto;
  font-size: 4vw;
  padding: 8vw 0 6.4vw 21.6vw;
  line-height: 1;
  font-weight: 500;
  letter-spacing: 1px;
 }
 #js-infiniteslide ul {
  overflow: hidden;
 }
 #js-infiniteslide li {
  height: 42.66vw;
 }
 .photoSlide {
  margin-bottom: 8.533vw;
  overflow: hidden;
 }
 #footer h1 {
  font-size: 2.9vw;
  line-height: 1.5;
  font-weight: normal;
  text-align: center;
  padding: 5.3vw 0 0 0;
  color: #898b8e;
 }
 .footer-text {
  font-size: 2.93vw;
  letter-spacing: inherit;
 }
 .footer_tel {
  padding-top: 4.6vw;
  font-size: 7.466vw;
  text-align: center;
 }
 .copy-text {
  font-size: 2.66vw;
 }
}
.fade {
 opacity: 0;
 transition: all 1s 0s ease;
 transform: translateY(10%);
}
.fade.active {
 opacity: 1;
 transform: translateY(0%);
}
/*  menu
---------------------*/
.sp-header {
 display: none;
}
#menu {
 display: block;
 margin: 0 auto 0 auto;
}
.menu {
 position: relative;
 float: left;
 width: 80%;
 margin: 0 auto;
}
.menu > li {
 float: left;
 width: 25%;
 height: 25px;
 line-height: 30px;
 text-align: center;
}
.menu > li a {
 display: block;
 color: #1a1a1a;
 font-size: 13px;
}
.menu > li a:hover {
 color: #ec7971;
}
ul.menu__second-level {
 visibility: hidden;
 opacity: 0;
 z-index: 3;
}
ul.menu__third-level {
 visibility: hidden;
 opacity: 0;
}
ul.menu__fourth-level {
 visibility: hidden;
 opacity: 0;
}
.menu > li:hover {
 -webkit-transition: all .5s;
 transition: all .5s;
}
.menu__second-level li {
 border-style: none;
}
.menu__second-level li a {
 font-size: 14px;
 letter-spacing: -1px;
}
.menu__second-level .text-narrow a {
 transform: scale(0.8, 1);
 transform-origin: top left;
 width: 125%;
}
/* 下矢印 */
.init-bottom:after {
 content: '';
 display: inline-block;
 width: 6px;
 height: 6px;
 margin: 0 0 0 15px;
 border-right: 1px solid #fff;
 border-bottom: 1px solid #fff;
 -webkit-transform: rotate(45deg);
 -ms-transform: rotate(45deg);
 transform: rotate(45deg);
}
/* floatクリア */
.menu:before, .menu:after {
 content: " ";
 display: table;
}
.menu:after {
 clear: both;
}
.menu {
 *zoom: 1;
}
.menu > li.menu__single {
 position: relative;
}
@media only screen and (max-width: 768px) {
 /*  hedaer
---------------------------------------*/
 .sp-header {
  display: inherit;
  background-color: #fff;
  height: 14vw;
  top: 0;
  width: 100%;
  z-index: 9999;
 }
 .sp-home {
  position: fixed;
  top: 10px;
  left: 10px;
  display: block;
  width: 55.7vw;
 }
 .sp-tel {
  width: 14vw;
  position: fixed;
  top: 0px;
  right: 14vw;
  display: block;
 }
 .drawer-hamburger {
  position: fixed;
  z-index: 104;
  top: 0;
  display: block;
  box-sizing: border-box;
  width: 14vw;
  height: 14vw;
  padding: 0;
  padding-top: 0;
  padding-right: 3.7333vw;
  padding-bottom: 5.733vw;
  padding-left: 3.7333vw;
  -webkit-transition: all .6s cubic-bezier(0.190, 1.000, 0.220, 1.000);
  transition: all .6s cubic-bezier(0.190, 1.000, 0.220, 1.000);
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
  border: 0;
  outline: 0;
  background-color: #94CC78;
  color: #fff;
 }
 .drawer-hamburger-icon, .drawer-hamburger-icon::before, .drawer-hamburger-icon::after {
  width: 6.1vw;
  height: 2.5px;
  -webkit-transition: all .6s cubic-bezier(0.190, 1.000, 0.220, 1.000);
  transition: all .6s cubic-bezier(0.190, 1.000, 0.220, 1.000);
  background-color: #fff;
 }
 .drawer-hamburger-icon {
  position: relative;
  display: block;
  margin-top: 2.666vw;
 }
 .drawer-hamburger-icon:before, .drawer-hamburger-icon:after {
  position: absolute;
  top: -1.6vw;
  left: 0;
  content: ' ';
 }
 .drawer-hamburger-icon:after {
  top: 1.6vw;
 }
 .drawer-txt {
  position: absolute;
  bottom: 1vw;
  right: 0;
  text-align: center;
  font-size: 2.66vw;
  color: #fff;
  width: 14vw;
  font-family: 'Noto Sans JP', sans-serif;
 }
 /*  nav
---------------------------------------*/
 .js #menu {
  display: none;
 }
 .js .slicknav_menu {
  display: block;
 }
 #menu {
  display: none;
 }
 .drawer-navbar {
  z-index: 9999 !important;
 }
 .drawer-navbar .drawer-nav {
  padding-top: 14.6vw;
  width: 69vw;
 }
 .drawer--right .drawer-nav {
  right: -69vw;
  -webkit-transition: right .6s cubic-bezier(0.190, 1.000, 0.220, 1.000);
  transition: right .6s cubic-bezier(0.190, 1.000, 0.220, 1.000);
 }
 .drawer-nav {
  background-color: rgba(148, 204, 120, 0.8) !important;
 }
 .drawer-nav a {
  color: #fff !important;
  letter-spacing: -1px !important;
 }
 .drawer-dropdown-menu {
  background-color: rgba(255, 255, 255, 0.8) !important;
 }
 .drawer-hamburger-icon, .drawer-hamburger-icon:before, .drawer-hamburger-icon:after {
  background-color: #fff !important;
 }
 .drawer-open .drawer-hamburger-icon {
  background-color: transparent !important;
 }
 .drawer-open .drawer-txt {
  color: transparent;
 }
 .drawer-open .drawer-hamburger {
  background: transparent;
 }
 .drawer-navbar .drawer-menu {
  padding-bottom: 10vw;
 }
 .drawer-menu li {
  padding: 0 0 4vw 10vw;
 }
 .drawer-menu li.toprecruit {
  padding: 4vw 0 4vw 10vw;
 }
 .drawer-menu-item {
  font-size: 4vw;
  display: block;
  text-decoration: none;
  color: #fff;
 }
 .drawer-menu li.sub {
  padding: 0 0 4vw 13vw;
 }
 .drawer-menu li a {
  padding: 0;
  letter-spacing: 0.1em;
 }
 .drawer-menu li.sub a {
  position: relative;
  display: inline-block;
  padding: 0 0 0 5.5vw;
 }
 .drawer-menu li.sub a:before {
  content: '';
  position: absolute;
  top: 50%;
  display: inline-block;
  width: 4.2vw;
  height: 1px;
  background-color: #fff;
 }
 .drawer-menu li.sub a:before {
  left: 0;
 }
 .drawer-tel a {
  font-size: 4vw;
  background: #fff;
  border-radius: 50px;
  padding: 3.3vw 0;
  width: auto;
  color: #94cc78 !important;
  display: block;
  text-align: center;
  margin: 0 8vw;
  letter-spacing: 0.2em;
 }
 .drawer-tel .fas {
  margin-right: 10px;
  font-size: 6vw;
 }
}
/* page-top */
.pagetop:hover {
 opacity: 0.6;
}
.pagetop a img {
 width: 100%;
 height: auto;
}
.pagetop {
 position: fixed;
 bottom: 10px;
 right: 50px;
 height: 0;
 opacity: 0;
 overflow: hidden;
 animation-duration: 1s;
 width: 70px;
 z-index: 100;
 cursor: pointer;
}
.pagetop.static {
 position: absolute;
 bottom: auto;
 margin-top: -80px;
 margin-right: 0;
 margin-bottom: 0;
}
.pagetop.show {
 height: auto;
 opacity: 1;
 animation-name: fadein;
 width: 70px;
 z-index: 10000;
}
.pagetop.hide {
 height: 0;
 opacity: 0;
 animation-name: fadeout;
}
@keyframes fadein {
 0% {
  height: 0;
  opacity: 0;
 }
 1% {
  height: auto;
  opacity: 0;
 }
 100% {
  opacity: 1;
 }
}
@keyframes fadeout {
 0% {
  height: auto;
  opacity: 1;
 }
 99% {
  height: auto;
  opacity: 0;
 }
 100% {
  height: 0;
 }
}
@media screen and (max-width: 768px) {
 a:hover {
  opacity: 1;
 }
 .pagetop a {
  text-decoration: none;
  display: block;
 }
 .pagetop {
  position: fixed;
  bottom: 18vw;
  right: 2.667vw;
  width: 10.667vw;
  height: 0;
  opacity: 0;
  overflow: hidden;
  animation-duration: 1s;
  z-index: 1000;
 }
 .pagetop.show {
  width: 10.667vw;
 }
 .pagetop.static {
  position: absolute;
  bottom: auto;
  margin-top: -13.333vw;
  margin-right: 0;
  margin-bottom: 0;
 }
}
/*下層*/
.recruit #main {
 max-width: 1500px;
 margin: 0 auto 80px auto;
 padding: 176px 0 0 0;
}
@media only screen and (max-width: 1500px) {
 #main {
  max-width: 1500px;
  margin: 0 auto 13.333vw auto;
  padding: 11.73vw 0 0 0;
 }
 .recruit #main {
  max-width: 1500px;
  margin: 0 auto 80px auto;
  padding: 11.73vw 0 0 0;
 }
}
#career {
 padding: 0 0 120px 0;
 text-align: center;
}
.career_read {
 font-size: 28px;
 color: #94cc78;
 margin-bottom: 35px;
 letter-spacing: 0.1em;
}
#career ul {
 width: 480px;
 margin: 0 auto;
}
#career li {
 font-size: 20px;
 border: #94cc78 1px solid;
 border-radius: 20px;
 padding: 10px 0;
 display: block;
 margin-bottom: 20px;
}
#aboutus {
 background: #fafafa;
 padding: 120px 0;
 text-align: center;
}
table.tbl {
 width: 72vw;
 margin: 0 auto;
 text-align: left;
}
table.tbl th {
 width: 12.6666vw;
 box-sizing: border-box;
 padding: 2.6666vw 0 2.6666vw 1.8vw;
 color: #94cc78;
 font-size: 1vw;
 border-bottom: #94cc78 1px solid;
 border-right: #94cc78 1px solid;
 letter-spacing: 3px;
}
table.tbl td {
 width: 56vw;
 box-sizing: border-box;
 padding: 2.6666vw 0 2.6666vw 2vw;
 font-size: 0.95vw;
 border-bottom: #94cc78 1px solid;
 letter-spacing: 2px;
 line-height: 2;
}
table.tbl tr:last-child th, table.tbl tr:last-child td {
 border-bottom: none;
}
@media only screen and (max-width: 768px) {
 #career {
  padding: 0 0 12vw 0;
  text-align: center;
 }
 .career_read {
  font-size: 4.8vw;
  margin-bottom: 8.5vw;
  letter-spacing: 0.1em;
 }
 #career ul {
  width: 64vw;
  margin: 0 auto;
 }
 #career li {
  font-size: 4.5vw;
  border: #94cc78 1px solid;
  border-radius: 10px;
  padding: 2.6vw 0;
  display: block;
  margin-bottom: 2vw;
 }
 #aboutus {
  background: #fafafa;
  padding: 12vw 0;
  text-align: center;
 }
 table.tbl {
  width: 87vw;
  margin: 0 auto;
  text-align: left;
 }
 table.tbl th {
  width: 100%;
  box-sizing: border-box;
  padding: 2.6vw 0 2.6vw 0;
  color: #94cc78;
  border-bottom: #94cc78 1px solid;
  border-right: none;
  letter-spacing: 1px;
  font-size: 3vw;
  text-align: center;
  vertical-align: middle;
  display: block;
 }
 table.tbl td {
  width: 100%;
  box-sizing: border-box;
  padding: 2.6vw 0 4.6vw 0;
  border-bottom: none;
  letter-spacing: 1px;
  font-size: 3vw;
  display: block;
 }
 table.tbl tr:last-child th {
  border-bottom: #94cc78 1px solid;
 }
}
#requirements {
 padding: 200px 0;
 text-align: center;
}
.requirements_kind {
 width: 740px;
 overflow: hidden;
 margin: 0 auto 60px auto;
 text-align: center;
 display: flex;
 justify-content: space-between;
}
.requirements_kind li {
 font-size: 19px;
 color: #94cc78;
 border: #94cc78 1px solid;
 padding: 10px;
 width: 31%;
 display: inline-block;
 border-radius: 20px;
}
.requirements_kind li:last-child {
 margin-right: 0;
}
#requirements .cat_read {
 font-size: 25px;
 margin-bottom: 40px;
}
table.tbl2 {
 width: 72vw;
 margin: 0 auto;
 text-align: left;
 border-top: #dfe672 1px solid;
}
table.tbl2 th {
 width: 12.6666vw;
 box-sizing: border-box;
 padding: 2.6666vw 0 2.6666vw 1.8vw;
 font-size: 16px;
 border-bottom: #dfe672 1px solid;
 letter-spacing: 3px;
 font-weight: normal;
 text-align: center;
}
table.tbl2 td {
 width: 56vw;
 box-sizing: border-box;
 padding: 2.6666vw 0 2.6666vw 2vw;
 font-size: 16px;
 border-bottom: #dfe672 1px solid;
 letter-spacing: 2px;
 line-height: 2;
}
#requirements .at {
 text-align: center;
 padding-top: 80px;
 font-size: 15px;
 line-height: 2;
}
#features {
 background: #fafafa;
 text-align: center;
 padding: 120px 0 100px 0;
 margin-bottom: 80px;
}
@media only screen and (max-width: 768px) {
 #requirements {
  padding: 12vw 0;
  text-align: center;
 }
 .requirements_kind {
  width: 70vw;
  overflow: hidden;
  margin: 0 auto 2.6vw auto;
  display: block;
 }
 .requirements_kind li {
  font-size: 19px;
  color: #94cc78;
  border: #94cc78 1px solid;
  padding: 2.6vw;
  width: auto;
  float: none;
  margin-right: auto;
  display: block;
  border-radius: 10px;
  margin-bottom: 2.6vw;
 }
 .requirements_kind li:last-child {
  margin-right: 0;
 }
 #requirements .cat_read {
  font-size: 4vw;
  margin-bottom: 8vw;
 }
 table.tbl2 {
  width: 86.666vw;
  margin: 0 auto;
  text-align: left;
  border-top: #dfe672 1px solid;
 }
 table.tbl2 th {
  width: 12.6666vw;
  box-sizing: border-box;
  padding: 7vw 0 7vw 1.8vw;
  font-size: 3.166vw;
  border-bottom: #dfe672 1px solid;
  letter-spacing: inherit;
  font-weight: normal;
 }
 table.tbl2 td {
  width: 56vw;
  box-sizing: border-box;
  padding: 7vw 0 7vw 2vw;
  font-size: 3.166vw;
  border-bottom: #dfe672 1px solid;
  letter-spacing: inherit;
  line-height: 2;
 }
 #requirements .at {
  text-align: center;
  padding-top: 10.6vw;
  font-size: 3.46vw;
  line-height: 2;
 }
 #features {
  background: #fafafa;
  text-align: center;
  padding: 13.33vw 0 12.66vw 0;
  margin-bottom: 13.33vw;
 }
 #features .img-50 {
  display: block;
  width: 26.666vw;
  margin: 0 auto;
 }
 .features-box {
  padding: 0 0 8vw 0;
  width: 86%;
  margin: 0 auto;
 }
}
/*202108　バナー追加*/
.bnr_sillha {
 padding-top: 80px;
 width: 1084px;
 margin: 0 auto 0 auto;
 overflow: hidden;
}
.bnr_sillha_l {
 width: 740px;
 height: 250px;
 box-sizing: border-box;
 border: #f3f1e9 7px solid;
 padding: 60px 0 15px 0;
 text-align: center;
 position: relative;
 float: left;
}
.bnr_sillha_l img {
 position: absolute;
 width: 220px;
 height: auto;
 right: 15px;
 bottom: 15px;
}
.bnr_sillha_tit {
 font-size: 38px;
 color: #919191;
 margin-bottom: 20px;
 line-height: 1;
 letter-spacing: 2px;
 font-weight: 700;
}
.bnr_sillha_txt {
 font-size: 17px;
 color: #919191;
 letter-spacing: 2px;
}
.bnr_sillha_r {
 float: right;
 width: 300px;
}
.bnr_sillha_r:hover {
 opacity: 0.7;
}
@media only screen and (max-width: 768px) {
 .bnr_sillha {
  padding-top: 13.33vw;
  width: 85vw;
  margin: 0 auto 0 auto;
  overflow: hidden;
 }
 .bnr_sillha_l {
  width: auto;
  height: auto;
  box-sizing: border-box;
  border: #f3f1e9 1.06vw solid;
  padding: 4.6vw 0 3.33vw 0;
  text-align: center;
  position: relative;
  float: none;
  margin-bottom: 3.333vw;
 }
 .bnr_sillha_l img {
  display: none;
 }
 .bnr_sillha_tit {
  font-size: 5.3vw;
  color: #919191;
  margin-bottom: 2.9vw;
  line-height: 1;
  letter-spacing: 1px;
  font-weight: 700;
 }
 .bnr_sillha_txt {
  font-size: 3.46vw;
  color: #919191;
  letter-spacing: 1px;
 }
 .bnr_sillha_r {
  float: none;
  width: auto;
 }
 .bnr_sillha_r:hover {
  opacity: 1;
 }
}
.fixnav_outer {
 display: none;
}
@media only screen and (max-width: 768px) {
 #footer {
  margin-bottom: 15.466vw;
 }
 .fixnav_outer {
  display: block;
  position: fixed;
  height: 15.466vw;
  z-index: 100;
  bottom: 0;
  left: 0;
  width: 100%;
 }
 .fixnav {
  background: #898B8E;
  height: 15.466vw;
  display: flex;
 }
 .fixnav a {
  display: flex;
  justify-content: center;
  align-items: center;
  color: #fff;
 }
 .fixnav a p {
  text-align: center;
  padding-top: 0.8vw;
 }
 .fixnav a + a {
  border-left: #fff 1px solid;
 }
 .fixnav_1 {
  width: 49.86vw;
 }
 .fixnav_2 {
  width: 24.8vw;
 }
 .fixnav_3 {
  width: 24.8vw;
 }
 .fixnav_1 .sc {
  font-size: 2.667vw;
  display: block;
  line-height: 1;
  margin-bottom: 1.333vw;
 }
 .fixnav_1 .tel {
  font-size: 4.8vw;
  line-height: 1;
  position: relative;
  font-family: omnes-pro, sans-serif;
 }
 .fixnav_1 .tel:before {
  content: "";
  display: inline-block;
  width: 3.2vw;
  height: 4.267vw;
  background-image: url("../img/cta1.svg");
  background-repeat: no-repeat;
  background-position: 0 top;
  background-size: contain;
  vertical-align: middle;
  margin: -0.533vw 1.6vw 0 0;
 }
 .fixnav_2 span {
  display: block;
  font-size: 2.667vw;
 }
 .fixnav_3 span {
  display: block;
  font-size: 2.667vw;
 }
}

/*LINE予約について*/
.line_reservation #main {
 max-width: 72vw;
 margin: 0 auto 80px auto;
 padding: 11.733vw 0 0 0;
}

.bread{
	font-size: 0.8vw;
	margin-bottom: 2.333vw;
}

.bread a{
	color: #333333;
}

.line_reservation #main .yoyaku_title h1{
	font-size: 2.667vw;
	font-weight: normal;
	padding-bottom: 2.333vw;
	margin-bottom: 3.667vw;
	color: #898B8E;
	text-align: center;
	border-bottom: #94CC78 1px solid;
	letter-spacing: 0.1em;
}

.yoyaku_read{
	font-size: 1.067vw;
	text-align: center;
	margin-bottom: 8.667vw;
}

.register_title h2{
	font-size: 2.133vw;
	text-align: center;
	position: relative;
	font-weight: normal;
	color: #898B8E;
	letter-spacing: 0.1em;
}

#register,#family{
	text-align: center;
}

.register_title {
	margin-bottom: 3.333vw;
}

.register_title h2::before {
  content: '';
  position: absolute;
  bottom: -1.333vw;
  display: inline-block;
  width: 2.667vw;
  height: 0.133vw;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  background-color: #94cc78;
}

.register_txt{
	font-size:1.067vw;
	margin-bottom: 3.333vw;
}

.register_code{
	color: #94CC78;
	font-size:1.333vw;
	margin-bottom: 0.667vw;
}

.register_qr{
	width: 12vw;
	height: 12vw;
	display: flex;
	justify-content: center;
	align-items:center;
	margin: 0 auto 80px auto;
	border: #94CC78 2px solid;
}

.register_qr img{width: 10vw;
height: auto;}


.step{
	width: 40vw;
	margin: 0 auto;
	border-top: #94CC78 2px solid;
	padding: 5.667vw 0 0 0;
}

.step_read{font-size: 1.333vw;
margin-bottom: 2.667vw;}

.step_inner{
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	margin-bottom: 10.667vw;
}

.step_inner::after{
  content:"";
  display: block;
  width:12vw;
}

.step_inner article{width: 12vw;
margin-bottom: 2.667vw;}

.stepnum{
	text-align: center;
	display: flex;
	justify-content: center;
	align-items: center;
	margin-bottom: 1.333vw;
}

.stepnum span.stepe{
	text-align: center;
	font-size: 1.867vw;
	color: #94CC78;
	margin-right: 0.667vw;
}


.stepnum span.stepn{
	text-align: center;
	font-size: 1.6vw;
	color: #fff;
	background: #94CC78;
	width: 2.667vw;
	height: 2.667vw;
	border-radius: 0.267vw;
	display: flex;
	justify-content: center;
	align-items: center;
}

.stepimg{
	margin-bottom: 1.333vw;
}
.steptxt{
	font-size: 0.933vw;
	text-align: left;
}


#family .step_inner{
	margin-bottom: 4vw;
}


@media only screen and (max-width: 1500px) {
 .line_reservation #main {
  max-width: auto;
  margin: 0 auto 13.333vw auto;
  padding: 11.73vw 0 0 0;
 }

}

@media screen and (max-width: 768px) {
 .line_reservation #main {
 max-width: 100%;
 margin: 0 auto 80px auto;
 padding: 16.533vw 0 0 0;
}

.bread{
	padding: 0 2.667vw;
	font-size: 3.2vw;
	margin-bottom: 8vw;
}

.line_reservation #main .yoyaku_title h1{
	font-size: 6.933vw;
	padding-bottom: 5.333vw;
	margin: 0 25px 40px 25px
}

.yoyaku_read{
	font-size: 3.733vw;
	margin-bottom: 21.333vw;
}

.register_title h2{
	font-size: 5.867vw;
}

#register,#family{
	text-align: center;
}

.register_title {
	margin-bottom: 10.667vw;
}

.register_title h2::before {
  content: '';
  position: absolute;
  bottom: -4vw;
  display: inline-block;
  width: 10.667vw;
  height: 0.533vw;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  background-color: #94cc78;
}

.register_txt{
	font-size:4.267vw;
	margin-bottom: 10.667vw;
}


	.register_btn{
		margin: 0 6.667vw 21.333vw 6.667vw;
	}

	.register_btn a {
 width: 100%;
 height: 20.8vw;
 background: #06C755;
 display: flex;
		justify-content: center;
 align-items: center;
 position: relative;
		border-radius: 1.333vw;
		color: #fff;
		font-size: 4vw;
		letter-spacing: 0.05em;
		padding-left: 8vw;
}
.register_btn a:before {
 content: "";
 position: absolute;
 width: 12.267vw;
 height: 11.733vw;
 background-image: url("../img/01.svg");
 background-repeat: no-repeat;
 background-position: 0 top;
 background-size: contain;
 vertical-align: middle;
 margin: -0.267vw 2.667vw 0 4vw;
 top: 0;
 left: 7.4vw;
 bottom: 0;
 margin: auto;
}
.register_btn a:after {
 content: '';
 width: 2.667vw;
 height: 2.667vw;
 border: 0;
 border-top: solid 2px #fff;
 border-right: solid 2px #fff;
 transform: rotate(45deg);
 position: absolute;
 top: 0;
 right: 5.333vw;
 bottom: 0;
 margin: auto;
}
	
	
	
	
	
.step{
	width: auto;
	margin: 0 6.667vw;
	border-top: #94CC78 2px solid;
	padding: 10.667vw 0 0 0;
}
	
	.step_read{font-size: 4.267vw;
margin-bottom: 10.667vw;}


.step_inner{
	display: block;
	width: 48vw;
	margin: 0 auto;
	margin-bottom: 32vw;
}

.step_inner::after{
  content:"";
  display: block;
  width:48vw;
}

.step_inner article{width: 48vw;
margin-bottom: 10.667vw;}

.stepnum{
	text-align: center;
	display: flex;
	justify-content: center;
	align-items: center;
	margin-bottom: 5.333vw;
}

.stepnum span.stepe{
	text-align: center;
	font-size: 7.467vw;
	color: #94CC78;
	margin-right: 2.667vw;
}


.stepnum span.stepn{
	text-align: center;
	font-size: 6.4vw;
	color: #fff;
	background: #94CC78;
	width: 10.667vw;
	height: 10.667vw;
	border-radius: 1.067vw;
	display: flex;
	justify-content: center;
	align-items: center;
}

.stepimg{
	margin-bottom: 5.333vw;
}
.steptxt{
	font-size: 3.733vw;
	text-align: left;
}


#family .step_inner{
	margin-bottom: 16vw;
}

 }
	
	/*202502　採用注記追加*/
	.at_recruit{border: rgba(209,46,49,1.00) 1px solid;
	padding: 20px;
		width: 800px;
		margin: 0 auto 100px auto;
		border-radius: 10px;
}
.at_recruit p{
	color: rgba(209,46,49,1.00);
	font-size: 20px;
	font-weight: 700;
}
	
	@media screen and (max-width: 768px) {
			.at_recruit{
	padding: 15px;
		width: auto;
		margin: 0 25px 50px 25px;
		border-radius: 10px;
}
.at_recruit p{
	font-size: 16px;
}
		
}

