@charset "UTF-8";
/*@mixin mob {
	@media screen and (max-width: 375px) {
    	@content;
	}
}*/
*, *:before, *:after {
  box-sizing: border-box; }

html {
  text-size-adjust: 100%;
  font-size: 62.5%; }

body {
  font-family: YakuHanJP_Narrow, "Noto Sans JP", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Meiryo UI", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  color: #333;
  font-weight: 600;
  font-size: 1.6rem;
  line-height: 1.5;
  scrollbar-width: thin;
  scrollbar-color: #198931 #fff;
  overflow-x: hidden;
  overflow-y: hidden;
  position: relative;
  opacity: 0;
  letter-spacing: .06em;
  transition: 0.5s ease; }
  body:before {
    content: "";
    background-color: rgba(0, 0, 0, 0);
    transition: 0.5s ease; }
  body.load {
    overflow-y: auto;
    opacity: 1; }
  body.overlay {
    overflow: hidden;
    height: 100%; }
    body.overlay:before {
      content: "";
      position: fixed;
      top: 0;
      left: 0;
      width: 100vw;
      height: 100vh;
      background-color: rgba(255, 255, 255, 0.6);
      z-index: 9999; }

body,
div,
dl,
dt,
dd,
ul,
ol,
li,
h1,
h2,
h3,
h4,
h5,
h6,
pre,
code,
form,
fieldset,
legend,
input,
textarea,
p,
blockquote,
th,
td,
figure {
  margin: 0;
  padding: 0; }

table {
  border-collapse: collapse;
  border-spacing: 0;
  width: 100%; }

fieldset,
img {
  border: 0; }

address,
caption,
cite,
code,
dfn,
em,
strong,
th,
var {
  font-style: normal;
  font-weight: normal; }

ol,
ul {
  list-style: none; }

caption,
th {
  text-align: left; }

h1,
h2,
h3,
h4,
h5,
h6 {
  font-size: 100%;
  font-weight: normal; }

q:before,
q:after {
  content: ""; }

abbr,
acronym {
  border: 0;
  font-variant: normal; }

sup {
  vertical-align: text-top; }

sub {
  vertical-align: text-bottom; }

input,
textarea,
select,
button {
  color: inherit;
  font-family: inherit;
  font-size: inherit;
  font-weight: inherit;
  line-height: inherit;
  /**font-size: 100%;
  border-radius: 0;
  border: none;
  appearance: none;
  -webkit-appearance: none;
  background-color: inherit;*/ }

textarea {
  resize: vertical;
  display: block; }

button {
  padding: 0;
  cursor: pointer; }

legend {
  color: #333; }

main {
  position: relative; }

a {
  text-decoration: none;
  color: inherit;
  transition: 0.5s ease;
  text-underline-offset: 0.3em; }

img {
  width: 100%;
  height: auto;
  vertical-align: bottom; }

svg {
  display: block; }

* {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  box-sizing: border-box;
  image-rendering: -webkit-optimize-contrast;
  font-feature-settings: "palt"; }

_::-webkit-full-page-media, _:future, :root * {
  image-rendering: auto; }

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

::-webkit-scrollbar {
  width: 0.439238653vw; }
  @media screen and (min-width: 1501px) {
    ::-webkit-scrollbar {
      width: 6px; } }
  @media screen and (max-width: 768px) {
    ::-webkit-scrollbar {
      width: 1.0666666667vw; } }

::-webkit-scrollbar-track {
  background-color: #fff; }

::-webkit-scrollbar-thumb {
  background-color: #198931; }

br.pc, div.pc {
  display: block; }
  @media screen and (max-width: 768px) {
    br.pc, div.pc {
      display: none; } }
br.sp, div.sp {
  display: none; }
  @media screen and (max-width: 768px) {
    br.sp, div.sp {
      display: block; } }

span.pc, i.pc {
  display: inline;
  font-style: normal; }
  @media screen and (max-width: 768px) {
    span.pc, i.pc {
      display: none; } }
span.sp, i.sp {
  display: none; }
  @media screen and (max-width: 768px) {
    span.sp, i.sp {
      display: inline;
      font-style: normal; } }

.hidden {
  overflow: hidden;
  text-indent: 100%;
  white-space: nowrap;
  display: inline-block; }

.fadeUp {
  transition: all 1s ease;
  opacity: 0;
  transform: translate(0, 2.9282576867vw);
  -webkit-transform: translate(0, 2.9282576867vw); }
  @media screen and (min-width: 1501px) {
    .fadeUp {
      transform: translate(0, 40px);
      -webkit-transform: translate(0, 40px); } }
  @media screen and (max-width: 768px) {
    .fadeUp {
      transform: translate(0, 5.3333333333vw);
      -webkit-transform: translate(0, 5.3333333333vw); } }

.fadeUp-in {
  opacity: 1;
  transform: translate(0, 0);
  -webkit-transform: translate(0, 0); }

.fadeIn {
  transition: all 1s ease;
  opacity: 0; }

.fadeIn-in {
  opacity: 1; }

#wrapper {
  width: 100vw;
  overflow: hidden;
  position: relative;
  padding: 10.980966325vw 0 0;
  transition: .6s ease padding; }
  @media screen and (min-width: 1501px) {
    #wrapper {
      padding: 150px 0 0; } }
  @media screen and (max-width: 1024px) {
    #wrapper {
      padding: 6.588579795vw 0 0; } }
  @media screen and (max-width: 768px) {
    #wrapper {
      padding: 18.6666666667vw 0 0; } }
  #wrapper.scrolled {
    padding-top: 0; }

.inner {
  margin: 0 auto;
  padding: 0 2.9282576867vw; }
  @media screen and (min-width: 1501px) {
    .inner {
      width: 1366px;
      padding: 0;
      max-width: none; } }
  @media screen and (max-width: 768px) {
    .inner {
      width: auto;
      padding: 0 3.2vw;
      max-width: none; } }

.common-ttl {
  margin: 0 0 2.196193265vw 0.5em;
  padding: 0 0 0 2.9282576867vw; }
  @media screen and (min-width: 1501px) {
    .common-ttl {
      margin: 0 0 30px 0.5em;
      padding: 0 0 0 40px;
      background-size: 20px auto; } }
  @media screen and (max-width: 768px) {
    .common-ttl {
      margin: 0 0 8vw;
      padding: 0 0 0 10.6666666667vw;
      background-size: 5.3333333333vw auto; } }
  .common-ttl h2 {
    font-size: 2.196193265vw;
    font-weight: 700;
    letter-spacing: .04em;
    line-height: 1;
    margin: 0 0 .3em; }
    @media screen and (min-width: 1501px) {
      .common-ttl h2 {
        font-size: 30px; } }
    @media screen and (max-width: 768px) {
      .common-ttl h2 {
        font-size: 7.4666666667vw; } }
  .common-ttl small {
    font-size: 1.0980966325vw;
    font-weight: 600;
    letter-spacing: .04em; }
    @media screen and (min-width: 1501px) {
      .common-ttl small {
        font-size: 15px; } }
    @media screen and (max-width: 768px) {
      .common-ttl small {
        font-size: 3.7333333333vw; } }

a.common-btn {
  display: inline-block;
  text-align: left;
  background-color: #fff;
  color: #198931;
  min-width: 18.3016105417vw;
  height: 4.7584187408vw;
  line-height: 4.6120058565vw;
  border-radius: 4.7584187408vw;
  padding: 0 1.4641288433vw 0 2.196193265vw;
  border: solid #cdcece 0.0732064422vw; }
  @media screen and (min-width: 1501px) {
    a.common-btn {
      min-width: 250px;
      height: 65px;
      line-height: 63px;
      border-radius: 65px;
      padding: 0 20px 0 30px;
      border-width: 1px; } }
  @media screen and (max-width: 768px) {
    a.common-btn {
      min-width: 66.6666666667vw;
      height: 17.3333333333vw;
      line-height: 16.8vw;
      border-radius: 17.3333333333vw;
      padding: 0 5.3333333333vw 0 8vw;
      border-width: 0.2666666667vw; } }
  a.common-btn span {
    font-size: 1.1713030747vw;
    font-weight: 600;
    position: relative;
    display: block;
    padding: 0 3em 0 0;
    letter-spacing: .1em; }
    @media screen and (min-width: 1501px) {
      a.common-btn span {
        font-size: 16px; } }
    @media screen and (max-width: 768px) {
      a.common-btn span {
        font-size: 4.2666666667vw; } }
    a.common-btn span:after {
      content: "";
      position: absolute;
      top: 50%;
      right: 0;
      width: 2.0497803807vw;
      height: 2.0497803807vw;
      margin-top: -1.0248901903vw;
      background: url(../img/btn-arrow.svg) no-repeat center/contain;
      transition: 0.5s ease; }
      @media screen and (min-width: 1501px) {
        a.common-btn span:after {
          width: 28px;
          height: 28px;
          margin-top: -14px; } }
      @media screen and (max-width: 768px) {
        a.common-btn span:after {
          width: 7.4666666667vw;
          height: 7.4666666667vw;
          margin-top: -3.7333333333vw; } }
  a.common-btn:hover {
    background-color: #198931;
    color: #fff; }
    a.common-btn:hover span:after {
      background: url(../img/btn-arrow_wh.svg) no-repeat center/contain; }
  a.common-btn._pink span {
    color: #ff8bae; }
    a.common-btn._pink span:after {
      background-image: url(../img/btn-arrow_gr.svg); }
  a.common-btn._pink:hover {
    background-color: #ff8bae; }
    a.common-btn._pink:hover span {
      color: #fff; }
      a.common-btn._pink:hover span:after {
        background-image: url(../img/btn-arrow_wh.svg); }
  @media screen and (max-width: 768px) {
    a.common-btn._fh {
      height: auto;
      line-height: 1.6;
      padding: 4vw 2.6666666667vw 4vw 9.3333333333vw; } }
  a.common-btn._min {
    min-width: 14.6412884334vw;
    height: 3.6603221083vw;
    line-height: 3.513909224vw;
    padding: 0 1.0980966325vw 0 2.5622254758vw; }
    @media screen and (min-width: 1501px) {
      a.common-btn._min {
        min-width: 200px;
        height: 50px;
        line-height: 48px;
        padding: 0 15px 0 35px; } }
    @media screen and (max-width: 768px) {
      a.common-btn._min {
        min-width: 53.3333333333vw;
        height: 13.3333333333vw;
        line-height: 12.8vw;
        padding: 0 4vw 0 9.3333333333vw; } }
    a.common-btn._min span {
      font-size: 1.0980966325vw; }
      @media screen and (min-width: 1501px) {
        a.common-btn._min span {
          font-size: 15px; } }
      @media screen and (max-width: 768px) {
        a.common-btn._min span {
          font-size: 4vw; } }
      a.common-btn._min span:after {
        width: 1.6105417277vw;
        height: 1.6105417277vw;
        margin-top: -0.8052708638vw; }
        @media screen and (min-width: 1501px) {
          a.common-btn._min span:after {
            width: 22px;
            height: 22px;
            margin-top: -11px; } }
        @media screen and (max-width: 768px) {
          a.common-btn._min span:after {
            width: 5.8666666667vw;
            height: 5.8666666667vw;
            margin-top: -2.9333333333vw; } }
  a.common-btn._pl span {
    padding-left: 1em; }
  a.common-btn._light {
    background-color: #f1ffe8; }
    a.common-btn._light span {
      color: #198931; }
      a.common-btn._light span:after {
        background-image: url(../img/arrow.svg); }

/*---------------------------------
HEADER
---------------------------------*/
header {
  width: 100vw;
  height: 10.980966325vw;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 10001;
  font-weight: 500;
  background-color: #fff;
  border-bottom: solid #198931 0.0732064422vw;
  transform: translateY(0);
  transition: .6s ease; }
  @media screen and (min-width: 1501px) {
    header {
      height: 150px;
      border-bottom: solid #198931 1px; } }
  @media screen and (max-width: 1024px) {
    header {
      height: 6.588579795vw; } }
  @media screen and (max-width: 768px) {
    header {
      height: 18.6666666667vw;
      border-bottom: solid #198931 0.2666666667vw; } }
  header.scrolled {
    transform: translateY(-100%); }
    @media screen and (max-width: 768px) {
      header.scrolled {
        transform: translateY(0); } }
  header .header-wrap {
    height: 6.588579795vw; }
    @media screen and (min-width: 1501px) {
      header .header-wrap {
        height: 90px; } }
    @media screen and (max-width: 768px) {
      header .header-wrap {
        height: 18.6666666667vw; } }
    header .header-wrap .inner {
      height: 100%;
      display: flex;
      justify-content: space-between;
      align-items: center; }
  header .header-logo {
    transition: 0.5s ease; }
    header .header-logo ._logo a {
      display: inline-block;
      background: url(../img/logo.svg) no-repeat center/contain;
      width: 15.0073206442vw;
      height: 4.2459736457vw; }
      @media screen and (min-width: 1501px) {
        header .header-logo ._logo a {
          width: 205px;
          height: 58px; } }
      @media screen and (max-width: 768px) {
        header .header-logo ._logo a {
          width: 42.1333333333vw;
          height: 12.8vw; } }
  header .header-meta {
    display: flex;
    align-items: center; }
    @media screen and (max-width: 1024px) {
      header .header-meta {
        padding-right: 5.1244509517vw; } }
    @media screen and (max-width: 768px) {
      header .header-meta {
        display: none; } }
  header .header-tel {
    padding: 0 2.196193265vw 0 1.9765739385vw; }
    @media screen and (min-width: 1501px) {
      header .header-tel {
        padding: 0 30px 0 27px; } }
    header .header-tel a {
      display: inline-block;
      padding: 0 0 0 2.9282576867vw;
      background: url(../img/icon-tel.svg) no-repeat top 0.5856515373vw left/2.196193265vw auto; }
      @media screen and (min-width: 1501px) {
        header .header-tel a {
          padding: 0 0 0 40px;
          background-position: top 8px left;
          background-size: 30px auto; } }
    header .header-tel ._number {
      font-size: 1.756954612vw;
      font-weight: 700;
      line-height: 1.4; }
      @media screen and (min-width: 1501px) {
        header .header-tel ._number {
          font-size: 24px; } }
    header .header-tel ._time {
      font-size: 1.0248901903vw;
      font-weight: 600; }
      @media screen and (min-width: 1501px) {
        header .header-tel ._time {
          font-size: 14px; } }
  header .header-search {
    width: 17.0571010249vw;
    height: 3.0014641288vw; }
    @media screen and (min-width: 1501px) {
      header .header-search {
        width: 233px;
        height: 41px; } }
    @media screen and (max-width: 768px) {
      header .header-search {
        display: none; } }
    header .header-search .search-form {
      padding: 0 0 0 2.7086383602vw;
      background-size: 1.9765739385vw auto; }
      @media screen and (min-width: 1501px) {
        header .header-search .search-form {
          padding: 0 0 0 37px;
          background-size: 27px auto; } }
    header .header-search .search-form-wrapper {
      width: 14.3484626647vw;
      height: 3.0014641288vw;
      font-size: 1.0980966325vw; }
      @media screen and (min-width: 1501px) {
        header .header-search .search-form-wrapper {
          width: 196px;
          height: 41px;
          font-size: 15px; } }
      header .header-search .search-form-wrapper .search-form-input {
        width: 75%;
        padding: 0 1em; }
      header .header-search .search-form-wrapper .search-form-button {
        width: 25%; }
  header .header-links {
    display: flex;
    align-items: center;
    justify-content: end;
    gap: 1.9765739385vw; }
    @media screen and (min-width: 1501px) {
      header .header-links {
        gap: 27px; } }
    @media screen and (max-width: 1024px) {
      header .header-links {
        gap: 1.0248901903vw; } }
    @media screen and (max-width: 768px) {
      header .header-links {
        display: none; } }
    header .header-links a {
      font-size: 1.1713030747vw;
      line-height: 2.7086383602vw;
      background-position: center left;
      background-repeat: no-repeat; }
      @media screen and (min-width: 1501px) {
        header .header-links a {
          font-size: 16px;
          line-height: 37px; } }
      @media screen and (max-width: 1024px) {
        header .header-links a {
          font-size: 1.0248901903vw;
          line-height: 2.196193265vw; } }
      header .header-links a._link-recruit {
        padding: 0 0 0 3.1478770132vw;
        background-size: 2.196193265vw auto;
        background-image: url(../img/icon-nurse.svg); }
        @media screen and (min-width: 1501px) {
          header .header-links a._link-recruit {
            padding: 0 0 0 43px;
            background-size: 30px auto; } }
        @media screen and (max-width: 1024px) {
          header .header-links a._link-recruit {
            padding: 0 0 0 2.7086383602vw;
            background-size: 1.756954612vw auto; } }
      header .header-links a._link-medical {
        padding: 0 0 0 3.1478770132vw;
        background-size: 2.3426061493vw auto;
        background-image: url(../img/icon-heart.svg); }
        @media screen and (min-width: 1501px) {
          header .header-links a._link-medical {
            padding: 0 0 0 44px;
            background-size: 32px auto; } }
        @media screen and (max-width: 1024px) {
          header .header-links a._link-medical {
            padding: 0 0 0 2.7086383602vw;
            background-size: 1.756954612vw auto; } }
      header .header-links a._link-access {
        padding: 0 0 0 2.3426061493vw;
        background-size: 1.5373352855vw auto;
        background-image: url(../img/icon-pin.svg); }
        @media screen and (min-width: 1501px) {
          header .header-links a._link-access {
            padding: 0 0 0 32px;
            background-size: 21px auto; } }
        @media screen and (max-width: 1024px) {
          header .header-links a._link-access {
            padding: 0 0 0 1.9033674963vw;
            background-size: 1.0980966325vw auto; } }
      header .header-links a:hover {
        opacity: .7; }

#gnavi {
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: 10001;
  width: 100vw;
  height: 4.39238653vw; }
  @media screen and (min-width: 1501px) {
    #gnavi {
      height: 60px; } }
  @media screen and (max-width: 1024px) {
    #gnavi {
      display: none; } }
  #gnavi .inner {
    height: 100%; }
  #gnavi ul {
    height: 100%;
    display: flex;
    justify-content: space-between; }
    #gnavi ul li {
      flex: 1;
      height: 100%;
      position: relative; }
      #gnavi ul li.current > a {
        color: #198931; }
        #gnavi ul li.current > a:after {
          opacity: 1; }
      #gnavi ul li a {
        display: flex;
        align-items: center;
        justify-content: center;
        font-size: 1.1713030747vw;
        font-weight: 600;
        text-align: center;
        width: 100%;
        height: 100%; }
        @media screen and (min-width: 1501px) {
          #gnavi ul li a {
            font-size: 16px; } }
        #gnavi ul li a:after {
          content: "";
          position: absolute;
          bottom: -0.1464128843vw;
          left: 50%;
          width: 5.4172767204vw;
          height: 0.439238653vw;
          background-color: #198931;
          margin-left: -2.7086383602vw;
          border-radius: 0.7320644217vw;
          opacity: 0;
          transition: 0.5s ease; }
          @media screen and (min-width: 1501px) {
            #gnavi ul li a:after {
              border-radius: 10px;
              bottom: -2px;
              width: 74px;
              height: 6px;
              margin-left: -37px; } }
        #gnavi ul li a:hover {
          color: #198931; }
          #gnavi ul li a:hover:after {
            opacity: 1; }
      #gnavi ul li._parent ._children {
        display: none;
        position: absolute;
        top: 100%;
        left: 50%;
        margin-top: 0.1464128843vw;
        margin-left: -10.2489019034vw;
        width: 20.4978038067vw;
        height: auto;
        background-color: #198931;
        border-radius: 0.7320644217vw;
        padding: 1.8301610542vw 1.317715959vw 2.9282576867vw;
        color: #fff; }
        @media screen and (min-width: 1501px) {
          #gnavi ul li._parent ._children {
            margin-top: 2px;
            margin-left: -140px;
            width: 280px;
            border-radius: 10px;
            padding: 25px 18px 40px; } }
        #gnavi ul li._parent ._children li {
          height: auto; }
          #gnavi ul li._parent ._children li._head {
            margin: 0 0 1.0980966325vw; }
            @media screen and (min-width: 1501px) {
              #gnavi ul li._parent ._children li._head {
                margin: 0 0 15px; } }
            #gnavi ul li._parent ._children li._head a {
              padding: 0 0 0 2em;
              font-weight: 700; }
              #gnavi ul li._parent ._children li._head a:before {
                content: "";
                position: absolute;
                top: 50%;
                left: 0.5490483163vw;
                background: url(../img/arrow_wh.svg) no-repeat center/contain;
                width: 1.0980966325vw;
                height: 1.0980966325vw;
                margin-top: -0.4026354319vw;
                transition: 0.5s ease; }
                @media screen and (min-width: 1501px) {
                  #gnavi ul li._parent ._children li._head a:before {
                    left: 7.5px;
                    width: 15px;
                    height: 15px;
                    margin-top: -5.5px; } }
              #gnavi ul li._parent ._children li._head a:after {
                content: none; }
              #gnavi ul li._parent ._children li._head a:hover:before {
                transform: translateX(30%); }
          #gnavi ul li._parent ._children li._child {
            border-bottom: dashed #fff 0.0732064422vw; }
            @media screen and (min-width: 1501px) {
              #gnavi ul li._parent ._children li._child {
                border-bottom-width: 1px; } }
            #gnavi ul li._parent ._children li._child a:after {
              content: "";
              position: absolute;
              top: 50%;
              left: auto;
              right: 0.5490483163vw;
              background: url(../img/arrow_wh.svg) no-repeat center/contain;
              width: 1.0980966325vw;
              height: 1.0980966325vw;
              margin-top: -0.4026354319vw;
              transition: 0.5s ease; }
              @media screen and (min-width: 1501px) {
                #gnavi ul li._parent ._children li._child a:after {
                  right: 7.5px;
                  width: 15px;
                  height: 15px;
                  margin-top: -5.5px; } }
            #gnavi ul li._parent ._children li._child a:hover:after {
              transform: translateX(30%); }
          #gnavi ul li._parent ._children li a {
            padding: 1em 2em 1em 1em;
            display: block;
            font-size: 1.1713030747vw;
            line-height: 1.5;
            color: #fff;
            text-align: left;
            width: auto;
            height: auto; }
            @media screen and (min-width: 1501px) {
              #gnavi ul li._parent ._children li a {
                font-size: 18px; } }
      #gnavi ul li._parent.active a {
        color: #198931; }
        #gnavi ul li._parent.active a:after {
          opacity: 1; }

/*---------------------------------
SP MENU
---------------------------------*/
#sp-menu-trigger {
  position: absolute;
  top: 0;
  right: 0;
  z-index: 10010;
  display: none;
  transition: 0.5s ease; }
  @media screen and (max-width: 1024px) {
    #sp-menu-trigger {
      display: block; } }
  #sp-menu-trigger a {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    color: #fff;
    text-align: center;
    background-color: #198931;
    border-radius: 0 0 0 1.4641288433vw;
    width: 6.0761346999vw;
    height: 5.8565153734vw;
    line-height: 1;
    cursor: pointer; }
    @media screen and (max-width: 768px) {
      #sp-menu-trigger a {
        border-radius: 0 0 0 5.3333333333vw;
        width: 16.8vw;
        height: 16vw; } }
    #sp-menu-trigger a:hover {
      scale: 1.05; }
    #sp-menu-trigger a ._icon {
      width: 2.3426061493vw;
      height: 1.8301610542vw;
      position: relative;
      margin: 0 0 0.1464128843vw 0.1464128843vw; }
      @media screen and (max-width: 768px) {
        #sp-menu-trigger a ._icon {
          width: 8.5333333333vw;
          height: 6.6666666667vw;
          margin: 0 0 0.5333333333vw 0.5333333333vw; } }
      #sp-menu-trigger a ._icon span {
        position: absolute;
        width: 100%;
        height: 0.1464128843vw;
        left: 0;
        background-color: #fff;
        transition: 0.5s ease; }
        @media screen and (max-width: 768px) {
          #sp-menu-trigger a ._icon span {
            height: 0.5333333333vw; } }
        #sp-menu-trigger a ._icon span:nth-child(1) {
          top: 0; }
        #sp-menu-trigger a ._icon span:nth-child(2) {
          top: 50%;
          margin-top: -0.0732064422vw; }
          @media screen and (max-width: 768px) {
            #sp-menu-trigger a ._icon span:nth-child(2) {
              margin-top: -0.2666666667vw; } }
        #sp-menu-trigger a ._icon span:nth-child(3) {
          bottom: 0; }
  #sp-menu-trigger.active a ._icon span:nth-child(1) {
    transform: translate(0vw, 0.8418740849vw) rotate(-45deg); }
    @media screen and (max-width: 768px) {
      #sp-menu-trigger.active a ._icon span:nth-child(1) {
        transform: translate(0vw, 3.0666666667vw) rotate(-45deg); } }
  #sp-menu-trigger.active a ._icon span:nth-child(2) {
    opacity: 0;
    transform: translate(100%, 0); }
  #sp-menu-trigger.active a ._icon span:nth-child(3) {
    transform: translate(0vw, -0.8418740849vw) rotate(45deg); }
    @media screen and (max-width: 768px) {
      #sp-menu-trigger.active a ._icon span:nth-child(3) {
        transform: translate(0vw, -3.0666666667vw) rotate(45deg); } }

#sp-gmenu {
  position: fixed;
  top: 0;
  left: 100vw;
  width: 100vw;
  z-index: 9999;
  transition: .5s ease;
  background-color: #f1ffe8;
  opacity: 0;
  display: none; }
  @media screen and (max-width: 1024px) {
    #sp-gmenu {
      display: block; } }
  #sp-gmenu.active {
    left: 0;
    opacity: 1; }
    #sp-gmenu.active .sp-gmenu-wrap {
      max-height: 100vh;
      max-height: 100dvh; }
  #sp-gmenu .sp-gmenu-wrap {
    padding: 6.588579795vw 0 3.6603221083vw;
    overflow: auto;
    transition: 0.5s ease; }
    @media screen and (max-width: 768px) {
      #sp-gmenu .sp-gmenu-wrap {
        padding: 18.6666666667vw 0 12.2666666667vw; } }
  #sp-gmenu .sp-gmenu-search {
    display: none; }
    @media screen and (max-width: 768px) {
      #sp-gmenu .sp-gmenu-search {
        display: block; } }
    #sp-gmenu .sp-gmenu-search ._search {
      padding: 6.9333333333vw 0 0;
      text-align: center; }
      #sp-gmenu .sp-gmenu-search ._search .search-form {
        padding: 0 0 0 3.8799414348vw;
        background: url(../img/icon-search.svg) no-repeat center left/2.9282576867vw auto; }
        @media screen and (max-width: 768px) {
          #sp-gmenu .sp-gmenu-search ._search .search-form {
            padding: 0 0 0 12.8vw;
            background-size: 9.6vw auto; } }
        @media screen and (max-width: 768px) {
          #sp-gmenu .sp-gmenu-search ._search .search-form .search-form-wrapper {
            width: 71.4666666667vw;
            height: 14.6666666667vw;
            border: solid #909091 0.2666666667vw;
            border-radius: 16vw;
            font-size: 4.2666666667vw; } }
        @media screen and (max-width: 768px) {
          #sp-gmenu .sp-gmenu-search ._search .search-form .search-form-wrapper .search-form-input {
            width: 75%; } }
        @media screen and (max-width: 768px) {
          #sp-gmenu .sp-gmenu-search ._search .search-form .search-form-wrapper .search-form-button {
            width: 25%; } }
    #sp-gmenu .sp-gmenu-search ._tel {
      padding: 2.196193265vw 0 0;
      display: flex;
      flex-direction: column;
      align-items: center;
      width: 23.4260614934vw;
      transition: 0.5s ease; }
      @media screen and (max-width: 768px) {
        #sp-gmenu .sp-gmenu-search ._tel {
          padding: 3.2vw 0 0;
          width: auto; } }
      #sp-gmenu .sp-gmenu-search ._tel ._number {
        font-size: 1.756954612vw;
        font-weight: 700;
        text-align: center;
        line-height: 1.4; }
        @media screen and (max-width: 768px) {
          #sp-gmenu .sp-gmenu-search ._tel ._number {
            font-size: 6.4vw; } }
        #sp-gmenu .sp-gmenu-search ._tel ._number a {
          display: inline-block;
          padding: 0 0 0 2.9282576867vw;
          background: url(../img/icon-tel.svg) no-repeat center left/2.196193265vw auto; }
          @media screen and (max-width: 768px) {
            #sp-gmenu .sp-gmenu-search ._tel ._number a {
              padding: 0 0 0 10.6666666667vw;
              background-size: 8vw auto; } }
      #sp-gmenu .sp-gmenu-search ._tel ._time {
        font-size: 1.4641288433vw;
        font-weight: 600;
        letter-spacing: .04em;
        text-align: center; }
        @media screen and (max-width: 768px) {
          #sp-gmenu .sp-gmenu-search ._tel ._time {
            font-size: 3.7333333333vw;
            padding: 0 0 0 1.5em; } }
  #sp-gmenu .sp-gmenu-list {
    padding: 1.4641288433vw 2.9282576867vw 0vw; }
    @media screen and (max-width: 768px) {
      #sp-gmenu .sp-gmenu-list {
        padding: 5.3333333333vw 6.9333333333vw 0vw; } }
    #sp-gmenu .sp-gmenu-list ul li {
      border-bottom: solid #a6a6a7 0.0732064422vw; }
      @media screen and (max-width: 768px) {
        #sp-gmenu .sp-gmenu-list ul li {
          border-bottom-width: 0.2666666667vw; } }
      #sp-gmenu .sp-gmenu-list ul li:last-child {
        border-bottom: none; }
      #sp-gmenu .sp-gmenu-list ul li a {
        font-size: 1.756954612vw;
        display: block;
        padding: 1em;
        position: relative;
        font-weight: 600;
        letter-spacing: .06em; }
        @media screen and (max-width: 768px) {
          #sp-gmenu .sp-gmenu-list ul li a {
            font-size: 4.2666666667vw; } }
      #sp-gmenu .sp-gmenu-list ul li._top a:after {
        content: "";
        background: url(../img/sp-menu-arrow.svg) no-repeat center/contain;
        position: absolute;
        top: 50%;
        right: 1.317715959vw;
        width: 1.0980966325vw;
        height: 1.756954612vw;
        margin-top: -0.878477306vw;
        transition: 0.5s ease; }
        @media screen and (max-width: 768px) {
          #sp-gmenu .sp-gmenu-list ul li._top a:after {
            right: 4.8vw;
            width: 2.6666666667vw;
            height: 4.2666666667vw;
            margin-top: -2.1333333333vw; } }
      #sp-gmenu .sp-gmenu-list ul li._parent > a:before {
        content: "";
        position: absolute;
        top: 50%;
        right: 1.317715959vw;
        width: 1.317715959vw;
        height: 0.1464128843vw;
        margin-top: -0.0732064422vw;
        background-color: #198931; }
        @media screen and (max-width: 768px) {
          #sp-gmenu .sp-gmenu-list ul li._parent > a:before {
            right: 4.8vw;
            width: 4.8vw;
            height: 0.5333333333vw;
            margin-top: -0.2666666667vw; } }
      #sp-gmenu .sp-gmenu-list ul li._parent > a:after {
        content: "";
        position: absolute;
        top: 50%;
        right: 1.317715959vw;
        width: 1.317715959vw;
        height: 0.1464128843vw;
        margin-top: -0.0732064422vw;
        background-color: #198931;
        rotate: 90deg;
        transition: 0.5s ease; }
        @media screen and (max-width: 768px) {
          #sp-gmenu .sp-gmenu-list ul li._parent > a:after {
            right: 4.8vw;
            width: 4.8vw;
            height: 0.5333333333vw;
            margin-top: -0.2666666667vw; } }
      #sp-gmenu .sp-gmenu-list ul li._parent.active > a:after {
        rotate: 360deg; }
      #sp-gmenu .sp-gmenu-list ul li._parent ul._children {
        display: none;
        padding: 0 0 1.4641288433vw; }
        @media screen and (max-width: 768px) {
          #sp-gmenu .sp-gmenu-list ul li._parent ul._children {
            padding: 0 0 5.3333333333vw; } }
        #sp-gmenu .sp-gmenu-list ul li._parent ul._children li {
          border-bottom: none; }
          #sp-gmenu .sp-gmenu-list ul li._parent ul._children li a {
            padding: .5em 0 .5em 2em; }
            #sp-gmenu .sp-gmenu-list ul li._parent ul._children li a:after {
              content: "";
              background: url(../img/sp-menu-arrow.svg) no-repeat center/contain;
              position: absolute;
              top: 50%;
              right: 1.317715959vw;
              width: 0.7320644217vw;
              height: 1.1713030747vw;
              margin-top: -0.5856515373vw;
              transition: 0.5s ease; }
              @media screen and (max-width: 768px) {
                #sp-gmenu .sp-gmenu-list ul li._parent ul._children li a:after {
                  right: 4.8vw;
                  width: 1.8666666667vw;
                  height: 3.2vw;
                  margin-top: -1.6vw; } }
  #sp-gmenu .sp-gmenu-meta {
    display: none;
    text-align: center; }
    @media screen and (max-width: 768px) {
      #sp-gmenu .sp-gmenu-meta {
        display: flex;
        align-items: center;
        flex-direction: column;
        gap: 3.2vw;
        padding: 5.3333333333vw 0 0; } }
    #sp-gmenu .sp-gmenu-meta a {
      display: flex;
      justify-content: center;
      align-items: center;
      background-color: #fff;
      border: solid #e6e6e6 0.0732064422vw;
      width: 17.2035139092vw;
      height: 3.6603221083vw;
      border-radius: 0.7320644217vw; }
      @media screen and (max-width: 768px) {
        #sp-gmenu .sp-gmenu-meta a {
          border-width: 0.2666666667vw;
          width: 62.6666666667vw;
          height: 13.3333333333vw;
          border-radius: 2.6666666667vw; } }
      #sp-gmenu .sp-gmenu-meta a span {
        font-size: 1.1713030747vw;
        font-weight: 600;
        letter-spacing: .06em;
        position: relative;
        padding: 0 0 0 3.2210834553vw; }
        @media screen and (max-width: 768px) {
          #sp-gmenu .sp-gmenu-meta a span {
            font-size: 4.2666666667vw;
            padding: 0 0 0 11.7333333333vw; } }
        #sp-gmenu .sp-gmenu-meta a span:before {
          content: "";
          position: absolute;
          top: 50%;
          left: 0;
          background-position: center;
          background-repeat: no-repeat;
          background-size: contain; }
    #sp-gmenu .sp-gmenu-meta ._medical a span:before {
      background-image: url(../img/icon-heart.svg);
      width: 2.3426061493vw;
      height: 2.2693997072vw;
      margin-top: -1.1346998536vw; }
      @media screen and (max-width: 768px) {
        #sp-gmenu .sp-gmenu-meta ._medical a span:before {
          width: 8.5333333333vw;
          height: 8.2666666667vw;
          margin-top: -4.1333333333vw; } }
    #sp-gmenu .sp-gmenu-meta ._access a span {
      padding: 0 0 0 2.3426061493vw; }
      @media screen and (max-width: 768px) {
        #sp-gmenu .sp-gmenu-meta ._access a span {
          padding: 0 0 0 8.5333333333vw; } }
      #sp-gmenu .sp-gmenu-meta ._access a span:before {
        background-image: url(../img/icon-pin.svg);
        width: 1.5373352855vw;
        height: 2.0497803807vw;
        margin-top: -1.0248901903vw; }
        @media screen and (max-width: 768px) {
          #sp-gmenu .sp-gmenu-meta ._access a span:before {
            width: 5.6vw;
            height: 7.4666666667vw;
            margin-top: -3.7333333333vw; } }
    #sp-gmenu .sp-gmenu-meta ._recruit a span {
      padding: 0 0 0 3.074670571vw; }
      @media screen and (max-width: 768px) {
        #sp-gmenu .sp-gmenu-meta ._recruit a span {
          padding: 0 0 0 11.2vw; } }
      #sp-gmenu .sp-gmenu-meta ._recruit a span:before {
        background-image: url(../img/icon-nurse.svg);
        width: 1.9765739385vw;
        height: 2.4158125915vw;
        margin-top: -1.2079062958vw; }
        @media screen and (max-width: 768px) {
          #sp-gmenu .sp-gmenu-meta ._recruit a span:before {
            width: 7.2vw;
            height: 8.8vw;
            margin-top: -4.4vw; } }

/*---------------------------------
FOOTER
---------------------------------*/
#pagetop {
  position: fixed;
  bottom: 2.196193265vw;
  right: 2.5622254758vw;
  z-index: 9999;
  display: none; }
  @media screen and (min-width: 1501px) {
    #pagetop {
      bottom: 30px;
      right: 35px; } }
  @media screen and (max-width: 1024px) {
    #pagetop {
      display: none !important; } }
  @media screen and (max-width: 768px) {
    #pagetop {
      bottom: 9.3333333333vw;
      right: 9.3333333333vw; } }
  #pagetop.abs {
    position: absolute; }
  #pagetop a {
    display: block;
    width: 3.6603221083vw;
    height: 3.6603221083vw;
    background: url(../img/pagetop.svg) no-repeat center/contain;
    text-align: center; }
    @media screen and (min-width: 1501px) {
      #pagetop a {
        width: 50px;
        height: 50px; } }
    @media screen and (max-width: 768px) {
      #pagetop a {
        width: 13.3333333333vw;
        height: 13.3333333333vw; } }
    #pagetop a:hover {
      transform: translateY(-10%); }

.search-form {
  display: inline-block;
  padding: 0 0 0 3.8799414348vw;
  position: relative;
  background: url(../img/icon-search.svg) no-repeat center left/2.9282576867vw auto; }
  @media screen and (min-width: 1501px) {
    .search-form {
      padding: 0 0 0 53px;
      background-size: 40px auto; } }
  @media screen and (max-width: 768px) {
    .search-form {
      padding: 0 0 0 0vw;
      background: none; } }
  .search-form .search-form-wrapper {
    display: flex;
    width: 30.7467057101vw;
    height: 4.39238653vw;
    border: solid #909091 0.0732064422vw;
    border-radius: 4.39238653vw;
    background-color: #fff;
    overflow: hidden;
    font-size: 1.317715959vw; }
    @media screen and (min-width: 1501px) {
      .search-form .search-form-wrapper {
        width: 420px;
        height: 60px;
        border: solid #909091 1px;
        border-radius: 60px;
        font-size: 18px; } }
    @media screen and (max-width: 768px) {
      .search-form .search-form-wrapper {
        width: 90.6666666667vw;
        height: 16vw;
        border: solid #909091 0.2666666667vw;
        border-radius: 16vw;
        font-size: 4.8vw; } }
    .search-form .search-form-wrapper .search-form-input {
      width: 80%;
      height: 100%;
      border: none;
      padding: 0 2em;
      outline: none;
      letter-spacing: .06em; }
      @media screen and (max-width: 768px) {
        .search-form .search-form-wrapper .search-form-input {
          width: 75%; } }
      .search-form .search-form-wrapper .search-form-input::placeholder {
        color: #333; }
    .search-form .search-form-wrapper .search-form-button {
      width: 20%;
      border: none;
      background-color: #198931;
      color: #fff;
      letter-spacing: .06em; }
      @media screen and (max-width: 768px) {
        .search-form .search-form-wrapper .search-form-button {
          width: 25%; } }

footer .footer-search {
  padding: 2.196193265vw 0;
  background-color: #f1ffe8; }
  @media screen and (min-width: 1501px) {
    footer .footer-search {
      padding: 30px 0; } }
  @media screen and (max-width: 768px) {
    footer .footer-search {
      padding: 8vw 0; } }
  footer .footer-search .footer-search-wrap {
    display: flex;
    justify-content: center; }
footer .footer-meta {
  padding: 2.9282576867vw 0 3.6603221083vw; }
  @media screen and (min-width: 1501px) {
    footer .footer-meta {
      padding: 40px 0 50px; } }
  @media screen and (max-width: 768px) {
    footer .footer-meta {
      padding: 9.3333333333vw 0 10.6666666667vw; } }
  footer .footer-meta .footer-meta-wrap {
    padding: 0 3.6603221083vw 0 4.39238653vw;
    display: flex;
    justify-content: space-between;
    align-items: center; }
    @media screen and (min-width: 1501px) {
      footer .footer-meta .footer-meta-wrap {
        padding: 0 50px 0 60px; } }
    @media screen and (max-width: 768px) {
      footer .footer-meta .footer-meta-wrap {
        padding: 0 0vw;
        flex-direction: column;
        justify-content: center; } }
    @media screen and (max-width: 768px) {
      footer .footer-meta .footer-meta-wrap ._info {
        display: flex;
        flex-direction: column;
        justify-content: center; } }
    footer .footer-meta .footer-meta-wrap ._info ._logo {
      margin: 0 0 1.0980966325vw; }
      @media screen and (min-width: 1501px) {
        footer .footer-meta .footer-meta-wrap ._info ._logo {
          margin: 0 0 15px; } }
      @media screen and (max-width: 768px) {
        footer .footer-meta .footer-meta-wrap ._info ._logo {
          margin: 0 0 4vw;
          text-align: center; } }
      footer .footer-meta .footer-meta-wrap ._info ._logo a {
        display: inline-block;
        background: url(../img/logo.svg) no-repeat center/contain;
        width: 20.3513909224vw;
        height: 5.7833089312vw; }
        @media screen and (min-width: 1501px) {
          footer .footer-meta .footer-meta-wrap ._info ._logo a {
            width: 278px;
            height: 79px; } }
        @media screen and (max-width: 768px) {
          footer .footer-meta .footer-meta-wrap ._info ._logo a {
            width: 65.3333333333vw;
            height: 18.6666666667vw; } }
    footer .footer-meta .footer-meta-wrap ._info ._meta {
      margin: 0 0 2.196193265vw; }
      @media screen and (min-width: 1501px) {
        footer .footer-meta .footer-meta-wrap ._info ._meta {
          margin: 0 0 30px; } }
      @media screen and (max-width: 768px) {
        footer .footer-meta .footer-meta-wrap ._info ._meta {
          margin: 0 0 8vw; } }
      footer .footer-meta .footer-meta-wrap ._info ._meta p {
        font-size: 1.1713030747vw;
        line-height: 1.7; }
        @media screen and (min-width: 1501px) {
          footer .footer-meta .footer-meta-wrap ._info ._meta p {
            font-size: 16px; } }
        @media screen and (max-width: 768px) {
          footer .footer-meta .footer-meta-wrap ._info ._meta p {
            font-size: 4.2666666667vw; } }
    @media screen and (max-width: 768px) {
      footer .footer-meta .footer-meta-wrap ._info ._ig {
        text-align: center; } }
    footer .footer-meta .footer-meta-wrap ._info ._ig a {
      display: flex;
      position: relative;
      align-items: center;
      justify-content: center;
      width: 19.9121522694vw;
      height: 4.39238653vw;
      border-radius: 0.7320644217vw;
      border: solid #cdcece 0.0732064422vw; }
      @media screen and (min-width: 1501px) {
        footer .footer-meta .footer-meta-wrap ._info ._ig a {
          width: 272px;
          height: 60px;
          border-radius: 10px;
          border-width: 1px; } }
      @media screen and (max-width: 768px) {
        footer .footer-meta .footer-meta-wrap ._info ._ig a {
          width: 72.5333333333vw;
          height: 16vw;
          border-radius: 2.6666666667vw;
          border-width: 0.2666666667vw;
          margin: 0 auto; } }
      footer .footer-meta .footer-meta-wrap ._info ._ig a span {
        font-size: 1.1713030747vw;
        padding: 0 0 0 3.2942898975vw;
        line-height: 1.9765739385vw;
        background: url(../img/icon-ig.svg) no-repeat center left/1.9765739385vw auto; }
        @media screen and (min-width: 1501px) {
          footer .footer-meta .footer-meta-wrap ._info ._ig a span {
            font-size: 16px;
            padding: 0 0 0 45px;
            line-height: 27px;
            background-size: 27px auto; } }
        @media screen and (max-width: 768px) {
          footer .footer-meta .footer-meta-wrap ._info ._ig a span {
            font-size: 4.2666666667vw;
            padding: 0 0 0 12vw;
            line-height: 7.2vw;
            background-size: 7.2vw auto; } }
      footer .footer-meta .footer-meta-wrap ._info ._ig a:after {
        content: "";
        position: absolute;
        top: -1.317715959vw;
        left: 0;
        width: 6.8081991215vw;
        height: 2.196193265vw;
        background: url(../img/followus.svg) no-repeat center/contain;
        transition: 0.5s ease; }
        @media screen and (min-width: 1501px) {
          footer .footer-meta .footer-meta-wrap ._info ._ig a:after {
            top: -18px;
            left: 0;
            width: 93px;
            height: 30px; } }
        @media screen and (max-width: 768px) {
          footer .footer-meta .footer-meta-wrap ._info ._ig a:after {
            top: -4.8vw;
            left: 0;
            width: 24.8vw;
            height: 8vw; } }
      footer .footer-meta .footer-meta-wrap ._info ._ig a:hover:after {
        scale: 1.1; }
    @media screen and (max-width: 768px) {
      footer .footer-meta .footer-meta-wrap ._link {
        padding: 8vw 0 0; } }
    footer .footer-meta .footer-meta-wrap ._link ul {
      display: flex;
      flex-direction: column;
      gap: 1.317715959vw; }
      @media screen and (min-width: 1501px) {
        footer .footer-meta .footer-meta-wrap ._link ul {
          gap: 18px; } }
      @media screen and (max-width: 768px) {
        footer .footer-meta .footer-meta-wrap ._link ul {
          align-items: center;
          gap: 4.8vw; } }
      footer .footer-meta .footer-meta-wrap ._link ul li a {
        display: flex;
        align-items: center;
        justify-content: center;
        width: 21.9619326501vw;
        height: 5.4904831625vw;
        border: solid #cdcece 0.0732064422vw;
        border-radius: 5.4904831625vw; }
        @media screen and (min-width: 1501px) {
          footer .footer-meta .footer-meta-wrap ._link ul li a {
            width: 300px;
            height: 75px;
            border-width: 1px;
            border-radius: 75px; } }
        @media screen and (max-width: 768px) {
          footer .footer-meta .footer-meta-wrap ._link ul li a {
            width: 80vw;
            height: 20vw;
            border-width: 0.2666666667vw;
            border-radius: 20vw; } }
        footer .footer-meta .footer-meta-wrap ._link ul li a span {
          font-size: 1.317715959vw;
          color: #fff; }
          @media screen and (min-width: 1501px) {
            footer .footer-meta .footer-meta-wrap ._link ul li a span {
              font-size: 18px; } }
          @media screen and (max-width: 768px) {
            footer .footer-meta .footer-meta-wrap ._link ul li a span {
              font-size: 4.8vw; } }
        footer .footer-meta .footer-meta-wrap ._link ul li a:hover {
          opacity: .7; }
        footer .footer-meta .footer-meta-wrap ._link ul li a._link-btn-medical {
          background-color: #198931; }
          footer .footer-meta .footer-meta-wrap ._link ul li a._link-btn-medical span {
            padding: 0 0 0 4.0263543192vw;
            line-height: 2.635431918vw;
            background: url(../img/icon-medical.svg) no-repeat center left/2.7086383602vw auto; }
            @media screen and (min-width: 1501px) {
              footer .footer-meta .footer-meta-wrap ._link ul li a._link-btn-medical span {
                padding: 0 0 0 55px;
                line-height: 36px;
                background-size: 37px auto; } }
            @media screen and (max-width: 768px) {
              footer .footer-meta .footer-meta-wrap ._link ul li a._link-btn-medical span {
                padding: 0 0 0 14.6666666667vw;
                line-height: 9.6vw;
                background-size: 9.8666666667vw auto; } }
        footer .footer-meta .footer-meta-wrap ._link ul li a._link-btn-recruit {
          background-color: #ff8bae; }
          footer .footer-meta .footer-meta-wrap ._link ul li a._link-btn-recruit span {
            padding: 0 0 0 4.0263543192vw;
            line-height: 3.1478770132vw;
            background: url(../img/icon-recruit.svg) no-repeat center left/2.4890190337vw auto; }
            @media screen and (min-width: 1501px) {
              footer .footer-meta .footer-meta-wrap ._link ul li a._link-btn-recruit span {
                padding: 0 0 0 55px;
                line-height: 43px;
                background-size: 34px auto; } }
            @media screen and (max-width: 768px) {
              footer .footer-meta .footer-meta-wrap ._link ul li a._link-btn-recruit span {
                padding: 0 0 0 14.6666666667vw;
                line-height: 11.4666666667vw;
                background-size: 9.0666666667vw auto; } }
footer .footer-navi {
  background-color: #198931;
  color: #fff;
  border-radius: 5.1244509517vw 5.1244509517vw 0 0;
  padding: 3.6603221083vw 0 4.39238653vw;
  letter-spacing: .1em; }
  @media screen and (min-width: 1501px) {
    footer .footer-navi {
      border-radius: 70px 70px 0 0;
      padding: 50px 0 60px; } }
  @media screen and (max-width: 768px) {
    footer .footer-navi {
      border-radius: 10.6666666667vw 10.6666666667vw 0 0;
      padding: 0vw 0 0vw; } }
  footer .footer-navi .inner {
    padding: 0 3.6603221083vw; }
    @media screen and (min-width: 1501px) {
      footer .footer-navi .inner {
        padding: 0 50px; } }
    @media screen and (max-width: 768px) {
      footer .footer-navi .inner {
        padding: 0; } }
  footer .footer-navi .footer-navi-wrap {
    margin: 0; }
    @media screen and (max-width: 768px) {
      footer .footer-navi .footer-navi-wrap {
        margin: 0;
        padding: 0; } }
  footer .footer-navi .sp-footer-trigger {
    display: none; }
    @media screen and (max-width: 768px) {
      footer .footer-navi .sp-footer-trigger {
        display: block;
        font-size: 5.8666666667vw;
        letter-spacing: .1em; }
        footer .footer-navi .sp-footer-trigger a {
          display: block;
          position: relative;
          padding: 10.1333333333vw; }
          footer .footer-navi .sp-footer-trigger a:before {
            content: "";
            width: 4.2666666667vw;
            height: 0.5333333333vw;
            background-color: #fff;
            position: absolute;
            top: 14.4vw;
            right: 10.1333333333vw;
            rotate: -450deg;
            transition: 0.5s ease; }
          footer .footer-navi .sp-footer-trigger a:after {
            content: "";
            width: 4.2666666667vw;
            height: 0.5333333333vw;
            background-color: #fff;
            position: absolute;
            top: 14.4vw;
            right: 10.1333333333vw; } }
    footer .footer-navi .sp-footer-trigger.active a:before {
      rotate: 0deg; }
  footer .footer-navi .footer-navi-container {
    display: flex;
    justify-content: space-between; }
    @media screen and (max-width: 768px) {
      footer .footer-navi .footer-navi-container {
        display: none;
        padding: 1.6vw 10.1333333333vw 13.3333333333vw; } }
    @media screen and (max-width: 768px) {
      footer .footer-navi .footer-navi-container ._col {
        margin: 0 0 8vw; } }
    footer .footer-navi .footer-navi-container ._col ._fl {
      display: flex;
      gap: 3.6603221083vw; }
      @media screen and (min-width: 1501px) {
        footer .footer-navi .footer-navi-container ._col ._fl {
          gap: 50px; } }
      @media screen and (max-width: 768px) {
        footer .footer-navi .footer-navi-container ._col ._fl {
          display: block; } }
    footer .footer-navi .footer-navi-container a:hover {
      text-decoration: underline; }
    footer .footer-navi .footer-navi-container .str {
      font-size: 1.1713030747vw;
      font-weight: 600;
      background-color: #198931;
      position: relative;
      z-index: 2;
      line-height: 1.5;
      margin: 2.196193265vw 0 0; }
      @media screen and (min-width: 1501px) {
        footer .footer-navi .footer-navi-container .str {
          font-size: 18px;
          margin: 30px 0 0; } }
      @media screen and (max-width: 768px) {
        footer .footer-navi .footer-navi-container .str {
          font-size: 5.3333333333vw;
          margin: 8vw 0 0; } }
      footer .footer-navi .footer-navi-container .str + .str {
        margin: .8em 0 0; }
    footer .footer-navi .footer-navi-container dl {
      color: #fff;
      position: relative; }
      footer .footer-navi .footer-navi-container dl:before {
        content: "";
        position: absolute;
        top: 0;
        left: 0;
        width: 0.0732064422vw;
        height: 100%;
        z-index: 1;
        background-color: #fff; }
        @media screen and (min-width: 1501px) {
          footer .footer-navi .footer-navi-container dl:before {
            width: 1px; } }
        @media screen and (max-width: 768px) {
          footer .footer-navi .footer-navi-container dl:before {
            width: 0.2666666667vw; } }
      footer .footer-navi .footer-navi-container dl + dl {
        margin-top: 2.196193265vw; }
        @media screen and (min-width: 1501px) {
          footer .footer-navi .footer-navi-container dl + dl {
            margin-top: 30px; } }
        @media screen and (max-width: 768px) {
          footer .footer-navi .footer-navi-container dl + dl {
            margin-top: 8vw; } }
      footer .footer-navi .footer-navi-container dl dt {
        font-size: 1.1713030747vw;
        font-weight: 600;
        background-color: #198931;
        position: relative;
        z-index: 2;
        padding: 0 0 .8em; }
        @media screen and (min-width: 1501px) {
          footer .footer-navi .footer-navi-container dl dt {
            font-size: 18px; } }
        @media screen and (max-width: 768px) {
          footer .footer-navi .footer-navi-container dl dt {
            font-size: 5.3333333333vw; } }
      footer .footer-navi .footer-navi-container dl dd {
        font-size: 0.9516837482vw;
        font-weight: 600;
        padding: 0 0 .2em 1.5em; }
        @media screen and (min-width: 1501px) {
          footer .footer-navi .footer-navi-container dl dd {
            font-size: 16px; } }
        @media screen and (max-width: 768px) {
          footer .footer-navi .footer-navi-container dl dd {
            font-size: 4.8vw; } }
        footer .footer-navi .footer-navi-container dl dd ul li {
          line-height: 2.5; }
          footer .footer-navi .footer-navi-container dl dd ul li a {
            position: relative; }
          footer .footer-navi .footer-navi-container dl dd ul li.parent {
            margin: 0 0 .3em; }
            footer .footer-navi .footer-navi-container dl dd ul li.parent a span {
              /*display:inline-block;
              padding:0 2em 0 0;
              position:relative;*/
              /*&:after{
                content:"＞";
                position:absolute;
                top:0;
                right:0;
              }*/ }
          footer .footer-navi .footer-navi-container dl dd ul li.child a span {
            /*display:inline-block;
            //padding:0 0 0 1em;
            position:relative;*/
            /*&:after{
              content:"-";
              position:absolute;
              top:0;
              left:0;
            }*/ }
footer .copyright {
  text-align: center;
  padding: 1.4641288433vw 0 2.196193265vw;
  background-color: #fff; }
  @media screen and (min-width: 1501px) {
    footer .copyright {
      padding: 20px 0 30px; } }
  @media screen and (max-width: 768px) {
    footer .copyright {
      padding: 5.3333333333vw 0 6.6666666667vw; } }
  footer .copyright small {
    font-size: 0.878477306vw; }
    @media screen and (min-width: 1501px) {
      footer .copyright small {
        font-size: 12px; } }
    @media screen and (max-width: 768px) {
      footer .copyright small {
        font-size: 3.2vw; } }

/*# sourceMappingURL=common.css.map */
