@charset "UTF-8";
*,
*:after,
*:before {
  box-sizing: border-box; }

html {
  font-size: 62.5%; }

body {
  width: 100%;
  font-family: "Noto Sans JP", "游ゴシック", Yu Gothic, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, "sans-serif";
  font-size: 1.482vw;
  font-feature-settings: "palt" 1;
  line-height: 180%;
  letter-spacing: 1px;
  color: black;
  margin: 0;
  padding: 0; }
  @media (min-width: 1060px) {
    body {
      font-size: 1.6rem; } }

a {
  text-decoration: none;
  color: inherit;
  cursor: pointer; }

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

li {
  list-style-type: none; }

/*---------------
ヘッダー
----------------*/
#header-line {
  width: 100%;
  position: relative;
  z-index: 1000; }

#header-line1 {
  background-color: #007e7a;
  height: 1.852vw;
  max-height: 20px; }

#header-line2 {
  background-color: #d1df94;
  height: 0.741vw;
  max-height: 8px; }

header {
  width: 100%;
  max-width: 1060px;
  line-height: 0;
  margin: 0 auto; }

.header-in {
  width: 100%;
  display: flex;
  justify-content: space-between;
  padding: 0 2.8302%;
  margin-top: 1.321%;
  position: relative; }

.header-logo {
  width: 45.4vw;
  max-width: 454px;
  transform: translateX(-1em); }

.header-contact {
  width: 27%;
  display: flex;
  align-items: flex-end;
  flex-direction: column;
  font-weight: 500; }

.tel-info {
  display: flex;
  align-items: center;
  line-height: 1;
  padding: 0.6em 1.4em;
  color: #fff;
  background-color: #007e7a;
  border-radius: 0.7em;
  white-space: nowrap;
  font-size: 1.2963vw; }
  @media (min-width: 1060px) {
    .tel-info {
      font-size: 1.4rem; } }

.tel-box {
  font-size: 3.2vw;
  line-height: 130%;
  color: #516463;
  white-space: nowrap;
  letter-spacing: 0; }
  @media (min-width: 1060px) {
    .tel-box {
      font-size: 2.963rem; } }

#pc-nav {
  width: 100%;
  padding: 0 2.8302%;
  margin-top: 1.5%; }
  #pc-nav ul {
    display: flex;
    border-left: solid 2px #007e7a; }
  #pc-nav li {
    flex: 1;
    text-align: center;
    background-color: #d1df94;
    color: #007e7a;
    border-right: solid 2px #007e7a; }
    #pc-nav li a {
      display: block;
      padding: 1.5em 0; }

#wrapper {
  height: 100vh;
  overflow-x: hidden; }

#container {
  width: 100%;
  max-width: 1060px;
  margin: 3% auto 0; }
  @media (min-width: 1060px) {
    #container {
      margin: 30px auto 0; } }

/* フッター */
#footer-line {
  width: 100%;
  background-color: #d1df94;
  height: 0.741vw;
  max-height: 8px;
  position: absolute;
  top: 0;
  z-index: 1; }
  #footer-line::after {
    content: "";
    width: 100vw;
    height: 100%;
    background-color: #d1df94;
    position: absolute;
    top: 0;
    right: 90%;
    z-index: -1; }
  #footer-line::before {
    content: "";
    width: 100vw;
    height: 100%;
    background-color: #d1df94;
    position: absolute;
    top: 0;
    left: 90%;
    z-index: -1; }

#footer {
  width: 100%;
  max-width: 1060px;
  margin: 8% auto 0;
  color: #fff;
  background-color: #007e7a;
  font-size: 1.39vw;
  padding-bottom: 2.817%;
  position: relative; }
  @media (min-width: 1060px) {
    #footer {
      font-size: 1.5rem;
      padding-bottom: 30px; } }
  #footer::after {
    content: "";
    width: 100vw;
    height: 100%;
    background-color: #007e7a;
    position: absolute;
    top: 0;
    right: 90%;
    z-index: -1; }
  #footer::before {
    content: "";
    width: 100vw;
    height: 100%;
    background-color: #007e7a;
    position: absolute;
    top: 0;
    left: 90%;
    z-index: -1; }

#footer-in {
  display: flex;
  width: 100%;
  padding: 4% 2.8302% 4%; }

#footer-address {
  display: block;
  width: 32.7%; }

.small-text {
  font-size: 82%;
  line-height: 130%;
  display: block;
  margin-top: -0.2em; }

.footer-logo {
  transform: translateX(-1.4em); }

.footer-link {
  display: block;
  width: 17.3%; }
  .footer-link ul {
    margin-top: -0.4em;
    margin-bottom: -0.3em; }

#associated-clinic {
  width: 50%;
  display: block;
  border-left: solid 2px #fff; }
  #associated-clinic li {
    font-size: 1.2vw; }
    @media (min-width: 1060px) {
      #associated-clinic li {
        font-size: 1.3rem; } }

#associated-clinic-title {
  padding-left: 1em; }

.column-box {
  display: flex;
  white-space: nowrap; }
  .column-box a::before {
    content: "";
    display: inline-block;
    width: 0.4em;
    height: 0;
    margin-right: 0.3em;
    border-top: solid 1px #fff;
    transform: translateY(-0.3em); }

.column-1 {
  width: 30%;
  padding-left: 1em; }

.column-2 {
  width: 36.5%;
  padding-left: 1em; }

.column-3 {
  width: 33.5%;
  padding-left: 1em; }

#associated-clinic-title {
  margin-top: -0.4em; }

.pp_and_copy {
  display: flex;
  padding: 0 2.8302%;
  font-size: 1.2vw; }
  @media (min-width: 1060px) {
    .pp_and_copy {
      font-size: 1.3rem; } }
  .pp_and_copy a {
    width: 16%;
    line-height: 1;
    text-decoration: underline; }

.copyright {
  width: 84%;
  padding-left: 16.8%;
  line-height: 1; }
  .copyright::before {
    display: inline-block;
    content: "\0a9";
    color: #fff;
    width: 1em;
    height: 1em;
    margin-right: 0.3em; }
