@charset "UTF-8";
@import url(https://fonts.googleapis.com/earlyaccess/notosansjp.css);
/*-----------------------------------------------
	RESET STYLES
-----------------------------------------------*/
@import url(http://fonts.googleapis.com/earlyaccess/notosansjp.css);
body, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, pre, code, form, fieldset, legend, input, button, textarea, p, blockquote, th, td {
  margin: 0;
  padding: 0; }

table {
  border-collapse: collapse;
  border-spacing: 0; }

fieldset, img {
  margin: 0;
  padding: 0;
  border: 0; }

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

del, ins {
  text-decoration: none; }

li {
  list-style: none; }

caption, th {
  text-align: left; }

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

strong {
  font-weight: bold; }

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

.small-text {
  font-size: 0.8em; }

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

sup {
  vertical-align: baseline; }

sub {
  vertical-align: baseline; }

legend {
  color: #000; }

input, button, textarea, select, optgroup, option {
  font-family: inherit;
  font-size: inherit;
  font-style: inherit;
  font-weight: inherit; }

input, button, textarea, select {
  *font-size: 100%; }

img {
  max-width: 100%;
  height: auto; }

iframe {
  max-width: 100%;
  margin: 0 auto; }
  @media all and (max-width: 767px) {
    iframe {
      max-width: 96%; } }

@media all and (min-width: 768px) {
  .sp-box {
    display: none; } }

@media all and (max-width: 767px) {
  .pc-box {
    display: none; } }

/*-----------------------------------------------
	BASIC
-----------------------------------------------*/
body {
  font-family: 'Noto Sans Japanese', "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-size: 16px;
  color: #525252; }

a {
  color: #2477bf; }
  a:hover {
    color: #c1272d; }

/*-----------------------------------------------
	LAYOUT
-----------------------------------------------*/
#wrapper {
  line-height: 1.4; }

#header #header-contents {
  margin: 0 auto;
  width: 1200px;
  max-width: 96%; }

#gnavi {
  background: linear-gradient(to bottom, #0269cf 1%, #014385 92%); }
  #gnavi #gnavi-contents {
    margin: 0 auto;
    width: 1200px;
    max-width: 100%; }

#contents {
  margin: 40px auto 0 auto;
  width: 1200px;
  max-width: 96%; }
  #contents #primary {
    margin-bottom: 30px; }
  @media all and (min-width: 801px) {
    #contents {
      display: flex;
      flex-direction: row-reverse; }
      #contents #primary {
        width: 75%; }
      #contents #secondary {
        width: 25%;
        padding-right: 25px;
        box-sizing: border-box; } }
  @media all and (min-width: 801px) and (min-width: 1200px) {
    #contents #primary {
      width: 955px; }
    #contents #secondary {
      width: 245px; } }
  @media all and (max-width: 800px) {
    .home #contents {
      margin-top: 10px; } }

#footerwrap {
  padding-top: 50px; }

#footernavi {
  margin: 0 auto; }
  #footernavi ul {
    margin: 0 auto;
    width: 1200px;
    max-width: 96%; }

#footer {
  padding: 30px 0 50px 0;
  background: #1a2640; }
  #footer #footer-contents {
    width: 1200px;
    max-width: 96%;
    margin: 0 auto; }

/*-----------------------------------------------
	HEADER
-----------------------------------------------*/
@media all and (min-width: 768px) {
  #header #header-contents {
    display: flex;
    padding: 1.2rem 0;
    align-items: center;
    justify-content: space-between; }
    #header #header-contents .logo {
      max-width: 50%; }
      #header #header-contents .logo img {
        max-width: 96%;
        width: 500px; }
    #header #header-contents #hnavi {
      text-align: right; }
      #header #header-contents #hnavi ul li {
        font-size: 0.9rem; }
        #header #header-contents #hnavi ul li a {
          padding: 0.4rem 0.8rem; } }

@media all and (max-width: 767px) {
  #header #header-contents .logo {
    margin: 1rem auto;
    text-align: center; }
    #header #header-contents .logo img {
      max-width: 80%; }
  #header #header-contents #hnavi {
    margin: 0.7rem auto; }
    #header #header-contents #hnavi ul {
      display: flex; }
      #header #header-contents #hnavi ul li {
        font-size: 1rem;
        width: 48%;
        margin: 0 1%; }
        #header #header-contents #hnavi ul li a {
          width: 100%;
          text-align: center;
          padding: 0.7rem 0; } }

#header #header-contents #hnavi ul {
  margin: 0; }
  #header #header-contents #hnavi ul li {
    display: inline-block;
    list-style: none;
    padding: 0 0 0 1px;
    font-weight: bold; }
    #header #header-contents #hnavi ul li a {
      display: block;
      background: #eee;
      color: #000;
      text-decoration: none; }
      #header #header-contents #hnavi ul li a .svg-inline--fa {
        margin-right: 0.2rem;
        color: #014385; }
      #header #header-contents #hnavi ul li a:hover {
        background: #e3f6fd;
        transition: 0.5s; }

/*-----------------------------------------------
	GLOBAL NAVIGATIONS
-----------------------------------------------*/
@media all and (min-width: 801px) {
  #gnavi .gnavi-btn {
    display: none; }
  #gnavi ul {
    width: 100%;
    display: flex;
    justify-content: space-between;
    align-items: stretch;
    border-left: 1px solid #000; }
    #gnavi ul li {
      text-align: center;
      display: block;
      width: 100%;
      border-right: 1px solid #000; }
      #gnavi ul li a {
        display: block;
        width: 100%;
        height: 100%;
        padding: 1.2rem 0.5rem;
        box-sizing: border-box;
        color: #fff;
        font-weight: bold;
        text-decoration: none;
        word-break: keep-all; }
        #gnavi ul li a:hover {
          background: linear-gradient(to bottom, #1d8cfc 1%, #004a94 92%);
          color: #fff68a;
          transition: 0.5s; }
      .home #gnavi ul li.home a, .outline #gnavi ul li.outline a, .consultation #gnavi ul li.consultation a, .homeservice #gnavi ul li.homeservice a, .hospitalization #gnavi ul li.hospitalization a {
        background: linear-gradient(to bottom, #1d8cfc 1%, #004a94 92%); }
      #gnavi ul li.seniorlife a {
        background: linear-gradient(to bottom, #009e6f 1%, #066f50 92%); }
        #gnavi ul li.seniorlife a:hover {
          background: linear-gradient(to bottom, #00db9a 0%, #057654 92%);
          transition: 0.5s; } }

@media all and (max-width: 800px) {
  #gnavi .gnavi-btn {
    width: 100%;
    padding: 0.9rem 0;
    text-align: center;
    color: #fff;
    font-weight: bold; }
    #gnavi .gnavi-btn .svg-inline--fa {
      padding-right: 0.3rem; }
  #gnavi ul {
    display: none;
    background: #1161b1;
    border-top: 1px dotted #fff; }
    #gnavi ul li a {
      display: block;
      width: 100%;
      padding: 0.7rem 0;
      text-align: center;
      border-bottom: 1px dotted #fff;
      color: #fff;
      text-decoration: none; }
    #gnavi ul li.last a {
      border: none; }
    #gnavi ul li.seniorlife a {
      background: #009e6f; } }

/*-----------------------------------------------
	PRIMARY
-----------------------------------------------*/
#primary .page-title {
  font-size: 1.3rem;
  padding: 0.8rem;
  margin-bottom: 1rem;
  border-left: 15px solid #014385;
  color: #000000;
  background: #f1f1f1; }

#primary h2 {
  font-size: 1.3rem;
  padding: 0.8rem;
  margin-bottom: 1rem;
  border-left: 15px solid #014385;
  color: #000000;
  background: #f1f1f1; }

#primary h3 {
  margin: 1rem auto;
  padding: 0.5rem;
  color: #014385;
  border-top: 4px solid #014385;
  border-bottom: 1px solid #014385;
  font-size: 1.2rem; }
  #primary h3.sec_list {
    margin-top: 50px; }

#primary h4 {
  margin: 1.2rem auto 0.5rem auto;
  padding: 0.5rem;
  color: #014385;
  background: #eaeaea;
  font-size: 1.1rem; }

#primary .sitemap h4 {
  padding-left: 20px;
  background: #eee url(images/listmark2.gif) 5px 7px no-repeat; }
  #primary .sitemap h4 a {
    color: #3f3f3f;
    text-decoration: none; }
    #primary .sitemap h4 a:hover {
      text-decoration: underline; }

#primary h5 {
  margin: 0.8rem auto 0.4rem auto;
  padding: 0.3rem 0;
  font-size: 1rem;
  color: #014385;
  border-bottom: 1px dotted #9c9c9c; }

#primary .page-date {
  text-align: right;
  font-size: 0.9rem;
  margin: 10px 0 10px auto; }

#primary p {
  margin: 0 0 10px 0;
  font-size: 94%;
  letter-spacing: 1px;
  line-height: 1.6; }
  #primary p.warning {
    font-size: 75%;
    font-weight: bold;
    margin: 0 auto; }
  #primary p.warn-indent {
    margin-top: 5px;
    margin-left: 10px;
    padding-left: 2em;
    font-size: 75%;
    font-weight: bold;
    text-indent: -2em; }
  #primary p.sign {
    text-align: right; }
  #primary p.to_detail {
    font-weight: bold;
    border-top: 1px dotted #eee;
    padding: 0.5rem 0; }
    #primary p.to_detail .svg-inline--fa {
      color: #014385;
      margin-right: 0.2rem; }
    #primary p.to_detail:before {
      content: '\f35a';
      font-family: "Font Awesome 5 Solid";
      display: none; }
  #primary p.announce-img {
    margin-top: 10px;
    padding-left: 0; }
  #primary p.lifeimg {
    margin-left: 10px; }
    #primary p.lifeimg img {
      padding: 3px;
      border: 1px solid #ccc; }
  #primary p.p_left {
    float: left;
    margin: 15px 20px 5px 0; }
    #primary p.p_left img {
      vertical-align: bottom; }

#primary ul {
  margin: 10px 0 10px 30px;
  font-size: 94%; }
  #primary ul li {
    margin: 3px 0;
    list-style-type: disc; }
  #primary ul.tabs {
    margin: 15px 0 -1px 10px;
    border-bottom: 1px solid #ccc;
    display: flex;
    justify-content: flex-start; }
    #primary ul.tabs a {
      display: block;
      padding: 0.4rem 0.6rem;
      font-size: 94%;
      font-weight: bold;
      border: 1px solid #ccc;
      background: #eee;
      text-decoration: none; }
    #primary ul.tabs li {
      padding-right: 5px;
      margin: 0;
      list-style: none; }
      #primary ul.tabs li.active a {
        color: #525252;
        background: #fff;
        border-bottom: 1px solid #fff; }
  #primary ul.bulletin-board-list {
    margin: 30px 10px; }
    #primary ul.bulletin-board-list li {
      padding: 10px 0;
      list-style: none;
      border-bottom: 1px dotted #dedede;
      display: flex; }
      #primary ul.bulletin-board-list li .svg-inline--fa {
        color: #014385;
        margin-right: 0.3rem;
        margin-top: 2px; }
      #primary ul.bulletin-board-list li:before {
        content: '\f35a';
        font-family: "Font Awesome 5 Solid";
        display: none; }
      #primary ul.bulletin-board-list li a.pdf .svg-inline--fa {
        color: #90dcf8;
        margin-left: 0.2rem; }
      #primary ul.bulletin-board-list li a.pdf:after {
        content: '\f1c1';
        font-family: "Font Awesome 5 Solid";
        display: none; }

#primary dl {
  margin: 10px 0 10px 10px;
  font-size: 94%; }
  #primary dl dt {
    font-weight: bold;
    padding-bottom: 0.3rem;
    color: #000; }
    #primary dl dt:before {
      content: '●';
      color: #014385;
      margin-right: 0.2rem;
      font-size: 1rem; }
  #primary dl dd {
    margin-left: 1rem;
    padding-bottom: 0.5rem; }

#primary ol {
  margin: 10px 0 10px 30px;
  font-size: 94%; }
  #primary ol li {
    margin: 3px 0;
    list-style-type: decimal; }

#primary.top {
  margin: 0;
  padding: 0; }
  #primary.top .slide {
    border: 10px solid #f5f5f5;
    box-sizing: border-box;
    margin-bottom: 2rem; }
    #primary.top .slide .slick-dots {
      margin: 0 auto;
      padding: 0;
      bottom: -2rem; }
  #primary.top h2 {
    font-size: 1.2rem;
    border-width: 10px;
    padding: 0.5rem;
    margin: 1rem 0 0 0; }

#primary .indexinfo .indexinfo-box {
  margin: 1rem auto;
  width: 100%;
  overflow: auto;
  position: relative; }
  #primary .indexinfo .indexinfo-box .indexinfo-item {
    padding: 0 0 0.5rem 0;
    border-bottom: 1px dotted #dedede;
    margin: 0 auto 0.6rem auto; }
    #primary .indexinfo .indexinfo-box .indexinfo-item .indexinfo-date {
      font-size: 0.7rem;
      padding: 0; }
    #primary .indexinfo .indexinfo-box .indexinfo-item h3 {
      margin: 0 0 0.3rem 0;
      font-size: 0.9rem;
      padding: 0;
      border: none;
      line-height: 1.2; }
    #primary .indexinfo .indexinfo-box .indexinfo-item p {
      margin: 0;
      font-size: 0.85rem;
      padding: 0;
      line-height: 1.2; }

#primary .tab-box {
  display: none;
  margin-top: -1px;
  padding: 0;
  border: 5px solid #ccc;
  background-color: #fff; }
  #primary .tab-box h5 {
    margin: 10px 0 0 10px;
    padding: 0; }
  #primary .tab-box p {
    margin: 10px 10px 0 10px;
    padding: 0; }

#primary #tab-a-type {
  display: block; }

#primary #gmap {
  margin: 10px 0 0 5px; }

.parent-pageid-37 #primary .page-title {
  border-color: #009e6f; }

.parent-pageid-37 #primary h2 {
  border-color: #009e6f; }

.parent-pageid-37 #primary h3 {
  color: #057d59;
  border-color: #009e6f; }

.parent-pageid-37 #primary h4 {
  color: #057d59; }

.parent-pageid-37 #primary h5 {
  color: #057d59; }

.parent-pageid-37 #primary p.to_detail .svg-inline--fa {
  color: #009e6f; }

.parent-pageid-37 #primary dl dt:before {
  color: #009e6f; }

#primary .wp-block-file {
  font-size: 1rem; }

#primary .wp-block-columns.nogap {
  gap: 0;
  margin-bottom: 10px; }

@media all and (min-width: 801px) {
  #primary h2 {
    font-size: 1.7rem;
    border-width: 30px; } }

@media all and (min-width: 768px) {
  #primary .flex-box {
    display: flex;
    justify-content: space-between;
    align-items: flex-start; }
    #primary .flex-box .flex-child {
      width: 48%;
      margin: 1%; }
    #primary .flex-box .flex-child-20 {
      width: 18%;
      margin: 1%; }
    #primary .flex-box .flex-child-25 {
      width: 23%;
      margin: 1%; }
    #primary .flex-box .flex-child-30 {
      width: 28%;
      margin: 1%; }
    #primary .flex-box .flex-child-33 {
      width: 31%;
      margin: 1%; }
    #primary .flex-box .flex-child-40 {
      width: 38%;
      margin: 1%; }
    #primary .flex-box .flex-child-60 {
      width: 58%;
      margin: 1%; }
    #primary .flex-box .flex-child-70 {
      width: 68%;
      margin: 1%; }
    #primary .flex-box .flex-child-80 {
      width: 78%;
      margin: 1%; } }

@media all and (max-width: 800px) {
  #primary .indexinfo .indexinfo-box {
    overflow: hidden; }
    #primary .indexinfo .indexinfo-box .indexinfo-item .indexinfo-date {
      display: inline-block; }
  #primary.top .slide {
    border-width: 3px;
    margin-bottom: 2rem; }
    #primary.top .slide .slick-dots {
      bottom: -1.7rem; } }

.table-scroll {
  overflow: auto;
  white-space: nowrap; }

.table−scroll::-webkit-scrollbar {
  height: 5px; }

.table−scroll::-webkit-scrollbar-track {
  background: #F1F1F1; }

.table−scroll::-webkit-scrollbar-thumb {
  background: #BCBCBC; }

table.lefthead {
  width: 100%;
  margin-top: 20px;
  font-size: 81%;
  border: solid 1px #999; }
  table.lefthead th, table.lefthead td {
    padding: 5px 10px;
    border: solid 1px #999; }
  table.lefthead th {
    font-weight: bold;
    background: #f3f9fb; }

table.normal {
  margin-top: 20px;
  width: 100%;
  font-size: 81%;
  border-top: solid 1px #dcdcdc;
  border-left: solid 1px #dcdcdc; }
  table.normal thead th {
    background: #e3f6fd; }
  table.normal tbody th {
    font-weight: normal;
    background: #f8fdff; }
  table.normal th, table.normal td {
    padding: 5px 10px;
    text-align: center;
    border-bottom: solid 1px #dcdcdc;
    border-right: solid 1px #dcdcdc; }
  table.normal td.txt-left {
    text-align: left; }
  table.normal td span.tntype {
    font-weight: bold; }
  table.normal td span.tntotal {
    font-size: 66%; }

table.meal {
  margin: 5px 0 10px 0;
  width: auto; }
  table.meal td {
    padding: 0 4px;
    font-size: 81%;
    text-align: center; }
    table.meal td img {
      padding: 3px;
      border: 1px solid #ddd; }

table.photo_table {
  margin-top: 15px;
  margin-bottom: 10px;
  font-size: 81%;
  width: 100%; }
  table.photo_table th, table.photo_table td {
    padding: 0 5px;
    width: 50%;
    text-align: center; }

table.int {
  margin-left: 10px;
  font-size: 94%;
  line-height: 1.6; }
  table.int td.tdr {
    width: 5em;
    vertical-align: top; }

.wp-block-table.normal table {
  margin-top: 20px;
  width: 100%;
  font-size: 0.9rem;
  border-top: solid 1px #dcdcdc;
  border-left: solid 1px #dcdcdc; }
  .wp-block-table.normal table thead {
    border-bottom: none; }
    .wp-block-table.normal table thead th {
      font-weight: bold;
      background: #e3f6fd; }
  .wp-block-table.normal table tbody th {
    font-weight: bold;
    background: #f8fdff; }
  .wp-block-table.normal table th, .wp-block-table.normal table td {
    padding: 5px 10px;
    border: none;
    border-bottom: solid 1px #dcdcdc;
    border-right: solid 1px #dcdcdc; }

.wp-block-table.left-th table tbody td:first-child {
  font-weight: bold;
  background: #f8fdff; }

@media all and (max-width: 800px) {
  .wp-block-table.sp-block table thead th, .wp-block-table.sp-block table thead td, .wp-block-table.sp-block table tbody th, .wp-block-table.sp-block table tbody td {
    display: block; } }

/*-----------------------------------------------
	SECONDARY
-----------------------------------------------*/
#sidenavi {
  margin-bottom: 20px; }
  #sidenavi h2 {
    color: #014385;
    font-size: 1rem;
    text-align: center;
    letter-spacing: -1px; }
  #sidenavi .sidenavi-box {
    padding: 12px 12px 10px 12px;
    background: #e3f6fd; }
    #sidenavi .sidenavi-box.side-seniorlife {
      background: #e5fdf5; }
      #sidenavi .sidenavi-box.side-seniorlife h2 {
        color: #057d59; }

#sidenavi ul, #recept ul {
  margin: 5px 0 20px 0; }
  #sidenavi ul li, #recept ul li {
    margin: 6px 0; }
    #sidenavi ul li a, #recept ul li a {
      zoom: 1;
      padding: 0.4rem 0.2rem;
      color: #525252;
      font-size: 0.9rem;
      text-decoration: none;
      background: #fff;
      display: flex; }
      #sidenavi ul li a .svg-inline--fa, #recept ul li a .svg-inline--fa {
        color: #014385;
        margin-right: 0.2rem;
        margin-top: 0.2rem; }
      #sidenavi ul li a:before, #recept ul li a:before {
        content: '\f35a';
        font-family: "Font Awesome 5 Solid";
        display: none; }
      #sidenavi ul li a:hover, #recept ul li a:hover {
        background-color: #fff68a;
        transition: 0.2s;
        font-weight: bold; }
      #sidenavi ul li a strong, #recept ul li a strong {
        font-weight: bold;
        color: #ff0000; }

#sidenavi .side-seniorlife ul li a .svg-inline--fa, #recept .side-seniorlife ul li a .svg-inline--fa {
  color: #009e6f; }

#recept {
  padding: 12px 12px 18px 12px;
  background: #e3f6fd; }
  #recept h2 {
    color: #014385;
    font-size: 1rem;
    text-align: center; }
  #recept dl {
    margin: 0.7rem 0;
    padding: 0.4rem;
    font-size: 82%;
    background: #fff; }
    #recept dl dt {
      color: #014385;
      margin-top: 5px;
      font-weight: bold; }
    #recept dl dd {
      padding: 5px;
      border-bottom: 1px dotted #eee; }

/*-----------------------------------------------
	FOOTER
-----------------------------------------------*/
#footernavi {
  background: #eee; }
  #footernavi ul {
    padding: 10px 0;
    text-align: center;
    font-size: 82%; }
    #footernavi ul li {
      display: inline; }
  #footernavi p {
    text-align: right;
    color: #fff;
    font-size: 82%; }
  #footernavi address {
    margin-top: 10px;
    text-align: right;
    color: #fff;
    font-size: 82%;
    font-weight: bold; }

#footer #footer-contents {
  color: #fff;
  font-size: 82%; }
  #footer #footer-contents h2 {
    padding: 0.5rem;
    font-size: 1rem;
    background: #24304a;
    color: #e3f7fd; }
  #footer #footer-contents h3 {
    font-size: 1.15rem;
    padding: 0.3rem 0 0.5rem 0; }
  #footer #footer-contents a {
    color: #fff; }
    #footer #footer-contents a .svg-inline--fa {
      margin-right: 0.2rem; }
  #footer #footer-contents .copyright {
    margin: 1rem 0 0 0; }
  #footer #footer-contents .tel {
    font-size: 1.6rem;
    font-weight: bold;
    padding: 0.5rem;
    color: #e3f7fd; }
    #footer #footer-contents .tel a {
      text-decoration: none;
      color: #e3f7fd; }
  #footer #footer-contents dl {
    margin: 0.5rem 0; }
    #footer #footer-contents dl dt {
      font-weight: bold;
      margin: 0.2rem 0 0 0; }
      #footer #footer-contents dl dt:before {
        content: '●';
        margin-right: 0.2rem;
        color: #e3f7fd; }
    #footer #footer-contents dl dd {
      text-indent: 2rem; }
      #footer #footer-contents dl dd .tel {
        font-size: 1.3rem;
        padding: 0.2rem 0.2rem 0.5rem 0.2rem; }
  @media all and (min-width: 768px) {
    #footer #footer-contents h2 {
      margin-bottom: 1rem; }
    #footer #footer-contents .flex-box {
      display: flex;
      justify-content: space-between; }
      #footer #footer-contents .flex-box .flex-child {
        width: 31%;
        margin: 1%; }
        #footer #footer-contents .flex-box .flex-child .tel a {
          pointer-events: none; } }
  @media all and (max-width: 767px) {
    #footer #footer-contents .flex-box .flex-child {
      margin: 0.5rem;
      padding: 0.5rem 0;
      border-bottom: 1px dotted #e3f7fd; } }
