@charset "UTF-8";
/**
* Table of Contntens:
*
* 1.0 - Reset
* 2.0 - Global Style
* 3.0 - Basic Structure
* 4.0 - Header
* 5.0 - Footer
* 6.0 - Page
*   6.1 - Home
*   6.2 - About
*   6.3 - History
*   6.3 - Information
*   6.4 - Facilities
*   6.5 - Facility(single)
*     6.5.1 - Adachi
*     6.5.2 - Ayase
*     6.5.3 - Toneri
*     6.5.4 - Takenoduka
*     6.5.5 - Shien
*     6.5.6 - ooyata
*     6.5.7 - Shinmei
*     6.5.8 - Hanahata
*   6.6 - Service
*   6.7 - Service(single)
*     6.7.1 - Life Care
*     6.7.2 - Entrance
*   6.8 - Activity
*   6.12 - Topics & Blog
*   6.13 - Topics(Single)
*   6.14 - Blog
*   6.15 - Contact
*   6.16 - Privacypolicy
* -----------------------------------------------------------------------------
*/
/**
* 1.0 - リセット
* -----------------------------------------------------------------------------
*/
/* http://meyerweb.com/eric/tools/css/reset/
   v2.0 | 20110126
   License: none (public domain)
*/
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  vertical-align: baseline;
  box-sizing: border-box; }

/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
  display: block; }

ol, ul {
  list-style: none; }

blockquote, q {
  quotes: none; }

blockquote:before, blockquote:after,
q:before, q:after {
  content: '';
  content: none; }

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

/*------LINKS------*/
a:link {
  text-decoration: none;
  color: inherit; }

a:visited {
  text-decoration: none;
  color: inherit; }

a:hover {
  text-decoration: none;
  color: inherit; }

a:active {
  text-decoration: none;
  color: inherit; }

button:focus {
  outline: 0; }

/**
* 2.0 - Global Style
* -----------------------------------------------------------------------------
*/
/****************************************
Break Point Settings
****************************************/
/****************************************
Color Settings
****************************************/
.col-adachi {
  color: #58D5E8; }

.col-ayase {
  color: #88B666; }

.col-toneri {
  color: #dcde30; }

.col-hanahata {
  color: #eda1bf; }

.col-takenotsuka {
  color: #79B680; }

.col-shien {
  color: #F3998F; }

.col-shinmei {
  color: #5296DC; }

.col-ooyata {
  color: #F3B56C; }

.col-honbu {
  color: #AAB6BD; }

.bg-adachi {
  background-color: #58D5E8; }

.bg-ayase {
  background-color: #88B666; }

.bg-toneri {
  background-color: #dcde30; }

.bg-hanahata {
  background-color: #eda1bf; }

.bg-takenotsuka {
  background-color: #79B680; }

.bg-shien {
  background-color: #F3998F; }

.bg-shinmei,
.bg-shinmei-day,
.bg-shinmei-sagyou,
.bg-shinmei-fukushi {
  background-color: #5296DC; }

.bg-ooyata {
  background-color: #F3B56C; }

.bg-honbu {
  background-color: #AAB6BD; }

/* border */
.border-adachi {
  border-bottom-color: #58D5E8; }

.border-ayase {
  border-bottom-color: #88B666; }

.border-toneri {
  border-bottom-color: #dcde30; }

.border-hanahata {
  border-bottom-color: #eda1bf; }

.border-takenotsuka {
  border-bottom-color: #79B680; }

.border-shien {
  border-bottom-color: #F3998F; }

.border-shinmei {
  border-bottom-color: #5296DC; }

.border-ooyata {
  border-bottom-color: #F3B56C; }

.border-honbu {
  border-bottom-color: #AAB6BD; }

/* Flex box */
.flex {
  display: flex;
  justify-content: space-between; }

/* Visivility depends on the device */
@media screen and (min-width: 896px) {
  .pconly {
    display: block; } }

@media screen and (max-width: 897px) {
  .pconly {
    display: none !important; } }

@media screen and (min-width: 896px) {
  .tabonly {
    display: none; } }

@media screen and (max-width: 897px) {
  .tabonly {
    display: block !important; } }

@media screen and (max-width: 480px) {
  .tabonly {
    display: none !important; } }

@media screen and (max-width: 480px) {
  .pc-tab {
    display: none !important; } }

@media screen and (min-width: 896px) {
  .tab-sp {
    display: none; } }

@media screen and (max-width: 897px) {
  .tab-sp {
    display: block !important; } }

@media screen and (min-width: 896px) {
  .sponly {
    display: none !important; } }

@media screen and (max-width: 897px) {
  .sponly {
    display: none !important; } }

@media screen and (max-width: 480px) {
  .sponly {
    display: block !important; } }

.ieonly {
  display: none; }
  @media all and (-ms-high-contrast: none) {
    .ieonly {
      display: inline-block; } }
@media all and (-ms-high-contrast: none) {
  .iehidden {
    display: none; } }

.inlineblock {
  display: inline-block !important; }

.block {
  display: block !important; }

.wordbreak-all {
  word-break: break-all; }

/* Typography */
html {
  font-family: dnp-shuei-mgothic-std, sans-serif;
  font-size: 14px;
  -webkit-text-size-adjust: 100%;
  font-feature-settings: 'pkna';
  /* Font Size Settings （記述順注意） */ }
  @media screen and (max-width: 320px) {
    html {
      font-size: 14px; } }
  @media screen and (min-width: 321px) {
    html {
      font-size: calc(14px + ((1vw - 320px / 100) * 1.25)); } }
  @media screen and (min-width: 480px) {
    html {
      font-size: 16px; } }
  @media screen and (min-width: 897px) {
    html {
      font-size: calc(14px + ((1vw - 897px / 100) * 2.4)); } }
  @media screen and (min-width: 980px) {
    html {
      font-size: calc(16px + ((1vw - 980px / 100) * 0.666)); } }
  @media screen and (min-width: 1280px) {
    html {
      font-size: 18px; } }
body {
  color: #595652;
  line-height: 1.8;
  font-family: dnp-shuei-mgothic-std, sans-serif !important;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }

.fot {
  font-family: fot-tsukuardgothic-std, sans-serif;
  font-weight: 700;
  font-style: normal; }

.coq {
  font-family: coquette, sans-serif;
  font-style: normal; }

/* Buttons */
.btn1 {
  background-color: #fff;
  border-radius: 100px;
  box-shadow: 3px 3px 0 rgba(0, 0, 0, 0.3);
  text-align: center;
  display: block;
  padding: 10px 10px;
  margin-bottom: 10px;
  width: 80%;
  margin-left: auto;
  margin-right: auto;
  position: relative;
  transition: .1s linear;
  font-weight: 600; }
  @media screen and (max-width: 897px) {
    .btn1 {
      padding-top: 5px;
      padding-bottom: 5px; } }
  .btn1:after {
    width: 15px;
    height: 9px;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    right: 10px;
    content: "";
    background-image: url("/resource/images/home/arrow4.svg");
    background-size: contain;
    background-repeat: no-repeat; }
  .btn1:hover {
    transform: translateY(3px);
    box-shadow: none;
    background-color: #E6E5E4; }
    .btn1:hover:after {
      animation: arrow_anim .4s;
      right: 10px; }

.btn2 {
  background-color: rgba(89, 86, 82, 0.1);
  width: 100%;
  max-width: 243px;
  display: block;
  padding: 0.75em 0;
  text-align: center;
  font-weight: bold;
  margin-left: auto;
  margin-right: auto;
  border-radius: 100px;
  position: relative;
  overflow: hidden;
  margin-top: 20px;
  font-size: 0.8125rem; }
  .btn2:before {
    content: "";
    width: 15px;
    height: 9px;
    background-image: url("/resource/images/home/arrow4.svg");
    background-size: contain;
    background-repeat: no-repeat;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    right: 10px;
    z-index: 1; }
  .btn2:after {
    right: 100%;
    content: "";
    width: 100%;
    height: 100%;
    position: absolute;
    content: "";
    top: 0;
    transition: .2s linear;
    background-color: #30C8A8; }
  .btn2:hover:before {
    background-image: url("/resource/images/home/arrow6.svg");
    animation: arrow_anim .4s; }
  .btn2:hover:after {
    right: 0; }
  .btn2:hover span {
    color: #fff; }
  .btn2 span {
    position: relative;
    z-index: 1;
    transition: .2s linear; }

/* Alignment */
.center {
  text-align: center; }

/* Element */
h2, h3, h4 {
  letter-spacing: 0.04em; }

/* NoLink */
.noevent {
  pointer-events: none;
  cursor: default;
  text-decoration: none; }

/* Animations */
@keyframes line_updown {
  0% {
    bottom: -20px;
    height: 0; }
  50% {
    bottom: -77px;
    height: 57px; }
  100% {
    bottom: -77px;
    height: 0px; } }

/* Border Radius for Images*/
.rad_xl {
  border-radius: 30px; }

.rad_l {
  border-radius: 20px; }

.rad_m {
  border-radius: 15px; }

.rad_s {
  border-radius: 10px; }

/**
* 3.0 - Basic Structure
* -----------------------------------------------------------------------------
*/
body {
  background-color: #F9F9F7;
  overflow-x: hidden;
  -webkit-font-smoothing: subpixel-antialiased;
  -moz-osx-font-smoothing: unset; }

.inner {
  max-width: calc(1280px + 8vw);
  width: 100%;
  padding-left: 6vw;
  padding-right: 6vw;
  margin-left: auto;
  margin-right: auto;
  position: relative;
  z-index: 2; }

.inner1028 {
  max-width: calc(1028px + 8vw); }

.inner1152 {
  max-width: calc(1152px + 8vw); }

.inner1440 {
  max-width: calc(1440px + 8vw); }

/**
* 4.0 - Header
* -----------------------------------------------------------------------------
*/
.page_header .logo {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 3;
  width: 550px;
  height: 550px; }
  @media screen and (max-width: 897px) {
    .page_header .logo {
      width: 350px;
      height: 350px; } }
  @media screen and (max-width: 480px) {
    .page_header .logo {
      width: 220px;
      height: 220px; } }
  .page_header .logo img {
    max-width: 151px; }
    @media screen and (max-width: 897px) {
      .page_header .logo img {
        max-width: 120px; } }
    @media screen and (max-width: 480px) {
      .page_header .logo img {
        max-width: 75px; } }
  .page_header .logo .fluffy {
    width: 100%;
    height: 100%; }
    .page_header .logo .fluffy > div {
      width: 100%;
      height: 100%;
      top: -300px; }
      @media screen and (max-width: 897px) {
        .page_header .logo .fluffy > div {
          top: -180px; } }
      @media screen and (max-width: 480px) {
        .page_header .logo .fluffy > div {
          top: -110px; } }
    .page_header .logo .fluffy .circle-1,
    .page_header .logo .fluffy .circle-2,
    .page_header .logo .fluffy .circle-3 {
      left: -460px; }
      @media screen and (max-width: 897px) {
        .page_header .logo .fluffy .circle-1,
        .page_header .logo .fluffy .circle-2,
        .page_header .logo .fluffy .circle-3 {
          left: -310px; } }
      @media screen and (max-width: 480px) {
        .page_header .logo .fluffy .circle-1,
        .page_header .logo .fluffy .circle-2,
        .page_header .logo .fluffy .circle-3 {
          left: -150px; } }
    .page_header .logo .fluffy .circle-4 {
      left: -500px; }
      @media screen and (max-width: 897px) {
        .page_header .logo .fluffy .circle-4 {
          left: -300px; } }
      @media screen and (max-width: 480px) {
        .page_header .logo .fluffy .circle-4 {
          left: -180px; } }
  .page_header .logo span {
    position: absolute;
    top: 13px;
    z-index: 3;
    left: 40px;
    margin-left: auto;
    margin-right: auto;
    text-align: center; }
    @media screen and (max-width: 897px) {
      .page_header .logo span {
        left: 20px; } }
    @media screen and (max-width: 480px) {
      .page_header .logo span {
        left: 10px; } }
.page_header > .flex {
  justify-content: flex-end;
  padding-right: 90px;
  padding-top: 7vh; }

.page_header .sns {
  position: fixed;
  z-index: 20;
  top: 39px;
  right: 90px; }
  @media screen and (max-width: 480px) {
    .page_header .sns {
      display: none; } }
  .page_header .sns ul li {
    margin: 0 5px; }
    .page_header .sns ul li a {
      position: relative;
      display: inline-block;
      width: 36px;
      height: 36px;
      border: 1px solid #fff;
      border-radius: 70px;
      background-size: contain;
      transition: all .3s;
      z-index: 20;
      overflow: hidden; }
      .page_header .sns ul li a:hover {
        border: 1px solid rgba(255, 255, 255, 0);
        transform: scale3d(1.2, 1.2, 1.2); }
      .page_header .sns ul li a img {
        position: relative;
        z-index: 25;
        top: -1px;
        left: -1px; }
  .page_header .sns ul .li_instagram a::after {
    content: '';
    position: absolute;
    display: block;
    z-index: 21;
    top: 0;
    width: 40px;
    height: 40px;
    background: -webkit-linear-gradient(135deg, #427eff 0%, #f13f79 70%) no-repeat;
    background: linear-gradient(135deg, #427eff 0%, #f13f79 70%) no-repeat;
    opacity: 0;
    transition: opacity .5s; }
  .page_header .sns ul .li_instagram a::before {
    content: '';
    position: absolute;
    display: block;
    z-index: 22;
    top: 20px;
    left: -1px;
    width: 40px;
    height: 40px;
    background: -webkit-radial-gradient(#ffdb2c 10%, rgba(255, 105, 34, 0.65) 55%, rgba(255, 88, 96, 0) 70%);
    background: radial-gradient(#ffdb2c 10%, rgba(255, 105, 34, 0.65) 55%, rgba(255, 88, 96, 0) 70%);
    /*グラデーション②*/
    overflow: hidden;
    opacity: 0;
    transition: opacity .5s; }
  .page_header .sns ul .li_instagram a:hover::after, .page_header .sns ul .li_instagram a:hover::before {
    opacity: 1; }
  .page_header .sns ul .li_youtube a::after {
    content: '';
    position: absolute;
    display: block;
    z-index: 21;
    top: 0;
    width: 40px;
    height: 40px;
    background: #FF0000;
    opacity: 0;
    transition: opacity .5s; }
  .page_header .sns ul .li_youtube a:hover::after {
    opacity: 1; }
  .page_header .sns ul .li_x a::after {
    content: '';
    position: absolute;
    display: block;
    z-index: 21;
    top: 0;
    width: 40px;
    height: 40px;
    background: #000000;
    opacity: 0;
    transition: opacity .5s; }
  .page_header .sns ul .li_x a:hover::after {
    opacity: 1; }
  .page_header .sns img {
    width: 36px; }

.page_header .toggle img {
  width: 24px;
  z-index: 11;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: 0;
  right: 0;
  margin-left: auto;
  margin-right: auto; }

.toggle_bg,
.toggle_bg_grey {
  content: "";
  width: 58px;
  height: 58px;
  right: 20px;
  top: 28px;
  position: fixed;
  border-radius: 50%;
  transform: scale(1); }
  @media screen and (max-width: 480px) {
    .toggle_bg,
    .toggle_bg_grey {
      top: 12px; } }
.toggle_bg {
  background: #fff;
  z-index: 11; }
  .toggle_bg:hover {
    cursor: pointer; }

.toggle_bg_grey {
  background: #F0EFEE;
  transition: transform .5s ease-in-out;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  z-index: 10; }

body.open {
  overflow: hidden; }
  body.open .toggle_bg_grey {
    transform: scale(100);
    transition: all .5s ease-in-out; }
  body.open .sns ul .li_instagram a {
    background-image: url("/resource/images/common/icon_insta_open.svg"); }
  body.open .sns ul .li_youtube a {
    background-image: url("/resource/images/common/icon_youtube_open.svg"); }
  body.open .sns ul .li_x a {
    background-image: url("/resource/images/common/icon_x_open.svg"); }

.toggle_line,
.toggle_line span {
  display: inline-block;
  transition: all .4s;
  box-sizing: border-box; }

.toggle_line {
  position: fixed;
  width: 32px;
  height: 24px;
  right: 33px;
  top: 44px;
  margin-left: auto;
  margin-right: auto;
  z-index: 15;
  cursor: pointer; }
  @media screen and (max-width: 480px) {
    .toggle_line {
      top: 30px; } }
  .toggle_line span {
    position: absolute;
    left: 0;
    width: 100%;
    height: 3px;
    border-radius: 3px; }
    .toggle_line span:nth-of-type(1) {
      top: 0;
      background-color: #00E9C5; }
    .toggle_line span:nth-of-type(2) {
      top: 10px;
      background-color: #FFD200; }
    .toggle_line span:nth-of-type(3) {
      bottom: 0;
      background-color: #FFA1AA; }
  .toggle_line:hover span:nth-of-type(2) {
    width: 70%; }
  .toggle_line.active span:nth-of-type(1) {
    transform: translateY(10px) rotate(-45deg); }
  .toggle_line.active span:nth-of-type(2) {
    left: 50%;
    opacity: 0;
    animation: active-menu-bar02 .8s forwards; }
  .toggle_line.active span:nth-of-type(3) {
    transform: translateY(-10px) rotate(45deg); }

body.open .toggle_line {
  z-index: 20; }

@-webkit-keyframes active-menu-bar02 {
  100% {
    height: 0; } }

@keyframes active-menu-bar02 {
  100% {
    height: 0; } }

/* Drawer */
.drawer {
  display: none;
  position: fixed;
  z-index: 12;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh; }
  @media screen and (max-width: 897px) {
    .drawer {
      padding-top: 100px; } }
  @media screen and (max-width: 480px) {
    .drawer {
      height: 100%;
      overflow: scroll;
      padding-top: 20px;
      padding-bottom: 50px; } }
  .drawer .inner {
    max-width: calc(1440px + 8vw);
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    left: 0;
    right: 0;
    margin-left: auto;
    margin-right: auto;
    padding-right: 5vw;
    padding-left: 5vw; }
    @media screen and (max-width: 897px) {
      .drawer .inner {
        position: static;
        transform: translateY(0); } }
    .drawer .inner .drawer_top {
      padding-right: 80px;
      margin-bottom: 60px; }
      .drawer .inner .drawer_top ul {
        display: flex;
        justify-content: flex-end; }
        .drawer .inner .drawer_top ul li {
          flex-basis: 36px;
          max-width: 36px;
          margin-right: 10px; }
          .drawer .inner .drawer_top ul li img {
            width: 100%; }
          .drawer .inner .drawer_top ul li:first-child {
            flex-basis: 60px;
            max-width: 60px;
            margin-right: auto; }
      @media screen and (max-width: 897px) {
        .drawer .inner .drawer_top {
          margin-bottom: 3rem; } }
  .drawer .drawer_nav1 {
    margin-bottom: 47px;
    justify-content: center; }
    @media screen and (max-width: 897px) {
      .drawer .drawer_nav1 {
        flex-wrap: wrap;
        margin-bottom: 37px; } }
    @media screen and (max-width: 480px) {
      .drawer .drawer_nav1 {
        display: block; } }
    .drawer .drawer_nav1 > div {
      flex-basis: 22.7%;
      max-width: 280px;
      background-color: #fff;
      border-radius: 20px;
      box-shadow: 0 0 20px rgba(0, 0, 0, 0.1);
      padding: 2rem 1.3rem;
      margin: 0 0.6vw; }
      @media screen and (max-width: 897px) {
        .drawer .drawer_nav1 > div {
          flex-basis: 48%;
          max-width: 48%;
          margin-bottom: 25px;
          padding-bottom: 40px; } }
      @media screen and (max-width: 480px) {
        .drawer .drawer_nav1 > div {
          max-width: 100%;
          padding-bottom: .9rem;
          padding-top: .9rem;
          border-radius: 10px;
          margin-bottom: 1.5rem; } }
      .drawer .drawer_nav1 > div h3 {
        color: #30C8A8;
        font-size: 0.75rem;
        letter-spacing: 0.1vw;
        font-feature-settings: 'palt';
        text-align: center;
        margin-bottom: 1rem;
        font-weight: normal; }
        @media screen and (max-width: 480px) {
          .drawer .drawer_nav1 > div h3 {
            font-size: 1rem;
            color: #595652;
            text-align: left;
            margin-bottom: 0;
            padding-left: 10px; } }
        .drawer .drawer_nav1 > div h3 .accordion_icon {
          margin-right: -10px; }
        .drawer .drawer_nav1 > div h3.active {
          color: #BDBCBB; }
      .drawer .drawer_nav1 > div ul li a {
        font-size: 0.75rem; }
        @media screen and (max-width: 480px) {
          .drawer .drawer_nav1 > div ul li a {
            font-size: .95rem; } }
      @media screen and (max-width: 480px) {
        .drawer .drawer_nav1 > div > ul {
          display: none;
          border-top: 1px dotted #E3E2E2;
          margin-top: 1rem; } }
      @media screen and (max-width: 480px) {
        .drawer .drawer_nav1 > div > ul > li {
          position: relative; } }
      @media screen and (max-width: 480px) {
        .drawer .drawer_nav1 > div > ul > li:before {
          position: absolute;
          right: 0;
          top: 3px;
          margin-right: 0; } }
      .drawer .drawer_nav1 > div > ul > li > a {
        font-weight: bold; }
        .drawer .drawer_nav1 > div > ul > li > a img {
          max-width: 100%; }
      .drawer .drawer_nav1 > div > ul > li .nav_sub {
        padding-left: 5px;
        margin-top: .5rem; }
        @media screen and (max-width: 480px) {
          .drawer .drawer_nav1 > div > ul > li .nav_sub {
            padding-left: 0; } }
        @media screen and (max-width: 480px) {
          .drawer .drawer_nav1 > div > ul > li .nav_sub li {
            position: relative;
            margin-top: 20px;
            margin-bottom: 20px; } }
        .drawer .drawer_nav1 > div > ul > li .nav_sub li:before {
          content: "";
          width: 4px;
          height: 8px;
          background-image: url("/resource/images/common/listmark2.svg");
          background-size: contain;
          background-repeat: no-repeat;
          display: inline-block;
          vertical-align: middle;
          margin-right: 13px; }
          @media screen and (max-width: 480px) {
            .drawer .drawer_nav1 > div > ul > li .nav_sub li:before {
              position: absolute;
              top: 3px;
              right: 4px;
              margin-right: 0 !important; } }
      .drawer .drawer_nav1 > div > ul .li_recruit {
        margin: 1rem 1rem 0 1rem; }
        .drawer .drawer_nav1 > div > ul .li_recruit:before {
          display: none; }
        .drawer .drawer_nav1 > div > ul .li_recruit a {
          transition: opacity .1s; }
          .drawer .drawer_nav1 > div > ul .li_recruit a:hover {
            opacity: .8; }
            .drawer .drawer_nav1 > div > ul .li_recruit a:hover:after {
              display: none; }
          @media screen and (max-width: 897px) {
            .drawer .drawer_nav1 > div > ul .li_recruit a img {
              max-width: 159px; } }
      .drawer .drawer_nav1 > div:last-child .nav_sub li:before {
        content: "";
        display: inline-block;
        width: 11px;
        height: 8px;
        background-image: url("/resource/images/common/listmark_external.svg");
        background-size: contain;
        background-repeat: no-repeat;
        vertical-align: middle;
        margin-right: 7px; }
  @media screen and (max-width: 480px) {
    .drawer .drawer_nav1 > div > ul > li,
    .drawer .drawer_nav3 > ul > li {
      position: relative;
      margin: 20px 0; } }
  .drawer .drawer_nav1 > div > ul > li:before,
  .drawer .drawer_nav3 > ul > li:before {
    content: "";
    width: 14px;
    height: 14px;
    background-image: url("/resource/images/common/listmark1.svg");
    background-size: contain;
    display: inline-block;
    vertical-align: middle;
    margin-right: 5px; }
  .drawer .drawer_nav1 > div > ul > li a,
  .drawer .drawer_nav3 > ul > li a {
    position: relative;
    transition: color .1s; }
    .drawer .drawer_nav1 > div > ul > li a:after,
    .drawer .drawer_nav3 > ul > li a:after {
      content: "";
      width: 100%;
      height: 1px;
      background-color: #30C8A8;
      position: absolute;
      bottom: 0;
      left: 0;
      transition: opacity .3s;
      opacity: 0; }
    .drawer .drawer_nav1 > div > ul > li a:hover,
    .drawer .drawer_nav3 > ul > li a:hover {
      color: #30C8A8;
      position: relative;
      text-decoration: none; }
      .drawer .drawer_nav1 > div > ul > li a:hover:after,
      .drawer .drawer_nav3 > ul > li a:hover:after {
        opacity: 1; }
  .drawer .drawer_nav1 > div > ul.nav_main > li,
  .drawer .drawer_nav3 > ul.nav_main > li {
    line-height: 1;
    padding: .5rem 0; }
    @media screen and (max-width: 480px) {
      .drawer .drawer_nav1 > div > ul.nav_main > li,
      .drawer .drawer_nav3 > ul.nav_main > li {
        padding-left: 10px; } }
  .drawer .drawer_nav1 > div > ul.nav_main .nav_sub > li,
  .drawer .drawer_nav3 > ul.nav_main .nav_sub > li {
    line-height: 1;
    padding: .5rem 0;
    text-indent: -17.5px;
    padding-left: 17.5px; }
    @media screen and (max-width: 897px) {
      .drawer .drawer_nav1 > div > ul.nav_main .nav_sub > li,
      .drawer .drawer_nav3 > ul.nav_main .nav_sub > li {
        padding-top: .3rem;
        padding-bottom: .3rem; } }
    @media screen and (max-width: 480px) {
      .drawer .drawer_nav1 > div > ul.nav_main .nav_sub > li,
      .drawer .drawer_nav3 > ul.nav_main .nav_sub > li {
        padding-bottom: 0;
        margin-bottom: 0; } }
  .drawer .drawer_bottom {
    position: absolute;
    bottom: 3vh;
    left: 0;
    right: 0;
    margin-left: auto;
    margin-right: auto; }
    @media screen and (max-width: 480px) {
      .drawer .drawer_bottom {
        position: static;
        padding-left: 4vw;
        padding-right: 4vw; } }
    .drawer .drawer_bottom .drawer_nav2 {
      margin-bottom: 20px; }
      @media screen and (max-width: 480px) {
        .drawer .drawer_bottom .drawer_nav2 {
          padding-left: 4vw;
          padding-right: 4vw; } }
      .drawer .drawer_bottom .drawer_nav2 ul {
        justify-content: center; }
        @media screen and (max-width: 480px) {
          .drawer .drawer_bottom .drawer_nav2 ul {
            border-radius: 10px;
            overflow: hidden; } }
        .drawer .drawer_bottom .drawer_nav2 ul li {
          margin: 0 10px; }
          @media screen and (max-width: 480px) {
            .drawer .drawer_bottom .drawer_nav2 ul li {
              margin-left: 0;
              margin-right: 0;
              flex-basis: 50%;
              max-width: 50%;
              font-size: .85rem;
              letter-spacing: .1em;
              white-space: nowrap; } }
          .drawer .drawer_bottom .drawer_nav2 ul li a {
            display: block;
            width: 100%;
            height: 100%; }
            @media screen and (max-width: 480px) {
              .drawer .drawer_bottom .drawer_nav2 ul li a {
                text-align: center;
                line-height: 1.2;
                padding-top: 10px;
                padding-bottom: 10px; } }
            @media screen and (max-width: 480px) {
              .drawer .drawer_bottom .drawer_nav2 ul li a:before {
                background-size: contain;
                background-repeat: no-repeat;
                display: block;
                margin-left: auto;
                margin-right: auto;
                content: "";
                margin-bottom: 5px;
                background-position: center center; } }
          .drawer .drawer_bottom .drawer_nav2 ul li:first-child a {
            width: 61px;
            height: 61px;
            display: block;
            background-image: url("/resource/images/common/icon_home_drawer.svg");
            background-repeat: no-repeat;
            background-size: contain; }
          .drawer .drawer_bottom .drawer_nav2 ul li:nth-child(2), .drawer .drawer_bottom .drawer_nav2 ul li:nth-child(3) {
            height: 53px;
            line-height: 53px; }
            @media screen and (max-width: 480px) {
              .drawer .drawer_bottom .drawer_nav2 ul li:nth-child(2), .drawer .drawer_bottom .drawer_nav2 ul li:nth-child(3) {
                height: auto;
                line-height: normal; } }
            .drawer .drawer_bottom .drawer_nav2 ul li:nth-child(2) a, .drawer .drawer_bottom .drawer_nav2 ul li:nth-child(3) a {
              border-radius: 36px;
              color: #fff;
              padding-right: 30px;
              padding-left: 30px; }
              @media screen and (max-width: 480px) {
                .drawer .drawer_bottom .drawer_nav2 ul li:nth-child(2) a, .drawer .drawer_bottom .drawer_nav2 ul li:nth-child(3) a {
                  border-radius: 0;
                  padding-left: 10px;
                  padding-right: 10px; } }
          .drawer .drawer_bottom .drawer_nav2 ul li:nth-child(2) a {
            background-color: #30C8A8; }
            @media screen and (max-width: 480px) {
              .drawer .drawer_bottom .drawer_nav2 ul li:nth-child(2) a:before {
                background-image: url("/resource/images/common/icon_tel_w.svg");
                width: 21px;
                height: 27px; } }
          .drawer .drawer_bottom .drawer_nav2 ul li:nth-child(3) a {
            background-color: #F3979E; }
            @media screen and (max-width: 480px) {
              .drawer .drawer_bottom .drawer_nav2 ul li:nth-child(3) a:before {
                background-image: url("/resource/images/common/icon_mail_w.svg");
                width: 31px;
                height: 27px; } }
    @media screen and (max-width: 897px) {
      .drawer .drawer_bottom .drawer_nav3 {
        margin-top: 30px; } }
    .drawer .drawer_bottom .drawer_nav3 ul {
      text-align: center; }
      @media screen and (max-width: 480px) {
        .drawer .drawer_bottom .drawer_nav3 ul {
          text-align: left;
          display: flex;
          flex-wrap: wrap; } }
      .drawer .drawer_bottom .drawer_nav3 ul li {
        display: inline-block;
        margin: 0 20px; }
        @media screen and (max-width: 480px) {
          .drawer .drawer_bottom .drawer_nav3 ul li {
            flex-basis: 50%;
            max-width: 50%;
            margin-right: 0;
            margin-left: 0; } }
        .drawer .drawer_bottom .drawer_nav3 ul li a {
          font-size: 0.8125rem;
          display: inline-block; }
        @media screen and (max-width: 897px) {
          .drawer .drawer_bottom .drawer_nav3 ul li:first-child {
            margin-left: 0; } }
        @media screen and (max-width: 897px) {
          .drawer .drawer_bottom .drawer_nav3 ul li:last-child {
            margin-right: 0; } }
/**
* 5.0 - Footer
* -----------------------------------------------------------------------------
*/
footer {
  position: relative;
  z-index: 2;
  height: 650px; }
  @media screen and (max-width: 897px) {
    footer {
      height: 570px; } }
  @media screen and (max-width: 480px) {
    footer {
      height: 780px; } }
  footer:before {
    content: "";
    width: 100%;
    height: 11px;
    background-image: url("/resource/images/common/line_footer.jpg");
    background-size: contain;
    background-repeat: repeat-x;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1; }
  footer .totop {
    width: 80px;
    height: 80px;
    position: fixed;
    bottom: 30px;
    right: 30px;
    z-index: 2;
    cursor: pointer; }
    footer .totop:hover .fluffy {
      transform: scale(1.1); }
    footer .totop .fluffy {
      width: 100%;
      height: 100%;
      transition: 0.2s; }
      footer .totop .fluffy > div {
        width: 100%;
        height: 100%;
        mix-blend-mode: screen;
        top: -10px; }
      footer .totop .fluffy .white {
        width: 70px;
        height: 70px;
        margin-top: 5px; }
    footer .totop span {
      position: absolute;
      top: 13px;
      z-index: 3;
      left: 0;
      right: 0;
      margin-left: auto;
      margin-right: auto;
      text-align: center; }
      footer .totop span img {
        width: 20px;
        height: 32px; }

.footer_top {
  background-size: cover;
  background-position: center center;
  background-image: url("/resource/images/common/bg_footer1.jpg");
  height: 510px;
  overflow: hidden;
  position: relative; }
  @media screen and (max-width: 897px) {
    .footer_top {
      height: 500px; } }
  @media screen and (max-width: 480px) {
    .footer_top {
      padding-left: 4vw;
      padding-right: 4vw;
      height: 280px; } }
  .footer_top .logo_en {
    display: block;
    margin-left: auto;
    margin-right: auto;
    padding-top: 68px;
    max-width: 406px; }
    @media screen and (max-width: 897px) {
      .footer_top .logo_en {
        padding-top: 40px; } }
    @media screen and (max-width: 480px) {
      .footer_top .logo_en {
        max-width: 267px;
        z-index: 10;
        position: relative; } }
  .footer_top .clip_footer1,
  .footer_top .clip_footer2,
  .footer_top .clip_footer3,
  .footer_top .clip_footer4 {
    position: absolute;
    z-index: 1; }
    .footer_top .clip_footer1 span,
    .footer_top .clip_footer2 span,
    .footer_top .clip_footer3 span,
    .footer_top .clip_footer4 span {
      width: 100%;
      height: 100%;
      display: block;
      background-size: contain;
      background-repeat: no-repeat; }
  .footer_top .clip_footer1 {
    top: -250px;
    right: -150px;
    width: 393px;
    height: 393px;
    animation: horizontal1 4s ease-in-out infinite alternate; }
    .footer_top .clip_footer1 span {
      border-radius: 50%;
      background-color: rgba(48, 207, 175, 0.6);
      animation: vertical 4.4s ease-in-out infinite alternate; }
    @media screen and (max-width: 480px) {
      .footer_top .clip_footer1 {
        width: 300px;
        height: 300px;
        right: -200px;
        top: -180px; } }
  .footer_top .clip_footer2 {
    top: 100px;
    right: 0px;
    width: 150px;
    height: 150px;
    animation: horizontal1 4s ease-in-out infinite alternate; }
    .footer_top .clip_footer2 span {
      animation: vertical2 5.2s ease-in-out infinite alternate;
      background-image: url("/resource/images/common/clip_header3.png"); }
    @media screen and (max-width: 480px) {
      .footer_top .clip_footer2 {
        width: 95px;
        height: 95px;
        top: 130px;
        right: -62px; } }
  .footer_top .clip_footer3 {
    bottom: -240px;
    left: -200px;
    width: 500px;
    height: 500px;
    animation: horizontal1 4s ease-in-out infinite alternate; }
    .footer_top .clip_footer3 span {
      border-radius: 50%;
      background-color: rgba(250, 158, 165, 0.65);
      animation: vertical 4.4s ease-in-out infinite alternate; }
    @media screen and (max-width: 480px) {
      .footer_top .clip_footer3 {
        width: 456px;
        height: 456px;
        bottom: -280px;
        left: -280px; } }
  .footer_top .clip_footer4 {
    bottom: 0px;
    left: 180px;
    width: 192px;
    height: 192px;
    animation: horizontal1 4s ease-in-out infinite alternate; }
    .footer_top .clip_footer4 span {
      animation: vertical2 5.2s ease-in-out infinite alternate;
      background-image: url("/resource/images/common/clip_header3.png"); }
    @media screen and (max-width: 480px) {
      .footer_top .clip_footer4 {
        width: 95px;
        height: 95px;
        bottom: 130px;
        right: -62px; } }
.footer_bottom {
  bottom: 0;
  z-index: 1;
  position: absolute;
  left: 0;
  width: 100%;
  text-align: center;
  background-image: url("/resource/images/common/bg_footer_bottom.png");
  background-size: 100% 100%;
  background-position: center center; }
  @media screen and (max-width: 897px) {
    .footer_bottom {
      background-size: cover; } }
  .footer_bottom .inner {
    position: relative; }
  .footer_bottom .logo_footer {
    max-width: 330px;
    display: block;
    margin-left: auto;
    margin-right: auto;
    padding-top: 50px; }
    @media screen and (max-width: 480px) {
      .footer_bottom .logo_footer {
        width: 62%;
        position: relative; } }
  .footer_bottom .flex {
    justify-content: center;
    margin-top: 20px;
    margin-bottom: 20px; }
    @media screen and (max-width: 480px) {
      .footer_bottom .flex {
        border-radius: 10px;
        overflow: hidden; } }
    .footer_bottom .flex > div {
      margin: 0 10px;
      flex-basis: 270px;
      max-width: 270px; }
      @media screen and (max-width: 480px) {
        .footer_bottom .flex > div {
          margin-left: 0;
          margin-right: 0; } }
      .footer_bottom .flex > div a {
        color: #fff;
        text-align: center;
        display: block;
        width: 100%;
        height: 100%;
        border-radius: 100px;
        padding: 8px 10px;
        font-size: 0.875rem;
        letter-spacing: 0;
        transition: .2s linear;
        border-width: 2px;
        border-style: solid; }
        @media screen and (max-width: 480px) {
          .footer_bottom .flex > div a {
            border-radius: 0;
            line-height: 1.2;
            font-size: 1rem; } }
        @media screen and (max-width: 480px) {
          .footer_bottom .flex > div a:before {
            display: block;
            background-repeat: no-repeat;
            background-size: contain;
            content: "";
            margin-left: auto;
            margin-right: auto;
            margin-bottom: 6px; } }
        .footer_bottom .flex > div a:hover {
          background-color: #fff !important; }
      .footer_bottom .flex > div:first-child a {
        background-color: #30CFAF;
        border-color: #30CFAF; }
        @media screen and (max-width: 480px) {
          .footer_bottom .flex > div:first-child a:before {
            width: 33px;
            height: 20px;
            background-image: url("/resource/images/common/icon_mail_w.svg"); } }
        .footer_bottom .flex > div:first-child a:hover {
          color: #30CFAF; }
      .footer_bottom .flex > div:nth-child(2) a {
        background-color: #FA9EA5;
        border-color: #FA9EA5; }
        @media screen and (max-width: 480px) {
          .footer_bottom .flex > div:nth-child(2) a:before {
            width: 25px;
            height: 20px;
            background-image: url("/resource/images/common/icon_tel_w.svg"); } }
        .footer_bottom .flex > div:nth-child(2) a:hover {
          color: #FA9EA5; }
  .footer_bottom .bnr_left {
    position: absolute;
    left: calc(135px + ((1vw - 14px) * 29));
    top: 100px;
    width: calc(202.5px + ((1vw - 8.98px) * 3.9841)); }
    .footer_bottom .bnr_left img {
      width: 100%;
      transition: opacity .2s ease-out; }
      .footer_bottom .bnr_left img:hover {
        opacity: .7; }
    @media screen and (min-width: 1440px) {
      .footer_bottom .bnr_left {
        left: calc(135px + ((1vw - 14px) * -20));
        width: 200px; } }
    @media screen and (max-width: 897px) {
      .footer_bottom .bnr_left {
        left: 3vw;
        top: -15px; } }
    @media screen and (max-width: 480px) {
      .footer_bottom .bnr_left {
        width: 100%;
        position: static;
        margin-bottom: 20px;
        margin-top: 20px; } }
  .footer_bottom .to_home {
    color: #30CFAF;
    transition: all .2s; }
    .footer_bottom .to_home img {
      width: 52px;
      vertical-align: middle;
      margin-right: 10px; }
    .footer_bottom .to_home:hover {
      opacity: .7; }

.copyright {
  background-color: #fff;
  text-align: center;
  color: #AFAEAC;
  font-size: 12px;
  padding-top: 20px;
  padding-bottom: 15px; }

/**
* 6.0 - Page
* -----------------------------------------------------------------------------
*/
/* ふわふわオブジェクト */
.fluffy {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  margin-left: auto;
  margin-right: auto; }
  .fluffy .circle-1 {
    opacity: 0.5;
    border-radius: 70% 55% 50% 50%/50% 50% 60% 55%;
    animation: border-animation 120s infinite linear; }
  .fluffy .circle-2 {
    opacity: 0.3;
    border-radius: 80% 80% 80% 80%/80% 80% 80% 80%;
    animation: border-animation 80s infinite linear; }
  .fluffy .circle-3 {
    opacity: 0.3;
    border-radius: 40% 60% 50% 45%/60% 50% 65% 55%;
    animation: border-animation 65s infinite linear; }
  .fluffy .circle-4 {
    opacity: 1;
    border-radius: 50% 54% 50% 52%/53% 50% 53% 48%;
    animation: border-animation 60s infinite linear; }
  .fluffy .peach-pink {
    background: #f3979e; }
  .fluffy .light-green {
    background: #80ff4d; }
  .fluffy .light-blue {
    background: #00ffe3; }
  .fluffy .white {
    background: #fff;
    width: 270px;
    height: 280px; }
  .fluffy div {
    left: 0;
    right: 0;
    margin-left: auto;
    margin-right: auto;
    position: absolute; }

.fluffy.lg {
  width: 296px;
  height: 296px; }
  @media screen and (max-width: 897px) {
    .fluffy.lg {
      width: 117px;
      height: 117px; } }
  .fluffy.lg .circle-1,
  .fluffy.lg .circle-2 {
    width: 100%;
    height: 100%; }
  .fluffy.lg .circle-3 {
    width: 105%;
    height: 105%; }
  .fluffy.lg .circle-4 {
    width: 102%;
    height: 102%;
    top: 0;
    left: 0; }
  .fluffy.lg p {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    font-size: 1.5625rem;
    left: 0;
    right: 0;
    margin-left: auto;
    margin-right: auto;
    font-weight: bold;
    text-align: center;
    z-index: 1; }

.fluffy.md {
  width: 2rem;
  height: 2rem; }
  @media screen and (max-width: 480px) {
    .fluffy.md {
      width: 33px;
      height: 33px; } }
  .fluffy.md .circle-1 {
    margin-top: -3px; }
  .fluffy.md .circle-1,
  .fluffy.md .circle-2 {
    width: 100%;
    height: 100%; }
  .fluffy.md .circle-3 {
    width: 100%;
    height: 100%;
    margin-top: 3px; }

.fluffy.sm {
  width: 25px; }
  .fluffy.sm div {
    width: 23px;
    height: 23px; }
  .fluffy.sm .peach-pink {
    width: 25px;
    height: 25px;
    margin-top: 3px; }

@keyframes border-animation {
  to {
    transform: rotate(360deg); } }

/* Category Label Color */
.cat_adachi {
  background-color: #58D5E8; }

.cat_ayase {
  background-color: #88B666; }

.cat_toneri {
  background-color: #dcde30; }

.cat_hanahata {
  background-color: #eda1bf; }

.cat_takenotsuka {
  background-color: #79B680; }

.cat_shien {
  background-color: #F3998F; }

.cat_shinmei {
  background-color: #5296DC; }

.cat_ooyata {
  background-color: #F3B56C; }

.cat_honbu {
  background-color: #AAB6BD; }

/* 事業紹介ナビ */
.nav_service {
  margin-top: 50px;
  margin-bottom: 120px; }
  @media screen and (max-width: 480px) {
    .nav_service {
      margin-top: 20px;
      margin-bottom: 60px; } }
  @media screen and (max-width: 480px) {
    .nav_service > .flex {
      display: block; } }
  .nav_service .title {
    flex-basis: 24%;
    max-width: 24%;
    padding-left: 2.6%;
    padding-right: 2.6%; }
    @media screen and (max-width: 897px) {
      .nav_service .title {
        flex-basis: 32%;
        max-width: 32%; } }
    @media screen and (max-width: 480px) {
      .nav_service .title {
        max-width: 100%;
        text-align: center; } }
    .nav_service .title img {
      width: 100%; }
      @media screen and (max-width: 480px) {
        .nav_service .title img {
          max-width: 165px; } }
  .nav_service .contents {
    flex: 1; }
    .nav_service .contents ul {
      flex-wrap: wrap; }
      @media screen and (max-width: 480px) {
        .nav_service .contents ul {
          display: block;
          padding-left: 4vw;
          padding-right: 4vw; } }
      .nav_service .contents ul li {
        display: flex;
        align-items: center;
        background-color: #fff;
        font-size: 18px;
        border-radius: 10px;
        box-shadow: 3px 3px 0 rgba(0, 0, 0, 0.1);
        flex-basis: 32.5%;
        max-width: 32.5%;
        min-height: 70px;
        margin-bottom: 10px;
        position: relative;
        font-weight: bold;
        padding: 0.5rem;
        padding-left: 40px;
        transition: .2s ease-in-out; }
        @media screen and (max-width: 897px) {
          .nav_service .contents ul li {
            font-size: 1rem;
            flex-basis: 48.9%;
            max-width: 48.9%;
            padding-left: 40px;
            padding-right: 40px;
            min-height: 5rem;
            padding: 0 0 0 40px; } }
        @media screen and (max-width: 480px) {
          .nav_service .contents ul li {
            max-width: 100%;
            min-height: 70px; } }
        .nav_service .contents ul li .service_title {
          display: inline-block;
          margin: 0.3em 1em 0.3em 0; }
        .nav_service .contents ul li .sm {
          font-size: 12px;
          display: inline-block;
          vertical-align: middle;
          line-height: 1.2;
          color: #80807D;
          font-weight: normal;
          letter-spacing: 0.08em;
          padding-right: 2em; }
          @media screen and (max-width: 897px) {
            .nav_service .contents ul li .sm {
              margin-top: 0; } }
          @media screen and (max-width: 480px) {
            .nav_service .contents ul li .sm {
              font-size: 10px; } }
          .nav_service .contents ul li .sm span {
            display: inline-block; }
            .nav_service .contents ul li .sm span.slash:after {
              content: "／";
              margin: 0 0.1em 0 0.5em; }
              @media screen and (max-width: 897px) {
                .nav_service .contents ul li .sm span.slash:after {
                  content: ""; } }
        .nav_service .contents ul li a {
          display: flex;
          align-items: center;
          width: 100%;
          height: 100%;
          cursor: pointer; }
          @media screen and (max-width: 480px) {
            .nav_service .contents ul li a {
              position: absolute;
              left: 0;
              padding-left: 36px; } }
        .nav_service .contents ul li .content {
          position: relative;
          display: block;
          letter-spacing: 0.12em;
          line-height: 1;
          padding: 0.5em; }
          @media screen and (max-width: 480px) {
            .nav_service .contents ul li .content {
              top: 43%;
              transform: translateY(-50%); } }
        .nav_service .contents ul li:before {
          content: "";
          width: 18px;
          height: 18px;
          left: 20px;
          background-size: contain;
          background-repeat: no-repeat;
          position: absolute;
          top: 50%;
          transform: translateY(-50%);
          transition: .7s ease-in-out; }
          @media screen and (max-width: 897px) {
            .nav_service .contents ul li:before {
              left: 10px; } }
        .nav_service .contents ul li:nth-child(2n+1):before {
          background-image: url("/resource/images/common/icon_circle1.png"); }
        .nav_service .contents ul li:nth-child(2n):before {
          background-image: url("/resource/images/common/icon_circle2.png"); }
        .nav_service .contents ul li:after {
          content: "";
          width: 15px;
          height: 9px;
          background-image: url("/resource/images/home/arrow4.svg");
          background-size: contain;
          background-repeat: no-repeat;
          position: absolute;
          top: 50%;
          right: 15px;
          transform: translateY(-50%); }
        .nav_service .contents ul li:hover {
          background-color: #dededd;
          cursor: pointer;
          -ms-transform: translateY(3px);
          -webkit-transform: translateY(3px);
          transform: translateY(3px); }
          .nav_service .contents ul li:hover:before {
            opacity: 0; }
          .nav_service .contents ul li:hover:after {
            opacity: 1; }
      .nav_service .contents ul .reserve {
        background: none;
        padding: 10px 0;
        box-shadow: none;
        font-size: 0.8125rem; }
        .nav_service .contents ul .reserve a {
          background-color: rgba(89, 86, 82, 0.1);
          padding-left: 10px;
          padding-right: 10px;
          text-align: center;
          border-radius: 10px; }
        .nav_service .contents ul .reserve:before {
          opacity: 0; }
        .nav_service .contents ul .reserve:after {
          background-image: url("/resource/images/home/arrow3.svg"); }
      .nav_service .contents ul .width2 {
        flex-basis: 66.25%;
        margin-right: 1.25%;
        max-width: 66.25%; }
        @media screen and (max-width: 897px) {
          .nav_service .contents ul .width2 {
            max-width: 48.9%; } }
        @media screen and (max-width: 480px) {
          .nav_service .contents ul .width2 {
            max-width: 100%; } }
      @media screen and (max-width: 480px) {
        .nav_service .contents ul .reserve {
          max-width: 228px;
          margin-right: 0;
          margin-left: auto; } }
/* 下層ページ共通 */
.page .page_header {
  position: absolute;
  width: 100%; }

.page .mainvisual {
  background-size: cover;
  background-position: center center;
  height: 80vh;
  max-height: 600px;
  position: relative;
  z-index: 2;
  overflow: hidden; }
  @media screen and (max-width: 480px) {
    .page .mainvisual {
      height: 60vh; } }
  .page .mainvisual h2 {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    left: 0;
    right: 0;
    margin-left: auto;
    margin-right: auto;
    text-align: center; }
  .page .mainvisual .clip_header1,
  .page .mainvisual .clip_header2,
  .page .mainvisual .clip_header3,
  .page .mainvisual .clip_header4,
  .page .mainvisual .clip_header5 {
    position: absolute;
    z-index: 1; }
    .page .mainvisual .clip_header1 span,
    .page .mainvisual .clip_header2 span,
    .page .mainvisual .clip_header3 span,
    .page .mainvisual .clip_header4 span,
    .page .mainvisual .clip_header5 span {
      width: 100%;
      height: 100%;
      display: block;
      background-size: contain;
      background-repeat: no-repeat; }
  .page .mainvisual .clip_header1 {
    top: -330px;
    right: -150px;
    width: 478px;
    height: 478px;
    animation: horizontal1 4s ease-in-out infinite alternate; }
    .page .mainvisual .clip_header1 span {
      border-radius: 50%;
      background-color: rgba(48, 207, 175, 0.8);
      animation: vertical 4.4s ease-in-out infinite alternate; }
    @media screen and (max-width: 480px) {
      .page .mainvisual .clip_header1 {
        width: 456px;
        height: 456px;
        right: -268px; } }
  .page .mainvisual .clip_header2 {
    top: 200px;
    right: 140px;
    width: 44px;
    height: 44px;
    animation: horizontal2 4s ease-in-out infinite alternate; }
    .page .mainvisual .clip_header2 span {
      border-radius: 50%;
      background-color: rgba(246, 154, 161, 0.6);
      animation: vertical 6s ease-in-out infinite alternate; }
    @media screen and (max-width: 480px) {
      .page .mainvisual .clip_header2 {
        width: 37px;
        height: 37px;
        top: 130px;
        right: 50px; } }
  .page .mainvisual .clip_header3 {
    top: 200px;
    right: -40px;
    width: 150px;
    height: 150px;
    animation: horizontal1 4s ease-in-out infinite alternate; }
    .page .mainvisual .clip_header3 span {
      animation: vertical2 5.2s ease-in-out infinite alternate;
      background-image: url("/resource/images/common/clip_header3.png"); }
    @media screen and (max-width: 480px) {
      .page .mainvisual .clip_header3 {
        width: 95px;
        height: 95px;
        top: 130px;
        right: -62px; } }
  .page .mainvisual .clip_header4 {
    bottom: -340px;
    left: -270px;
    width: 500px;
    height: 500px;
    animation: horizontal2 4s ease-in-out infinite alternate; }
    .page .mainvisual .clip_header4 span {
      border-radius: 50%;
      background-color: rgba(246, 154, 161, 0.4);
      animation: vertical 6s ease-in-out infinite alternate; }
    @media screen and (max-width: 480px) {
      .page .mainvisual .clip_header4 {
        width: 320px;
        height: 320px;
        left: -210px;
        bottom: -200px; } }
  .page .mainvisual .clip_header5 {
    bottom: -40px;
    left: 80px;
    width: 150px;
    height: 150px;
    animation: horizontal1 4s ease-in-out infinite alternate; }
    .page .mainvisual .clip_header5 span {
      animation: vertical2 5.2s ease-in-out infinite alternate;
      background-image: url("/resource/images/common/clip_header3.png"); }
    @media screen and (max-width: 480px) {
      .page .mainvisual .clip_header5 {
        width: 95px;
        height: 95px;
        bottom: -20px;
        left: 50px; } }
.page .sec_page {
  padding-top: 20px; }
  .page .sec_page h2 {
    font-size: 1.68rem;
    text-align: center;
    font-weight: bold;
    position: relative;
    padding-top: 2.5rem;
    margin-bottom: 2.5rem; }
    @media screen and (max-width: 897px) {
      .page .sec_page h2 {
        font-size: 1.75rem; } }
.page .label {
  position: relative; }
  .page .label div.wrapper {
    max-height: 148px;
    position: relative; }
  .page .label div.text {
    position: absolute;
    width: 100%;
    top: 50%;
    left: 50%;
    -ms-transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    margin: 0;
    padding: 0;
    text-align: center;
    font-weight: bold;
    font-size: 0.875rem;
    letter-spacing: 0.1em;
    line-height: 1.5; }

/* アコーディオンアニメーション */
.accordion_icon,
.accordion_icon span {
  display: inline-block;
  transition: all .4s;
  box-sizing: border-box; }

.accordion_icon {
  position: relative;
  width: 30px;
  height: 30px;
  float: right;
  border-radius: 15px;
  margin-right: 10px;
  /*＋、－切り替え*/ }
  .accordion_icon span {
    position: absolute;
    width: 50%;
    height: 2px;
    background-color: #30CFAF;
    border-radius: 4px;
    left: 8px; }
    .accordion_icon span:nth-of-type(1) {
      top: 14px;
      transform: rotate(0deg); }
    .accordion_icon span:nth-of-type(2) {
      top: 14px;
      transform: rotate(90deg); }
  .accordion_icon.active {
    background-color: #30CFAF; }
    .accordion_icon.active span {
      background-color: #fff; }
      .accordion_icon.active span:nth-of-type(1) {
        display: none; }
      .accordion_icon.active span:nth-of-type(2) {
        top: 14px;
        transform: rotate(180deg); }

/* Parallax Image */
.bg_para1,
.bg_para2 {
  position: fixed;
  z-index: 1;
  transform-origin: 50% 50%;
  border-radius: 50%;
  display: none; }

.bg_para1 {
  width: 511px;
  height: 511px;
  background-color: #30CFAF;
  top: 35%;
  animation: anim_para2 5.5s ease-in-out infinite;
  right: -280px;
  opacity: 0.9; }
  @media screen and (max-width: 897px) {
    .bg_para1 {
      width: 255px;
      height: 255px;
      right: -134px; } }
  @media screen and (max-width: 480px) {
    .bg_para1 {
      width: 158px;
      height: 158px;
      right: -74px; } }
.bg_para2 {
  width: 348px;
  height: 348px;
  background-color: #FA9EA5;
  top: 37%;
  animation: anim_para2 4.5s ease-in-out infinite;
  left: -100px;
  opacity: 0.4; }
  @media screen and (max-width: 897px) {
    .bg_para2 {
      width: 228px;
      height: 228px;
      left: -94px; } }
  @media screen and (max-width: 480px) {
    .bg_para2 {
      width: 178px;
      height: 178px;
      left: -74px;
      top: 76%; } }
@keyframes anim_para1 {
  0% {
    transform: translateY(0); }
  33.33333% {
    transform: translateY(-50px); }
  100% {
    transform: translateY(0); } }

@keyframes anim_para2 {
  0% {
    transform: translateY(0); }
  66.66666% {
    transform: translateY(-30px); }
  100% {
    transform: translateY(0); } }

@keyframes anim_para3 {
  0% {
    transform: translateY(0); }
  40% {
    transform: translateY(-50px); }
  100% {
    transform: translateY(0); } }

@keyframes anim_para4 {
  0% {
    transform: translateY(0); }
  50% {
    transform: translateY(-50px); }
  100% {
    transform: translateY(0); } }

/**
* 6.1 - Home
* -----------------------------------------------------------------------------
*/
.loading {
  position: fixed;
  width: 100vw;
  height: 100vh;
  z-index: 10;
  background-color: #fff;
  top: 0;
  left: 0; }
  .loading .loading_contents {
    left: 0;
    right: 0;
    margin-left: auto;
    margin-right: auto; }
  .loading .loading_title {
    width: 235px;
    margin-top: 35px;
    margin-left: 44px; }
    @media screen and (max-width: 480px) {
      .loading .loading_title {
        width: 55vw;
        margin-top: 26px;
        margin-left: 5vw; } }
    .loading .loading_title img {
      width: 100%; }
  .loading .fluffy {
    width: 20vh;
    height: 20vh;
    position: absolute;
    top: calc(50% - 25vh);
    left: 0;
    right: 0;
    margin-left: auto;
    margin-right: auto; }
    @media screen and (max-width: 897px) {
      .loading .fluffy {
        top: calc(50% - 270px); } }
    @media screen and (max-width: 480px) {
      .loading .fluffy {
        width: 42vw;
        height: 42vw;
        top: calc(50% - 190px); } }
    .loading .fluffy > div {
      width: 20vh;
      height: 20vh; }
      @media screen and (max-width: 480px) {
        .loading .fluffy > div {
          width: 42vw;
          height: 42vw; } }
    .loading .fluffy .circle-1 {
      width: 20vh;
      height: 20vh;
      animation: border-animation 20s infinite linear; }
      @media screen and (max-width: 480px) {
        .loading .fluffy .circle-1 {
          width: 42vw;
          height: 42vw; } }
    .loading .fluffy .circle-2 {
      margin-top: -8px;
      animation: border-animation 17s infinite linear; }
    .loading .fluffy .circle-3 {
      margin-top: 10px;
      animation: border-animation 15s infinite linear; }
    .loading .fluffy .white {
      width: 19vh;
      height: 19vh;
      top: 1vh; }
      @media screen and (max-width: 480px) {
        .loading .fluffy .white {
          width: 40vw;
          height: 40vw; } }
    .loading .fluffy p {
      position: absolute;
      left: 0;
      right: 0;
      text-align: center;
      top: 54%;
      transform: translateY(-50%);
      color: #30cdad; }
      .loading .fluffy p img {
        height: 13vh;
        width: auto; }
  .loading .catch {
    display: flex;
    align-items: center;
    justify-content: center;
    position: absolute;
    top: calc(50% + 20px);
    left: 0;
    right: 0; }
    @media screen and (max-width: 480px) {
      .loading .catch {
        top: calc(45% + 50px); } }
    .loading .catch div {
      writing-mode: vertical-rl;
      -ms-writing-mode: tb-rl;
      line-height: 3;
      height: 28vh;
      max-height: 250px;
      width: auto; }
      @media screen and (max-width: 480px) {
        .loading .catch div {
          line-height: 2.5; } }
      .loading .catch div p {
        opacity: 0; }
        .loading .catch div p img {
          height: 100%;
          width: auto; }
        .loading .catch div p:first-child {
          margin-top: -4px; }
        .loading .catch div p:last-child img {
          height: 100%;
          width: auto; }

@media all and (-ms-high-contrast: none) {
  .loading .catch {
    display: flex; } }

@supports (-ms-ime-align: auto) {
  .loading .catch {
    display: flex; } }

.home .page_header {
  position: relative; }
  @media screen and (max-width: 480px) {
    .home .page_header {
      position: absolute;
      top: 0;
      left: 0; } }
.home .slider_outer {
  position: relative; }
  @media screen and (max-width: 480px) {
    .home .slider_outer {
      overflow: hidden; } }
  .home .slider_outer .bg_page_header1,
  .home .slider_outer .bg_page_header2 {
    position: absolute;
    z-index: -1; }
  .home .slider_outer .bg_page_header1 {
    top: -10vh;
    right: 0;
    width: 467px; }
    @media screen and (max-width: 480px) {
      .home .slider_outer .bg_page_header1 {
        display: none; } }
  .home .slider_outer .bg_page_header2 {
    bottom: -160px;
    left: 0;
    width: 245px; }
    @media screen and (max-width: 480px) {
      .home .slider_outer .bg_page_header2 {
        display: none; } }
  .home .slider_outer .btn_scroll {
    position: absolute;
    margin-left: auto;
    margin-right: auto;
    left: 0;
    right: 0;
    z-index: 1;
    width: 60px;
    bottom: 20px; }
    @media screen and (max-width: 480px) {
      .home .slider_outer .btn_scroll {
        bottom: 150px; } }
    .home .slider_outer .btn_scroll img {
      width: 100%; }
    .home .slider_outer .btn_scroll span {
      background: rgba(255, 255, 255, 0.8);
      position: absolute;
      z-index: -1;
      border-radius: 100px;
      height: 60px;
      width: 60px;
      top: 0px;
      left: 0px; }
    .home .slider_outer .btn_scroll:hover span {
      animation: pulsate 1s ease-out;
      animation-iteration-count: infinite; }

@keyframes pulsate {
  0% {
    transform: scale(1, 1); }
  50% {
    opacity: 1; }
  100% {
    transform: scale(1.2);
    opacity: 0.0; } }

@keyframes vertical {
  0% {
    -webkit-transform: translateY(-30px); }
  100% {
    -webkit-transform: translateY(0px); } }

@keyframes vertical2 {
  0% {
    -webkit-transform: translateY(30px); }
  100% {
    -webkit-transform: translateY(0px); } }

@keyframes horizontal1 {
  0% {
    -webkit-transform: translateX(-15px); }
  100% {
    -webkit-transform: translateX(0px); } }

@keyframes horizontal2 {
  0% {
    -webkit-transform: translateX(15px); }
  100% {
    -webkit-transform: translateX(0px); } }
  .home .slider_outer .clip_slider_r1,
  .home .slider_outer .clip_slider_r2,
  .home .slider_outer .clip_slider_l1,
  .home .slider_outer .clip_slider_l2 {
    position: absolute;
    z-index: 1; }
    .home .slider_outer .clip_slider_r1 span,
    .home .slider_outer .clip_slider_r2 span,
    .home .slider_outer .clip_slider_l1 span,
    .home .slider_outer .clip_slider_l2 span {
      display: block;
      animation: vertical 4s ease-in-out infinite alternate;
      width: 100%;
      height: 100%; }
  .home .slider_outer .clip_slider_r1 {
    width: calc(4vw + 8vh);
    height: calc(4vw + 8vh);
    top: 90px;
    right: 7vw;
    animation: horizontal1 20s ease-in-out infinite alternate; }
    @media screen and (max-width: 480px) {
      .home .slider_outer .clip_slider_r1 {
        right: -100px;
        width: 250px;
        height: 250px;
        top: -50px; } }
    .home .slider_outer .clip_slider_r1 span {
      border-radius: calc(2vw + 4vh);
      background-color: rgba(243, 151, 158, 0.6);
      animation-duration: 3.5s; }
      @media screen and (max-width: 480px) {
        .home .slider_outer .clip_slider_r1 span {
          border-radius: 300px; } }
  .home .slider_outer .clip_slider_r2 {
    width: calc(6vw + 10vh);
    height: calc(6vw + 10vh);
    top: 120px;
    right: 2vw;
    animation: horizontal2 15s ease-in-out infinite alternate; }
    @media screen and (max-width: 480px) {
      .home .slider_outer .clip_slider_r2 {
        right: -40px;
        width: 93px;
        height: 93px;
        top: 150px; } }
    .home .slider_outer .clip_slider_r2 span {
      background-image: url("/resource/images/home/clip_slider.png");
      background-repeat: no-repeat;
      background-size: contain;
      animation-duration: 5s; }
  .home .slider_outer .clip_slider_l1 {
    width: calc(2vw + 8vh);
    height: calc(2vw + 8vh);
    bottom: -30px;
    left: 12vw;
    animation: horizontal1 15s ease-in-out infinite alternate; }
    @media screen and (max-width: 480px) {
      .home .slider_outer .clip_slider_l1 {
        left: 20px;
        width: 114px;
        height: 114px;
        bottom: 40px; } }
    .home .slider_outer .clip_slider_l1 span {
      border-radius: calc(1vw + 4vh);
      background-color: rgba(48, 200, 168, 0.6);
      animation-duration: 4s; }
      @media screen and (max-width: 480px) {
        .home .slider_outer .clip_slider_l1 span {
          border-radius: 57px; } }
  .home .slider_outer .clip_slider_l2 {
    width: calc(9vw + 11vh);
    height: calc(9vw + 11vh);
    bottom: 0;
    left: 3vw;
    animation: horizontal2 20s ease-in-out infinite alternate; }
    @media screen and (max-width: 480px) {
      .home .slider_outer .clip_slider_l2 {
        left: -100px;
        width: 232px;
        height: 232px;
        bottom: -100px; } }
    .home .slider_outer .clip_slider_l2 span {
      background-image: url("/resource/images/home/clip_slider.png");
      background-repeat: no-repeat;
      background-size: contain;
      animation-duration: 5s; }

.home .slider_wrap {
  position: relative;
  height: 87vh;
  margin-left: auto;
  margin-right: auto; }
  @media screen and (max-width: 480px) {
    .home .slider_wrap {
      overflow: hidden;
      height: 100vh; } }
  .home .slider_wrap .vegas-container {
    height: 100% !important; }
  .home .slider_wrap .bnr_inno-vation, .home .slider_wrap .bnr_30th {
    width: 350px;
    position: absolute;
    bottom: -30px;
    right: 4vw;
    z-index: 1; }
  .home .slider_wrap .bnr_30th {
    bottom: 85px; }
  .home .slider_wrap .btn_prev,
  .home .slider_wrap .btn_next {
    background-repeat: no-repeat;
    background-size: contain;
    width: 40px;
    height: 78px;
    top: 50%;
    transform: translateY(-50%);
    position: absolute;
    cursor: pointer;
    z-index: 4; }
    .home .slider_wrap .btn_prev:after,
    .home .slider_wrap .btn_next:after {
      content: "";
      position: absolute;
      width: 9px;
      height: 17px;
      background-size: contain;
      background-repeat: no-repeat;
      top: 50%;
      transform: translateY(-50%);
      left: 0;
      right: 0;
      margin-left: auto;
      margin-right: auto; }
    @media screen and (max-width: 480px) {
      .home .slider_wrap .btn_prev,
      .home .slider_wrap .btn_next {
        top: 65%; } }
  .home .slider_wrap .btn_prev {
    background-image: url("/resource/images/home/slider_arrow_l.png");
    left: 0; }
    .home .slider_wrap .btn_prev:after {
      background-image: url(../images/home/arrow1.svg); }
    .home .slider_wrap .btn_prev:hover:after {
      animation: arrow1 .4s; }
  .home .slider_wrap .btn_next {
    background-image: url("/resource/images/home/slider_arrow_r.png");
    right: 0; }
    .home .slider_wrap .btn_next:after {
      background-image: url(../images/home/arrow2.svg); }
    .home .slider_wrap .btn_next:hover:after {
      animation: arrow2 .4s; }
  .home .slider_wrap .dots {
    position: absolute;
    bottom: 0px;
    right: 0;
    left: 0;
    margin-left: auto;
    margin-right: auto; }
    .home .slider_wrap .dots ul {
      text-align: center; }
      .home .slider_wrap .dots ul li {
        width: 8px;
        height: 8px;
        border-radius: 4px;
        display: inline-block;
        background-color: #fff;
        margin: 0 5px;
        cursor: pointer; }
      .home .slider_wrap .dots ul .active {
        background-color: #00e9c5; }
    @media screen and (max-width: 480px) {
      .home .slider_wrap .dots {
        display: none; } }
  .home .slider_wrap .bnr_inno-vation, .home .slider_wrap .bnr_30th {
    transition: all .4s; }
    .home .slider_wrap .bnr_inno-vation:hover, .home .slider_wrap .bnr_30th:hover {
      opacity: .7; }
  .home .slider_wrap .catch_slider {
    position: absolute;
    left: 0;
    right: 0;
    margin-left: auto;
    margin-right: auto;
    top: 50%;
    transform: translateY(-50%);
    text-align: center;
    z-index: 1; }
    .home .slider_wrap .catch_slider img {
      width: 33.3vw;
      min-width: 500px; }
      @media screen and (max-width: 480px) {
        .home .slider_wrap .catch_slider img {
          max-width: 100%;
          min-width: auto;
          width: 83vw; } }
.home .slider {
  width: calc(100% - 10vw);
  margin-left: auto;
  margin-right: auto;
  border-radius: calc(2vh + 3vw + 60px);
  overflow: hidden;
  z-index: 1; }
  @media screen and (max-width: 480px) {
    .home .slider {
      border-radius: 0px;
      overflow: hidden;
      z-index: 0;
      position: relative;
      width: 100%; } }
.home .vegas-animation-kenburnsUpRight {
  animation: kenburnsUpRight2 ease-out; }

@keyframes kenburnsUpRight2 {
  0% {
    transform: scale(1) translate(0, 0); }
  100% {
    transform: scale(1) translate(0, 0); } }

.home h2 {
  font-size: 1.2rem;
  letter-spacing: .3em;
  text-align: center;
  position: relative;
  font-weight: 600; }
  .home h2 .fluffy {
    width: 30px;
    height: 30px;
    top: -42px; }
    @media screen and (max-width: 480px) {
      .home h2 .fluffy {
        top: -30px; } }
.home h2.circle {
  margin-top: 6rem;
  margin-bottom: 6rem; }
  @media screen and (max-width: 480px) {
    .home h2.circle {
      margin-top: 100px; } }
  .home h2.circle:after {
    z-index: -1;
    content: "";
    width: 190px;
    height: 190px;
    border-radius: 95px;
    background-color: #fff;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    left: 0;
    right: 0;
    margin-left: auto;
    margin-right: auto; }
    @media screen and (max-width: 480px) {
      .home h2.circle:after {
        width: 140px;
        height: 140px; } }
@keyframes arrow1 {
  50% {
    right: 10px; }
  100% {
    right: 0; } }

@keyframes arrow2 {
  50% {
    left: 10px; }
  100% {
    left: 0; } }

.home_news {
  margin: 10vh 8vw 0 8vw;
  line-height: 0; }
  @media screen and (max-width: 897px) {
    .home_news {
      margin: 10vh 6vw 0 6vw; } }
  .home_news .flex {
    max-width: 1024px;
    width: 100%;
    margin-left: auto;
    margin-right: auto; }
    @media screen and (max-width: 480px) {
      .home_news .flex {
        display: block; } }
    .home_news .flex .home_news_l {
      background-color: #fff;
      flex: 1;
      padding: .5rem;
      border-radius: 10px; }
      @media screen and (max-width: 897px) {
        .home_news .flex .home_news_l {
          padding: 1.2rem; } }
      .home_news .flex .home_news_l .label {
        padding: 1rem 2.5vw 1rem calc(2.5vw - 1rem);
        font-size: 1rem;
        text-align: center;
        font-weight: bold;
        white-space: nowrap;
        background-image: linear-gradient(to bottom, #CAC9C8, #CAC9C8 2px, transparent 2px, transparent 6px);
        background-size: 2px 8px;
        background-position: right;
        background-repeat: repeat-y; }
        @media screen and (max-width: 480px) {
          .home_news .flex .home_news_l .label {
            border-right: 0;
            border-bottom: 2px dotted #CAC9C8;
            max-width: 100%; } }
        .home_news .flex .home_news_l .label span {
          position: relative;
          display: block;
          top: 50%;
          transform: translateY(-50%);
          letter-spacing: .15; }
          @media screen and (max-width: 480px) {
            .home_news .flex .home_news_l .label span {
              transform: none;
              font-weight: bold; } }
      .home_news .flex .home_news_l .contents {
        flex: 1; }
        @media screen and (max-width: 480px) {
          .home_news .flex .home_news_l .contents {
            padding-bottom: 10px; } }
        .home_news .flex .home_news_l .contents ul li {
          margin: .2rem 1rem; }
          .home_news .flex .home_news_l .contents ul li a {
            cursor: pointer; }
            .home_news .flex .home_news_l .contents ul li a:hover .flex {
              background-color: #F9F9F0; }
            .home_news .flex .home_news_l .contents ul li a:hover .title::after {
              animation: arrow_anim .4s;
              right: 10px; }
          .home_news .flex .home_news_l .contents ul li .flex {
            position: relative;
            padding: .5rem;
            transition: .4s;
            border-radius: 3px; }
            @media screen and (max-width: 897px) {
              .home_news .flex .home_news_l .contents ul li .flex {
                display: block;
                margin-left: 1rem; } }
            @media screen and (max-width: 897px) {
              .home_news .flex .home_news_l .contents ul li .flex {
                margin-left: 0; } }
          .home_news .flex .home_news_l .contents ul li .date {
            font-size: 12px;
            color: #A7A5A3;
            margin-left: 1.8vw;
            display: inline-block;
            top: 50%;
            -webkit-transform: translateY(50%);
            /* Safari用 */
            transform: translateY(50%);
            white-space: nowrap; }
            @media screen and (max-width: 897px) {
              .home_news .flex .home_news_l .contents ul li .date {
                font-size: 11px;
                margin-left: .5rem;
                top: 0%;
                -webkit-transform: translateY(0%);
                transform: translateY(0%); } }
          .home_news .flex .home_news_l .contents ul li .cat {
            font-size: .75rem;
            color: #fff;
            border-radius: 100px;
            padding: .8em;
            margin-left: 1vw;
            display: inline-block;
            white-space: nowrap;
            font-feature-settings: "palt"; }
            @media screen and (max-width: 897px) {
              .home_news .flex .home_news_l .contents ul li .cat {
                padding: .2em 1em; } }
          .home_news .flex .home_news_l .contents ul li .cat_ooyata {
            background-color: #F3B56C; }
          .home_news .flex .home_news_l .contents ul li .title {
            flex: 1;
            color: #595652;
            font-size: 0.812rem;
            padding-right: 3em;
            margin-left: 1vw;
            position: relative;
            top: 50%;
            -webkit-transform: translateY(50%);
            /* Safari用 */
            transform: translateY(50%);
            white-space: nowrap;
            text-overflow: ellipsis; }
            .home_news .flex .home_news_l .contents ul li .title:after {
              content: "";
              width: 10px;
              height: 7px;
              position: absolute;
              right: 20px;
              background-image: url("/resource/images/home/arrow3.svg");
              background-size: contain;
              background-repeat: no-repeat; }
            @media screen and (max-width: 480px) {
              .home_news .flex .home_news_l .contents ul li .title {
                font-size: .9rem;
                top: 25%;
                overflow: hidden;
                -webkit-transform: translateY(25%);
                /* Safari用 */
                transform: translateY(50%); } }
            .home_news .flex .home_news_l .contents ul li .title a {
              padding: 0 0 5px;
              position: relative;
              transition: opacity .8s;
              -webkit-transition: opacity .8s; }
              .home_news .flex .home_news_l .contents ul li .title a:hover {
                opacity: .7; }
          @media screen and (max-width: 897px) {
            .home_news .flex .home_news_l .contents ul li {
              line-height: 1.2; } }
          @media screen and (max-width: 480px) {
            .home_news .flex .home_news_l .contents ul li {
              margin-left: 0;
              margin-right: 0; }
              .home_news .flex .home_news_l .contents ul li:not(:last-child) {
                margin-bottom: .5rem;
                margin-top: 1rem; } }
    .home_news .flex .home_news_r {
      flex-basis: 76px;
      max-width: 76px;
      margin-left: 10px; }
      @media screen and (max-width: 480px) {
        .home_news .flex .home_news_r {
          max-width: 100%;
          margin-left: 0; } }
      .home_news .flex .home_news_r a {
        display: block;
        width: 100%;
        height: 100%;
        color: #fff;
        border-radius: 10px;
        background-color: #30C8A8;
        text-align: center; }
        @media screen and (max-width: 480px) {
          .home_news .flex .home_news_r a {
            width: 80%;
            margin-left: auto;
            margin-right: auto;
            margin-top: 10px;
            font-size: 1.5rem;
            padding-top: 1.2rem;
            padding-bottom: 1.2rem; } }
        .home_news .flex .home_news_r a span {
          display: block;
          position: relative;
          top: 50%;
          transform: translateY(-50%);
          font-size: 0.8125rem; }
          @media screen and (max-width: 480px) {
            .home_news .flex .home_news_r a span {
              transform: none; } }
        .home_news .flex .home_news_r a:hover {
          background-color: #25B89A; }
  .home_news .bnr_wrap {
    width: 100%;
    margin-bottom: 2rem; }
    .home_news .bnr_wrap .bnr_recruit-sp {
      width: 100%;
      position: relative;
      display: block;
      margin: auto; }

.home_about_top {
  position: relative;
  margin-bottom: 3rem; }
  @media screen and (max-width: 897px) {
    .home_about_top {
      margin-bottom: 40px; } }
  .home_about_top .flex {
    flex-direction: row-reverse; }
    @media screen and (max-width: 897px) {
      .home_about_top .flex {
        display: block; } }
    .home_about_top .flex > div {
      flex-basis: 50%;
      max-width: 50%; }
      @media screen and (max-width: 897px) {
        .home_about_top .flex > div {
          max-width: 100%; } }
  .home_about_top .lg {
    font-size: 2.3vw;
    line-height: 2;
    margin-bottom: 30px;
    font-weight: bold;
    font-family: fot-tsukuardgothic-std, sans-serif; }
    @media screen and (max-width: 897px) {
      .home_about_top .lg {
        font-size: 2.25rem; } }
    @media screen and (max-width: 480px) {
      .home_about_top .lg {
        font-size: 1.65rem; } }
    .home_about_top .lg span {
      padding-bottom: 0.3em;
      letter-spacing: .1em;
      position: relative; }
      .home_about_top .lg span:after {
        position: absolute;
        width: 100%;
        height: 1px;
        background-color: #595652;
        content: "";
        bottom: 0;
        left: 0; }
        @media all and (-ms-high-contrast: none) {
          .home_about_top .lg span:after {
            bottom: 14px; } }
      @media all and (-ms-high-contrast: none) {
        .home_about_top .lg span {
          padding-bottom: 0; } }
  .home_about_top p {
    line-height: 2.3;
    font-size: 1.4vw;
    text-align: justify;
    text-justify: inter-ideograph;
    font-feature-settings: 'pwid'; }
    @media screen and (max-width: 897px) {
      .home_about_top p {
        font-size: 1.15rem;
        letter-spacing: .2em; } }
    @media screen and (max-width: 480px) {
      .home_about_top p {
        font-size: calc(.4rem + 2.3vw);
        letter-spacing: .1em; } }
  @media screen and (max-width: 897px) {
    .home_about_top .image {
      position: static;
      width: 100%;
      padding-left: 5%; } }
  .home_about_top .image img {
    width: 100%; }
  .home_about_top .text {
    padding-left: 10%; }

.home_about_bottom {
  margin-bottom: 100px; }
  @media screen and (max-width: 480px) {
    .home_about_bottom {
      margin-bottom: 150px; } }
  @media screen and (max-width: 480px) {
    .home_about_bottom .flex {
      display: block;
      width: 72.8%;
      margin-left: auto;
      margin-right: auto; } }
  .home_about_bottom .flex > div {
    max-width: 27%;
    flex-basis: 27%; }
    @media screen and (max-width: 897px) {
      .home_about_bottom .flex > div {
        max-width: 31.1%;
        flex-basis: 31.1%; } }
    @media screen and (max-width: 480px) {
      .home_about_bottom .flex > div {
        max-width: 100%;
        margin-bottom: 40px; } }
    .home_about_bottom .flex > div .thum {
      margin-bottom: 20px; }
      .home_about_bottom .flex > div .thum img {
        width: 100%; }
    .home_about_bottom .flex > div .title {
      font-size: 0.8125rem; }
      @media screen and (max-width: 897px) {
        .home_about_bottom .flex > div .title a {
          width: 100%; } }
    .home_about_bottom .flex > div:nth-child(2) .title a:after {
      background-image: url("/resource/images/home/arrow5.svg"); }

@keyframes arrow_anim {
  50% {
    right: 5px; }
  100% {
    right: 10px; } }

@media screen and (max-width: 480px) {
  .home_blog {
    margin-bottom: 150px; } }

.home_blog h3 {
  text-align: center;
  position: relative; }
  .home_blog h3:before, .home_blog h3:after {
    width: calc(100vw/2 - 150px);
    height: 10px;
    background-size: contain;
    background-repeat: repeat-x;
    background-image: url("/resource/images/home/line1.png");
    content: "";
    position: absolute;
    top: 50%;
    transform: translateY(-50%); }
    @media screen and (max-width: 480px) {
      .home_blog h3:before, .home_blog h3:after {
        background-size: cover;
        width: calc(100vw/2 - 110px); } }
  .home_blog h3:before {
    left: 0; }
  .home_blog h3:after {
    right: 0; }
  .home_blog h3 img {
    width: 244px; }
    @media screen and (max-width: 480px) {
      .home_blog h3 img {
        width: 180px; } }
  .home_blog h3 span {
    position: relative; }
    @media screen and (max-width: 480px) {
      .home_blog h3 span {
        position: static; } }
    .home_blog h3 span .bubble {
      position: absolute;
      top: -100px;
      left: 100%;
      max-width: 173px;
      width: 30vw;
      z-index: 1; }
      @media screen and (max-width: 480px) {
        .home_blog h3 span .bubble {
          right: 0;
          left: auto;
          width: 138px; } }
.home_blog .slider_blog {
  margin-top: 50px;
  margin-bottom: 30px; }
  @media screen and (max-width: 897px) {
    .home_blog .slider_blog {
      padding-left: 0;
      padding-right: 0; } }
  @media screen and (max-width: 480px) {
    .home_blog .slider_blog {
      margin-top: 30px; } }
  .home_blog .slider_blog .thum {
    margin-bottom: 30px;
    transition: all 0.4s cubic-bezier(0.23, 1, 0.58, 1);
    padding-top: 56%;
    border-radius: 10px;
    background-size: cover;
    background-position: center center; }
    @media screen and (max-width: 897px) {
      .home_blog .slider_blog .thum {
        margin-bottom: 20px; } }
    @media screen and (max-width: 480px) {
      .home_blog .slider_blog .thum {
        min-height: 160px; } }
    .home_blog .slider_blog .thum img {
      width: 100%;
      margin-left: auto;
      margin-right: auto; }
  .home_blog .slider_blog .data {
    margin-bottom: 20px; }
    @media screen and (max-width: 897px) {
      .home_blog .slider_blog .data {
        margin-bottom: 10px; } }
    .home_blog .slider_blog .data .cat {
      font-size: 12px;
      display: inline-block;
      padding: 0.2em 1em;
      color: #fff;
      border-radius: 100px;
      white-space: nowrap; }
      @media screen and (max-width: 480px) {
        .home_blog .slider_blog .data .cat {
          font-size: 1rem; } }
    .home_blog .slider_blog .data .date {
      font-size: 12px;
      padding: 0.2em 0; }
      @media screen and (max-width: 480px) {
        .home_blog .slider_blog .data .date {
          font-size: 1rem; } }
  .home_blog .slider_blog .title {
    height: 80px;
    font-size: 0.875rem;
    line-height: 1.7;
    padding-left: 10px;
    padding-right: 10px;
    transition: all .2s; }
    @media screen and (max-width: 897px) {
      .home_blog .slider_blog .title {
        font-size: 0.8125rem; } }
  .home_blog .slider_blog a {
    display: block;
    width: 100%;
    height: 100%;
    padding: 10px; }
  .home_blog .slider_blog .slick-track {
    display: flex;
    justify-content: space-between; }
  .home_blog .slider_blog .slick-slide {
    margin: 0 14px;
    position: relative;
    height: auto; }
    .home_blog .slider_blog .slick-slide:before {
      content: "";
      position: absolute;
      transition: all 0.4s cubic-bezier(0.23, 1, 0.58, 1);
      background: #fff;
      will-change: transform;
      top: 0;
      right: 0;
      bottom: 0;
      left: 0;
      z-index: -1;
      border-radius: 10px; }
    .home_blog .slider_blog .slick-slide:hover:before {
      top: 5px;
      bottom: 5px;
      left: 5px;
      right: 5px; }
    .home_blog .slider_blog .slick-slide:hover .thum {
      transform: scale(0.9); }
    .home_blog .slider_blog .slick-slide:hover .title {
      color: #30C8A8; }
  .home_blog .slider_blog .slick-prev,
  .home_blog .slider_blog .slick-next {
    background-size: contain;
    background-repeat: no-repeat;
    width: 42px;
    height: 42px; }
    .home_blog .slider_blog .slick-prev:before,
    .home_blog .slider_blog .slick-next:before {
      content: ""; }
  .home_blog .slider_blog .slick-prev {
    background-image: url("/resource/images/home/slider_blog_previous.png"); }
    .home_blog .slider_blog .slick-prev:before {
      display: none; }
  .home_blog .slider_blog .slick-next {
    background-image: url("/resource/images/home/slider_blog_next.png"); }
    .home_blog .slider_blog .slick-next:before {
      display: none; }
  @media screen and (max-width: 480px) {
    .home_blog .slider_blog > div {
      background-color: #fff;
      padding: 10px;
      border-radius: 10px;
      margin-bottom: 10px;
      width: 85%;
      min-height: 320px;
      margin-left: auto;
      margin-right: auto; }
      .home_blog .slider_blog > div .title {
        height: auto; } }
    @media screen and (max-width: 480px) and (max-width: 480px) {
      .home_blog .slider_blog > div .title {
        font-size: 1rem; } }
.home_blog .to_list {
  width: 208px; }

.home_library {
  margin-top: 100px; }
  .home_library h3 {
    text-align: center;
    position: relative; }
    .home_library h3:before, .home_library h3:after {
      width: calc(100vw/2 - 150px);
      height: 10px;
      background-size: contain;
      background-repeat: repeat-x;
      background-image: url("/resource/images/home/line2.png");
      content: "";
      position: absolute;
      top: 50%;
      transform: translateY(-50%); }
      @media screen and (max-width: 480px) {
        .home_library h3:before, .home_library h3:after {
          width: calc(100vw/2 - 110px);
          background-size: cover; } }
    .home_library h3:before {
      left: 0; }
    .home_library h3:after {
      right: 0; }
    .home_library h3 img {
      width: 244px; }
      @media screen and (max-width: 480px) {
        .home_library h3 img {
          width: 191px; } }
    .home_library h3 span {
      position: relative; }
      @media screen and (max-width: 480px) {
        .home_library h3 span {
          position: static; } }
      .home_library h3 span .bubble {
        position: absolute;
        top: -100px;
        left: 100%;
        width: 173px;
        z-index: 1; }
        @media screen and (max-width: 480px) {
          .home_library h3 span .bubble {
            right: 0;
            left: auto;
            top: -110px;
            width: 138px; } }
  .home_library .slider_library_wrap {
    background-image: url("/resource/images/home/bg_library.jpg");
    background-size: cover;
    margin-top: 50px;
    height: 457px;
    position: relative; }
    @media screen and (max-width: 897px) {
      .home_library .slider_library_wrap {
        height: 416px;
        margin-top: 30px;
        background-image: url("/resource/images/home/bg_library_sp.jpg"); } }
    @media screen and (max-width: 480px) {
      .home_library .slider_library_wrap {
        height: 375px; } }
    .home_library .slider_library_wrap .board {
      height: 12px;
      width: 100%;
      background-size: cover;
      background-image: url("/resource/images/home/bg_board.jpg");
      background-repeat: repeat-x;
      position: absolute;
      box-shadow: 0 10px 10px rgba(0, 0, 0, 0.3);
      top: 227px; }
      @media screen and (max-width: 480px) {
        .home_library .slider_library_wrap .board {
          top: 190px; } }
    .home_library .slider_library_wrap .btn1 {
      width: 208px;
      margin-top: 20px; }
  .home_library .slider_library .slick-slide {
    color: #fff;
    text-align: center;
    width: 200px;
    padding-top: 65px; }
    @media screen and (max-width: 897px) {
      .home_library .slider_library .slick-slide {
        width: 180px; } }
    @media screen and (max-width: 480px) {
      .home_library .slider_library .slick-slide {
        width: 132px; } }
    .home_library .slider_library .slick-slide a * {
      transition: all .2s ease-out; }
    .home_library .slider_library .slick-slide a:hover .thum {
      box-shadow: 0 15px 30px -5px rgba(0, 0, 0, 0.3), 0 0 5px rgba(0, 0, 0, 0.4);
      transform: translateY(-4px) scale(1.05); }
    .home_library .slider_library .slick-slide .thum {
      margin-bottom: 30px;
      width: 116px;
      margin-left: auto;
      margin-right: auto;
      position: relative;
      box-shadow: 0 0 0 0 rgba(0, 0, 0, 0), 0 0 0 rgba(0, 0, 0, 0); }
      @media screen and (max-width: 897px) {
        .home_library .slider_library .slick-slide .thum {
          margin-bottom: 25px; } }
      @media screen and (max-width: 480px) {
        .home_library .slider_library .slick-slide .thum {
          width: 90px; } }
      .home_library .slider_library .slick-slide .thum img {
        width: 100%;
        margin-left: auto;
        margin-right: auto; }
      .home_library .slider_library .slick-slide .thum:before {
        content: "";
        position: absolute;
        top: 0;
        left: 0;
        border-bottom: 22px solid transparent;
        border-left-width: 22px;
        border-left-style: solid;
        z-index: 1; }
    .home_library .slider_library .slick-slide .triangle_adachi:before {
      border-left-color: #58D5E8; }
    .home_library .slider_library .slick-slide .triangle_ayase:before {
      border-left-color: #88B666; }
    .home_library .slider_library .slick-slide .triangle_toneri:before {
      border-left-color: #dcde30; }
    .home_library .slider_library .slick-slide .triangle_hanahata:before {
      border-left-color: #eda1bf; }
    .home_library .slider_library .slick-slide .triangle_takenotsuka:before {
      border-left-color: #79B680; }
    .home_library .slider_library .slick-slide .triangle_shien:before {
      border-left-color: #F3998F; }
    .home_library .slider_library .slick-slide .triangle_shinmei:before {
      border-left-color: #5296DC; }
    .home_library .slider_library .slick-slide .triangle_ooyata:before {
      border-left-color: #F3B56C; }
    .home_library .slider_library .slick-slide .triangle_honbu:before {
      border-left-color: #AAB6BD; }
    .home_library .slider_library .slick-slide .title {
      font-size: 0.875rem; }
      @media screen and (max-width: 897px) {
        .home_library .slider_library .slick-slide .title {
          line-height: 1; } }
    .home_library .slider_library .slick-slide .date {
      font-size: 0.75rem;
      margin-top: 3px; }
      @media screen and (max-width: 897px) {
        .home_library .slider_library .slick-slide .date {
          margin-top: 0; } }
    .home_library .slider_library .slick-slide .cat {
      font-size: 0.75rem;
      display: inline-block;
      padding: .1em .4em;
      border-radius: 5px;
      margin-top: 5px; }
      @media screen and (max-width: 480px) {
        .home_library .slider_library .slick-slide .cat {
          line-height: 1.2;
          white-space: nowrap;
          font-size: .75rem;
          font-feature-settings: "palt"; } }
  .home_library .slider_library .slick-prev,
  .home_library .slider_library .slick-next {
    z-index: 1;
    width: 73px;
    height: 73px;
    background-size: contain;
    background-repeat: no-repeat; }
    .home_library .slider_library .slick-prev:before,
    .home_library .slider_library .slick-next:before {
      display: none; }
  .home_library .slider_library .slick-prev {
    left: 4vw;
    background-image: url("/resource/images/home/slider_library_prev.png"); }
  .home_library .slider_library .slick-next {
    right: 4vw;
    background-image: url("/resource/images/home/slider_library_next.png"); }

@media screen and (max-width: 897px) {
  .home_facility {
    overflow-x: hidden; } }

@media screen and (max-width: 480px) {
  .home_facility {
    overflow: hidden; } }

.home_facility .facility_list {
  flex-wrap: wrap; }
  .home_facility .facility_list > div {
    flex-basis: 23.6%;
    max-width: 23.6%;
    position: relative;
    margin-bottom: 55px; }
    @media screen and (max-width: 897px) {
      .home_facility .facility_list > div {
        flex-basis: 31.5%;
        max-width: 31.5%; } }
    @media screen and (max-width: 480px) {
      .home_facility .facility_list > div {
        flex-basis: 48%;
        max-width: 48%; } }
    .home_facility .facility_list > div .thum {
      overflow: hidden;
      border-radius: 15px; }
      .home_facility .facility_list > div .thum img {
        width: 100%;
        transition: .2s linear;
        vertical-align: bottom; }
    .home_facility .facility_list > div .title {
      position: absolute;
      bottom: -20px;
      left: 0;
      right: 0;
      margin-left: auto;
      margin-right: auto;
      width: 90%;
      text-align: center;
      background-color: #fff;
      padding: 10px;
      border-radius: 100px;
      box-shadow: 3px 3px 0 rgba(0, 0, 0, 0.1);
      overflow: hidden;
      font-size: 14px; }
      @media screen and (max-width: 897px) {
        .home_facility .facility_list > div .title {
          font-size: 0.8125rem; } }
      @media screen and (max-width: 480px) {
        .home_facility .facility_list > div .title {
          font-size: 1rem;
          border-radius: 10px;
          padding: 3px;
          overflow: visible; } }
      .home_facility .facility_list > div .title span {
        position: relative;
        z-index: 1;
        transition: .2s linear;
        white-space: nowrap; }
      .home_facility .facility_list > div .title .arrow {
        position: absolute;
        top: 50%;
        transform: translateY(-50%);
        left: 10px;
        opacity: 0;
        z-index: 1;
        width: 15px;
        transition: .2s linear; }
      .home_facility .facility_list > div .title:before {
        content: "";
        width: 28px;
        height: 27px;
        background-repeat: no-repeat;
        background-size: contain;
        position: absolute;
        top: 50%;
        left: 10px;
        transform: translateY(-50%);
        z-index: 1; }
        @media screen and (max-width: 480px) {
          .home_facility .facility_list > div .title:before {
            width: 15px;
            height: 15px;
            margin-left: auto;
            margin-right: auto;
            left: 0;
            right: 0;
            top: 0px; } }
      .home_facility .facility_list > div .title:after {
        right: 100%;
        content: "";
        width: 100%;
        height: 100%;
        position: absolute;
        content: "";
        top: 0;
        transition: .2s linear; }
        @media screen and (max-width: 480px) {
          .home_facility .facility_list > div .title:after {
            display: none; } }
    .home_facility .facility_list > div a {
      display: block;
      width: 100%;
      height: 100%; }
      .home_facility .facility_list > div a:hover .thum img {
        transform: scale(1.1); }
      .home_facility .facility_list > div a:hover .title:before {
        display: none; }
      .home_facility .facility_list > div a:hover .title:after {
        right: 0; }
      .home_facility .facility_list > div a:hover .title span {
        color: #fff; }
        @media screen and (max-width: 480px) {
          .home_facility .facility_list > div a:hover .title span {
            color: inherit; } }
      .home_facility .facility_list > div a:hover .title .arrow {
        opacity: 1;
        left: 13px; }

.home_facility .to_list {
  margin-bottom: 10rem; }
  .home_facility .to_list .btn1 {
    max-width: 516px;
    padding-top: 20px;
    padding-bottom: 20px; }
    @media screen and (max-width: 480px) {
      .home_facility .to_list .btn1 {
        padding-top: 7px;
        padding-bottom: 7px; } }
@media screen and (max-width: 897px) {
  .home_facility .facility_box {
    position: relative; } }

.home_facility .facility_box .flex {
  flex-direction: row-reverse; }
  @media screen and (max-width: 480px) {
    .home_facility .facility_box .flex {
      display: block; } }
.home_facility .facility_box .text {
  flex-basis: 39%;
  max-width: 39%;
  background-color: #fff;
  box-shadow: 3px 3px 10px rgba(0, 0, 0, 0.1);
  border-radius: 50px;
  padding: 100px 6% 50px 6%; }
  @media screen and (max-width: 897px) {
    .home_facility .facility_box .text {
      flex-basis: 48.5%;
      max-width: 48.5%;
      padding-top: 80px;
      padding-bottom: 25px;
      margin-top: 60px;
      margin-right: auto;
      margin-left: 0; } }
  @media screen and (max-width: 480px) {
    .home_facility .facility_box .text {
      max-width: 100%;
      width: calc(100% - 6vw);
      margin-top: -50px;
      margin-left: auto;
      margin-right: auto;
      z-index: 1;
      position: relative; } }
  .home_facility .facility_box .text .catch {
    font-size: 1.68rem;
    font-weight: bold;
    text-align: center;
    letter-spacing: 2px;
    margin-bottom: 30px;
    line-height: 1.3;
    position: relative; }
    @media screen and (max-width: 480px) {
      .home_facility .facility_box .text .catch {
        margin-bottom: 10px; } }
    .home_facility .facility_box .text .catch .fluffy {
      top: -40px; }
  .home_facility .facility_box .text p {
    line-height: 1.8;
    margin-bottom: 20px; }
  @media screen and (max-width: 480px) {
    .home_facility .facility_box .text .btn2 {
      max-width: 180px;
      margin-left: auto;
      margin-right: auto; } }
.home_facility .facility_box .image {
  flex-basis: 55%;
  max-width: 55%;
  position: relative; }
  @media screen and (max-width: 897px) {
    .home_facility .facility_box .image {
      position: absolute;
      max-width: 70%;
      right: 0;
      z-index: -1; } }
  @media screen and (max-width: 480px) {
    .home_facility .facility_box .image {
      position: static;
      max-width: 100%; } }
  .home_facility .facility_box .image img {
    width: 100%; }
  .home_facility .facility_box .image .fluffy {
    top: -50px;
    right: -100px;
    left: auto; }
    @media screen and (max-width: 897px) {
      .home_facility .facility_box .image .fluffy {
        right: 0;
        top: -30px; } }
    @media screen and (max-width: 480px) {
      .home_facility .facility_box .image .fluffy {
        right: -30px; } }
    .home_facility .facility_box .image .fluffy > div {
      width: 160px;
      height: 156px; }
      @media screen and (max-width: 897px) {
        .home_facility .facility_box .image .fluffy > div {
          width: 100%;
          height: 100%; } }
      @media screen and (max-width: 480px) {
        .home_facility .facility_box .image .fluffy > div {
          width: 80px;
          height: 80px; } }
    .home_facility .facility_box .image .fluffy .circle-1 {
      margin-top: -11px; }
    .home_facility .facility_box .image .fluffy .circle-2 {
      margin-left: 52px; }
      @media screen and (max-width: 897px) {
        .home_facility .facility_box .image .fluffy .circle-2 {
          margin-left: 12px; } }
.home_facility .facility_box2 .flex {
  flex-direction: row; }

.home_facility .facility_box2 .image .fluffy {
  left: -20px;
  right: auto; }
  .home_facility .facility_box2 .image .fluffy .circle-2 {
    margin-left: 15px; }

@media screen and (max-width: 897px) {
  .home_facility .facility_box2 .image {
    left: 0;
    right: auto; } }

@media screen and (max-width: 897px) {
  .home_facility .facility_box2 .text {
    margin-right: 0;
    margin-left: auto; } }

@media screen and (max-width: 480px) {
  .home_facility .facility_box2 .text {
    margin-right: auto;
    margin-right: auto; } }

.facility_adachi .title:before {
  background-image: url("/resource/images/home/circle_adachi.png"); }

.facility_adachi .title:after {
  background-color: #58D5E8; }

.facility_ayase .title:before {
  background-image: url("/resource/images/home/circle_ayase.png"); }

.facility_ayase .title:after {
  background-color: #88B666; }

.facility_toneri .title:before {
  background-image: url("/resource/images/home/circle_toneri.png"); }

.facility_toneri .title:after {
  background-color: #dcde30; }

.facility_hanahata .title:before {
  background-image: url("/resource/images/home/circle_hanahata.png"); }

.facility_hanahata .title:after {
  background-color: #eda1bf; }

.facility_takenotsuka .title:before {
  background-image: url("/resource/images/home/circle_takenotsuka.png"); }

.facility_takenotsuka .title:after {
  background-color: #79B680; }

.facility_shien .title:before {
  background-image: url("/resource/images/home/circle_shien.png"); }

.facility_shien .title:after {
  background-color: #F3998F; }

.facility_shinmei .title:before {
  background-image: url("/resource/images/home/circle_shinmei.png"); }

.facility_shinmei .title:after {
  background-color: #5296DC; }

.facility_ooyata .title:before {
  background-image: url("/resource/images/home/circle_ooyata.png"); }

.facility_ooyata .title:after {
  background-color: #F3B56C; }

.home_facility_bottom {
  margin-top: 70px;
  padding-bottom: 200px; }
  @media screen and (max-width: 897px) {
    .home_facility_bottom {
      padding-bottom: 80px; } }
  @media screen and (max-width: 480px) {
    .home_facility_bottom .flex {
      display: block; } }
  .home_facility_bottom .flex > div {
    flex-basis: 31.8%;
    max-width: 31.8%;
    position: relative; }
    @media screen and (max-width: 480px) {
      .home_facility_bottom .flex > div {
        max-width: 100%;
        width: 71%;
        margin-left: auto;
        margin-right: auto;
        margin-bottom: 40px; } }
    .home_facility_bottom .flex > div .thum {
      width: 100%;
      overflow: hidden;
      border-radius: 30px; }
      .home_facility_bottom .flex > div .thum img {
        width: 100%;
        object-fit: cover;
        transition: all .5s;
        will-change: contents; }
    .home_facility_bottom .flex > div .title {
      font-size: 0.8125rem;
      background-color: #fff;
      border-radius: 100px;
      box-shadow: 3px 3px 0 rgba(0, 0, 0, 0.3);
      text-align: center;
      display: block;
      padding: 0.75em 0;
      margin-bottom: 10px;
      width: 80%;
      margin-left: auto;
      margin-right: auto;
      position: absolute;
      bottom: -20px;
      left: 0;
      right: 0;
      transition: .1s linear;
      font-weight: 600; }
      .home_facility_bottom .flex > div .title:after {
        width: 15px;
        height: 9px;
        position: absolute;
        top: 50%;
        transform: translateY(-50%);
        right: 10px;
        content: "";
        background-image: url("/resource/images/home/arrow4.svg");
        background-size: contain;
        background-repeat: no-repeat; }
      @media screen and (max-width: 897px) {
        .home_facility_bottom .flex > div .title {
          padding-top: 5px;
          padding-bottom: 5px;
          bottom: -45px;
          width: 100%; } }
      @media screen and (max-width: 480px) {
        .home_facility_bottom .flex > div .title {
          bottom: -23px;
          width: 80%; } }
      .home_facility_bottom .flex > div .title:after {
        width: 15px;
        height: 9px;
        position: absolute;
        top: 50%;
        transform: translateY(-50%);
        right: 20px;
        content: "";
        background-image: url("/resource/images/home/arrow4.svg");
        background-size: contain;
        background-repeat: no-repeat; }
    .home_facility_bottom .flex > div:nth-child(2) {
      transform: translateY(50px); }
      @media screen and (max-width: 897px) {
        .home_facility_bottom .flex > div:nth-child(2) {
          transform: translateY(0); } }
    .home_facility_bottom .flex > div a:hover .thum img {
      transform: scale(1.07); }
    .home_facility_bottom .flex > div a:hover .title {
      transform: translateY(3px);
      box-shadow: none;
      background-color: #E6E5E4; }
      .home_facility_bottom .flex > div a:hover .title:after {
        animation: arrow_anim .4s;
        right: 10px; }

.home_goods {
  background-color: #f6efe0;
  padding-top: 100px;
  padding-bottom: 50px;
  position: relative;
  overflow-x: hidden; }
  @media screen and (max-width: 480px) {
    .home_goods {
      padding-top: 40px; } }
  .home_goods .inner {
    position: static; }
  .home_goods h2 {
    text-align: center; }
    .home_goods h2 img {
      max-width: 248px;
      width: 100%; }
    .home_goods h2 span {
      position: relative;
      display: inline-block; }
    .home_goods h2 .tree {
      position: absolute;
      top: 20px;
      right: -210px;
      width: 115px; }
      @media screen and (max-width: 480px) {
        .home_goods h2 .tree {
          width: 40px;
          right: 0;
          top: -30px; } }
  .home_goods .catch {
    color: #a25f4e;
    font-size: 1.55rem;
    text-align: center;
    font-weight: bold;
    line-height: 1.3;
    margin-top: 20px; }
  .home_goods .flex {
    margin-top: 40px;
    position: relative;
    justify-content: space-around;
    z-index: 1; }
    @media screen and (max-width: 480px) {
      .home_goods .flex {
        display: block; } }
    .home_goods .flex > div {
      flex-basis: 40%;
      max-width: 40%; }
      @media screen and (max-width: 480px) {
        .home_goods .flex > div {
          max-width: 100%; } }
      .home_goods .flex > div .title {
        text-align: center;
        font-size: 1.22rem;
        margin-bottom: 20px; }
      .home_goods .flex > div .thum {
        margin-bottom: 20px;
        position: relative; }
        .home_goods .flex > div .thum img {
          width: 100%; }
        .home_goods .flex > div .thum .badge {
          width: 149px;
          position: absolute;
          bottom: -20px;
          right: -20px; }
          @media screen and (max-width: 480px) {
            .home_goods .flex > div .thum .badge {
              width: 100px;
              right: 0; } }
          .home_goods .flex > div .thum .badge:hover {
            animation-name: hoge;
            animation-duration: 0.4s; }

@keyframes hoge {
  50% {
    transform: scale(1.15); } }
      .home_goods .flex > div .text {
        padding-left: 6%;
        padding-right: 6%; }
      .home_goods .flex > div:nth-child(2) {
        position: relative; }
        .home_goods .flex > div:nth-child(2) .tree2 {
          position: absolute;
          bottom: 0;
          right: -20px;
          width: 34px; }
  .home_goods .center {
    margin-top: 30px; }
    .home_goods .center a {
      display: inline-block;
      padding: 1em 3em;
      background-color: #fff;
      font-weight: bold;
      position: relative;
      z-index: 1;
      transition: all .4s;
      max-width: 400px !important; }
      .home_goods .center a::after {
        z-index: -1; }
      .home_goods .center a:hover {
        color: #fff; }
  .home_goods .clip_goods1,
  .home_goods .clip_goods2 {
    position: absolute; }
  .home_goods .clip_goods1 {
    left: 0;
    bottom: 2%;
    width: 25.4vw;
    max-width: 326px; }
  .home_goods .clip_goods2 {
    right: 0;
    top: 0;
    width: 17.5vw;
    max-width: 228px; }
    @media screen and (max-width: 480px) {
      .home_goods .clip_goods2 {
        top: 20%; } }
.home_recruit {
  margin-top: 65px;
  margin-bottom: 65px; }
  .home_recruit .inner .flex {
    border-radius: 40px;
    background-image: url("/resource/images/home/bg_home_recruit.jpg");
    background-size: cover;
    background-position: bottom;
    padding: 30px 65px 50px 65px;
    flex-direction: row-reverse; }
    @media screen and (max-width: 897px) {
      .home_recruit .inner .flex {
        padding-left: 20px;
        padding-right: 20px; } }
    @media screen and (max-width: 480px) {
      .home_recruit .inner .flex {
        display: block; } }
  .home_recruit .image {
    flex-basis: 51%;
    max-width: 51%; }
    @media screen and (max-width: 897px) {
      .home_recruit .image {
        flex-basis: 43.2%;
        max-width: 43.2%; } }
    @media screen and (max-width: 480px) {
      .home_recruit .image {
        max-width: 100%;
        margin-top: 30px; } }
    .home_recruit .image img {
      width: 100%;
      position: relative;
      top: 50%;
      transform: translateY(-50%); }
      @media screen and (max-width: 480px) {
        .home_recruit .image img {
          transform: none; } }
  .home_recruit .text {
    background-color: #fff;
    box-shadow: 3px 3px 10px rgba(0, 0, 0, 0.1);
    border-radius: 50px;
    padding: 100px 6% 50px 6%;
    flex-basis: 44.5%;
    max-width: 44.5%; }
    @media screen and (max-width: 897px) {
      .home_recruit .text {
        flex-basis: 51.4%;
        max-width: 51.4%; } }
    @media screen and (max-width: 480px) {
      .home_recruit .text {
        max-width: 100%; } }
    .home_recruit .text .catch {
      font-size: 1.68rem;
      font-weight: bold;
      text-align: center;
      line-height: 1.3;
      position: relative;
      margin-bottom: 30px; }
      .home_recruit .text .catch .fluffy {
        top: -40px; }
    .home_recruit .text p {
      line-height: 1.8; }

.home_contact {
  background-color: #fff;
  border-radius: 40px;
  padding-top: 70px;
  margin-top: 45px;
  padding-bottom: 50px;
  margin-bottom: 80px;
  box-shadow: 3px 3px 10px rgba(0, 0, 0, 0.1); }
  @media screen and (max-width: 897px) {
    .home_contact {
      padding-left: 4vw;
      padding-right: 4vw;
      margin-bottom: 50px; } }
  .home_contact h3 {
    position: relative;
    text-align: center;
    font-size: 1.68rem;
    margin-bottom: 30px;
    font-weight: bold; }
    .home_contact h3 .fluffy {
      top: -40px; }
  .home_contact p {
    text-align: center;
    line-height: 1.8; }
  .home_contact .flex {
    margin-top: 30px;
    justify-content: center; }
    @media screen and (max-width: 480px) {
      .home_contact .flex {
        display: block; } }
    .home_contact .flex > div {
      max-width: 342px;
      width: 100%;
      margin: 0 10px; }
      @media screen and (max-width: 480px) {
        .home_contact .flex > div {
          margin: 0; } }
      .home_contact .flex > div a {
        color: #fff;
        text-align: center;
        border-radius: 100px;
        border-width: 2px;
        border-style: solid;
        width: 100%;
        height: 100%;
        display: block;
        padding: 4% 4% 4% 10%;
        transition: .2s linear; }
        @media screen and (max-width: 480px) {
          .home_contact .flex > div a {
            padding-top: 10px;
            padding-bottom: 10px;
            margin-bottom: 20px; } }
        .home_contact .flex > div a span {
          position: relative; }
          .home_contact .flex > div a span:before {
            content: "";
            top: 50%;
            transform: translateY(-50%);
            position: absolute;
            background-repeat: no-repeat;
            background-position: center center;
            background-size: contain; }
        .home_contact .flex > div a:hover {
          background-color: #fff !important; }
      .home_contact .flex > div:first-child a {
        background-color: #02CAA4;
        border-color: #02CAA4; }
        .home_contact .flex > div:first-child a span:before {
          width: 39px;
          height: 26px;
          left: -49px;
          background-image: url("/resource/images/common/icon_mail_w.svg"); }
        .home_contact .flex > div:first-child a:hover span {
          color: #02CAA4; }
          .home_contact .flex > div:first-child a:hover span:before {
            background-image: url("/resource/images/common/icon_mail_g.svg"); }
      .home_contact .flex > div:nth-child(2) a {
        background-color: #FFA1AA;
        border-color: #FFA1AA; }
        .home_contact .flex > div:nth-child(2) a span:before {
          width: 27px;
          height: 34px;
          left: -37px;
          background-image: url("/resource/images/common/icon_tel_w.svg"); }
        .home_contact .flex > div:nth-child(2) a:hover span {
          color: #FFA1AA; }
          .home_contact .flex > div:nth-child(2) a:hover span:before {
            background-image: url("/resource/images/common/icon_tel_p.svg"); }

/**
* 6.2 - About
* -----------------------------------------------------------------------------
*/
.page_about .mainvisual {
  background-image: url("/resource/images/about/mainvisual.jpg"); }
  .page_about .mainvisual h2 img {
    width: 292px; }

.page_about #message {
  background-color: #fff; }
  .page_about #message .inner {
    max-width: calc(840px + 8vw); }
    @media screen and (max-width: 897px) {
      .page_about #message .inner {
        max-width: calc(580px + 8vw); } }
    .page_about #message .inner > img {
      width: 100%;
      margin-bottom: 3rem; }
    .page_about #message .inner .lg {
      font-size: 1.5rem;
      text-align: center;
      font-weight: bold;
      line-height: 1.5;
      margin-bottom: 3rem; }
      @media screen and (max-width: 897px) {
        .page_about #message .inner .lg {
          max-width: 480px;
          margin-left: auto;
          margin-right: auto;
          text-align: left; } }
      @media screen and (max-width: 480px) {
        .page_about #message .inner .lg {
          font-size: 1.31rem; } }
    .page_about #message .inner p {
      line-height: 2;
      margin-bottom: 2.2rem; }
  .page_about #message .president {
    font-weight: bold;
    font-size: 1.1875rem;
    text-align: center;
    margin-top: 45px;
    padding-bottom: 80px; }
    @media screen and (max-width: 897px) {
      .page_about #message .president {
        padding-bottom: 30px; } }
    .page_about #message .president .sm {
      font-size: 0.875rem;
      margin-right: 10px; }

.page_about #philosophy {
  background-color: #fff;
  padding-bottom: 60px; }
  .page_about #philosophy .philosophy_inner {
    background-color: #EDE5DE;
    border-radius: 30px;
    padding-top: 30px;
    margin-left: auto;
    margin-right: auto;
    padding-bottom: 20px; }
  .page_about #philosophy .philosophy_box_wrap {
    padding: 0 30px; }
  @media screen and (max-width: 480px) {
    .page_about #philosophy .philosophy_box {
      display: block; } }
  .page_about #philosophy .philosophy_box > div {
    background-color: #fff;
    border-radius: 1.5rem;
    margin-bottom: 15px; }
    @media screen and (max-width: 897px) {
      .page_about #philosophy .philosophy_box > div {
        border-radius: 1rem; } }
  .page_about #philosophy .philosophy_box .title {
    flex-basis: 29%;
    max-width: 29%;
    text-align: center;
    padding: 30px 4%; }
    @media screen and (max-width: 480px) {
      .page_about #philosophy .philosophy_box .title {
        max-width: 100%;
        padding-top: 20px;
        padding-bottom: 10px;
        border-bottom-right-radius: 0;
        border-bottom-left-radius: 0;
        border-top-right-radius: 20px;
        border-top-left-radius: 20px;
        margin-bottom: 5px; } }
    .page_about #philosophy .philosophy_box .title span {
      font-size: 1.31rem;
      font-weight: bold;
      position: relative;
      display: block;
      top: 50%;
      transform: translateY(-50%); }
      @media screen and (max-width: 897px) {
        .page_about #philosophy .philosophy_box .title span {
          font-size: 1.05rem; } }
      @media screen and (max-width: 480px) {
        .page_about #philosophy .philosophy_box .title span {
          transform: none; } }
      .page_about #philosophy .philosophy_box .title span img {
        width: 100%;
        max-width: 100%;
        margin-top: 20px;
        display: block;
        margin-left: auto;
        margin-right: auto; }
        @media screen and (max-width: 480px) {
          .page_about #philosophy .philosophy_box .title span img {
            max-width: 150px; } }
      .page_about #philosophy .philosophy_box .title span .img_name {
        max-width: 96px;
        margin-top: 30px; }
        @media screen and (max-width: 480px) {
          .page_about #philosophy .philosophy_box .title span .img_name {
            max-width: 82px;
            margin-bottom: 20px;
            margin-top: 10px; } }
      .page_about #philosophy .philosophy_box .title span .img_character {
        max-width: 180px;
        margin-top: 30px; }
        @media screen and (max-width: 480px) {
          .page_about #philosophy .philosophy_box .title span .img_character {
            margin-bottom: 20px;
            margin-top: 10px; } }
  .page_about #philosophy .philosophy_box .contents {
    flex-basis: 69%;
    max-width: 69%;
    padding: 30px 6% 30px 8%; }
    @media screen and (max-width: 897px) {
      .page_about #philosophy .philosophy_box .contents {
        padding-left: 4%;
        padding-right: 3%; } }
    @media screen and (max-width: 480px) {
      .page_about #philosophy .philosophy_box .contents {
        max-width: 100%;
        margin-bottom: 10px;
        border-top-right-radius: 0;
        border-top-left-radius: 0;
        border-bottom-right-radius: 20px;
        border-bottom-left-radius: 20px;
        padding-left: 4vw;
        padding-right: 4vw; } }
    .page_about #philosophy .philosophy_box .contents .ul_philosophy {
      margin-bottom: 10px; }
      .page_about #philosophy .philosophy_box .contents .ul_philosophy li {
        letter-spacing: .2rem;
        font-size: 1.0625rrem;
        font-weight: bold;
        margin-bottom: 5px; }
        .page_about #philosophy .philosophy_box .contents .ul_philosophy li span {
          font-size: 1.4375rem;
          display: inline-block;
          vertical-align: middle;
          width: 37px;
          height: 37px;
          text-align: center;
          line-height: 2rem;
          border-radius: 50%;
          margin-right: 10px;
          letter-spacing: normal; }
        .page_about #philosophy .philosophy_box .contents .ul_philosophy li:nth-child(2n+1) span {
          background-color: #DCF2EE; }
        .page_about #philosophy .philosophy_box .contents .ul_philosophy li:nth-child(2n) span {
          background-color: #FFE8E9; }
    .page_about #philosophy .philosophy_box .contents .ul_vision li {
      position: relative;
      padding-left: 2.5rem;
      margin-bottom: 20px; }
      @media screen and (max-width: 897px) {
        .page_about #philosophy .philosophy_box .contents .ul_vision li {
          font-size: 0.875rem; } }
      .page_about #philosophy .philosophy_box .contents .ul_vision li span {
        position: absolute;
        left: 0;
        top: 50%;
        transform: translateY(-50%);
        font-size: 1.375rem; }
        @media screen and (max-width: 897px) {
          .page_about #philosophy .philosophy_box .contents .ul_vision li span {
            top: 0;
            transform: none; } }
      .page_about #philosophy .philosophy_box .contents .ul_vision li:nth-child(2n+1) span {
        color: #30CFAF; }
      .page_about #philosophy .philosophy_box .contents .ul_vision li:nth-child(2n) span {
        color: #FFA8B1; }
    .page_about #philosophy .philosophy_box .contents .ul_mind li {
      margin-bottom: 15px; }
      @media screen and (max-width: 897px) {
        .page_about #philosophy .philosophy_box .contents .ul_mind li {
          font-size: 0.875rem;
          margin-bottom: 5px;
          letter-spacing: -0.5px; } }
      @media screen and (max-width: 480px) {
        .page_about #philosophy .philosophy_box .contents .ul_mind li {
          text-indent: -4em;
          padding-left: 4em; } }
      .page_about #philosophy .philosophy_box .contents .ul_mind li span {
        font-size: 1.3125rem;
        font-weight: bold;
        margin-right: 1.5rem; }
        @media screen and (max-width: 897px) {
          .page_about #philosophy .philosophy_box .contents .ul_mind li span {
            font-size: 1rem;
            margin-right: 1rem; } }
        @media screen and (max-width: 480px) {
          .page_about #philosophy .philosophy_box .contents .ul_mind li span {
            font-size: 1.28rem; } }
      .page_about #philosophy .philosophy_box .contents .ul_mind li:nth-child(2n+1) span {
        color: #30CFAF; }
      .page_about #philosophy .philosophy_box .contents .ul_mind li:nth-child(2n) span {
        color: #FFA8B1; }
    .page_about #philosophy .philosophy_box .contents .lg {
      font-size: 1.125rem;
      font-weight: bold;
      color: #30CFAF;
      margin-bottom: 20px;
      letter-spacing: -1px; }
      @media screen and (max-width: 897px) {
        .page_about #philosophy .philosophy_box .contents .lg {
          font-size: 1rem; } }
      @media screen and (max-width: 480px) {
        .page_about #philosophy .philosophy_box .contents .lg {
          font-size: 1.28rem; } }
    .page_about #philosophy .philosophy_box .contents .sm {
      font-size: 0.875rem;
      margin-bottom: 1rem;
      line-height: 1.6;
      font-feature-settings: "palt";
      text-align: justify; }

.page_about #certificate {
  padding-bottom: 100px; }
  @media screen and (max-width: 897px) {
    .page_about #certificate {
      padding-bottom: 70px; } }
  .page_about #certificate h2 {
    margin-top: 50px; }
    @media screen and (max-width: 480px) {
      .page_about #certificate h2 {
        margin-top: 0; } }
  .page_about #certificate .inner_certificate {
    margin-left: auto;
    margin-right: auto;
    background-color: #fff;
    border-radius: 32px;
    padding-left: 6.8%;
    padding-right: 6.8%;
    padding-top: 50px;
    padding-bottom: 50px; }
    @media screen and (max-width: 897px) {
      .page_about #certificate .inner_certificate {
        padding-left: 4%;
        padding-right: 4%; } }
    @media screen and (max-width: 480px) {
      .page_about #certificate .inner_certificate {
        padding-left: 10vw;
        padding-right: 10vw;
        padding-top: 40px; } }
    .page_about #certificate .inner_certificate .certificate_inner > .flex {
      flex-wrap: wrap; }
      @media screen and (max-width: 480px) {
        .page_about #certificate .inner_certificate .certificate_inner > .flex {
          display: block; } }
      .page_about #certificate .inner_certificate .certificate_inner > .flex > div {
        flex-basis: 47.6%;
        max-width: 47.6%;
        margin-bottom: 15px; }
        @media screen and (max-width: 897px) {
          .page_about #certificate .inner_certificate .certificate_inner > .flex > div {
            flex-basis: 49%;
            max-width: 49%;
            margin-bottom: 30px; } }
        @media screen and (max-width: 480px) {
          .page_about #certificate .inner_certificate .certificate_inner > .flex > div {
            max-width: 100%; } }
        .page_about #certificate .inner_certificate .certificate_inner > .flex > div .certificate_head {
          position: relative;
          padding-left: 90px;
          height: 70px; }
          @media screen and (max-width: 480px) {
            .page_about #certificate .inner_certificate .certificate_inner > .flex > div .certificate_head {
              height: auto;
              padding-left: 0;
              text-align: center; } }
          .page_about #certificate .inner_certificate .certificate_inner > .flex > div .certificate_head .cat {
            position: absolute;
            width: 70px;
            height: 70px;
            left: 0;
            border-width: 1px;
            border-style: solid;
            border-radius: 50%;
            line-height: 70px;
            text-align: center;
            font-weight: bold; }
            @media screen and (max-width: 480px) {
              .page_about #certificate .inner_certificate .certificate_inner > .flex > div .certificate_head .cat {
                position: static;
                margin-left: auto;
                margin-right: auto;
                margin-bottom: 10px; } }
          .page_about #certificate .inner_certificate .certificate_inner > .flex > div .certificate_head .cat_media {
            border-color: #FFBC75;
            color: #FFBC75;
            font-size: 14px; }
          .page_about #certificate .inner_certificate .certificate_inner > .flex > div .certificate_head .cat_prize {
            border-color: #FFA8B1;
            color: #FFA8B1; }
          .page_about #certificate .inner_certificate .certificate_inner > .flex > div .certificate_head .date {
            font-size: 0.875rem; }
          .page_about #certificate .inner_certificate .certificate_inner > .flex > div .certificate_head .title {
            line-height: 1.4;
            font-weight: bold; }
            @media screen and (max-width: 897px) {
              .page_about #certificate .inner_certificate .certificate_inner > .flex > div .certificate_head .title {
                font-size: 0.9375rem; } }
            @media screen and (max-width: 480px) {
              .page_about #certificate .inner_certificate .certificate_inner > .flex > div .certificate_head .title {
                font-size: 1.28rem; } }
        .page_about #certificate .inner_certificate .certificate_inner > .flex > div .content {
          margin-top: 10px; }
          @media screen and (max-width: 480px) {
            .page_about #certificate .inner_certificate .certificate_inner > .flex > div .content {
              display: block; } }
          .page_about #certificate .inner_certificate .certificate_inner > .flex > div .content .thum {
            flex-basis: 46.95%;
            max-width: 46.95%; }
            @media screen and (max-width: 480px) {
              .page_about #certificate .inner_certificate .certificate_inner > .flex > div .content .thum {
                max-width: 100%; } }
            .page_about #certificate .inner_certificate .certificate_inner > .flex > div .content .thum img {
              width: 100%; }
          .page_about #certificate .inner_certificate .certificate_inner > .flex > div .content .text {
            flex-basis: 53.05%;
            max-width: 53.05%;
            padding-left: 4%;
            font-size: 0.875rem;
            line-height: 1.6; }
            @media screen and (max-width: 897px) {
              .page_about #certificate .inner_certificate .certificate_inner > .flex > div .content .text {
                font-size: 0.875rem; } }
            @media screen and (max-width: 480px) {
              .page_about #certificate .inner_certificate .certificate_inner > .flex > div .content .text {
                max-width: 100%;
                padding-left: 0; } }
.page_about .latest {
  margin-top: 25px; }
  .page_about .latest h3 {
    font-size: 1.125rem;
    border-bottom: 1px solid #30CFAF;
    margin-bottom: 20px; }
    .page_about .latest h3:before {
      content: "";
      width: 11px;
      height: 11px;
      border-radius: 50%;
      background-color: #30CFAF;
      display: inline-block;
      vertical-align: middle;
      margin-right: 10px; }
  .page_about .latest .latest_box {
    border-bottom: 1px solid #f3f3f3;
    font-size: 0.812rem;
    cursor: pointer; }
    .page_about .latest .latest_box .title {
      padding-left: 1rem;
      padding-top: 10px;
      padding-bottom: 10px;
      transition: .1s;
      border-radius: 10px;
      position: relative; }
      @media screen and (max-width: 480px) {
        .page_about .latest .latest_box .title {
          padding-left: 2em;
          padding-right: 30px; } }
      .page_about .latest .latest_box .title:hover {
        background-color: #F7F6F5; }
      .page_about .latest .latest_box .title.active {
        background-color: #F7F6F5; }
      .page_about .latest .latest_box .title:before {
        content: "";
        width: 8px;
        height: 8px;
        border-radius: 50%;
        display: inline-block;
        margin-right: 20px; }
        @media screen and (max-width: 480px) {
          .page_about .latest .latest_box .title:before {
            position: absolute;
            left: 10px;
            top: 50%;
            transform: translateY(-50%); } }
      .page_about .latest .latest_box .title .date {
        margin-right: 10px; }
        @media screen and (max-width: 480px) {
          .page_about .latest .latest_box .title .date {
            display: block; } }
      @media screen and (max-width: 480px) {
        .page_about .latest .latest_box .title .accordion_icon {
          position: absolute;
          right: 5px;
          margin-right: 0;
          top: 50%;
          transform: translateY(-50%); } }
    .page_about .latest .latest_box:nth-of-type(2n+1) .title:before {
      background-color: #30CFAF; }
    .page_about .latest .latest_box:nth-of-type(2n) .title:before {
      background-color: #FFA8B1; }
    .page_about .latest .latest_box .content {
      padding-left: 5%;
      padding-right: 5%;
      display: none;
      padding-top: 2rem;
      padding-bottom: 1.5rem; }
      .page_about .latest .latest_box .content .flex {
        margin-bottom: 2rem;
        cursor: text;
        align-items: center;
        justify-content: center; }
        @media screen and (max-width: 480px) {
          .page_about .latest .latest_box .content .flex {
            display: block; } }
      .page_about .latest .latest_box .content .thum {
        flex-basis: 50%;
        max-width: 50%;
        text-align: center; }
        @media screen and (max-width: 480px) {
          .page_about .latest .latest_box .content .thum {
            max-width: 100%; } }
        .page_about .latest .latest_box .content .thum img {
          width: auto;
          height: auto;
          max-width: 100%;
          max-height: 100%; }
          @media screen and (max-width: 480px) {
            .page_about .latest .latest_box .content .thum img {
              max-width: 142px; } }
      .page_about .latest .latest_box .content .text {
        flex-basis: 82.3%;
        max-width: 82.3%;
        padding-left: 30px;
        box-sizing: border-box;
        font-size: 0.87rem; }
        @media screen and (max-width: 897px) {
          .page_about .latest .latest_box .content .text {
            flex-basis: 74.2%;
            max-width: 74.2%; } }
        @media screen and (max-width: 480px) {
          .page_about .latest .latest_box .content .text {
            max-width: 100%;
            padding-left: 0; } }
        .page_about .latest .latest_box .content .text p {
          display: inline-block; }
          .page_about .latest .latest_box .content .text p img {
            display: none; }

.page_about .to_history {
  display: block;
  width: 238px;
  margin-left: auto;
  margin-right: auto;
  border-radius: 100px;
  border: 1px solid #30CFAF;
  padding: 10px;
  text-align: center;
  color: #30CFAF;
  font-size: 0.875rem;
  background-color: #fff; }

.page_about #profile {
  background-color: #fff; }
  .page_about #profile h2 {
    margin-top: 50px; }
    @media screen and (max-width: 897px) {
      .page_about #profile h2 {
        margin-bottom: 50px; } }
    @media screen and (max-width: 480px) {
      .page_about #profile h2 {
        margin-top: 10px; } }
  .page_about #profile .inner {
    max-width: calc(1140px + 8vw); }
    .page_about #profile .inner > table {
      font-size: 0.875rem; }
      .page_about #profile .inner > table > tbody > tr {
        background-color: #fff; }
        .page_about #profile .inner > table > tbody > tr:nth-child(2n+1) {
          background-color: #F7F6F5; }
          .page_about #profile .inner > table > tbody > tr:nth-child(2n+1) th:before {
            background-color: #30CFAF; }
        .page_about #profile .inner > table > tbody > tr:nth-child(2n) th:before {
          background-color: #FFA8B1; }
        .page_about #profile .inner > table > tbody > tr th, .page_about #profile .inner > table > tbody > tr td {
          padding: 1.7rem; }
          @media screen and (max-width: 897px) {
            .page_about #profile .inner > table > tbody > tr th, .page_about #profile .inner > table > tbody > tr td {
              font-size: 0.875rem; } }
          .page_about #profile .inner > table > tbody > tr th span, .page_about #profile .inner > table > tbody > tr td span {
            margin-right: 0.3em; }
            .page_about #profile .inner > table > tbody > tr th span::after, .page_about #profile .inner > table > tbody > tr td span::after {
              content: "／";
              margin: 0 0.5em 0 0.6em; }
            .page_about #profile .inner > table > tbody > tr th span:last-child::after, .page_about #profile .inner > table > tbody > tr td span:last-child::after {
              content: ""; }
        .page_about #profile .inner > table > tbody > tr > th {
          font-weight: bold;
          text-align: left;
          padding-left: 60px;
          width: 27.9%; }
          @media screen and (max-width: 897px) {
            .page_about #profile .inner > table > tbody > tr > th {
              padding-left: 20px;
              width: auto;
              white-space: nowrap; } }
          @media screen and (max-width: 480px) {
            .page_about #profile .inner > table > tbody > tr > th {
              width: auto;
              padding-left: 20px;
              padding-bottom: 0; } }
          .page_about #profile .inner > table > tbody > tr > th:before {
            content: "";
            width: 8px;
            height: 8px;
            display: inline-block;
            margin-right: 15px;
            border-radius: 4px; }
        .page_about #profile .inner > table > tbody > tr td {
          position: relative; }
          @media screen and (max-width: 480px) {
            .page_about #profile .inner > table > tbody > tr td {
              padding-top: 10px; } }
          .page_about #profile .inner > table > tbody > tr td table th, .page_about #profile .inner > table > tbody > tr td table td {
            padding: 10px; }
            @media screen and (max-width: 480px) {
              .page_about #profile .inner > table > tbody > tr td table th, .page_about #profile .inner > table > tbody > tr td table td {
                display: block; } }
          .page_about #profile .inner > table > tbody > tr td table th {
            font-weight: bold; }
            @media screen and (max-width: 897px) {
              .page_about #profile .inner > table > tbody > tr td table th {
                white-space: nowrap; } }
            @media screen and (max-width: 480px) {
              .page_about #profile .inner > table > tbody > tr td table th {
                text-align: left;
                padding-bottom: 0; } }
          .page_about #profile .inner > table > tbody > tr td table td .to_gmap {
            border: 1px solid #30CFAF;
            border-radius: 100px;
            display: inline-block;
            padding: 2px 10px;
            margin-left: 1em;
            text-align: center;
            color: #30CFAF;
            font-size: 0.875rem; }
            @media screen and (max-width: 480px) {
              .page_about #profile .inner > table > tbody > tr td table td .to_gmap {
                margin-top: 10px; } }
            .page_about #profile .inner > table > tbody > tr td table td .to_gmap:before {
              content: "";
              width: 12px;
              height: 18px;
              background-image: url("/resource/images/about/icon_pin.svg");
              background-repeat: no-repeat;
              background-size: cover;
              display: inline-block;
              vertical-align: sub;
              margin-right: 7px; }
          .page_about #profile .inner > table > tbody > tr td table span {
            margin-right: 0.3em; }
            .page_about #profile .inner > table > tbody > tr td table span ::after {
              content: " <- 楽しい！";
              color: green; }
  .page_about #profile .img_appearance {
    position: absolute;
    top: -90px;
    right: -30px;
    width: 364px; }
    @media screen and (max-width: 897px) {
      .page_about #profile .img_appearance {
        width: 234px;
        right: 10px;
        top: -40px; } }
    @media screen and (max-width: 480px) {
      .page_about #profile .img_appearance {
        width: 258px;
        position: static;
        margin-left: auto;
        margin-right: auto;
        margin-bottom: 30px; } }
  .page_about #profile .gmap {
    margin-top: 15px;
    border-radius: 30px;
    overflow: hidden;
    border: 4px solid #F7F6F5;
    box-sizing: content-box;
    margin-bottom: 80px; }
    @media screen and (max-width: 897px) {
      .page_about #profile .gmap {
        height: 187px;
        margin-bottom: 40px; } }
    @media screen and (max-width: 480px) {
      .page_about #profile .gmap {
        margin-bottom: 0;
        width: 100%;
        height: 271px; } }
    .page_about #profile .gmap iframe {
      vertical-align: bottom;
      width: 100%; }

.page_about #activity {
  background-color: #fff;
  padding-bottom: 100px; }
  @media screen and (max-width: 897px) {
    .page_about #activity {
      padding-bottom: 70px; } }
  @media screen and (max-width: 480px) {
    .page_about #activity {
      padding-bottom: 10px; } }
  .page_about #activity .inner {
    max-width: calc(765px + 8vw); }
    @media screen and (max-width: 480px) {
      .page_about #activity .inner .flex {
        display: block; } }
    .page_about #activity .inner .flex > div {
      flex-basis: 44.5%;
      max-width: 44.5%;
      text-align: center; }
      @media screen and (max-width: 897px) {
        .page_about #activity .inner .flex > div {
          flex-basis: 48%;
          max-width: 48%; } }
      @media screen and (max-width: 480px) {
        .page_about #activity .inner .flex > div {
          max-width: 100%;
          margin-bottom: 40px;
          padding-left: 10vw;
          padding-right: 10vw; } }
      .page_about #activity .inner .flex > div h3 {
        font-weight: bold;
        font-size: 1rem;
        display: inline-block;
        letter-spacing: -0.07rem;
        margin-bottom: 20px; }
        .page_about #activity .inner .flex > div h3:before {
          content: "";
          display: inline-block;
          margin-right: 5px;
          vertical-align: middle;
          border-radius: 7px;
          width: 13px;
          height: 13px; }
      .page_about #activity .inner .flex > div .thum {
        margin-bottom: 15px; }
        .page_about #activity .inner .flex > div .thum img {
          width: 100%; }
      .page_about #activity .inner .flex > div:nth-child(1) h3:before {
        background-color: #30CFAF; }
      .page_about #activity .inner .flex > div:nth-child(1) a span:after {
        background-image: url("/resource/images/about/icon_external.svg");
        width: 11px;
        height: 8px; }
      .page_about #activity .inner .flex > div:nth-child(2) h3:before {
        background-color: #FFA8B1; }
      .page_about #activity .inner .flex > div:nth-child(2) a span:after {
        background-image: url("/resource/images/about/arrow1.svg");
        width: 15px;
        height: 9px; }
      .page_about #activity .inner .flex > div a {
        display: inline-block;
        padding: 10px 50px;
        background-color: rgba(89, 86, 82, 0.1);
        text-align: center;
        font-size: 0.875rem;
        font-weight: bold;
        border-radius: 100px;
        white-space: nowrap; }
        @media screen and (max-width: 480px) {
          .page_about #activity .inner .flex > div a {
            padding-left: 20px;
            padding-right: 20px; } }
        .page_about #activity .inner .flex > div a span:after {
          content: "";
          margin-left: 10px;
          display: inline-block; }

.nav_aboutus {
  border-bottom: 1px solid #30CFAF; }
  .nav_aboutus .inner {
    max-width: calc(872px + 8vw);
    padding-top: 47px; }
    .nav_aboutus .inner ul li {
      flex-basis: 30%;
      max-width: 30%;
      background-color: rgba(89, 86, 82, 0.1);
      border-top-left-radius: 7px;
      border-top-right-radius: 7px; }
      .nav_aboutus .inner ul li a {
        padding: 17px 10px;
        display: block;
        width: 100%;
        height: 100%;
        text-align: center;
        color: rgba(89, 86, 82, 0.3);
        font-weight: bold; }
        @media screen and (max-width: 897px) {
          .nav_aboutus .inner ul li a {
            padding-top: 10px;
            padding-bottom: 10px; } }
        @media screen and (max-width: 480px) {
          .nav_aboutus .inner ul li a {
            line-height: 1.2; } }
        @media screen and (max-width: 480px) {
          .nav_aboutus .inner ul li a span {
            display: block;
            position: relative;
            top: 50%;
            transform: translateY(-50%); } }
      .nav_aboutus .inner ul li.current {
        background-color: #30CFAF; }
        .nav_aboutus .inner ul li.current a {
          color: white;
          pointer-events: none; }

.nav_about {
  padding-top: 30px;
  padding-bottom: 30px;
  background-color: #fff; }
  @media screen and (max-width: 480px) {
    .nav_about {
      margin-bottom: 0;
      padding-bottom: 0; } }
  .nav_about .inner ul {
    justify-content: center; }
    @media screen and (max-width: 897px) {
      .nav_about .inner ul {
        justify-content: space-between; } }
    @media screen and (max-width: 480px) {
      .nav_about .inner ul {
        flex-wrap: wrap;
        justify-content: center; } }
    .nav_about .inner ul li {
      margin: 0 20px; }
      @media screen and (max-width: 897px) {
        .nav_about .inner ul li {
          margin-left: 5px;
          margin-right: 5px; } }
      @media screen and (max-width: 480px) {
        .nav_about .inner ul li {
          flex-basis: auto;
          max-width: 100%;
          margin-bottom: 10px; } }
      .nav_about .inner ul li a {
        padding: 10px 30px;
        display: block;
        width: 100%;
        height: 100%;
        text-align: center;
        background-color: rgba(89, 86, 82, 0.1);
        font-size: 0.875rem;
        border-radius: 100px;
        transition: background-color .1s; }
        @media screen and (max-width: 897px) {
          .nav_about .inner ul li a {
            padding-left: 2vw;
            padding-right: 2vw;
            font-size: 1.7vw; } }
        @media screen and (max-width: 480px) {
          .nav_about .inner ul li a {
            padding-right: 4vw;
            padding-left: 4vw;
            font-size: 3vw; } }
        .nav_about .inner ul li a span:before {
          width: 8px;
          height: 4px;
          background-image: url("/resource/images/about/arrow_b.svg");
          background-repeat: no-repeat;
          background-size: contain;
          content: "";
          display: inline-block;
          vertical-align: middle;
          margin-right: 5px; }
      .nav_about .inner ul li:hover a {
        background-color: #30CFAF;
        color: white; }
        .nav_about .inner ul li:hover a span:before {
          background-image: url("/resource/images/about/arrow_w.svg"); }

.nav_about_bottom {
  padding-top: 20px;
  border-bottom: 80px solid #fff; }
  .nav_about_bottom h3 {
    position: relative;
    text-align: center;
    height: 132px; }
    .nav_about_bottom h3:before {
      content: "";
      position: absolute;
      left: 0;
      right: 0;
      top: 50%;
      transform: translateY(-50%);
      margin-left: auto;
      margin-right: auto;
      width: 132px;
      height: 132px;
      border-radius: 66px;
      background-color: #fff;
      z-index: -1; }
    .nav_about_bottom h3 .h3_inner {
      position: relative;
      top: 50%; }
      .nav_about_bottom h3 .h3_inner .fluffy {
        top: -30px; }
  .nav_about_bottom .flex {
    max-width: 1024px;
    margin-left: auto;
    margin-right: auto;
    margin-top: 20px;
    margin-bottom: 50px; }
    @media screen and (max-width: 480px) {
      .nav_about_bottom .flex {
        display: block; } }
    .nav_about_bottom .flex > div {
      flex-basis: 32%;
      max-width: 32%;
      text-align: center; }
      @media screen and (max-width: 480px) {
        .nav_about_bottom .flex > div {
          max-width: 100%;
          margin-bottom: 20px; } }
      .nav_about_bottom .flex > div .thum img {
        width: 100%; }
      .nav_about_bottom .flex > div p {
        display: inline-block; }
        .nav_about_bottom .flex > div p:before {
          content: "";
          width: 15px;
          height: 9px;
          background-image: url("/resource/images/about/arrow1.svg");
          background-repeat: no-repeat;
          background-size: contain;
          display: inline-block;
          margin-right: 10px; }

/**
* 6.3 - History
* -----------------------------------------------------------------------------
*/
.page_history .mainvisual {
  background-image: url("/resource/images/history/mainvisual.jpg"); }
  .page_history .mainvisual h2 img {
    width: 365px; }

.page_history #beginning {
  margin-top: 80px; }
  @media screen and (max-width: 480px) {
    .page_history #beginning {
      margin-top: 20px; } }
  .page_history #beginning .inner {
    max-width: calc(700px + 8vw); }
    .page_history #beginning .inner > img {
      width: 100%;
      margin-bottom: 40px; }
    .page_history #beginning .inner p {
      margin-bottom: 15px; }

.page_history .nav_history {
  margin-top: 140px;
  padding-bottom: 110px; }
  @media screen and (max-width: 480px) {
    .page_history .nav_history {
      margin-top: 60px; } }
  .page_history .nav_history .flex {
    justify-content: center; }
    @media screen and (max-width: 480px) {
      .page_history .nav_history .flex {
        display: block; } }
  .page_history .nav_history li {
    flex-basis: 180px;
    max-width: 180px;
    position: relative;
    margin: 0 4.6vw; }
    @media screen and (max-width: 480px) {
      .page_history .nav_history li {
        max-width: 100%; } }
    @media screen and (max-width: 480px) {
      .page_history .nav_history li:not(:last-child) {
        margin-bottom: 120px; } }
    .page_history .nav_history li:after {
      width: 1px;
      height: 57px;
      background-color: #30cdad;
      position: absolute;
      bottom: -100px;
      left: 0;
      right: 0;
      margin-left: auto;
      margin-right: auto;
      content: "";
      animation: line_updown 1s ease-out infinite; }
    .page_history .nav_history li a {
      display: block;
      width: 100%;
      height: 100%; }
      .page_history .nav_history li a:hover .fluffy {
        transform: scale(1.05); }
        .page_history .nav_history li a:hover .fluffy > div {
          animation-duration: 14s; }
      .page_history .nav_history li a p {
        position: absolute;
        left: 0;
        right: 0;
        text-align: center;
        top: 50%;
        transform: translateY(-50%);
        font-size: 1.22rem; }
        .page_history .nav_history li a p span {
          font-size: 0.94rem;
          display: block; }
    .page_history .nav_history li .fluffy {
      width: 180px;
      height: 180px;
      position: relative;
      transition: 0.2s; }
      .page_history .nav_history li .fluffy > div {
        width: 170px;
        height: 170px; }
      .page_history .nav_history li .fluffy .circle-1 {
        width: 180px;
        height: 180px; }
      .page_history .nav_history li .fluffy .circle-2 {
        margin-top: -8px; }
      .page_history .nav_history li .fluffy .circle-3 {
        margin-top: 10px; }
      .page_history .nav_history li .fluffy .white {
        width: 155px;
        height: 155px;
        top: 10px; }

.page_history .sec_chapter .inner {
  max-width: calc(1280px + 8vw); }

.page_history .sec_chapter h2 .fluffy {
  width: 220px;
  height: 220px;
  position: relative; }
  .page_history .sec_chapter h2 .fluffy > div {
    width: 220px;
    height: 220px; }
  .page_history .sec_chapter h2 .fluffy .circle-1 {
    width: 220px;
    height: 220px; }
  .page_history .sec_chapter h2 .fluffy .circle-2 {
    margin-top: -8px; }
  .page_history .sec_chapter h2 .fluffy .circle-3 {
    margin-top: 10px; }
  .page_history .sec_chapter h2 .fluffy .white {
    width: 200px;
    height: 200px;
    top: 15px; }
  .page_history .sec_chapter h2 .fluffy p {
    position: absolute;
    left: 0;
    right: 0;
    text-align: center;
    top: 50%;
    transform: translateY(-50%);
    font-size: 1.6rem;
    letter-spacing: 0.1em;
    color: #30cdad; }
    .page_history .sec_chapter h2 .fluffy p span {
      font-size: 0.85rem;
      letter-spacing: 0.15em;
      display: block; }

.page_history .sec_chapter h2 + p {
  max-width: 700px;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 80px;
  margin-top: 40px; }

.page_history .history_box {
  display: flex; }
  @media screen and (max-width: 480px) {
    .page_history .history_box {
      display: block; } }
  .page_history .history_box:not(:last-child) {
    margin-bottom: 60px; }
    .page_history .history_box:not(:last-child) .year span:after {
      height: 460%; }
      @media screen and (max-width: 480px) {
        .page_history .history_box:not(:last-child) .year span:after {
          height: 1000%; } }
  .page_history .history_box:last-child .year span:after {
    height: 30px; }
  @media screen and (max-width: 897px) {
    .page_history .history_box .year {
      margin-bottom: 20px; } }
  .page_history .history_box .year span {
    position: relative; }
    .page_history .history_box .year span:after {
      content: "";
      width: 1px;
      background-color: #cfcecd;
      position: absolute;
      top: 80%; }
  @media screen and (max-width: 480px) {
    .page_history .history_box .contents {
      position: relative;
      z-index: 1; } }
  .page_history .history_box .contents .date {
    font-size: 0.75rem;
    margin-left: 2em;
    font-weight: normal;
    display: inline-block;
    font-feature-settings: "palt"; }
  .page_history .history_box .text {
    font-size: 14px; }
    @media screen and (max-width: 897px) {
      .page_history .history_box .text {
        font-size: 0.875rem; } }
.page_history .history_box_lg .year span:after {
  left: 69px; }
  @media screen and (max-width: 480px) {
    .page_history .history_box_lg .year span:after {
      left: 50px; } }
.page_history .history_box_lg .contents {
  background-color: #f5f4f3;
  padding: 20px 30px;
  border-radius: 18px; }
  @media screen and (max-width: 897px) {
    .page_history .history_box_lg .contents {
      margin-left: 30px; } }
  @media screen and (max-width: 480px) {
    .page_history .history_box_lg .contents {
      margin-left: 0;
      max-width: 100%; } }
  .page_history .history_box_lg .contents h3 {
    font-size: 1rem;
    border-bottom: 1px solid #cfcecd;
    margin-bottom: 20px; }
  @media screen and (max-width: 480px) {
    .page_history .history_box_lg .contents .flex {
      display: block; } }
  @media screen and (max-width: 480px) {
    .page_history .history_box_lg .contents .flex .thum,
    .page_history .history_box_lg .contents .flex .text {
      max-width: 100% !important; } }
.page_history .history_box_sm .year {
  position: relative;
  padding-left: 85px; }
  @media screen and (max-width: 480px) {
    .page_history .history_box_sm .year {
      padding-left: 67px; } }
  .page_history .history_box_sm .year:before {
    width: 22px;
    height: 22px;
    border-radius: 11px;
    background-color: #30cdad;
    content: "";
    position: absolute;
    left: 59px;
    top: 0.3em;
    z-index: 1; }
    @media screen and (max-width: 480px) {
      .page_history .history_box_sm .year:before {
        width: 14px;
        height: 14px;
        left: 44px; } }
  .page_history .history_box_sm .year span:after {
    left: -16px; }
    @media screen and (max-width: 480px) {
      .page_history .history_box_sm .year span:after {
        left: -17px; } }
.page_history .history_box_sm h3 {
  font-size: 1rem; }

.page_history .history_box_sm .flex {
  background-color: #f3f2f1;
  padding: 20px;
  border-radius: 18px; }
  @media screen and (max-width: 480px) {
    .page_history .history_box_sm .flex {
      display: block; } }
  .page_history .history_box_sm .flex .thum {
    flex-basis: 26% !important;
    max-width: 26% !important; }
    @media screen and (max-width: 480px) {
      .page_history .history_box_sm .flex .thum {
        max-width: 100% !important; } }
  .page_history .history_box_sm .flex .text {
    flex-basis: 74% !important;
    max-width: 74% !important;
    margin-top: 0;
    padding: 0; }
    @media screen and (max-width: 480px) {
      .page_history .history_box_sm .flex .text {
        max-width: 100% !important; } }
.page_history .history_box_sm .text {
  background-color: #f5f4f3;
  border-radius: 18px;
  padding: 15px 30px;
  margin-top: 10px; }

@media screen and (max-width: 480px) {
  .page_history .history_box_sm .contents {
    padding-left: 75px !important;
    max-width: 100%; } }

.page_history .strong h3 {
  color: #f69aa1;
  text-align: center;
  border: 3px solid #f69aa1;
  border-radius: 14px;
  padding: 5px 10px; }

.page_history .strong .year {
  color: #f69aa1;
  transform: translateY(0.1em); }
  .page_history .strong .year:before {
    background-color: #f69aa1; }

.page_history .year {
  font-family: coquette, sans-serif;
  font-weight: 600;
  color: #30cdad;
  font-size: 1.8rem;
  flex-basis: 20.7%;
  max-width: 20.7%;
  line-height: 1; }

.page_history .year.lg {
  font-size: 4.44rem; }

.page_history .contents {
  flex-basis: 79.3%;
  max-width: 79.3%; }
  @media screen and (max-width: 897px) {
    .page_history .contents {
      padding-left: 30px !important; } }
.page_history .content.flex .thum {
  flex-basis: 45.9%;
  max-width: 45.9%; }
  .page_history .content.flex .thum img {
    width: 100%; }

.page_history .content.flex .text {
  flex-basis: 54.1%;
  max-width: 54.1%;
  padding-left: 2vw;
  font-size: 0.8rem; }
  @media screen and (max-width: 480px) {
    .page_history .content.flex .text {
      padding-left: 0; } }
.page_history .flex_history_box {
  display: flex;
  width: 100%; }

.page_history .flex_history_box_l {
  flex-basis: 60%;
  max-height: 60%; }

.page_history .flex_history_box_r {
  flex-basis: 40%;
  max-height: 40%; }
  .page_history .flex_history_box_r img {
    width: 100%; }

.page_history #chapter1,
.page_history #chapter2,
.page_history #chapter3 {
  background-color: #fff; }

.page_history #chapter1,
.page_history #chapter2 {
  padding-bottom: 140px; }
  @media screen and (max-width: 480px) {
    .page_history #chapter1,
    .page_history #chapter2 {
      padding-bottom: 0; } }
.page_history #chapter3 {
  padding-bottom: 200px; }

.page_history .chapter_top {
  background-color: #f3f2f1;
  border-radius: 10px;
  padding: 2rem 10%;
  margin-top: 100px;
  letter-spacing: 0.02em; }

.page_history #c1_1959 {
  margin-top: 70px; }
  .page_history #c1_1959 .contents {
    background: none;
    padding-left: 0; }
    @media screen and (max-width: 897px) {
      .page_history #c1_1959 .contents {
        background-color: #f3f2f1; } }
    .page_history #c1_1959 .contents h3 {
      border-bottom: none; }
      @media screen and (max-width: 897px) {
        .page_history #c1_1959 .contents h3 {
          margin-bottom: 0; } }
  @media screen and (max-width: 480px) {
    .page_history #c1_1959 .year span:after {
      height: 1000%; } }
@media screen and (max-width: 897px) {
  .page_history #c1_1994_1 .contents .flex {
    display: block; }
    .page_history #c1_1994_1 .contents .flex .thum,
    .page_history #c1_1994_1 .contents .flex .text {
      max-width: 100%; }
    .page_history #c1_1994_1 .contents .flex .thum {
      text-align: center;
      margin-bottom: 20px; }
      .page_history #c1_1994_1 .contents .flex .thum img {
        max-width: 333px; } }

.page_history #c1_1994_2 .contents h3 {
  border-bottom: none;
  margin-bottom: 0; }

.page_history #c2_2002 {
  margin-top: 100px; }
  .page_history #c2_2002 .thum {
    text-align: center;
    padding-top: 75px;
    padding-bottom: 70px; }
    @media screen and (max-width: 897px) {
      .page_history #c2_2002 .thum {
        padding-top: 20px;
        padding-bottom: 20px; } }
    .page_history #c2_2002 .thum img {
      max-width: 428px;
      width: 100%; }

.page_history #c1_2002_2 .contents h3 {
  border-bottom: none;
  margin-bottom: 0; }

.page_history #c2_2007 .year span:after {
  height: 200px !important; }

.page_history #c3_2010 {
  margin-top: 100px; }
  .page_history #c3_2010 .content.flex .thum {
    flex-basis: 26%;
    max-width: 26%; }
  .page_history #c3_2010 .content.flex .text {
    flex-basis: 74%;
    max-width: 74%; }

.page_history #c3_2010 .year span:after,
.page_history #c3_2013_1 .year span:after {
  height: 600% !important; }

.page_history #future {
  margin-top: 70px;
  border-bottom: 130px solid #fff;
  padding-bottom: 100px; }
  @media screen and (max-width: 480px) {
    .page_history #future {
      margin-top: 0px;
      border-bottom-width: 20px; } }
  .page_history #future .future_contents,
  .page_history #future .future_recruit {
    background-color: #fff;
    border-radius: 30px;
    padding: 60px 16%; }
    @media screen and (max-width: 480px) {
      .page_history #future .future_contents,
      .page_history #future .future_recruit {
        padding-left: 6vw;
        padding-right: 6vw; } }
  .page_history #future .future_contents .lg {
    text-align: center;
    font-size: 1.5rem;
    font-weight: bold;
    color: #30cdad;
    margin-bottom: 30px; }
    @media screen and (max-width: 480px) {
      .page_history #future .future_contents .lg {
        font-size: 5vw; } }
  .page_history #future .future_contents p {
    margin-bottom: 20px; }
  .page_history #future .future_contents .president {
    margin-top: 30px;
    text-align: center;
    font-weight: bold; }
    .page_history #future .future_contents .president img {
      width: 144px;
      margin-bottom: 10px; }
  .page_history #future .future_recruit {
    margin-top: 35px; }
    .page_history #future .future_recruit .lg {
      font-size: 1.5rem;
      text-align: center;
      font-weight: bold;
      margin-bottom: 20px; }
      @media screen and (max-width: 480px) {
        .page_history #future .future_recruit .lg {
          font-size: 5.4vw; } }
    .page_history #future .future_recruit a {
      transition: .2s; }
      .page_history #future .future_recruit a:hover {
        opacity: 0.8; }
    .page_history #future .future_recruit img {
      width: 100%; }

/**
* 6.4 - Information
* -----------------------------------------------------------------------------
*/
.page_information .mainvisual {
  background-image: url("/resource/images/information/mainvisual.jpg"); }
  .page_information .mainvisual h2 img {
    width: 292px; }

.page_information .sec_page {
  background-color: #fff;
  padding-bottom: 5rem; }
  @media screen and (max-width: 480px) {
    .page_information .sec_page {
      padding-bottom: 10px; } }
  .page_information .sec_page:first-of-type {
    margin-top: 5rem; }
  .page_information .sec_page:last-of-type {
    margin-bottom: 5rem; }

.page_information .information_box {
  max-width: 1024px;
  margin-left: auto;
  margin-right: auto;
  border: 1px solid #f7f6f5;
  background-color: #fff;
  margin-bottom: 20px; }
  .page_information .information_box .title {
    background-color: #f7f6f5;
    padding-left: 20px;
    padding-top: 10px;
    padding-bottom: 10px;
    position: relative;
    transition: all .5s;
    font-feature-settings: "palt"; }
    @media screen and (max-width: 480px) {
      .page_information .information_box .title {
        padding-right: 40px;
        padding-left: calc( 14px + 1.75em);
        text-indent: -1.75em;
        line-height: 1.4; } }
    .page_information .information_box .title:before {
      content: "";
      width: 8px;
      height: 8px;
      border-radius: 4px;
      display: inline-block;
      vertical-align: middle;
      background-color: #30CFAF;
      margin-right: 14px; }
    .page_information .information_box .title:hover {
      background-color: #f0efee; }
    @media screen and (max-width: 480px) {
      .page_information .information_box .title .accordion_icon {
        position: absolute;
        top: 50%;
        transform: translateY(-50%);
        right: 0;
        margin-right: 5px; } }
  .page_information .information_box .title.active {
    background-color: #eafaf7; }
  .page_information .information_box .contents {
    padding: 60px 40px 0 40px;
    display: none; }
    @media screen and (max-width: 480px) {
      .page_information .information_box .contents {
        padding-left: 4vw;
        padding-right: 4vw;
        padding-top: 30px;
        padding-bottom: 20px; }
        .page_information .information_box .contents inner {
          max-width: 640px;
          margin: 0 auto; } }
    .page_information .information_box .contents .flex_three {
      font-size: 0;
      justify-content: space-around;
      align-items: center; }
      .page_information .information_box .contents .flex_three > div {
        font-size: 1rem;
        display: inline-block;
        width: 28.8%;
        vertical-align: top; }
        @media screen and (max-width: 480px) {
          .page_information .information_box .contents .flex_three > div {
            display: block;
            width: 100%; } }
        .page_information .information_box .contents .flex_three > div:not(:nth-child(3n)) {
          margin-right: 6.8%; }
  .page_information .information_box .contents.open {
    display: block; }

@media screen and (max-width: 480px) {
  .page_information #report {
    padding-bottom: 10px; } }

.page_information #public .flex_three,
.page_information #report .flex_three {
  flex-wrap: wrap;
  letter-spacing: -.4em; }
  @media screen and (max-width: 480px) {
    .page_information #public .flex_three div,
    .page_information #report .flex_three div {
      margin: 3rem 0 !important; }
      .page_information #public .flex_three div:first-child,
      .page_information #report .flex_three div:first-child {
        margin-top: 1rem !important; } }
  .page_information #public .flex_three > div,
  .page_information #report .flex_three > div {
    position: relative;
    padding-left: 37px;
    margin-bottom: 70px;
    letter-spacing: normal; }
    .page_information #public .flex_three > div a,
    .page_information #report .flex_three > div a {
      position: absolute;
      display: block;
      top: 50%;
      transform: translateY(-50%);
      line-height: 1.2;
      font-size: 0.875rem;
      letter-spacing: .03em; }
      @media screen and (max-width: 480px) {
        .page_information #public .flex_three > div a,
        .page_information #report .flex_three > div a {
          position: static;
          transform: none; } }
    .page_information #public .flex_three > div:before,
    .page_information #report .flex_three > div:before {
      content: "";
      width: 27px;
      height: 31px;
      background-image: url("/resource/images/common/icon_pdf.svg");
      background-repeat: no-repeat;
      background-size: contain;
      position: absolute;
      top: 50%;
      transform: translateY(-50%);
      left: 0; }

.page_information #exective .tb_complaint1 td:nth-child(2) {
  width: auto; }

.page_information #exective .note {
  font-size: 0.8125rem; }

.page_information #complaint p {
  font-size: 0.875rem; }

.page_information #complaint h3 {
  font-weight: bold;
  border-bottom: 1px solid #30CFAF;
  margin-top: 2rem;
  margin-bottom: 10px;
  padding-bottom: 5px;
  font-size: 0.9375rem;
  padding-left: 1.42em;
  text-indent: -1.42em;
  line-height: 1.4; }
  @media screen and (max-width: 480px) {
    .page_information #complaint h3 {
      margin-bottom: 15px;
      padding-bottom: 10px; }
      .page_information #complaint h3:not(:first-child) {
        margin-top: 5rem; } }
  .page_information #complaint h3:before {
    content: "";
    width: 12px;
    height: 12px;
    border-radius: 6px;
    margin-right: 10px;
    display: inline-block;
    vertical-align: middle;
    background-color: #30CFAF; }

.page_information #complaint .flex {
  margin-top: 0.7rem; }
  @media screen and (max-width: 480px) {
    .page_information #complaint .flex {
      display: block; } }
  .page_information #complaint .flex > div {
    flex: 1; }
    .page_information #complaint .flex > div:not(:last-child) {
      margin-right: 6%; }
      @media screen and (max-width: 480px) {
        .page_information #complaint .flex > div:not(:last-child) {
          margin-right: 0; } }
    .page_information #complaint .flex > div table {
      font-size: 0.8125rem; }
      .page_information #complaint .flex > div table tr:not(:last-child) {
        border-bottom: 1px solid #F7F6F5; }
      .page_information #complaint .flex > div table tr th, .page_information #complaint .flex > div table tr td {
        padding: 5px 0; }
      .page_information #complaint .flex > div table tr td {
        padding-left: 20px; }

.page_information #complaint .complaint_box > div {
  background-color: #F7F6F5;
  border-radius: 0.5rem; }

.page_information #complaint .complaint_box .title {
  flex-basis: 25%;
  max-width: 25%;
  margin-right: 0 !important;
  padding: 20px 20px; }
  @media screen and (max-width: 480px) {
    .page_information #complaint .complaint_box .title {
      max-width: 100%;
      border-bottom-right-radius: 0;
      border-bottom-left-radius: 0;
      padding-bottom: 0; } }
  .page_information #complaint .complaint_box .title:before {
    display: none; }
  .page_information #complaint .complaint_box .title p {
    font-size: 0.875rem;
    text-indent: -1.2rem;
    margin-left: 1.2rem;
    line-height: 1;
    vertical-align: -20%; }
    .page_information #complaint .complaint_box .title p span {
      font-size: 1.5rem;
      color: #30CFAF;
      width: 1.2rem;
      display: inline-block;
      text-indent: 0;
      vertical-align: -10%; }

.page_information #complaint .complaint_box .text {
  flex-basis: 73.7%;
  max-width: 73.7%;
  font-size: 0.75rem;
  padding: 1rem 1.5rem;
  font-size: 0.75rem;
  line-height: 1.5;
  letter-spacing: 0.02em; }
  @media screen and (max-width: 480px) {
    .page_information #complaint .complaint_box .text {
      max-width: 100%;
      border-top-right-radius: 0;
      border-top-left-radius: 0;
      padding-top: 10px; } }
.page_information #complaint .complaint_box ol {
  margin-left: 1.5rem; }
  .page_information #complaint .complaint_box ol li {
    list-style-type: none;
    counter-increment: cnt; }
    .page_information #complaint .complaint_box ol li::before {
      display: inline-block;
      content: "［" counter(cnt) "］";
      margin-left: -2.5em;
      width: 2.5em; }

.page_information table {
  margin-bottom: 30px;
  font-size: 0.8125rem; }
  .page_information table tr {
    border-bottom: 1px solid #F7F6F5; }
  .page_information table th, .page_information table td {
    padding: 0.625rem 1.25rem;
    border: 1px solid #F7F6F5; }
    @media screen and (max-width: 480px) {
      .page_information table th, .page_information table td {
        padding: 1rem 0.5rem !important;
        line-height: 1.3; } }
  .page_information table thead th {
    text-align: left;
    background-color: #F7F6F5;
    font-weight: bold; }
    @media screen and (max-width: 480px) {
      .page_information table thead th:last-child {
        padding-left: 0;
        text-align: center; } }
    .page_information table thead th:not(:last-child) {
      border-right: 1px solid #fff; }

.page_information .tb_complaint1 td:not(:last-child) {
  width: 1px;
  white-space: nowrap; }
  @media screen and (max-width: 480px) {
    .page_information .tb_complaint1 td:not(:last-child) {
      white-space: normal; } }
.page_information .tb_complaint1 td:nth-child(1) {
  width: 30%; }
  @media screen and (max-width: 480px) {
    .page_information .tb_complaint1 td:nth-child(1) {
      width: auto; } }
.page_information .tb_complaint1 td:nth-child(2) {
  width: 20%; }
  @media screen and (max-width: 480px) {
    .page_information .tb_complaint1 td:nth-child(2) {
      width: auto; } }
.page_information .tb_complaint1 td, .page_information .tb_complaint1 th {
  padding: 0.625rem 2rem; }

.page_information .tb_complaint2 td {
  vertical-align: middle; }
  .page_information .tb_complaint2 td:nth-child(1) {
    width: 300px; }
    @media screen and (max-width: 480px) {
      .page_information .tb_complaint2 td:nth-child(1) {
        width: 4em; } }
.page_information .complaint_bottom {
  margin-top: 80px;
  margin-bottom: 160px; }
  @media screen and (max-width: 897px) {
    .page_information .complaint_bottom {
      margin-bottom: 40px; } }
  @media screen and (max-width: 480px) {
    .page_information .complaint_bottom .flex {
      display: block; } }
  .page_information .complaint_bottom .flex > div {
    flex-basis: 47.3%;
    max-width: 47.3%; }
    @media screen and (max-width: 480px) {
      .page_information .complaint_bottom .flex > div {
        max-width: 100%;
        margin-bottom: 20px; } }
    .page_information .complaint_bottom .flex > div a {
      display: block;
      width: 100%;
      height: 100%;
      background-color: #F7F6F5;
      border-radius: 20px;
      position: relative;
      padding: 36px 10px;
      text-align: center;
      font-weight: bold; }
      .page_information .complaint_bottom .flex > div a:after {
        content: "";
        width: 15px;
        height: 9px;
        background-image: url("/resource/images/about/arrow1.svg");
        background-size: contain;
        background-repeat: no-repeat;
        position: absolute;
        top: 50%;
        transform: translateY(-50%);
        right: 20px; }
      .page_information .complaint_bottom .flex > div a span:before {
        content: "";
        display: inline-block;
        width: 32px;
        height: 37px;
        background-image: url("/resource/images/common/icon_pdf.svg");
        background-repeat: no-repeat;
        background-size: contain;
        vertical-align: middle;
        margin-right: 10px; }

/**
* 6.4 - Facilities
* -----------------------------------------------------------------------------
*/
.page_facilities .mainvisual {
  background-image: url("/resource/images/facilities/mainvisual.jpg"); }
  .page_facilities .mainvisual h2 {
    padding-left: 20px;
    padding-right: 20px; }
    .page_facilities .mainvisual h2 img {
      max-width: 367px;
      width: 100%; }

.page_facilities #facility_list {
  padding-top: 80px; }
  @media screen and (max-width: 480px) {
    .page_facilities #facility_list {
      padding-top: 40px; } }
  .page_facilities #facility_list .inner {
    max-width: calc(1280px + 8vw); }
  .page_facilities #facility_list .facility_list_wrap {
    letter-spacing: -.4rem;
    margin-top: 40px; }
    .page_facilities #facility_list .facility_list_wrap > div {
      width: 31.25%;
      background-color: #fff;
      box-shadow: 0 0 20px rgba(0, 0, 0, 0.1);
      padding: 1.5%;
      border-radius: 20px;
      margin-bottom: 30px;
      line-height: 1;
      letter-spacing: normal;
      white-space: nowrap;
      display: inline-block;
      text-align: center;
      transition: all .8s;
      border: 1px solid #fff; }
      .page_facilities #facility_list .facility_list_wrap > div:hover {
        box-shadow: 0 0 0 rgba(0, 0, 0, 0.1);
        background-color: #fdfdfc; }
        .page_facilities #facility_list .facility_list_wrap > div:hover img {
          transform: scale(1.1); }
      @media screen and (max-width: 480px) {
        .page_facilities #facility_list .facility_list_wrap > div {
          width: 48%; } }
      .page_facilities #facility_list .facility_list_wrap > div:nth-child(3n-2), .page_facilities #facility_list .facility_list_wrap > div:nth-child(3n-1) {
        margin-right: 3.125%; }
        @media screen and (max-width: 480px) {
          .page_facilities #facility_list .facility_list_wrap > div:nth-child(3n-2), .page_facilities #facility_list .facility_list_wrap > div:nth-child(3n-1) {
            margin-right: 0; } }
      .page_facilities #facility_list .facility_list_wrap > div:nth-child(2n-1) include less_than_sp {
        margin-right: 4%; }
      .page_facilities #facility_list .facility_list_wrap > div .thum {
        border-radius: 15px;
        overflow: hidden; }
        .page_facilities #facility_list .facility_list_wrap > div .thum img {
          width: 100%;
          transition: all .8s;
          object-fit: cover; }
      .page_facilities #facility_list .facility_list_wrap > div .subtitle {
        font-size: 0.75rem;
        padding-top: 1rem;
        padding-bottom: .3rem; }
        @media screen and (max-width: 480px) {
          .page_facilities #facility_list .facility_list_wrap > div .subtitle {
            font-size: 11px; } }
      .page_facilities #facility_list .facility_list_wrap > div .name {
        font-size: 1rem;
        font-weight: bold;
        padding-bottom: calc( 1rem - 10px); }
        @media screen and (max-width: 480px) {
          .page_facilities #facility_list .facility_list_wrap > div .name {
            font-size: 3.5vw; } }
    .page_facilities #facility_list .facility_list_wrap .facility_adachi .subtitle {
      color: #58D5E8; }
    .page_facilities #facility_list .facility_list_wrap .facility_adachi:hover {
      border: 1px solid #58D5E8; }
    .page_facilities #facility_list .facility_list_wrap .facility_ayase .subtitle {
      color: #88B666; }
    .page_facilities #facility_list .facility_list_wrap .facility_ayase:hover {
      border: 1px solid #88B666; }
    .page_facilities #facility_list .facility_list_wrap .facility_toneri .subtitle {
      color: #dcde30; }
    .page_facilities #facility_list .facility_list_wrap .facility_toneri:hover {
      border: 1px solid #dcde30; }
    .page_facilities #facility_list .facility_list_wrap .facility_hanahata .subtitle {
      color: #eda1bf; }
    .page_facilities #facility_list .facility_list_wrap .facility_hanahata:hover {
      border: 1px solid #eda1bf; }
    .page_facilities #facility_list .facility_list_wrap .facility_takenotsuka .subtitle {
      color: #79B680; }
    .page_facilities #facility_list .facility_list_wrap .facility_takenotsuka:hover {
      border: 1px solid #79B680; }
    .page_facilities #facility_list .facility_list_wrap .facility_shien .subtitle {
      color: #F3998F; }
    .page_facilities #facility_list .facility_list_wrap .facility_shien:hover {
      border: 1px solid #F3998F; }
    .page_facilities #facility_list .facility_list_wrap .facility_shinmei .subtitle {
      color: #5296DC; }
    .page_facilities #facility_list .facility_list_wrap .facility_shinmei:hover {
      border: 1px solid #5296DC; }
    .page_facilities #facility_list .facility_list_wrap .facility_ooyata .subtitle {
      color: #F3B56C; }
    .page_facilities #facility_list .facility_list_wrap .facility_ooyata:hover {
      border: 1px solid #F3B56C; }

.page_facilities #facility_map {
  padding-top: 60px;
  border-bottom: 60px solid #fff;
  padding-bottom: 88px; }
  .page_facilities #facility_map .inner {
    max-width: calc(1440px + 8vw); }
    .page_facilities #facility_map .inner h2 {
      margin-bottom: 0; }
  .page_facilities #facility_map .gmap {
    width: 100%;
    height: 500px;
    border-radius: 25px;
    background-color: #fff;
    position: relative; }
    .page_facilities #facility_map .gmap:before {
      position: absolute;
      top: 46px;
      left: 0;
      width: 100%;
      height: 20px;
      content: "";
      background-color: #fff;
      border-top-right-radius: 20px;
      border-top-left-radius: 20px;
      z-index: 2; }
    .page_facilities #facility_map .gmap iframe {
      overflow: hidden;
      width: calc(100% - 40px);
      margin-left: auto;
      margin-right: auto;
      height: calc(100% - 40px);
      display: block;
      transform: translateY(20px); }
    .page_facilities #facility_map .gmap .gmap_border {
      border: 20px solid #fff;
      position: absolute;
      border-radius: 20px;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      background-color: transparent; }
    .page_facilities #facility_map .gmap .gmap_mask {
      background-color: #f9f9f6;
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 66px;
      z-index: 1; }

.nav_facilities {
  margin-top: 60px;
  padding-bottom: 60px; }
  @media screen and (max-width: 480px) {
    .nav_facilities {
      margin-top: 30px;
      padding-bottom: 30px; } }
  .nav_facilities ul {
    justify-content: center; }
    .nav_facilities ul li {
      flex-basis: 260px;
      max-width: 260px;
      margin: 0 15px; }
      .nav_facilities ul li a {
        display: block;
        background-color: #fff;
        text-align: center;
        border-radius: 100px;
        width: 100%;
        height: 100%;
        padding: 15px 10px; }
        @media screen and (max-width: 480px) {
          .nav_facilities ul li a {
            padding-top: 5px;
            padding-bottom: 5px;
            font-size: 4vw; } }
        .nav_facilities ul li a span:before {
          content: "";
          display: inline-block;
          width: 8px;
          height: 4px;
          background-image: url("/resource/images/facilities/arrow1.svg");
          background-repeat: no-repeat;
          background-size: contain;
          vertical-align: middle;
          margin-right: 10px; }

/**
* 6.5 - Facility(Single)
* -----------------------------------------------------------------------------
*/
.page_facility .mainvisual h2 img {
  width: 192px; }

.page_facility .facility_top {
  padding-top: 140px;
  padding-bottom: 110px;
  background-color: #fff;
  position: relative; }
  @media screen and (max-width: 897px) {
    .page_facility .facility_top {
      padding-bottom: 60px;
      padding-top: 120px; } }
  @media screen and (max-width: 480px) {
    .page_facility .facility_top {
      padding-bottom: 30px;
      padding-top: 0; } }
  .page_facility .facility_top .facility_title {
    position: absolute;
    text-align: center;
    left: 0;
    right: 0;
    top: -80px;
    max-width: 650px;
    margin-left: auto;
    margin-right: auto;
    border-radius: 25px;
    color: #fff;
    font-size: 2.375rem;
    font-weight: bold;
    padding-top: 20px;
    padding-bottom: 20px;
    line-height: 1.4;
    z-index: 2;
    padding-left: 20px;
    padding-right: 20px;
    box-sizing: content-box;
    white-space: nowrap; }
    @media screen and (max-width: 480px) {
      .page_facility .facility_top .facility_title {
        max-width: 80%;
        font-size: 1rem;
        position: relative;
        margin-top: 38px; } }
    .page_facility .facility_top .facility_title .sm {
      font-size: 1.4375rem; }
    .page_facility .facility_top .facility_title .sm2 {
      font-size: 1.225rem;
      text-align: center;
      background-color: #fff;
      display: block;
      width: 80%;
      padding: 3px 10px;
      margin-left: auto;
      margin-right: auto;
      border-radius: 100px;
      margin-top: 5px; }
  .page_facility .facility_top .inner {
    max-width: calc(1440px + 8vw); }
    @media screen and (max-width: 897px) {
      .page_facility .facility_top .inner {
        overflow: hidden;
        padding-bottom: 30px; } }
  .page_facility .facility_top .catch_wrap {
    position: relative;
    background-color: #f7f6f5;
    border-radius: 20px;
    text-align: center;
    max-width: 780px;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    margin-top: 30px;
    padding-top: 20px;
    padding-bottom: 40px;
    padding-left: 20px;
    padding-right: 20px; }
    .page_facility .facility_top .catch_wrap .title {
      font-size: 0.88rem; }
    .page_facility .facility_top .catch_wrap .catch {
      font-size: 1.75rem;
      letter-spacing: 0.05em;
      font-weight: bold;
      margin-bottom: 10px;
      margin-top: 10px; }
    .page_facility .facility_top .catch_wrap .catch + p {
      font-size: 0.9rem;
      letter-spacing: 0.02em; }
    .page_facility .facility_top .catch_wrap .img_catch {
      position: absolute;
      right: calc(-10px - 14vw);
      top: -259px;
      width: calc(120px + 9vw); }
      @media screen and (max-width: 897px) {
        .page_facility .facility_top .catch_wrap .img_catch {
          position: static;
          display: block;
          margin-left: auto;
          margin-right: auto;
          width: 200px;
          margin-top: 20px; } }
    .page_facility .facility_top .catch_wrap .circle1,
    .page_facility .facility_top .catch_wrap .circle2,
    .page_facility .facility_top .catch_wrap .circle3,
    .page_facility .facility_top .catch_wrap .circle4 {
      position: absolute; }
    .page_facility .facility_top .catch_wrap .circle1,
    .page_facility .facility_top .catch_wrap .circle2 {
      width: 54px;
      height: 54px;
      border-radius: 27px; }
    .page_facility .facility_top .catch_wrap .circle1,
    .page_facility .facility_top .catch_wrap .circle4 {
      border-width: 3px;
      border-style: solid; }
    .page_facility .facility_top .catch_wrap .circle1 {
      top: -30px;
      left: 20px; }
    .page_facility .facility_top .catch_wrap .circle2 {
      top: 10px;
      left: -40px; }
    .page_facility .facility_top .catch_wrap .circle3 {
      width: 26px;
      height: 26px;
      border-radius: 13px;
      bottom: 70px;
      right: -4px; }
    .page_facility .facility_top .catch_wrap .circle4 {
      width: 81px;
      height: 81px;
      border-radius: 42px;
      bottom: -25px;
      right: -62px; }

.page_facility .facility_news {
  padding-top: 40px;
  padding-bottom: 30px;
  border-bottom: 53px solid #fff;
  font-size: 0.875rem; }
  .page_facility .facility_news .inner {
    max-width: calc(1040px + 8vw); }
    @media screen and (max-width: 897px) {
      .page_facility .facility_news .inner > .flex {
        display: block; } }
  .page_facility .facility_news .flex {
    justify-content: space-around; }
    .page_facility .facility_news .flex .title, .page_facility .facility_news .flex .contents {
      padding: .5em 0;
      font-size: 14px;
      line-height: 1.2;
      letter-spacing: 0;
      font-feature-settings: 'pwid'; }
      .page_facility .facility_news .flex .title .sub, .page_facility .facility_news .flex .contents .sub {
        font-size: 12px; }
    .page_facility .facility_news .flex > div {
      flex-basis: 42%;
      max-width: 42%; }
      @media screen and (max-width: 897px) {
        .page_facility .facility_news .flex > div {
          max-width: 490px;
          margin-left: auto;
          margin-right: auto; } }
      .page_facility .facility_news .flex > div h3 {
        font-size: 1rem;
        font-weight: bold;
        position: relative;
        margin-bottom: 20px; }
        .page_facility .facility_news .flex > div h3.ooyata {
          line-height: .5;
          padding-left: 50px;
          text-indent: -50px; }
          .page_facility .facility_news .flex > div h3.ooyata a {
            line-height: 2;
            padding-left: 0;
            text-indent: 0; }
        @media screen and (max-width: 480px) {
          .page_facility .facility_news .flex > div h3 {
            margin-bottom: 0; } }
        .page_facility .facility_news .flex > div h3 a {
          font-size: 13px;
          font-weight: normal;
          position: absolute;
          padding: 0 .5em;
          border-radius: 100px;
          top: 50%;
          transform: translateY(-50%);
          right: 0; }
          .page_facility .facility_news .flex > div h3 a::after {
            position: absolute;
            bottom: 0;
            left: 100%;
            content: '';
            width: 100%;
            height: 1px;
            background-color: #595652;
            transition: .3s;
            transform: translateX(-100%); }
          .page_facility .facility_news .flex > div h3 a:hover::after {
            width: 0%; }
          @media screen and (max-width: 480px) {
            .page_facility .facility_news .flex > div h3 a {
              position: static;
              display: block;
              max-width: 130px;
              text-align: center;
              margin-top: 30px; } }
        .page_facility .facility_news .flex > div h3:before {
          content: "";
          width: 2rem;
          height: 2rem;
          display: inline-block;
          background-repeat: no-repeat;
          background-size: contain;
          vertical-align: middle;
          margin-right: 15px; }
      .page_facility .facility_news .flex > div .flex {
        background-color: #fff;
        border-radius: 10px;
        padding: 8px 40px 8px 8px;
        margin-bottom: 10px;
        position: relative;
        border: 1px solid #fff;
        transition: all .3s; }
        .page_facility .facility_news .flex > div .flex .thum {
          background-size: contain;
          background-position: center center;
          border-radius: 10px;
          background-repeat: no-repeat;
          overflow: hidden; }
        .page_facility .facility_news .flex > div .flex .contents {
          padding-left: 4%; }
        .page_facility .facility_news .flex > div .flex .title {
          transition: all .3s; }
        .page_facility .facility_news .flex > div .flex:after {
          content: "";
          width: 15px;
          height: 9px;
          background-image: url("/resource/images/facility/arrow1.svg");
          background-repeat: no-repeat;
          background-size: contain;
          position: absolute;
          right: 20px;
          top: 50%;
          transform: translateY(-50%); }
    @media screen and (max-width: 897px) {
      .page_facility .facility_news .flex .blog {
        margin-bottom: 30px; } }
    .page_facility .facility_news .flex .blog .flex .thum {
      background-size: cover;
      flex-basis: 30%;
      max-width: 30%;
      padding-top: 15.6%; }
      @media screen and (max-width: 480px) {
        .page_facility .facility_news .flex .blog .flex .thum {
          flex-basis: 34%;
          max-width: 34%;
          padding-top: 24%; } }
    .page_facility .facility_news .flex .blog .flex .contents {
      flex-basis: 70%;
      max-width: 70%; }
      @media screen and (max-width: 480px) {
        .page_facility .facility_news .flex .blog .flex .contents {
          flex-basis: 66%;
          max-width: 66%; } }
    .page_facility .facility_news .flex .paper .flex .thum {
      flex-basis: 20%;
      max-width: 20%;
      padding-top: 15.6%; }
      @media screen and (max-width: 480px) {
        .page_facility .facility_news .flex .paper .flex .thum {
          flex-basis: 20%;
          max-width: 20%;
          padding-top: 16%; } }
    .page_facility .facility_news .flex .paper .flex .contents {
      flex-basis: 80%;
      max-width: 80%; }
      @media screen and (max-width: 480px) {
        .page_facility .facility_news .flex .paper .flex .contents {
          flex-basis: 80%;
          max-width: 80%; } }
  .page_facility .facility_news a:hover .flex {
    box-shadow: 0 15px 30px -5px rgba(0, 0, 0, 0.15), 0 0 5px rgba(0, 0, 0, 0.1);
    transform: translateY(-2px); }
  .page_facility .facility_news a.adachi:hover .title {
    color: #58D5E8; }

.page_facility .facility_nav {
  background-color: #fff;
  position: relative;
  z-index: 0; }
  .page_facility .facility_nav .flex {
    justify-content: center;
    padding-top: 30px;
    background-color: #f9f9f6;
    border-top-left-radius: 20px;
    border-top-right-radius: 20px; }
    @media screen and (max-width: 480px) {
      .page_facility .facility_nav .flex {
        flex-wrap: wrap; } }
    .page_facility .facility_nav .flex li {
      margin: 0 10px; }
      @media screen and (max-width: 480px) {
        .page_facility .facility_nav .flex li {
          margin-bottom: 20px; } }
      .page_facility .facility_nav .flex li a {
        display: block;
        width: 100%;
        height: 100%;
        padding: 10px 30px;
        background-color: #fff;
        text-align: center;
        border-radius: 100px;
        font-size: 0.875rem;
        font-weight: bold;
        border: 1px solid #e2e2da;
        transition: .1s; }
        .page_facility .facility_nav .flex li a span:before {
          content: "";
          width: 8px;
          height: 4px;
          background-image: url("/resource/images/facility/arrow2.svg");
          background-size: contain;
          background-repeat: no-repeat;
          display: inline-block;
          vertical-align: middle;
          margin-right: 10px; }
        .page_facility .facility_nav .flex li a:hover {
          color: #fff;
          border: none; }
          .page_facility .facility_nav .flex li a:hover span:before {
            background-image: url("/resource/images/facility/arrow3.svg"); }

.page_facility .facility_main .inner {
  max-width: calc(1160px + 8vw); }

.page_facility .facility_main .sec_title {
  position: relative;
  margin-bottom: 90px;
  margin-top: 30%; }
  @media screen and (max-width: 480px) {
    .page_facility .facility_main .sec_title {
      margin-top: 40px;
      margin-bottom: 50px; } }
  .page_facility .facility_main .sec_title h3 {
    font-size: 2rem;
    color: #fff;
    font-weight: bold;
    background-size: 100% 100%;
    width: 35%;
    padding-top: 66px;
    padding-bottom: 66px;
    text-align: center; }
    @media screen and (max-width: 897px) {
      .page_facility .facility_main .sec_title h3 {
        padding-top: 30px;
        padding-bottom: 30px; } }
    @media screen and (max-width: 480px) {
      .page_facility .facility_main .sec_title h3 {
        font-size: 1.57rem;
        width: 100%;
        padding-top: 40px;
        padding-bottom: 40px; } }
  .page_facility .facility_main .sec_title p {
    position: absolute;
    right: 0;
    left: auto;
    width: 60%;
    bottom: 0; }
    @media screen and (max-width: 897px) {
      .page_facility .facility_main .sec_title p {
        position: static;
        width: 80%;
        margin-right: 0;
        margin-left: auto;
        margin-top: 10px; } }
    @media screen and (max-width: 480px) {
      .page_facility .facility_main .sec_title p {
        width: 100%; } }
  .page_facility .facility_main .sec_title img {
    position: absolute;
    right: 0;
    width: 80%;
    bottom: 125px;
    z-index: -1; }
    @media screen and (max-width: 480px) {
      .page_facility .facility_main .sec_title img {
        position: static;
        margin-top: 10px;
        width: 100%; } }
.page_facility .box_facility {
  margin-bottom: 40px; }
  @media screen and (max-width: 897px) {
    .page_facility .box_facility {
      margin-bottom: 50px; } }
  .page_facility .box_facility h4 {
    position: relative;
    font-size: 1.5rem;
    margin-bottom: 10px;
    font-weight: bold;
    border-bottom: 5px solid #fff;
    padding-bottom: 10px;
    margin-bottom: 30px; }
    @media screen and (max-width: 480px) {
      .page_facility .box_facility h4 {
        margin-bottom: 10px; } }
    .page_facility .box_facility h4 .fluffy {
      display: inline-block;
      position: relative;
      transform: none;
      vertical-align: middle;
      height: 25px;
      margin-right: 7px; }
      @media screen and (max-width: 480px) {
        .page_facility .box_facility h4 .fluffy {
          vertical-align: text-bottom; } }
  @media screen and (max-width: 480px) {
    .page_facility .box_facility .flex {
      display: block; } }
  .page_facility .box_facility .flex .text {
    flex-basis: 55%;
    max-width: 55%; }
    @media screen and (max-width: 480px) {
      .page_facility .box_facility .flex .text {
        max-width: 100%;
        margin-bottom: 20px; } }
    .page_facility .box_facility .flex .text .description {
      border-radius: 20px;
      padding-top: 20px;
      padding-right: 40px;
      line-height: 2; }
      @media screen and (max-width: 480px) {
        .page_facility .box_facility .flex .text .description {
          padding-right: 0; } }
      .page_facility .box_facility .flex .text .description a {
        display: inline-block;
        padding: 10px 30px;
        text-align: center;
        background-color: rgba(89, 86, 82, 0.1);
        margin-top: 20px;
        border-radius: 100px;
        font-size: 0.875rem;
        position: relative;
        font-weight: bold; }
        .page_facility .box_facility .flex .text .description a:after {
          content: "";
          background-repeat: no-repeat;
          background-size: contain;
          display: inline-block;
          margin-left: 10px;
          vertical-align: middle; }
      .page_facility .box_facility .flex .text .description .external:after {
        width: 11px;
        height: 8px;
        background-image: url("/resource/images/facility-ayase/icon_external.svg"); }
      .page_facility .box_facility .flex .text .description .arrow:after {
        width: 11px;
        height: 8px;
        background-image: url("/resource/images/facility-ayase/arrow1.svg"); }
  .page_facility .box_facility .flex .image {
    flex-basis: 40%;
    max-width: 40%; }
    @media screen and (max-width: 480px) {
      .page_facility .box_facility .flex .image {
        max-width: 100%; } }
    .page_facility .box_facility .flex .image img {
      width: 100%; }

.page_facility .service_bottom {
  margin-top: 20px;
  margin-bottom: 76px;
  max-width: calc(100% - 40px);
  margin-right: 0;
  margin-left: auto;
  border-radius: 20px;
  background-color: rgba(255, 255, 255, 0.7); }
  @media screen and (max-width: 480px) {
    .page_facility .service_bottom {
      max-width: 100%; } }
  .page_facility .service_bottom .flex {
    padding: 20px 0; }
    @media screen and (max-width: 480px) {
      .page_facility .service_bottom .flex {
        display: block;
        padding-top: 40px; } }
  .page_facility .service_bottom .title {
    flex-basis: 19.6%;
    max-width: 19.6%;
    font-size: 1.125rem;
    font-weight: bold; }
    @media screen and (max-width: 480px) {
      .page_facility .service_bottom .title {
        max-width: 100%;
        text-align: center;
        border-right: none !important;
        margin-bottom: 20px; } }
    .page_facility .service_bottom .title span {
      position: relative;
      display: block;
      top: 50%;
      transform: translateY(-50%);
      left: 0;
      right: 0;
      margin-left: auto;
      margin-right: auto;
      text-align: center; }
      .page_facility .service_bottom .title span:after {
        content: "";
        width: 44px;
        height: 4px;
        position: absolute;
        bottom: -10px;
        margin-left: auto;
        margin-right: auto;
        right: 0;
        left: 0;
        border-radius: 2px; }
    .page_facility .service_bottom .title ul {
      position: relative;
      top: 50%;
      transform: translateY(-50%); }
      .page_facility .service_bottom .title ul li {
        line-height: 2; }
        .page_facility .service_bottom .title ul li:before {
          content: "";
          display: inline-block;
          vertical-align: middle;
          width: 10px;
          height: 10px;
          border-radius: 5px;
          margin-right: 10px; }
  .page_facility .service_bottom .text {
    flex-basis: 78.6%;
    max-width: 78.6%;
    padding: 0 20px; }
    @media screen and (max-width: 480px) {
      .page_facility .service_bottom .text {
        max-width: 100%; } }
    .page_facility .service_bottom .text table tr {
      border-bottom: 1px solid #F7F6F5; }
    .page_facility .service_bottom .text table th, .page_facility .service_bottom .text table td {
      font-size: 0.875rem;
      padding: 3px 0; }
    .page_facility .service_bottom .text table th {
      font-weight: bold;
      text-align: justify;
      text-justify: inter-ideograph;
      text-align-last: justify;
      padding-right: 2rem;
      white-space: nowrap;
      letter-spacing: 2px;
      width: 1px; }

.page_facility .service_bottom2 {
  padding-left: 30px;
  padding-right: 30px; }

.page_facility #activity {
  padding-bottom: 147px; }
  @media screen and (max-width: 897px) {
    .page_facility #activity {
      padding-bottom: 30px; } }
  .page_facility #activity .box_facility:last-of-type {
    margin-top: 50px; }

.page_facility #about {
  background-color: #fff;
  padding-top: 75px;
  padding-bottom: 65px;
  line-height: 1.6; }
  .page_facility #about h3 {
    max-width: 447px;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    font-size: 2rem;
    color: #fff;
    text-align: center;
    padding: 40px;
    background-size: 100% 100%;
    font-weight: bold;
    margin-bottom: 50px; }
    @media screen and (max-width: 897px) {
      .page_facility #about h3 {
        max-width: 370px;
        padding-top: 30px;
        padding-bottom: 30px;
        font-size: 1.75rem; } }
    @media screen and (max-width: 480px) {
      .page_facility #about h3 {
        font-size: 1.57rem;
        max-width: 278px;
        padding-top: 20px;
        padding-bottom: 20px; } }
  .page_facility #about .about_main {
    border-width: 30px;
    border-style: solid;
    border-radius: 30px;
    padding: 40px;
    background-color: #fff; }
    @media screen and (max-width: 897px) {
      .page_facility #about .about_main {
        border-width: calc( 10px + 2.22965vw);
        padding: calc( 15px + 2.22965vw); } }
    @media screen and (max-width: 480px) {
      .page_facility #about .about_main {
        padding-left: 20px;
        padding-right: 20px;
        padding-bottom: 20px;
        border-width: calc( 8px + 1.458333vw); } }
    .page_facility #about .about_main .about_box {
      padding-bottom: 30px; }
      @media screen and (max-width: 897px) {
        .page_facility #about .about_main .about_box {
          display: block; } }
      .page_facility #about .about_main .about_box:not(:last-child) {
        margin-bottom: 70px;
        border-bottom: 3px solid #F7F6F5; }
      .page_facility #about .about_main .about_box .label {
        flex-basis: 25%;
        max-width: 25%;
        text-align: center; }
        @media screen and (max-width: 897px) {
          .page_facility #about .about_main .about_box .label {
            max-width: 100%;
            margin-bottom: 20px; } }
        .page_facility #about .about_main .about_box .label img {
          width: 100%;
          max-width: 148px; }
      .page_facility #about .about_main .about_box .contents {
        flex-basis: 75%;
        max-width: 75%; }
        @media screen and (max-width: 897px) {
          .page_facility #about .about_main .about_box .contents {
            max-width: 100%; } }
        .page_facility #about .about_main .about_box .contents .philosophy_top {
          background-color: #F7F6F5;
          border-radius: 14px;
          padding: 20px; }
          .page_facility #about .about_main .about_box .contents .philosophy_top .lg {
            font-size: 1.5625rem;
            font-weight: bold; }
            @media screen and (max-width: 480px) {
              .page_facility #about .about_main .about_box .contents .philosophy_top .lg {
                text-align: center;
                font-size: 1.25rem;
                margin-bottom: 20px; } }
        .page_facility #about .about_main .about_box .contents dl {
          margin-top: 30px; }
          .page_facility #about .about_main .about_box .contents dl dt {
            margin-bottom: 6px; }
            .page_facility #about .about_main .about_box .contents dl dt:before {
              width: 7px;
              height: 7px;
              display: inline-block;
              vertical-align: middle;
              content: "";
              border-radius: 4px;
              margin-right: 13px; }
          .page_facility #about .about_main .about_box .contents dl dd:first-of-type {
            margin-bottom: 20px; }
        .page_facility #about .about_main .about_box .contents .tb_facility > tbody > tr.bg {
          background-color: #F7F6F5; }
        .page_facility #about .about_main .about_box .contents .tb_facility > tbody > tr > th, .page_facility #about .about_main .about_box .contents .tb_facility > tbody > tr td {
          padding-top: 15px;
          padding-bottom: 15px;
          font-size: 0.875rem;
          letter-spacing: 0; }
          @media screen and (max-width: 480px) {
            .page_facility #about .about_main .about_box .contents .tb_facility > tbody > tr > th, .page_facility #about .about_main .about_box .contents .tb_facility > tbody > tr td {
              display: block; } }
        .page_facility #about .about_main .about_box .contents .tb_facility > tbody > tr > th {
          text-align: left;
          padding: .5em 1.6em;
          font-weight: bold;
          white-space: nowrap;
          width: 1px; }
          @media screen and (max-width: 480px) {
            .page_facility #about .about_main .about_box .contents .tb_facility > tbody > tr > th {
              padding: 1.5em 2em 0 2em; } }
          .page_facility #about .about_main .about_box .contents .tb_facility > tbody > tr > th:before {
            width: 7px;
            height: 7px;
            display: inline-block;
            vertical-align: middle;
            content: "";
            border-radius: 4px;
            margin-right: .5em; }
        .page_facility #about .about_main .about_box .contents .tb_facility > tbody > tr.tr_contact td div {
          display: inline-block; }
          .page_facility #about .about_main .about_box .contents .tb_facility > tbody > tr.tr_contact td div span {
            background-color: rgba(89, 86, 82, 0.1);
            font-size: 13px;
            text-align: center;
            padding: 2px 5px;
            margin-right: 8px;
            border-radius: 3px; }
        @media screen and (max-width: 480px) {
          .page_facility #about .about_main .about_box .contents .tb_facility > tbody > tr > td {
            padding-left: calc( 2em + ( 8px + .5em ));
            padding-top: 10px;
            padding-right: 10px; } }
        .page_facility #about .about_main .about_box .contents .tb_facility > tbody > tr table th, .page_facility #about .about_main .about_box .contents .tb_facility > tbody > tr table td {
          padding-top: 5px;
          padding-bottom: 5px; }
          @media screen and (max-width: 480px) {
            .page_facility #about .about_main .about_box .contents .tb_facility > tbody > tr table th, .page_facility #about .about_main .about_box .contents .tb_facility > tbody > tr table td {
              display: block; } }
        .page_facility #about .about_main .about_box .contents .tb_facility > tbody > tr table th {
          padding-left: 0;
          padding-right: 20px;
          text-align: left;
          width: 1px;
          white-space: nowrap; }
          .page_facility #about .about_main .about_box .contents .tb_facility > tbody > tr table th:before {
            display: none; }
          @media screen and (max-width: 897px) {
            .page_facility #about .about_main .about_box .contents .tb_facility > tbody > tr table th {
              display: block;
              width: 100%; } }
        .page_facility #about .about_main .about_box .contents .tb_facility > tbody > tr table td {
          padding: .8em .5em;
          line-height: 1.2; }
          @media screen and (max-width: 897px) {
            .page_facility #about .about_main .about_box .contents .tb_facility > tbody > tr table td {
              display: block;
              padding-top: 0;
              padding-left: calc( 8px + .5em); } }
        .page_facility #about .about_main .about_box .contents h4 {
          font-size: 1.2rem;
          font-weight: bold;
          border-bottom-width: 1px;
          border-bottom-style: solid;
          padding-bottom: 13px;
          margin-bottom: 2.1rem;
          line-height: 1.4; }
          @media screen and (max-width: 897px) {
            .page_facility #about .about_main .about_box .contents h4 {
              text-align: center;
              font-size: 1.8rem;
              border-bottom: none;
              margin-bottom: 1rem; } }
          @media screen and (max-width: 897px) {
            .page_facility #about .about_main .about_box .contents h4 {
              font-size: 1.6rem; } }
          .page_facility #about .about_main .about_box .contents h4 span {
            display: inline-block;
            font-weight: normal;
            font-size: 0.75rem;
            border-radius: 5px;
            padding: .2em 1em;
            letter-spacing: .05em;
            vertical-align: middle; }
    .page_facility #about .about_main #nozomi h4,
    .page_facility #about .about_main #nagomi h4 {
      border-bottom-color: #D3EBD6; }
      .page_facility #about .about_main #nozomi h4 span,
      .page_facility #about .about_main #nagomi h4 span {
        background-color: #D3EBD6; }
    .page_facility #about .about_main #nozomi dl dt:before,
    .page_facility #about .about_main #nagomi dl dt:before {
      background-color: #79BD80; }
    .page_facility #about .about_main #nozomi .tb_facility tr th:before,
    .page_facility #about .about_main #nagomi .tb_facility tr th:before {
      background-color: #79BD80; }
    .page_facility #about .about_main #kizuna h4 {
      border-bottom-color: #F9EEBD; }
      .page_facility #about .about_main #kizuna h4 span {
        background-color: #F9EEBD; }
    .page_facility #about .about_main #kizuna dl dt:before {
      background-color: #F9E27D; }
    .page_facility #about .about_main #kizuna .tb_facility tr th:before {
      background-color: #F9E27D; }
    .page_facility #about .about_main .about_box.daycare td {
      border-bottom: 1px solid #e8e8e8; }
    @media screen and (max-width: 897px) {
      .page_facility #about .about_main .about_box.access {
        padding-bottom: 0; } }
    .page_facility #about .about_main .about_box.access .contents .tb_facility th, .page_facility #about .about_main .about_box.access .contents .tb_facility td {
      padding-top: 5px;
      padding-bottom: 5px; }
    @media screen and (max-width: 897px) {
      .page_facility #about .about_main .about_box.access .contents .tb_facility th {
        padding-left: 0; } }
    .page_facility #about .about_main .about_box.access .contents dl {
      margin-top: 0; }
      .page_facility #about .about_main .about_box.access .contents dl dt:before, .page_facility #about .about_main .about_box.access .contents dl dd:before {
        display: none; }
      .page_facility #about .about_main .about_box.access .contents dl dt {
        font-weight: bold;
        border-bottom: 1px solid #DEDDDC; }
        .page_facility #about .about_main .about_box.access .contents dl dt:not(:first-of-type) {
          margin-top: 10px; }
      .page_facility #about .about_main .about_box.access .contents dl dd {
        margin-bottom: 4px !important; }
        .page_facility #about .about_main .about_box.access .contents dl dd span {
          margin-right: 10px;
          margin-left: 20px;
          display: inline-block;
          margin-bottom: 10px;
          padding-left: 3.29em;
          text-indent: -3.29em; }
          .page_facility #about .about_main .about_box.access .contents dl dd span:before {
            content: "";
            display: inline-block;
            width: 36px;
            height: 18px;
            background-size: contain;
            vertical-align: middle;
            background-repeat: no-repeat;
            margin-right: 10px; }
    .page_facility #about .about_main .about_box.access .contents .gmap {
      margin-top: 40px;
      border-radius: 20px;
      overflow: hidden; }
      .page_facility #about .about_main .about_box.access .contents .gmap iframe {
        width: 100%;
        border-radius: 20px;
        overflow: hidden; }

.page_facility .nav_faciliy_bottom {
  border-bottom: 60px solid #fff;
  padding-bottom: 30px; }
  .page_facility .nav_faciliy_bottom .inner {
    max-width: calc(1280px + 8vw);
    padding-top: 40px; }
  .page_facility .nav_faciliy_bottom h3 {
    text-align: center;
    font-size: 1.375rem;
    font-weight: bold;
    position: relative;
    margin-bottom: 30px; }
    .page_facility .nav_faciliy_bottom h3 a {
      position: absolute;
      font-size: 0.8125rem;
      text-align: center;
      background-color: rgba(89, 86, 82, 0.1);
      right: 0;
      top: 50%;
      transform: translateY(-50%);
      padding: 3px 15px;
      border-radius: 100px; }
      @media screen and (max-width: 480px) {
        .page_facility .nav_faciliy_bottom h3 a {
          position: static;
          display: block;
          transform: none;
          max-width: 140px;
          text-align: center;
          margin-left: auto;
          margin-right: auto;
          margin-top: 10px; } }
  .page_facility .nav_faciliy_bottom ul {
    letter-spacing: -.4em; }
    .page_facility .nav_faciliy_bottom ul li {
      width: 32.7%;
      display: inline-block;
      margin-right: 0.95%;
      letter-spacing: normal;
      background-color: #fff;
      padding: 4px;
      margin-bottom: 15px;
      border-radius: 10px;
      transition: background-color .1s;
      box-shadow: 0 0 10px rgba(0, 0, 0, 0.1); }
      @media screen and (max-width: 897px) {
        .page_facility .nav_faciliy_bottom ul li {
          width: 48.76%;
          margin-right: 2.48%; } }
      @media screen and (max-width: 480px) {
        .page_facility .nav_faciliy_bottom ul li {
          width: 100%;
          display: block; } }
      @media screen and (max-width: 897px) {
        .page_facility .nav_faciliy_bottom ul li:nth-child(2n) {
          margin-right: 0 !important; } }
      .page_facility .nav_faciliy_bottom ul li:nth-child(3n) {
        margin-right: 0; }
        @media screen and (max-width: 897px) {
          .page_facility .nav_faciliy_bottom ul li:nth-child(3n) {
            margin-right: 2.48%; } }
      .page_facility .nav_faciliy_bottom ul li.current {
        background-color: rgba(89, 86, 82, 0.1); }
      .page_facility .nav_faciliy_bottom ul li .flex .thum {
        flex-basis: 37.8%;
        max-width: 37.8%; }
        .page_facility .nav_faciliy_bottom ul li .flex .thum img {
          width: 100%;
          vertical-align: bottom;
          border-radius: 10px; }
      .page_facility .nav_faciliy_bottom ul li .flex .text {
        flex-basis: 62.2%;
        max-width: 62.2%;
        text-align: center;
        font-weight: bold;
        font-size: 0.83rem; }
        .page_facility .nav_faciliy_bottom ul li .flex .text .sub {
          font-size: 0.75rem; }
      .page_facility .nav_faciliy_bottom ul li .flex span {
        position: relative;
        top: 50%;
        transform: translateY(-50%);
        display: block; }
      .page_facility .nav_faciliy_bottom ul li:hover {
        background-color: rgba(89, 86, 82, 0.1); }

/**
* 6.5.1 - Adachi
* -----------------------------------------------------------------------------
*/
.page_facility-adachi .mainvisual {
  background-image: url("/resource/images/facility-adachi/mainvisual.jpg"); }

.page_facility-adachi .facility_top .facility_title {
  background-color: #58D5E8; }

.page_facility-adachi .facility_top .inner .catch_wrap .title {
  color: #58D5E8; }

.page_facility-adachi .facility_top .inner .circle1 {
  border-color: #a8d461; }

.page_facility-adachi .facility_top .inner .circle2 {
  background-color: #58d5e8; }

.page_facility-adachi .facility_top .inner .circle3 {
  background-color: #a8d461; }

.page_facility-adachi .facility_top .inner .circle4 {
  border-color: #58d5e8; }

.page_facility-adachi .facility_news {
  background-color: #E4F1F2; }
  .page_facility-adachi .facility_news .flex .blog h3:before {
    background-image: url("/resource/images/facility-adachi/icon_blog.svg"); }
  .page_facility-adachi .facility_news .flex .paper h3:before {
    background-image: url("/resource/images/facility-adachi/icon_paper.svg"); }
  .page_facility-adachi .facility_news .flex > div .flex .contents .sub {
    color: #58D5E8; }

.page_facility-adachi .facility_nav .flex li a:hover {
  background-color: #58D5E8; }

.page_facility-adachi .facility_main h3 {
  background-image: url("/resource/images/facility-adachi/bg_h3.png"); }

.page_facility-adachi .service_bottom .title span:after {
  background-color: #58D5E8; }

.page_facility-adachi .service_bottom .text table tr:nth-child(2n-1) th {
  color: #58D5E8; }

.page_facility-adachi .service_bottom .text table tr:nth-child(2n) th {
  color: #A8D461; }

.page_facility-adachi #about h3 {
  background-image: url("/resource/images/facility-adachi/bg_h3_l.png"); }

.page_facility-adachi #about .about_main {
  border-color: #F9F9F7;
  font-feature-settings: 'palt'; }
  .page_facility-adachi #about .about_main .about_box .contents dl dt:first-of-type:before {
    background-color: #58D5E8; }
  .page_facility-adachi #about .about_main .about_box .contents dl dt:last-of-type:before {
    background-color: #A8D461; }
  .page_facility-adachi #about .about_main .about_box .contents .tb_facility tr:nth-child(2n-1) th:before {
    background-color: #58D5E8; }
  .page_facility-adachi #about .about_main .about_box .contents .tb_facility tr:nth-child(2n) th:before {
    background-color: #A8D461; }
  .page_facility-adachi #about .about_main .about_box.access .contents dl dd span:before {
    background-image: url("/resource/images/facility-adachi/arrow_rout.svg"); }

.page_facility-adachi .bg_para1 {
  background-color: #58D5E8; }

.page_facility-adachi .bg_para2 {
  background-color: #A8D461; }

/**
* 6.5.2 - Ayase
* -----------------------------------------------------------------------------
*/
.page_facility-ayase .mainvisual {
  background-image: url("/resource/images/facility-ayase/mainvisual.jpg"); }

.page_facility-ayase .facility_top .facility_title {
  background-color: #88B666; }

.page_facility-ayase .facility_top .inner .catch_wrap .title {
  color: #88B666; }

.page_facility-ayase .facility_top .inner .circle1 {
  border-color: #F2B772; }

.page_facility-ayase .facility_top .inner .circle2 {
  background-color: #A8D461; }

.page_facility-ayase .facility_top .inner .circle3 {
  background-color: #F2B772; }

.page_facility-ayase .facility_top .inner .circle4 {
  border-color: #A8D461; }

.page_facility-ayase .facility_news {
  background-color: #F1F7E8; }
  .page_facility-ayase .facility_news .flex .blog h3:before {
    background-image: url("/resource/images/facility-ayase/icon_blog.svg"); }
  .page_facility-ayase .facility_news .flex .paper h3:before {
    background-image: url("/resource/images/facility-ayase/icon_paper.svg"); }
  .page_facility-ayase .facility_news .flex > div .flex .contents .sub {
    color: #88B666; }

.page_facility-ayase .facility_nav .flex li a:hover {
  background-color: #88B666; }

.page_facility-ayase .facility_main h3 {
  background-image: url("/resource/images/facility-ayase/bg_h3.png"); }

.page_facility-ayase .service_bottom .title {
  border-right: 1px solid #A8D461; }
  .page_facility-ayase .service_bottom .title span:after {
    background-color: #88B666; }

.page_facility-ayase .service_bottom .text table tr:nth-child(2n-1) th {
  color: #A8D461; }

.page_facility-ayase .service_bottom .text table tr:nth-child(2n) th {
  color: #F2B772; }

.page_facility-ayase .about_main {
  border-color: #EDE5DE; }
  .page_facility-ayase .about_main .about_box .contents dl dt:first-of-type:before {
    background-color: #A8D461; }
  .page_facility-ayase .about_main .about_box .contents dl dt:last-of-type:before {
    background-color: #F2B772; }
  .page_facility-ayase .about_main .about_box .contents .tb_facility tr:nth-child(2n-1) th:before {
    background-color: #A8D461; }
  .page_facility-ayase .about_main .about_box .contents .tb_facility tr:nth-child(2n) th:before {
    background-color: #F2B772; }
  .page_facility-ayase .about_main .about_box.access .contents dl dd span:before {
    background-image: url("/resource/images/facility-ayase/arrow_rout.svg"); }

.page_facility-ayase .bg_para1 {
  background-color: #A8D461; }

.page_facility-ayase .bg_para2 {
  background-color: #F2B772; }

/**
* 6.5.3 - Toneri
* -----------------------------------------------------------------------------
*/
.page_facility-toneri .mainvisual {
  background-image: url("/resource/images/facility-toneri/mainvisual.jpg"); }

.page_facility-toneri .facility_top .facility_title {
  background-color: #dcde30; }

.page_facility-toneri .facility_top .inner .catch_wrap .title {
  color: #dcde30; }

.page_facility-toneri .facility_top .inner .circle1 {
  border-color: #FF9076; }

.page_facility-toneri .facility_top .inner .circle2 {
  background-color: #dcde30; }

.page_facility-toneri .facility_top .inner .circle3 {
  background-color: #FF9076; }

.page_facility-toneri .facility_top .inner .circle4 {
  border-color: #dcde30; }

.page_facility-toneri .facility_news {
  background-color: #F9F4D9; }
  .page_facility-toneri .facility_news .flex .blog h3:before {
    background-image: url("/resource/images/facility-toneri/icon_blog.svg"); }
  .page_facility-toneri .facility_news .flex .paper h3:before {
    background-image: url("/resource/images/facility-toneri/icon_paper.svg"); }
  .page_facility-toneri .facility_news .flex > div .flex .contents .sub {
    color: #dcde30; }

.page_facility-toneri .facility_nav .flex li a:hover {
  background-color: #dcde30; }

.page_facility-toneri .facility_main h3 {
  background-image: url("/resource/images/facility-toneri/bg_h3.png"); }

.page_facility-toneri .service_bottom .title span:after {
  background-color: #dcde30; }

.page_facility-toneri .service_bottom .text table tr:nth-child(2n-1) th {
  color: #dcde30; }

.page_facility-toneri .service_bottom .text table tr:nth-child(2n) th {
  color: #FF9076; }

.page_facility-toneri .about_main {
  border-color: #F9F9F7; }
  .page_facility-toneri .about_main .about_box .contents dl dt:first-of-type:before {
    background-color: #A8D461; }
  .page_facility-toneri .about_main .about_box .contents dl dt:last-of-type:before {
    background-color: #F2B772; }
  .page_facility-toneri .about_main .about_box .contents .tb_facility tr:nth-child(2n-1) th:before {
    background-color: #dcde30; }
  .page_facility-toneri .about_main .about_box .contents .tb_facility tr:nth-child(2n) th:before {
    background-color: #F2B772; }
  .page_facility-toneri .about_main .about_box.access .contents dl dd span:before {
    background-image: url("/resource/images/facility-toneri/arrow_rout.svg"); }

.page_facility-toneri .bg_para1 {
  background-color: #dcde30; }

.page_facility-toneri .bg_para2 {
  background-color: #FF9076; }

/**
* 6.5.4 - takenotsuka
* -----------------------------------------------------------------------------
*/
.page_facility-takenotsuka .mainvisual {
  background-image: url("/resource/images/facility-takenotsuka/mainvisual.jpg"); }

.page_facility-takenotsuka .facility_top .facility_title {
  background-color: #79B680; }

.page_facility-takenotsuka .facility_top .inner .catch_wrap .title {
  color: #79B680; }

.page_facility-takenotsuka .facility_top .inner .circle1 {
  border-color: #F9E27D; }

.page_facility-takenotsuka .facility_top .inner .circle2 {
  background-color: #79BD80; }

.page_facility-takenotsuka .facility_top .inner .circle3 {
  background-color: #F9E27D; }

.page_facility-takenotsuka .facility_top .inner .circle4 {
  border-color: #79BD80; }

.page_facility-takenotsuka .facility_news {
  background-color: #DFEADF; }
  .page_facility-takenotsuka .facility_news .flex .blog h3:before {
    background-image: url("/resource/images/facility-takenotsuka/icon_blog.svg"); }
  .page_facility-takenotsuka .facility_news .flex .paper h3:before {
    background-image: url("/resource/images/facility-takenotsuka/icon_paper.svg"); }
  .page_facility-takenotsuka .facility_news .flex > div .flex .contents .sub {
    color: #79B680; }

.page_facility-takenotsuka .facility_nav .flex li a:hover {
  background-color: #79B680; }

.page_facility-takenotsuka .facility_main h3 {
  background-image: url("/resource/images/facility-takenotsuka/bg_h3.png"); }

.page_facility-takenotsuka .service_bottom .title {
  border-right: 1px solid #79B680; }
  .page_facility-takenotsuka .service_bottom .title span:after {
    background-color: #79B680; }

.page_facility-takenotsuka .service_bottom .text table tr:nth-child(2n-1) th {
  color: #79BD80; }

.page_facility-takenotsuka .service_bottom .text table tr:nth-child(2n) th {
  color: #F9E27D; }

.page_facility-takenotsuka .about_main {
  border-color: #F9F9F7; }
  .page_facility-takenotsuka .about_main .about_box .contents dl dt:first-of-type:before {
    background-color: #79BD80; }
  .page_facility-takenotsuka .about_main .about_box .contents dl dt:last-of-type:before {
    background-color: #F9E27D; }
  .page_facility-takenotsuka .about_main .about_box .contents .tb_facility tr:nth-child(2n-1) th:before {
    background-color: #79BD80; }
  .page_facility-takenotsuka .about_main .about_box .contents .tb_facility tr:nth-child(2n) th:before {
    background-color: #F9E27D; }
  .page_facility-takenotsuka .about_main .about_box.access .contents dl dd span:before {
    background-image: url("/resource/images/facility-takenotsuka/arrow_rout.svg"); }

.page_facility-takenotsuka #activity .box_facility {
  margin-bottom: 40px; }

.page_facility-takenotsuka .bg_para1 {
  background-color: #79BD80; }

.page_facility-takenotsuka .bg_para2 {
  background-color: #F9E27D; }

/**
* 6.5.5 - Shien
* -----------------------------------------------------------------------------
*/
.page_facility-shien .mainvisual {
  background-image: url("/resource/images/facility-shien/mainvisual.jpg"); }

.page_facility-shien .facility_top .facility_title {
  background-color: #F3998F; }

.page_facility-shien .facility_top .inner .catch_wrap .title {
  color: #F3998F; }

.page_facility-shien .facility_top .inner .circle1 {
  border-color: #92BCFF; }

.page_facility-shien .facility_top .inner .circle2 {
  background-color: #F59B91; }

.page_facility-shien .facility_top .inner .circle3 {
  background-color: #92BCFF; }

.page_facility-shien .facility_top .inner .circle4 {
  border-color: #F59B91; }

.page_facility-shien .facility_news {
  background-color: #F2E6E6; }
  .page_facility-shien .facility_news .flex .blog h3:before {
    background-image: url("/resource/images/facility-shien/icon_blog.svg"); }
  .page_facility-shien .facility_news .flex .paper h3:before {
    background-image: url("/resource/images/facility-shien/icon_paper.svg"); }
  .page_facility-shien .facility_news .flex > div .flex .contents .sub {
    color: #F3998F; }

.page_facility-shien .facility_nav .flex li a:hover {
  background-color: #F3998F; }

.page_facility-shien .facility_main h3 {
  background-image: url("/resource/images/facility-shien/bg_h3.png"); }

.page_facility-shien .service_bottom {
  padding-left: 30px; }
  .page_facility-shien .service_bottom .title {
    flex-basis: 182px;
    max-height: 182px; }
    .page_facility-shien .service_bottom .title span:after {
      background-color: #F3998F; }
    .page_facility-shien .service_bottom .title ul li:before {
      background-color: #F59B91; }
  .page_facility-shien .service_bottom .flex .title {
    border-right-width: 1px;
    border-right-style: solid; }
  .page_facility-shien .service_bottom .flex:nth-child(2n-1) .title {
    border-right-color: #F59B91; }
  .page_facility-shien .service_bottom .flex:nth-child(2n) .title {
    border-right-color: #92BCFF; }
  .page_facility-shien .service_bottom .flex .text table tr:nth-child(2n-1) th {
    color: #F59B91; }
  .page_facility-shien .service_bottom .flex .text table tr:nth-child(2n) th {
    color: #92BCFF; }
  .page_facility-shien .service_bottom .flex_shien:not(:last-child) {
    border-bottom: 1px solid #DCDCDB; }
  .page_facility-shien .service_bottom .flex_shien .title span {
    text-align: left;
    padding-left: 30px; }
    .page_facility-shien .service_bottom .flex_shien .title span:after {
      width: 10px;
      height: 10px;
      border-radius: 5px;
      left: 0;
      right: auto;
      bottom: unset;
      top: 50%;
      transform: translateY(-50%);
      display: block !important; }
    .page_facility-shien .service_bottom .flex_shien .title span:before {
      display: none !important; }
  .page_facility-shien .service_bottom .flex_shien:nth-child(2n-1) .title span:after {
    background-color: #F59B91; }
  .page_facility-shien .service_bottom .flex_shien:nth-child(2n) .title span:after {
    background-color: #92BCFF; }

.page_facility-shien .service_bottom2 {
  margin-bottom: 60px;
  font-size: 0.875rem; }

.page_facility-shien .service_bottom_support .title {
  flex-basis: 25%;
  max-width: 25%; }

.page_facility-shien .service_bottom_support .text {
  flex-basis: 75%;
  max-width: 75%;
  font-size: 0.875rem; }

.page_facility-shien .about_main {
  border-color: #F9F9F7; }
  .page_facility-shien .about_main .about_box .contents dl dt:first-of-type:before {
    background-color: #F59B91; }
  .page_facility-shien .about_main .about_box .contents dl dt:last-of-type:before {
    background-color: #92BCFF; }
  .page_facility-shien .about_main .about_box .contents .tb_facility tr:nth-child(2n-1) th:before {
    background-color: #F59B91; }
  .page_facility-shien .about_main .about_box .contents .tb_facility tr:nth-child(2n) th:before {
    background-color: #92BCFF; }
  .page_facility-shien .about_main .about_box.access .contents dl dd span:before {
    background-image: url("/resource/images/facility-shien/arrow_rout.svg"); }

.page_facility-shien .bg_para1 {
  background-color: #F59B91; }

.page_facility-shien .bg_para2 {
  background-color: #92BCFF; }

/**
* 6.5.6 - ooyata
* -----------------------------------------------------------------------------
*/
.page_facility-ooyata .mainvisual {
  background-image: url("/resource/images/facility-ooyata/mainvisual.jpg"); }

.page_facility-ooyata .facility_top .facility_title {
  background-color: #F3B56C; }

.page_facility-ooyata .facility_top .inner .catch_wrap .title {
  color: #F3B56C; }

.page_facility-ooyata .facility_top .inner .circle1 {
  border-color: #EA6CA0; }

.page_facility-ooyata .facility_top .inner .circle2 {
  background-color: #FABC6C; }

.page_facility-ooyata .facility_top .inner .circle3 {
  background-color: #EA6CA0; }

.page_facility-ooyata .facility_top .inner .circle4 {
  border-color: #FABC6C; }

.page_facility-ooyata .facility_news {
  background-color: #FCF4ED; }
  .page_facility-ooyata .facility_news .flex .blog h3:before {
    background-image: url("/resource/images/facility-ooyata/icon_blog.svg"); }
  .page_facility-ooyata .facility_news .flex .paper h3:before {
    background-image: url("/resource/images/facility-ooyata/icon_paper.svg"); }
  .page_facility-ooyata .facility_news .flex > div .flex .contents .sub {
    color: #F3B56C; }

.page_facility-ooyata .facility_nav .flex li a:hover {
  background-color: #F3B56C; }

.page_facility-ooyata .facility_main h3 {
  background-image: url("/resource/images/facility-ooyata/bg_h3.png"); }

.page_facility-ooyata .box_facility .flex .text .description .to_ooyata {
  background-color: #fff;
  border: 1px solid #30cfaf;
  border-radius: 10px;
  text-align: center;
  color: #30cfaf;
  font-weight: normal;
  line-height: 1.4;
  max-width: 342px;
  width: 100%;
  position: relative; }
  .page_facility-ooyata .box_facility .flex .text .description .to_ooyata:after {
    content: "";
    width: 11px;
    height: 8px;
    background-image: url("/resource/images/facility-ooyata/icon_external.svg");
    background-repeat: no-repeat;
    background-size: contain;
    position: absolute;
    right: 20px;
    top: 50%;
    transform: translateY(-50%); }

.page_facility-ooyata .service_bottom {
  background: none; }
  .page_facility-ooyata .service_bottom .title {
    background-color: #fff;
    border-radius: 20px; }
    .page_facility-ooyata .service_bottom .title span:after {
      display: none; }
  .page_facility-ooyata .service_bottom .text {
    background-color: #fff;
    border-radius: 20px;
    padding: 30px 30px; }
    .page_facility-ooyata .service_bottom .text table th {
      padding-left: 20px; }

.page_facility-ooyata .about_main {
  border-color: #F9F9F7; }
  .page_facility-ooyata .about_main .about_box .contents dl dt:first-of-type:before {
    background-color: #FABC6C; }
  .page_facility-ooyata .about_main .about_box .contents dl dt:last-of-type:before {
    background-color: #EA6CA0; }
  .page_facility-ooyata .about_main .about_box .contents .tb_facility tr:nth-child(2n-1) th:before {
    background-color: #FABC6C; }
  .page_facility-ooyata .about_main .about_box .contents .tb_facility tr:nth-child(2n) th:before {
    background-color: #EA6CA0; }
  .page_facility-ooyata .about_main .about_box .contents .tb_facility dl.detail {
    font-feature-settings: 'palt';
    margin-top: 0 !important; }
    .page_facility-ooyata .about_main .about_box .contents .tb_facility dl.detail dt {
      display: inline-block;
      margin-bottom: 0.2em !important;
      padding: .1em .3em;
      border: 1px solid #F3B56C;
      color: #F3B56C;
      font-size: 0.75rem; }
      .page_facility-ooyata .about_main .about_box .contents .tb_facility dl.detail dt::before {
        display: none !important; }
    .page_facility-ooyata .about_main .about_box .contents .tb_facility dl.detail dd {
      margin-bottom: 0.7em !important;
      line-height: 1.4;
      font-size: 0.8rem; }
  .page_facility-ooyata .about_main .about_box.access .contents dl dd span:before {
    background-image: url("/resource/images/facility-ooyata/arrow_rout.svg"); }

.page_facility-ooyata #activity .box_facility {
  margin-bottom: 40px; }

.page_facility-ooyata .bg_para1 {
  background-color: #FABC6C; }

.page_facility-ooyata .bg_para2 {
  background-color: #EA6CA0; }

/**
* 6.5.7 - Shinemi
* -----------------------------------------------------------------------------
*/
.page_facility-shinmei .mainvisual {
  background-image: url("/resource/images/facility-shinmei/mainvisual.jpg"); }

.page_facility-shinmei .facility_nav .flex li a:hover {
  background-color: #5296DC; }

.page_facility-shinmei .facility_main h3 {
  background-image: url("/resource/images/facility-shinmei/bg_h3.png"); }

.page_facility-shinmei .facility_top .facility_title {
  background-color: #5296DC; }

.page_facility-shinmei .facility_top .inner .catch_wrap .title {
  color: #5296DC; }

.page_facility-shinmei .facility_top .inner .catch_wrap .catch + p {
  margin-bottom: 0; }

.page_facility-shinmei .facility_top .inner .circle1 {
  border-color: #79BDBE; }

.page_facility-shinmei .facility_top .inner .circle2 {
  background-color: #5FAAE8; }

.page_facility-shinmei .facility_top .inner .circle3 {
  background-color: #79BDBE; }

.page_facility-shinmei .facility_top .inner .circle4 {
  border-color: #5FAAE8; }

.page_facility-shinmei .facility_news {
  background-color: #EBF2F7;
  border-bottom-width: 80px; }
  .page_facility-shinmei .facility_news .flex .blog h3:before {
    background-image: url("/resource/images/facility-shinmei/icon_blog.svg"); }
  .page_facility-shinmei .facility_news .flex .paper h3:before {
    background-image: url("/resource/images/facility-shinmei/icon_paper.svg"); }
  .page_facility-shinmei .facility_news .flex > div .flex .contents .sub {
    color: #5296DC; }

.page_facility-shinmei .box_facility h4 .sub {
  display: inline-block;
  background-color: #5296DC;
  color: #fff;
  padding: 2px 20px;
  border-radius: 10px;
  font-size: 1.22rem;
  margin-left: 10px; }

.page_facility-shinmei #about .about_main {
  border-color: #f0ece6; }
  .page_facility-shinmei #about .about_main .about_box.access .contents dl dd span:before {
    background-image: url("/resource/images/facility-shinmei/arrow_rout.svg"); }
  .page_facility-shinmei #about .about_main .about_box h4 {
    border-bottom: 1px solid #daeded;
    padding-bottom: 10px;
    margin-bottom: 40px; }
    .page_facility-shinmei #about .about_main .about_box h4 span {
      display: inline-block;
      padding: 5px 10px;
      font-size: 0.88rem;
      margin-right: 10px; }
  .page_facility-shinmei #about .about_main .about_box .tb_facility tr:nth-child(2n-1) th:before {
    background-color: #79bdbe; }
  .page_facility-shinmei #about .about_main .about_box .tb_facility tr:nth-child(2n) th:before {
    background-color: #5faae8; }
  .page_facility-shinmei #about .about_main .about_box .tb_facility tr td table {
    margin-bottom: 20px; }
    .page_facility-shinmei #about .about_main .about_box .tb_facility tr td table tr {
      border-bottom: 1px solid #dedddc; }
    .page_facility-shinmei #about .about_main .about_box .tb_facility tr td table th:before {
      display: inline-block !important;
      content: "" !important;
      width: 8px;
      height: 8px;
      border-radius: 4px;
      background-color: #d6d4d2 !important;
      vertical-align: middle;
      margin-right: .5em; }
    .page_facility-shinmei #about .about_main .about_box .tb_facility tr td table th, .page_facility-shinmei #about .about_main .about_box .tb_facility tr td table td {
      padding-top: 12px;
      padding-bottom: 12px; }
  .page_facility-shinmei #about .about_main .about_box dl.detail {
    font-feature-settings: 'palt';
    margin-top: 0 !important; }
    .page_facility-shinmei #about .about_main .about_box dl.detail dt {
      display: inline-block;
      margin-bottom: 0.2em !important;
      padding: .1em .3em;
      border: 1px solid #5296DC;
      color: #5296DC;
      font-size: 0.75rem; }
      .page_facility-shinmei #about .about_main .about_box dl.detail dt::before {
        display: none !important; }
    .page_facility-shinmei #about .about_main .about_box dl.detail dd {
      margin-bottom: 0.7em !important;
      line-height: 1.4;
      font-size: 0.8rem; }
  .page_facility-shinmei #about .about_main .onsite1 .contents h4 span,
  .page_facility-shinmei #about .about_main .onsite3 .contents h4 span {
    background-color: #daeded; }
  @media screen and (max-width: 897px) {
    .page_facility-shinmei #about .about_main .onsite2 .contents h4 {
      text-align: center; } }
  .page_facility-shinmei #about .about_main .onsite2 .contents h4 span {
    background-color: #d1e2f0; }

.page_facility-shinmei .bg_para1 {
  background-color: #79BDBE; }

.page_facility-shinmei .bg_para2 {
  background-color: #5FAAE8; }

/**
* 6.5.8 - 花畑あかしあ園
* -----------------------------------------------------------------------------
*/
.page_facility-hanahata .mainvisual {
  background-image: url("/resource/images/facility-hanahata/mainvisual.jpg"); }

.page_facility-hanahata .facility_top .facility_title {
  background-color: #eda1bf; }

.page_facility-hanahata .facility_top .inner .catch_wrap .title {
  color: #eda1bf; }

.page_facility-hanahata .facility_top .inner .circle1 {
  border-color: #CDC3E8; }

.page_facility-hanahata .facility_top .inner .circle2 {
  background-color: #eda1bf; }

.page_facility-hanahata .facility_top .inner .circle3 {
  background-color: #CDC3E8; }

.page_facility-hanahata .facility_top .inner .circle4 {
  border-color: #eda1bf; }

.page_facility-hanahata .facility_news {
  background-color: #F0EEF8; }
  .page_facility-hanahata .facility_news .flex .blog h3:before {
    background-image: url("/resource/images/facility-hanahata/icon_blog.svg"); }
  .page_facility-hanahata .facility_news .flex .paper h3:before {
    background-image: url("/resource/images/facility-hanahata/icon_paper.svg"); }
  .page_facility-hanahata .facility_news .flex > div .flex .contents .sub {
    color: #eda1bf; }

.page_facility-hanahata .facility_nav .flex li a:hover {
  background-color: #eda1bf; }

.page_facility-hanahata .facility_main h3 {
  background-image: url("/resource/images/facility-hanahata/bg_h3.png"); }

.page_facility-hanahata .service_bottom .title span:after {
  background-color: #eda1bf; }

.page_facility-hanahata .service_bottom .text table tr:nth-child(2n-1) th {
  color: #eda1bf; }

.page_facility-hanahata .service_bottom .text table tr:nth-child(2n) th {
  color: #CDC3E8; }

.page_facility-hanahata #about h3 {
  background-image: url("/resource/images/facility-hanahata/bg_h3_l.png"); }

.page_facility-hanahata #about .about_main {
  border-color: #F9F9F7;
  font-feature-settings: 'palt'; }
  .page_facility-hanahata #about .about_main .about_box .contents dl dt:first-of-type:before {
    background-color: #eda1bf; }
  .page_facility-hanahata #about .about_main .about_box .contents dl dt:last-of-type:before {
    background-color: #CDC3E8; }
  .page_facility-hanahata #about .about_main .about_box .contents .tb_facility tr:nth-child(2n-1) th:before {
    background-color: #eda1bf; }
  .page_facility-hanahata #about .about_main .about_box .contents .tb_facility tr:nth-child(2n) th:before {
    background-color: #CDC3E8; }
  .page_facility-hanahata #about .about_main .about_box.access .contents dl dd span:before {
    background-image: url("/resource/images/facility-hanahata/arrow_rout.svg"); }

.page_facility-hanahata .bg_para1 {
  background-color: #eda1bf; }

.page_facility-hanahata .bg_para2 {
  background-color: #CDC3E8; }

/* 6.6 - Service
* -----------------------------------------------------------------------------
*/
.page_service .mainvisual {
  background-image: url("/resource/images/service/mainvisual.jpg"); }
  .page_service .mainvisual h2 img {
    max-width: 292px; }
    @media screen and (max-width: 480px) {
      .page_service .mainvisual h2 img {
        margin-left: auto;
        margin-right: auto;
        max-width: 193px; } }
.nav_service_top {
  padding-top: 60px;
  padding-bottom: 50px; }
  @media screen and (max-width: 897px) {
    .nav_service_top {
      padding-top: 40px;
      padding-bottom: 30px; } }
  .nav_service_top .inner {
    max-width: calc(980px + 8vw); }
  .nav_service_top ul {
    flex-wrap: wrap; }
    .nav_service_top ul li {
      flex-basis: 24%;
      max-width: 24%;
      margin-bottom: 15px; }
      @media screen and (max-width: 480px) {
        .nav_service_top ul li {
          flex-basis: 48.8%;
          max-width: 48.8%;
          margin-bottom: 10px; } }
      .nav_service_top ul li a {
        background-color: #fff;
        display: block;
        padding: 15px;
        box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
        border-radius: 10px;
        font-weight: bold;
        text-align: center;
        position: relative;
        transition: 0.1s; }
        @media screen and (max-width: 897px) {
          .nav_service_top ul li a {
            font-size: 0.8125rem; } }
        .nav_service_top ul li a:before {
          content: "";
          width: 18px;
          height: 18px;
          position: absolute;
          top: 50%;
          transform: translateY(-50%);
          left: 20px;
          background-size: contain;
          background-repeat: no-repeat; }
          @media screen and (max-width: 897px) {
            .nav_service_top ul li a:before {
              width: 14px;
              height: 14px; } }
        .nav_service_top ul li a:hover {
          background-color: #dededd; }
          .nav_service_top ul li a:hover:before {
            display: none; }
          .nav_service_top ul li a:hover:after {
            opacity: 1; }
      .nav_service_top ul li .btn1 {
        width: 100%;
        margin-bottom: 0;
        font-size: 0.8125rem; }
      .nav_service_top ul li.current {
        color: #fff; }
        .nav_service_top ul li.current a:before {
          display: none; }
        .nav_service_top ul li.current a:after {
          display: none; }
      .nav_service_top ul li:nth-child(2n-1) a:before {
        background-image: url("/resource/images/common/icon_circle1.png"); }
      .nav_service_top ul li.current:nth-child(2n-1) a {
        background-color: #3bc8a7; }
      .nav_service_top ul li:nth-child(2n) a:before {
        background-image: url("/resource/images/common/icon_circle2.png"); }
      .nav_service_top ul li.current:nth-child(2n) a {
        background-color: #FA9EA5; }

#service_top {
  background-color: #fff;
  padding-top: 70px;
  padding-bottom: 80px; }
  @media screen and (max-width: 480px) {
    #service_top {
      padding-bottom: 40px; } }
  #service_top .inner {
    max-width: calc(1040px + 8vw); }
    #service_top .inner > img {
      max-width: 100%;
      margin-bottom: 20px; }
  #service_top .lg {
    font-size: 1.625rem;
    font-weight: bold;
    text-align: center;
    margin-bottom: 30px; }
  #service_top h3 {
    text-align: center;
    margin-bottom: 30px; }
    #service_top h3 img {
      max-width: 350px; }
  #service_top p {
    font-size: 1rem;
    text-align: center; }

#service_main {
  padding-bottom: 120px;
  padding-top: 30px; }
  @media screen and (max-width: 480px) {
    #service_main {
      padding-bottom: 40px; } }
  #service_main .inner {
    max-width: calc(1440px + 8vw); }
  #service_main h2 {
    position: relative;
    font-size: 2.1875rem;
    text-align: center;
    font-weight: bold;
    padding-top: 100px;
    margin-bottom: 80px; }
    @media screen and (max-width: 480px) {
      #service_main h2 {
        margin-bottom: 40px; } }
    #service_main h2 .fluffy {
      top: 50px; }
  #service_main .service_box {
    padding: 3rem 6%;
    background-color: #fff;
    border-radius: 30px;
    margin-bottom: 70px; }
    @media screen and (max-width: 480px) {
      #service_main .service_box {
        margin-bottom: 20px;
        padding-left: 6%;
        border-radius: 10px;
        padding-top: 20px; } }
    #service_main .service_box:nth-of-type(2n) .service_box_head .title {
      border-bottom-color: #fa9ea5; }
    #service_main .service_box .service_box_head .title {
      font-size: 1.55rem;
      font-weight: bold;
      margin-bottom: 20px;
      padding-bottom: 10px;
      border-bottom: 1px solid #30CFAF; }
      @media screen and (max-width: 480px) {
        #service_main .service_box .service_box_head .title {
          max-width: 100%; } }
    @media screen and (max-width: 480px) {
      #service_main .service_box .service_box_bottom {
        display: block; } }
    #service_main .service_box .service_box_bottom .text {
      flex-basis: 62.6%;
      max-width: 62.6%; }
      @media screen and (max-width: 480px) {
        #service_main .service_box .service_box_bottom .text {
          max-width: 100%;
          margin-bottom: 20px; } }
    #service_main .service_box .service_box_bottom .image {
      flex-basis: 31%;
      max-width: 31%; }
      @media screen and (max-width: 480px) {
        #service_main .service_box .service_box_bottom .image {
          max-width: 100%; } }
      #service_main .service_box .service_box_bottom .image img {
        width: 100%; }
  #service_main .service_box2 {
    border-color: #BFE3DD;
    padding-top: 60px; }
    #service_main .service_box2 .service_box_bottom .text {
      flex-basis: 48.3%;
      max-width: 48.3%; }
      @media screen and (max-width: 480px) {
        #service_main .service_box2 .service_box_bottom .text {
          max-width: 100%; } }
      #service_main .service_box2 .service_box_bottom .text .lg {
        font-size: 1.3125rem;
        font-weight: bold;
        margin-bottom: 20px; }
    #service_main .service_box2 .service_box_bottom .image {
      flex-basis: 48.4%;
      max-width: 48.4%; }
      @media screen and (max-width: 480px) {
        #service_main .service_box2 .service_box_bottom .image {
          max-width: 100%; } }
/* 6.7 - Service(Single)
* -----------------------------------------------------------------------------
*/
.page_service_single .mainvisual .page_title {
  text-align: center;
  margin-top: 10px; }
  .page_service_single .mainvisual .page_title span {
    background-color: #fff;
    border-radius: 10px;
    display: inline-block;
    font-weight: bold;
    padding: 7px 100px;
    font-size: 1.125rem; }

.page_service_single .service_single_top {
  background-color: #fff;
  padding-top: 50px;
  padding-bottom: 70px; }
  .page_service_single .service_single_top .lg {
    font-size: 1.333rem;
    line-height: 1.5;
    text-align: center;
    font-weight: bold;
    margin-bottom: 2.5rem; }
  .page_service_single .service_single_top p {
    max-width: 40em;
    margin-left: auto;
    margin-right: auto; }
    @media screen and (max-width: 480px) {
      .page_service_single .service_single_top p {
        font-size: 1.14rem; } }
.page_service_single #detail .detail_inner .detail_box .text .tb_service1 {
  margin-bottom: 7px; }
  .page_service_single #detail .detail_inner .detail_box .text .tb_service1 tr {
    border-bottom: 1px solid #f7f6f5; }
  .page_service_single #detail .detail_inner .detail_box .text .tb_service1 th, .page_service_single #detail .detail_inner .detail_box .text .tb_service1 td {
    padding-top: 7px;
    padding-bottom: 7px; }
  .page_service_single #detail .detail_inner .detail_box .text .tb_service1 th {
    color: #30cfaf;
    width: 1px;
    white-space: nowrap;
    font-weight: bold;
    padding-right: 20px; }

.page_service_single #detail .detail_inner .detail_box .text .tb_service2 {
  margin-bottom: 7px; }
  .page_service_single #detail .detail_inner .detail_box .text .tb_service2 th, .page_service_single #detail .detail_inner .detail_box .text .tb_service2 td {
    padding-top: 7px;
    padding-bottom: 7px; }
  .page_service_single #detail .detail_inner .detail_box .text .tb_service2 th {
    width: 1px;
    white-space: nowrap;
    font-weight: bold;
    padding-right: 20px;
    text-align: left; }

.page_service_single .torikumi_box .fluffy {
  position: relative;
  margin-left: 9%; }
  @media screen and (max-width: 897px) {
    .page_service_single .torikumi_box .fluffy {
      margin: 0 auto; } }
.page_service_single .torikumi_box .price_area {
  margin-top: 40px;
  padding-left: 4.95%; }
  .page_service_single .torikumi_box .price_area h4 {
    margin-bottom: 0.625rem;
    margin-top: 2.5rem; }
  @media screen and (max-width: 897px) {
    .page_service_single .torikumi_box .price_area {
      margin-top: 80px; } }
  .page_service_single .torikumi_box .price_area .table_container {
    -webkit-overflow-scrolling: auto; }
    @media screen and (max-width: 480px) {
      .page_service_single .torikumi_box .price_area .table_container {
        width: 100%;
        overflow: auto; } }
  .page_service_single .torikumi_box .price_area .table_container::-webkit-scrollbar {
    height: 5px;
    width: 100%; }
  .page_service_single .torikumi_box .price_area .table_container::-webkit-scrollbar-track {
    margin: 0 2px;
    background: #e8e8e8;
    border-radius: 5px; }
  .page_service_single .torikumi_box .price_area .table_container::-webkit-scrollbar-thumb {
    border-radius: 5px;
    background: #666; }
  @media screen and (max-width: 480px) {
    .page_service_single .torikumi_box .price_area table {
      white-space: nowrap; } }
  .page_service_single .torikumi_box .price_area table th, .page_service_single .torikumi_box .price_area table td {
    padding: 15px;
    font-size: 0.77rem;
    vertical-align: middle;
    line-height: 1.5;
    background-color: #fff;
    border: 1px solid #595652;
    text-align: center; }
  .page_service_single .torikumi_box .price_area table th {
    background-color: #e3e1de;
    text-align: center;
    width: 223px;
    white-space: nowrap; }

/* 6.7.1 - Life Care
* -----------------------------------------------------------------------------
*/
.page_service-lifecare .mainvisual {
  background-image: url("/resource/images/service-lifecare/mainvisual.jpg"); }

.page_lifecare #torikumi,
.page_service_single #torikumi {
  padding-top: 60px; }
  .page_lifecare #torikumi .inner,
  .page_service_single #torikumi .inner {
    max-width: calc(1280px + 8vw); }
    .page_lifecare #torikumi .inner .torikumi_box,
    .page_service_single #torikumi .inner .torikumi_box {
      margin-bottom: 69px;
      margin-top: 80px; }
      .page_lifecare #torikumi .inner .torikumi_box:not(:last-of-type),
      .page_service_single #torikumi .inner .torikumi_box:not(:last-of-type) {
        border-bottom: 3px solid #fff;
        padding-bottom: 60px; }
      @media screen and (max-width: 480px) {
        .page_lifecare #torikumi .inner .torikumi_box,
        .page_service_single #torikumi .inner .torikumi_box {
          margin-top: 30px; } }
      @media screen and (max-width: 897px) {
        .page_lifecare #torikumi .inner .torikumi_box > .flex,
        .page_service_single #torikumi .inner .torikumi_box > .flex {
          display: block; } }
      .page_lifecare #torikumi .inner .torikumi_box .contents,
      .page_service_single #torikumi .inner .torikumi_box .contents {
        flex-basis: 55%;
        max-width: 55%; }
        @media screen and (max-width: 897px) {
          .page_lifecare #torikumi .inner .torikumi_box .contents,
          .page_service_single #torikumi .inner .torikumi_box .contents {
            max-width: 100%; } }
        .page_lifecare #torikumi .inner .torikumi_box .contents .catch,
        .page_service_single #torikumi .inner .torikumi_box .contents .catch {
          margin-bottom: 2rem; }
          @media screen and (max-width: 897px) {
            .page_lifecare #torikumi .inner .torikumi_box .contents .catch,
            .page_service_single #torikumi .inner .torikumi_box .contents .catch {
              justify-content: center;
              margin-bottom: 40px;
              display: block; } }
          .page_lifecare #torikumi .inner .torikumi_box .contents .catch .badge,
          .page_service_single #torikumi .inner .torikumi_box .contents .catch .badge {
            flex-basis: 27.8%;
            max-width: 27.8%;
            text-align: center; }
            @media screen and (max-width: 480px) {
              .page_lifecare #torikumi .inner .torikumi_box .contents .catch .badge,
              .page_service_single #torikumi .inner .torikumi_box .contents .catch .badge {
                max-width: 100%; } }
            .page_lifecare #torikumi .inner .torikumi_box .contents .catch .badge img,
            .page_service_single #torikumi .inner .torikumi_box .contents .catch .badge img {
              width: 100%;
              max-width: 157px; }
          .page_lifecare #torikumi .inner .torikumi_box .contents .catch .text,
          .page_service_single #torikumi .inner .torikumi_box .contents .catch .text {
            flex-basis: 100%;
            max-width: 100%;
            font-size: 1.25rem;
            padding-left: 1.25rem; }
            @media screen and (max-width: 897px) {
              .page_lifecare #torikumi .inner .torikumi_box .contents .catch .text,
              .page_service_single #torikumi .inner .torikumi_box .contents .catch .text {
                max-width: 100%;
                padding-left: 0;
                text-align: center; } }
            .page_lifecare #torikumi .inner .torikumi_box .contents .catch .text .wrap,
            .page_service_single #torikumi .inner .torikumi_box .contents .catch .text .wrap {
              display: inline-block;
              height: 100%; }
            .page_lifecare #torikumi .inner .torikumi_box .contents .catch .text span,
            .page_service_single #torikumi .inner .torikumi_box .contents .catch .text span {
              display: block;
              text-align: center;
              position: relative;
              top: 50%;
              transform: translateY(-50%);
              font-weight: bold; }
              @media screen and (max-width: 897px) {
                .page_lifecare #torikumi .inner .torikumi_box .contents .catch .text span,
                .page_service_single #torikumi .inner .torikumi_box .contents .catch .text span {
                  top: 0;
                  transform: none;
                  font-size: 1.7rem;
                  line-height: 1.6;
                  margin-top: .8em;
                  max-width: 16em; } }
              @media screen and (max-width: 480px) {
                .page_lifecare #torikumi .inner .torikumi_box .contents .catch .text span,
                .page_service_single #torikumi .inner .torikumi_box .contents .catch .text span {
                  max-width: 12em;
                  text-align: left; } }
        .page_lifecare #torikumi .inner .torikumi_box .contents .contents_bottom,
        .page_service_single #torikumi .inner .torikumi_box .contents .contents_bottom {
          padding-left: 9%;
          line-height: 2; }
          @media screen and (max-width: 897px) {
            .page_lifecare #torikumi .inner .torikumi_box .contents .contents_bottom,
            .page_service_single #torikumi .inner .torikumi_box .contents .contents_bottom {
              padding-left: 0; } }
          @media screen and (max-width: 480px) {
            .page_lifecare #torikumi .inner .torikumi_box .contents .contents_bottom,
            .page_service_single #torikumi .inner .torikumi_box .contents .contents_bottom {
              padding-left: 0;
              padding-right: 0; } }
          @media screen and (max-width: 897px) {
            .page_lifecare #torikumi .inner .torikumi_box .contents .contents_bottom > .flex,
            .page_service_single #torikumi .inner .torikumi_box .contents .contents_bottom > .flex {
              margin-bottom: 40px; } }
          @media screen and (max-width: 897px) {
            .page_lifecare #torikumi .inner .torikumi_box .contents .contents_bottom > .flex > div,
            .page_service_single #torikumi .inner .torikumi_box .contents .contents_bottom > .flex > div {
              max-width: 70%;
              margin-left: auto;
              margin-right: auto; } }
          @media screen and (max-width: 480px) {
            .page_lifecare #torikumi .inner .torikumi_box .contents .contents_bottom > .flex > div,
            .page_service_single #torikumi .inner .torikumi_box .contents .contents_bottom > .flex > div {
              max-width: 100%; } }
          .page_lifecare #torikumi .inner .torikumi_box .contents .contents_bottom > .flex > div img,
          .page_service_single #torikumi .inner .torikumi_box .contents .contents_bottom > .flex > div img {
            width: 100%; }
          @media screen and (max-width: 897px) {
            .page_lifecare #torikumi .inner .torikumi_box .contents .contents_bottom p,
            .page_service_single #torikumi .inner .torikumi_box .contents .contents_bottom p {
              max-width: 460px;
              margin-left: auto;
              margin-right: auto; } }
          @media screen and (max-width: 480px) {
            .page_lifecare #torikumi .inner .torikumi_box .contents .contents_bottom p,
            .page_service_single #torikumi .inner .torikumi_box .contents .contents_bottom p {
              font-size: 1.14rem; } }
          @media screen and (max-width: 480px) {
            .page_lifecare #torikumi .inner .torikumi_box .contents .contents_bottom .thums,
            .page_service_single #torikumi .inner .torikumi_box .contents .contents_bottom .thums {
              display: block !important; } }
      .page_lifecare #torikumi .inner .torikumi_box .image,
      .page_service_single #torikumi .inner .torikumi_box .image {
        flex-basis: 40%;
        max-width: 40%;
        padding-top: 40px; }
        @media screen and (max-width: 897px) {
          .page_lifecare #torikumi .inner .torikumi_box .image,
          .page_service_single #torikumi .inner .torikumi_box .image {
            max-width: 100%; } }
        .page_lifecare #torikumi .inner .torikumi_box .image img,
        .page_service_single #torikumi .inner .torikumi_box .image img {
          width: 100%;
          margin-bottom: 10px; }
        @media screen and (max-width: 897px) {
          .page_lifecare #torikumi .inner .torikumi_box .image .tb_price,
          .page_service_single #torikumi .inner .torikumi_box .image .tb_price {
            margin-bottom: 40px;
            max-width: 70%;
            margin-left: auto;
            margin-right: auto; } }
        @media screen and (max-width: 480px) {
          .page_lifecare #torikumi .inner .torikumi_box .image .tb_price,
          .page_service_single #torikumi .inner .torikumi_box .image .tb_price {
            max-width: 100%; } }
        .page_lifecare #torikumi .inner .torikumi_box .image .tb_price th, .page_lifecare #torikumi .inner .torikumi_box .image .tb_price td,
        .page_service_single #torikumi .inner .torikumi_box .image .tb_price th,
        .page_service_single #torikumi .inner .torikumi_box .image .tb_price td {
          border: 1px solid #595652;
          padding: 15px;
          text-align: center; }
        .page_lifecare #torikumi .inner .torikumi_box .image .tb_price th,
        .page_service_single #torikumi .inner .torikumi_box .image .tb_price th {
          background-color: #e3e1de; }
        .page_lifecare #torikumi .inner .torikumi_box .image .tb_price td,
        .page_service_single #torikumi .inner .torikumi_box .image .tb_price td {
          background-color: #fff; }

.page_lifecare #detail,
.page_service_single #detail {
  padding-top: 80px;
  background-color: #fff; }
  .page_lifecare #detail .inner,
  .page_service_single #detail .inner {
    max-width: calc(1440px + 8vw); }
  .page_lifecare #detail .detail_inner,
  .page_service_single #detail .detail_inner {
    background-color: #F7F6F5;
    border-radius: 20px;
    padding-left: 3%;
    padding-right: 3%;
    padding-bottom: 30px; }
    .page_lifecare #detail .detail_inner h2,
    .page_service_single #detail .detail_inner h2 {
      font-size: 1.75rem; }
      .page_lifecare #detail .detail_inner h2 .fluffy,
      .page_service_single #detail .detail_inner h2 .fluffy {
        top: 40px; }
    .page_lifecare #detail .detail_inner .detail_box,
    .page_service_single #detail .detail_inner .detail_box {
      margin-bottom: 20px; }
      @media screen and (max-width: 480px) {
        .page_lifecare #detail .detail_inner .detail_box,
        .page_service_single #detail .detail_inner .detail_box {
          display: block; } }
      .page_lifecare #detail .detail_inner .detail_box > div,
      .page_service_single #detail .detail_inner .detail_box > div {
        background-color: #fff;
        border-radius: 20px; }
      .page_lifecare #detail .detail_inner .detail_box .title,
      .page_service_single #detail .detail_inner .detail_box .title {
        text-align: center;
        flex-basis: 29.23%;
        max-width: 29.23%;
        font-size: 1.1875rem;
        font-weight: bold; }
        @media screen and (max-width: 480px) {
          .page_lifecare #detail .detail_inner .detail_box .title,
          .page_service_single #detail .detail_inner .detail_box .title {
            max-width: 100%;
            border-bottom-left-radius: 0;
            border-bottom-right-radius: 0;
            margin-bottom: 5px; } }
        .page_lifecare #detail .detail_inner .detail_box .title span,
        .page_service_single #detail .detail_inner .detail_box .title span {
          display: block;
          position: relative;
          top: 50%;
          transform: translateY(-50%); }
          @media screen and (max-width: 480px) {
            .page_lifecare #detail .detail_inner .detail_box .title span,
            .page_service_single #detail .detail_inner .detail_box .title span {
              transform: none;
              padding-top: 20px;
              padding-bottom: 20px; } }
      .page_lifecare #detail .detail_inner .detail_box .text,
      .page_service_single #detail .detail_inner .detail_box .text {
        flex-basis: 68.8%;
        max-width: 68.8%;
        padding: 30px;
        font-size: 0.875rem; }
        @media screen and (max-width: 480px) {
          .page_lifecare #detail .detail_inner .detail_box .text,
          .page_service_single #detail .detail_inner .detail_box .text {
            max-width: 100%;
            border-top-left-radius: 0;
            border-top-right-radius: 0;
            font-size: 1rem; } }
        .page_lifecare #detail .detail_inner .detail_box .text ul li,
        .page_service_single #detail .detail_inner .detail_box .text ul li {
          text-indent: -1em;
          padding-left: 1em; }

.page_lifecare #apply,
.page_service_single #apply {
  background-color: #fff;
  padding-top: 100px;
  padding-bottom: 100px; }
  @media screen and (max-width: 897px) {
    .page_lifecare #apply,
    .page_service_single #apply {
      padding-top: 60px; } }
  .page_lifecare #apply .inner,
  .page_service_single #apply .inner {
    max-width: calc(1040px + 8vw); }
  .page_lifecare #apply .apply_inner,
  .page_service_single #apply .apply_inner {
    background-color: rgba(245, 243, 240, 0.8);
    border-radius: 30px;
    padding-left: 10%;
    padding-right: 10%;
    padding-bottom: 5%; }
    .page_lifecare #apply .apply_inner h2,
    .page_service_single #apply .apply_inner h2 {
      text-align: center;
      font-size: 1.2rem;
      font-weight: bold;
      padding: 1.25rem 0; }
      @media screen and (max-width: 897px) {
        .page_lifecare #apply .apply_inner h2,
        .page_service_single #apply .apply_inner h2 {
          padding: 20px 0; } }
    @media screen and (max-width: 480px) {
      .page_lifecare #apply .apply_inner,
      .page_service_single #apply .apply_inner {
        padding-left: 3%;
        padding-right: 3%;
        padding-bottom: 5%; } }
  .page_lifecare #apply .apply_box,
  .page_service_single #apply .apply_box {
    background-color: #fff;
    border-radius: 20px;
    overflow: hidden; }
    @media screen and (max-width: 480px) {
      .page_lifecare #apply .apply_box,
      .page_service_single #apply .apply_box {
        border-radius: 10px; } }
    .page_lifecare #apply .apply_box:not(:last-child),
    .page_service_single #apply .apply_box:not(:last-child) {
      margin-bottom: 20px; }
      @media screen and (max-width: 480px) {
        .page_lifecare #apply .apply_box:not(:last-child),
        .page_service_single #apply .apply_box:not(:last-child) {
          margin-bottom: 5px; } }
    .page_lifecare #apply .apply_box .flex_l,
    .page_service_single #apply .apply_box .flex_l {
      flex: 1;
      padding: 0.9375rem; }
      @media screen and (max-width: 480px) {
        .page_lifecare #apply .apply_box .flex_l,
        .page_service_single #apply .apply_box .flex_l {
          padding-left: 10px;
          padding-right: 10px; } }
    .page_lifecare #apply .apply_box .flex_r,
    .page_service_single #apply .apply_box .flex_r {
      flex-basis: 47px;
      max-width: 47px; }
      @media screen and (max-width: 480px) {
        .page_lifecare #apply .apply_box .flex_r,
        .page_service_single #apply .apply_box .flex_r {
          flex-basis: 20px;
          max-width: 20px; } }
      .page_lifecare #apply .apply_box .flex_r .arrow,
      .page_service_single #apply .apply_box .flex_r .arrow {
        height: 100%; }
        .page_lifecare #apply .apply_box .flex_r .arrow a,
        .page_service_single #apply .apply_box .flex_r .arrow a {
          display: block;
          width: 100%;
          height: 100%; }
        .page_lifecare #apply .apply_box .flex_r .arrow img,
        .page_service_single #apply .apply_box .flex_r .arrow img {
          width: 14px;
          position: relative;
          margin-left: auto;
          margin-right: auto;
          display: block;
          top: 50%;
          transform: translateY(-50%); }
    .page_lifecare #apply .apply_box h3,
    .page_service_single #apply .apply_box h3 {
      font-size: 1rem;
      font-weight: bold;
      margin-bottom: 0.625rem;
      border-bottom-width: 1px;
      border-bottom-style: solid;
      line-height: 1;
      padding-bottom: 0.125rem; }
      @media screen and (max-width: 897px) {
        .page_lifecare #apply .apply_box h3,
        .page_service_single #apply .apply_box h3 {
          font-size: 1rem;
          margin-bottom: 10px; } }
      .page_lifecare #apply .apply_box h3 span,
      .page_service_single #apply .apply_box h3 span {
        color: #fff;
        font-size: 0.75rem;
        display: inline-block;
        padding: 0.3125em 0.8rem;
        border-radius: 5px;
        margin-right: 20px;
        margin-bottom: 5px;
        vertical-align: middle; }
        @media screen and (max-width: 897px) {
          .page_lifecare #apply .apply_box h3 span,
          .page_service_single #apply .apply_box h3 span {
            font-size: 0.6875rem; } }
        @media screen and (max-width: 480px) {
          .page_lifecare #apply .apply_box h3 span,
          .page_service_single #apply .apply_box h3 span {
            font-size: 10px;
            margin-right: 5px;
            margin-bottom: 2px; } }
    .page_lifecare #apply .apply_box .flex .thum,
    .page_service_single #apply .apply_box .flex .thum {
      flex-basis: 20%;
      max-width: 20%; }
      @media screen and (max-width: 897px) {
        .page_lifecare #apply .apply_box .flex .thum,
        .page_service_single #apply .apply_box .flex .thum {
          flex-basis: 20.62%;
          max-width: 20.62%; } }
      .page_lifecare #apply .apply_box .flex .thum img,
      .page_service_single #apply .apply_box .flex .thum img {
        width: 100%;
        border-radius: 12px; }
        @media screen and (max-width: 897px) {
          .page_lifecare #apply .apply_box .flex .thum img,
          .page_service_single #apply .apply_box .flex .thum img {
            border-radius: calc(2px + 1.3vw); } }
    .page_lifecare #apply .apply_box .flex .contents,
    .page_service_single #apply .apply_box .flex .contents {
      flex: 1;
      padding-left: 30px; }
      @media screen and (max-width: 897px) {
        .page_lifecare #apply .apply_box .flex .contents,
        .page_service_single #apply .apply_box .flex .contents {
          padding-left: 10px; } }
      .page_lifecare #apply .apply_box .flex .contents table tr,
      .page_service_single #apply .apply_box .flex .contents table tr {
        border-bottom: 1px solid #F9F9F7; }
      .page_lifecare #apply .apply_box .flex .contents table th, .page_lifecare #apply .apply_box .flex .contents table td,
      .page_service_single #apply .apply_box .flex .contents table th,
      .page_service_single #apply .apply_box .flex .contents table td {
        padding-top: 0.6rem;
        padding-bottom: 0.6rem;
        letter-spacing: 0.03em;
        line-height: 1;
        font-size: 14px; }
        @media screen and (max-width: 897px) {
          .page_lifecare #apply .apply_box .flex .contents table th, .page_lifecare #apply .apply_box .flex .contents table td,
          .page_service_single #apply .apply_box .flex .contents table th,
          .page_service_single #apply .apply_box .flex .contents table td {
            font-size: 0.75rem;
            padding-top: 3px;
            padding-bottom: 3px; } }
      .page_lifecare #apply .apply_box .flex .contents table th,
      .page_service_single #apply .apply_box .flex .contents table th {
        text-align: left;
        font-weight: bold;
        white-space: nowrap;
        width: 1px;
        padding-right: 20px; }
        @media screen and (max-width: 897px) {
          .page_lifecare #apply .apply_box .flex .contents table th,
          .page_service_single #apply .apply_box .flex .contents table th {
            padding-right: 5px; } }
        .page_lifecare #apply .apply_box .flex .contents table th span,
        .page_service_single #apply .apply_box .flex .contents table th span {
          border-right: 1px solid #F9F9F7;
          display: block;
          padding-left: 10px;
          padding-right: 20px;
          text-align: justify;
          text-justify: inter-ideograph;
          text-align-last: justify; }
          @media screen and (max-width: 480px) {
            .page_lifecare #apply .apply_box .flex .contents table th span,
            .page_service_single #apply .apply_box .flex .contents table th span {
              padding-left: 0.5em;
              padding-right: 1em; } }
/* 6.7.2 - Entrance
* -----------------------------------------------------------------------------
*/
.page_service-entrance .mainvisual {
  background-image: url("/resource/images/service-entrance/mainvisual.jpg"); }

.page_service-entrance .price_grouphome h4 {
  margin-bottom: 10px; }

@media screen and (max-width: 897px) {
  .page_service-entrance .price_grouphome {
    margin-top: 80px; } }

.page_service-entrance .price_grouphome .table_container {
  -webkit-overflow-scrolling: auto; }
  @media screen and (max-width: 480px) {
    .page_service-entrance .price_grouphome .table_container {
      width: 100%;
      overflow: auto; } }
.page_service-entrance .price_grouphome .table_container::-webkit-scrollbar {
  height: 5px;
  width: 100%; }

.page_service-entrance .price_grouphome .table_container::-webkit-scrollbar-track {
  margin: 0 2px;
  background: #e8e8e8;
  border-radius: 5px; }

.page_service-entrance .price_grouphome .table_container::-webkit-scrollbar-thumb {
  border-radius: 5px;
  background: #666; }

.page_service-entrance .price_grouphome table {
  border: 1px solid #595652; }
  @media screen and (max-width: 480px) {
    .page_service-entrance .price_grouphome table {
      white-space: nowrap; } }
  .page_service-entrance .price_grouphome table thead th {
    background-color: #e3e1de;
    border-bottom: 1px solid #595652; }
    .page_service-entrance .price_grouphome table thead th:first-child {
      text-align: left; }
  .page_service-entrance .price_grouphome table thead th, .page_service-entrance .price_grouphome table thead td {
    border-top: 1px solid #595652; }
  .page_service-entrance .price_grouphome table th, .page_service-entrance .price_grouphome table td {
    padding: 15px;
    font-size: 0.77rem;
    vertical-align: middle;
    line-height: 1.5;
    background-color: #fff;
    width: 20%; }
  .page_service-entrance .price_grouphome table th {
    border-right: 1px solid #595652; }
  .page_service-entrance .price_grouphome table td {
    border: 1px solid #e0dcd7;
    text-align: center; }
  .page_service-entrance .price_grouphome table tbody th {
    text-align: left;
    border-bottom: 1px solid #e0dcd7; }
  .page_service-entrance .price_grouphome table tbody tr td:last-child {
    border-right: 1px solid #595652; }
  .page_service-entrance .price_grouphome table tbody tr:last-child th, .page_service-entrance .price_grouphome table tbody tr:last-child td {
    border-bottom: 1px solid #595652; }

/* 6.7.3 - Work
* -----------------------------------------------------------------------------
*/
.page_service-work .mainvisual {
  background-image: url("/resource/images/service-work/mainvisual.jpg"); }

.page_service-work #detail .detail_inner .detail_box .text h3 {
  border-bottom-style: solid;
  border-bottom-width: 1px;
  font-weight: bold;
  font-size: 1rem;
  margin-bottom: 10px;
  margin-top: 20px; }
  .page_service-work #detail .detail_inner .detail_box .text h3:nth-of-type(2n-1) {
    border-bottom-color: #30cfaf; }
  .page_service-work #detail .detail_inner .detail_box .text h3:nth-of-type(2n) {
    border-bottom-color: #fa9ea5; }

/* 6.7.3.1 - benefit
* -----------------------------------------------------------------------------
*/
.page_service-benefit .mainvisual {
  background-image: url("/resource/images/service-benefit/mainvisual.jpg"); }

/* 6.7.4 - Home
* -----------------------------------------------------------------------------
*/
.page_service-home .mainvisual {
  background-image: url("/resource/images/service-home/mainvisual.jpg"); }

/* 6.7.5 - Consulting
* -----------------------------------------------------------------------------
*/
.page_service-consulting .mainvisual {
  background-image: url("/resource/images/service-consulting/mainvisual.jpg"); }

/* 6.7.6 - Region
* -----------------------------------------------------------------------------
*/
.page_service-region .mainvisual {
  background-image: url("/resource/images/service-region/mainvisual.jpg"); }

/* 6.8 - Activity
* -----------------------------------------------------------------------------
*/
.page_activity .mainvisual {
  background-image: url("/resource/images/activity/mainvisual.jpg"); }
  .page_activity .mainvisual h2 img {
    max-width: 292px; }

.page_activity #service_main {
  padding-bottom: 50px; }

.page_activity #volunteer {
  background-image: url("/resource/images/activity/bg_volunteer.jpg");
  background-size: cover;
  background-position: bottom;
  padding-top: 40px;
  padding-left: 20px;
  padding-right: 20px;
  padding-bottom: 155px; }
  .page_activity #volunteer h2 {
    position: relative;
    margin-bottom: 69px; }
    .page_activity #volunteer h2 p {
      position: absolute;
      left: 0;
      right: 0;
      text-align: center;
      top: 50%;
      transform: translateY(-50%);
      font-size: 1.22rem;
      line-height: 1.2; }
      .page_activity #volunteer h2 p span {
        font-size: 0.94rem;
        display: block; }
    .page_activity #volunteer h2 .fluffy {
      width: 180px;
      height: 180px;
      position: relative;
      transition: 0.2s; }
      .page_activity #volunteer h2 .fluffy > div {
        width: 170px;
        height: 170px; }
      .page_activity #volunteer h2 .fluffy .circle-1 {
        width: 180px;
        height: 180px; }
      .page_activity #volunteer h2 .fluffy .circle-2 {
        margin-top: -8px; }
      .page_activity #volunteer h2 .fluffy .circle-3 {
        margin-top: 10px; }
      .page_activity #volunteer h2 .fluffy .white {
        width: 155px;
        height: 155px;
        top: 10px; }
  .page_activity #volunteer .volunteer_inner {
    background-color: #fff;
    padding: 40px 8%;
    border-radius: 20px;
    max-width: 905px;
    margin-left: auto;
    margin-right: auto;
    position: relative; }
    .page_activity #volunteer .volunteer_inner .lg {
      font-size: 1.61rem;
      text-align: center;
      line-height: 1.3;
      margin-bottom: 20px;
      font-weight: bold; }
    .page_activity #volunteer .volunteer_inner .btn2 {
      max-width: 320px; }
      .page_activity #volunteer .volunteer_inner .btn2:hover {
        color: #fff; }
        .page_activity #volunteer .volunteer_inner .btn2:hover:before {
          background-image: url("/resource/images/home/arrow6.svg"); }
      .page_activity #volunteer .volunteer_inner .btn2:before {
        background-image: url("/resource/images/home/arrow5.svg"); }
      .page_activity #volunteer .volunteer_inner .btn2:after {
        background-color: #fa9ea5; }
    .page_activity #volunteer .volunteer_inner .thum1,
    .page_activity #volunteer .volunteer_inner .thum2 {
      position: absolute; }
    .page_activity #volunteer .volunteer_inner .thum1 {
      top: -170px;
      right: -80px;
      width: 305px; }
      @media screen and (max-width: 897px) {
        .page_activity #volunteer .volunteer_inner .thum1 {
          right: -40px;
          width: 230px; } }
      @media screen and (max-width: 480px) {
        .page_activity #volunteer .volunteer_inner .thum1 {
          right: 0;
          width: 100px;
          top: -60px; } }
    .page_activity #volunteer .volunteer_inner .thum2 {
      bottom: -60px;
      left: -50px;
      width: 210px; }
      @media screen and (max-width: 897px) {
        .page_activity #volunteer .volunteer_inner .thum2 {
          width: 160px; } }
      @media screen and (max-width: 480px) {
        .page_activity #volunteer .volunteer_inner .thum2 {
          width: 100px;
          left: -20px; } }
.page_activity #foran {
  background-color: #f7f0e1;
  padding-top: 100px;
  padding-bottom: 90px; }
  @media screen and (max-width: 480px) {
    .page_activity #foran {
      padding-top: 20px; } }
  .page_activity #foran .inner {
    max-width: calc(1152px + 8vw); }
    .page_activity #foran .inner h2 {
      text-align: center; }
      .page_activity #foran .inner h2 span {
        background-color: #3a975a;
        color: #fff;
        display: inline-block;
        font-size: 1.5rem;
        border-radius: 10px;
        padding: 10px 30px; }
    .page_activity #foran .inner > .flex {
      margin-top: 55px; }
      @media screen and (max-width: 480px) {
        .page_activity #foran .inner > .flex {
          display: block; } }
      .page_activity #foran .inner > .flex > div {
        flex-basis: 43.6%;
        max-width: 43.6%; }
        @media screen and (max-width: 480px) {
          .page_activity #foran .inner > .flex > div {
            max-width: 100%; } }
        .page_activity #foran .inner > .flex > div .thum img {
          width: 100%; }
        .page_activity #foran .inner > .flex > div .title {
          font-size: 1.5rem;
          font-weight: bold;
          text-align: center;
          margin-bottom: 30px;
          min-height: 73px;
          line-height: 73px; }
          @media screen and (max-width: 480px) {
            .page_activity #foran .inner > .flex > div .title {
              min-height: auto;
              line-height: 1.5; } }
        @media screen and (max-width: 480px) {
          .page_activity #foran .inner > .flex > div:first-child {
            margin-bottom: 40px; } }
        .page_activity #foran .inner > .flex > div:first-child .title:before {
          content: "";
          width: 66px;
          height: 73px;
          background-image: url("/resource/images/activity/logo_foran.png");
          background-repeat: no-repeat;
          background-size: contain;
          display: inline-block;
          vertical-align: bottom;
          margin-right: 5px; }
        .page_activity #foran .inner > .flex > div .text {
          min-height: 110px; }
          @media screen and (max-width: 480px) {
            .page_activity #foran .inner > .flex > div .text {
              min-height: auto; } }
        .page_activity #foran .inner > .flex > div .link {
          text-align: center;
          max-width: 300px;
          margin-left: auto;
          margin-right: auto;
          border-bottom: 2px solid #000; }
          @media screen and (max-width: 480px) {
            .page_activity #foran .inner > .flex > div .link {
              margin-top: 40px; } }
          .page_activity #foran .inner > .flex > div .link a {
            font-weight: bold;
            font-size: 1.16rem; }
  .page_activity #foran .foran_inner {
    background-color: #fff;
    padding: 50px 10.8% 70px 10.8%;
    position: relative; }
    .page_activity #foran .foran_inner h2 {
      text-align: center;
      font-size: 2.1875rem;
      color: #fff;
      font-weight: bold;
      background-color: #3A975A;
      padding: 16px 10px;
      max-width: 603px;
      width: 100%;
      border-radius: 26px;
      display: block;
      margin-left: auto;
      margin-right: auto;
      margin-top: -80px;
      margin-bottom: 50px; }
    .page_activity #foran .foran_inner .clip_foran {
      max-width: 163px;
      bottom: 20px;
      position: absolute; }
    .page_activity #foran .foran_inner .clipforan1 {
      left: 20px; }
    .page_activity #foran .foran_inner .clipforan2 {
      right: 20px; }
  .page_activity #foran .foran_box:first-of-type {
    margin-bottom: 50px; }
  .page_activity #foran .foran_box .text {
    flex-basis: 43.6%;
    max-width: 43.6%; }
    .page_activity #foran .foran_box .text .lg {
      font-size: 1.6875rem;
      margin-bottom: 20px;
      font-weight: bold; }
  .page_activity #foran .foran_box .image {
    flex-basis: 48.9%;
    max-width: 48.9%; }
    .page_activity #foran .foran_box .image img {
      width: 100%; }
  .page_activity #foran .buttons {
    background-color: #F7F6F5;
    border-radius: 20px;
    padding: 40px 20px;
    margin-top: 40px; }
    .page_activity #foran .buttons .flex {
      justify-content: center; }
      .page_activity #foran .buttons .flex > div {
        flex-basis: 35.6%;
        max-width: 35.6%;
        margin: 0 15px; }
        .page_activity #foran .buttons .flex > div a {
          background-color: #3A975A;
          color: #fff;
          text-align: center;
          padding: 15px;
          display: block;
          border-radius: 20px;
          font-size: 1.625rem;
          position: relative; }
          .page_activity #foran .buttons .flex > div a:after {
            content: "";
            width: 17px;
            height: 11px;
            background-image: url("/resource/images/activity/arrow2.svg");
            background-repeat: no-repeat;
            background-size: contain;
            position: absolute;
            top: 50%;
            transform: translateY(-50%);
            right: 20px; }

.page_activity #event {
  padding-top: 80px; }
  @media screen and (max-width: 480px) {
    .page_activity #event {
      padding-top: 20px; } }
  @media screen and (max-width: 480px) {
    .page_activity #event h2 {
      margin-bottom: 130px; } }
  .page_activity #event .event_box_wrap {
    max-width: 1040px;
    margin-right: auto;
    margin-left: auto;
    flex-wrap: wrap;
    margin-top: 100px; }
    @media screen and (max-width: 480px) {
      .page_activity #event .event_box_wrap {
        display: block; } }
  .page_activity #event .event_box {
    background-color: #fff;
    border-radius: 20px;
    padding: 5% 4% 3% 4%;
    flex-basis: 47%;
    max-width: 47%;
    margin-bottom: 130px; }
    @media screen and (max-width: 480px) {
      .page_activity #event .event_box {
        max-width: 100%; } }
    @media screen and (max-width: 480px) {
      .page_activity #event .event_box:last-child {
        margin-bottom: 40px; } }
    .page_activity #event .event_box h3 {
      text-align: center;
      margin-top: -120px; }
      .page_activity #event .event_box h3 img {
        max-width: 137px; }
    .page_activity #event .event_box h4 {
      font-size: 1.5rem;
      text-align: center;
      font-weight: bold;
      margin-top: 20px;
      margin-bottom: 20px; }
    .page_activity #event .event_box p {
      font-size: 0.875rem;
      margin-bottom: 30px;
      margin-top: 20px; }
    .page_activity #event .event_box .thum img {
      width: 100%; }

/* 6.12 - Topics & Blog
* -----------------------------------------------------------------------------
*/
.page_topics,
.page_blog {
  /* sidebar */ }
  .page_topics .mainvisual,
  .page_blog .mainvisual {
    background-image: url("/resource/images/topics/mainvisual.jpg"); }
    .page_topics .mainvisual h2 img,
    .page_blog .mainvisual h2 img {
      max-width: 292px; }
  .page_topics .topics_inner,
  .page_blog .topics_inner {
    max-width: calc(1440px + 8vw);
    padding-top: 90px;
    padding-bottom: 100px; }
    @media screen and (max-width: 480px) {
      .page_topics .topics_inner > .flex,
      .page_blog .topics_inner > .flex {
        display: block; } }
  .page_topics main,
  .page_blog main {
    flex-basis: 75%;
    max-width: 75%; }
    @media screen and (max-width: 480px) {
      .page_topics main,
      .page_blog main {
        max-width: 100%; } }
  .page_topics aside,
  .page_blog aside {
    flex-basis: 20.5%;
    max-width: 20.5%; }
    @media screen and (max-width: 897px) {
      .page_topics aside,
      .page_blog aside {
        flex-basis: 25%;
        max-width: 25%; } }
    @media screen and (max-width: 480px) {
      .page_topics aside,
      .page_blog aside {
        max-width: 100%; } }
  .page_topics .topics_box,
  .page_blog .topics_box {
    background-color: #fff;
    border-radius: 5px;
    overflow: hidden;
    margin-bottom: 20px;
    position: relative;
    transition: all .3s; }
    @media screen and (max-width: 897px) {
      .page_topics .topics_box,
      .page_blog .topics_box {
        margin-right: 20px; } }
    @media screen and (max-width: 480px) {
      .page_topics .topics_box,
      .page_blog .topics_box {
        margin-right: 0; } }
    .page_topics .topics_box:after,
    .page_blog .topics_box:after {
      content: "";
      width: 21px;
      height: 13px;
      background-image: url("/resource/images/topics/arrow1.svg");
      background-repeat: no-repeat;
      background-size: contain;
      right: 25px;
      top: 50%;
      transform: translateY(-50%);
      position: absolute; }
      @media screen and (max-width: 897px) {
        .page_topics .topics_box:after,
        .page_blog .topics_box:after {
          right: 10px; } }
    .page_topics .topics_box:hover,
    .page_blog .topics_box:hover {
      box-shadow: 0 15px 30px -5px rgba(0, 0, 0, 0.1), 0 0 5px rgba(0, 0, 0, 0.08);
      transform: translateY(-2px); }
  .page_topics .topics_head,
  .page_topics .topics_content,
  .page_blog .topics_head,
  .page_blog .topics_content {
    font-weight: normal;
    font-feature-settings: "palt";
    line-height: 1.2; }
    .page_topics .topics_head > div:first-child,
    .page_topics .topics_content > div:first-child,
    .page_blog .topics_head > div:first-child,
    .page_blog .topics_content > div:first-child {
      flex-basis: 12rem;
      max-width: 12rem; }
    .page_topics .topics_head > div:last-child,
    .page_topics .topics_content > div:last-child,
    .page_blog .topics_head > div:last-child,
    .page_blog .topics_content > div:last-child {
      flex: 1;
      padding-right: 40px; }
  .page_topics .topics_head > div,
  .page_blog .topics_head > div {
    padding: .3rem .5rem; }
  .page_topics .topics_head .facility,
  .page_blog .topics_head .facility {
    color: #fff;
    font-size: 0.75rem;
    text-align: center;
    white-space: nowrap; }
  .page_topics .topics_head .cat,
  .page_blog .topics_head .cat {
    font-size: 0.75rem; }
  @media screen and (max-width: 480px) {
    .page_topics .topics_content,
    .page_blog .topics_content {
      display: block; } }
  .page_topics .topics_content > div,
  .page_blog .topics_content > div {
    padding: 1.2rem; }
    @media screen and (max-width: 480px) {
      .page_topics .topics_content > div,
      .page_blog .topics_content > div {
        padding: .5rem 0 0 1rem; } }
  .page_topics .topics_content .date,
  .page_blog .topics_content .date {
    text-align: center;
    font-size: .812rem; }
    @media screen and (max-width: 480px) {
      .page_topics .topics_content .date,
      .page_blog .topics_content .date {
        text-align: left;
        padding-bottom: 0; } }
  .page_topics .topics_content .title,
  .page_blog .topics_content .title {
    font-size: .88rem;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap; }
    @media screen and (max-width: 897px) {
      .page_topics .topics_content .title,
      .page_blog .topics_content .title {
        font-size: .85rem; } }
    @media screen and (max-width: 480px) {
      .page_topics .topics_content .title,
      .page_blog .topics_content .title {
        font-size: 1rem;
        padding: .1rem 1rem 1rem 1rem; } }
  .page_topics .pager,
  .page_blog .pager {
    text-align: center;
    margin-top: 50px; }
    @media screen and (max-width: 480px) {
      .page_topics .pager,
      .page_blog .pager {
        margin-bottom: 50px; } }
    .page_topics .pager a, .page_topics .pager span,
    .page_blog .pager a,
    .page_blog .pager span {
      font-size: 1.3125rem;
      display: inline-block;
      width: 30px;
      height: 30px;
      text-align: center;
      line-height: 30px;
      margin-left: 10px;
      margin-right: 10px;
      border: none !important;
      padding: 0; }
    .page_topics .pager .previouspostslink,
    .page_topics .pager .nextpostslink,
    .page_blog .pager .previouspostslink,
    .page_blog .pager .nextpostslink {
      background-color: rgba(89, 86, 82, 0.1); }
  .page_topics .sidebar_box,
  .page_blog .sidebar_box {
    margin-bottom: 20px; }
    .page_topics .sidebar_box h3,
    .page_blog .sidebar_box h3 {
      text-align: left;
      font-size: 16px;
      border-bottom: 1px dashed #D1D0CF;
      font-weight: bold;
      padding: .5rem .5rem .2rem .3rem;
      margin-bottom: .6rem; }
    .page_topics .sidebar_box ul,
    .page_blog .sidebar_box ul {
      padding-left: 10px; }
      .page_topics .sidebar_box ul li,
      .page_blog .sidebar_box ul li {
        line-height: 1; }
        .page_topics .sidebar_box ul li a,
        .page_blog .sidebar_box ul li a {
          font-size: 13px;
          border-radius: 3px;
          font-weight: normal;
          transition: color .05s linear;
          cursor: pointer;
          display: inline-block;
          width: calc( 100% - 12px);
          padding: .45rem .5em;
          line-height: 1; }
          @media screen and (max-width: 897px) {
            .page_topics .sidebar_box ul li a,
            .page_blog .sidebar_box ul li a {
              font-size: 0.8rem; } }
          .page_topics .sidebar_box ul li a:hover,
          .page_blog .sidebar_box ul li a:hover {
            color: #30CFAF;
            background-color: #F7F6F5; }
  .page_topics .sidearea1,
  .page_topics .sidearea2,
  .page_blog .sidearea1,
  .page_blog .sidearea2 {
    background-color: #fff;
    background-color: #fff;
    border-radius: calc(9px + 0.5rem);
    padding: 10%; }
    @media screen and (max-width: 897px) {
      .page_topics .sidearea1,
      .page_topics .sidearea2,
      .page_blog .sidearea1,
      .page_blog .sidearea2 {
        padding-left: 10px;
        padding-right: 10px; } }
  .page_topics .sidearea1,
  .page_blog .sidearea1 {
    margin-bottom: 30px; }
  .page_topics .sidebar_category ul li:before,
  .page_blog .sidebar_category ul li:before {
    content: "";
    width: 6px;
    height: 6px;
    vertical-align: middle;
    display: inline-block;
    border-radius: 3px;
    margin-right: 5px; }
  .page_topics .sidebar_category ul li:nth-child(2n-1):before,
  .page_blog .sidebar_category ul li:nth-child(2n-1):before {
    background-color: #30CFAF; }
  .page_topics .sidebar_category ul li:nth-child(2n):before,
  .page_blog .sidebar_category ul li:nth-child(2n):before {
    background-color: #FA9EA5; }
  .page_topics .sidebar_paper ul li:before,
  .page_blog .sidebar_paper ul li:before {
    width: 6px;
    height: 6px;
    display: inline-block;
    margin-right: 5px;
    vertical-align: middle;
    content: ""; }
  .page_topics .sidebar_paper ul li.cat_ippo:before,
  .page_blog .sidebar_paper ul li.cat_ippo:before {
    background-color: #58D5E8; }
  .page_topics .sidebar_paper ul li.cat_ayaserivertimes:before,
  .page_blog .sidebar_paper ul li.cat_ayaserivertimes:before {
    background-color: #A3D179; }
  .page_topics .sidebar_paper ul li.cat_hitotohito:before,
  .page_blog .sidebar_paper ul li.cat_hitotohito:before {
    background-color: #F2EF7C; }
  .page_topics .sidebar_paper ul li.cat_mocchiri:before,
  .page_blog .sidebar_paper ul li.cat_mocchiri:before {
    background-color: #79BD80; }
  .page_topics .sidebar_paper ul li.cat_nandakanda:before,
  .page_blog .sidebar_paper ul li.cat_nandakanda:before {
    background-color: #5FAAE8; }
  .page_topics .sidebar_paper ul li.cat_kagayaki:before,
  .page_blog .sidebar_paper ul li.cat_kagayaki:before {
    background-color: #5FAAE8; }
  .page_topics .sidebar_paper ul li.cat_ohyatta:before,
  .page_blog .sidebar_paper ul li.cat_ohyatta:before {
    background-color: #FABC6C; }
  .page_topics .sidebar_paper ul li.cat_ainowanews:before,
  .page_blog .sidebar_paper ul li.cat_ainowanews:before {
    background-color: #AAB6BD; }
  .page_topics .sidebar_paper ul li.cat_petal:before,
  .page_blog .sidebar_paper ul li.cat_petal:before {
    background-color: #eda1bf; }
  .page_topics .sidebar_facility li:before,
  .page_blog .sidebar_facility li:before {
    content: "";
    width: 6px;
    height: 13px;
    display: inline-block;
    margin-right: 5px;
    vertical-align: middle;
    border-radius: 3px; }
  .page_topics .sidebar_facility .li_adachi:before,
  .page_blog .sidebar_facility .li_adachi:before {
    background-color: #58D5E8; }
  .page_topics .sidebar_facility .li_ayase:before,
  .page_blog .sidebar_facility .li_ayase:before {
    background-color: #88B666; }
  .page_topics .sidebar_facility .li_toneri:before,
  .page_blog .sidebar_facility .li_toneri:before {
    background-color: #dcde30; }
  .page_topics .sidebar_facility .li_hanahata:before,
  .page_blog .sidebar_facility .li_hanahata:before {
    background-color: #eda1bf; }
  .page_topics .sidebar_facility .li_takenotsuka:before,
  .page_blog .sidebar_facility .li_takenotsuka:before {
    background-color: #79B680; }
  .page_topics .sidebar_facility .li_shien:before,
  .page_blog .sidebar_facility .li_shien:before {
    background-color: #F3998F; }
  .page_topics .sidebar_facility .li_shinmei:before,
  .page_blog .sidebar_facility .li_shinmei:before {
    background-color: #5296DC; }
  .page_topics .sidebar_facility .li_ooyata:before,
  .page_blog .sidebar_facility .li_ooyata:before {
    background-color: #F3B56C; }
  .page_topics .sidebar_facility .li_honbu:before,
  .page_blog .sidebar_facility .li_honbu:before {
    background-color: #AAB6BD; }
  .page_topics .sidebar_archive,
  .page_blog .sidebar_archive {
    margin-bottom: 0; }
    .page_topics .sidebar_archive h4,
    .page_blog .sidebar_archive h4 {
      cursor: pointer; }
      @media screen and (max-width: 897px) {
        .page_topics .sidebar_archive h4,
        .page_blog .sidebar_archive h4 {
          font-size: 1rem; } }
      .page_topics .sidebar_archive h4:before,
      .page_blog .sidebar_archive h4:before {
        content: "";
        width: 3px;
        height: 6px;
        background-image: url("/resource/images/topics/arrow2.svg");
        background-repeat: no-repeat;
        background-size: contain;
        display: inline-block;
        vertical-align: middle;
        margin-right: 4px;
        transition: .1s; }
      .page_topics .sidebar_archive h4.active:before,
      .page_blog .sidebar_archive h4.active:before {
        transform: rotate(90deg); }
    .page_topics .sidebar_archive ul,
    .page_blog .sidebar_archive ul {
      display: none; }

/* 6.13 - Topics(Single)
* -----------------------------------------------------------------------------
*/
.page_single-topics article,
.page_blog article {
  background-color: #fff;
  border-radius: calc(9px + 0.5rem);
  overflow: hidden; }
  .page_single-topics article .topics_main,
  .page_blog article .topics_main {
    padding-left: 12%;
    padding-right: 12%;
    margin-bottom: 5rem;
    margin-top: 2rem; }
    .page_single-topics article .topics_main .cat,
    .page_blog article .topics_main .cat {
      font-size: 0.75rem;
      text-align: right; }
    .page_single-topics article .topics_main h3,
    .page_blog article .topics_main h3 {
      font-size: 1.444rem;
      line-height: 1.2;
      letter-spacing: 0em;
      font-weight: bold;
      text-align: left;
      margin: 2rem 0 1.5rem;
      padding-bottom: 1rem;
      border-bottom: 1px solid #D1D0CF; }
      .page_single-topics article .topics_main h3 .date,
      .page_blog article .topics_main h3 .date {
        font-size: 12px;
        letter-spacing: 0.2em;
        font-weight: normal;
        display: block;
        line-height: 1;
        margin-bottom: 1em; }
    .page_single-topics article .topics_main p,
    .page_blog article .topics_main p {
      font-size: 16px;
      line-height: 2.2;
      letter-spacing: 0.02em;
      font-feature-settings: 'palt'; }
      .page_single-topics article .topics_main p:not(:last-of-type),
      .page_blog article .topics_main p:not(:last-of-type) {
        margin-bottom: 1rem; }
    .page_single-topics article .topics_main a,
    .page_blog article .topics_main a {
      cursor: pointer;
      position: relative;
      display: inline-block;
      transition: .3s;
      color: #30CFAF; }
      .page_single-topics article .topics_main a img:hover,
      .page_blog article .topics_main a img:hover {
        opacity: .6; }
      .page_single-topics article .topics_main a::after,
      .page_blog article .topics_main a::after {
        position: absolute;
        bottom: 0;
        left: 50%;
        content: '';
        width: 0;
        height: 1px;
        background-color: #30CFAF;
        transition: .3s;
        transform: translateX(-50%); }
      .page_single-topics article .topics_main a:hover::after,
      .page_blog article .topics_main a:hover::after {
        width: 100%; }
    .page_single-topics article .topics_main img,
    .page_blog article .topics_main img {
      display: block;
      margin: auto;
      max-width: 100%;
      max-width: 680px;
      height: auto; }
  .page_single-topics article .facility,
  .page_blog article .facility {
    color: #fff;
    text-align: center;
    font-size: 0.8125rem;
    padding-top: 5px;
    padding-bottom: 5px; }

.page_single-topics .pager_single,
.page_blog .pager_single {
  text-align: center;
  margin-top: 40px; }
  .page_single-topics .pager_single a,
  .page_blog .pager_single a {
    display: inline-block;
    margin: 0 20px; }

/* 6.14 - Blog
* -----------------------------------------------------------------------------
*/
.page_blog .mainvisual {
  background-image: url("/resource/images/blog/mainvisual.jpg"); }
  .page_blog .mainvisual h2 img {
    max-width: 441px; }

.page_blog article {
  margin-bottom: 50px; }

/* 6.15 - Contact
* -----------------------------------------------------------------------------
*/
.page_contact .inner {
  max-width: calc(1040px + 8vw); }

.page_contact .mainvisual {
  background-image: url("/resource/images/contact/mainvisual.jpg"); }
  @media screen and (max-width: 480px) {
    .page_contact .mainvisual h2 {
      padding-left: 4vw;
      padding-right: 4vw; } }
  .page_contact .mainvisual h2 img {
    max-width: 441px; }

.page_contact .sec_page {
  padding-top: 100px;
  border-bottom: 50px solid #fff; }
  @media screen and (max-width: 480px) {
    .page_contact .sec_page {
      padding-top: 30px; } }
.page_contact .contact_box {
  background-color: #fff;
  padding: 3rem 5vw;
  margin-bottom: 5rem;
  border-radius: 20px; }
  .page_contact .contact_box h3 {
    font-size: 1.625rem;
    font-weight: bold;
    margin-bottom: 10px;
    text-align: center; }

.page_contact .anchor {
  position: relative;
  top: -200px; }

.page_contact #tel {
  text-align: center;
  padding-bottom: 3rem;
  border: 1px solid #cccbc9;
  border-radius: 10px;
  padding-top: 3rem; }
  .page_contact #tel .sm {
    font-size: 0.72rem; }
  .page_contact #tel h3 {
    font-size: 1.04rem; }
    .page_contact #tel h3:before {
      content: "";
      width: 20px;
      height: 26px;
      display: inline-block;
      margin-right: 10px;
      vertical-align: middle;
      background-size: contain;
      background-repeat: no-repeat;
      background-image: url("/resource/images/contact/icon_tel.svg"); }
  .page_contact #tel .tel_number {
    font-feature-settings: 'palt';
    font-size: 2.8rem;
    font-weight: bold;
    color: #30CFAF;
    line-height: 1; }
    .page_contact #tel .tel_number span {
      display: inline-block;
      margin: 0.1em; }
      .page_contact #tel .tel_number span.sm {
        font-weight: normal;
        padding-right: 0.1em;
        letter-spacing: 0;
        font-size: 0.5em; }
    @media screen and (max-width: 480px) {
      .page_contact #tel .tel_number {
        font-size: 9vw; } }
  .page_contact #tel .fax {
    border-top: 1px solid #cccbc9;
    margin-top: 1.5rem;
    padding-top: 1.5rem;
    max-width: 600px;
    margin-left: auto;
    margin-right: auto; }
    .page_contact #tel .fax .fax_number {
      font-size: 0.88rem;
      font-weight: bold; }
      .page_contact #tel .fax .fax_number .sm {
        font-size: 0.8em;
        color: #30cfaf;
        margin-left: 1em; }
      .page_contact #tel .fax .fax_number .num {
        font-size: 1.38rem;
        color: #30cfaf; }
      @media screen and (max-width: 480px) {
        .page_contact #tel .fax .fax_number {
          font-size: 7vw; } }
  .page_contact #tel .note {
    font-weight: normal;
    font-size: 0.72rem; }

.page_contact .to_facility {
  margin-top: 45px; }
  .page_contact .to_facility h3 {
    font-size: 0.933rem;
    margin-bottom: 0;
    position: relative;
    padding-bottom: 10px;
    padding-top: 10px;
    background-color: #f2f1f1;
    border: 1px solid #cccbc9;
    border-radius: 10px;
    transition: .2s;
    cursor: pointer; }
    .page_contact .to_facility h3:hover {
      border-color: #aaa9a7; }
    @media screen and (max-width: 480px) {
      .page_contact .to_facility h3 {
        padding-right: 40px;
        padding-left: 20px;
        font-size: 4.5vw; } }
  .page_contact .to_facility .accordion_icon {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    right: 20px;
    width: 40px;
    height: 40px;
    margin-right: 0; }
    @media screen and (max-width: 480px) {
      .page_contact .to_facility .accordion_icon {
        right: 10px;
        width: 30px;
        height: 30px;
        margin-right: 0; } }
    .page_contact .to_facility .accordion_icon span {
      background-color: #30CFAF;
      left: 10px; }
      @media screen and (max-width: 480px) {
        .page_contact .to_facility .accordion_icon span {
          left: 8px; } }
      .page_contact .to_facility .accordion_icon span:nth-of-type(1) {
        top: 19px; }
        @media screen and (max-width: 480px) {
          .page_contact .to_facility .accordion_icon span:nth-of-type(1) {
            top: 15px; } }
      .page_contact .to_facility .accordion_icon span:nth-of-type(2) {
        top: 19px; }
        @media screen and (max-width: 480px) {
          .page_contact .to_facility .accordion_icon span:nth-of-type(2) {
            top: 15px; } }
    .page_contact .to_facility .accordion_icon.active {
      background-color: transparent; }
  .page_contact .to_facility .facility_wrap {
    padding-top: 30px;
    display: none; }
    .page_contact .to_facility .facility_wrap table tr {
      border-bottom: 1px solid #f0ece6; }
    .page_contact .to_facility .facility_wrap table td {
      font-size: 0.72rem;
      padding: 5px 10px; }
      .page_contact .to_facility .facility_wrap table td:nth-child(1) {
        width: 28%;
        font-weight: bold;
        font-size: 0.72rem; }
        .page_contact .to_facility .facility_wrap table td:nth-child(1) span {
          color: #fff;
          font-size: 0.66rem;
          display: inline-block;
          text-align: center;
          border-radius: 100px;
          line-height: 1;
          padding: 4px 10px; }
      .page_contact .to_facility .facility_wrap table td:nth-child(2) > div, .page_contact .to_facility .facility_wrap table td:nth-child(3) > div {
        padding-left: 25px;
        border-left: 1px solid #f0ece6; }
      .page_contact .to_facility .facility_wrap table td:nth-child(4) {
        width: 30px; }
        .page_contact .to_facility .facility_wrap table td:nth-child(4) a {
          color: #fff;
          display: block;
          width: 20px;
          height: 20px;
          line-height: 20px;
          text-align: center;
          border-radius: 3px;
          font-size: 0.66rem; }
      .page_contact .to_facility .facility_wrap table td .tel,
      .page_contact .to_facility .facility_wrap table td .fax {
        border: 1px solid #cccbc9;
        background-color: #f2f1f1;
        font-size: 0.72rem;
        display: inline-block;
        padding: 3px 10px;
        line-height: 1;
        border-radius: 3px;
        vertical-align: middle;
        margin-right: 10px; }

.page_contact #mailform {
  margin-top: 90px;
  padding-right: 9.7%;
  padding-left: 7.8%;
  padding-bottom: 60px;
  margin-bottom: 90px; }
  @media screen and (max-width: 897px) {
    .page_contact #mailform {
      padding-right: 20px;
      padding-left: 20px; } }
  @media screen and (max-width: 480px) {
    .page_contact #mailform {
      margin-top: 40px; } }
  .page_contact #mailform table {
    margin-top: 30px; }
    .page_contact #mailform table.verify {
      margin: auto;
      margin-top: 3rem;
      max-width: 720px;
      border-collapse: collapse;
      border: 1px solid #e8e8e8; }
      .page_contact #mailform table.verify tr th, .page_contact #mailform table.verify tr td {
        padding: 1em;
        line-height: 1.6; }
        @media screen and (max-width: 480px) {
          .page_contact #mailform table.verify tr th, .page_contact #mailform table.verify tr td {
            width: 100% !important;
            border-right: none !important;
            border-left: none !important; } }
      .page_contact #mailform table.verify tr th {
        width: 27%;
        padding-right: 1rem;
        color: #30cfaf;
        border-collapse: collapse;
        border: 1px solid #e8e8e8;
        background-color: #f7f6f5; }
        @media screen and (max-width: 480px) {
          .page_contact #mailform table.verify tr th {
            padding-top: .6em;
            padding-bottom: .6em;
            border: none; } }
      .page_contact #mailform table.verify tr td {
        font-weight: normal;
        width: 73%;
        font-size: 14px;
        border-collapse: collapse;
        border-bottom: 1px solid #e8e8e8; }
        @media screen and (max-width: 480px) {
          .page_contact #mailform table.verify tr td {
            padding-top: 1.5em;
            padding-bottom: 1.5em; } }
    .page_contact #mailform table tr th, .page_contact #mailform table tr td {
      padding-top: 10px;
      padding-bottom: 10px; }
      @media screen and (max-width: 480px) {
        .page_contact #mailform table tr th, .page_contact #mailform table tr td {
          display: block; } }
      .page_contact #mailform table tr th .req, .page_contact #mailform table tr td .req {
        position: absolute;
        right: -37px;
        width: 32px;
        top: 50%;
        transform: translateY(-50%);
        font-size: 10px;
        color: #fff;
        background-color: #30cfaf;
        padding: 0 6px;
        border-radius: 100px; }
    .page_contact #mailform table tr th {
      text-align: right;
      white-space: nowrap;
      font-weight: bold;
      padding-right: 57px;
      font-size: 14px; }
      @media screen and (max-width: 480px) {
        .page_contact #mailform table tr th {
          text-align: left; } }
      .page_contact #mailform table tr th span {
        position: relative;
        display: inline-block; }
      .page_contact #mailform table tr th.vat {
        vertical-align: top;
        padding-top: 20px; }
    .page_contact #mailform table tr td {
      font-weight: bold; }
      @media screen and (max-width: 480px) {
        .page_contact #mailform table tr td {
          border-bottom: 1px solid #ccc;
          margin-bottom: 20px; } }
      .page_contact #mailform table tr td label {
        cursor: pointer;
        display: block;
        border: 1px solid #edeceb;
        background-color: #f7f6f5;
        transition: .2s;
        padding: 10px 10px 10px 33px;
        border-radius: 4px;
        position: relative; }
        .page_contact #mailform table tr td label:hover {
          border-color: #c4c2c2; }
        .page_contact #mailform table tr td label.active {
          background-color: #fdfff0 !important;
          border-color: #30cfaf !important; }
      .page_contact #mailform table tr td > label {
        margin-bottom: 10px; }
      .page_contact #mailform table tr td #label_v,
      .page_contact #mailform table tr td #label_i {
        padding-left: 8px; }
        .page_contact #mailform table tr td #label_v:before,
        .page_contact #mailform table tr td #label_i:before {
          content: "";
          width: 14px;
          height: 14px;
          background-image: url("/resource/images/contact/icon_plus.svg");
          background-size: contain;
          background-repeat: no-repeat;
          display: inline-block;
          vertical-align: middle;
          margin-right: 10px;
          margin-left: 3px; }
      .page_contact #mailform table tr td .flex {
        flex-wrap: wrap;
        margin-bottom: 30px; }
        @media screen and (max-width: 480px) {
          .page_contact #mailform table tr td .flex {
            margin-bottom: 0; } }
        .page_contact #mailform table tr td .flex > div {
          flex-basis: 48.4%;
          max-width: 48.4%;
          margin-bottom: 10px;
          border-radius: 2px;
          font-size: 0.8125rem;
          font-weight: 100;
          letter-spacing: 0.02em; }
      .page_contact #mailform table tr td input[type="text"],
      .page_contact #mailform table tr td textarea {
        width: 100%;
        padding: 0.8em;
        font-size: 14px;
        letter-spacing: 0.05em;
        background-color: #F7F6F5;
        border: none;
        border-radius: 3px;
        box-sizing: border-box;
        transition: .2s;
        border: 1px solid #edeceb; }
        .page_contact #mailform table tr td input[type="text"]:hover,
        .page_contact #mailform table tr td textarea:hover {
          border-color: #c4c2c2; }
        .page_contact #mailform table tr td input[type="text"]:focus,
        .page_contact #mailform table tr td textarea:focus {
          background-color: #fdfff0;
          border: 1px solid #30cfaf;
          outline: none;
          padding: 0.61em;
          font-size: 16px; }
      .page_contact #mailform table tr td input[type="text"] {
        color: #595652; }
      .page_contact #mailform table tr td input[type="radio"] {
        display: none; }
      .page_contact #mailform table tr td input[type="radio"] + span {
        display: inline-block; }
        .page_contact #mailform table tr td input[type="radio"] + span:before {
          content: "";
          display: block;
          position: absolute;
          top: 50%;
          left: 10px;
          width: 15px;
          height: 15px;
          border: 1px solid #c4c2c2;
          border-radius: 50%;
          transform: translateY(-50%);
          box-sizing: border-box; }
      .page_contact #mailform table tr td input[type="radio"]:checked + span:before {
        border-width: 5px;
        border-color: #30cfaf; }
      .page_contact #mailform table tr td textarea {
        height: 220px; }
      .page_contact #mailform table tr td .fadearea {
        display: none;
        margin-top: 10px;
        background-color: #F7F6F5;
        padding: 10px;
        border: 1px solid #edeceb;
        border-radius: 4px;
        padding-top: 10px; }
        .page_contact #mailform table tr td .fadearea label {
          background: none;
          border-color: #F7F6F5; }
          .page_contact #mailform table tr td .fadearea label.active {
            border: 1px solid #30cfaf !important; }
        .page_contact #mailform table tr td .fadearea h4 {
          position: relative;
          font-weight: normal;
          text-align: center;
          margin-bottom: 10px; }
          .page_contact #mailform table tr td .fadearea h4 .req {
            position: static;
            display: inline-block;
            padding: 1px 10px;
            vertical-align: middle;
            transform: none;
            width: auto; }
    .page_contact #mailform table .tr_facility_v,
    .page_contact #mailform table .tr_facility_i {
      display: none; }

.page_contact .submit {
  text-align: center;
  margin-top: 4rem; }
  @media screen and (max-width: 897px) {
    .page_contact .submit {
      margin-top: 2.5rem; } }
  .page_contact .submit button {
    border-radius: 100px;
    max-width: 280px;
    border: 1px solid #30CFAF;
    padding: 1em;
    color: #fff;
    font-size: 0.875rem;
    width: 100%;
    position: relative;
    background-color: #30cfaf;
    transition: .2s;
    cursor: pointer;
    margin: 0 20px; }
    @media screen and (max-width: 897px) {
      .page_contact .submit button {
        width: 35%; } }
    @media screen and (max-width: 480px) {
      .page_contact .submit button {
        width: 100%;
        max-width: 90%;
        margin: 10px 0; } }
    .page_contact .submit button:hover {
      background-color: #fff;
      color: #30cfaf; }

/* 6.16 - Privacy Policy
* -----------------------------------------------------------------------------
*/
.page_privacypolicy {
  background-color: #fff; }
  .page_privacypolicy .mainvisual {
    background-image: url("/resource/images/privacypolicy/mainvisual.jpg"); }
    @media screen and (max-width: 480px) {
      .page_privacypolicy .mainvisual h2 {
        padding-left: 4vw;
        padding-right: 4vw; } }
    .page_privacypolicy .mainvisual h2 img {
      max-width: 740px; }
  .page_privacypolicy .privacy_top {
    text-align: center;
    font-weight: bold;
    margin-top: 40px;
    margin-bottom: 80px; }
  .page_privacypolicy .sec_page .inner {
    max-width: calc(812px + 8vw); }
    .page_privacypolicy .sec_page .inner h2 + p {
      font-size: 1.0625rem;
      margin-bottom: 30px; }
  .page_privacypolicy .privacypolicy_inner {
    background-color: #F7F6F5;
    padding: 40px 9.8%;
    border-radius: 20px;
    font-size: 0.875rem;
    line-height: 1.6;
    letter-spacing: 0.05em; }
    @media screen and (max-width: 480px) {
      .page_privacypolicy .privacypolicy_inner {
        padding-left: 4vw;
        padding-right: 4vw; } }
    .page_privacypolicy .privacypolicy_inner > ul > li {
      margin-bottom: 30px; }
    .page_privacypolicy .privacypolicy_inner:not(:last-of-type) {
      margin-bottom: 4rem; }
    .page_privacypolicy .privacypolicy_inner dl dt {
      font-weight: bold;
      margin-bottom: 5px; }
    .page_privacypolicy .privacypolicy_inner dl dd:not(:last-of-type) {
      margin-bottom: 40px; }
    .page_privacypolicy .privacypolicy_inner dl dd li {
      text-indent: -1rem;
      padding-left: 1rem; }
    .page_privacypolicy .privacypolicy_inner .president {
      text-align: right;
      margin-top: 30px;
      font-weight: bold;
      font-size: 1.1875rem; }
      .page_privacypolicy .privacypolicy_inner .president span {
        font-size: 0.875rem;
        margin-right: 20px; }
  .page_privacypolicy #privacypolicy_bottom {
    background-color: #F7F6F5;
    margin-top: 90px;
    padding-top: 60px;
    padding-bottom: 68px;
    margin-bottom: 60px; }
    .page_privacypolicy #privacypolicy_bottom .text {
      background-color: #fff;
      padding: 20px;
      margin-top: 20px;
      text-align: center;
      font-size: 1.1875rem;
      border-radius: 20px; }
      .page_privacypolicy #privacypolicy_bottom .text .lg {
        font-size: 1.8125rem;
        font-weight: bold;
        margin-bottom: 10px; }
        .page_privacypolicy #privacypolicy_bottom .text .lg span {
          font-size: 1.1875rem;
          display: inline-block;
          vertical-align: middle;
          margin-right: 10px; }

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