@charset "UTF-8";
#pagetitle {
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
  height: 280px;
  display: flex;
  justify-content: center;
  align-items: center; }
  @media (max-width: 991.98px) {
    #pagetitle {
      height: 175px;
      margin-top: 50px; } }
  #pagetitle h2 {
    text-align: center; }
    #pagetitle h2 div:first-child {
      color: #004f28;
      font-size: 40px;
      margin-bottom: 20px;
      line-height: 1; }
      @media (max-width: 991.98px) {
        #pagetitle h2 div:first-child {
          font-size: 35px;
          margin-bottom: 10px; } }
    #pagetitle h2 div:last-child {
      color: #74ba29;
      font-size: 16px;
      font-family: 'Montserrat', sans-serif;
      line-height: 1;
      font-weight: bold; }
      @media (max-width: 991.98px) {
        #pagetitle h2 div:last-child {
          font-size: 14px; } }
  #pagetitle.doctor {
    background-image: url("../img/pages/title-doctor.jpg"); }
    @media (max-width: 991.98px) {
      #pagetitle.doctor {
        background-image: url("../img/pages/title-doctor_sp.jpg"); } }
  #pagetitle.works {
    background-image: url("../img/pages/title-doctor.jpg"); }
    @media (max-width: 991.98px) {
      #pagetitle.works {
        background-image: url("../img/pages/title-doctor_sp.jpg"); } }
  #pagetitle.services {
    background-image: url("../img/pages/title-services.jpg"); }
    @media (max-width: 991.98px) {
      #pagetitle.services {
        background-image: url("../img/pages/title-services_sp.jpg"); } }
  #pagetitle.facilities {
    background-image: url("../img/facilities/title.jpg"); }
    @media (max-width: 991.98px) {
      #pagetitle.facilities {
        background-image: url("../img/facilities/title_sp.jpg"); } }
  #pagetitle.news {
    background-image: url("../img/pages/title-news.jpg"); }
    @media (max-width: 991.98px) {
      #pagetitle.news {
        background-image: url("../img/pages/title-news_sp.jpg"); } }
  #pagetitle.reservation {
    background-image: url("../img/pages/title-reservation.jpg"); }
    @media (max-width: 991.98px) {
      #pagetitle.reservation {
        background-image: url("../img/pages/title-reservation_sp.jpg"); } }

.topicpath {
  padding: 20px 0 80px; }
  .topicpath a {
    color: #74ba29;
    text-decoration: none; }
    .topicpath a:hover {
      text-decoration: underline; }

.main p {
  margin-bottom: 2em; }
.main .title {
  margin-bottom: 40px;
  color: #004f28;
  font-size: 28px;
  font-weight: bold; }
  @media (max-width: 991.98px) {
    .main .title {
      margin-bottom: 30px;
      margin-top: 40px;
      text-align: center; } }
.main .tit {
  color: #004f28;
  font-size: 18px;
  background-image: url("../img/common/tit.png");
  background-repeat: no-repeat;
  background-position: left 2px;
  background-size: 1em;
  padding-left: 1.5em;
  margin-bottom: 0.5em;
  font-weight: bold; }
.main .t {
  color: #004f28;
  font-weight: bold;
  margin-bottom: 1em;
  font-size: 18px; }

#pagefooter {
  margin-top: 40px; }
  @media (min-width: 992px) {
    #pagefooter {
      margin-top: 80px;
      border-top: 1px solid #d4d2cd; } }
  #pagefooter .col-12 {
    padding-top: 80px;
    padding-bottom: 80px; }
    @media (max-width: 991.98px) {
      #pagefooter .col-12 {
        padding-top: 0;
        padding-bottom: 40px; } }
  #pagefooter .title {
    color: #004f28;
    font-size: 28px;
    font-weight: bold;
    margin-bottom: 50px; }
    @media (max-width: 991.98px) {
      #pagefooter .title {
        text-align: center;
        margin-bottom: 40px; } }
  @media (min-width: 992px) {
    #pagefooter #access {
      border-right: 1px solid #d4d2cd;
      padding-right: 80px; } }
  @media (max-width: 991.98px) {
    #pagefooter #access {
      padding-top: 40px; } }
  #pagefooter #access .fw-bold {
    font-size: 16px; }
  #pagefooter #access .map {
    position: relative;
    z-index: -1;
    padding-top: 90%;
    height: 0;
    overflow: hidden;
    margin-bottom: 20px; }
    @media (max-width: 991.98px) {
      #pagefooter #access .map {
        margin-left: calc(var(--bs-gutter-x) * (-0.5));
        margin-right: calc(var(--bs-gutter-x) * (-0.5)); } }
  #pagefooter #access .bt01 {
    margin: 30px 0; }
    #pagefooter #access .bt01 a {
      min-width: 250px; }
  #pagefooter #time {
    font-size: 16px; }
    #pagefooter #time .title {
      margin-bottom: 30px; }
    @media (min-width: 992px) {
      #pagefooter #time {
        padding-left: 80px; } }
    #pagefooter #time .subject {
      color: #004f28; }
    #pagefooter #time div + .title {
      margin-top: 80px;
      margin-bottom: 30px; }
    #pagefooter #time ul {
      margin: 25px 0; }
    #pagefooter #time table {
      margin-bottom: 25px;
      width: 100%;
      max-width: 520px; }
      #pagefooter #time table tr:not(:first-child) {
        border-top: 1px solid #d4d2cd; }
        #pagefooter #time table tr:not(:first-child) td {
          color: #74ba29; }
      #pagefooter #time table th, #pagefooter #time table td {
        background-color: #fff;
        border-right: 1px solid #d4d2cd;
        font-weight: normal; }
      #pagefooter #time table td {
        padding: 1em;
        text-align: center; }
      @media (max-width: 991.98px) {
        #pagefooter #time table {
          font-size: 13px; }
          #pagefooter #time table td {
            padding: 0.5em; } }
    #pagefooter #time span {
      color: #74ba29; }

#doctor .lead {
  font-family: 'Noto Serif JP', "游明朝" , "Yu Mincho" , "游明朝体" , "YuMincho" , "ヒラギノ明朝 Pro W3" , "Hiragino Mincho Pro" , "HiraMinProN-W3" , "HGS明朝E" , "ＭＳ Ｐ明朝" , "MS PMincho" , serif;
  color: #004f28;
  font-size: 36px;
  margin-bottom: 60px; }
  @media (max-width: 991.98px) {
    #doctor .lead {
      font-size: 27px;
      margin-bottom: 40px;
      margin-top: 40px; } }
@media (min-width: 992px) {
  #doctor .col-lg-5 {
    padding-right: 50px; } }
#doctor .d-flex div:first-child {
  width: 5em;
  flex-shrink: 0; }
#doctor .d-flex div:last-child {
  justify-content: space-between; }
#doctor .text-end span {
  font-size: 110%; }
#doctor .row + .row {
  margin-top: 70px; }
@media (max-width: 991.98px) {
  #doctor ul + ul {
    margin-top: 50px; } }
#doctor .bt01 {
  margin-bottom: 80px;
  text-align: right; }
  #doctor .bt01 a {
    display: inline-block;
    font-weight: bold; }
#doctor #column {
  padding: 50px 40px;
  border: 1px solid #000; }
  #doctor #column .head {
    margin-bottom: 40px;
    text-align: center;
    color: #004f28;
    border-bottom: 1px solid #000; }
    #doctor #column .head div:last-child {
      font-size: 28px;
      margin: 10px 0; }
  @media (max-width: 991.98px) {
    #doctor #column {
      padding: 25px 20px; }
      #doctor #column .head {
        margin-bottom: 30px; }
        #doctor #column .head div:first-child {
          font-size: 16px; } }

#works p strong {
  color: #74ba29; }

.main.services #main .top {
  margin-bottom: 80px;
  border-bottom: 1px solid #000; }
  .main.services #main .top h3 {
    padding-top: 100px;
    margin-bottom: 50px;
    color: #004f28;
    font-size: 32px;
    text-align: center;
    background-repeat: no-repeat;
    background-position: center top;
    background-size: auto 85px; }
    .main.services #main .top h3 span {
      display: inline-block;
      font-size: 18px; }
    @media (max-width: 991.98px) {
      .main.services #main .top h3 {
        padding-top: 150px;
        background-position: center 50px; } }
  .main.services #main .top h4 {
    color: #004f28;
    font-size: 20px;
    font-weight: bold; }
  .main.services #main .top p {
    margin-bottom: 50px;
    line-height: 1.8; }
.main.services #main .box {
  margin-top: 80px;
  border: 1px solid #000;
  padding: 40px; }
  @media (max-width: 991.98px) {
    .main.services #main .box {
      padding: 20px; } }
  .main.services #main .box .head {
    color: #004f28;
    border-bottom: 1px solid #000;
    padding: 10px 0;
    font-size: 28px;
    margin-bottom: 40px;
    text-align: center; }
@media (max-width: 991.98px) {
  .main.services aside {
    margin-top: 80px; } }
@media (min-width: 992px) {
  .main.services aside {
    padding-left: 60px; } }
.main.services aside ul {
  border-radius: 10px;
  box-shadow: 0px 0px 7px 0px rgba(37, 36, 35, 0.2); }
.main.services aside li:not(:last-child) {
  border-bottom: 1px solid #d4d2cd; }
.main.services aside a {
  display: flex;
  align-items: center;
  color: #004f28;
  text-decoration: none;
  padding: 20px 20px 20px 80px;
  background-repeat: no-repeat;
  background-position: 10px center;
  background-size: 60px auto;
  min-height: 110px; }
  @media (max-width: 991.98px) {
    .main.services aside a {
      padding: 15px 15px 15px 100px;
      min-height: inherit;
      background-position: 20px center; } }
  .main.services aside a:hover {
    background-color: #e3f1d4; }
  .main.services aside a div {
    width: 100%; }
    .main.services aside a div div:first-child {
      padding-bottom: 5px;
      margin-bottom: 5px;
      font-size: 13px;
      border-bottom: 1px solid #004f28; }
    .main.services aside a div div:last-child {
      font-size: 20px; }
      .main.services aside a div div:last-child span {
        display: block;
        font-size: 13px; }
.main.services aside li.seikatsu a {
  background-image: url("../img/pages/services-seikatsu.png"); }
.main.services aside li.endoscope a {
  background-image: url("../img/pages/services-endoscope.png"); }
.main.services aside li.hepatitis a {
  background-image: url("../img/pages/services-hepatitis.png"); }
.main.services aside li.exams a {
  background-image: url("../img/pages/services-exams.png"); }
.main.services aside li.chinese a {
  background-image: url("../img/pages/services-kanpo.png"); }

#services ul.list {
  border-top: 1px solid #d4d2cd; }
  #services ul.list li {
    border-bottom: 1px solid #d4d2cd;
    align-items: center; }
    #services ul.list li > div {
      padding-top: 30px;
      padding-bottom: 30px; }
    @media (min-width: 992px) {
      #services ul.list li .col-lg-8 {
        border-right: 1px solid #d4d2cd;
        padding-right: 35px; } }
    #services ul.list li .col-lg-8 .tit span {
      display: block;
      margin-top: 5px;
      font-size: 80%;
      font-weight: normal; }
    @media (max-width: 991.98px) {
      #services ul.list li .col-lg-4 {
        padding-top: 0; } }
    @media (min-width: 992px) {
      #services ul.list li .col-lg-4 {
        padding-left: 30px; } }
    #services ul.list li .col-lg-4 .bt01 a {
      min-width: inherit; }
    #services ul.list li p {
      margin-bottom: 0; }
  #services ul.list + .title {
    margin-top: 80px; }
#services .box li {
  margin-bottom: 10px; }
#services .box a {
  color: #339900;
  text-decoration: none; }
  #services .box a:hover {
    text-decoration: underline; }

#seikatsu .top h3 {
  background-image: url("../img/pages/services-seikatsu.png"); }
#seikatsu .attention h4 {
  color: #004f28;
  font-size: 28px;
  font-weight: bold;
  margin-bottom: 30px; }
  @media (max-width: 991.98px) {
    #seikatsu .attention h4 {
      text-align: center; } }
#seikatsu .attention .tr {
  display: flex;
  align-items: center;
  border-bottom: 1px solid #d4d2cd; }
#seikatsu .attention .th, #seikatsu .attention .td {
  padding: 1em; }
#seikatsu .attention .thead .th {
  background-color: #e3f1d4;
  color: #004f28;
  text-align: center;
  font-weight: bold; }
  @media (min-width: 992px) {
    #seikatsu .attention .thead .th:first-child {
      flex: 1 1 auto; }
    #seikatsu .attention .thead .th:last-child {
      width: 13em;
      flex-shrink: 0; } }
@media (min-width: 992px) {
  #seikatsu .attention .tbody {
    display: flex; } }
#seikatsu .attention .tbody .th {
  background-color: #eef7e5;
  color: #004f28;
  font-weight: bold;
  border-bottom: 1px solid #d4d2cd; }
  @media (min-width: 992px) {
    #seikatsu .attention .tbody .th {
      width: 13em;
      flex-shrink: 0;
      display: flex;
      align-items: center; }
      #seikatsu .attention .tbody .th + div {
        flex: 1 1 auto; } }
  @media (max-width: 991.98px) {
    #seikatsu .attention .tbody .th {
      background-color: #e3f1d4;
      text-align: center; } }
@media (min-width: 992px) {
  #seikatsu .attention .tbody .td:first-child {
    flex: 1 1 auto; }
  #seikatsu .attention .tbody .td:last-child {
    width: 13em;
    flex-shrink: 0; } }
@media (max-width: 991.98px) {
  #seikatsu .attention .tbody .td {
    width: 50%;
    align-self: stretch;
    display: flex;
    align-items: center; }
    #seikatsu .attention .tbody .td:last-child {
      border-left: 1px solid #d4d2cd; } }
#seikatsu .attention .tr.d-lg-none .td {
  display: block;
  background-color: #eef7e5;
  color: #004f28;
  text-align: center; }
@media (min-width: 992px) {
  #seikatsu .attention .tr.d-lg-none + .tr {
    flex: 1 1 auto; } }
#seikatsu .title {
  margin-top: 80px; }
@media (min-width: 992px) {
  #seikatsu .d-lg-flex div {
    width: 170px;
    flex-shrink: 0; }
  #seikatsu .d-lg-flex p {
    padding-left: 30px;
    flex: 1 1 auto; } }
@media (max-width: 991.98px) {
  #seikatsu .d-lg-flex p {
    margin-top: 20px; } }
#seikatsu .box .col-lg-5 p {
  font-size: 14px; }
@media (max-width: 991.98px) {
  #seikatsu .box .col-lg-5 {
    margin-bottom: 20px; } }

#home .top h3 {
  background-image: url("../img/pages/services-home.png"); }

#hepatitis .top h3 {
  background-image: url("../img/pages/services-hepatitis.png"); }

#exams .top h3 {
  background-image: url("../img/pages/services-exams.png"); }
#exams .bt01 {
  margin: 0 auto;
  max-width: 350px; }
#exams .btn01 {
  margin-bottom: 100px; }
#exams .tit {
  margin-bottom: 30px; }
#exams .tbl {
  border-top: 1px solid #d4d2cd;
  border-left: 1px solid #d4d2cd; }
  #exams .tbl .th, #exams .tbl .td {
    border-right: 1px solid #d4d2cd;
    align-self: stretch;
    display: flex;
    align-items: center;
    line-height: 1.2; }
  #exams .tbl .thead, #exams .tbl .tr {
    display: flex;
    align-items: center;
    border-bottom: 1px solid #d4d2cd; }
  #exams .tbl .td {
    padding: 1em 0; }
  #exams .tbl .tr-tit {
    font-weight: bold;
    padding: 1em;
    border-right: 1px solid #d4d2cd;
    border-bottom: 1px solid #d4d2cd; }
@media (max-width: 991.98px) {
  #exams .tbl1 .thead, #exams .tbl1 .tr {
    flex-wrap: wrap; } }
#exams .tbl1 .thead1 {
  background-color: #e3f1d4;
  font-weight: bold; }
  #exams .tbl1 .thead1 .td {
    color: #004f28; }
#exams .tbl1 .thead2 {
  background-color: #eef7e5; }
  #exams .tbl1 .thead2 .td {
    color: #000; }
#exams .tbl1 .th {
  flex-shrink: 0;
  width: 40%;
  padding: 1em; }
  @media (max-width: 991.98px) {
    #exams .tbl1 .th {
      border-bottom: 1px solid #d4d2cd;
      width: 100%; } }
#exams .tbl1 .td {
  text-align: center;
  color: #74ba29;
  flex: 1;
  justify-content: center; }
#exams .text-lg-end {
  margin: 30px 0 60px; }
  @media (max-width: 991.98px) {
    #exams .text-lg-end {
      margin-top: 15px; } }
#exams .tbl2 .th, #exams .tbl2 .td {
  padding: 1em; }
#exams .tbl2 .th {
  padding: 0;
  flex: 1 1 auto; }
  @media (min-width: 992px) {
    #exams .tbl2 .th div {
      padding: 1em; }
    #exams .tbl2 .th div:first-child {
      width: 40%;
      flex-shrink: 0;
      border-right: 1px solid #d4d2cd; }
    #exams .tbl2 .th div:last-child {
      flex: 1 1 auto; } }
#exams .tbl2 .td {
  flex-shrink: 0;
  width: 20%; }
  @media (max-width: 991.98px) {
    #exams .tbl2 .td {
      width: 25%; } }
#exams .tbl2 .thead {
  background-color: #e3f1d4;
  font-weight: bold; }
  #exams .tbl2 .thead .th, #exams .tbl2 .thead .td {
    justify-content: center;
    color: #004f28;
    text-align: center; }
@media (max-width: 991.98px) {
  #exams .tbl2 .tr .th {
    display: block;
    padding: 1em; } }
#exams .text-center {
  margin: 40px 0 30px; }

#chinese #main .top {
  margin-bottom: 0;
  border-bottom: 0; }
  #chinese #main .top p {
    margin-bottom: 0; }
  #chinese #main .top h3 {
    background-image: url("../img/pages/services-kanpo.png"); }

#endoscope .top h3 {
  background-image: url("../img/pages/services-endoscope.png"); }
#endoscope section .tit {
  margin-top: 50px;
  margin-bottom: 30px; }
#endoscope .title:not(:first-child) {
  margin-top: 90px; }
#endoscope .d-lg-flex .order-lg-first {
  text-align: center; }
  #endoscope .d-lg-flex .order-lg-first div {
    font-size: 14px;
    margin-top: 20px;
    text-align: left; }
@media (min-width: 992px) {
  #endoscope .d-lg-flex div {
    width: 280px;
    flex-shrink: 0; }
  #endoscope .d-lg-flex p {
    padding-left: 30px;
    flex: 1 1 auto; } }
@media (max-width: 991.98px) {
  #endoscope .d-lg-flex p {
    margin-top: 20px; } }
#endoscope .flow {
  position: relative;
  padding: 20px 40px 40px;
  border: 1px solid #004f28; }
  @media (max-width: 991.98px) {
    #endoscope .flow {
      padding: 10px 20px 20px; } }
  #endoscope .flow .head {
    color: #004f28;
    border-bottom: 1px solid #000;
    padding: 10px 0;
    font-size: 28px;
    margin-bottom: 25px;
    text-align: center;
    font-family: 'Noto Serif JP', "游明朝" , "Yu Mincho" , "游明朝体" , "YuMincho" , "ヒラギノ明朝 Pro W3" , "Hiragino Mincho Pro" , "HiraMinProN-W3" , "HGS明朝E" , "ＭＳ Ｐ明朝" , "MS PMincho" , serif; }
    @media (max-width: 991.98px) {
      #endoscope .flow .head {
        font-size: 21px;
        margin-bottom: 15px; } }
  #endoscope .flow .ttl {
    color: #004f28;
    font-weight: bold;
    text-align: center; }
  #endoscope .flow p {
    margin-bottom: 0;
    margin-top: 20px; }
    @media (max-width: 991.98px) {
      #endoscope .flow p {
        margin-top: 10px; } }
  #endoscope .flow + .flow {
    margin-top: 40px; }
    #endoscope .flow + .flow::before {
      content: "";
      border-right: 1px solid #004f28;
      border-top: 1px solid #004f28;
      content: "";
      display: block;
      height: 20px;
      width: 20px;
      position: absolute;
      -webkit-transform: rotate(135deg);
      transform: rotate(135deg);
      top: -35px;
      left: 50%;
      margin-left: -10px; }
  #endoscope .flow.last {
    margin-bottom: 20px;
    padding-bottom: 0; }
    #endoscope .flow.last .head {
      border-bottom: none;
      margin-bottom: 0; }
  #endoscope .flow.last2 {
    margin-bottom: 20px; }
#endoscope .main ul {
  border-top: 1px solid #d4d2cd; }
  #endoscope .main ul li {
    display: flex;
    border-bottom: 1px solid #d4d2cd;
    align-items: center; }
    #endoscope .main ul li div {
      padding: 1em;
      width: 10em;
      align-self: stretch; }
      @media (max-width: 991.98px) {
        #endoscope .main ul li div {
          width: 7.5em; } }
    #endoscope .main ul li div:first-child {
      display: flex;
      align-items: center;
      background-color: #e3f1d4;
      flex-shrink: 0;
      color: #004f28; }
    #endoscope .main ul li div:last-child {
      flex: 1 1 auto; }
      @media (max-width: 991.98px) {
        #endoscope .main ul li div:last-child {
          padding-right: 0; } }
#endoscope .camera {
  border-top: 1px solid #d4d2cd; }
  #endoscope .camera li {
    justify-content: center;
    border-bottom: 1px solid #d4d2cd; }
    #endoscope .camera li div {
      padding: 1em 1.5em; }
    #endoscope .camera li div:first-child {
      display: flex;
      align-items: center;
      background-color: #eff9db;
      color: #004f28;
      width: 140px;
      flex-shrink: 0;
      font-weight: bold; }
    #endoscope .camera li div:last-child {
      flex: 1 1 auto; }
    @media (max-width: 991.98px) {
      #endoscope .camera li div:first-child {
        width: 8em; } }

@media (max-width: 991.98px) {
  #facilities {
    padding-top: 45px; } }
#facilities .photo .col-12 {
  margin-bottom: 30px; }
#facilities .photo .name {
  margin: 15px 0 10px;
  color: #004f28;
  text-align: center;
  font-weight: bold; }
#facilities .box {
  border: 1px solid #000;
  padding: 40px; }
  @media (max-width: 991.98px) {
    #facilities .box {
      padding: 20px; } }
  #facilities .box .head {
    color: #004f28;
    border-bottom: 1px solid #000;
    padding: 10px 0;
    font-size: 28px;
    margin-bottom: 40px;
    text-align: center; }

#news .newslist li {
  margin-bottom: 2em; }
  @media (min-width: 992px) {
    #news .newslist li {
      display: flex; } }
  #news .newslist li .date {
    font-size: 14px; }
    @media (min-width: 992px) {
      #news .newslist li .date {
        flex-shrink: 0;
        width: 6em;
        padding-right: 2em; } }
    @media (max-width: 991.98px) {
      #news .newslist li .date {
        display: inline-block; } }
  #news .newslist li .cat {
    width: 7em; }
    @media (min-width: 992px) {
      #news .newslist li .cat {
        flex-shrink: 0; } }
    @media (max-width: 991.98px) {
      #news .newslist li .cat {
        display: inline-block; } }
    #news .newslist li .cat span {
      display: block;
      background-color: #74ba29;
      color: #fff;
      font-size: 14px;
      text-align: center; }
  @media (min-width: 992px) {
    #news .newslist li .txt {
      padding-left: 2em;
      flex: 1 1 auto; } }
  @media (max-width: 991.98px) {
    #news .newslist li .txt {
      padding-top: 5px; } }
  #news .newslist li a {
    text-decoration: none;
    color: #339900; }
    #news .newslist li a:hover {
      text-decoration: underline; }
@media (max-width: 991.98px) {
  #news aside {
    margin-top: 80px; } }
@media (min-width: 992px) {
  #news aside {
    padding-left: 60px; } }
#news .categories {
  border-radius: 10px;
  box-shadow: 0px 0px 7px 0px rgba(37, 36, 35, 0.2); }
  #news .categories div {
    text-align: center;
    color: #004f28;
    border-bottom: 1px solid #d4d2cd;
    padding: 2em 1em 1em;
    font-weight: bold;
    font-family: 'Montserrat', sans-serif; }
  #news .categories li:not(:last-child) {
    border-bottom: 1px solid #d4d2cd; }
  #news .categories a {
    display: flex;
    align-items: center;
    color: #004f28;
    text-decoration: none;
    padding: 1em 1.5em;
    position: relative; }
    #news .categories a::after {
      border-right: 1px solid #004f28;
      border-top: 1px solid #004f28;
      content: "";
      display: block;
      height: 10px;
      width: 10px;
      right: 20px;
      position: absolute;
      top: 50%;
      -webkit-transform: rotate(45deg) translate(0, -50%);
      transform: rotate(45deg) translate(0, -50%); }
    #news .categories a:hover {
      background-color: #e3f1d4; }
#news .pager {
  display: flex;
  justify-content: center;
  align-items: center;
  margin-top: 80px; }
  #news .pager a, #news .pager span {
    color: #004f28;
    font-family: 'Montserrat', sans-serif;
    margin: 0 30px; }
  #news .pager a:not(.bt) {
    color: #339900;
    text-decoration: none; }
    #news .pager a:not(.bt):hover {
      text-decoration: underline; }
    #news .pager a:not(.bt).prev, #news .pager a:not(.bt).next {
      font-size: 0; }
      #news .pager a:not(.bt).prev::after, #news .pager a:not(.bt).next::after {
        border-right: 2px solid #339900;
        border-top: 2px solid #339900;
        content: "";
        display: inline-block;
        height: 10px;
        width: 10px;
        -webkit-transform: rotate(45deg);
        transform: rotate(45deg); }
    #news .pager a:not(.bt).prev::after {
      -webkit-transform: rotate(-135deg);
      transform: rotate(-135deg); }
#news article .head {
  border-bottom: 1px solid #d4d2cd;
  margin-bottom: 40px; }
  @media (max-width: 991.98px) {
    #news article .head {
      margin-top: 30px; } }
#news article .date {
  display: inline-block;
  font-size: 14px;
  margin-right: 3em; }
#news article .cat {
  width: 6em;
  display: inline-block; }
  #news article .cat span {
    display: block;
    background-color: #74ba29;
    color: #fff;
    font-size: 14px;
    text-align: center; }
#news article .title {
  margin-top: 35px; }
#news article p {
  line-height: 1.8; }

#reservation .title {
  margin-bottom: 35px; }
#reservation div.tel {
  color: #004f28;
  font-size: 52px;
  font-family: 'Montserrat', sans-serif;
  margin-bottom: 35px; }
  #reservation div.tel i {
    font-size: 36px;
    vertical-align: middle;
    margin-right: 10px; }
#reservation div.time {
  color: #004f28;
  margin-bottom: 80px; }
#reservation .tr, #reservation tr {
  display: flex;
  border-top: 1px solid #d4d2cd; }
#reservation .th, #reservation .td, #reservation th, #reservation td {
  display: flex;
  align-items: center; }
  #reservation .th p, #reservation .td p, #reservation th p, #reservation td p {
    margin-bottom: 0; }
#reservation .th, #reservation th {
  flex-shrink: 0;
  background-color: #eef7e5;
  color: #004f28;
  padding: 1.5em;
  font-weight: bold;
  width: 30%;
  justify-content: space-between; }
  #reservation .th legend, #reservation th legend {
    float: none;
    margin-bottom: 0;
    font-size: 1em; }
  #reservation .th .need, #reservation th .need {
    flex-shrink: 0;
    background-color: #ff4000;
    color: #fff;
    padding: 2px 10px;
    font-size: 14px;
    font-weight: normal; }
#reservation .td, #reservation td {
  flex: 1 1 auto;
  padding: 1em 1.5em; }
  #reservation .td div, #reservation td div {
    width: 100%; }
  #reservation .td input, #reservation .td textarea, #reservation .td select, #reservation td input, #reservation td textarea, #reservation td select {
    padding: 5px;
    border-radius: 2px;
    border: 1px solid #dde0e3; }
  #reservation .td input[type="text"], #reservation .td input[type="email"], #reservation .td input[type="tel"], #reservation td input[type="text"], #reservation td input[type="email"], #reservation td input[type="tel"] {
    max-width: 300px; }
  #reservation .td label, #reservation td label {
    cursor: pointer; }
  #reservation .td .wpcf7-list-item, #reservation td .wpcf7-list-item {
    margin: 0; }
  #reservation .td .kensa, #reservation td .kensa {
    margin: -5px 0; }
    #reservation .td .kensa .wpcf7-list-item, #reservation td .kensa .wpcf7-list-item {
      width: 11em;
      margin: 5px 0; }
    #reservation .td .kensa .wpcf7-list-item:nth-child(3),
    #reservation .td .kensa .wpcf7-list-item:nth-child(6),
    #reservation .td .kensa .wpcf7-list-item:nth-child(8), #reservation td .kensa .wpcf7-list-item:nth-child(3),
    #reservation td .kensa .wpcf7-list-item:nth-child(6),
    #reservation td .kensa .wpcf7-list-item:nth-child(8) {
      clear: both; }
  #reservation .td.year span, #reservation td.year span {
    margin-right: 10px; }
  #reservation .td.year select, #reservation td.year select {
    padding: 5px 15px; }
  #reservation .td.year .month1, #reservation .td.year .day1, #reservation td.year .month1, #reservation td.year .day1 {
    margin-left: 2em; }
  #reservation .td .sex label:first-child, #reservation td .sex label:first-child {
    margin-right: 100px; }
  #reservation .td .sex .wpcf7-list-item-label, #reservation td .sex .wpcf7-list-item-label {
    padding-left: 10px; }
  #reservation .td .address input, #reservation .td textarea, #reservation td .address input, #reservation td textarea {
    width: 90%; }
  #reservation .td .date, #reservation td .date {
    margin-bottom: 10px; }
  #reservation .td .date1, #reservation .td .date2, #reservation td .date1, #reservation td .date2 {
    margin-left: 10px; }
  #reservation .td a, #reservation td a {
    color: #339900;
    text-decoration: none; }
    #reservation .td a:hover, #reservation td a:hover {
      text-decoration: underline; }
#reservation .confirm {
  border-top: 1px solid #d4d2cd;
  padding-top: 40px; }
  #reservation .confirm .bt01 input {
    border: none;
    margin: 0 auto; }
#reservation .wpcf7cp-form-hide {
  height: 0; }
#reservation .none, #reservation legend {
  display: none; }
#reservation div#wpcf7cpcnf {
  position: relative;
  z-index: 0; }
  #reservation div#wpcf7cpcnf table {
    width: 100%; }
  #reservation div#wpcf7cpcnf .none, #reservation div#wpcf7cpcnf legend {
    display: block; }
#reservation .wpcf7cp-btns {
  border-top: 1px solid #d4d2cd;
  padding-top: 40px;
  margin-top: 0;
  text-align: center; }
  #reservation .wpcf7cp-btns .wpcf7-form-control {
    border: none;
    font-weight: bold;
    background: #75ba29;
    /* Old browsers */
    background: -moz-linear-gradient(left, #75ba29 10%, #009140 100%);
    /* FF3.6-15 */
    background: -webkit-linear-gradient(left, #75ba29 10%, #009140 100%);
    /* Chrome10-25,Safari5.1-6 */
    background: linear-gradient(to right, #75ba29 10%, #009140 100%);
    /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
    min-width: 250px;
    color: #fff !important;
    text-align: center;
    border-radius: 5px;
    padding: 20px;
    line-height: 1;
    font-family: 'Montserrat', sans-serif;
    text-decoration: none;
    letter-spacing: 0.1em;
    overflow: hidden;
    font-size: 16px; }
    #reservation .wpcf7cp-btns .wpcf7-form-control:hover {
      background: #74ba29;
      background: -moz-linear-gradient(left, #74ba29 10%, #74ba29 100%);
      background: -webkit-linear-gradient(left, #74ba29 10%, #74ba29 100%);
      background: linear-gradient(to right, #74ba29 10%, #74ba29 100%); }
@media (max-width: 767.98px) {
  #reservation .topicpath + p {
    font-size: 16px;
    padding-top: 50px; }
  #reservation div.tel {
    font-size: 41px;
    text-align: center; }
  #reservation div.time {
    font-size: 16px; }
  #reservation .tr, #reservation tr {
    display: block; }
  #reservation .th, #reservation th {
    width: 100%;
    font-size: 16px;
    padding: 1em;
    line-height: 1; }
  #reservation .td, #reservation td {
    padding: 1em; }
    #reservation .td .address input, #reservation .td textarea, #reservation td .address input, #reservation td textarea {
      width: 100%; }
  #reservation button.wpcf7cp-cfm-edit-btn {
    margin-right: 0; } }
