@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=M+PLUS+Rounded+1c:wght@500;700&display=swap");
*::before,
*::after {
  box-sizing: inherit;
}

html {
  font-size: 62.5%;
}

@media all and (max-width: 991px) {
  html {
    font-size: 58%;
  }
}
@media all and (max-width: 767px) {
  html {
    font-size: 56%;
  }
}
@media all and (max-width: 575px) {
  html {
    font-size: 52%;
  }
}
body {
  -webkit-text-size-adjust: 100%;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  font-feature-settings: "palt" on;
  -webkit-font-smoothing: antialiased;
  -webkit-text-size-adjust: 100%;
  font-family: "M PLUS Rounded 1c", sans-serif;
  font-weight: 500;
  font-style: normal;
  font-size: 1.8rem;
  line-height: 1.8;
  background-color: #F1F2E6;
  color: #656464;
}

@media all and (max-width: 575px) {
  body {
    font-size: 2rem;
  }
}
@media all and (max-width: 499px) {
  body {
    font-size: 1.8rem;
  }
}
html, body {
  height: 100%;
}

p, li, dl, dt, dd, span, i, div, small, td, th {
  font-weight: 500;
}

.fw500 {
  font-weight: 500;
}

.fw700 {
  font-weight: 700;
}

.green {
  color: #6EA71A;
}

::-moz-selection {
  background: #f0f0f0;
  color: #ccc;
}

::selection {
  background: #f0f0f0;
  color: #ccc;
}

::-moz-selection {
  background: #f0f0f0;
  color: #ccc;
}

img {
  height: auto;
}

a {
  text-decoration: none;
  outline: none;
  color: #6EA71A;
}

a:hover {
  text-decoration: none;
}

p.just {
  text-align: justify;
  text-justify: inter-ideograph;
}

.nowrap {
  white-space: nowrap;
}

ul {
  padding: 0;
}

.tables {
  display: table;
  width: 100%;
}
.tables .cells {
  display: table-cell;
}

#wpadminbar {
  top: inherit !important;
  bottom: 0 !important;
}

@media all and (max-width: 767px) {
  #wpadminbar {
    display: none;
  }
}
.container {
  padding: 0 80px;
  max-width: 1279px;
  margin: auto;
}

@media all and (max-width: 1199px) {
  .container {
    padding: 0 65px;
  }
}
@media all and (max-width: 991px) {
  .container {
    padding: 0 40px;
    max-width: 847px;
  }
}
#wrapper {
  position: relative;
  margin: auto;
  background-color: #F1F2E6;
}

#cover {
  content: "";
  display: block;
  width: 0;
  height: 0;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 2;
  opacity: 0;
  transition: opacity 0.3s;
}

#header {
  background-color: white;
  position: relative;
  height: 170px;
}
#header #h1 {
  position: absolute;
  top: 0;
  left: 3rem;
  height: 100%;
  display: grid;
  place-items: center;
  width: 510px;
}
#header #h1 a {
  display: block;
  width: 100%;
}
#header #h1 a:hover {
  opacity: 0.6;
}
#header #head-right {
  position: absolute;
  top: 0;
  right: 3rem;
  height: 100%;
  display: grid;
  place-items: center;
}
#header #head-right #head-right-inner {
  text-align: right;
}
#header #head-right p {
  color: #6EA71A;
  margin: auto;
  font-size: 1.75rem;
  text-align: right;
  margin-bottom: 1.2rem;
  line-height: 1;
}
#header #head-right ul {
  display: inline-block;
  margin: auto 0 auto auto;
}
#header #head-right ul li {
  display: inline-block;
  margin-left: 1.2rem;
}
#header #head-right ul li a {
  display: block;
  background-color: #6EA71A;
  border-radius: 5px;
  line-height: 1;
}
#header #head-right ul li a img {
  width: auto;
  height: 60px;
  vertical-align: bottom;
}
#header #head-right ul li a:hover {
  background-color: #8CB808;
}

@media all and (max-width: 1299px) {
  #header {
    height: 140px;
  }
  #header #h1 {
    width: 420px;
    left: 2.5rem;
  }
  #header #head-right {
    right: 2.5rem;
  }
  #header #head-right p {
    font-size: 1.5rem;
  }
  #header #head-right ul li a img {
    height: 51px;
  }
}
@media all and (max-width: 991px) {
  #header {
    height: 14vw;
  }
  #header #h1 {
    width: 42vw;
    left: 2vw;
  }
  #header #head-right {
    right: 2.5vw;
  }
  #header #head-right p {
    line-height: 1.4;
    font-size: 1.5vw;
    margin-bottom: 0.8vw;
  }
  #header #head-right ul li {
    margin-left: 1vw;
  }
  #header #head-right ul li a img {
    height: 5.15vw;
  }
}
@media all and (max-width: 575px) {
  #header {
    text-align: center;
    height: auto;
  }
  #header #h1 {
    padding: 2rem 0;
    position: relative;
    top: auto;
    left: auto;
    display: block;
    place-items: inherit;
    width: auto;
  }
  #header #h1 img {
    width: 80%;
    margin: auto;
    max-width: 380px;
  }
  #header #head-right {
    display: none;
  }
}
@media all and (max-width: 499px) {
  #header #h1 {
    padding: 1.5rem 0;
  }
}
#gmenu {
  display: none;
}

@media all and (max-width: 991px) {
  #gmenu {
    display: table;
    background-color: white;
    border-top: solid 1px #6EA71A;
    border-bottom: solid 1px #6EA71A;
    position: sticky;
    top: 0;
    z-index: 99;
  }
  #gmenu .cells {
    border-right: solid 1px #6EA71A;
    width: 20%;
    line-height: 1;
    text-align: center;
  }
  #gmenu .cells img {
    width: 100%;
    max-width: 80px;
  }
  #gmenu .cells a {
    display: block;
    background: none;
  }
  #gmenu .cells a:hover {
    background-color: #F1F2E6;
  }
  #gmenu .cells:last-child {
    border: none;
    background-color: #6EA71A;
    cursor: pointer;
  }
  #gmenu .cells:last-child:hover {
    background-color: #8CB808;
  }
}
#header-nav {
  position: sticky;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 99;
  background-color: white;
  border-top: solid 1px #C5CE00;
  border-bottom: solid 1px #C5CE00;
  text-align: center;
}
#header-nav ul {
  width: 100%;
  margin: auto;
}
#header-nav ul li.parent {
  cursor: pointer;
}
#header-nav ul li.parent a:hover {
  color: #C5CE00;
}
#header-nav ul li.parent:hover h2 {
  color: #C5CE00;
}
#header-nav ul li.home {
  padding: 0 2.5rem 0 0;
}
#header-nav ul li.home a {
  height: auto;
}
#header-nav ul li.home a img {
  width: 3.5rem;
  margin-top: -2px;
}
#header-nav ul li.home a:hover {
  opacity: 0.6;
}
#header-nav ul > li {
  display: inline-block;
  margin: auto;
  line-height: 1;
  position: relative;
}
#header-nav ul > li h2 {
  color: #6EA71A;
  text-align: center;
  width: 100% !important;
  display: block;
  display: grid;
  place-items: center;
  margin: auto;
  line-height: 1;
  position: relative;
}
#header-nav ul > li h2 span,
#header-nav ul > li h2 a {
  height: 65px;
  margin: auto;
  display: block;
  line-height: 1;
  display: grid;
  place-items: center;
}
#header-nav ul > li h2 span .inner,
#header-nav ul > li h2 a .inner {
  padding: 0 2.8rem;
  font-size: 1.9rem;
  border-left: solid 1px #6EA71A;
  font-weight: 700;
  line-height: 1;
}
#header-nav ul > li h2 span .inner i,
#header-nav ul > li h2 a .inner i {
  width: 1.9rem;
  display: inline-block;
  margin-bottom: -3px;
  margin-right: 0.5rem;
  aspect-ratio: 1/1;
  background-image: url(../img/nav-arrow.svg);
  background-position: center center;
  background-repeat: no-repeat;
  background-size: contain;
  transform: rotate(-90deg);
  transition: all 0.3s;
}
#header-nav ul > li h2 a:hover {
  color: #C5CE00;
}
#header-nav ul > li .sub-menu {
  position: absolute;
  top: 65px;
  left: 0;
  width: 19vw;
  opacity: 0;
  visibility: hidden;
  background-color: #6EA71A;
  padding: 1.5rem;
  text-align: left;
}
#header-nav ul > li .sub-menu ul {
  margin: auto;
}
#header-nav ul > li .sub-menu ul li {
  display: block;
  border-bottom: dotted 1px #C5CE00;
}
#header-nav ul > li .sub-menu ul li a {
  color: white;
  font-size: 1.8rem;
  font-weight: 500;
  line-height: 1.4;
  display: block;
  padding: 0.6rem 0;
}
#header-nav ul > li .sub-menu ul li a i {
  width: 1.8rem;
  display: inline-block;
  margin-bottom: -3px;
  margin-right: 0.5rem;
  aspect-ratio: 1/1;
  background-image: url(../img/menu-arrow.svg);
  background-position: center center;
  background-repeat: no-repeat;
  background-size: contain;
  transform: rotate(-90deg);
  transition: all 0.3s;
}
#header-nav ul > li .sub-menu ul li a:hover {
  color: white;
  opacity: 0.6;
}
#header-nav ul > li .sub-menu ul li:first-child a {
  padding-top: 0;
}
#header-nav ul > li .sub-menu ul li:last-child {
  border: none;
}
#header-nav ul > li .sub-menu ul li:last-child a {
  padding-bottom: 0;
}
#header-nav ul > li:last-child h2 span .inner,
#header-nav ul > li:last-child h2 a .inner {
  padding: 0 0 0 2.8rem;
}
#header-nav ul > li:last-child .sub-menu {
  left: auto;
  right: 0;
}
#header-nav ul > li.parent:hover h2 span .inner i,
#header-nav ul > li.parent:hover h2 a .inner i {
  transform: rotate(0);
}
#header-nav ul > li.parent:hover .sub-menu {
  opacity: 1;
  visibility: visible;
  z-index: 999;
}

@media all and (max-width: 1399px) {
  #header-nav ul li.home {
    padding: 0 2vw 0 0;
  }
  #header-nav ul li.home a img {
    width: 2.4vw;
    margin-top: -0.2vw;
  }
  #header-nav ul > li h2 span,
  #header-nav ul > li h2 a {
    height: 4.5vw;
  }
  #header-nav ul > li h2 span .inner,
  #header-nav ul > li h2 a .inner {
    padding: 0 1.8vw;
    font-size: 1.4vw;
  }
  #header-nav ul > li h2 span .inner i,
  #header-nav ul > li h2 a .inner i {
    width: 1.4vw;
    margin-bottom: -0.2vw;
    margin-right: 0.5vw;
  }
  #header-nav ul > li .sub-menu {
    top: 4.5vw;
  }
  #header-nav ul > li .sub-menu ul li a {
    font-size: 1.3vw;
  }
  #header-nav ul > li .sub-menu ul li a i {
    width: 1.3vw;
    margin-bottom: -0.2vw;
    margin-right: 0.5vw;
  }
  #header-nav ul > li:last-child h2 span .inner,
  #header-nav ul > li:last-child h2 a .inner {
    padding: 0 0 0 1.8vw;
  }
}
@media all and (max-width: 1199px) {
  #header-nav ul > li h2 span,
  #header-nav ul > li h2 a {
    height: 4.5vw;
  }
  #header-nav ul > li h2 span .inner,
  #header-nav ul > li h2 a .inner {
    padding: 0 1.5vw;
    font-size: 1.5vw;
  }
  #header-nav ul > li h2 span .inner i,
  #header-nav ul > li h2 a .inner i {
    width: 1.5vw;
    margin-bottom: -0.2vw;
    margin-right: 0.5vw;
  }
  #header-nav ul > li .sub-menu {
    top: 4.5vw;
  }
  #header-nav ul > li .sub-menu ul li a {
    font-size: 1.4vw;
  }
  #header-nav ul > li .sub-menu ul li a i {
    font-size: 1.5vw;
    margin-bottom: -0.2vw;
    margin-right: 0.5vw;
  }
  #header-nav ul > li:last-child h2 span .inner,
  #header-nav ul > li:last-child h2 a .inner {
    padding: 0 0 0 1.5vw;
  }
}
@media all and (max-width: 991px) {
  #header-nav {
    display: none;
  }
}
#nav,
#close {
  display: none;
}

@media all and (max-width: 991px) {
  #nav {
    display: block;
    position: fixed;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    opacity: 0;
    z-index: 99;
    pointer-events: none;
    transition: all 0.3s;
    overflow-y: scroll;
    text-align: center;
    background-color: #f0f0f0;
  }
  #nav .inner {
    background-color: #6EA71A;
    padding: 10rem 2.5rem 13rem 2.5rem;
    margin: auto;
    text-align: left;
    min-height: 100vh;
    min-height: 100dvh;
  }
  #nav ul#menu {
    border: solid 1px white;
    border-radius: 5px;
    list-style: none;
    margin: auto;
    max-width: 530px;
  }
  #nav ul#menu li {
    color: white;
    font-size: 2rem;
  }
  #nav ul#menu li a {
    color: white;
    display: block;
    padding: 1rem;
    font-size: 2rem;
    font-weight: 700;
  }
  #nav ul#menu li a:hover {
    background-color: #C5CE00;
  }
  #nav ul#menu li.solo {
    border-top: solid 1px white;
  }
  #nav ul#menu li.palent {
    border-top: solid 1px white;
  }
  #nav ul#menu li.palent .accordion {
    padding: 1rem;
    position: relative;
    font-weight: 700;
  }
  #nav ul#menu li.palent .accordion .arrow {
    background-image: url(../img/menu-arrow.svg);
    background-size: 1.8rem;
    background-position: center center;
    background-repeat: no-repeat;
    position: absolute;
    top: 0;
    right: 0;
    aspect-ratio: 1/1;
    height: 100%;
    transform: rotate(90deg);
    transition: all 0.3s;
  }
  #nav ul#menu li.palent .accordion:hover {
    background-color: #C5CE00;
    cursor: pointer;
  }
  #nav ul#menu li.palent .on {
    background-color: #8CB808;
  }
  #nav ul#menu li.palent .on .arrow {
    transform: rotate(0);
  }
  #nav ul#menu li.palent ul.child {
    list-style: none;
    background-color: #8CB808;
    display: none;
    margin: auto;
  }
  #nav ul#menu li.palent ul.child li {
    position: relative;
  }
  #nav ul#menu li.palent ul.child li a {
    padding-left: 2rem;
    font-size: 1.8rem;
    font-weight: 500;
  }
  #nav ul#menu li.palent ul.child li::before {
    content: "";
    background-image: linear-gradient(to right, white, white 2px, transparent 2px, transparent 4px);
    background-size: 4px 1px;
    background-repeat: repeat-x;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 1px;
  }
  #nav::-webkit-scrollbar {
    width: 3px;
    left: 0;
    display: none;
  }
  #nav::-webkit-scrollbar-thumb {
    background-color: white;
  }
  #close {
    display: block;
    position: fixed;
    top: 2.5rem;
    right: 0;
    width: 100%;
    opacity: 0;
    z-index: 99;
    pointer-events: none;
    cursor: pointer;
    text-align: center;
  }
  #close .inner {
    max-width: 575px;
    margin: auto;
    text-align: right;
    padding: 0 2.5rem;
  }
  #close .inner img {
    width: 40px;
    margin-right: 0;
  }
  #close:hover {
    opacity: 0;
  }
}
@media all and (max-width: 499px) {
  #close .inner img {
    width: 35px;
  }
}
.view #cover {
  width: 100%;
  height: 100%;
  opacity: 1;
}
.view #close,
.view #nav {
  opacity: 1;
  pointer-events: auto;
}
.view #close:hover {
  opacity: 0.6;
}

#fixed {
  display: none;
}

@media all and (max-width: 991px) {
  #fixed {
    display: block;
    position: fixed;
    bottom: 0;
    left: 0;
    width: 100%;
    z-index: 9999;
    text-align: center;
    border-top: solid 1px #6EA71A;
    background-color: #6EA71A;
  }
  #fixed .tables {
    margin: auto;
    background-color: white;
    max-width: 767px;
  }
  #fixed .tables .cells {
    border-right: solid 1px #6EA71A;
  }
  #fixed .tables .cells img {
    width: 80%;
    max-height: 70px;
  }
  #fixed .tables .cells:last-child {
    border-right: none;
  }
  #fixed .tables #fixed-tel {
    width: 58.5%;
  }
  #fixed .tables #fixed-yoyaku {
    width: 41.5%;
  }
  #fixed a {
    display: block;
  }
  #fixed a:hover {
    background-color: #F1F2E6;
  }
}
@media all and (max-width: 575px) {
  #fixed .tables {
    max-width: none;
  }
  #fixed .tables .cells img {
    width: 90%;
  }
  #fixed .tables #fixed-tel {
    width: 58.5%;
  }
  #fixed .tables #fixed-yoyaku {
    width: 41.5%;
  }
  #fixed a {
    display: block;
  }
  #fixed a:hover {
    background-color: #F1F2E6;
  }
}
@media all and (max-width: 499px) {
  #fixed .tables .cells img {
    width: 100%;
  }
}
#home #home-img {
  z-index: 1;
}
#home #home-img img {
  width: 100%;
}
#home #home-content {
  padding: 2rem 2.5rem;
}
#home #home-content h2.midashi {
  text-align: center;
  font-size: 2.6rem;
  font-weight: 500;
  line-height: 1.6;
  margin-bottom: 1.5rem;
  color: #6EA71A;
}
#home #home-content h2.midashi span {
  display: inline-block;
  font-size: 2.6rem;
  font-weight: 700;
  line-height: 1.6;
}
#home #home-content #first {
  text-align: center;
  margin: 2rem auto 3rem auto;
}
#home #home-content #first a {
  display: block;
  border: solid 2px #6EA71A;
  padding: 1.2rem;
  font-size: 2rem;
  border-radius: 5px;
  background-color: white;
  counter-reset: #6EA71A;
  font-weight: 700;
  letter-spacing: normal;
  line-height: 1.4;
}
#home #home-content #first a span {
  font-weight: 700;
  display: inline-block;
  letter-spacing: normal;
}
#home #home-content #first a:hover {
  background-color: #6EA71A;
  color: white;
}
#home #home-footer {
  text-align: center;
  margin-top: 3rem;
}
#home #home-footer p {
  margin: auto;
  line-height: 1.5;
  font-size: 1.8rem;
}

#time-table p {
  text-align: center;
  margin: auto;
  line-height: 1.6;
  font-size: 2rem;
}
#time-table p i {
  font-style: normal;
  font-size: 2rem;
}
#time-table #time-warp {
  border: solid 2px #C5CE00;
  background-color: white;
  padding: 5px;
  border-radius: 5px;
  margin-bottom: 1.2rem;
}
#time-table #time-warp table {
  width: 100%;
  table-layout: fixed;
}
#time-table #time-warp table th {
  text-align: center;
}
#time-table #time-warp table th:first-child {
  width: 140px;
}
#time-table #time-warp table tbody th {
  text-align: right;
  padding-left: 0;
}
#time-table #time-warp table tbody th, #time-table #time-warp table tbody td {
  border-top: solid 1px #656464;
}
#time-table #time-warp table tbody td {
  text-align: center;
  font-weight: 700;
  font-size: 2.2rem;
}
#time-table #time-warp table th, #time-table #time-warp table td {
  vertical-align: middle;
  line-height: 1;
  padding: 1rem;
  border-right: solid 1px #656464;
  font-weight: 500;
  font-size: 1.8rem;
}
#time-table #time-warp table th:last-child,
#time-table #time-warp table td:last-child {
  border-right: none;
}

@media all and (max-width: 575px) {
  #home-smp #home-img {
    padding-bottom: 65%;
  }
  #time-table #time-warp table th:first-child {
    width: 120px;
  }
}
@media all and (max-width: 499px) {
  #home #home-content h2.midashi {
    font-size: 2.4rem;
    margin-bottom: 0.6rem;
  }
  #home #home-content h2.midashi span {
    font-size: 2.4rem;
  }
  #home #home-content #first {
    margin: 2rem auto 2.5rem auto;
  }
  #home #home-content #first a {
    padding: 1rem;
    font-size: 1.8rem;
  }
  #time-table #time-warp table th, #time-table #time-warp table td {
    padding: 0.8rem;
  }
  #time-table #time-warp table th:first-child {
    width: 110px;
  }
  #time-table #time-warp table tbody td {
    font-size: 2rem;
  }
}
@media all and (max-width: 376px) {
  #home #home-content #first {
    margin: 1.5rem auto 2rem auto;
  }
  #home #home-content #first a {
    font-size: 1.8rem;
  }
  #time-table p {
    font-size: 1.8rem;
  }
  #time-table #time-warp table th:first-child {
    width: 115px;
  }
  #time-table #time-warp table th, #time-table #time-warp table td {
    font-size: 1.8rem !important;
  }
}
#oshirase h2 {
  background-color: #C5CE00;
  color: white !important;
  border: solid 2px #C5CE00;
  border-bottom: none;
  border-radius: 5px 5px 0 0;
  font-size: 2.2rem;
  text-align: center;
  padding: 0.8rem 1rem;
  margin: auto;
}
#oshirase h2 a {
  color: white;
}
#oshirase h2 a:hover {
  color: #F1F2E6;
}
#oshirase #oshirase-warp {
  border: solid 2px #C5CE00;
  background-color: white;
  border-radius: 0 0 5px 5px;
  padding: 0.5rem 1.5rem;
}
#oshirase #oshirase-warp ul {
  list-style: none;
  margin: auto;
}
#oshirase #oshirase-warp ul li {
  margin: auto;
  position: relative;
}
#oshirase #oshirase-warp ul li::before {
  content: "";
  background-image: linear-gradient(to right, #000, #000 2px, transparent 2px, transparent 4px);
  background-size: 4px 1px;
  background-repeat: repeat-x;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 1px;
}
#oshirase #oshirase-warp ul li:last-child::before {
  background: none;
}
#oshirase #oshirase-warp ul a {
  display: block;
}
#oshirase #oshirase-warp ul a dl {
  display: table;
  margin: auto;
  text-align: left;
  width: 100%;
}
#oshirase #oshirase-warp ul a dl dt {
  font-weight: 500;
  padding-right: 1rem;
  width: 115px;
}
#oshirase #oshirase-warp ul a dl dt, #oshirase #oshirase-warp ul a dl dd {
  display: table-cell;
  vertical-align: top;
  line-height: 1.5;
  padding: 0.6rem 0;
  color: #555555;
}
#oshirase #oshirase-warp ul a:hover dl dt, #oshirase #oshirase-warp ul a:hover dl dd {
  color: #6EA71A;
}

@media all and (max-width: 499px) {
  #oshirase h2 {
    font-size: 2rem;
    padding: 0.6rem;
  }
  #oshirase #oshirase-warp {
    padding: 0.5rem 1.2rem;
  }
  #oshirase #oshirase-warp ul a dl dt {
    width: 100px;
  }
}
.separate {
  padding-bottom: 4%;
}

@media all and (max-width: 499px) {
  .separate {
    padding-bottom: 2%;
  }
}
#page-content #page-title {
  padding: 6rem 2rem;
}
#page-content #page-title h1 {
  text-align: center;
  font-size: 3.8rem;
  color: #6EA71A;
  font-weight: 700;
  line-height: 1.4;
}
#page-content .cont {
  margin-bottom: 4rem;
}
#page-content .cont h2.obi {
  background-color: #6EA71A;
  color: white;
  text-align: center;
  padding: 1.2rem;
  font-size: 3rem;
  font-weight: 700;
  letter-spacing: 2px;
  line-height: 1.4;
  margin-bottom: 2.5rem;
}
#page-content .cont .indent {
  text-indent: -2rem;
  padding-left: 2rem;
}
#page-content .cont .indent2 {
  text-indent: -3.8rem;
  padding-left: 3.8rem;
}
#page-content .cont .img {
  margin-bottom: 2rem;
}
#page-content .cont .img img {
  border-radius: 5px;
  width: 100%;
}
#page-content .cont dl.folding dt.accordion {
  pointer-events: none;
  margin-bottom: 1.5rem;
}
#page-content .cont dl.folding dt.on + dd {
  display: block;
}
#page-content .cont ol.maru {
  list-style-type: none;
  padding: 0 0 0 0.5rem;
}
#page-content .cont ol.maru li {
  text-indent: -1.3em;
  padding-left: 1.3em;
  line-height: 1.6;
  margin: 0.2rem auto;
  font-size: 1.8rem;
}
#page-content .cont ul {
  padding-left: 1em;
  list-style-type: none;
}
#page-content .cont ul li {
  line-height: 1.6;
  margin: 0.2rem auto;
  position: relative;
  font-size: 1.8rem;
}
#page-content .cont ul li span {
  font-size: 1.8rem;
}
#page-content .cont ul li:before {
  content: "・ ";
  position: absolute;
  font-weight: 700;
  top: 0;
  left: -1.8rem;
}

@media all and (max-width: 767px) {
  #page-content #page-title {
    padding: 5rem 2rem;
  }
  #page-content #page-title h1 {
    font-size: 3.4rem;
  }
  #page-content .cont h2.obi {
    padding: 1rem;
    font-size: 2.4rem;
    margin-bottom: 2rem;
  }
}
@media all and (max-width: 575px) {
  #page-content #page-title {
    padding: 3.2rem 2rem;
  }
  #page-content #page-title h1 {
    font-size: 3rem;
  }
  #page-content .cont {
    margin-bottom: 4rem;
  }
  #page-content .cont h2.obi {
    padding: 1.2rem;
    font-size: 2.2rem;
  }
  #page-content .cont h3.line {
    color: #6EA71A;
    border-bottom: solid 1px #8CB808;
    padding-bottom: 0.5rem;
    margin-bottom: 1rem;
    margin-top: 2rem;
    font-size: 2.2rem;
  }
  #page-content .cont .container {
    max-width: none;
    padding: 0;
  }
  #page-content .cont .waku {
    border: solid 1px #8CB808;
    border-radius: 3px;
    padding: 2.5rem;
    margin: 3rem auto 4rem auto;
  }
  #page-content .cont p {
    font-size: 1.8rem;
  }
  #page-content .cont p.txt {
    font-weight: 500;
    text-align: justify;
    text-justify: inter-ideograph;
  }
  #page-content .cont dl.folding dt {
    background-color: white;
    padding: 1.4rem 2rem;
    border: none;
    margin-bottom: 0.5rem;
  }
  #page-content .cont dl.folding dt h3 {
    font-size: 2.2rem;
    line-height: 1;
    padding: 0;
    border: none;
    margin: auto;
    color: #6EA71A;
  }
  #page-content .cont dl.folding dt.accordion {
    position: relative;
    cursor: pointer;
    pointer-events: auto;
  }
  #page-content .cont dl.folding dt.accordion h3 {
    margin: auto;
    line-height: 1;
    color: #6EA71A;
  }
  #page-content .cont dl.folding dt.accordion .arrow {
    background-image: url(../img/table-arrow.svg);
    background-size: 1.8rem;
    background-position: center center;
    background-repeat: no-repeat;
    position: absolute;
    top: 0;
    right: 0;
    aspect-ratio: 1/1;
    height: 100%;
    transform: rotate(90deg);
    transition: all 0.3s;
    z-index: 9;
  }
  #page-content .cont dl.folding dt.accordion:hover {
    background-color: #6EA71A;
  }
  #page-content .cont dl.folding dt.accordion:hover h3 {
    color: white;
  }
  #page-content .cont dl.folding dt.on {
    background-color: #6EA71A;
  }
  #page-content .cont dl.folding dt.on h3 {
    color: white;
  }
  #page-content .cont dl.folding dt.on .arrow {
    transform: rotate(0);
  }
  #page-content .cont dl.folding dt.on:hover {
    background-color: #8CB808;
  }
  #page-content .cont dl.folding dd {
    margin-top: 1rem;
  }
  #page-content .cont dl.folding dt.accordion + dd {
    display: none;
  }
  #page-content .cont #type .illust {
    text-align: right;
  }
  #page-content .cont #type .illust img {
    border: solid 1px #707070;
    width: 100%;
    max-width: 140px;
  }
  #page-content .cont table td.w180 {
    width: 130px;
  }
}
.dotted {
  position: relative;
  height: 1px;
  margin: 2rem auto;
}

.dotted::before {
  content: "";
  background-image: linear-gradient(to right, #000, #000 2px, transparent 2px, transparent 4px);
  background-size: 4px 1px;
  background-repeat: repeat-x;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 1px;
}

@media all and (max-width: 575px) {
  #page-content .cont .container {
    padding: 0 2rem;
  }
}
@media all and (max-width: 499px) {
  #page-content #page-title {
    padding: 3rem 2rem;
  }
  #page-content #page-title h1 {
    font-size: 2.8rem;
  }
  #page-content .cont {
    margin-bottom: 3rem;
  }
  #page-content .cont h2.obi,
  #page-content .cont h3.line {
    font-size: 2rem;
  }
  #page-content .cont h2.obi {
    margin-bottom: 2rem;
  }
  #page-content .cont .img {
    margin-bottom: 1.5rem;
  }
  #page-content .cont .waku {
    padding: 2rem;
    margin: 2.5rem auto 3rem auto;
  }
  #page-content .cont .indent {
    text-indent: -1.8rem;
    padding-left: 1.8rem;
  }
  #page-content .cont .indent2 {
    text-indent: -3.4rem;
    padding-left: 3.4rem;
  }
  #page-content .cont dl.folding {
    margin-top: 1.5rem;
  }
  #page-content .cont dl.folding dt {
    padding: 1.5rem;
    font-size: 2rem;
  }
  .dotted {
    margin: 1.5rem auto;
  }
}
#doctor table.doctor-table {
  width: 100%;
  margin: auto;
}
#doctor table.doctor-table th, #doctor table.doctor-table td {
  background: none;
  border: none;
  vertical-align: top;
  padding: 0.2rem 0;
  font-weight: 500;
  color: #656464;
  line-height: 1.6;
  font-size: 1.8rem;
}
#doctor table.doctor-table td.date {
  width: 60px;
}
#doctor table.doctor-table td span {
  font-weight: 500;
}
#doctor ul.doctor-list li {
  font-weight: 500;
  line-height: 1.6;
  margin-bottom: 0.5rem;
  font-size: 1.8rem;
}

@media all and (max-width: 575px) {
  #doctor table.doctor-table th, #doctor table.doctor-table td {
    font-size: 2rem;
  }
  #doctor table.doctor-table td.date {
    width: 60px;
  }
  #doctor table.doctor-table td span {
    font-weight: 500;
  }
  #doctor ul.doctor-list li {
    font-weight: 500;
    line-height: 1.6;
    font-size: 2rem;
    margin-bottom: 0.5rem;
  }
}
#facility .img {
  margin: auto auto 1rem auto !important;
}
#facility p {
  text-align: center;
  font-size: 1.8rem;
  line-height: 1.6;
  margin: auto;
  font-weight: 500;
}

#hajimete h3,
#first.cont h3,
#xray.cont h3 {
  font-size: 2rem;
  color: #6EA71A;
  line-height: 1.5;
}
#hajimete h3 span,
#first.cont h3 span,
#xray.cont h3 span {
  font-size: 2rem;
}

@media all and (max-width: 499px) {
  #hajimete h3,
  #first.cont h3,
  #xray.cont h3 {
    font-size: 1.9rem;
  }
  #hajimete h3 span,
  #first.cont h3 span,
  #xray.cont h3 span {
    font-size: 1.9rem;
  }
}
#sodan {
  padding: 0 2rem 1.4rem 2rem;
}
#sodan p {
  text-align: center;
  margin: auto;
  line-height: 1.6;
  font-size: 2rem;
}

@media all and (max-width: 575px) {
  #sodan {
    padding: 0 2rem 1rem 2rem;
  }
  #sodan p {
    font-size: 1.8rem;
  }
}
.visit-table {
  width: 100%;
  table-layout: fixed;
}
.visit-table td {
  border: solid 1px #707070;
  padding: 1rem;
  font-weight: 500;
}

.qr-box {
  line-height: 1.4;
  margin-bottom: 1.5rem;
}
.qr-box .question {
  pointer-events: none;
}
.qr-box .question,
.qr-box .answer {
  padding-left: 4rem;
  position: relative;
  font-weight: 500;
}
.qr-box .answer {
  color: #6EA71A;
  margin-top: 0.5rem;
}
.qr-box .icon {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  display: inline-block;
  width: 3rem;
  text-align: center;
}

.price-table {
  width: 100%;
  text-align: left;
}
.price-table th, .price-table td {
  display: block;
  width: 100%;
  font-weight: 500;
}
.price-table th {
  border-bottom: solid 1px #8CB808;
  padding: 0.5rem;
  font-size: 2rem;
}
.price-table td {
  padding: 1rem 0 1rem 3em;
}

@media all and (max-width: 499px) {
  .price-table th {
    font-size: 1.8rem;
  }
  .price-table td {
    font-size: 1.8rem;
    padding: 1rem 0 1rem 2em;
  }
}
.own-table,
.method-table,
.type-table {
  width: 100%;
}
.own-table th, .own-table td,
.method-table th,
.method-table td,
.type-table th,
.type-table td {
  border: solid 1px #707070;
  padding: 1rem 1.5rem;
  line-height: 1.6;
  font-weight: 500;
  font-size: 1.8rem;
  vertical-align: middle;
}
.own-table th,
.method-table th,
.type-table th {
  text-align: center;
  background-color: #E8EBA1;
}

.method-table {
  width: 100% !important;
  border-bottom: solid 1px #707070;
}
.method-table th, .method-table td {
  display: block;
  border-bottom: none;
}

.flow-table th, .flow-table td {
  font-weight: 500;
  line-height: 1.6;
}
.flow-table th {
  color: #6EA71A;
}
.flow-table th:first-child {
  padding-right: 0.5rem;
}
.flow-table td {
  padding-bottom: 1rem;
}

#colon-camera .waku {
  text-align: center;
}
#colon-camera .waku .green {
  color: #6EA71A;
  text-align: left;
  display: inline-block;
  margin: auto;
  font-size: 2rem;
}

@media all and (max-width: 499px) {
  #colon-camera .waku .green {
    font-size: 1.8rem;
  }
}
#own h3 {
  color: #6EA71A;
  font-size: 2.2rem;
  line-height: 1.6;
  margin-bottom: 2rem;
}
#own h4.box {
  border: solid 1px #707070;
  padding: 0.5rem;
  line-height: 1.5;
  font-size: 2rem;
  text-align: center;
  margin: 2rem auto 1rem auto;
}
#own ol.list-ol {
  list-style-position: inside;
  padding-left: 0.5rem;
}
#own ol.list-ol li {
  font-weight: 500;
  line-height: 1.6;
  margin: 0.2rem auto;
  text-indent: -1.2em;
  padding-left: 1.2em;
}

@media all and (max-width: 499px) {
  #own h3 {
    font-size: 2rem;
    margin-bottom: 1.5rem;
  }
  #own h4.box {
    font-size: 1.8rem;
  }
}
#open .dotted {
  margin: 3rem auto !important;
}
#open #nariyama h3 {
  text-align: center;
  font-size: 2.4rem;
  color: #6EA71A;
  margin-bottom: 1.5rem;
}

@media all and (max-width: 499px) {
  #open .dotted {
    margin: 2.5rem auto !important;
  }
  #open #nariyama h3 {
    font-size: 2.2rem;
  }
}
@media all and (max-width: 376px) {
  #open #nariyama h3 {
    font-size: 2rem;
  }
}
#gmap {
  position: relative;
  width: 100%;
  height: 0;
  padding-top: 65%;
  margin-bottom: 2.5rem;
}
#gmap iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

#access {
  text-align: center;
}
#access .inner p {
  text-align: left;
  line-height: 1.6;
}

#news ul#list {
  padding: 0;
  margin: auto;
}
#news ul#list li {
  margin: auto;
}
#news ul#list li a {
  display: block;
  padding: 1rem 0;
}
#news ul#list li a dl {
  display: table;
  width: 100%;
  margin: auto;
}
#news ul#list li a dl dt, #news ul#list li a dl dd {
  display: table-cell;
  text-align: left;
}
#news ul#list li a dl dt {
  white-space: nowrap;
  padding-right: 2em;
  width: 140px;
}
#news ul#list li a:hover dl dt, #news ul#list li a:hover dl dd {
  color: #C5CE00;
}
#news ul#list li::before {
  content: none;
}
#news ul#list li::after {
  content: "";
  background-image: linear-gradient(to right, #C5CE00, #C5CE00 2px, transparent 2px, transparent 4px);
  background-size: 4px 1px;
  background-repeat: repeat-x;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 1px;
}

@media all and (max-width: 575px) {
  #news ul#list li a dl dt {
    width: 80px;
    padding-right: 1em;
  }
}
#home-pc-top {
  background-color: white;
  padding: 5rem;
  margin-bottom: 6rem;
}
#home-pc-top #home-pc-top-table {
  max-width: 1500px;
  margin: auto;
}
#home-pc-top #home-pc-top-table #home-pc-top-left {
  width: 420px;
  padding: 0 5rem 0 0;
}
#home-pc-top #home-pc-top-table #home-pc-top-left h2 {
  white-space: nowrap;
  text-align: center;
  margin-bottom: 2rem;
  font-weight: 700;
  color: #6EA71A;
  line-height: 1.4;
  font-size: 2.8rem;
}
#home-pc-top #home-pc-top-table #home-pc-top-left h2 span {
  font-weight: 700;
  display: block;
}
#home-pc-top #home-pc-top-table #home-pc-top-left p {
  white-space: nowrap;
  padding-right: 1em;
  font-size: 1.5rem;
  text-align: left;
  line-height: 1.5;
  margin: auto;
}
#home-pc-top #home-pc-top-table #home-pc-top-left #gmap {
  padding-top: 55%;
  margin: 3rem auto 1rem auto;
}
#home-pc-top #home-pc-top-table #home-pc-top-left #time-table #time-warp {
  border: none;
  background-color: #F1F2E6;
  margin-bottom: 0.5rem;
  padding: 1rem;
}
#home-pc-top #home-pc-top-table #home-pc-top-left #time-table #time-warp table thead th {
  border-right: none;
  padding-top: 0.4rem;
}
#home-pc-top #home-pc-top-table #home-pc-top-left #time-table #time-warp table thead th:first-child {
  border-right: solid 1px #656464;
}
#home-pc-top #home-pc-top-table #home-pc-top-left #time-table #time-warp table tbody tr:last-child th, #home-pc-top #home-pc-top-table #home-pc-top-left #time-table #time-warp table tbody tr:last-child td {
  padding-bottom: 0.4rem;
}
#home-pc-top #home-pc-top-table #home-pc-top-left #time-table #time-warp table td {
  border-right: none;
  padding: 0.5em;
  font-size: 2rem;
}
#home-pc-top #home-pc-top-table #home-pc-top-right {
  width: 80%;
  position: relative;
}
#home-pc-top #home-pc-top-table #home-pc-top-right .img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border-radius: 1rem;
}

@media all and (max-width: 1299px) {
  #home-pc-top {
    padding: 4rem;
  }
  #home-pc-top #home-pc-top-table #home-pc-top-left {
    padding: 0 4rem 0 0;
  }
}
@media all and (max-width: 1199px) {
  #home-pc-top #home-pc-top-table #home-pc-top-left {
    padding: 0 3rem 0 0;
  }
  #home-pc-top #home-pc-top-table #home-pc-top-left h2 {
    font-size: 2.6rem;
  }
  #home-pc-top #home-pc-top-table #home-pc-top-left h2 span {
    display: block;
  }
  #home-pc-top #home-pc-top-table #home-pc-top-left p {
    white-space: nowrap;
    line-height: 1.4;
  }
  #home-pc-top #home-pc-top-table #home-pc-top-left p span {
    display: block;
  }
  #home-pc-top #home-pc-top-table #home-pc-top-left #gmap {
    margin: 2rem auto 1rem auto;
  }
  #home-pc-top #home-pc-top-table #home-pc-top-left #time-table #time-warp table thead th:first-child {
    width: 130px;
  }
  #home-pc-top #home-pc-top-table #home-pc-top-left #time-table #time-warp table th, #home-pc-top #home-pc-top-table #home-pc-top-left #time-table #time-warp table td {
    font-size: 1.6rem;
  }
  #home-pc-top #home-pc-top-table #home-pc-top-right {
    width: 80%;
    position: relative;
  }
  #home-pc-top #home-pc-top-table #home-pc-top-right .img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border-radius: 1rem;
  }
}
@media all and (max-width: 991px) {
  #home-pc-top {
    background-color: white;
    padding: 0;
    margin-bottom: 6rem;
  }
  #home-pc-top #home-pc-top-table {
    display: flex;
    flex-wrap: wrap;
  }
  #home-pc-top #home-pc-top-table #home-pc-top-left {
    display: block;
    width: 100%;
    padding: 5rem 6rem;
    order: 2;
  }
  #home-pc-top #home-pc-top-table #home-pc-top-left h2 {
    font-size: 2.5rem;
    margin-bottom: 2.5rem;
  }
  #home-pc-top #home-pc-top-table #home-pc-top-left h2 span {
    display: inline-block;
  }
  #home-pc-top #home-pc-top-table #home-pc-top-left p {
    font-size: 1.8rem;
    line-height: 1.5;
  }
  #home-pc-top #home-pc-top-table #home-pc-top-left p span {
    display: inline-block;
  }
  #home-pc-top #home-pc-top-table #home-pc-top-left #time-table {
    margin: auto auto 3rem auto;
  }
  #home-pc-top #home-pc-top-table #home-pc-top-left #time-table #time-warp {
    margin-bottom: 1rem;
    padding: 1.5rem;
  }
  #home-pc-top #home-pc-top-table #home-pc-top-left #time-table #time-warp table thead th:first-child {
    width: 150px;
  }
  #home-pc-top #home-pc-top-table #home-pc-top-left #time-table #time-warp table th, #home-pc-top #home-pc-top-table #home-pc-top-left #time-table #time-warp table td {
    font-size: 2rem;
  }
  #home-pc-top #home-pc-top-table #home-pc-top-left .inner {
    margin: auto;
  }
  #home-pc-top #home-pc-top-table #home-pc-top-left #time-table,
  #home-pc-top #home-pc-top-table #home-pc-top-left #gmap,
  #home-pc-top #home-pc-top-table #home-pc-top-left .inner {
    max-width: 767px;
  }
  #home-pc-top #home-pc-top-table #home-pc-top-left #gmap {
    padding-top: 40%;
  }
  #home-pc-top #home-pc-top-table #home-pc-top-right {
    display: block;
    width: 100%;
    padding-bottom: 50%;
    order: 1;
  }
  #home-pc-top #home-pc-top-table #home-pc-top-right .img {
    border-radius: 0;
  }
}
#home-pc ul#oshirase-list {
  list-style: none;
  margin: auto;
}
#home-pc ul#oshirase-list li {
  margin: auto;
}
#home-pc ul#oshirase-list a {
  display: block;
}
#home-pc ul#oshirase-list a dl {
  display: table;
  margin: auto;
  text-align: left;
  width: 100%;
}
#home-pc ul#oshirase-list a dl dt, #home-pc ul#oshirase-list a dl dd {
  display: table-cell;
  vertical-align: top;
  line-height: 1.4;
  padding: 0.5rem 0;
  color: #555555;
  font-size: 1.8rem;
  font-weight: 500;
}
#home-pc ul#oshirase-list a dl dt {
  padding-right: 1rem;
  width: 115px;
}
#home-pc ul#oshirase-list a:hover dl dt, #home-pc ul#oshirase-list a:hover dl dd {
  color: #6EA71A;
}
#home-pc ul#oshirase-btn li {
  margin-bottom: 2rem;
}
#home-pc ul#oshirase-btn li a {
  display: block;
  border: solid 1px #C5CE00;
  padding: 1.5rem;
  font-size: 2rem;
  font-weight: 700;
  text-align: center;
  border-radius: 0.5rem;
}
#home-pc ul#oshirase-btn li a span {
  font-weight: 700;
}
#home-pc ul#oshirase-btn li a:hover {
  background-color: #C5CE00;
  color: white;
}

@media all and (min-width: 576px) {
  #header #head-right ul li:first-child a {
    pointer-events: none;
  }
  #pc-footer a,
  #fixed-tel a {
    pointer-events: none;
  }
  .block {
    background-color: white;
    margin-top: 4rem;
    border-radius: 1rem;
    padding: 4rem;
  }
  .block h2.sen {
    text-align: center;
    background: linear-gradient(transparent 49%, #C5CE00 49%, #C5CE00 51%, transparent 51%);
    margin-bottom: 2rem;
    line-height: 1.8;
  }
  .block h2.sen span {
    font-weight: 700;
    font-size: 2.5rem;
    letter-spacing: 1px;
    display: inline-block;
    padding: 0 2rem;
    background-color: white;
    color: #6EA71A;
  }
  .block h3 {
    font-size: 2rem;
    color: #6EA71A;
    margin-bottom: 0.8rem;
    font-weight: 700;
    line-height: 1.4;
  }
  .block .title {
    padding: 1.5rem 2rem;
    color: #6EA71A;
    border-radius: 3px;
    border: solid 1px #C5CE00;
    margin-bottom: 3rem;
  }
  .block .title h3 {
    font-size: 2.4rem;
    margin: auto;
    letter-spacing: 1px;
    line-height: 0.9;
    border-left: solid 0.8rem #C5CE00;
    padding-left: 1.5rem;
  }
  .block .title h3 span {
    font-size: 2.4rem;
  }
  .block p {
    font-size: 1.8rem;
    line-height: 1.7;
  }
  .block #time-table #time-warp {
    border: none;
    background-color: #F1F2E6;
    margin-bottom: 1rem;
    padding: 1.5rem;
  }
  .block #time-table #time-warp table thead th {
    border-right: none;
    padding-top: 0.5rem;
  }
  .block #time-table #time-warp table thead th:first-child {
    border-right: solid 1px #656464;
  }
  .block #time-table #time-warp table tbody tr:last-child th, .block #time-table #time-warp table tbody tr:last-child td {
    padding-bottom: 0.5rem;
  }
  .block #time-table #time-warp table td {
    border-right: none;
    padding: 0.5em;
    font-size: 2rem;
  }
}
@media all and (min-width: 767px) {
  .block {
    margin-top: 5rem;
    padding: 4.5rem;
  }
}
.link a {
  display: inline-block;
  margin-right: 2em;
  font-weight: 500;
  font-size: 2rem;
  line-height: 1;
  padding-left: 2.5rem;
  background-image: url(../img/link-arrow.svg);
  background-position: left center;
  background-repeat: no-repeat;
  background-size: contain;
}
.link a:hover {
  color: #C5CE00;
}

#pc-footer {
  padding: 4rem 0;
  text-align: center;
}
#pc-footer a {
  display: inline-block;
  margin: auto auto 2rem auto;
  padding: 3rem 6rem;
  font-size: 2.8rem;
  color: #6EA71A;
  font-weight: 700;
  line-height: 1;
  border-top: solid 1px #6EA71A;
  border-bottom: solid 1px #6EA71A;
}
#pc-footer a:hover {
  background-color: #6EA71A;
  color: white;
}
#pc-footer p.copy {
  margin: 6rem auto auto auto;
  font-size: 1.8rem;
}

@media all and (max-width: 991px) {
  #pc-footer {
    padding: 6rem 0;
  }
  #pc-footer p.copy {
    margin: 6rem auto auto auto;
    font-size: 1.7rem;
  }
}
#pc-accordion a h3 {
  background-color: #C5CE00;
  color: white;
  font-size: 2.2rem;
  text-align: center;
  border-radius: 0.5rem;
  padding: 1rem;
  margin-bottom: 1.5rem;
}
#pc-accordion a p {
  margin: auto;
  color: #656464;
}
#pc-accordion a:hover h3 {
  background-color: #6EA71A;
}
#pc-accordion a:hover p {
  color: #6EA71A;
}

#pc-feature a .thumb {
  overflow: hidden;
  margin-bottom: 1.5rem;
  border-radius: 5px;
}
#pc-feature a .thumb .image {
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  transition: all 0.3s ease-out;
  padding-bottom: 72%;
  border-radius: 5px;
}
#pc-feature a p {
  margin: auto;
  color: #656464;
}
#pc-feature a:hover .thumb .image {
  transform: scale(1.05);
}
#pc-feature a:hover p {
  color: #6EA71A;
}

#side {
  position: fixed;
  top: 0;
  right: 0;
  height: calc(100vh - 65px);
  height: calc(100dvh - 65px);
  margin-top: 65px;
  z-index: 9999;
  pointer-events: none;
  display: grid;
  place-items: center;
}
#side ul {
  width: 60px;
  pointer-events: auto;
}
#side ul li {
  margin: 1.5rem auto;
}
#side ul li a {
  display: block;
  background-color: #6EA71A;
  border-radius: 5px 0 0 5px;
}
#side ul li a:hover {
  background-color: #C5CE00;
}
#side ul li:last-child a {
  background-color: white;
}
#side ul li:last-child a:hover {
  background-color: #f0f0f0;
}

@media all and (max-width: 1399px) {
  #side {
    height: calc(100vh - 4.5vw);
    height: calc(100dvh - 4.5vw);
    margin-top: 4.5vw;
  }
}
@media all and (max-width: 1199px), (max-height: 699px) {
  #side ul {
    width: 48px;
  }
}
@media all and (max-width: 991px), (max-height: 640px) {
  #side {
    display: none !important;
  }
}
#mokuji {
  border-bottom: solid 1px #6EA71A;
  padding: 2rem 0 4.5rem 0;
}
#mokuji a {
  display: block;
  border: solid 1px #C5CE00;
  padding: 1rem;
  line-height: 1.4;
  font-weight: 500;
  font-size: 1.6rem;
  background-color: white;
  border-radius: 3px;
  text-align: center;
  font-weight: 700;
}
#mokuji a:hover {
  background-color: #C5CE00;
  color: white;
}

@media all and (max-width: 767px) {
  #mokuji {
    border-bottom: solid 1px #6EA71A;
    padding: 1.5rem 0 4rem 0;
  }
}
@media all and (min-width: 575px) {
  #page-content #own h3 {
    margin: auto;
    line-height: 0.9;
  }
  #page-content .cont h3.line {
    position: relative;
  }
  #page-content .cont h3.line .shiro {
    background-color: white;
    display: inline-block;
    padding-right: 1.5rem;
    z-index: 9;
    position: relative;
    font-size: 2.2rem;
  }
  #page-content .cont h3.line .shiro:before {
    content: "■ ";
  }
  #page-content .cont h3.line::after {
    content: "";
    background-color: #C7C7C7;
    position: absolute;
    bottom: 50%;
    left: 0;
    width: 100%;
    height: 1px;
  }
  #page-content .cont #hoken p.indent,
  #page-content .cont #hiyou p.indent {
    font-size: 1.6rem;
    text-indent: -1em;
    padding-left: 1em;
  }
  #page-content .cont #hoken ul {
    padding: 0;
  }
  #page-content .cont #hoken ul li {
    margin-bottom: 1rem;
    padding-left: 2rem;
    padding-bottom: 0.5rem;
  }
  #page-content .cont #hoken ul li:before {
    content: "・ ";
    position: absolute;
    font-weight: 700;
    top: 0;
    left: 0 !important;
  }
  #page-content .cont #hoken ul li::after {
    content: "";
    background-image: linear-gradient(to right, #000, #000 2px, transparent 2px, transparent 4px);
    background-size: 4px 1px;
    background-repeat: repeat-x;
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 1px;
  }
  #page-content .cont #hiyou .method-table {
    display: table;
    table-layout: fixed;
  }
  #page-content .cont #hiyou .method-table th, #page-content .cont #hiyou .method-table td {
    display: table-cell;
    font-size: 1.8rem;
    vertical-align: top;
    border: solid 1px #C7C7C7;
    text-align: left !important;
  }
  #page-content .cont #hiyou .method-table th {
    background-color: #f0f0f0;
  }
  #page-content .cont #nagare ol.maru li {
    position: relative;
    margin-bottom: 1rem;
    padding-bottom: 0.5rem;
  }
  #page-content .cont #nagare ol.maru li span {
    color: #C5CE00;
  }
  #page-content .cont #nagare ol.maru li::after {
    content: "";
    background-image: linear-gradient(to right, #000, #000 2px, transparent 2px, transparent 4px);
    background-size: 4px 1px;
    background-repeat: repeat-x;
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 1px;
  }
  #page-content .cont #date .waku {
    border: solid 1px #6EA71A;
    border-radius: 5px;
  }
  #page-content .cont #faq .dotted {
    display: none;
  }
  #page-content .cont .qr-box {
    line-height: 1.4;
    margin: 1.5rem auto;
  }
  #page-content .cont .qr-box .question,
  #page-content .cont .qr-box .answer {
    border: solid 1px #C7C7C7;
    padding: 1rem 1rem 1rem 6rem;
  }
  #page-content .cont .qr-box .question {
    pointer-events: auto;
    cursor: pointer;
  }
  #page-content .cont .qr-box .question span.arrow {
    position: absolute;
    top: 0;
    right: 0;
    height: 100%;
    aspect-ratio: 1/1;
    background-image: url(../img/link-arrow.svg);
    background-position: center center;
    background-repeat: no-repeat;
    background-size: 1.8rem;
    transform: rotate(180deg);
    transition: all 0.3s;
  }
  #page-content .cont .qr-box .question:hover {
    background-color: #F1F2E6;
  }
  #page-content .cont .qr-box .question.on {
    background-color: #F1F2E6;
    border: solid 1px #6EA71A;
  }
  #page-content .cont .qr-box .question.on .icon {
    border-right: solid 1px #6EA71A;
  }
  #page-content .cont .qr-box .question.on span.arrow {
    transform: rotate(90deg);
  }
  #page-content .cont .qr-box .question.on + .answer {
    border: solid 1px #6EA71A;
    border-top: none;
  }
  #page-content .cont .qr-box .question.on + .answer .icon {
    border-right: solid 1px #6EA71A;
  }
  #page-content .cont .qr-box .answer {
    margin: auto;
    display: none;
  }
  #page-content .cont .qr-box .icon {
    border-right: solid 1px #C7C7C7;
    padding: 1rem;
    width: 4.5rem;
  }
  #page-content .cont #type .illust {
    text-align: right;
  }
  #page-content .cont #type .illust img {
    border: solid 1px #707070;
    width: 100%;
    max-width: 180px;
  }
  #page-content .cont #alta .flow-table {
    margin-top: 1rem;
  }
  #page-content .cont #alta .flow-table th.d-sm-block {
    padding-right: 2rem;
    color: #C5CE00;
  }
  #page-content .cont #alta .flow-table th {
    font-size: 2rem;
  }
  #page-content .cont .price-box .price-box-inner {
    display: inline-block;
    border-bottom: solid 1px #C5CE00;
    padding-bottom: 0.5rem;
  }
  #page-content .cont .price-box .price-box-inner h3, #page-content .cont .price-box .price-box-inner p {
    line-height: 1;
    display: inline-block;
    margin: auto !important;
    font-size: 2rem;
  }
  #page-content .cont .price-box .price-box-inner h3 {
    padding-right: 1em;
  }
  #page-content .cont .price-box .price-box-inner h3.line::after {
    content: none;
  }
  #page-content .cont #own03 h3.green {
    margin-bottom: 2rem;
    font-size: 1.8rem;
    font-weight: 500;
    line-height: 1.5;
  }
  #page-content .cont #own03 h3.green br {
    display: none;
  }
  #page-content .cont table td.w180 {
    width: 150px;
  }
  #page-content .cont #own04 .kobe h3 {
    font-weight: 500;
    border-bottom: solid 1px #C5CE00;
    padding-bottom: 1.5rem;
    margin-bottom: 1.5rem;
    font-size: 2.2rem;
  }
  #page-content .cont #own04 .kobe h3 span {
    font-weight: 500;
  }
  #page-content .cont #own04 .kobe h3.line::after {
    content: none;
  }
  #page-content .cont #own04 h4.box {
    margin: auto;
    background-color: #E8EBA1;
    font-size: 1.8rem;
  }
  #page-content .cont #own04 .own04-inner {
    border-left: solid 1px #707070;
    border-right: solid 1px #707070;
    padding: 2rem;
  }
  #page-content .cont #own04 .own04-inner ol, #page-content .cont #own04 .own04-inner p {
    margin: auto;
  }
  #page-content .cont #own04 .own04-last {
    border-bottom: solid 1px #707070;
  }
  #page-content .cont #add02 h3.line .shiro {
    color: #656464;
    font-size: 2rem;
  }
  #page-content .cont #add02 h3.line .shiro:before {
    content: none !important;
  }
  #page-content #access #gmap {
    padding-top: 45%;
    margin-bottom: 2rem;
  }
}
@media all and (min-width: 767px) {
  #page-content .cont #kensa .price-table th, #page-content .cont #kensa .price-table td {
    display: table-cell;
    width: auto;
    border: solid 1px #C7C7C7;
    font-size: 1.8rem;
    color: #656464;
    font-weight: 500;
    padding: 1rem 1.5rem;
    vertical-align: top !important;
    text-align: left !important;
  }
  #page-content .cont #kensa .price-table th p, #page-content .cont #kensa .price-table td p {
    padding: 0 1rem;
  }
  #page-content .cont #kensa .price-table th {
    white-space: nowrap;
    background-color: #f0f0f0 !important;
  }
  #page-content .cont #kensa .price-table td {
    padding-left: 2rem !important;
  }
  #page-content .cont table td.w180 {
    width: 180px;
  }
}
@media all and (min-width: 991px) {
  #page-content .cont #type .illust {
    text-align: left;
  }
}
.wp-pagenavi {
  justify-content: center;
  display: flex;
  max-width: 500px;
  margin: 3rem auto auto auto;
}
.wp-pagenavi a, .wp-pagenavi span {
  line-height: 1;
  font-weight: 500;
  color: #6EA71A;
  margin: auto 0.5rem;
}
.wp-pagenavi a.page,
.wp-pagenavi span.current {
  display: inline-block;
  border: solid 1px #6EA71A;
  width: 6%;
  max-width: 50%;
  aspect-ratio: 5/5;
  display: grid;
  place-items: center;
  position: relative;
  border-radius: 50%;
}
.wp-pagenavi a.page:hover {
  background-color: #C5CE00;
  border: solid 1px #C5CE00;
  color: white;
}
.wp-pagenavi a.previouspostslink:hover,
.wp-pagenavi a.nextpostslink:hover {
  color: #C5CE00;
}
.wp-pagenavi span.current {
  background-color: #6EA71A;
  color: white;
}

@media all and (max-width: 575px) {
  .wp-pagenavi {
    margin: 2rem auto auto auto;
  }
}
#post .title {
  margin-bottom: 1.5rem;
}
#post p.date {
  color: #6EA71A;
}
#post #content {
  line-height: 2;
}
#post #content p {
  line-height: 2;
}
#post #back {
  text-align: center;
  margin-top: 4%;
}
#post #back a {
  display: inline-block;
  background-color: #8CB808;
  color: white;
  padding: 1.2rem 3rem;
  line-height: 1;
  border-radius: 3rem;
}
#post #back a:hover {
  background-color: #C5CE00;
}

@media all and (max-width: 575px) {
  #post .title h3 {
    font-size: 2.4rem;
    color: #6EA71A;
    font-weight: 700;
    line-height: 1.5;
    margin: auto;
  }
  #post p.date {
    border-bottom: solid 1px #C5CE00;
    padding-bottom: 1rem;
    margin-bottom: 1.5rem;
  }
  #post #content {
    line-height: 1.8;
  }
  #post #content p {
    line-height: 1.8;
  }
  #post #back {
    margin-top: 3rem;
  }
}
#dialog {
  background-color: #6EA71A;
  border-radius: 5px;
  color: #6EA71A;
  padding: 3rem 6rem;
  display: none;
}
#dialog #pc-footer a {
  pointer-events: none;
  color: white;
  border-top: solid 2px white;
  border-bottom: solid 2px white;
}
#dialog #pc-footer p {
  font-weight: 500;
  color: white;
  margin: auto;
}

@media all and (max-width: 575px) {
  .addition #page-title {
    padding-bottom: 1.6rem !important;
  }
}
#rehab .img {
  margin-bottom: 1rem;
}
#rehab p {
  margin: auto;
  line-height: 1.4;
}
#rehab p small {
  line-height: 1.4;
}

/* Print styles
-------------------------------------------------------------------------------*/
@media print {
  a[href]:after {
    content: "" !important;
  }
  abbr[title]:after {
    content: "" !important;
  }
}/*# sourceMappingURL=common.css.map */