@charset "UTF-8";
/* Header
-------------------------------------------------------------- */
body {
  background-image: url(../img/common/bg.svg);
  background-repeat: repeat;
  padding-top: 58px; /* navbar fixed */
}
@media (min-width: 360px) {
  body {
    padding-top: 64px;
  }
}
@media (min-width: 992px) {
  body {
    padding-top: 78px;
  }
}
@media (min-width: 1200px) {
  body {
    padding-top: 96px;
  }
}

header {
  width: 100%;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 999;
}

.admin-bar header {
  margin-top: 32px;
}
@media screen and (max-width: 782px) {
  .admin-bar header {
    margin-top: 46px;
  }
}

.h_contact,
.h_calendar {
  color: #FFF;
  font-size: 8px;
  text-align: center;
  line-height: 1.4;
  width: 44px;
  -ms-flex-item-align: stretch;
      -ms-grid-row-align: stretch;
      align-self: stretch;
}
@media (min-width: 360px) {
  .h_contact,
  .h_calendar {
    font-size: 9px;
    width: 54px;
  }
}
@media (min-width: 480px) {
  .h_contact,
  .h_calendar {
    width: 60px;
  }
}
@media (min-width: 992px) {
  .h_contact,
  .h_calendar {
    width: 65px;
  }
}
@media (min-width: 1200px) {
  .h_contact,
  .h_calendar {
    line-height: 1.6;
    width: 92px;
  }
}

.h_contact {
  background-color: #e59a37;
  padding-top: 0.75rem;
}
.h_contact:hover {
  color: #FFF;
  background-color: rgba(229, 154, 55, 0.8);
}
@media (min-width: 360px) {
  .h_contact {
    padding-top: 0.875rem;
  }
}
@media (min-width: 992px) {
  .h_contact {
    font-size: 11px;
    font-size: 0.6875rem;
    padding-top: 1.375rem;
  }
}
@media (min-width: 1200px) {
  .h_contact {
    font-size: 12px;
    font-size: 0.75rem;
    padding-top: 1.5rem;
  }
}
.h_contact .icon-mail {
  font-size: 21px;
  font-size: 1.3125rem;
  display: block;
  margin-bottom: 0.25rem;
}
@media (min-width: 360px) {
  .h_contact .icon-mail {
    font-size: 22px;
    font-size: 1.375rem;
  }
}
@media (min-width: 992px) {
  .h_contact .icon-mail {
    font-size: 24px;
    font-size: 1.5rem;
  }
}
@media (min-width: 1200px) {
  .h_contact .icon-mail {
    font-size: 25px;
    font-size: 1.5625rem;
  }
}

.h_calendar {
  background-color: #c75400;
  padding-top: 13px;
}
.h_calendar:hover {
  color: #FFF;
  background-color: rgba(199, 84, 0, 0.8);
}
@media (min-width: 360px) {
  .h_calendar {
    padding-top: 0.875rem;
  }
}
@media (min-width: 992px) {
  .h_calendar {
    font-size: 11px;
    font-size: 0.6875rem;
    padding-top: 1.375rem;
    margin-right: 0;
  }
}
@media (min-width: 1200px) {
  .h_calendar {
    font-size: 12px;
    font-size: 0.75rem;
    padding-top: 1.5rem;
  }
}
.h_calendar .icon-calender {
  font-size: 20px;
  font-size: 1.25rem;
  display: block;
  margin-bottom: 0.25rem;
}
@media (min-width: 360px) {
  .h_calendar .icon-calender {
    font-size: 21px;
    font-size: 1.3125rem;
    margin-bottom: 0.375rem;
  }
}
@media (min-width: 992px) {
  .h_calendar .icon-calender {
    font-size: 23px;
    font-size: 1.4375rem;
    margin-bottom: 0.3125rem;
  }
}
@media (min-width: 1200px) {
  .h_calendar .icon-calender {
    font-size: 24px;
    font-size: 1.5rem;
    margin-bottom: 0.375rem;
  }
}

.h_tel {
  white-space: nowrap;
  font-size: 11px;
  font-size: 0.6875rem;
  position: absolute;
  top: 0.75rem;
  right: calc(130px + 1rem);
}
@media (min-width: 1200px) {
  .h_tel {
    font-size: 13px;
    font-size: 0.8125rem;
    top: 1rem;
    right: calc(184px + 1.5rem);
  }
}
.h_tel .number {
  font-family: "Noto Serif JP", serif;
  font-size: 16px;
  font-size: 1rem;
  padding-left: 1.5em;
  padding-right: 0.5rem;
}
@media (min-width: 1200px) {
  .h_tel .number {
    font-size: 17px;
    font-size: 1.0625rem;
    padding-right: 1.25rem;
  }
}
@media (min-width: 1400px) {
  .h_tel .number {
    font-size: 18px;
    font-size: 1.125rem;
    padding-right: 2rem;
  }
}
.h_tel .number::before {
  font-size: 13px;
  font-size: 0.8125rem;
}
@media (min-width: 1400px) {
  .h_tel .number::before {
    font-size: 14px;
    font-size: 0.875rem;
  }
}

/* Navbar */
.navbar {
  font-family: "Noto Serif JP", serif;
  -webkit-box-shadow: 0 1px 5px rgba(0, 0, 0, 0.3);
          box-shadow: 0 1px 5px rgba(0, 0, 0, 0.3);
  height: 58px;
  padding: 0 0 0 0.625rem;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
}
@media (min-width: 360px) {
  .navbar {
    height: 64px;
    padding-left: 1rem;
  }
}
@media (min-width: 992px) {
  .navbar {
    height: 78px;
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end;
  }
}
@media (min-width: 1200px) {
  .navbar {
    height: 96px;
    padding-left: 1.5rem;
  }
}

.navbar-brand {
  line-height: 1;
  width: 170px;
  margin: 0 auto 0 0;
  -ms-flex-item-align: center;
      -ms-grid-row-align: center;
      align-self: center;
}
@media (min-width: 360px) {
  .navbar-brand {
    width: 190px;
  }
}
@media (min-width: 480px) {
  .navbar-brand {
    width: 230px;
  }
}
@media (min-width: 1200px) {
  .navbar-brand {
    width: 280px;
  }
}

.navbar-expand-lg .navbar-nav {
  padding: 1rem 0.75rem;
}
@media (min-width: 992px) {
  .navbar-expand-lg .navbar-nav {
    padding: 0 0.375rem 0 0;
    margin-left: auto;
  }
}
.navbar-expand-lg .navbar-nav .nav-link {
  color: #555;
  letter-spacing: 1px;
  padding: 1rem 0;
  position: relative;
}
.navbar-expand-lg .navbar-nav .nav-link:hover {
  color: #96835F;
}
@media (max-width: 991.98px) {
  .navbar-expand-lg .navbar-nav .nav-link {
    padding: 0.75rem 1rem;
    line-height: 1;
  }
  .navbar-expand-lg .navbar-nav .nav-link::after {
    font-family: "icomoon" !important;
    speak: never;
    font-style: normal;
    font-weight: normal;
    font-variant: normal;
    text-transform: none;
    line-height: 1;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    content: "\e906";
    color: #3A160E;
    font-size: 16px;
    font-size: 1rem;
    position: absolute;
    top: 50%;
    right: 2rem;
    -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%);
  }
  .navbar-expand-lg .navbar-nav .nav-link:hover::after {
    color: #96835F;
  }
}
@media (min-width: 992px) {
  .navbar-expand-lg .navbar-nav .nav-link {
    font-size: 14px;
    font-size: 0.875rem;
    letter-spacing: 0;
    padding: 0.5rem;
    margin-bottom: 0.25rem;
  }
  .navbar-expand-lg .navbar-nav .nav-link:hover {
    color: #555;
  }
}
@media (min-width: 1200px) {
  .navbar-expand-lg .navbar-nav .nav-link {
    padding: 0.5rem 1rem;
  }
}
@media (min-width: 1400px) {
  .navbar-expand-lg .navbar-nav .nav-link {
    padding: 0.5rem 1.125rem;
  }
}
.navbar-expand-lg .navbar-nav .disabled {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400 !important;
  color: #96835F;
  font-size: 14px;
  font-size: 0.875rem;
}
.navbar-expand-lg .navbar-nav .disabled::after {
  content: "";
}
.navbar-expand-lg .navbar-nav ul {
  padding-left: 1rem;
}
.navbar-expand-lg .navbar-nav ul li .g_map {
  font-size: 12px;
  font-size: 0.75rem;
}
.navbar-expand-lg .navbar-nav ul .tel_text {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 14px;
  font-size: 0.875rem;
  padding: 0.25rem 1rem;
}
.navbar-expand-lg .navbar-nav ul .number {
  font-size: 18px;
  font-size: 1.125rem;
  padding-left: 1.75rem;
}
.navbar-expand-lg .navbar-nav ul .number::before {
  font-size: 13px;
  font-size: 0.8125rem;
}
.navbar-expand-lg .navbar-nav .dropdown-toggle::after {
  border: none;
}
@media (max-width: 991.98px) {
  .navbar-expand-lg .navbar-nav .dropdown-toggle::before {
    content: "";
    width: 1px;
    height: 1.5rem;
    background-color: rgba(59, 22, 14, 0.25);
    position: absolute;
    top: 0.75rem;
    right: 3rem;
  }
  .navbar-expand-lg .navbar-nav .dropdown-toggle::after {
    content: "\e90e";
    right: 1rem;
    -webkit-transition: 0.3s;
    transition: 0.3s;
  }
}
@media (min-width: 992px) {
  .navbar-expand-lg .navbar-nav .dropdown-toggle::after {
    margin-left: 0;
  }
}
.navbar-expand-lg .navbar-nav .show > .dropdown-toggle {
  color: #3A160E;
  background-color: rgba(255, 255, 255, 0.75);
}
@media (max-width: 991.98px) {
  .navbar-expand-lg .navbar-nav .show > .dropdown-toggle::after {
    -webkit-transform: rotate(135deg);
        -ms-transform: rotate(135deg);
            transform: rotate(135deg);
    -webkit-transition: 0.3s;
    transition: 0.3s;
    top: 35%;
  }
}

.dropdown-menu {
  border: none;
  padding-bottom: 0.625rem;
}
@media (max-width: 991.98px) {
  .dropdown-menu {
    border-left: 1px solid rgba(59, 22, 14, 0.25);
    border-radius: 0;
    padding: 0;
    margin: 0.5rem 0 0.5rem 1rem;
  }
}
@media (min-width: 992px) {
  .dropdown-menu {
    margin-top: -0.25rem;
    -webkit-animation-name: fadeIn;
            animation-name: fadeIn;
    -webkit-animation-duration: 0.2s;
            animation-duration: 0.2s;
    -webkit-animation-timing-function: ease-out;
            animation-timing-function: ease-out;
    -webkit-animation-fill-mode: backwards;
            animation-fill-mode: backwards;
  }
}
.dropdown-menu .number {
  font-size: 20px;
  font-size: 1.25rem;
  padding-left: 1.75rem;
}
.dropdown-menu .number::before {
  font-size: 15px;
  font-size: 0.9375rem;
}
@media (max-width: 359.98px) {
  .dropdown-menu .number {
    display: block;
  }
}

.dropdown-item {
  font-size: 15px;
  font-size: 0.9375rem;
  color: #555;
  padding: 0.625rem 0 0.625rem 2.5rem;
  position: relative;
}
.dropdown-item:hover {
  color: #96835F;
  background-color: transparent;
}
.dropdown-item::after {
  font-family: "icomoon" !important;
  speak: never;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  content: "\e902";
  color: #3A160E;
  position: absolute;
  top: 50%;
  left: 1rem;
  -webkit-transform: translateY(-45%);
      -ms-transform: translateY(-45%);
          transform: translateY(-45%);
}
@media (min-width: 992px) {
  .dropdown-item::after {
    left: 0.5rem;
  }
}
@media (min-width: 1200px) {
  .dropdown-item::after {
    left: 1rem;
  }
}
.dropdown-item:hover::after {
  color: #96835F;
}
@media (min-width: 992px) {
  .dropdown-item {
    font-size: 14px;
    font-size: 0.875rem;
    padding: 0.25rem 0.75rem 0.25rem 1.5rem;
  }
}
@media (min-width: 1200px) {
  .dropdown-item {
    padding: 0.25rem 1.5rem 0.25rem 2rem;
  }
}
@media (min-width: 992px) {
  .dropdown-item .g_map {
    font-size: 12px;
    font-size: 0.75rem;
  }
}

/* アニメーションなど */
@media (min-width: 992px) {
  .nav-link::after {
    content: "";
    display: block;
    width: calc(100% - 0.75rem);
    height: 2px;
    background: #2873A4;
    position: absolute;
    left: 0.375rem;
    bottom: 0.5rem;
    opacity: 0;
    visibility: hidden;
    -webkit-transition: 0.3s;
    transition: 0.3s;
  }
}
@media (min-width: 1200px) {
  .nav-link::after {
    width: calc(100% - 1.5rem);
    left: 0.75rem;
  }
}

@media (min-width: 992px) {
  .nav-link:hover::after {
    visibility: visible;
    bottom: 0.25rem;
    opacity: 1;
  }
}

/* スマホナビ別表示に修正 */
@media (min-width: 992px) {
  .sp_nav {
    display: none;
  }
}

@media (max-width: 991.98px) {
  .pc_nav {
    display: none;
  }
}

/* Navbar Offcanvas */
@media (max-width: 991.98px) {
  html,
  body {
    overflow-x: hidden; /* 狭いデバイスでのスクロールを防止 */
  }
  .offcanvas-collapse {
    position: fixed;
    top: 64px;
    bottom: 0;
    left: -100%;
    width: 100%;
    max-width: 100%;
    z-index: 1010; /*数字変更注*/
    overflow-y: auto;
    background-color: #FFF;
    transition: visibility 0.2s ease-in-out, -webkit-transform 0.2s ease-in-out;
    -webkit-transition: visibility 0.2s ease-in-out, -webkit-transform 0.2s ease-in-out;
    transition: transform 0.2s ease-in-out, visibility 0.2s ease-in-out;
    transition: transform 0.2s ease-in-out, visibility 0.2s ease-in-out, -webkit-transform 0.2s ease-in-out;
    border-top: 1px solid #3A160E;
  }
  .offcanvas-collapse.open {
    visibility: visible;
    -webkit-transform: translateX(100%);
        -ms-transform: translateX(100%);
            transform: translateX(100%);
  }
  .navbar-toggler {
    background-color: #FFF;
    width: 50px;
    padding: 22px 10px 8px 10px;
    border: none;
    border-radius: 0;
    z-index: 1000;
  }
  .navbar-toggler .text_menu {
    font-family: "Noto Sans JP", sans-serif;
    font-size: 10px;
    font-size: 0.625rem;
    color: #3A160E;
    display: block;
    text-align: center;
    padding-top: 15px;
  }
}
@media (max-width: 359.98px) {
  .navbar-collapse {
    top: 58px;
  }
  .navbar-toggler {
    width: 40px;
    padding: 22px 5px 8px 5px;
  }
}
.icon-bar {
  position: relative;
  display: block;
  width: 30px;
  height: 2px;
  -webkit-transition: all 0.15s ease-in-out;
  transition: all 0.15s ease-in-out;
  background-color: #3A160E;
}
.icon-bar::before, .icon-bar::after {
  width: 30px;
  height: 2px;
  -webkit-transition: all 0.15s ease-in-out;
  transition: all 0.15s ease-in-out;
  background-color: #3A160E;
  position: absolute;
  top: -10px;
  left: 0;
  content: "";
}
.icon-bar::after {
  top: 10px;
}

.navbar-toggler.active .icon-bar {
  background-color: transparent;
}
.navbar-toggler.active .icon-bar::before {
  top: 0;
  -webkit-transform: rotate(45deg);
      -ms-transform: rotate(45deg);
          transform: rotate(45deg);
  background-color: #3A160E;
}
.navbar-toggler.active .icon-bar::after {
  top: 0;
  -webkit-transform: rotate(-45deg);
      -ms-transform: rotate(-45deg);
          transform: rotate(-45deg);
  background-color: #3A160E;
}

/* Image
-------------------------------------------------------------- */
.hero {
  background-color: #FFF;
  width: 100%;
  position: relative;
  z-index: 1;
  overflow: hidden;
  position: relative;
}
.hero::before {
  background-image: url(../img/hero/loading.gif);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: 200px auto;
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  z-index: -1;
}
.hero::after {
  background-image: url(../img/hero/hero_ribbon.svg);
  background-repeat: no-repeat;
  background-position: center bottom;
  background-size: 101% auto;
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: -1px;
  z-index: 2;
}
@media (min-width: 768px) {
  .hero::after {
    background-image: url(../img/hero/hero_ribbon_md.svg);
  }
}

/* video */
#bg-video {
  width: 100vw;
  height: calc(100vh - 64px);
  -o-object-fit: cover;
     object-fit: cover;
  display: block;
}
@media (min-width: 768px) {
  #bg-video {
    width: 100%;
    height: 100%;
  }
}

#bg-video::-webkit-media-controls {
  display: none !important;
}

/* video */
#mobile {
  width: 100vw;
  height: 83.3333333333%;
  -o-object-fit: cover;
     object-fit: cover;
  display: block;
}
@media (min-width: 768px) {
  #mobile {
    display: none;
  }
}

#pc {
  display: none;
}
@media (min-width: 768px) {
  #pc {
    width: 100%;
    height: 56.4853556485%;
    -o-object-fit: cover;
       object-fit: cover;
    display: block;
  }
}

#mobile::-webkit-media-controls,
#pc::-webkit-media-controls {
  display: none !important;
}

.ttl_container {
  background-color: #FFF;
  background-image: url(../img/ttl/ttl_leaf1.png);
  background-repeat: no-repeat;
  background-position: center top;
  background-size: cover;
  width: 100%;
  padding-top: 37.5%;
  position: relative;
}
.ttl_container::after {
  background-image: url(../img/ttl/ttl_ribbon.svg);
  background-repeat: no-repeat;
  background-position: center bottom -1px;
  background-size: 101% auto;
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}
@media (min-width: 768px) {
  .ttl_container {
    padding-top: 21.875%;
  }
  .ttl_container::after {
    background-image: url(../img/ttl/ttl_ribbon_md.svg);
  }
}
.checkup .ttl_container {
  background-image: url(../img/ttl/ttl_dock.jpg);
  background-size: contain;
  padding-top: 65%;
}
.checkup .ttl_container::after {
  background-image: none;
}
@media (min-width: 768px) {
  .checkup .ttl_container {
    background-image: url(../img/ttl/ttl_dock_md.jpg);
    padding-top: 42.7083333333%;
  }
}
@media (max-width: 767.98px) {
  .ttl_container div {
    background-image: url(../img/common/bg_ttl.svg);
    background-repeat: no-repeat;
    background-position: center bottom -1px;
    background-size: 100% auto;
    padding-bottom: 3rem;
  }
}
@media (min-width: 768px) {
  .ttl_container div {
    position: absolute;
    top: 24%;
    right: 4%;
  }
}
@media (min-width: 992px) {
  .ttl_container div {
    right: 6%;
  }
}
@media (min-width: 1200px) {
  .ttl_container div {
    right: auto;
    left: 64%;
  }
}
.course .ttl_container {
  background-image: url(../img/ttl/ttl_course.jpg);
}
@media (min-width: 768px) {
  .course .ttl_container {
    background-image: url(../img/ttl/ttl_course_md.jpg);
  }
}
@media (min-width: 768px) {
  .course .ttl_container div {
    right: 2%;
  }
}
@media (min-width: 992px) {
  .course .ttl_container div {
    top: 35%;
    right: 4%;
  }
}
@media (min-width: 1200px) {
  .course .ttl_container div {
    right: auto;
    left: 64%;
  }
}
.company .ttl_container {
  background-image: url(../img/ttl/ttl_company.jpg);
}
@media (min-width: 768px) {
  .company .ttl_container {
    background-image: url(../img/ttl/ttl_company_md.jpg);
  }
}
@media (min-width: 768px) {
  .company .ttl_container div {
    top: 35%;
    right: 2%;
  }
}
@media (min-width: 992px) {
  .company .ttl_container div {
    top: 38%;
    right: 4%;
  }
}
@media (min-width: 1200px) {
  .company .ttl_container div {
    top: 42%;
    right: auto;
    left: 62%;
  }
}
.guide .ttl_container {
  background-image: url(../img/ttl/ttl_leaf1.png);
}
.about .ttl_container, .way .ttl_container, .client .ttl_container, .access .ttl_container, .inspection .ttl_container, .stomach .ttl_container {
  background-image: url(../img/ttl/ttl_leaf2.png);
}
.facility .ttl_container, .cancer .ttl_container {
  background-image: url(../img/ttl/ttl_leaf3.png);
}

/* Content
-------------------------------------------------------------- */
/* Typography */
h1, h2, h3, h4 {
  font-family: "Noto Serif JP", serif;
}

.text_serif {
  font-family: "Noto Serif JP", serif;
}

.text_sans_serif {
  font-family: "Noto Sans JP", sans-serif;
}

.number {
  position: relative;
}
.number a {
  color: #555;
}
.number::before {
  font-size: 75%;
  font-family: "icomoon" !important;
  speak: never;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  content: "\e90d";
  position: absolute;
  top: 50%;
  left: 0.5rem;
  -webkit-transform: translateY(-40%);
      -ms-transform: translateY(-40%);
          transform: translateY(-40%);
}

.ttl_container h1.page_ttl {
  color: #FFF;
  letter-spacing: 0.2em;
  text-align: center;
  width: 100%;
  padding-left: 0.2em;
  position: absolute;
  top: 40%;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
  left: 0;
}
.ttl_container h1.page_ttl span {
  letter-spacing: 0.1em;
}
@media (max-width: 359.98px) {
  .stomach .ttl_container h1.page_ttl span {
    font-size: 18px;
    font-size: 1.125rem;
    letter-spacing: 0;
  }
}
@media (min-width: 768px) {
  .ttl_container h1.page_ttl {
    font-size: 26px;
    font-size: 1.625rem;
  }
}
@media (min-width: 992px) {
  .ttl_container h1.page_ttl {
    font-size: 32px;
    font-size: 2rem;
    letter-spacing: 0.3em;
    padding-left: 0.3em;
  }
}
@media (min-width: 1200px) {
  .ttl_container h1.page_ttl {
    font-size: 38px;
    font-size: 2.375rem;
  }
}
.checkup .ttl_container h1 {
  font-size: 36px;
  font-size: 2.25rem;
  color: #96835F;
  letter-spacing: 0.4em;
  text-align: center;
  padding-left: 0.5em;
  margin: 1.25rem 0;
}
.checkup .ttl_container h1 span {
  letter-spacing: 0.25em;
}
@media (min-width: 768px) {
  .checkup .ttl_container h1 {
    font-size: 4.75vw;
    text-align: left;
    padding-left: 0;
    margin: 0 0 1.5rem 0;
  }
}
@media (min-width: 1200px) {
  .checkup .ttl_container h1 {
    font-size: 64px;
    font-size: 4rem;
    margin: 0 0 2rem 0;
  }
}
.checkup .ttl_container p {
  font-family: "Noto Serif JP", serif;
  color: #333;
  line-height: 1.6;
  text-align: center;
  margin-bottom: 0;
}
@media (min-width: 768px) {
  .checkup .ttl_container p {
    line-height: 2;
    text-align: left;
    white-space: nowrap;
    padding-left: 0.25rem;
    margin-bottom: 0;
  }
}
@media (min-width: 992px) {
  .checkup .ttl_container p {
    font-size: 20px;
    font-size: 1.25rem;
  }
}
@media (min-width: 1200px) {
  .checkup .ttl_container p {
    font-size: 24px;
    font-size: 1.5rem;
  }
}
@media (min-width: 768px) {
  .course .ttl_container h1,
  .course .ttl_container p {
    color: #FFF;
    text-shadow: 1px 1px 3px rgba(0, 0, 0, 0.2), -1px 1px 3px rgba(0, 0, 0, 0.2), 1px -1px 3px rgba(0, 0, 0, 0.2), -1px -1px 3px rgba(0, 0, 0, 0.2);
  }
}
@media (min-width: 992px) {
  .course .ttl_container p {
    font-size: 18px;
    font-size: 1.125rem;
  }
}
@media (min-width: 1200px) {
  .course .ttl_container p {
    font-size: 22px;
    font-size: 1.375rem;
  }
}
@media (min-width: 768px) {
  .company .ttl_container h1,
  .company .ttl_container p {
    text-shadow: 1px 1px 3px rgb(255, 255, 255), -1px 1px 3px rgb(255, 255, 255), 1px -1px 3px rgb(255, 255, 255), -1px -1px 3px rgb(255, 255, 255);
  }
}
.way .ttl_container h1.page_ttl {
  letter-spacing: 0.125em;
}
.regulation .ttl_container h1.page_ttl {
  top: 35%;
  font-size: 18px;
  font-size: 1.125rem;
}
@media (min-width: 768px) {
  .regulation .ttl_container h1.page_ttl {
    font-size: 22px;
    font-size: 1.375rem;
  }
}
@media (min-width: 992px) {
  .regulation .ttl_container h1.page_ttl {
    font-size: 28px;
    font-size: 1.75rem;
    letter-spacing: 0;
  }
}
@media (min-width: 1200px) {
  .regulation .ttl_container h1.page_ttl {
    font-size: 32px;
    font-size: 2rem;
  }
}

#content h1, #content h2, #content h3, #content h4, #content h5, #content h6, #content p {
  color: #3A160E;
}
#content .pickup h2,
#content .pickup h3 {
  color: #FFF;
  letter-spacing: 0.05em;
  display: inline-block;
  margin-bottom: 1.5rem;
  position: relative;
}
#content .pickup h2::after,
#content .pickup h3::after {
  content: "";
  background-image: url(../img/common/arrow_white.svg);
  background-repeat: no-repeat;
  background-position: right center;
  background-size: 100%;
  width: 40px;
  height: 8px;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
  left: calc(100% + 0.5rem);
  -webkit-transition: all 0.1s;
  transition: all 0.1s;
}
@media (min-width: 768px) {
  #content .pickup h2,
  #content .pickup h3 {
    margin-bottom: 2rem;
  }
}
#content .pickup h3 {
  padding-right: 50px;
  margin-bottom: 1rem;
}
#content .pickup h3::after {
  background-size: 90%;
  left: calc(100% - 40px);
}
#content .pickup h4 {
  color: #FFF;
  margin-top: 0.5rem;
}
#content .pickup p {
  font-family: "Noto Serif JP", serif;
  color: #FFF;
  text-align: left;
  margin-bottom: 0;
  font-size: 13px;
  font-size: 0.8125rem;
}
@media (min-width: 768px) {
  #content .pickup p {
    font-size: 14px;
    font-size: 0.875rem;
  }
}
@media (min-width: 992px) {
  #content .pickup p {
    font-size: 15px;
    font-size: 0.9375rem;
  }
}
#content .pickup .pickup07 h3 span {
  font-size: 15px;
  font-size: 0.9375rem;
}
#content h2.why {
  font-size: 40px;
  font-size: 2.5rem;
  letter-spacing: 2px;
  text-align: center;
  background-image: url(../img/top/h2_why.svg);
  background-repeat: no-repeat;
  background-position: center bottom;
  background-size: 7.25em auto;
  padding-left: 0.25rem;
  padding-bottom: 0.375em;
}
@media (min-width: 768px) {
  #content h2.why {
    font-size: 64px;
    font-size: 4rem;
  }
}
@media (min-width: 992px) {
  #content h2.why {
    font-size: 74px;
    font-size: 4.625rem;
    margin-top: 3rem;
  }
}
@media (min-width: 1200px) {
  #content h2.why {
    font-size: 84px;
    font-size: 5.25rem;
  }
}
#content h2.why + p {
  margin-bottom: 2rem;
}
@media (min-width: 992px) {
  #content h2.why + p {
    margin-bottom: 4rem;
  }
}
#content .bg_leaf2 .border_box h3 {
  color: #FFF;
  letter-spacing: 0.05em;
  position: relative;
  background-image: url(../img/top/h3_why.svg);
  background-repeat: no-repeat;
  background-position: left bottom;
  background-size: 10em auto;
  padding-left: 0.5rem;
  padding-bottom: 0.75em;
  margin-top: 0.5rem;
}
@media (min-width: 992px) {
  #content .bg_leaf2 .border_box h3 {
    background-size: 400px auto;
  }
}
@media (min-width: 1200px) {
  #content .bg_leaf2 .border_box h3 {
    font-size: 30px;
    font-size: 1.875rem;
  }
}
#content .bg_leaf2 .border_box h4 {
  color: #FFF;
  padding: 0 0.5rem;
}
#content .bg_leaf2 .border_box p {
  color: #FFF;
  font-family: "Noto Serif JP", serif;
  font-size: 15px;
  font-size: 0.9375rem;
  line-height: 2;
  padding: 0 0.5rem;
  margin-bottom: 0.5rem;
}
@media (min-width: 992px) {
  #content .bg_leaf2 .border_box p {
    font-size: 16px;
    font-size: 1rem;
  }
}
#content .border_bottom {
  letter-spacing: 0.05em;
  display: inline-block;
  border-bottom: 1px solid #3A160E;
  padding: 0.25rem 1rem;
  margin-bottom: 2rem;
}
#content .border_left {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  line-height: 1.2;
  text-align: left;
  border-left: 5px solid #3A160E;
  padding-left: 0.5rem;
  margin-bottom: 1.5rem;
}
#content .border_square {
  color: #96835F;
  line-height: 1;
  letter-spacing: 0.05em;
  text-align: center;
  border: 1px solid #96835F;
  padding: 0.75rem 1rem;
  margin: 0 0 2rem 0;
}
#content .border_square span {
  font-size: 70%;
}
#content .bg_square {
  font-family: "Noto Sans JP", sans-serif;
  color: #FFF;
  letter-spacing: 0.05em;
  background-color: #3A160E;
  padding: 0.5rem 1.25rem;
  margin-bottom: 1.5rem;
}
#content .h_ribbon {
  letter-spacing: 2px;
  text-align: left;
  background-image: url(../img/common/h_ribbon.svg);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: 100% auto;
  padding-bottom: 7.7%;
  margin-top: 0;
  margin-bottom: 0;
}
#content .c_calendar {
  color: #FFF;
  padding-left: 2.5em;
  margin: 1em;
  position: relative;
}
#content .c_calendar::before {
  font-size: 150%;
  font-family: "icomoon" !important;
  speak: never;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  content: "\e905";
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
  left: 0;
}
@media (min-width: 768px) and (max-width: 991.98px) {
  #content .c_calendar {
    font-size: 18px;
    font-size: 1.125rem;
  }
}
#content .maru {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 16px;
  font-size: 1rem;
  padding-left: 1.2em;
  position: relative;
}
#content .maru::before {
  font-family: "icomoon" !important;
  speak: never;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  content: "\e907";
  color: #3A160E;
  position: absolute;
  top: 0;
  left: 0;
  margin-top: 0.25em;
}
#content .p_lead {
  font-family: "Noto Serif JP", serif;
  font-weight: 400;
  letter-spacing: 0.05em;
  line-height: 1.8;
}
#content p span.number {
  position: relative;
  padding-left: 1.4em;
}
#content p span.number:before {
  font-family: "icomoon" !important;
  speak: never;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  content: "\e90f";
  color: #96835F;
  font-size: 1.1em;
  position: absolute;
  top: 0.45em;
  left: 0;
}
#content p a {
  color: #2873A4;
}
#content p a:hover {
  color: #96835F;
}
@media (min-width: 992px) {
  .facility #content h3.h4 {
    font-size: 21px;
    font-size: 1.3125rem;
  }
}
#content .border_bottom_gray {
  border-bottom: 1px solid #E5E5E5;
  padding-bottom: 0.75rem;
  margin-bottom: 0.75rem;
}
#content h3 span.label_man,
#content h3 span.label_woman {
  font-size: 13px;
  font-size: 0.8125rem;
  color: #FFF;
  letter-spacing: 2px;
  line-height: 1;
  border-radius: 4px;
  background-color: #36a2dc;
  padding: 0.365rem 0.5rem;
  margin-top: 0.25rem;
  float: right;
}
#content h3 span.label_woman {
  background-color: #ec7b88;
}
#content .line_height_narrow {
  line-height: 1.2;
}
#content .line_height_normal {
  line-height: 1.6;
}
#content .line_height_wide {
  line-height: 1.8;
}
#content .letter-spacing_wide {
  letter-spacing: 0.05em;
}
#content .letter-spacing_0 {
  letter-spacing: 0;
}
#content .letter-spacing_1 {
  letter-spacing: 1;
}
#content .text_indent {
  text-indent: 1em;
  text-align: left;
}
#content .font_serif {
  font-family: "Noto Serif JP", serif;
}
#content .font_sans {
  font-family: "Noto Sans JP", sans-serif;
}
#content .text-small2 {
  font-size: 75% !important;
}
#content .text_normal {
  font-size: 16px !important;
}
#content .text-note {
  text-align: left;
}

/* List */
ul.circle {
  font-family: "Noto Serif JP", serif;
  color: #3A160E;
  padding-left: 1.25em;
  text-indent: -1.25em;
}
ul.circle li {
  margin-bottom: 0.75em;
}
@media (min-width: 992px) {
  ul.circle li {
    font-size: 18px;
    font-size: 1.125rem;
    text-indent: -1.275em;
  }
}
ul.circle li::before {
  font-family: "icomoon" !important;
  speak: never;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  content: "\e907";
  color: #3A160E;
  margin-right: 0.25em;
  vertical-align: -0.075em;
}

ul.circle_serif {
  color: #3A160E;
  padding-left: 1.25em;
  text-indent: -1.25em;
}
ul.circle_serif li {
  margin-bottom: 0.5em;
}
ul.circle_serif li::before {
  font-family: "icomoon" !important;
  speak: never;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  content: "\e907";
  color: #3A160E;
  margin-right: 0.25em;
  vertical-align: -0.075em;
}

@media (min-width: 992px) {
  ul.circle_pale li {
    font-size: 16px;
    font-size: 1rem;
  }
}
ul.circle_pale li::before {
  color: rgba(59, 22, 14, 0.5);
}

ul.circle_pale2 {
  font-family: "Noto Sans JP", sans-serif;
}
ul.circle_pale2 li {
  font-size: 14px;
  font-size: 0.875rem;
  margin-bottom: 0.5em;
}
ul.circle_pale2 li::before {
  color: rgba(59, 22, 14, 0.5);
}

ul.list_square {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
ul.list_square li {
  color: #3A160E;
  letter-spacing: 0.05em;
  text-align: center;
  border: 1px solid #9C8A86;
  width: calc(50% - 10px);
  padding: 0.5rem 0;
  margin-bottom: 20px;
}
ul.list_square li:nth-child(odd) {
  margin-right: 20px;
}
@media (min-width: 768px) {
  ul.list_square li {
    width: calc(20% - 16px);
    margin-right: 20px;
  }
  ul.list_square li:nth-child(5), ul.list_square li:nth-child(10), ul.list_square li:nth-child(15) {
    margin-right: 0;
  }
}

ul.faq_ul {
  padding-left: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
ul.faq_ul li {
  font-weight: 400;
  font-size: 16px;
  font-size: 1rem;
  width: 100%;
  margin-bottom: 1rem;
  position: relative;
}
ul.faq_ul li:hover {
  color: #96835F;
}
ul.faq_ul li a {
  display: block;
  border: 1px solid #96835F;
  padding: 0.75rem 2rem;
  position: relative;
  z-index: 2;
}
ul.faq_ul li::before {
  content: "";
  background-color: #B4D5E9;
  width: 12px;
  position: absolute;
  top: 2px;
  bottom: 2px;
  left: 2px;
}
ul.faq_ul li::after {
  font-size: 180%;
  color: #B4D5E9;
  font-family: "icomoon" !important;
  speak: never;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  content: "\e917";
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
  right: 1.5rem;
  z-index: 1;
}
ul.faq_ul li:nth-child(2)::before {
  background-color: #E7CED5;
}
ul.faq_ul li:nth-child(2)::after {
  color: #E7CED5;
}
ul.faq_ul li:nth-child(3)::before {
  background-color: #CDD9BE;
}
ul.faq_ul li:nth-child(3)::after {
  color: #CDD9BE;
}
ul.faq_ul li:nth-child(4)::before {
  background-color: #C1C1C1;
}
ul.faq_ul li:nth-child(4)::after {
  color: #C1C1C1;
}
ul.faq_ul li:nth-child(5)::before {
  background-color: #E0C8B2;
}
ul.faq_ul li:nth-child(5)::after {
  color: #E0C8B2;
}
ul.faq_ul li:hover::after {
  color: rgba(150, 131, 95, 0.5);
}
@media (min-width: 768px) {
  ul.faq_ul li {
    width: calc(50% - 20px);
    margin-bottom: 30px;
  }
  ul.faq_ul li a {
    padding: 0.75rem 3rem;
  }
  ul.faq_ul li:nth-child(odd) {
    margin-right: 40px;
  }
}
@media (min-width: 992px) {
  ul.faq_ul li {
    font-size: 18px;
    font-size: 1.125rem;
  }
}

ul.site_map {
  margin-left: 1rem;
}
@media (min-width: 768px) and (max-width: 991.98px) {
  ul.site_map {
    margin-left: 0;
  }
}
ul.site_map li {
  font-size: 18px;
  font-size: 1.125rem;
  font-weight: 400;
  margin-bottom: 0.5rem;
  position: relative;
}
ul.site_map li a {
  padding: 1rem 0 1rem 2em;
}
ul.site_map li::before {
  font-weight: 300;
  font-size: 125%;
  font-family: "icomoon" !important;
  speak: never;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  content: "\e906";
  position: absolute;
  top: 0.1em;
  left: 0;
}
ul.site_map li ul {
  margin: 1rem 0 1rem 2rem;
}
ul.site_map li ul li {
  font-family: "Noto Serif JP", serif;
  font-weight: 300;
  font-size: 16px;
  font-size: 1rem;
  text-indent: -1.5em;
}
@media (min-width: 768px) and (max-width: 991.98px) {
  ul.site_map li ul li {
    font-size: 15px;
    font-size: 0.9375rem;
  }
}
ul.site_map li ul li a {
  padding: 1rem 1rem 1rem 1.5em;
}
ul.site_map li ul li::before {
  content: "\e902";
}
ul.site_map li ul ul {
  margin: 1rem 0 1rem 1.25rem;
}

ul.site_map2 {
  margin-left: 4rem;
}
@media (min-width: 768px) and (max-width: 991.98px) {
  ul.site_map2 {
    margin-left: 3rem;
  }
}
ul.site_map2 li {
  font-family: "Noto Serif JP", serif;
  font-size: 16px;
  font-size: 1rem;
  text-indent: -1.5em;
  margin-bottom: 0.5rem;
  position: relative;
}
@media (min-width: 768px) and (max-width: 991.98px) {
  ul.site_map2 li {
    font-size: 15px;
    font-size: 0.9375rem;
  }
}
ul.site_map2 li a {
  padding: 1rem 1rem 1rem 1.5em;
}
ul.site_map2 li::before {
  font-weight: 300;
  font-size: 125%;
  font-family: "icomoon" !important;
  speak: never;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  content: "\e902";
  position: absolute;
  top: 0.1em;
  left: 0;
}

.acc_faq ul {
  line-height: 1.8;
}
.acc_faq ul a {
  color: #2873A4;
}
.acc_faq ul a:hover {
  color: #96835F;
}
.acc_faq ul.disc {
  list-style-type: disc;
  list-style-position: inside;
  padding-left: 0.25rem;
}

ol {
  color: #3A160E;
  padding-left: 1.5rem;
}
ol li {
  margin-bottom: 0.75em;
}
@media (min-width: 992px) {
  ol li {
    font-size: 18px;
    font-size: 1.125rem;
  }
}

.privacy ol li {
  margin-bottom: 1.5em;
}
@media (min-width: 992px) {
  .privacy ol li {
    font-size: 16px;
    font-size: 1rem;
  }
}
.privacy ol li ol.kakko {
  padding-left: 0;
  margin-top: 0.5rem;
}
.privacy ol li ol.kakko > li {
  margin-bottom: 0;
  list-style-type: none;
  counter-increment: cnt;
}
.privacy ol li ol.kakko > li::before {
  content: counter(cnt) " ）";
}
.privacy ol li ol.kakko ol {
  list-style: none;
  counter-reset: list-counter;
  margin-top: 0.25em;
}
.privacy ol li ol.kakko ol > li {
  padding-left: 1.3em;
  text-indent: -1.3em;
  margin-bottom: 0.25em;
}

/* Button */
.btn {
  border-radius: 0;
  font-size: 14px;
  font-size: 0.875rem;
}
@media (min-width: 360px) {
  .btn {
    font-size: 15px;
    font-size: 0.9375rem;
  }
}

.btn-primary:hover, .btn-primary:focus, .btn-primary.focus {
  border-color: #3A160E;
  background-color: #3A160E;
}

.btn-secondary:hover, .btn-secondary:focus, .btn-secondary.focus {
  border-color: #96835F;
  background-color: #96835F;
}

.btn_arrow {
  min-width: 12em;
  border-radius: 100vh;
  padding: 0.5em 5em 0.5em 1.75em;
  position: relative;
}
.btn_arrow::after {
  font-size: 250%;
  font-family: "icomoon" !important;
  speak: never;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  content: "\e904";
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-52%);
      -ms-transform: translateY(-52%);
          transform: translateY(-52%);
  right: 1.5rem;
}
.btn_arrow:hover::after {
  right: calc(1.5rem - 5px);
  -webkit-transition: all 0.2s ease;
  transition: all 0.2s ease;
}

.btn_arrow_more {
  min-width: 6em;
}

.btn_arrow_block {
  text-align: left;
  display: block;
  border-radius: 100vh;
  width: 100%;
  padding: 0.5em 1.5em;
}
.btn_arrow_block span {
  position: relative;
}
.btn_arrow_block span::after {
  font-size: 250%;
  font-family: "icomoon" !important;
  speak: never;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  content: "\e904";
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-52%);
      -ms-transform: translateY(-52%);
          transform: translateY(-52%);
  left: calc(100% + 0.5rem);
}
@media (min-width: 360px) {
  .btn_arrow_block span::after {
    left: calc(100% + 2rem);
  }
}
.btn_arrow_block:hover span::after {
  left: calc(100% + 0.875rem);
  -webkit-transition: all 0.2s ease;
  transition: all 0.2s ease;
}
@media (min-width: 360px) {
  .btn_arrow_block:hover span::after {
    left: calc(100% + 2.375rem);
  }
}

.btn_schedule {
  letter-spacing: 0.05em;
}
@media (min-width: 992px) {
  .btn_schedule {
    font-size: 18px;
    font-size: 1.125rem;
    padding-top: 0.5rem;
    padding-bottom: 0.5rem;
  }
}

.btn-link {
  padding-right: 3rem;
}
.btn-link::after {
  right: 0;
}
.btn-link:hover::after {
  right: -5px;
}
.btn-link:hover, .btn-link:focus, .btn-link.focus, .btn-link:active {
  text-decoration: none;
}

.btn_triangle_right {
  border-radius: 100vh;
  padding: 0.5em 3em 0.5em 1.5em;
  position: relative;
}
.btn_triangle_right::after {
  font-family: "icomoon" !important;
  speak: never;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  content: "\e913";
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-48%);
      -ms-transform: translateY(-48%);
          transform: translateY(-48%);
  right: 1.25rem;
}
.btn_triangle_right:hover::after {
  right: calc(1.25rem - 5px);
  -webkit-transition: all 0.2s ease;
  transition: all 0.2s ease;
}

.btn_triangle_down {
  padding: 0.5em 3em 0.5em 1.5em;
  position: relative;
}
.btn_triangle_down::after {
  font-family: "icomoon" !important;
  speak: never;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  content: "\e90f";
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-45%);
      -ms-transform: translateY(-45%);
          transform: translateY(-45%);
  right: 1.25rem;
}

.btn_arrow_radius_block {
  text-align: center;
  display: block;
  border-radius: 100vh;
  width: 90%;
  padding: 0.75em 0;
  margin-right: auto;
  margin-left: auto;
}
.btn_arrow_radius_block span {
  display: inline-block;
  position: relative;
  padding-right: 3rem;
}
.btn_arrow_radius_block span::after {
  font-size: 250%;
  font-family: "icomoon" !important;
  speak: never;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  content: "\e904";
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-52%);
      -ms-transform: translateY(-52%);
          transform: translateY(-52%);
  left: calc(100% - 2rem);
}
.btn_arrow_radius_block:hover span::after {
  left: calc(100% - 1.5rem);
  -webkit-transition: all 0.2s ease;
  transition: all 0.2s ease;
}
@media (min-width: 480px) {
  .btn_arrow_radius_block {
    width: 390px;
  }
}
@media (min-width: 768px) {
  .btn_arrow_radius_block {
    width: 420px;
  }
}

@media (min-width: 480px) {
  .btn_arrow_radius_block_long {
    width: 450px;
  }
}
@media (min-width: 768px) {
  .btn_arrow_radius_block_long {
    width: 480px;
  }
}

.btn_lg {
  font-size: 17px;
  font-size: 1.0625rem;
}
@media (min-width: 360px) {
  .btn_lg {
    font-size: 18px;
    font-size: 1.125rem;
  }
}
@media (min-width: 992px) {
  .btn_lg {
    font-size: 20px;
    font-size: 1.25rem;
  }
}

.btn_group {
  font-size: 13px;
  font-size: 0.8125rem;
  border-radius: 100vh;
  width: 80%;
  margin-bottom: 0.625rem;
}
@media (min-width: 480px) {
  .btn_group {
    font-size: 14px;
    font-size: 0.875rem;
  }
}
@media (min-width: 768px) {
  .btn_group {
    width: 100%;
  }
}
@media (min-width: 992px) {
  .btn_group {
    font-size: 15px;
    font-size: 0.9375rem;
  }
}
.row div:last-child .btn_group {
  width: 100%;
}
@media (max-width: 359.98px) {
  .row div:last-child .btn_group {
    padding-left: 0;
    padding-right: 0;
  }
}
@media (min-width: 768px) {
  .row div:last-child .btn_group {
    width: 90%;
  }
}

/* accordion */
.acc_about .btn,
.acc_fee .btn,
.acc_faq .btn,
.acc_guide .btn,
.acc_inspec .btn {
  font-family: "Noto Sans JP", sans-serif;
  padding: 0.75rem 3rem 0.75rem 1.5rem;
  margin-bottom: 0;
  position: relative;
}
.acc_about .btn:hover, .acc_about .btn:focus, .acc_about .btn.focus, .acc_about .btn:active,
.acc_fee .btn:hover,
.acc_fee .btn:focus,
.acc_fee .btn.focus,
.acc_fee .btn:active,
.acc_faq .btn:hover,
.acc_faq .btn:focus,
.acc_faq .btn.focus,
.acc_faq .btn:active,
.acc_guide .btn:hover,
.acc_guide .btn:focus,
.acc_guide .btn.focus,
.acc_guide .btn:active,
.acc_inspec .btn:hover,
.acc_inspec .btn:focus,
.acc_inspec .btn.focus,
.acc_inspec .btn:active {
  background-color: #96835F;
  color: #FFF !important;
}
@media (min-width: 992px) {
  .acc_about .btn,
  .acc_fee .btn,
  .acc_faq .btn,
  .acc_guide .btn,
  .acc_inspec .btn {
    font-size: 16px;
    font-size: 1rem;
  }
}
.acc_about .btn:hover,
.acc_fee .btn:hover,
.acc_faq .btn:hover,
.acc_guide .btn:hover,
.acc_inspec .btn:hover {
  color: #555;
  text-decoration: none;
}
.acc_about .btn[aria-expanded=false]:after,
.acc_fee .btn[aria-expanded=false]:after,
.acc_faq .btn[aria-expanded=false]:after,
.acc_guide .btn[aria-expanded=false]:after,
.acc_inspec .btn[aria-expanded=false]:after {
  font-family: "icomoon" !important;
  speak: never;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  content: "\e910";
  color: #7F7F7F;
  font-size: 14px;
  font-size: 0.875rem;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-40%);
      -ms-transform: translateY(-40%);
          transform: translateY(-40%);
  right: 1.5em;
}
@media (min-width: 768px) {
  .acc_about .btn[aria-expanded=false]:after,
  .acc_fee .btn[aria-expanded=false]:after,
  .acc_faq .btn[aria-expanded=false]:after,
  .acc_guide .btn[aria-expanded=false]:after,
  .acc_inspec .btn[aria-expanded=false]:after {
    right: 2em;
  }
}
.acc_about .btn[aria-expanded=true],
.acc_fee .btn[aria-expanded=true],
.acc_faq .btn[aria-expanded=true],
.acc_guide .btn[aria-expanded=true],
.acc_inspec .btn[aria-expanded=true] {
  color: #FFF;
  background-color: #96835F;
}
.acc_about .btn[aria-expanded=false]:hover:after,
.acc_fee .btn[aria-expanded=false]:hover:after,
.acc_faq .btn[aria-expanded=false]:hover:after,
.acc_guide .btn[aria-expanded=false]:hover:after,
.acc_inspec .btn[aria-expanded=false]:hover:after {
  color: #FFF;
}
.acc_about .btn[aria-expanded=true]:after,
.acc_fee .btn[aria-expanded=true]:after,
.acc_faq .btn[aria-expanded=true]:after,
.acc_guide .btn[aria-expanded=true]:after,
.acc_inspec .btn[aria-expanded=true]:after {
  font-family: "icomoon" !important;
  speak: never;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  content: "\e915";
  color: #FFF;
  font-size: 14px;
  font-size: 0.875rem;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-40%);
      -ms-transform: translateY(-40%);
          transform: translateY(-40%);
  right: 1.5em;
}
@media (min-width: 768px) {
  .acc_about .btn[aria-expanded=true]:after,
  .acc_fee .btn[aria-expanded=true]:after,
  .acc_faq .btn[aria-expanded=true]:after,
  .acc_guide .btn[aria-expanded=true]:after,
  .acc_inspec .btn[aria-expanded=true]:after {
    right: 2em;
  }
}
.acc_about + .btn,
.acc_fee + .btn,
.acc_faq + .btn,
.acc_guide + .btn,
.acc_inspec + .btn {
  background-color: #fafafa;
  border-top: none;
  padding: 0.75rem 1.5rem;
}
.acc_about + .btn:hover, .acc_about + .btn:focus, .acc_about + .btn.focus, .acc_about + .btn:active,
.acc_fee + .btn:hover,
.acc_fee + .btn:focus,
.acc_fee + .btn.focus,
.acc_fee + .btn:active,
.acc_faq + .btn:hover,
.acc_faq + .btn:focus,
.acc_faq + .btn.focus,
.acc_faq + .btn:active,
.acc_guide + .btn:hover,
.acc_guide + .btn:focus,
.acc_guide + .btn.focus,
.acc_guide + .btn:active,
.acc_inspec + .btn:hover,
.acc_inspec + .btn:focus,
.acc_inspec + .btn.focus,
.acc_inspec + .btn:active {
  background-color: #96835F;
}
@media (min-width: 992px) {
  .acc_about + .btn,
  .acc_fee + .btn,
  .acc_faq + .btn,
  .acc_guide + .btn,
  .acc_inspec + .btn {
    font-size: 16px;
    font-size: 1rem;
  }
}

.acc_about .btn_about {
  border-radius: 100vh;
  padding: 0.5em 3.75em 0.5em 2em;
}
.acc_about .btn_about[aria-expanded=false]:after {
  content: "\e90f";
  color: #FFF;
  right: 1.5em;
}
.acc_about .btn_about[aria-expanded=true]:after {
  right: 1.5em;
}
.acc_about .btn {
  width: 100%;
}
.acc_about .btn:hover, .acc_about .btn:focus, .acc_about .btn.focus, .acc_about .btn:active {
  background-color: #3A160E;
}

.acc_fee .btn_arrow {
  font-size: 15px;
  font-size: 0.9375rem;
  padding: 0.5em 5em 0.5em 1.75em;
}
.acc_fee .btn_arrow:hover, .acc_fee .btn_arrow:focus, .acc_fee .btn_arrow.focus, .acc_fee .btn_arrow:active {
  background-color: #3A160E;
}

.acc_faq .btn,
.acc_inspec .btn {
  font-family: "Noto Serif JP", serif;
  font-size: 16px;
  font-size: 1rem;
  background-color: #FFF;
}
.acc_faq .btn:hover, .acc_faq .btn:focus, .acc_faq .btn.focus, .acc_faq .btn:active,
.acc_inspec .btn:hover,
.acc_inspec .btn:focus,
.acc_inspec .btn.focus,
.acc_inspec .btn:active {
  background-color: rgba(180, 213, 233, 0.2);
  color: #3A160E !important;
}
.acc_faq .btn[aria-expanded=false]:after,
.acc_inspec .btn[aria-expanded=false]:after {
  font-size: 180%;
  content: "\e917";
  color: #B4D5E9 !important;
  right: 0.375em;
  -webkit-transform: translateY(-45%);
      -ms-transform: translateY(-45%);
          transform: translateY(-45%);
}
@media (min-width: 768px) {
  .acc_faq .btn[aria-expanded=false]:after,
  .acc_inspec .btn[aria-expanded=false]:after {
    right: 0.5em;
  }
}
@media (min-width: 992px) {
  .acc_faq .btn[aria-expanded=false]:after,
  .acc_inspec .btn[aria-expanded=false]:after {
    right: 0.75em;
  }
}
.acc_faq .btn[aria-expanded=true],
.acc_inspec .btn[aria-expanded=true] {
  color: #3A160E;
  background-color: rgba(180, 213, 233, 0.2);
}
.acc_faq .btn[aria-expanded=true]:after,
.acc_inspec .btn[aria-expanded=true]:after {
  font-size: 180%;
  content: "\e918";
  color: #B4D5E9 !important;
  right: 0.375em;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
}
@media (min-width: 768px) {
  .acc_faq .btn[aria-expanded=true]:after,
  .acc_inspec .btn[aria-expanded=true]:after {
    right: 0.5em;
  }
}
@media (min-width: 992px) {
  .acc_faq .btn[aria-expanded=true]:after,
  .acc_inspec .btn[aria-expanded=true]:after {
    right: 0.75em;
  }
}

.faq2 .acc_faq .btn:hover, .faq2 .acc_faq .btn:focus, .faq2 .acc_faq .btn.focus, .faq2 .acc_faq .btn:active {
  background-color: rgba(231, 206, 213, 0.2);
}
.faq2 .acc_faq .btn[aria-expanded=false]:after {
  color: #E7CED5 !important;
}
.faq2 .acc_faq .btn[aria-expanded=true] {
  background-color: rgba(231, 206, 213, 0.2);
}
.faq2 .acc_faq .btn[aria-expanded=true]:after {
  color: #E7CED5 !important;
}

.faq3 .acc_faq .btn:hover, .faq3 .acc_faq .btn:focus, .faq3 .acc_faq .btn.focus, .faq3 .acc_faq .btn:active {
  background-color: rgba(205, 217, 190, 0.2);
}
.faq3 .acc_faq .btn[aria-expanded=false]:after {
  color: #CDD9BE !important;
}
.faq3 .acc_faq .btn[aria-expanded=true] {
  background-color: rgba(205, 217, 190, 0.2);
}
.faq3 .acc_faq .btn[aria-expanded=true]:after {
  color: #CDD9BE !important;
}

.faq4 .acc_faq .btn:hover, .faq4 .acc_faq .btn:focus, .faq4 .acc_faq .btn.focus, .faq4 .acc_faq .btn:active {
  background-color: rgba(193, 193, 193, 0.2);
}
.faq4 .acc_faq .btn[aria-expanded=false]:after {
  color: #C1C1C1 !important;
}
.faq4 .acc_faq .btn[aria-expanded=true] {
  background-color: rgba(193, 193, 193, 0.2);
}
.faq4 .acc_faq .btn[aria-expanded=true]:after {
  color: #C1C1C1 !important;
}

.faq5 .acc_faq .btn:hover, .faq5 .acc_faq .btn:focus, .faq5 .acc_faq .btn.focus, .faq5 .acc_faq .btn:active {
  background-color: rgba(224, 200, 178, 0.2);
}
.faq5 .acc_faq .btn[aria-expanded=false]:after {
  color: #E0C8B2 !important;
}
.faq5 .acc_faq .btn[aria-expanded=true] {
  background-color: rgba(224, 200, 178, 0.2);
}
.faq5 .acc_faq .btn[aria-expanded=true]:after {
  color: #E0C8B2 !important;
}

.acc_inspec .marker .btn {
  background-color: #efc65b;
}
.acc_inspec .marker + #secW3 .btn,
.acc_inspec .marker + #secN1 .btn,
.acc_inspec .marker + #secN2 .btn {
  background-color: #efc65b;
}
.marker .acc_inspec #headingInspec10-1 .btn,
.marker .acc_inspec #headingInspec10-2 .btn,
.marker .acc_inspec #headingInspec10-3 .btn,
.marker .acc_inspec #headingInspec10-4 .btn,
.marker .acc_inspec #headingInspec10-5 .btn,
.marker .acc_inspec #headingInspec10-6 .btn {
  background-color: #efc65b;
}
@media (max-width: 991.98px) {
  .acc_inspec .btn {
    padding-left: 1rem;
  }
}
.acc_inspec .btn:hover, .acc_inspec .btn:focus, .acc_inspec .btn.focus, .acc_inspec .btn:active {
  background-color: #e3ded3 !important;
}
.acc_inspec .btn[aria-expanded=false]:after {
  color: #c8bea8 !important;
}
.acc_inspec .btn[aria-expanded=true] {
  background-color: #FFF !important;
}
.acc_inspec .btn[aria-expanded=true]:after {
  color: #c8bea8 !important;
}
.acc_inspec .btn span.yoyaku {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  font-size: 13px;
  font-size: 0.8125rem;
  color: #FFF;
  letter-spacing: 2px;
  line-height: 1;
  border-radius: 4px;
  background-color: #8b3700;
  padding: 0.375rem 0.375rem 0.375rem 0.5rem;
  margin-right: 0.5rem;
  float: left;
}
.acc_inspec .btn span.fee {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  font-size: 18px;
  font-size: 1.125rem;
  letter-spacing: 0.01em;
  display: block;
  float: right;
  margin-right: 0.75rem;
}
.acc_inspec .btn span.fee span {
  font-size: 12px;
  font-size: 0.75rem;
  letter-spacing: 0;
  padding-right: 0.5rem;
  padding-top: 0;
}

/* inspection */
table .btn {
  font-size: 12px;
  font-size: 0.75rem;
  letter-spacing: 2px;
  line-height: 1;
  background-color: #FFF;
  padding: 0.375rem 0.25rem 0.375rem 0.375rem;
  float: right;
  -webkit-box-shadow: -2px 2px 0px 0px rgba(150, 131, 95, 0.5);
          box-shadow: -2px 2px 0px 0px rgba(150, 131, 95, 0.5);
}

.no_one,
.no_two,
.no_three {
  font-family: "Noto Serif JP", serif;
  font-weight: 400;
  color: #3A160E;
  font-size: 14px;
  font-size: 0.875rem;
  line-height: 1.2;
  text-align: left;
  border-color: #9C8A86;
  background: rgb(243, 236, 216);
  background: -webkit-gradient(linear, left top, right top, from(rgb(255, 255, 255)), color-stop(35%, rgb(255, 255, 255)), color-stop(65%, rgb(243, 236, 216)), to(rgb(243, 236, 216)));
  background: linear-gradient(90deg, rgb(255, 255, 255) 0%, rgb(255, 255, 255) 35%, rgb(243, 236, 216) 65%, rgb(243, 236, 216) 100%);
  padding: 1.25rem 0 0 70px;
  position: relative;
  height: 60px;
  margin-bottom: 0.5rem;
}
.no_one::before,
.no_two::before,
.no_three::before {
  content: "";
  background-image: url(../img/inspection/no1.svg);
  background-repeat: no-repeat;
  background-position: left 10px center;
  background-size: 50px auto;
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
}
.no_one::after,
.no_two::after,
.no_three::after {
  font-size: 180%;
  color: #efc65b;
  font-family: "icomoon" !important;
  speak: never;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  content: "\e917";
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-45%);
      -ms-transform: translateY(-45%);
          transform: translateY(-45%);
  right: 0.5rem;
  z-index: 1;
}
.no_one:hover, .no_one:focus, .no_one.focus,
.no_two:hover,
.no_two:focus,
.no_two.focus,
.no_three:hover,
.no_three:focus,
.no_three.focus {
  color: #3A160E;
  border-color: #9C8A86;
  background: -webkit-gradient(linear, right top, left top, from(rgb(255, 255, 255)), color-stop(35%, rgb(255, 255, 255)), color-stop(65%, rgb(243, 236, 216)), to(rgb(243, 236, 216)));
  background: linear-gradient(270deg, rgb(255, 255, 255) 0%, rgb(255, 255, 255) 35%, rgb(243, 236, 216) 65%, rgb(243, 236, 216) 100%);
}
.no_one span,
.no_two span,
.no_three span {
  font-size: 80%;
}
@media (min-width: 360px) {
  .no_one,
  .no_two,
  .no_three {
    font-size: 16px;
    font-size: 1rem;
    height: 80px;
    padding: 1.75rem 0 0 90px;
  }
  .no_one::before,
  .no_two::before,
  .no_three::before {
    background-size: auto 60px;
  }
  .no_one::after,
  .no_two::after,
  .no_three::after {
    right: 0.75rem;
  }
}
@media (min-width: 768px) {
  .no_one,
  .no_two,
  .no_three {
    font-size: 15px;
    font-size: 0.9375rem;
  }
}
@media (min-width: 992px) {
  .no_one,
  .no_two,
  .no_three {
    font-size: 18px;
    font-size: 1.125rem;
    text-align: left;
    height: 100px;
    padding: 2.5rem 0 0 120px;
    margin-bottom: 1rem;
  }
  .no_one::before,
  .no_two::before,
  .no_three::before {
    background-position: left 10px center;
    background-size: auto 85px;
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
  }
  .no_one::after,
  .no_two::after,
  .no_three::after {
    right: 1rem;
  }
}

.no_two::before {
  background-image: url(../img/inspection/no2.svg);
}
.no_two::after {
  font-size: 180%;
  color: #babdbe;
}

.no_three::before {
  background-image: url(../img/inspection/no3.svg);
}
.no_three::after {
  font-size: 180%;
  color: #b88c5b;
}

.text_br {
  padding-top: 4px;
}
@media (min-width: 360px) {
  .text_br {
    padding-top: 10px;
  }
}
@media (min-width: 768px) {
  .text_br {
    padding-top: 12px;
  }
}
@media (min-width: 992px) {
  .text_br {
    padding-top: 16px;
  }
}

.text_br2 {
  padding-top: 12px;
}
@media (min-width: 360px) {
  .text_br2 {
    padding-top: 16px;
  }
}
@media (min-width: 768px) {
  .text_br2 {
    padding-top: 20px;
  }
}
@media (min-width: 992px) {
  .text_br2 {
    padding-top: 26px;
  }
}
@media (max-width: 991.98px) {
  .text_br2 span {
    font-size: 75%;
  }
}

.btn_new {
  font-family: "Noto Serif JP", serif;
  font-weight: 400;
  color: #3A160E;
  font-size: 14px;
  font-size: 0.875rem;
  line-height: 1.2;
  text-align: left;
  border: none;
  background-color: #FFF;
  padding: 0.875rem 0 0 60px;
  position: relative;
  height: 65px;
}
.btn_new::before {
  content: "";
  background-image: url(../img/inspection/new.svg);
  background-repeat: no-repeat;
  background-position: left center;
  background-size: auto 30px;
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
}
.btn_new::after {
  font-size: 180%;
  color: #c8bea8;
  font-family: "icomoon" !important;
  speak: never;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  content: "\e917";
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-45%);
      -ms-transform: translateY(-45%);
          transform: translateY(-45%);
  right: 0.5rem;
  z-index: 1;
}
.btn_new:hover, .btn_new:focus, .btn_new.focus {
  color: #3A160E;
  border-color: #9C8A86;
  background: -webkit-gradient(linear, right top, left top, from(rgb(255, 255, 255)), color-stop(35%, rgb(255, 255, 255)), color-stop(65%, rgb(243, 236, 216)), to(rgb(243, 236, 216)));
  background: linear-gradient(270deg, rgb(255, 255, 255) 0%, rgb(255, 255, 255) 35%, rgb(243, 236, 216) 65%, rgb(243, 236, 216) 100%);
}
.btn_new span.new_fee {
  display: block;
}
.btn_new span.new_small {
  font-size: 11px;
  font-size: 0.6875rem;
}
.btn_new span.yoyaku {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  font-size: 10px;
  font-size: 0.625rem;
  color: #FFF;
  line-height: 1;
  border-radius: 4px;
  background-color: #8b3700;
  padding: 0.365rem;
  margin-right: 0.5rem;
  float: left;
}
.btn_new + hr {
  border-top: 1px solid #E5E5E5;
  margin: 0.375rem 0;
}
@media (min-width: 360px) {
  .btn_new {
    padding: 1.375rem 0 0 60px;
  }
  .btn_new::after {
    right: 0.75rem;
  }
  .btn_new span.new_fee {
    float: right;
    padding-right: 3rem;
  }
  .btn_new span.new_small {
    font-size: 11px;
    font-size: 0.6875rem;
  }
}
@media (min-width: 480px) {
  .btn_new span.new_small {
    font-size: 12px;
    font-size: 0.75rem;
  }
}
@media (min-width: 576px) {
  .btn_new span.new_small {
    font-size: 14px;
    font-size: 0.875rem;
  }
}
@media (min-width: 768px) {
  .btn_new {
    font-size: 16px;
    font-size: 1rem;
    padding: 1.375rem 0 0 100px;
  }
  .btn_new::before {
    background-position: left 10px center;
    background-size: auto 40px;
  }
  .btn_new span.new_fee {
    padding-right: 5rem;
  }
  .btn_new span.yoyaku {
    font-size: 13px;
    font-size: 0.8125rem;
    letter-spacing: 2px;
    padding: 0.375rem 0.375rem 0.375rem 0.5rem;
    margin-top: -2px;
  }
}
@media (min-width: 992px) {
  .btn_new {
    font-size: 18px;
    font-size: 1.125rem;
    padding: 1.375rem 0 0 130px;
  }
  .btn_new::before {
    background-position: left 10px center;
    background-size: auto 50px;
  }
  .btn_new::after {
    right: 1rem;
  }
  .btn_new span.new_fee {
    padding-right: 7rem;
  }
}

/* footer accordion */
.acc_footer .btn {
  font-size: 14px;
  font-size: 0.875rem;
  -webkit-box-shadow: none;
          box-shadow: none;
  padding: 0.625rem 1rem 0.625rem 0.5rem;
  position: relative;
  margin: 0;
}
.acc_footer .btn:hover, .acc_footer .btn:focus, .acc_footer .btn.focus, .acc_footer .btn:active {
  color: #96835F;
}
.acc_footer .btn[aria-expanded=false]:after {
  font-family: "icomoon" !important;
  speak: never;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  content: "\e90e";
  font-size: 16px;
  font-size: 1rem;
  position: absolute;
  top: 0.75rem;
  right: 0.5rem;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
.acc_footer .btn[aria-expanded=true]:after {
  font-family: "icomoon" !important;
  speak: never;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  content: "\e90e";
  color: #FFF;
  font-size: 16px;
  font-size: 1rem;
  position: absolute;
  top: 0.75rem;
  right: 0.5rem;
  -webkit-transform: rotate(135deg);
      -ms-transform: rotate(135deg);
          transform: rotate(135deg);
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
.acc_footer .show > btn {
  background-color: #09C;
}

/* Table */
table th,
table td {
  color: #3A160E;
  line-height: 1.6;
  padding: 0.625rem;
}
table th {
  font-weight: 300;
  white-space: nowrap;
}

/* normal */
.table_normal th {
  border: 1px solid #9C8A86;
}
.table_normal td {
  border: 1px solid #9C8A86;
  background-color: #FFF;
}

/* vertical */
.table_vertical th,
.table_vertical td {
  text-align: left;
  line-height: 1.8;
  padding: 0.7rem 1rem 0.75rem 1rem;
}
.table_vertical th {
  display: block;
  border: 1px solid #9C8A86;
  border-bottom: none;
  background-color: #EBE8E7;
}
.table_vertical td {
  display: block;
  border: 1px solid #9C8A86;
  border-bottom: none;
  background-color: #FFF;
}
.table_vertical tr:last-child td {
  border-bottom: 1px solid #9C8A86;
}
@media (min-width: 768px) {
  .table_vertical th,
  .table_vertical td {
    display: table-cell;
    border: 1px solid #9C8A86;
  }
  .table_vertical th {
    width: 18em;
  }
}

@media (max-width: 359.98px) {
  .break_word {
    font-size: 14px;
    font-size: 0.875rem;
  }
}

/* history horizontal line */
.table_vertical_horizontal_line th,
.table_vertical_horizontal_line td {
  text-align: left;
  line-height: 1.8;
  padding: 0.7rem 1.5rem 0.75rem 1.5rem;
}
.table_vertical_horizontal_line th {
  display: block;
  text-align: left;
  vertical-align: top;
  border-top: 1px solid #9C8A86;
  background-color: #F5F3F3;
  position: relative;
}
.table_vertical_horizontal_line td {
  display: block;
}
.table_vertical_horizontal_line tr:last-child td {
  border-bottom: 1px solid #9C8A86;
}
@media (min-width: 768px) {
  .table_vertical_horizontal_line th,
  .table_vertical_horizontal_line td {
    display: table-cell;
    border-top: 1px solid #9C8A86;
    border-bottom: 1px solid #9C8A86;
    padding: 1rem 2.5rem;
  }
  .table_vertical_horizontal_line th {
    width: 11em;
  }
  .table_vertical_horizontal_line td {
    padding-right: 1.5rem;
  }
}
.table_vertical_horizontal_line dl {
  margin: 0;
}
.table_vertical_horizontal_line dt {
  font-weight: 300;
  float: left;
  width: 5em;
}
.table_vertical_horizontal_line dd {
  padding-left: 5em;
  margin-bottom: 0.25rem;
}
@media (min-width: 768px) {
  .table_vertical_horizontal_line dt {
    float: left;
    width: 5em;
  }
  .table_vertical_horizontal_line dd {
    padding-left: 5em;
  }
}

/* dock */
.table_dock {
  margin-bottom: 0;
}
@media (min-width: 768px) {
  .table_dock th,
  .table_dock td {
    padding: 0.625rem 1rem;
  }
}
.table_dock tr th:nth-of-type(1) {
  text-align: center;
}
@media (max-width: 767.98px) {
  .table_dock tr th:nth-of-type(1) span {
    -webkit-writing-mode: vertical-rl;
        -ms-writing-mode: tb-rl;
            writing-mode: vertical-rl;
    width: 1.5rem;
  }
}
.table_dock tr td:nth-of-type(2) {
  text-align: right;
  white-space: nowrap;
}

.table_noline {
  margin-bottom: 0;
}
.table_noline th,
.table_noline td {
  color: #FFF;
  background-color: transparent;
  border: none;
  padding: 0.5rem;
}
.table_noline th {
  vertical-align: top;
  width: 6rem;
  padding-bottom: 0;
}
.table_noline tr:last-child td {
  border-bottom: none;
}
.table_noline caption {
  color: #FFF;
  caption-side: top;
  border-bottom: 1px solid #FFF;
  padding-top: 0;
}
.table_noline span {
  padding-left: 0.75em;
}
@media (min-width: 768px) {
  .table_noline th,
  .table_noline td {
    padding: 0.5rem 0.5rem 0 0.5rem;
  }
}

/* way */
.table_odd_color {
  margin-bottom: 3rem;
}
.table_odd_color th,
.table_odd_color td {
  text-align: left;
  padding: 0.625rem 1rem;
}
.table_odd_color tr:nth-child(odd) td {
  color: #FFF;
  background-color: #96835F;
}
.table_odd_color tr:nth-child(even) td {
  padding: 1rem;
}

/* inspection */
.table_inspection th,
.table_inspection td {
  font-size: 14px;
  font-size: 0.875rem;
  text-align: center;
  background-color: #FFF;
  white-space: nowrap;
  padding: 0.5rem;
}
.table_inspection th:nth-of-type(1) {
  text-align: left;
  background-color: #f6ece4;
  vertical-align: top;
  min-width: 10em;
}
.table_inspection tr:nth-of-type(1) th {
  color: #FFF;
  background-color: #3A160E;
  text-align: center;
  vertical-align: middle;
}
.table_inspection tr:nth-of-type(2) th {
  color: #FFF;
  background-color: rgba(150, 131, 95, 0.7);
  text-align: center;
  vertical-align: middle;
}
.table_inspection tr td:nth-of-type(1) {
  text-align: left;
}

.modal-body table {
  margin-bottom: 0;
}
.modal-body table th,
.modal-body table td {
  border-color: #E1DCDB;
  border-left: none;
  border-right: none;
  padding: 0.5rem 1rem;
}
.modal-body table tr th:nth-of-type(1),
.modal-body table tr td:nth-of-type(1) {
  border-top: none;
}
.modal-body table th {
  vertical-align: top;
  max-width: 8em;
}

.table_allergen {
  margin-bottom: 0;
}
.table_allergen th,
.table_allergen td {
  font-size: 13px;
  font-size: 0.8125rem;
  text-align: center;
  padding: 0.25rem;
}
.table_allergen th {
  background-color: #e3ded3;
}
.table_allergen td {
  background-color: transparent;
  width: 50%;
}

/* cancer */
.table_cancer {
  margin-bottom: 1rem;
}
.table_cancer th,
.table_cancer td {
  font-size: 14px;
  font-size: 0.875rem;
  background-color: #FFF;
  text-align: left;
  vertical-align: middle !important;
  padding: 0.5rem;
}
.table_cancer th:nth-of-type(1) {
  background-color: #f6ece4;
  vertical-align: top;
  width: 9em;
}
.table_cancer tr:nth-of-type(1) th {
  color: #FFF;
  background-color: #3A160E;
  text-align: center;
}
.table_cancer tr td:nth-of-type(1) {
  white-space: nowrap;
}
.table_cancer tr td:nth-of-type(2) {
  min-width: 12em;
}
.table_cancer tr td:nth-of-type(3) {
  text-align: right;
  white-space: nowrap;
}

/* guide */
.table_ben {
  margin-bottom: 1rem;
}
.table_ben th,
.table_ben td {
  font-size: 13px;
  font-size: 0.8125rem;
  text-align: center;
  padding: 0.25rem 0.125rem;
}
.table_ben th.arrow_double {
  background-image: url(../img/common/flow_arrow_left.svg), url(../img/common/flow_arrow_right.svg);
  background-repeat: no-repeat, no-repeat;
  background-position: left 20px center, right 20px center;
  background-size: auto 90%, auto 90%;
}
.table_ben td {
  width: 12.5%;
}

/* access */
.table_time_table {
  border: 1px solid #9C8A86;
  margin-bottom: 1rem;
}
.table_time_table th,
.table_time_table td {
  font-size: 14px;
  font-size: 0.875rem;
  padding: 0.25rem 0.75rem;
}
.table_time_table th {
  color: #FFF;
  background-color: rgba(150, 131, 95, 0.8);
  text-align: center;
}
.table_time_table td {
  white-space: nowrap;
}
.table_time_table tr:nth-child(odd) td {
  color: #FFF;
  background-color: rgba(150, 131, 95, 0.8);
}
.table_time_table tr td:nth-of-type(1) {
  border-right: 1px solid #9C8A86;
}

/* Images */
figure figcaption {
  font-size: 16px;
  font-size: 1rem;
  text-align: center;
  color: #3A160E;
}

.max_width {
  max-width: 380px;
  display: block;
  margin-right: auto;
  margin-left: auto;
}
@media (min-width: 768px) {
  .max_width {
    max-width: none;
  }
}

.max_width_float {
  max-width: 320px;
  display: block;
  margin-right: auto;
  margin-left: auto;
}
@media (min-width: 768px) {
  .max_width_float {
    max-width: 280px;
  }
}
@media (min-width: 992px) {
  .max_width_float {
    max-width: 380px;
  }
}

.max_width_vertical {
  max-width: 260px;
  display: block;
  margin-left: auto;
  margin-right: auto;
}
@media (min-width: 768px) {
  .max_width_vertical {
    max-width: none;
  }
}

.max_width_vertical_float {
  max-width: 260px;
  display: block;
  margin-left: auto;
  margin-right: auto;
}
@media (min-width: 768px) {
  .max_width_vertical_float {
    max-width: 210px;
  }
}
@media (min-width: 992px) {
  .max_width_vertical_float {
    max-width: 280px;
  }
}

.privacy_mark {
  width: 60px;
  margin: 1rem 0 0 auto;
}
.privacy_mark figure {
  display: block;
}
@media (min-width: 768px) {
  .privacy_mark {
    width: 80px;
  }
}
@media (min-width: 992px) {
  .privacy_mark {
    width: 100px;
  }
}

.above_text {
  position: relative;
}
.above_text figcaption {
  position: absolute;
  bottom: 0.5rem;
  left: 0.75rem;
}

figcaption.text-small,
figcaption span.text-small {
  font-size: 13px;
}

figcaption.fig_border_square {
  border: 1px solid #9C8A86;
  padding: 0.5rem;
  margin-top: 0.5rem;
}

.flow_arrow,
.flow_arrow_right,
.flow_arrow_left {
  position: relative;
  margin-bottom: 45px;
}
.flow_arrow::after,
.flow_arrow_right::after,
.flow_arrow_left::after {
  content: "";
  background-image: url(../img/common/flow_arrow.svg);
  background-repeat: no-repeat;
  background-size: contain;
  width: 25px;
  height: 25px;
  position: absolute;
  top: calc(100% + 10px);
  left: 50%;
  -webkit-transform: translateX(-50%);
      -ms-transform: translateX(-50%);
          transform: translateX(-50%);
}
@media (min-width: 992px) {
  .flow_arrow::after,
  .flow_arrow_right::after,
  .flow_arrow_left::after {
    width: 30px;
    height: 30px;
    top: calc(100% + 5px);
  }
}

@media (min-width: 768px) {
  .flow_arrow_right::after {
    background-image: url(../img/common/flow_arrow_right.svg);
    top: 35%;
    left: calc(100% + 3px);
    -webkit-transform: translateX(0);
        -ms-transform: translateX(0);
            transform: translateX(0);
  }
}
@media (min-width: 992px) {
  .flow_arrow_right::after {
    left: calc(100% + 15px);
  }
}

@media (min-width: 768px) {
  .flow_arrow_left::after {
    background-image: url(../img/common/flow_arrow_left.svg);
    top: 35%;
    left: -28px;
    -webkit-transform: translateX(0);
        -ms-transform: translateX(0);
            transform: translateX(0);
  }
}
@media (min-width: 992px) {
  .flow_arrow_left::after {
    left: -45px;
  }
}

.map_illust {
  border: 1px solid #c5bfab;
  margin-bottom: 1rem;
}
.map_illust img {
  vertical-align: top;
}

.img_qr {
  max-width: 110px;
  display: block;
  margin: 1rem auto;
}

/* Animation */
@-webkit-keyframes fadeIn {
  from {
    opacity: 0;
    -webkit-transform: translateY(20px);
            transform: translateY(20px);
  }
  to {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}
@keyframes fadeIn {
  from {
    opacity: 0;
    -webkit-transform: translateY(20px);
            transform: translateY(20px);
  }
  to {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}
.fadeIn {
  -webkit-animation-name: fadeIn;
          animation-name: fadeIn;
}

@-webkit-keyframes fadeOut {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
  }
}

@keyframes fadeOut {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
  }
}
.animate__fadeOut {
  -webkit-animation-name: fadeOut;
          animation-name: fadeOut;
}

.delighter.right {
  -webkit-transform: translate(-30px);
      -ms-transform: translate(-30px);
          transform: translate(-30px);
  opacity: 0;
  -webkit-transition: all 0.5s ease-out;
  transition: all 0.5s ease-out;
}

.delighter.right.started {
  -webkit-transform: none;
      -ms-transform: none;
          transform: none;
  opacity: 1;
}

.delighter.left {
  -webkit-transform: translate(30px);
      -ms-transform: translate(30px);
          transform: translate(30px);
  opacity: 0;
  -webkit-transition: all 0.5s ease-out;
  transition: all 0.5s ease-out;
}

.delighter.left.started {
  -webkit-transform: none;
      -ms-transform: none;
          transform: none;
  opacity: 1;
}

.delighter.bottom {
  -webkit-transform: translatey(30px);
      -ms-transform: translatey(30px);
          transform: translatey(30px);
  opacity: 0;
  -webkit-transition: all 1s ease-out;
  transition: all 1s ease-out;
}

.delighter.bottom.started {
  -webkit-transform: none;
      -ms-transform: none;
          transform: none;
  opacity: 1;
}

.delighter.bottom_slow {
  -webkit-transform: translatey(30px);
      -ms-transform: translatey(30px);
          transform: translatey(30px);
  opacity: 0;
  -webkit-transition: all 1.5s ease-out;
  transition: all 1.5s ease-out;
}

.delighter.bottom_slow.started {
  -webkit-transform: none;
      -ms-transform: none;
          transform: none;
  opacity: 1;
}

/* Content etc. ------------------- */
.section {
  padding-top: 3rem;
  padding-bottom: 3rem;
}
.section .container p:last-child {
  margin-bottom: 0;
}
@media (min-width: 768px) {
  .section {
    padding-bottom: 4rem;
  }
}
@media (min-width: 768px) {
  .home .section {
    padding-top: 4rem;
    padding-bottom: 4rem;
  }
}

.bg_leaf1 {
  background-image: url(../img/top/bg_leaf1_top.png), url(../img/top/bg_leaf1_bottom.png);
  background-repeat: no-repeat;
  background-position: left top, right bottom;
  background-size: 100% auto;
}
@media (min-width: 576px) {
  .bg_leaf1 {
    background-image: url(../img/top/bg_leaf1_top.png);
    background-position: left top;
    background-size: auto 100%;
  }
}
@media (min-width: 768px) {
  .bg_leaf1 {
    background-image: url(../img/top/bg_leaf1_md.png);
    background-position: center bottom;
    background-size: 100% auto;
  }
}
@media (min-width: 1400px) {
  .bg_leaf1 {
    background-image: none;
  }
}

.pickup {
  background-image: url(../img/top/bg_pickup.png);
  background-repeat: no-repeat;
  background-position: center top;
  background-size: 100% auto;
  padding: 0px !important;
}
@media (min-width: 576px) {
  .pickup {
    background-image: none;
  }
}
@media (min-width: 768px) {
  .pickup {
    background-image: url(../img/top/bg_pickup_md.png);
  }
}
@media (min-width: 1400px) {
  .pickup {
    background-image: none;
  }
}

.bg_leaf2 {
  background-image: url(../img/top/bg_leaf2_top.png), url(../img/top/bg_leaf2_bottom.png);
  background-repeat: no-repeat;
  background-position: center top, center center;
  background-size: 100% auto;
  padding-bottom: 0;
  position: relative;
}
@media (min-width: 768px) {
  .bg_leaf2 {
    background-image: url(../img/top/bg_leaf2_top_md.png), url(../img/top/bg_leaf2_bottom_md.png);
    background-position: center top, center bottom;
  }
}

.why1,
.why2,
.why3 {
  background-image: url(../img/top/trust.jpg);
  background-size: 100% auto;
  background-repeat: no-repeat;
  background-position: center top;
  padding-top: 48%;
  margin-bottom: 4rem;
}
@media (min-width: 480px) {
  .why1,
  .why2,
  .why3 {
    padding-top: 41.6%;
  }
}
@media (min-width: 768px) {
  .why1,
  .why2,
  .why3 {
    background-size: 58% auto;
    background-position: right top;
    padding-top: 60px;
  }
}
@media (min-width: 992px) {
  .why1,
  .why2,
  .why3 {
    margin-bottom: 6rem;
  }
}
.why1 .border_box,
.why2 .border_box,
.why3 .border_box {
  background-color: rgba(59, 22, 14, 0.75);
  width: 100%;
  margin-bottom: 1rem;
}
@media (min-width: 480px) {
  .why1 .border_box,
  .why2 .border_box,
  .why3 .border_box {
    width: 80%;
  }
}
@media (min-width: 768px) {
  .why1 .border_box,
  .why2 .border_box,
  .why3 .border_box {
    width: 60%;
  }
}
@media (min-width: 992px) {
  .why1 .border_box,
  .why2 .border_box,
  .why3 .border_box {
    width: 50%;
  }
}

.why1 {
  margin-bottom: 1rem;
}
.why1 + .container {
  margin-bottom: 4rem;
}

.why2 {
  background-image: url(../img/top/comfortable.jpg);
}
@media (min-width: 768px) {
  .why2 {
    background-position: left top;
  }
}
@media (min-width: 480px) {
  .why2 .border_box {
    margin-left: auto;
  }
}

.why3 {
  background-image: url(../img/top/hospitality.jpg);
}

.bg_leaf3 {
  background-image: url(../img/top/bg_leaf3.png);
  background-repeat: no-repeat;
  background-position: center top30px;
  background-size: 100% auto;
}
@media (min-width: 768px) {
  .bg_leaf3 {
    background-image: none;
  }
}

@media (min-width: 768px) {
  .bg_ribbon {
    background-image: url(../img/common/bg_ribbon.svg);
    background-repeat: no-repeat;
    background-size: contain;
    padding-top: 8%;
    margin-top: 2rem;
  }
}

.hr_bg_ribbon {
  background-image: url(../img/common/bg_ribbon.svg);
  background-repeat: no-repeat;
  background-size: contain;
  padding-bottom: calc(10% + 2rem);
  -webkit-transform: scale(-1, -1);
      -ms-transform: scale(-1, -1);
          transform: scale(-1, -1);
}

.first_sec {
  background-color: #FFF;
  background-image: url(../img/common/bg_ttl.svg);
  background-repeat: no-repeat;
  background-position: center bottom -1px;
  background-size: 100% auto;
  padding-top: 1rem;
}
@media (min-width: 768px) {
  .first_sec {
    background-image: url(../img/common/bg_first_sec.svg);
    padding-top: 3rem;
    padding-bottom: 8rem;
  }
}
@media (min-width: 992px) {
  .first_sec {
    padding-bottom: 10rem;
  }
}
@media (max-width: 767.98px) {
  .checkup .first_sec {
    background-color: transparent;
    background-image: none;
  }
}
.inspection_index .first_sec, .sitemap .first_sec {
  background-color: transparent;
  background-position: center top;
}

@media (min-width: 1500px) {
  .first_sec_low {
    background-image: url(../img/common/bg_first_sec_low.svg);
  }
}

.hr_bottom .container {
  border-bottom: 1px solid #555;
  padding-bottom: 3rem;
}
@media (min-width: 768px) {
  .hr_bottom .container {
    padding-bottom: 4rem;
  }
}

.faq1,
.faq2,
.faq3,
.faq4,
.faq5 {
  border-top: 1px solid #E5E5E5;
  padding-top: 4px;
  padding-left: 2.375rem;
  position: relative;
}
.faq1::before,
.faq2::before,
.faq3::before,
.faq4::before,
.faq5::before {
  background-color: rgba(180, 213, 233, 0.55);
  background-image: url(../img/faq/q.svg);
  background-repeat: no-repeat;
  background-position: center 16px;
  background-size: 45% auto;
  width: 2rem;
  content: "";
  position: absolute;
  top: 4px;
  left: 0;
  bottom: 0;
}
@media (min-width: 768px) {
  .faq1,
  .faq2,
  .faq3,
  .faq4,
  .faq5 {
    padding-left: 2.875rem;
  }
  .faq1::before,
  .faq2::before,
  .faq3::before,
  .faq4::before,
  .faq5::before {
    width: 2.5rem;
  }
}
@media (min-width: 992px) {
  .faq1,
  .faq2,
  .faq3,
  .faq4,
  .faq5 {
    padding-left: 3.375rem;
  }
  .faq1::before,
  .faq2::before,
  .faq3::before,
  .faq4::before,
  .faq5::before {
    width: 3rem;
  }
}
@media (min-width: 1200px) {
  .faq1,
  .faq2,
  .faq3,
  .faq4,
  .faq5 {
    padding-left: 3.875rem;
  }
  .faq1::before,
  .faq2::before,
  .faq3::before,
  .faq4::before,
  .faq5::before {
    width: 3.5rem;
  }
}

.faq2::before {
  background-color: rgba(231, 206, 213, 0.55);
}

.faq3::before {
  background-color: rgba(205, 217, 190, 0.55);
}

.faq4::before {
  background-color: rgba(193, 193, 193, 0.55);
}

.faq5::before {
  background-color: rgba(224, 200, 178, 0.55);
}

.border_box {
  padding: 15px;
  margin-bottom: 2rem;
}
.border_box p:last-child,
.border_box ul:last-child,
.border_box figure {
  margin-bottom: 0;
}
@media (min-width: 768px) {
  .border_box {
    padding: 20px;
  }
}
@media (min-width: 992px) {
  .border_box {
    padding: 25px;
  }
}
@media (min-width: 1200px) {
  .border_box {
    padding: 30px;
  }
}

.border_tb_box {
  border-top: 1px solid #555;
  margin-bottom: 0;
}
@media (min-width: 768px) {
  .border_tb_box {
    border-bottom: 1px solid #555;
  }
}
.row [class*=col-]:last-child .border_tb_box {
  border-bottom: 1px solid #555;
  margin-bottom: 2rem;
}

.border_inspection_box {
  text-align: left;
  border-top: 1px solid #E5E5E5;
  width: 100%;
  margin-bottom: 0;
}
@media (min-width: 768px) {
  .border_inspection_box {
    padding: 15px;
  }
}
.border_inspection_box .card:last-child {
  margin-bottom: 0;
}

.container .row:last-child .border_inspection_box {
  border-bottom: 1px solid #E5E5E5;
}
@media (max-width: 767.98px) {
  .container .row:last-child .col-md-8 .border_inspection_box {
    border-top: none;
  }
}

.link_box {
  position: relative;
}
.link_box a {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
}
.link_box a:hover {
  background: rgba(255, 255, 255, 0.3);
}
.link_box:hover img {
  opacity: 0.7;
  filter: alpha(opacity=70);
  -ms-filter: "alpha( opacity=70 )";
}

.cancer_link_box,
.stomach_link_box {
  text-align: left;
  background-color: #3A160E;
  background-image: url(../img/inspection/cancer_link.jpg);
  background-repeat: no-repeat;
  background-position: center top;
  padding-top: 57.8125%;
  background-size: 101% auto;
  position: relative;
}
@media (min-width: 576px) {
  .cancer_link_box,
  .stomach_link_box {
    background-image: none;
    padding-top: 0;
    padding-left: 40%;
  }
  .cancer_link_box::before,
  .stomach_link_box::before {
    content: "";
    background-image: url(../img/inspection/cancer_link_sm.jpg);
    background-size: cover;
    width: 40%;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    z-index: 0;
  }
}
@media (min-width: 768px) {
  .cancer_link_box,
  .stomach_link_box {
    min-height: 160px;
  }
}
@media (min-width: 992px) {
  .cancer_link_box,
  .stomach_link_box {
    padding-left: 42%;
  }
  .cancer_link_box::before,
  .stomach_link_box::before {
    width: 42%;
  }
}
.cancer_link_box .h_arrow,
.stomach_link_box .h_arrow {
  font-family: "Noto Sans JP", sans-serif;
  display: inline-block;
  padding-right: 4rem;
  position: relative;
}
.cancer_link_box .h_arrow::after,
.stomach_link_box .h_arrow::after {
  font-size: 250%;
  font-family: "icomoon" !important;
  speak: never;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  content: "\e904";
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-52%);
      -ms-transform: translateY(-52%);
          transform: translateY(-52%);
  right: 0;
}
.cancer_link_box:hover .h_arrow::after,
.stomach_link_box:hover .h_arrow::after {
  right: -5px;
  -webkit-transition: all 0.2s ease;
  transition: all 0.2s ease;
}

.stomach_link_box {
  background-image: url(../img/inspection/stomach_link.jpg);
}
@media (min-width: 576px) {
  .stomach_link_box {
    background-image: none;
  }
  .stomach_link_box::before {
    content: "";
    background-image: url(../img/inspection/stomach_link_sm.jpg);
  }
}

@media (min-width: 1400px) {
  .top #content {
    background-image: url(../img/top/bg_leaf1_xl.png);
    background-repeat: no-repeat;
    background-position: center top;
    background-size: 140% auto;
  }
}
.page #content {
  background-image: url(../img/common/bg_ribbon.svg);
  background-repeat: no-repeat;
  background-position: center bottom 2rem;
  background-size: 100% auto;
  padding-bottom: calc(10% + 2rem);
}
.news #content {
  background-image: url(img/common/bg_news.svg);
  background-repeat: no-repeat;
  background-position: center bottom;
  background-size: 100% auto;
  padding-top: 3rem;
  padding-bottom: 3rem;
}
@media (min-width: 992px) {
  .news #content {
    padding-top: 4rem;
    padding-bottom: 4rem;
  }
}
@media (min-width: 1200px) {
  #content .container {
    max-width: 960px;
  }
}
@media (min-width: 1200px) {
  .facility #content .container {
    max-width: 1140px;
  }
}
@media (min-width: 992px) {
  #content .row20 {
    margin-right: -20px;
    margin-left: -20px;
  }
  #content .row20 > .col,
  #content .row20 > [class*=col-] {
    padding-right: 20px;
    padding-left: 20px;
  }
  #content .row30 {
    margin-right: -30px;
    margin-left: -30px;
  }
  #content .row30 > .col,
  #content .row30 > [class*=col-] {
    padding-right: 30px;
    padding-left: 30px;
  }
}

hr {
  border-top: 1px solid #555;
}
hr .home,
hr .page {
  margin: 0;
}

.page hr.p_wide {
  margin: 40px 0;
}
@media (min-width: 768px) {
  .page hr.p_wide {
    margin: 50px 0;
  }
}
@media (min-width: 992px) {
  .page hr.p_wide {
    margin: 60px 0;
  }
}

.page hr.gray {
  border-top: 1px solid #E5E5E5;
  margin-bottom: 3rem;
}

/* Top ------------------- */
/* Ticker */
.spt-container {
  position: relative;
}
@media (max-width: 767.98px) {
  .spt-container {
    margin-top: 2.5rem;
  }
}
@media (min-width: 992px) {
  .spt-container {
    margin-bottom: 3rem;
  }
}
.spt-container .spt-label {
  font-family: "Noto Serif JP", serif;
  text-align: center;
  border-radius: 6px 6px 0 0 !important;
}
@media (max-width: 767.98px) {
  .spt-container .spt-label {
    width: 100%;
    padding-top: 8px !important;
    padding-bottom: 8px !important;
    position: absolute;
    left: 0;
    top: calc(-100% + 6px);
  }
}
@media (min-width: 768px) {
  .spt-container .spt-label {
    width: 25%;
    border-radius: 6px 0 0 6px !important;
  }
}
@media (min-width: 992px) {
  .spt-container .spt-label {
    font-size: 20px !important;
  }
}
.spt-container .spt-marquee {
  color: #3A160E;
  border: 2px solid #96835F;
  border-radius: 0 0 6px 6px !important;
}
@media (min-width: 768px) {
  .spt-container .spt-marquee {
    border-radius: 0 6px 6px 0 !important;
    padding: 10px 16px 9px 16px !important;
  }
}
@media (min-width: 992px) {
  .spt-container .spt-marquee {
    padding: 11px 16px 11px 16px !important;
  }
}

/* News */
.schedule_box {
  max-width: 820px;
  margin: 1rem auto 0 auto;
}

/* pickup */
.pickup01,
.pickup02,
.pickup03,
.pickup04,
.pickup05,
.pickup06,
.pickup07,
.pickup08 {
  background-size: cover;
  background-position: center center;
  width: 100%;
  border-bottom: 4px solid #FFF;
}
@media (min-width: 768px) {
  .pickup01,
  .pickup02,
  .pickup03,
  .pickup04,
  .pickup05,
  .pickup06,
  .pickup07,
  .pickup08 {
    border-bottom: 1px solid #FFF;
  }
}
.pickup01 .link_box,
.pickup02 .link_box,
.pickup03 .link_box,
.pickup04 .link_box,
.pickup05 .link_box,
.pickup06 .link_box,
.pickup07 .link_box,
.pickup08 .link_box {
  background-color: rgba(59, 22, 14, 0.7);
  text-align: center;
  width: 240px;
  max-width: 300px;
}
.pickup01 .link_box a:hover,
.pickup02 .link_box a:hover,
.pickup03 .link_box a:hover,
.pickup04 .link_box a:hover,
.pickup05 .link_box a:hover,
.pickup06 .link_box a:hover,
.pickup07 .link_box a:hover,
.pickup08 .link_box a:hover {
  background: rgba(255, 255, 255, 0.1);
  cursor: pointer;
}
@media (min-width: 768px) {
  .pickup01 .link_box,
  .pickup02 .link_box,
  .pickup03 .link_box,
  .pickup04 .link_box,
  .pickup05 .link_box,
  .pickup06 .link_box,
  .pickup07 .link_box,
  .pickup08 .link_box {
    width: 250px;
    padding: 1.5rem 0.75rem;
  }
}
@media (min-width: 992px) {
  .pickup01 .link_box,
  .pickup02 .link_box,
  .pickup03 .link_box,
  .pickup04 .link_box,
  .pickup05 .link_box,
  .pickup06 .link_box,
  .pickup07 .link_box,
  .pickup08 .link_box {
    width: 270px;
  }
}

@media (min-width: 768px) {
  .pickup01,
  .pickup03,
  .pickup05 {
    border-right: 1px solid #FFF;
  }
}

@media (min-width: 992px) {
  .pickup03 {
    border-right: none;
  }
}

@media (min-width: 992px) {
  .pickup02,
  .pickup04 {
    border-right: 1px solid #FFF;
  }
}

@media (min-width: 992px) {
  .pickup07 {
    border-right: 1px solid #FFF;
  }
}

.pickup01,
.pickup02,
.pickup03 {
  height: 18rem;
}
@media (min-width: 768px) {
  .pickup01,
  .pickup02,
  .pickup03 {
    height: 280px;
  }
}
@media (min-width: 992px) {
  .pickup01,
  .pickup02,
  .pickup03 {
    height: 470px;
  }
}
@media (min-width: 1200px) {
  .pickup01,
  .pickup02,
  .pickup03 {
    height: 570px;
  }
}
.pickup01 .link_box,
.pickup02 .link_box,
.pickup03 .link_box {
  height: 11rem;
  padding: 1.75rem 1.5rem 0 1.5rem;
}
@media (min-width: 768px) {
  .pickup01 .link_box,
  .pickup02 .link_box,
  .pickup03 .link_box {
    height: 11.5rem;
    padding: 1.5rem 1.75rem 0 1.75rem;
  }
}
@media (min-width: 992px) {
  .pickup01 .link_box,
  .pickup02 .link_box,
  .pickup03 .link_box {
    height: 13rem;
    padding: 2rem 2rem 0 2rem;
  }
}

.pickup04,
.pickup05,
.pickup06 {
  background-position: center top;
  height: 18rem;
}
@media (min-width: 768px) {
  .pickup04,
  .pickup05,
  .pickup06 {
    height: 280px;
  }
}
@media (min-width: 1200px) {
  .pickup04,
  .pickup05,
  .pickup06 {
    height: 370px;
  }
}
.pickup04 .link_box,
.pickup05 .link_box,
.pickup06 .link_box {
  height: auto;
  padding: 0.75rem 0.75rem 1.5rem 0.75rem;
  margin-bottom: 1.5rem;
}
@media (min-width: 992px) {
  .pickup04 .link_box,
  .pickup05 .link_box,
  .pickup06 .link_box {
    margin-bottom: 2rem;
  }
}
@media (min-width: 1200px) {
  .pickup04 .link_box,
  .pickup05 .link_box,
  .pickup06 .link_box {
    margin-bottom: 2.5rem;
  }
}

.pickup06 {
  background-position: center bottom;
}

.pickup07 {
  background-size: auto 100%;
  background-position: right -100px center;
  padding-top: 1.5rem;
  padding-bottom: 1rem;
  position: relative;
}
.pickup07 h3 span {
  font-size: 14px;
  font-size: 0.875rem;
}
.pickup07::after {
  content: "";
  background-color: rgba(30, 46, 66, 0.3);
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
}
@media (min-width: 576px) {
  .pickup07 {
    background-size: cover;
    background-position: center center;
  }
  .pickup07 .row {
    margin-right: -5px;
    margin-left: -5px;
  }
  .pickup07 .row > .col,
  .pickup07 .row10 > [class*=col-] {
    padding-right: 5px;
    padding-left: 5px;
  }
}
@media (min-width: 768px) {
  .pickup07 h3 span {
    font-size: 16px;
    font-size: 1rem;
  }
}
@media (min-width: 992px) {
  .pickup07 {
    padding-top: 2.25rem;
    padding-bottom: 1.5rem;
  }
}
@media (min-width: 1200px) {
  .pickup07 {
    padding-top: 2.75rem;
    padding-bottom: 2rem;
  }
}
.pickup07 .link_box {
  width: 280px;
  height: auto;
  padding: 0.25rem 1rem 1.25rem 1rem;
  margin: 0 auto 0.5rem auto;
  z-index: 1;
}
@media (min-width: 576px) {
  .pickup07 .link_box {
    width: 100%;
    max-width: none;
    margin-bottom: 10px;
  }
}
@media (min-width: 992px) {
  .pickup07 .link_box {
    padding: 0.25rem 1.25rem 1.25rem 1.25rem;
  }
}
@media (min-width: 1200px) {
  .pickup07 .link_box {
    padding: 0.25rem 1.5rem 1.25rem 1.5rem;
  }
}

.pickup08 {
  background-position: center bottom;
  height: auto;
  position: relative;
}
@media (min-width: 576px) {
  .pickup08 {
    background-size: cover;
    background-position: center bottom -20px;
  }
}
@media (min-width: 992px) {
  .pickup08 {
    background-position: center center;
  }
}
.pickup08::after {
  content: "";
  background-color: rgba(59, 22, 14, 0.2);
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
}
.pickup08 .link_box {
  width: 280px;
  height: auto;
  padding: 0.5rem 0.75rem 1.5rem 0.75rem;
  margin-top: 1.5rem;
  margin-bottom: 8rem;
  z-index: 1;
}
@media (min-width: 576px) {
  .pickup08 .link_box {
    width: auto;
    max-width: none;
    padding: 0.5rem 1rem 1.5rem 1rem;
    margin-right: calc(8.33333% + 5px);
    margin-bottom: 1.5rem;
  }
}
@media (min-width: 992px) {
  .pickup08 .link_box {
    padding: 0.5rem 1.5rem 1.5rem 1.5rem;
    margin-top: 2.25rem;
  }
}

.pickup01 {
  background-image: url(../img/top/pickup_kv01.jpg);
}

.pickup02 {
  background-image: url(../img/top/pickup_kv02.jpg);
}

.pickup03 {
  background-image: url(../img/top/pickup_kv03.jpg);
}

.pickup04 {
  background-image: url(../img/top/pickup_kv04.jpg);
}

.pickup05 {
  background-image: url(../img/top/pickup_kv05.jpg);
}

.pickup06 {
  background-image: url(../img/top/pickup_kv06.jpg);
}

.pickup07 {
  background-image: url(../img/top/pickup_kv07.jpg);
}

.pickup08 {
  background-image: url(../img/top/pickup_kv08.jpg);
}

/* 当クリニックについて collapse */
.acc_about {
  width: 16rem;
  margin: 2rem auto;
}
.acc_about .card {
  background-color: transparent;
  border: none;
  border-radius: 0;
}
.acc_about .card-body {
  padding: 0.25rem 0 0 0;
}

/* ご利用シーン動画 */
.bg_youtube {
  background-image: url(../img/top/youtube.jpg);
  background-position: center center;
  background-size: cover;
}

.movie {
  position: relative;
  padding-bottom: 56.25%;
  height: 0;
  overflow: hidden;
}
.movie img {
  cursor: pointer;
}
.movie iframe,
.movie object,
.movie embed {
  position: absolute;
  top: 0;
  left: 0;
  width: 100% !important;
  height: 100% !important;
}

/* Page ------------------- */
/* accordion fee, accordion guide */
.acc_fee .card,
.acc_guide .card {
  background-color: transparent;
  border: 1px solid #9C8A86;
  border-radius: 0;
}
.acc_fee .card-header,
.acc_guide .card-header {
  padding: 0;
  background-color: transparent;
  border: none;
}
.acc_fee .card-body,
.acc_guide .card-body {
  text-align: left;
  background-color: #FFF;
}
.acc_fee .card-body p:last-child, .acc_fee .card-body ul:last-child,
.acc_guide .card-body p:last-child,
.acc_guide .card-body ul:last-child {
  margin-bottom: 0;
}

/* accordion faq, accordion inspection */
.acc_faq .card,
.acc_inspec .card {
  background-color: transparent;
  border: none;
  border-radius: 0;
  margin-bottom: 0.375rem;
}
.acc_faq .card-header,
.acc_inspec .card-header {
  padding: 0;
  background-color: transparent;
  border: none;
}
.acc_faq .card-body,
.acc_inspec .card-body {
  color: #3A160E;
  font-size: 15px;
  font-size: 0.9375rem;
  background-color: transparent;
  background-image: url(../img/faq/a.svg);
  background-repeat: no-repeat;
  background-size: 15px auto;
  background-position: left 12px top 22px;
  text-align: left;
  padding-top: 1rem;
  padding-left: 2.5rem;
}
.acc_faq .card-body p:last-child, .acc_faq .card-body ul:last-child,
.acc_inspec .card-body p:last-child,
.acc_inspec .card-body ul:last-child {
  margin-bottom: 0;
}
@media (min-width: 768px) {
  .acc_faq .card-body,
  .acc_inspec .card-body {
    background-size: 18px auto;
    background-position: left 16px top 20px;
    padding-left: 3rem;
  }
}
@media (min-width: 992px) {
  .acc_faq .card-body,
  .acc_inspec .card-body {
    background-size: 22px auto;
    padding-left: 3.5rem;
  }
}
@media (min-width: 1200px) {
  .acc_faq .card-body,
  .acc_inspec .card-body {
    background-size: 26px auto;
    padding-left: 4rem;
  }
}

.acc_inspec .card-body {
  background-image: none;
  padding: 1.25rem 1rem;
}
@media (min-width: 992px) {
  .acc_inspec .card-body {
    padding: 1.25rem 1.5rem;
  }
}
.acc_inspec .card-body p {
  line-height: 1.8;
  margin-bottom: 0;
}
.acc_inspec .sub_ttl {
  padding: 0;
}
.acc_inspec .sub_ttl p.inspec_sub_ttl {
  font-family: "Noto Serif JP", serif;
  background-color: #E5E5E5;
  padding: 0.5rem 1rem;
}
@media (min-width: 992px) {
  .acc_inspec .sub_ttl p.inspec_sub_ttl {
    padding: 0.5rem 1.5rem;
  }
}
.acc_inspec .sub_ttl div {
  padding: 1.25rem 1rem;
}
@media (min-width: 992px) {
  .acc_inspec .sub_ttl div {
    padding: 1.25rem 1.5rem;
  }
}

/* way */
.network {
  text-align: left;
  margin: 0;
  position: absolute;
  top: -2rem;
  left: 0;
}

/* inspection */
.modal-header {
  border-bottom: 1px solid #9C8A86;
}

.modal-body {
  font-size: 14px;
  font-size: 0.875rem;
}

.modal-footer {
  border-top: none;
}

/* facility */
.col-md-38,
.col-md-62,
.col-md-62_text {
  position: relative;
  width: 100%;
  padding-right: 15px;
  padding-left: 15px;
}

@media (min-width: 768px) {
  .col-md-38 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 38%;
    flex: 0 0 38%;
    max-width: 38%;
  }
}

@media (min-width: 768px) {
  .col-md-62 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 62%;
    flex: 0 0 62%;
    max-width: 62%;
  }
}

@media (max-width: 767.98px) {
  .col-md-62_text {
    display: none !important;
  }
}
@media (min-width: 768px) {
  .col-md-62_text {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 62%;
    flex: 0 0 62%;
    max-width: 62%;
  }
}

.facility_img1_2,
.facility_img1_3,
.facility_img1_6,
.facility_img3_3,
.facility_img4_2 {
  background-image: url(../img/facility/facility1_2.jpg);
  background-position: center center;
  background-size: cover;
  width: 100%;
  padding-top: 66.25%;
}
@media (min-width: 768px) {
  .facility_img1_2,
  .facility_img1_3,
  .facility_img1_6,
  .facility_img3_3,
  .facility_img4_2 {
    padding-top: 0;
    margin-bottom: 2rem;
  }
}

.facility_img1_3 {
  background-image: url(../img/facility/facility1_3.jpg);
  padding-top: 50%;
  margin-bottom: 2rem;
}
@media (min-width: 768px) {
  .facility_img1_3 {
    padding-top: 0;
  }
}

.facility_img1_5 {
  position: relative;
}
.facility_img1_5 div {
  position: absolute;
  left: 1rem;
  bottom: -1rem;
  width: 50%;
}
@media (min-width: 992px) {
  .facility_img1_5 div {
    bottom: 1rem;
  }
}

.facility_img1_6 {
  display: none;
}
@media (min-width: 768px) {
  .facility_img1_6 {
    display: block;
    background-image: url(../img/facility/facility1_6.jpg);
    background-position: left center;
    height: calc(100% - 2rem);
    padding-top: 0;
    margin-bottom: 2rem;
  }
}

.facility_img3_3 {
  background-image: url(../img/facility/facility3_3.jpg);
  padding-top: 148.4375%;
  max-width: 320px;
  margin-left: auto;
  margin-right: auto;
}
@media (min-width: 768px) {
  .facility_img3_3 {
    max-width: none;
  }
}

.facility_img4_2 {
  background-image: url(../img/facility/facility4_2.jpg);
  padding-top: 60%;
}

.facility3 {
  padding: 0;
}
@media (min-width: 768px) {
  .facility3 {
    position: relative;
  }
  .facility3::before {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    left: calc(50% - 360px + 315px);
    background-image: url(../img/facility/facility2_2.jpg);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center bottom;
  }
}
@media (min-width: 992px) {
  .facility3::before {
    left: calc(50% - 480px + 415px);
  }
}
@media (min-width: 1200px) {
  .facility3::before {
    left: calc(50% - 555px + 475px);
  }
}

.facility_img6_1 {
  margin-right: 5%;
  margin-bottom: 3rem;
}
@media (min-width: 768px) {
  .facility_img6_1 {
    margin-right: 10%;
    margin-bottom: 6rem;
  }
}

.facility_img6_2 {
  margin-left: 5%;
}
@media (min-width: 768px) {
  .facility_img6_2 {
    margin-left: 10%;
  }
}

/* about */
.concierge {
  position: relative;
  padding-left: 15px;
  padding-top: 22%;
}
@media (min-width: 768px) {
  .concierge {
    padding-left: 20px;
  }
}
.concierge .ic_card {
  width: 46%;
  position: absolute;
  top: 0;
  left: 0;
}

/* access */
.map {
  height: 380px;
}
@media (min-width: 992px) {
  .map {
    height: 490px;
  }
}

@media (min-width: 768px) {
  .row_access {
    margin-right: -10px;
    margin-left: -10px;
  }
  .row_access > .col, .row_access > [class*=col-] {
    padding-right: 10px;
    padding-left: 10px;
  }
}
@media (min-width: 992px) {
  .row_access {
    margin-right: -8px;
    margin-left: -8px;
  }
  .row_access > .col, .row_access > [class*=col-] {
    padding-right: 8px;
    padding-left: 8px;
  }
}
@media (min-width: 768px) {
  .row_access .col-md-5 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 38%;
    flex: 0 0 38%;
    max-width: 38%;
  }
  .row_access .col-md-7 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 62%;
    flex: 0 0 62%;
    max-width: 62%;
  }
}
@media (min-width: 992px) {
  .row_access .col-lg-5 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 48%;
    flex: 0 0 48%;
    max-width: 48%;
  }
  .row_access .col-lg-7 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 52%;
    flex: 0 0 52%;
    max-width: 52%;
  }
}

.memo_box1,
.memo_box2 {
  background-color: #3A160E;
  padding: 0.75rem 1rem;
  margin-bottom: 1rem;
}
@media (min-width: 768px) {
  .memo_box1,
  .memo_box2 {
    padding: 1rem 1rem 45px 1rem;
  }
}
@media (min-width: 992px) {
  .memo_box1,
  .memo_box2 {
    padding: 0.5rem 1rem 38px 1rem;
    margin-bottom: 0;
  }
}

@media (min-width: 768px) {
  .memo_box2 {
    padding-bottom: 58px;
  }
}
@media (min-width: 992px) {
  .memo_box2 {
    padding-bottom: 38px;
  }
}

@media (min-width: 992px) {
  .bg_bus_stop1 {
    background-image: url(../img/access/bg_bus_stop1.png);
    background-repeat: no-repeat;
    background-size: 100% auto;
    background-position: center top;
    width: 100%;
    height: 100%;
  }
}

@media (min-width: 992px) {
  .bg_bus_stop2 {
    background-image: url(../img/access/bg_bus_stop2.png);
    background-repeat: no-repeat;
    background-size: cover;
    width: 100%;
    height: 100%;
  }
}

.news_box {
  border-bottom: 1px solid #9C8A86;
  padding: 0.75rem 1rem;
  position: relative;
}
h2 + .news_box {
  border-top: 1px solid #9C8A86;
}
.news_box a::after {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1;
  pointer-events: auto;
  content: "";
}
.news_box a:hover::after {
  background: rgba(156, 137, 96, 0.1);
  -webkit-transition: all 0.2s ease;
  transition: all 0.2s ease;
}
.news_box dl,
.news_box dd {
  color: #3A160E;
  font-size: 15px;
  font-size: 0.9375rem;
  margin: 0;
}
.news_box dt {
  font-weight: normal;
}
@media (min-width: 768px) {
  .news_box dt {
    float: left;
    width: 7em;
  }
  .news_box dd {
    padding-left: 7em;
  }
}

/* page_top
-------------------------------------------------------------- */
.page_top {
  width: 30px;
  height: 32px;
  position: fixed;
  right: 10px;
  bottom: 40px;
  background: #a19583;
  z-index: 100;
}
@media (min-width: 992px) {
  .page_top {
    width: 40px;
    height: 42px;
    right: 20px;
    bottom: 60px;
  }
}
.page_top a {
  position: relative;
  display: block;
  width: 30px;
  height: 32px;
  text-decoration: none;
}
.page_top a::before {
  font-family: "icomoon" !important;
  speak: never;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  content: "\e903";
  color: #FFF;
  font-size: 26px;
  font-size: 1.625rem;
  position: absolute;
  width: 26px;
  height: 26px;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
  margin: auto;
}
@media (min-width: 992px) {
  .page_top a {
    width: 40px;
    height: 42px;
  }
  .page_top a::before {
    font-size: 36px;
    font-size: 2.25rem;
    width: 36px;
    height: 36px;
  }
}

/* Footer
-------------------------------------------------------------- */
.footer_container {
  font-family: "Noto Serif JP", serif;
  background-color: #3A160E;
  padding-top: 2rem;
  padding-bottom: 2rem;
}
@media (min-width: 992px) {
  .footer_container {
    padding-top: 3rem;
  }
}
.footer_container .card {
  background-color: transparent;
  border: none;
  border-radius: 0;
}
.footer_container .card-header {
  background-color: transparent;
  border: none;
  padding: 0;
  position: relative;
}
.footer_container .card-header h6 + a {
  position: absolute;
  top: 0;
  left: 0;
  width: calc(100% - 2.5rem);
  height: 100%;
  z-index: 1;
}
.footer_container .card-header h6 + a::before {
  color: #FFF;
  font-size: 16px;
  font-size: 1rem;
  font-family: "icomoon" !important;
  speak: never;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  content: "\e906";
  position: absolute;
  top: 50%;
  right: 1rem;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
}
.footer_container .card-header h6 + a::after {
  content: "";
  width: 1px;
  height: 1.5rem;
  background-color: #FFF;
  position: absolute;
  top: 50%;
  right: 0;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
}
.footer_container .card-body {
  color: #FFF;
  border-left: 1px solid #FFF;
  padding: 0 0 0 0.5rem;
  margin-left: 0.5rem;
}
.footer_container .card-body .number {
  display: inline-block;
}
.footer_container address {
  font-size: 13px;
  font-size: 0.8125rem;
  line-height: 1.8;
  color: #FFF;
  margin-top: 2rem;
}
.footer_container address span {
  font-weight: 400;
}

.footer_nav {
  margin-bottom: 0;
}
@media (min-width: 992px) {
  .footer_nav {
    margin-bottom: 2rem;
  }
}
.footer_nav li {
  font-size: 14px;
  font-size: 0.875rem;
  position: relative;
}
.footer_nav li a {
  color: #FFF;
  display: block;
  padding: 0.625rem 5rem 0.625rem 0.5rem;
  outline: none !important;
}
.footer_nav li a:hover {
  color: #96835F;
}
.footer_nav li::before {
  color: #FFF;
  font-size: 16px;
  font-size: 1rem;
  font-family: "icomoon" !important;
  speak: never;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  content: "\e906";
  position: absolute;
  top: 50%;
  right: 3.5rem;
  -webkit-transform: translateY(-45%);
      -ms-transform: translateY(-45%);
          transform: translateY(-45%);
}
.footer_nav li.no_icon {
  padding: 0.625rem 1rem 0.625rem 1.25rem;
}
.footer_nav li.no_icon a {
  padding: 0;
}
.footer_nav li.no_icon .number {
  padding-left: 1.5rem;
}
.footer_nav li.no_icon::before {
  content: "";
}
@media (min-width: 992px) {
  .footer_nav li {
    font-size: 13px;
    font-size: 0.8125rem;
    margin-bottom: 0.625rem;
  }
  .footer_nav li a {
    padding: 0 1rem;
  }
  .footer_nav li::before {
    font-size: 13px;
    font-size: 0.8125rem;
    content: "\e902";
    top: 0.3em;
    right: auto;
    left: 0;
    -webkit-transform: none;
        -ms-transform: none;
            transform: none;
  }
}

.copyright_container {
  background-color: #96835F;
  text-align: center;
  padding: 0.375rem;
}

.copyright {
  font-size: 12px;
  font-size: 0.75rem;
  color: #FFF;
  margin-bottom: 0;
}