@charset "utf-8";

/* Greeting page
-------------------------------------------------------------- */
#greeting {
  font-family: "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "游明朝",
    YuMincho, "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  font-size: 18px;
  font-weight: 500;
  color: #333333;
  overflow: hidden;
}

#greeting p {
  line-height: 1.8;
}

#greeting .main-img {
  background-image: url("/images/greeting/main-img.jpg");
  background-position: center top;
  background-repeat: no-repeat;
  background-size: auto 100%;
  text-align: center;
  padding-bottom: 60px;
}

#greeting .main-img img.pcDisp {
  display: block;
  margin: 0 auto;
}

#greeting .main-img .sec-head-btn {
  display: inline-block;
}

#greeting .main-content {
  border: 15px solid #e1dad1;
  background: #fff;
  padding: 40px;
  text-align: center;
  margin-top: -70px;
}

#greeting .sec-thumbnails #conteiner {
  max-width: 1365px;
}

#greeting .thumb-flex {
  display: flex;
  justify-content: space-between;
}

#greeting .greeting-wrapper {
  display: flex;
  justify-content: space-between;
  margin-top: 100px;
}

#greeting .greeting-wrapper > div {
  flex: 1 1 0;
}

#greeting .greeting-txt {
  width: 540px;
  float: right;
}

#greeting .greeting-txt p {
  margin-bottom: 30px;
}

#greeting .greeting-txt h2 {
  font-size: 36px;
  font-weight: 600;
  margin-bottom: 0;
}

#greeting .greeting-txt h3 {
  font-size: 24px;
  letter-spacing: 3px;
  font-weight: 600;
  margin: 40px 0;
}

#greeting .greeting-head {
  margin-bottom: 40px;
}

#greeting .greeting-head-bd {
  position: relative;
  line-height: 1;
  margin-top: 10px;
}

#greeting .greeting-head-bd::before {
  content: "";
  left: 0;
  top: 50%;
  position: absolute;
  height: 1px;
  width: 650px;
  background: #b3a28d;
  z-index: -1;
}

#greeting .greeting-head-bd span {
  background: #fff;
  display: inline-block;
  padding-right: 40px;
}

#greeting .greeting-head-bd span img {
  height: 17px;
  display: block;
}

#greeting .greeting-img {
  margin-left: 50px;
  position: relative;
  padding: 20px 0 50px 50px;
}

#greeting .greeting-img::before {
  content: "";
  position: absolute;
  z-index: -1;
  width: 100%;
  height: 70%;
  background: #f0ece8;
  left: 0;
  bottom: 0;
}

#greeting .greeting-name {
  padding: 30px;
  max-width: 520px;
  overflow: hidden;
}

#greeting .greeting-name > div {
  float: right;
}

#greeting .greeting-name small {
  display: block;
  margin-bottom: 10px;
}

#greeting .greeting-name img {
  height: 53px;
  display: inline-block;
  vertical-align: middle;
  margin-left: 15px;
}

#greeting .greeting-wrapper-promise {
  margin: 50px 0 150px;
}

#greeting .greeting-item {
  margin-top: -50px;
}

#greeting .greeting-item:first-child {
  margin-top: 0;
}

#greeting .greeting-item-inner {
  display: flex;
  justify-content: space-between;
}

#greeting .greeting-item-inner > div {
  width: calc(50% - 100px);
  align-self: center;
}

#greeting .greeting-item-inner > div:last-child {
  width: calc(50% + 100px);
}

#greeting .greeting-item-inner .greeting-txt {
  float: none;
  padding-left: 50px;
  width: 590px;
}

#greeting .greeting-item-inner .greeting-txt h2 {
  margin-bottom: 30px;
}

#greeting .greeting-item-inner .greeting-txt .greeting-txt-inner {
  padding-right: 50px;
}

#greeting .greeting-item-inner .greeting-img {
  margin: 0;
  text-align: right;
  padding: 20px 50px 50px 0;
}

#greeting .greeting-item-inner .greeting-img img.pcDisp {
  display: initial;
}

#greeting .greeting-item-inner .greeting-img::before {
  height: 73%;
}

#greeting .greeting-item-inner .greeting-head-bd::before {
  width: 100%;
}

#greeting .odd-item .greeting-item-inner {
  flex-direction: row-reverse;
}

#greeting .odd-item .greeting-item-inner .greeting-txt {
  float: right;
}

#greeting .odd-item .greeting-item-inner .greeting-img {
  text-align: left;
  padding: 20px 0 50px 50px;
}

#greeting .odd-item .greeting-item-inner .greeting-img::before {
  height: 80%;
}

#greeting .even-item .greeting-item {
  margin-top: -70px;
}

#greeting .even-item .greeting-item-inner .greeting-txt {
  padding-left: 0;
  padding-top: 90px;
  width: 640px;
}

#greeting .even-item .greeting-item-inner .greeting-img {
  margin-right: 50px;
}

/* 調整
------------------------------------------------------------*/
@media only screen and (max-width: 1080px) {
  #greeting {
    overflow: initial;
    overflow: visible;
  }

  #greeting .section {
    min-width: 1080px;
    overflow: hidden;
  }

  #greeting .main-content {
    margin: -70px 50px 0;
  }

  #greeting .greeting-txt {
    width: 490px;
    padding-left: 50px;
  }

  #greeting .greeting-item {
    padding-right: 50px;
  }

  #greeting .greeting-item.odd-item {
    padding-right: 0;
  }
}

@media only screen and (max-width: 744px) {
  #greeting {
    font-size: 16px;
  }

  #greeting .greeting-wrapper {
    margin-top: 60px;
    flex-direction: column;
  }

  #greeting .section {
    min-width: 100%;
    overflow: hidden;
  }

  #greeting .main-img {
    background-image: url("/images/greeting/main-img_sp.jpg");
    background-size: 100%;
    background-size: cover;
  }

  #greeting .main-img #conteiner {
    max-width: 100%;
    width: 100%;
    margin: 0 auto;
  }

  #greeting .main-img img.pcDisp {
    display: none;
  }

  #greeting .main-img img.spDisp {
    margin: 0 auto;
  }

  #greeting .main-content {
    margin: -30px 0 0;
    border: 10px solid #e1dad1;
    text-align: left;
    padding: 20px;
  }

  #greeting .main-content p {
    text-align: justify;
  }

  #greeting .greeting-head {
    padding-right: 5%;
    padding-left: 10px;
  }

  #greeting .greeting-head small {
    font-size: 13px;
  }

  #greeting .greeting-head-bd::before {
    width: 100%;
  }

  #greeting .greeting-head-bd span {
    padding-right: 20px;
  }

  #greeting .greeting-head-bd span img {
    height: 15px;
  }

  #greeting .greeting-txt {
    float: none;
    padding-left: 5%;
    width: auto;
  }

  #greeting .greeting-txt h2 {
    font-size: 28px;
  }

  #greeting .greeting-txt h3 {
    font-size: 18px;
  }

  #greeting .greeting-txt p {
    font-size: 15px;
    margin-bottom: 20px;
    text-align: justify;
  }

  #greeting .greeting-txt .doc-img {
    width: 158px;
    float: right;
    margin: -125px -40px 0 10px;
  }

  #greeting .greeting-txt-inner {
    background: #f0ece8;
    padding: 50px 20px 20px;
  }

  #greeting .greeting-img {
    margin: 0;
    padding: 0;
  }

  #greeting .greeting-name {
    background: #f0ece8;
    margin-left: 5%;
    padding: 0 20px 145px 20px;
    max-width: 100%;
    font-size: 13px;
  }

  #greeting .greeting-name img {
    height: 37px;
  }

  #greeting .greeting-wrapper-promise {
    margin: 0;
  }

  #greeting .greeting-item-inner {
    flex-direction: column;
  }

  #greeting .greeting-item {
    padding: 0;
    margin-top: 0;
    margin-bottom: 10px;
  }

  #greeting .greeting-item-inner > div {
    align-self: auto;
    width: auto !important;
  }

  #greeting
    .greeting-item:first-child
    .greeting-item-inner
    .greeting-img::before {
    background: none;
  }

  #greeting .greeting-item-inner .greeting-img {
    text-align: left;
    padding: 0;
  }

  #greeting .greeting-item-inner .greeting-img img.pcDisp {
    display: none;
  }

  #greeting .greeting-item-inner .greeting-img img.spDisp {
    display: initial;
  }

  #greeting .greeting-item:first-child .greeting-item-inner .greeting-img img {
    width: 290px;
    margin-top: -90px;
    margin-left: -32px;
  }

  #greeting .greeting-item-inner .greeting-txt {
    margin-top: 10px;
    padding: 0 5%;
    width: auto;
  }

  #greeting .greeting-item-inner .greeting-head {
    padding: 0 10px;
  }

  #greeting .greeting-item-inner .greeting-txt .greeting-txt-inner {
    padding: 0 10px;
    background: none;
  }

  #greeting .odd-item .greeting-item-inner {
    flex-direction: column;
  }

  #greeting .odd-item .greeting-item-inner .greeting-img {
    padding: 0;
    padding-top: 20px;
    width: 95%;
    max-width: 500px;
    float: right;
  }

  #greeting .odd-item .greeting-item-inner .greeting-img img {
    width: 175px;
  }

  #greeting .odd-item .greeting-item-inner .greeting-img::before {
    bottom: auto;
    top: 0;
    width: 80%;
    left: auto;
    right: 0;
  }

  #greeting .odd-item .greeting-item-inner .greeting-txt {
    float: none;
  }

  #greeting .even-item .greeting-item-inner .greeting-img {
    margin: 0;
    padding: 0;
    width: 95%;
    max-width: 500px;
    text-align: right;
  }

  #greeting .even-item .greeting-item-inner .greeting-img img {
    width: 175px;
  }

  #greeting .even-item .greeting-item-inner .greeting-img::before {
    width: 80%;
    height: 80%;
    right: 20px;
  }

  #greeting .even-item .greeting-item-inner .greeting-txt {
    margin-top: 40px;
    padding: 0 5%;
    width: auto;
  }

  #greeting .sec-thumbnails #conteiner {
    max-width: 100%;
    width: auto;
    margin: 0 auto;
  }

  #greeting .thumb-flex {
    flex-wrap: wrap;
    margin-top: 80px;
  }

  #greeting .thumb-flex li:first-child {
    width: 100%;
  }

  #greeting .thumb-flex li {
    width: calc(50% - 5px);
    margin-bottom: 10px;
    text-align: center;
  }

  #greeting .thumb-flex li img {
    width: 100%;
  }
}

/* News page
-------------------------------------------------------------- */
#index_news {
  padding: 50px 0 60px;
  background-image: url("/images/bg_top_news_pc.jpg");
  background-repeat: no-repeat;
  background-position: top center;
  background-size: cover;
  padding-bottom: 0;
}

#index_news h2 img {
  margin: 0 auto;
  width: 274px;
  text-align: center;
}

#index_news h2 .ttl {
  left: 0;
  transform: none;
}

#index_news > .inner {
  width: 900px;
  margin: auto;
  padding: 40px 40px 40px 70px;
  background-color: #fff;
}

#index_news ul {
  height: 355px;
  overflow-y: auto;
}

#index_news ul li {
  margin-right: 0;
  margin-bottom: 18px;
  padding-bottom: 16px;
  border-bottom: 2px solid #eee1c8;
}

#index_news ul li a {
  text-decoration: none;
}

#index_news li .date {
  color: #cc9900;
  font-weight: bold;
}

#index_news li .date > span {
  margin-right: 8px;
  padding: 2px 20px;
  background-color: #b60726;
  border-radius: 3px;
  color: #fff;
}

#index_news li .date > span.cate03 {
  background-color: #a88b40;
}

#index_news li .date > span.cate05 {
  display: none;
}

#index_news li .title {
  margin-top: 10px;
  font-weight: bold;
  text-decoration: underline;
}

#index_news li .text {
  margin-top: 10px;
}

#index_news .linktop {
  margin: 10px 30px 0 0;
  text-align: right;
}

#index_news .linktop a {
  color: #851313;
}

#index_news .linktop a:before {
  content: url("/images/icon01.png");
  width: 12px;
  height: 12px;
  margin-right: 5px;
}

#index_news.page_info {
  padding-top: 0;
  background: none;
  width: 100%;
  display: block;
}

#index_news.page_info h2 {
  width: 100%;
  margin: 0 auto 30px;
  border-bottom: 2px solid #c38988;
  padding-bottom: 30px;
  text-align: center;
}

#index_news.page_info h2 img {
}

#index_news.page_info > .inner {
  width: auto;
  padding: 40px 0;
}

#index_news.page_info ul {
  height: auto;
  margin-bottom: 0;
  overflow: visible;
}

#index_news.page_info li .date {
  margin-bottom: 1em;
}

#index_news.page_info li p {
  margin-bottom: 1em;
}

#index_news.page_info .links a {
  display: inline-block;
  padding-left: 12px;
  color: #b50625;
  text-decoration: none;
  position: relative;
}

#index_news.page_info .links a:before {
  content: "\25B8";
  text-indent: -14px;
  position: absolute;
}

#index_news li .title br {
  display: none;
}

/* Price page
-------------------------------------------------------------- */
#price {
  margin-bottom: 50px;
}

#price #tab_bnr {
  margin-bottom: 30px;
}

#price #tab_bnr ul {
  display: flex;
  align-items: center;
}

#price #tab_bnr ul li {
  width: 100%;
  text-align: center;
  box-sizing: border-box;
  margin: 0 5px;
}

#price #tab_bnr ul li:first-child {
  margin-left: 0;
}

#price #tab_bnr ul li:last-child {
  margin-right: 0;
}

#price .list h3 {
  color: #851313;
  font-family: "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "游明朝",
    YuMincho, "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  font-size: 1.5rem;
  margin-bottom: 20px;
  font-weight: bold;
  border-bottom: #851313 1px solid;
}

#price .list h3 div.link {
  max-width: 300px;
  text-align: right;
  float: right;
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic",
    "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo",
    "verdana", sans-serif;
  font-weight: normal;
}

#price .list h3 div.link a {
  color: #841315;
  font-size: 0.8rem;
  font-weight: bold;
}

#price .list h3 div.link a:before {
  content: url(/images/icon01.png);
  margin-right: 10px;
}

#price .list table {
  font-size: 0.8rem;
  color: #333;
  width: 100%;
  margin-bottom: 30px;
}

#price .list.list-no table {
  margin-bottom: 10px;
}

#price .list table th,
#price .list table td {
  font-weight: bold;
  padding: 10px;
  border: 1px solid #f1ece8;
  box-sizing: border-box;
}

#price .list tr.item td {
  background: url("/images/price/bg.jpg") repeat-x;
  text-align: center;
  background-size: auto 100%;
}

#price .list > table > th {
  color: #851313;
}

#price .list table span {
  font-size: 0.6rem;
}

#price .list table .p {
  text-align: right;
}

#price .list table .p,
#price .list tr.item td {
  white-space: nowrap;
}

#price .list table a {
  color: #851313;
}

#price .list table a:after {
  content: url("/images/icon01.png");
  width: 12px;
  height: 12px;
  margin-left: 5px;
}

#price .list .tdbody01 {
  padding: 0;
}

#price .list .tdbody {
  padding: 0;
}

#price .list .tblbody01,
#price .list .tblbody {
  margin: -1px;
  width: 100.5%;
}

#price .list .tblbody01 th:first-child,
#price .list .tblbody01 td:last-child {
  width: 27.9%;
}

#price .list td i {
  font-style: normal;
}

#price .list .tblbody th:first-child {
  width: 40%;
}

#price .list .tblbody td:last-child {
  width: 25%;
}

/* Doctor page
-------------------------------------------------------------- */
#doctor #content h3 {
  width: 100%;
  margin: 0 auto 30px;
  padding-bottom: 30px;
  border-bottom: 2px solid #c38988;
  text-align: center;
}

#doctor h3 img {
  /* width: 350px; */
  margin-bottom: 20px;
}

#doctor #greetings .doctorBox {
  margin-bottom: 34px;
  padding: 20px 30px;
  background: url("/images/about/message.jpg") no-repeat right bottom #fcf8ef;
}

#doctor #greetings .doctorBox h4 {
  text-align: center;
}

#doctor #greetings .doctorBox h4::before {
  display: none;
}

#doctor #greetings .row {
  display: flex;
  flex-flow: row nowrap;
}

#doctor #greetings .doc01 .picture,
#doctor #greetings .doc02 .picture {
  padding-right: 34px;
}

#doctor #greetings .doc01 > :nth-child(1),
#doctor #greetings .doc02 > :nth-child(1) {
  align-items: center;
}

#doctor #greetings .doc01 > :nth-child(1) {
  padding-bottom: 10px;
}

#doctor #greetings .doc02 > :nth-child(1),
#doctor #greetings .doc01 > :nth-child(2),
#doctor #greetings .doc02 > :nth-child(2) {
  padding-bottom: 35px;
}

#doctor #greetings .doctor-contents {
  margin-top: 0;
}

#doctor .heading {
  position: relative;
  padding-top: 110px;
  margin-top: -110px;
}

#doctor .doctor-head {
  position: absolute;
  top: 0;
  width: 100%;
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  align-items: flex-end;
}

#doctor .doctor-head-wrap {
  width: 320px;
  margin-bottom: 70px;
}

#doctor .doctor-head .heading-txt {
  margin-bottom: 20px;
}

#doctor .doctor-head .heading-ig {
  max-width: 260px;
}

#doctor .doctor-contents {
  padding: 0 20px 30px;
  margin-top: -50px;
  position: relative;
}

#doctor .doctor-contents-inner {
  background-color: #fff;
  padding: 1px 30px 30px;
  box-shadow: 0 0 14px rgb(0 0 0 / 20%);
}

#doctor .doctor-contents h4 {
  font-size: 21px;
  font-weight: 700;
  color: #a88b40;
  padding-bottom: 10px;
  margin: 30px 0;
  border-bottom: 1px solid #a88b40;
  padding-left: 10px;
  font-family: "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "游明朝",
    YuMincho, "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  position: relative;
}

#doctor .doctor-contents h4::before {
  content: "";
  position: absolute;
  top: 1px;
  left: 0;
  width: 4px;
  height: 30px;
  border-left: 4px solid #a88b40;
}

#doctor .doctor-contents p {
  margin-bottom: 15px;
  padding-bottom: 0 !important;
  font-size: 15px;
  font-weight: 400;
}

#doctor .doctor-contents .dflex {
  display: flex;
  justify-content: space-between;
}

#doctor .doctor-contents .dflex-item:first-child {
  width: 70%;
}

#doctor .doctor-contents .dflex-item:last-child {
  width: 40%;
}

#doctor .doctor-contents .dflex-item.nkagaoka-item {
  width: 55%;
}

#doctor .doctor-contents02 {
  padding: 0 20px 50px;
  margin-top: 0px;
  position: relative;
}

#doctor .doctor-contents02-inner {
  background-color: #fff;
  padding: 1px 30px 30px;
  box-shadow: 0 0 14px rgb(0 0 0 / 20%);
}

#doctor .doctor-contents02 h4 {
  font-size: 21px;
  font-weight: 700;
  color: #a88b40;
  padding-bottom: 10px;
  margin: 30px 0;
  border-bottom: 1px solid #a88b40;
  padding-left: 10px;
  font-family: "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "游明朝",
    YuMincho, "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  position: relative;
}

#doctor .doctor-contents02 h4::before {
  content: "";
  position: absolute;
  top: 1px;
  left: 0;
  width: 4px;
  height: 30px;
  border-left: 4px solid #a88b40;
}

#doctor .doctor-contents02 p {
  margin-bottom: 15px;
  padding-bottom: 0 !important;
  font-size: 15px;
  font-weight: 400;
}

#doctor .doctor-contents02 .dflex {
  display: flex;
  justify-content: space-between;
  flex-direction: column;
}

#doctor .doctor-contents02 .dflex-item:first-child {
  width: 55%;
}

#doctor .doctor-contents02 .dflex-item:last-child {
  width: 100%;
}

#doctor .doctor-contents02 .dflex-item.nkagaoka-item {
  width: 55%;
}
.dflex-newname {
  margin: 30px 0 0 0;
}
#doctor .doctor-list {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-bottom: 50px;
}

#doctor .doctor-list a.doctor-item {
  width: 48%;
  margin-bottom: 20px;
}

#doctor .doc-list {
  margin-bottom: 50px;
}

#doctor .doc-list .doc-item {
  position: relative;
}

#doctor .doc-list .doc-item .doc-item-btn {
  position: absolute;
  width: 180px;
  right: 5%;
  bottom: 15%;
}
.heading-txt-box {
  display: flex;
  flex-direction: row;
  align-items: center;
}
.heading-txt-position {
  color: #ffffff;
  font-family: "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "游明朝",
    YuMincho, "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  font-size: 14px;
}
.heading-txt-name {
  color: #ffffff;
  font-family: "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "游明朝",
    YuMincho, "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  font-size: 26px;
  font-weight: bold;
}
.heading-txt-name02 {
  color: #a78b40;
  font-family: "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "游明朝",
    YuMincho, "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  font-size: 26px;
  font-weight: bold;
}
.heading-txt-engname {
  color: #dbbd6d;
  font-family: "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "游明朝",
    YuMincho, "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  font-size: 14px;
  margin-left: 10px;
  font-weight: bold;
}
.noimg-mgn {
  margin-top: 50px;
}

@media only screen and (max-width: 744px) {
  body {
    padding-top: 0;
  }

  #doctor .heading {
    margin: 0 -5.5%;
    padding-top: 0px;
    margin-top: 0px;
  }

  #doctor .doctor-contents {
    margin-top: -20px;
    padding: 0 0 30px;
  }

  #doctor .doctor-head {
    justify-content: center;
  }

  #doctor .doctor-head-wrap {
    width: 40%;
    margin-bottom: 0;
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    padding-right: 5%;
  }

  #doctor .doctor-head .heading-txt {
    margin-bottom: 0;
  }

  #doctor .doctor-head .heading-ig {
    max-width: 34px;
  }

  #doctor .doctor-contents h4 {
    margin: 25px 0 15px;
  }

  #doctor .doctor-contents-inner {
    padding: 1px 15px 20px;
  }

  #doctor .doctor-contents .dflex {
    flex-direction: column;
  }

  #doctor .doctor-contents .dflex-item {
    width: auto !important;
  }

  #doctor .doctor-contents .dflex-item img {
    max-width: 400px;
    width: 100%;
  }
  #doctor .doctor-contents02 h4 {
    margin: 5px 0 15px;
  }

  #doctor .doctor-contents02-inner {
    padding: 1px 15px 20px;
  }
  #doctor .doctor-contents02 {
    padding: 0;
    margin-top: 0px;
    position: relative;
    margin-bottom: 50px;
  }
  #doctor .doctor-contents02 .dflex {
    flex-direction: column;
  }

  #doctor .doctor-contents02 .dflex-item {
    width: auto !important;
  }

  #doctor .doctor-contents02 .dflex-item img {
    max-width: 400px;
    width: 100%;
  }
  .dflex-newname {
    margin: 30px 0 0px 0;
  }
  #doctor .doctor-list {
    justify-content: center;
  }

  #doctor .doctor-list a.doctor-item {
    width: 100%;
    max-width: 400px;
    margin-bottom: 10px;
  }

  #doctor .doc-list {
    margin: 0 -3% 50px;
  }

  #doctor .doc-list .doc-item {
    max-width: 400px;
    margin: 0 auto;
  }

  #doctor .doc-list .doc-item .doc-item-btn {
    width: 42%;
    right: auto;
    left: 1.5%;
    bottom: 9%;
  }

  #doctor #greetings .doctor-contents {
    padding: 10px;
    text-align: justify;
  }
}
@media only screen and (max-width: 400px) {
  #doctor .doctor-head-wrap {
    width: 47%;
    margin-bottom: 0;
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    padding-right: 5%;
  }
  .heading-txt-name {
    font-size: 20px;
  }
  .heading-txt-engname {
    font-size: 12px;
  }
}
/* About page
-------------------------------------------------------------- */
#about #access {
  margin-bottom: 50px;
}

#about #access h3 {
  width: 100%;
  margin: 0 auto 30px;
  border-bottom: none;
  text-align: center;
}

/*#about #access h3 img{width:355px;}*/

#about #commit {
  margin-bottom: 0;
}

#about #commit h3,
#webc #commit h3 {
  width: 100%;
  margin: 0 auto 30px;
  border-bottom: 2px solid #c38988;
  padding-bottom: 30px;
  text-align: center;
}

#about #commit h3 img,
#webc #commit h3 img {
  width: 350px;
}

#about #commit h3.commit__ttl img {
  width: auto;
}

#about #commit h3.commit__ttl {
  border-bottom: none;
  padding-bottom: 0;
}

#about #commit ul li,
#webc #commit ul li {
  border-bottom: 1px solid #e7d0d0;
  padding-bottom: 30px;
  margin-bottom: 30px;
  clear: both;
  height: 200px;
  font-size: 0.8rem;
}

#about #commit ul li img,
#webc #commit ul li img {
  max-width: 200px;
  width: 100%;
  float: left;
  margin-right: 30px;
  margin-left: 30px;
}

#about #commit ul li h4,
#webc #commit ul li h4 {
  color: #a99f6e;
  font-family: "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "游明朝",
    YuMincho, "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  font-size: 23px;
  font-weight: bold;
  max-width: 490px;
  width: 100%;
  float: left;
  margin-top: 30px;
  margin-bottom: 15px;
}

#about #commit ul li h4 {
  font-size: 21px;
  letter-spacing: 2px;
}

#about #commit ul li.w_longtxt h4 {
  margin-top: 14px;
}

#about #commit ul li p,
#webc #commit ul li p {
  font-size: 14px;
  max-width: 490px;
  width: 100%;
  float: left;
}

#about #commit ul li p {
  line-height: 1.8;
  text-align: justify;
}

#about #commit ul li:last-child,
#webc #commit ul li:last-child {
  border-bottom: none;
}

#about #commit ul li:last-child {
  margin-bottom: 20px;
}

.red-text {
  color: #fff;
  font-size: smaller;
  text-align: center;
  padding: 5px 0;
  background-image: linear-gradient(to right, #d02727, #b5152f);
}

#about #greetings .doctorBox {
  margin-bottom: 34px;
  padding: 20px 30px;
  background: url("/images/about/message.jpg") no-repeat right bottom #fcf8ef;
}

#about #greetings .doctorBox h4 {
  text-align: center;
}

#about .doctor-contents h4 {
  font-size: 21px;
  font-weight: 700;
  color: #a88b40;
  padding-bottom: 10px;
  margin: 30px 0;
  border-bottom: 1px solid #a88b40;
  padding-left: 10px;
  font-family: "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "游明朝",
    YuMincho, "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  position: relative;
}

#about .doctor-contents p {
  margin-bottom: 15px;
  padding-bottom: 0 !important;
  font-size: 15px;
  font-weight: 400;
}

.dflex-item td:first-child {
  padding-right: 10px;
  width: 60px;
  vertical-align: top;
}
.dflex-item table {
  position: relative;
  margin-left: 20px;
}
.dflex-item02 {
  margin-left: 30px;
}
.dflex-item02 td:first-child {
  padding-right: 10px;
  width: 100%;
  vertical-align: top;
}
.dflex-item02 table {
  position: relative;
  margin-left: 20px;
}
li.start {
  display: flex;
  align-items: center;
  position: relative;
  margin-bottom: 10px;
}
.start::before {
  position: absolute;
  display: flex;
  margin-right: 5px;
  top: 5px;
  width: 15px;
  height: 15px;
  content: "";
  border-radius: 100%;
  background: #a88b40;
}
li.dflex-item__pick {
  background-color: #a78b40;
  color: #ffff;
  text-align: center;
  padding: 5px;
  font-weight: bold;
  font-size: 16px;
  margin-bottom: 10px;
}
li.dflex-item02__pick {
  background-color: #a78b40;
  color: #ffff;
  text-align: center;
  padding: 5px;
  font-weight: bold;
  font-size: 16px;
  margin-bottom: 10px;
}
/* Publication page
-------------------------------------------------------------- */
#publication h3 {
  width: 100%;
  margin: 0 auto 30px;
  padding-bottom: 30px;
  border-bottom: 2px solid #c38988;
  text-align: center;
}

#publication h3 img {
  width: 350px;
}

#publication .red-btn {
  margin: 0 auto;
  max-width: 244px;
}

#publication .red-btn img {
  margin-top: 30px;
  margin-bottom: 50px;
}

#publication .pub-info {
  display: flex;
  flex-flow: row wrap;
  justify-content: space-between;
}

#publication .pub-info > li {
  display: flex;
  flex-flow: column nowrap;
  justify-content: flex-start;
  width: calc((100% - 30px) / 2);
  margin-bottom: 50px;
  border-bottom: 4px solid #ddbe6b;
}

/* #publication li > div{ display: flex; flex-flow: column nowrap; justify-content: center; } */
#publication .pub-imgWrap {
  text-align: center;
}

#publication .pub-imgWrap > img {
  align-self: center;
  width: auto;
  max-width: 100%;
  max-height: 350px;
}

#publication .pub-textWrap {
  padding: 20px 5px 30px;
  text-align: center;
}

#publication li [data="date"] {
  color: #ddbe6b;
  font-weight: bold;
}

#publication li [data="title"] {
  color: #000;
  font-weight: bold;
}

/* Media page
-------------------------------------------------------------- */
#consultation1911_top h4.ttl_list,
#index_news h4.ttl_list {
  display: flex;
  align-items: center;
  justify-content: center;
  border-bottom: 2px solid #a88b40;
  color: #a88b40;
  font-family: "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "游明朝",
    YuMincho, "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  font-size: 25px;
  line-height: 1;
  margin-bottom: 30px;
  padding-bottom: 30px;
  padding-top: 10px;
  position: relative;
  text-align: center;
  line-height: 1.3;
}

#consultation1911_top h4.ttl_list span,
#index_news h4.ttl_list span {
  position: relative;
  max-width: 90%;
}

#consultation1911_top h4.ttl_list span:before,
#consultation1911_top h4.ttl_list span:after,
#index_news h4.ttl_list span:before,
#index_news h4.ttl_list span:after {
  content: "";
  position: absolute;
  width: 37px;
  height: 33px;
}

#consultation1911_top h4.ttl_list span:before,
#index_news h4.ttl_list span:before {
  background: url("/images/menu/icon_floral.jpg") center center no-repeat;
  left: -70px;
  top: -4px;
  background-size: contain;
}

#consultation1911_top h4.ttl_list span:after,
#index_news h4.ttl_list span:after {
  background: url("/images/menu/icon_floral.jpg") center center no-repeat;
  right: -70px;
  top: -4px;
  transform: scaleX(-1);
  background-size: contain;
}

/* Access page
-------------------------------------------------------------- */
#access #ttl {
  margin-bottom: 30px;
}

#access #ttl h3 {
  width: 100%;
  margin: 0 auto 30px;
  text-align: center;
}

/*#access #ttl h3 img {
  width:335px;
}*/
#access .clinic_bnr {
  height: 220px;
  position: relative;
  background-repeat: no-repeat;
  background-position: top center;
  background-size: cover;
}

#access #clinic1 .clinic_bnr {
  background-image: url("/images/access/clinic1_bnr.webp");
}

#access #clinic2 .clinic_bnr {
  background-image: url("/images/access/clinic2_bnr.webp");
}

#access .clinic_bnr h4 {
  font-size: 25px;
  font-weight: 600;
  color: #fff;
  padding: 30px 50px;
  font-family: "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "游明朝",
    YuMincho, "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}

#access .clinic_bnr h4 span {
  display: block;
  font-size: 15px;
}

#access .clinic-social {
  position: absolute;
  left: 24%;
  top: 15%;
}

#access .clinic-social ul {
  margin: 0 auto;
  width: 110px;
}

#access .clinic-social ul li {
  display: block;
  float: left;
  margin-right: 1%;
  width: 32.66%;
}

#access .clinic-social ul li:last-child {
  margin-right: 0;
}

#access .inner_wrap {
  background-color: #fff;
  margin: 0 20px;
  margin-top: -15%;
  margin-bottom: 50px;
  padding: 30px;
  box-shadow: 0 0 14px rgb(0 0 0 / 20%);
  position: relative;
  z-index: 1;
}

#access .inner_wrap .card {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

#access .inner_wrap .card .media {
  width: 40%;
}

#access .inner_wrap .card .text {
  width: 57%;
  text-align: left;
}

#access .inner_wrap .card .text .text-phone {
  font-weight: 600;
  font-family: "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "游明朝",
    YuMincho, "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}

#access .inner_wrap .card .text-phone span {
  display: block;
  font-size: 17px;
}

#access .inner_wrap .card .text-phone h5 {
  font-size: 36px;
  padding-left: 70px;
  position: relative;
}

#access .inner_wrap .card .text-phone h5:before {
  content: "";
  position: absolute;
  width: 55px;
  height: 36px;
  background: url("/images/access/phone_icon.png") left center no-repeat;
  margin-left: -68px;
  top: 8px;
}

#access .inner_wrap .card .clinic_info li {
  border-top: 1px solid #e5e5e5;
  font-size: 15px;
  font-weight: 500;
  padding: 18px 0;
  padding-left: 90px;
  position: relative;
}

#access .inner_wrap .card .clinic_info li:last-child {
  border-bottom: 1px solid #e5e5e5;
}

#access .inner_wrap.inner__clinic .card .clinic_info li .space {
  margin-left: 30px;
}

#access .inner_wrap .card .clinic_info li span {
  background-color: #eeeeee;
  padding: 10px 0;
  text-align: center;
  margin-right: 10px;
  position: absolute;
  top: 8px;
  left: 0;
  width: 80px;
  bottom: 10px;
}

#access .inner_wrap .map {
  margin: 30px 0;
}

#access .inner_wrap .map h5 {
  margin: 25px 0 10px;
  font-size: 20px;
  font-weight: 600;
  font-family: "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "游明朝",
    YuMincho, "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  text-align: center;
}

#access .inner_wrap #tabs,
#access .inner_wrap #tabs_B {
  margin: 20px 0 30px;
}

#access .inner_wrap #tabs > ul,
#access .inner_wrap #tabs_B > ul {
  display: flex;
  flex-flow: row wrap;
}

#access .inner_wrap #tabs > ul > li,
#access .inner_wrap #tabs_B > ul > li {
  width: -ms-calc((100% - 6px) / 3);
  width: calc((100% - 6px) / 3);
  text-align: center;
  font-weight: bold;
}

#access .inner_wrap #tabs > ul > li:not(:last-child),
#access .inner_wrap #tabs_B > ul > li:not(:last-child) {
  margin-right: 3px;
}

#access .inner_wrap #tabs > ul > li a,
#access .inner_wrap #tabs_B > ul > li a {
  box-sizing: border-box;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 100%;
  padding: 10px;
  background: linear-gradient(
    0deg,
    rgba(244, 244, 242, 1) 0%,
    rgba(212, 207, 183, 1) 100%
  );
  border-radius: 10px 10px 0px 0px;
  color: #a99f6e;
  line-height: 1.4;
  text-shadow: 2px 2px 0 #fff, -2px -2px 0 #fff, 2px -2px 0 #fff,
    -2px 2px 0 #fff, 2px 0 0 #fff, 0 2px 0 #fff, -2px 0 0 #fff, 0 -2px 0 #fff;
}

#access #clinic2 .inner_wrap #tabs > ul > li a,
#access #clinic2 .inner_wrap #tabs_B > ul > li a {
  background: linear-gradient(
    0deg,
    rgba(255, 255, 255, 0.5) 0%,
    rgba(183, 153, 75, 0.5) 100%
  );
  border-radius: 10px 10px 0px 0px;
  color: #b7994b;
}

#access .inner_wrap #tabs > ul > li.ui-tabs-active a,
#access .inner_wrap #tabs_B > ul > li.ui-tabs-active a {
  background: #ada475;
  color: #fff;
  text-shadow: none;
}

#access .inner_wrap #tabs > ul > li.ui-tabs-active a {
  font-size: 15px;
}

#access .inner_wrap #tabs .label {
  font-size: 14px;
  font-weight: bold;
}

#access .inner_wrap #tabs > div[id^="tab-"] {
  font-size: 15px;
}

#access #clinic2 .inner_wrap #tabs > ul > li.ui-tabs-active a,
#access #clinic2 .inner_wrap #tabs_B > ul > li.ui-tabs-active a {
  background: #b7994b;
  color: #fff;
  text-shadow: none;
}

#access .inner_wrap #tabs > div[id^="tab-"],
#access .inner_wrap #tabs_B > div[id^="tab-"] {
  padding: 20px;
  border: 3px solid #ada475;
  position: relative;
}

#access #clinic2 .inner_wrap #tabs > div[id^="tab-"],
#access #clinic2 .inner_wrap #tabs_B > div[id^="tab-"] {
  border: 3px solid #b7994b;
  position: relative;
}

#access .inner_wrap #tabs .label,
#access .inner_wrap #tabs_B .label {
  margin-right: 5px;
  padding: 5px 10px;
  background-color: #ada475;
  color: #fff;
}

#access #clinic2 .inner_wrap #tabs .label,
#access #clinic2 .inner_wrap #tabs_B .label {
  background-color: #b7994b;
}

#access .inner_wrap #tabs .access-title,
#access .inner_wrap #tabs_B .access-title {
  font-size: 17px;
  font-weight: bold;
  padding-bottom: 10px;
  border-bottom: 1px solid #474747;
}

#access .inner_wrap #tabs .access-title_mt,
#access .inner_wrap #tabs_B .access-title_mt {
  margin-top: 30px;
}

#access .inner_wrap #tabs iframe,
#access .inner_wrap #tabs_B iframe {
  margin: 20px 0;
  width: 100%;
  height: 325px;
}

#access .inner_wrap #tabs .googlemap_btn_wrap,
#access .inner_wrap #tabs_B .googlemap_btn_wrap {
  width: 270px;
  margin: 0 auto;
}

#access .inner_wrap #tabs .googlemap_btn,
#access .inner_wrap #tabs_B .googlemap_btn {
  display: inline-block;
  width: 100%;
  margin: 0 auto;
  padding: 16px;
  color: #fff;
  text-align: center;
  border-radius: 30px;
  box-sizing: border-box;
  position: relative;
}

#access .inner_wrap #tabs .googlemap_btn::before,
#access .inner_wrap #tabs_B .googlemap_btn::before {
  background: url("/images/access/c_btn-arrow-sec.svg") no-repeat center top;
  content: "";
  height: 10px;
  position: absolute;
  right: 10px;
  top: 43%;
  transform: translateY(-50%);
  transition: all 0.3s ease;
  width: 60px;
}

#access .inner_wrap #tabs .googlemap_btn:hover,
#access .inner_wrap #tabs_B .googlemap_btn:hover {
  color: #fff;
  -webkit-filter: brightness(1.15) grayscale(0.3);
  filter: brightness(1.15) grayscale(0.3);
}

#access .inner_wrap #tabs .googlemap_btn:hover:before,
#access .inner_wrap #tabs_B .googlemap_btn:hover:before {
  right: 5px;
}

#access #clinic1 .inner_wrap #tabs .googlemap_btn,
#access #clinic1 .inner_wrap #tabs_B .googlemap_btn {
  background-color: #ada475;
  box-shadow: 0 4px 0 -1px #e4e5e7;
  margin-bottom: 20px;
}

#access #clinic2 .inner_wrap #tabs .googlemap_btn,
#access #clinic2 .inner_wrap #tabs_B .googlemap_btn {
  background-color: #b7994b;
}

#access .inner_wrap #tabs .map,
#access .inner_wrap #tabs_B .map {
  margin: 20px 0;
  position: relative;
}

#access .inner_wrap #tabs .hTtl,
#access .inner_wrap #tabs_B .hTtl {
  padding: 10px 25px;
  margin-top: 0;
  background-color: #eeebe2;
  font-weight: bold;
}

#access .inner_wrap #tabs .hTtl02,
#access .inner_wrap #tabs_B .hTtl02 {
  margin-top: 30px;
}

#access .inner_wrap #tabs .sTtl,
#access .inner_wrap #tabs_B .sTtl {
  margin-bottom: 1em;
  padding: 1px 0 1px 5px;
  border-left: 3px solid #ddbe6b;
  font-weight: bold;
}

#access .inner_wrap #tab-1 .hTtl {
  margin-bottom: 20px;
}

#access .inner_wrap #tab-1 .mapPins {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}

#access .inner_wrap #tab-1 .parkingMap {
  padding: 0 20px;
}

#access .inner_wrap #tab-1 .parkingMap > :first-child {
  margin-right: 20px;
}

#access .inner_wrap #tab-1 .parkingMap > :first-child img {
  max-width: none;
  width: 320px;
}

#access .inner_wrap #tabs .mapPins {
  /* margin-top: 20px; */
}

#access .inner_wrap #tabs #tab-1 .map a,
#access .inner_wrap #tabs_B #tab-1 .map a {
  display: block;
  content: "";
  width: 50px;
  height: 50px;
  position: absolute;
  right: 10px;
  bottom: 10px;
}

#access #clinic1 .inner_wrap #tabs #tab-1 .map a,
#access #clinic1 .inner_wrap #tabs_B #tab-1 .map a {
  background: url("/images/access/train_map_arrow.png") no-repeat;
  background-size: cover;
}

#access #clinic2 .inner_wrap #tabs #tab-1 .map a,
#access #clinic2 .inner_wrap #tabs_B #tab-1 .map a {
  background: url("/images/access/train_map_arrow02.png") no-repeat;
  background-size: cover;
}

#access .inner_wrap #tabs .mapPins li,
#access .inner_wrap #tabs_B .mapPins li {
  width: 280px;
  margin-bottom: 10px;
  padding: 15px;
  background-color: #f0eff0;
  border-radius: 6px;
  box-shadow: -3px 4px 1px -2px rgba(0, 0, 0, 0.3);
  font-size: 14px;
  box-sizing: border-box;
}

#access .inner_wrap #tabs .mapPins li span,
#access .inner_wrap #tabs_B .mapPins li span {
  display: inline-block;
  width: 24px;
  height: 24px;
  margin-right: 5px;
  background-color: #ddbe6b;
  border-radius: 50%;
  color: #fff;
  font-weight: bold;
  line-height: 1.7;
  text-align: center;
}

#access .inner_wrap #tabs #tab-2 .course-item a,
#access .inner_wrap #tabs_B #tab-2 .course-item a {
  display: block;
  content: "";
  width: 50px;
  height: 50px;
  position: absolute;
  right: 40px;
  bottom: 40px;
}

#access #clinic1 .inner_wrap #tabs #tab-2 .course-item a,
#access #clinic1 .inner_wrap #tabs_B #tab-2 .course-item a {
  background: url("/images/access/train_map_arrow.png") no-repeat;
  background-size: cover;
}

#access #clinic2 .inner_wrap #tabs #tab-2 .course-item a,
#access #clinic2 .inner_wrap #tabs_B #tab-2 .course-item a {
  background: url("/images/access/train_map_arrow02.png") no-repeat;
  background-size: cover;
}

#access .inner_wrap #tabs .course-item a:hover,
#access .inner_wrap #tabs_B .course-item a:hover {
  opacity: 0.8;
}

#access .inner_wrap #tabs .course-item a img,
#access .inner_wrap #tabs_B .course-item a img {
  width: 100%;
}

#access .inner_wrap #tabs .modal,
#access .inner_wrap #tabs_B .modal {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  background-color: rgba(0, 0, 0, 0.8);
  display: none;
  z-index: 999;
}

#access .inner_wrap #tabs .bigimg,
#access .inner_wrap #tabs_B .bigimg {
  position: absolute;
  width: 80%;
  max-width: 1000px;
  top: 30px;
  left: 0;
  right: 0;
  margin-right: auto;
  margin-left: auto;
}

#access .inner_wrap #tabs .close-btn,
#access .inner_wrap #tabs_B .close-btn {
  color: #fff;
  font-size: 40px;
  position: absolute;
  right: 20px;
  top: 0;
}

#access .inner_wrap #tabs .close-btn a,
#access .inner_wrap #tabs_B .close-btn a {
  color: #fff;
  text-decoration: none;
  -webkit-filter: brightness(100);
  filter: brightness(100);
}

#access .inner_wrap #tabs dl,
#access .inner_wrap #tabs dl > *,
#access .inner_wrap #tabs_B dl,
#access .inner_wrap #tabs_B dl > * {
  display: inline-block;
  line-height: 1.5;
}

#access .inner_wrap #tabs dl,
#access .inner_wrap #tabs_B dl {
  margin-top: 20px;
}

#access .inner_wrap #tabs dl dt,
#access .inner_wrap #tabs_B dl dt {
  min-width: 4.5em;
  margin-left: 20px;
  margin-right: 10px;
  padding: 3px 10px;
  background-color: #eee;
  text-align: center;
  vertical-align: top;
}

#access .inner_wrap #tabs dl dd,
#access .inner_wrap #tabs_B dl dd {
  vertical-align: text-top;
}

#access .inner_wrap #tabs .trainLine,
#access .inner_wrap #tabs_B .trainLine {
  display: inline-block;
  width: 60px;
  position: relative;
  font-size: 0;
  transform: scale(1.3, 0.8);
  margin: 0 20px;
}

#access .inner_wrap #tabs .trainLine:before,
#access .inner_wrap #tabs .trainLine:after,
#access .inner_wrap #tabs_B .trainLine:before,
#access .inner_wrap #tabs_B .trainLine:after {
  content: "";
  display: block;
  border-bottom: 8px solid #000;
  position: absolute;
  bottom: 3px;
  left: 0;
  right: 0;
}

#access .inner_wrap #tabs .trainLine:after,
#access .inner_wrap #tabs_B .trainLine:after {
  border-bottom: 6px dashed #fff;
  bottom: 4px;
  left: 7px;
  right: 7px;
}

#access .inner_wrap #tabs .mark-01,
#access .inner_wrap #tabs_B .mark-01 {
  display: inline-block;
  margin: 8px 5px 0 0;
  padding: 0 7px;
  background-color: #a88b40;
  color: #fff;
}

#access .inner_wrap #tabs .mark-02,
#access .inner_wrap #tabs_B .mark-02 {
  display: inline-block;
  margin: 8px 5px 0 0;
  padding: 0 7px;
  background-color: #323232;
  color: #fff;
}

#access .inner_wrap #tabs .train_mt,
#access .inner_wrap #tabs_B .train_mt {
  margin-top: 20px;
}

#access .inner_wrap #tabs .timeTable,
#access .inner_wrap #tabs_B .timeTable {
  margin-top: 8px;
  align-self: center;
}

#access .inner_wrap #tabs .timeTable:before,
#access .inner_wrap #tabs_B .timeTable:before {
  content: "";
  display: inline-block;
  width: 0;
  height: 0;
  border: 5px solid transparent;
  border-left: 7px solid #a88b40;
}

#access .inner_wrap #tabs .notes,
#access .inner_wrap #tabs_B .notes {
  margin: 20px 20px 30px;
}

#access .inner_wrap #tabs .lnotes {
  margin: 20px 20px 30px;
}

#access .inner_wrap #tabs .lnotes li {
  display: block;
  padding-left: 16px;
  position: relative;
}

#access .inner_wrap #tabs .lnotes li:before {
  content: "※";
  left: 0;
  position: absolute;
  top: 0;
}

#access .inner_wrap .card .clinic_info li.add {
  padding: 7px 40px 7px 90px;
}

#access .inner_wrap h4 {
  color: #fff;
  font-weight: 600;
  font-size: 15px;
  position: relative;
  overflow: hidden;
  display: block;
}

#access #clinic1 .inner_wrap .map h4 strong {
  background-color: #b3a28d;
}

#access #clinic2 .inner_wrap .map h4 strong {
  background-color: #b7994b;
}

#access .inner_wrap .map h4 strong {
  color: #fff;
  padding: 10px 0;
  font-weight: 600;
  width: 110px;
  display: inline-block;
  padding-left: 20px;
  clip-path: polygon(0 0, 75% 0, 100% 100%, 0% 100%);
  -webkit-clip-path: polygon(0 0, 75% 0, 100% 100%, 0% 100%);
}

#access .inner_wrap .map h4 span {
  font-weight: 500;
  color: #000;
}

#access .map iframe {
  width: 100%;
  height: 325px;
}

#access #clinic1 .inner_wrap > .map div {
  border: 2px solid #b3a28d;
}

#access #clinic2 .inner_wrap > .map div {
  border: 2px solid #b7994b;
}

#access .inner_wrap .accT {
  position: relative;
  padding: 10px 20px;
}

#access #clinic1 .inner_wrap .accT {
  background-color: #ada475;
}

#access #clinic2 .inner_wrap .accT {
  background-color: #b7994b;
}

#access .inner_wrap .accT:after {
  content: url("/images/access/icon-open.png");
  height: 20px;
  width: 20px;
  position: absolute;
  right: 20px;
  top: 12px;
}

#access .inner_wrap .accT.open:after {
  content: url("/images/access/icon-close.png");
}

#access .inner_wrap .accC ul {
  max-width: 100%;
  width: 100%;
  margin: 0 auto;
  clear: both;
  display: block;
  overflow: hidden;
  /*
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  */
}

#access .inner_wrap .accC li {
  /* width: calc((100% / 3) - 16px); */
  box-sizing: border-box;
  font-size: 15px;
  margin-top: 20px;
  display: block;
  float: left;
  margin-right: 4%;
  width: 30.666%;
}

#access .inner_wrap .accC li:nth-child(3n),
#access .inner_wrap .accC li:last-child {
  margin-right: 0;
}

#access .inner_wrap .accC li p {
  padding-top: 10px;
  font-weight: 500;
}

/* Access & About page
-------------------------------------------------------------- */
.bnr-wide {
  overflow: hidden;
  position: relative;
  width: 100%;
}

.bnr-wide.access h2 img {
  width: 102%;
}

.bnr-wide h2 img {
  left: 50%;
  max-width: 150%;
  position: relative;
  transform: translateX(-50%);
  width: 143%;
}

.bnr-wide .pan {
  background: none;
  left: 0;
  top: 0;
  position: absolute;
  z-index: 9;
}

.pan.pan__dis {
  display: none;
}

#access .inner_wrap.inner__clinic {
  margin: 0;
  padding: 12px 50px 30px;
}

#access .inner_wrap.inner__clinic .card .clinic_info {
  padding-bottom: 30px;
  width: 100%;
  margin-left: 0;
}

#access .inner_wrap.inner__clinic .card .clinic_info li {
  border-color: #a6a6a6;
  padding-left: 142px;
}

#access .inner_wrap.inner__clinic .card .clinic_info li:first-child {
  border-top: none;
}

#access .inner_wrap.inner__clinic .card .clinic_info li span {
  width: 130px;
}

#access .inner_wrap.inner__clinic .card .clinic_info li .space {
  margin-left: 15px;
  font-size: 15px;
}

.clinic_gallery {
  width: 100%;
}

.clinic_gallery li {
  display: block;
  float: left;
  margin-right: 1.5%;
  padding-bottom: 1.5%;
  width: 23.875%;
}

.clinic_gallery li:nth-child(4n),
.clinic_gallery li:last-child {
  margin-right: 0;
}

@media only screen and (max-width: 744px) {
  .bnr-wide h2 img {
    left: auto;
    max-width: 100%;
    position: relative;
    transform: none;
    width: 100%;
  }

  #access #clinic1 {
    padding-bottom: 20px;
  }
}

/* Consultation page
-------------------------------------------------------------- */
#consultation_main {
  width: 890px;
  margin: 0 auto 49px;
}

#consultation_main p {
  margin-bottom: 30px;
}

#consultation_main p.thanks {
  text-align: center;
}

#consultation_main dl {
  background: #fff;
}

#consultation_main dl dt {
  border-top: 1px solid #c6c6c6;
  padding: 20px;
  font-weight: bold;
}

#consultation_main dl dd {
  padding: 0 20px 20px;
}

#consultation_main dl dd:last-child {
  border-bottom: 1px solid #c6c6c6;
}

#consultation_main dl dt.gry,
#consultation_main dl dd.gry {
  background: #ede8e0;
}

#consultation_main dl span.ss {
  font-size: 14px;
}

#consultation_main dl span.hissu {
  color: #fff;
  background: #871214;
  padding: 2px 10px;
  border-radius: 5px;
  line-height: 100%;
  margin-left: 15px;
}

#consultation_main input {
  width: 100%;
  height: 30px;
  font-size: 16px;
}

#consultation_main textarea {
  width: 100%;
  height: 100px;
  font-size: 16px;
}

#consultation_main select {
  width: 30%;
  height: 30px;
  font-size: 16px;
}

#consultation_main .kibo {
  margin-bottom: 20px;
}

#consultation_main .kibo:last-child {
  margin-bottom: 0;
}

#consultation_main .kibo input {
  width: 30%;
  height: 30px;
  font-size: 16px;
}

#consultation_main #btn {
  clear: both;
  width: 100%;
  text-align: center;
}

#consultation_main button.button1 {
  width: 300px;
  margin: 50px auto;
  font-size: 1.4em;
  font-weight: bold;
  padding: 10px 30px;
  background-color: #871214;
  color: #fff;
  border-style: none;
  border-radius: 5px;
}

#consultation_main button.button1:hover {
  background-color: #fff;
  color: #871214;
  border: 1px solid #871214;
}

/* Payment page
-------------------------------------------------------------- */
#payment {
  font-size: 0.9rem;
}

#payment h3 {
  width: 100%;
  margin: 0 auto 30px;
  border-bottom: 2px solid #c38988;
  padding-bottom: 30px;
  text-align: center;
}

#payment h3 img {
  width: 335px;
}

#payment .card_box01,
#payment .card_box02,
#payment .card_box03 {
  margin-bottom: 50px;
}

#payment section p {
  margin-bottom: 30px;
}

#payment section h4 {
  background: #80000a;
  color: #fff;
  font-family: "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "游明朝",
    YuMincho, "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  text-align: center;
  padding: 5px 0;
  margin-bottom: 30px;
  font-size: 1rem;
}

#payment section .card,
#payment section .card01 {
  width: 100%;
  text-align: center;
}

#payment section .card_box01 img {
  margin-right: 10px;
  margin-left: 10px;
  height: 60px;
}

#payment section .card_box02 .card01 img {
  margin-right: 15px;
  margin-left: 15px;
  width: 200px;
}

#payment section .card_box02 .card02 {
  border: #dddddd 1px solid;
  padding: 30px;
  margin-top: 30px;
}

#payment section .card_box03 .txt {
  width: 80%;
  float: left;
}

#payment section .card_box03 .card {
  width: 15%;
  margin-left: 5%;
  float: right;
}

/* Privacy policy page
-------------------------------------------------------------- */
#policy.page #conteiner #content {
  float: none;
  margin: 0 auto;
  padding: 40px 0 80px;
}

#policy .list-steps li {
  position: relative;
  margin-bottom: 20px;
  padding: 25px 50px 25px 154px;
  background-color: #fff;
  box-shadow: 0 0 14px rgb(0 0 0 / 20%);
}

#policy .list-steps li:last-child {
  margin-bottom: 0;
}

#policy .list-steps li .num {
  width: 103px;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  background-color: #b5152f;
  background-image: linear-gradient(to right, #c1485c, #b5152f 50%, #980b22);
  color: #fff;
  font-family: "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", 游明朝, YuMincho,
    HG明朝E, "ＭＳ Ｐ明朝", "ＭＳ 明朝", "Noto Serif JP", serif;
  font-size: 36px;
  font-weight: 700;
  text-align: center;
}

#policy .list-steps li .num .inner {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 100%;
}

/* Recruit page
-------------------------------------------------------------- */
#about #recruiting {
  padding-bottom: 30px;
}

#about #recruiting h3 {
  width: 100%;
  margin: 0 auto 30px;
  border-bottom: 2px solid #c38988;
  padding-bottom: 30px;
  text-align: center;
}

#about #recruiting h3 img {
  width: 350px;
}

#about #recruiting .bg_gradient {
  background: url("images/recruit/bg_gradient.jpg") repeat-y center top #fef7e4;
  font-family: "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "游明朝",
    YuMincho, "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  font-size: 18px;
  margin-bottom: 30px;
  padding: 50px;
  text-align: center;
  border-bottom-right-radius: 90px;
  -moz-border-bottom-right-radius: 90px;
  -webkit-border-bottom-right-radius: 90px;
}

#about #recruiting .bg_gradient h4 {
  color: #851313;
  font-size: 21px;
  font-weight: 700;
  padding-bottom: 15px;
}

#about #recruiting .bg_gradient .icon-gold {
  padding-bottom: 20px;
}

#about #recruiting .bg_gradient p {
  padding-bottom: 40px;
}

#about #recruiting .bg_gradient p.no {
  padding-bottom: 0;
}

#about #recruiting .list_bio {
  display: flex;
  flex-flow: row nowrap;
  margin: 0 0 30px;
  padding: 0;
}

#about #recruiting .list_bio li {
  margin-right: 3%;
  width: 31.333%;
}

#about #recruiting .list_bio li:last-child {
  margin-right: 0;
}

#about #recruiting .list_bio li .img {
  border-left: 1px solid #e3e3e3;
  border-right: 1px solid #e3e3e3;
  border-top: 5px solid #ddbe6b;
}

#about #recruiting .list_bio li .txt {
  background-color: #8d0d24;
  color: #fff;
  font-size: 13px;
  padding: 20px;
  border-bottom: 2px solid #ddbe6b;
  border-left: 1px solid #ddbe6b;
  border-right: 1px solid #ddbe6b;
  border-bottom-right-radius: 50px;
  -moz-border-bottom-right-radius: 50px;
  -webkit-border-bottom-right-radius: 50px;
}

#about #recruiting .list_bio li .txt .ttl {
  border-bottom: 1px solid #c5868f;
  font-family: "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "游明朝",
    YuMincho, "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  font-size: 18px;
  font-weight: 700;
  margin-bottom: 20px;
  padding-bottom: 5px;
  padding-left: 25px;
  position: relative;
}

#about #recruiting .list_bio li .txt .ttl:before {
  content: url("images/recruit/icon_arrow.png");
  left: 0;
  position: absolute;
  top: 1px;
}

/* Recruit-lower page
-------------------------------------------------------------- */
#about #message.application {
  padding-bottom: 30px;
}

#about #message.application h3 {
  width: 100%;
  margin: 0 auto 30px;
  border-bottom: 2px solid #c38988;
  padding-bottom: 30px;
  text-align: center;
}

#about #message.application h3 img {
  width: 350px;
}

#about #message.application .bg_tbl {
  background: url("images/recruit/bg_gradient.jpg") repeat-y center top #fef7e4;
  padding: 50px;
  border-bottom-right-radius: 90px;
  -moz-border-bottom-right-radius: 90px;
  -webkit-border-bottom-right-radius: 90px;
}

#about #message.application .bg_tbl .tbl {
  background-color: #fff;
  border-collapse: collapse;
  border-spacing: 0;
  width: 100%;
}

#about #message.application .bg_tbl .tbl th {
  background-color: #ebebeb;
  border: 1px solid #d7d7d7;
  font-family: "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "游明朝",
    YuMincho, "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  font-size: 18px;
  font-weight: 700;
  padding: 10px;
  text-align: center;
  vertical-align: middle;
}

#about #message.application .bg_tbl .tbl td {
  background-color: #fff;
  border: 1px solid #d7d7d7;
  font-size: 13px;
  padding: 28px 40px;
  vertical-align: top;
}

#about #message.application .bg_tbl .tbl td:first-child {
  font-family: "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "游明朝",
    YuMincho, "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  font-weight: 700;
  text-align: center;
  width: 140px;
  padding: 28px 0;
}

#about #message.application .bg_tbl .tbl td li {
  position: relative;
  padding-left: 13px;
}

#about #message.application .bg_tbl .tbl td li:before {
  content: "◇";
  left: 0;
  position: absolute;
  top: 0;
}

/* Responsive
------------------------------------------------------------*/
@media only screen and (max-width: 744px) {
  #doctor:target,
  #nurse:target,
  #counselor:target {
    clear: both;
    display: block;
    height: 50px;
    overflow: hidden;
  }

  /* News */
  #index_news {
    padding: 30px 10px;
  }

  #index_news h2 img {
    width: 191px;
  }

  #index_news > .inner {
    width: auto;
    padding: 10px;
  }

  #index_news ul {
    height: 424px;
  }

  #index_news li .date {
    font-weight: normal;
  }

  #index_news .linktop {
    margin: 10px 0 0;
  }

  #index_news.page_info {
    padding: 0;
  }

  #consultation1911_top h4.ttl_list span,
  #index_news h4.ttl_list span {
    max-width: 75%;
  }

  #consultation1911_top h4.ttl_list,
  #index_news h4.ttl_list {
    font-size: 20px;
    line-height: 1.3;
  }

  #consultation1911_top h4.ttl_list span:before,
  #index_news h4.ttl_list span:before {
    left: -47px;
  }

  #consultation1911_top h4.ttl_list span:after,
  #index_news h4.ttl_list span:after {
    right: -47px;
  }

  #index_news h4.ttl_list br {
    display: none;
  }
  .dflex-item02 {
    margin-left: 0px;
  }

  /*access*/
  #access .clinic_bnr {
    margin: 0 -20px;
    height: auto;
  }

  #access .inner_wrap {
    margin-top: -33%;
  }

  #access .clinic_bnr h4 {
    font-size: 21px;
    padding: 20px 20px 40px;
  }

  #access .clinic_bnr h4 span {
    font-size: 13px;
  }

  #access .clinic-social {
    left: 100px;
    top: 25%;
  }

  #access .inner_wrap {
    margin: -5% 0 30px;
    padding: 20px;
    box-shadow: 0 0 7px rgba(0, 0, 0, 0.2);
  }

  #access .inner_wrap .card .media,
  #access .inner_wrap .card .text {
    width: 100%;
  }

  #access .inner_wrap .card .text {
    margin-top: 20px;
  }

  #access .inner_wrap .card .text-phone span {
    font-size: 15px;
    letter-spacing: -0.05em;
  }

  #access .inner_wrap.inner__clinic .card .clinic_info li .space {
    margin-left: 15px;
    font-size: 14px;
  }

  #access .inner_wrap.inner__clinic {
    margin: 0 auto;
    padding: 0;
    width: 95%;
  }

  #access .inner_wrap .card {
    padding: 12px 20px 16px;
  }

  #access .inner_wrap .card .clinic_info li.add {
    padding: 18px 0 18px 87px;
  }

  #access .inner_wrap .card .clinic_info li,
  #access .inner_wrap.inner__clinic .card .clinic_info li {
    font-size: 14px;
    padding: 9px 0;
    border-color: #c8c8c8;
  }

  #access .inner_wrap.inner__clinic .card .clinic_info li.pcDisp {
    display: none;
  }

  #access .inner_wrap .card .clinic_info li span,
  #access .inner_wrap.inner__clinic .card .clinic_info li span {
    width: 80px;
    min-width: 80px;
  }

  #access .inner_wrap .card .clinic_info li {
    line-height: 1.3;
    display: flex;
    justify-content: flex-start;
    align-items: center;
  }

  #access .inner_wrap .card .clinic_info li span {
    position: static;
    padding: 0;
    min-height: 25px;
    display: flex;
    align-items: center;
    justify-content: center;
    display: flex;
    align-self: stretch;
  }

  #access .inner_wrap.inner__clinic .card .clinic_info {
    padding-bottom: 10px;
  }

  .clinic_gallery li {
    width: 32.33333%;
  }

  .clinic_gallery li.pcDisp {
    display: none;
  }

  .clinic_gallery li:nth-child(4n) {
    margin-right: 1.5%;
  }

  .clinic_gallery li:nth-child(3n),
  .clinic_gallery li:last-child {
    margin-right: 0;
  }

  #access .inner_wrap .map h4 strong {
    padding: 3% 0;
    width: 27%;
    padding-left: 10px;
  }

  #access .inner_wrap .accT {
    padding: 10px;
  }

  #access .inner_wrap .accC li {
    width: 100%;
    margin-top: 20px;
  }

  #access .inner_wrap .accC li img {
    width: 45%;
    vertical-align: top;
  }

  #access .inner_wrap .accC li p {
    display: inline-block;
    width: 50%;
    padding-left: 10px;
    padding-top: 0;
    vertical-align: top;
  }

  #access .inner_wrap .map {
    margin: 20px 0;
  }

  #access .inner_wrap .map h4 span {
    font-size: 13px;
    line-height: 1.2;
    width: 68%;
    display: inline-block;
    vertical-align: middle;
  }

  #access .inner_wrap #tabs,
  #access .inner_wrap #tabs_B {
    margin-bottom: 20px;
    margin-top: 0;
    padding-left: 20px;
    padding-right: 20px;
  }

  #access .inner_wrap #tabs #tab-1 .map a,
  #access .inner_wrap #tabs_B #tab-1 .map a {
    width: 30px;
    height: 30px;
    right: 8px;
    bottom: 8px;
  }

  #access .inner_wrap #tab-1 .parkingMap {
    padding: 0;
  }

  #access .inner_wrap #tab-1 .hTtl {
    margin-bottom: 10px;
  }

  #access .inner_wrap #tab-1 .parkingMap > :first-child {
    margin: 0 !important;
  }

  #access .inner_wrap #tabs .mapPins li,
  #access .inner_wrap #tabs_B .mapPins li {
    width: 100%;
  }

  #access .inner_wrap #tabs > ul > li a,
  #access .inner_wrap #tabs_B > ul > li a {
    padding: 5px;
    font-size: 14px;
  }

  #access .inner_wrap #tabs > div[id^="tab-"],
  #access .inner_wrap #tabs_B > div[id^="tab-"] {
    padding: 20px 10px;
  }

  #access .inner_wrap #tabs .hTtl,
  #access .inner_wrap #tabs_B .hTtl {
    padding: 10px;
  }

  #access .inner_wrap #tab-1 p:first-of-type {
    display: flex;
    align-items: center;
  }

  #access .inner_wrap #tab-1 p:first-of-type:first-child {
    /* width: 40px; */
    padding: 3px;
    /* font-size: 40px; */
    text-align: left;
    line-height: 1;
  }

  #access .inner_wrap #tab-1 .parkingMap {
    flex-direction: column;
  }

  #access .inner_wrap #tab-1 .parkingMap > :first-child {
    margin-bottom: 20px;
    margin-right: 0;
  }

  #access .inner_wrap #tab-1 .parkingMap > :first-child img {
    width: 100%;
  }

  #access .inner_wrap #tabs #tab-2 .course-item a,
  #access .inner_wrap #tabs_B #tab-2 .course-item a {
    width: 30px;
    height: 30px;
    right: 20px;
    bottom: 30px;
  }

  #access .inner_wrap #tabs .bigimg,
  #access .inner_wrap #tabs_B .bigimg {
    width: 95%;
    top: 120px;
  }

  #access .inner_wrap #tabs .close-btn,
  #access .inner_wrap #tabs_B .close-btn {
    top: 60px;
  }

  #access .inner_wrap #tabs dl,
  #access .inner_wrap #tabs_B dl {
    display: flex;
  }

  #access .inner_wrap #tabs dl dt,
  #access .inner_wrap #tabs_B dl dt {
    display: flex;
    align-items: center;
    width: 30px;
    min-width: auto;
    margin: 0;
    padding: 5px;
    font-size: 14px;
    line-height: 1;
  }

  #access .inner_wrap #tabs dl dd,
  #access .inner_wrap #tabs_B dl dd {
    align-self: center;
    width: -ms-calc(100% - 30px);
    width: calc(100% - 30px);
    padding-left: 7px;
    box-sizing: border-box;
  }

  #access .inner_wrap #tabs dl:first-of-type p,
  access .inner_wrap #tabs_B dl:first-of-type p {
    display: flex;
    font-size: 12px;
  }

  #access .inner_wrap #tabs .train_f,
  #access .inner_wrap #tabs_B .train_f {
    display: flex;
    font-size: 12px;
  }

  #access .inner_wrap #tabs .train_fz,
  #access .inner_wrap #tabs_B .train_fz {
    font-size: 12px;
  }

  #access .inner_wrap #tabs dl:first-of-type p:first-of-type :first-child,
  #access .inner_wrap #tabs_B dl:first-of-type p:first-of-type :first-child {
    width: 80px;
  }

  #access .inner_wrap #tabs dl:first-of-type p:first-of-type :last-child,
  #access .inner_wrap #tabs_B dl:first-of-type p:first-of-type :last-child {
    width: 40px;
    align-self: center;
  }

  #access .inner_wrap #tabs .train_w,
  #access .inner_wrap #tabs_B .train_w {
    width: 80px;
  }

  #access .inner_wrap #tabs .train_w02,
  #access .inner_wrap #tabs_B .train_w02 {
    width: 50px;
    align-self: center;
  }

  #access .inner_wrap #tabs .trainLine,
  #access .inner_wrap #tabs_B .trainLine {
    transform: scale(0.8, 0.5);
    margin: 0;
  }

  #access .inner_wrap #tabs .trainLine:before,
  #access .inner_wrap #tabs_B .trainLine:before {
    bottom: 13px;
  }

  #access .inner_wrap #tabs .trainLine:after,
  #access .inner_wrap #tabs_B .trainLine:after {
    bottom: 14px;
  }

  #access .inner_wrap #tabs .mark-01,
  #access .inner_wrap #tabs .mark-02,
  #access .inner_wrap #tabs_B .mark-01,
  #access .inner_wrap #tabs_B .mark-02 {
    display: flex;
    justify-content: center;
    flex-flow: column;
    box-sizing: border-box;
    font-size: 11px;
    line-height: 1.2;
    text-align: center;
  }

  #access .inner_wrap #tabs .mark-01,
  #access .inner_wrap #tabs_B .mark-01 {
    width: 92px;
    padding: 2px 0;
  }

  #access .inner_wrap #tabs .mark-01 span,
  #access .inner_wrap #tabs_B .mark-01 span {
    display: block;
  }

  #access .inner_wrap #tabs .mark-02,
  #access .inner_wrap #tabs_B .mark-02 {
    width: 71px;
  }

  #access .inner_wrap #tabs .notes,
  #access .inner_wrap #tabs_B .notes {
    margin: 20px 0 30px;
  }

  #access .inner_wrap #tabs .lnotes {
    font-size: 15px;
    margin: 20px 0 30px;
  }

  #access .inner_wrap #tabs .label,
  #access .inner_wrap #tabs_B .label {
    text-align: center;
  }

  #access .inner_wrap #tabs > ul > li.ui-tabs-active a {
    font-size: 14px;
  }

  #access .inner_wrap #tabs .label {
    width: 50px;
    height: 40px;
    box-sizing: border-box;
    padding: 3px 0;
    line-height: 1.2;
  }

  #access .inner_wrap #tab-1 p:first-of-type:first-child {
    padding: 0;
  }

  #access .inner_wrap #tabs .map {
    margin: 10px 0 20px;
  }

  #access .inner_wrap .direction {
    padding: 0 20px 20px;
  }

  /* Recruit area */
  #about #recruiting .bg_gradient {
    font-size: 16px;
    padding: 20px;
    border-bottom-right-radius: 50px;
    -moz-border-bottom-right-radius: 50px;
    -webkit-border-bottom-right-radius: 50px;
  }

  #about #recruiting .bg_gradient h4 {
    font-size: 18px;
  }

  #about #recruiting .bg_gradient p {
    padding-bottom: 26px;
    text-align: left;
  }

  #about #recruiting .list_bio {
    display: block;
  }

  #about #recruiting .list_bio li {
    float: left;
    padding-bottom: 20px;
    margin-right: 0;
    width: 100%;
  }

  #about #recruiting .list_bio li:last-child {
    padding-bottom: 30px;
  }

  #about #recruiting .list_bio li .row {
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    min-height: 100px;
    padding-left: 140px;
    position: relative;
    width: 100%;
  }

  #about #recruiting .list_bio li .img {
    border-bottom: 1px solid #e3e3e3;
    border-right: none;
    border-top: 2px solid #ddbe6b;
    left: 0;
    position: absolute;
    top: 0;
    width: 140px;
  }

  #about #recruiting .list_bio li .txt {
    border-top: 2px solid #ddbe6b;
    min-height: 106px;
    padding: 15px 15px 0 15px;
    border-bottom-right-radius: 30px;
    -moz-border-bottom-right-radius: 30px;
    -webkit-border-bottom-right-radius: 30px;
  }

  #about #recruiting .list_bio li .txt .ttl {
    font-size: 16px;
    margin-bottom: 15px;
  }

  /* Recruit Lower area */
  #about #message.application .bg_tbl {
    padding: 20px 10px 30px;
    border-bottom-right-radius: 50px;
    -moz-border-bottom-right-radius: 50px;
    -webkit-border-bottom-right-radius: 50px;
  }

  #about #message.application .bg_tbl .tbl th {
    font-size: 16px;
  }

  #about #message.application .bg_tbl .tbl td {
    padding: 10px;
  }

  #about #message.application .bg_tbl .tbl td:first-child {
    min-width: auto;
    padding: 10px;
    width: 80px;
  }

  /*access*/
  #access .clinic_bnr {
    margin: 0 -20px;
    height: auto;
  }

  #access .inner_wrap {
    margin-top: -33%;
  }

  #access .clinic_bnr h4 {
    font-size: 21px;
    padding: 20px 20px 40px;
  }

  #access .clinic_bnr h4 span {
    font-size: 13px;
  }

  #access .clinic-social {
    left: 100px;
    top: 25%;
  }

  #access .inner_wrap {
    margin: -5% 0 30px;
    padding: 20px;
  }

  #access .inner_wrap .card .media,
  #access .inner_wrap .card .text {
    width: 100%;
  }

  #access .inner_wrap .card .text {
    margin-top: 20px;
  }

  #access .inner_wrap .card .text-phone span {
    font-size: 15px;
    letter-spacing: -0.05em;
  }

  #access .inner_wrap .map h4 strong {
    padding: 3% 0;
    width: 27%;
    padding-left: 10px;
  }

  #access .inner_wrap .accT {
    padding: 10px;
  }

  #access .inner_wrap .accC li {
    width: 100%;
    margin-top: 20px;
  }

  #access .inner_wrap .accC li img {
    width: 45%;
    vertical-align: top;
  }

  #access .inner_wrap .accC li p {
    display: inline-block;
    width: 50%;
    padding-left: 10px;
    padding-top: 0;
    vertical-align: top;
  }

  #access .inner_wrap .map {
    margin: 20px 0;
  }

  #access .inner_wrap .map h4 span {
    font-size: 13px;
    line-height: 1.2;
    width: 68%;
    display: inline-block;
    vertical-align: middle;
  }

  #access .inner_wrap #tabs > ul > li a,
  #access .inner_wrap #tabs_B > ul > li a {
    padding: 5px;
    font-size: 14px;
  }

  #access .inner_wrap #tabs > div[id^="tab-"],
  #access .inner_wrap #tabs_B > div[id^="tab-"] {
    padding: 20px 10px;
  }

  #access .inner_wrap #tabs .hTtl,
  #access .inner_wrap #tabs_B .hTtl {
    padding: 10px;
  }

  #access .inner_wrap #tab-1 p:first-of-type {
    display: flex;
    align-items: center;
  }

  /* #access .inner_wrap #tab-1 p:first-of-type:first-child{
		width: 40px;
		padding: 3px;
		font-size: 40px;
		text-align: center;
		line-height: 1;
	} */
  #access .inner_wrap #tab-1 .parkingMap {
    flex-direction: column;
  }

  #access .inner_wrap #tab-1 .parkingMap > :first-child {
    margin-bottom: 20px;
    margin-right: 0;
  }

  #access .inner_wrap #tab-1 .parkingMap > :first-child img {
    width: 100%;
  }

  #access .inner_wrap #tabs #tab-2 .course-item a,
  #access .inner_wrap #tabs_B #tab-2 .course-item a {
    width: 30px;
    height: 30px;
    right: 20px;
    bottom: 30px;
  }

  #access .inner_wrap #tabs .bigimg,
  #access .inner_wrap #tabs_B .bigimg {
    width: 95%;
    top: 120px;
  }

  #access .inner_wrap #tabs .close-btn,
  #access .inner_wrap #tabs_B .close-btn {
    top: 60px;
  }

  #access .inner_wrap #tabs dl,
  #access .inner_wrap #tabs_B dl {
    display: flex;
  }

  #access .inner_wrap #tabs dl dt,
  #access .inner_wrap #tabs_B dl dt {
    display: flex;
    align-items: center;
    width: 30px;
    min-width: auto;
    margin: 0;
    padding: 5px;
    font-size: 14px;
    line-height: 1;
  }

  #access .inner_wrap #tabs dl dd,
  #access .inner_wrap #tabs_B dl dd {
    align-self: center;
    width: -ms-calc(100% - 30px);
    width: calc(100% - 30px);
    padding-left: 7px;
    box-sizing: border-box;
  }

  #access .inner_wrap #tabs dl:first-of-type p,
  #access .inner_wrap #tabs_B dl:first-of-type p {
    display: flex;
    font-size: 12px;
  }

  /* #access .inner_wrap #tabs dl:first-of-type p:first-of-type:first-child,
  #access .inner_wrap #tabs_B dl:first-of-type p:first-of-type:first-child {
		width: 80px;
	} */
  #access .inner_wrap #tabs dl:first-of-type p:first-of-type:last-child,
  #access .inner_wrap #tabs_B dl:first-of-type p:first-of-type:last-child {
    width: 40px;
    align-self: center;
  }

  #access .inner_wrap #tabs .trainLine,
  #access .inner_wrap #tabs_B .trainLine {
    transform: scale(0.8, 0.5);
    margin: 0;
  }

  #access .inner_wrap #tabs .trainLine:before,
  #access .inner_wrap #tabs_B .trainLine:before {
    bottom: 13px;
  }

  #access .inner_wrap #tabs .trainLine:after,
  #access .inner_wrap #tabs_B .trainLine:after {
    bottom: 14px;
  }

  #access .inner_wrap #tabs .mark-01,
  #access .inner_wrap #tabs .mark-02,
  #access .inner_wrap #tabs_B .mark-01,
  #access .inner_wrap #tabs_B .mark-02 {
    display: flex;
    justify-content: center;
    flex-flow: column;
    box-sizing: border-box;
    font-size: 11px;
    line-height: 1.2;
    text-align: center;
  }

  #access .inner_wrap #tabs .mark-01,
  #access .inner_wrap #tabs_B .mark-01 {
    width: 92px;
    padding: 2px 0;
  }

  #access .inner_wrap #tabs .mark-01 span,
  #access .inner_wrap #tabs_B .mark-01 span {
    display: block;
  }

  #access .inner_wrap #tabs .mark-02,
  #access .inner_wrap #tabs_B .mark-02 {
    width: 71px;
  }

  #access .inner_wrap #tabs .notes,
  #access .inner_wrap #tabs_B .notes {
    margin: 20px 0 30px;
  }

  /*doctor*/
  #doctor #greetings .row {
    flex-direction: column;
  }

  #doctor #greetings .doc01 .row:first-child,
  #doctor #greetings .doc02 .row:first-child {
    flex-direction: column-reverse;
    padding-bottom: 0;
  }

  #doctor #greetings .doc01 .picture,
  #doctor #greetings .doc02 .picture {
    padding-right: 0;
    padding-top: 20px;
    padding-bottom: 20px;
    text-align: center;
  }

  #doctor #greetings .doctorBox > :last-child > :last-child {
    padding-top: 32px;
  }
  .heading-txt-box {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
  }
  .heading-txt-engname {
    margin-left: 0px;
  }
  .noimg-mgn {
    margin-top: 20px;
  }

  /*about*/
  #about #commit ul {
    margin: 0 auto;
    width: 90%;
  }

  #about #commit ul li,
  #webc #commit ul li {
    border-bottom: 1px solid #c38988;
    padding-bottom: 15px;
    margin-bottom: 15px;
    clear: both;
    height: auto;
    font-size: 0.9rem;
  }

  #about #commit ul li h4 {
    font-size: 18px;
    letter-spacing: 0;
  }

  #about #commit ul li.w_longtxt h4 {
    margin-top: 0;
  }

  #about #commit ul li:last-child {
    margin-bottom: 14px;
  }

  #about #commit ul li img,
  #webc #commit ul li img {
    float: left;
    width: 25%;
    margin-right: 10px;
    margin-bottom: 10px;
    margin-left: 0;
  }

  #about #commit ul li div,
  #webc #commit ul li div {
    color: #851313;
    font-family: "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "游明朝",
      YuMincho, "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
    font-size: 1.2rem;
    font-weight: bold;
    margin-top: 20px;
    margin-bottom: 12px;
  }

  #about #commit ul li p,
  #webc #commit ul li p {
    max-width: auto;
    width: 100%;
    float: none;
  }

  #about #commit ul li div {
    align-items: center;
    display: flex;
    flex-wrap: nowrap;
    justify-content: space-between;
  }

  #about #commit ul li div img {
    margin-bottom: 0;
    margin-right: 15px;
    width: 100px;
  }

  #about #commit ul li div h4 {
    margin-bottom: 0;
    margin-top: 0;
  }

  #about #commit ul li p {
    clear: both;
    display: block;
    max-width: 100%;
  }

  .red-text.spDisp {
    float: right;
    width: 50%;
    margin-top: -10px;
    margin-left: 10px;
    margin-bottom: 10px;
    padding: 3px 0;
  }

  #about #access {
    margin-bottom: 0;
  }

  #about #access h3 {
    margin-bottom: 20px;
  }

  #about #commit h3.commit__ttl {
    margin-bottom: 20px;
  }

  #about #greetings .doctor-contents {
    padding: 10px;
    text-align: justify;
  }

  #about #greetings {
    margin: 30px auto 0;
    width: 90%;
  }

  /* publication */
  #publication .pub-info > li {
    width: calc((100% - 15px) / 2);
  }

  #publication .pub-info > :nth-child(2n) {
    margin-left: 15px;
  }

  /* webcounseling */
  #webc .section1,
  #webc .section2 {
    padding: 0 20px 30px;
  }

  #webc .main-content table p {
    padding: 10px 0;
  }

  #webc #commit ul li {
    overflow: hidden;
  }

  #webc #commit ul li div {
    margin-top: 10px;
  }

  #webc #commit ul li div span {
    font-size: 24px;
  }

  #webc #commit ul li p {
    overflow: hidden;
    clear: both;
  }

  #webc .main-content table th,
  #webc .main-content table td {
    clear: both;
    display: block;
    overflow: hidden;
    width: 100%;
  }

  #webc h4.ttl_list span::before {
    left: 0;
  }

  #webc h4.ttl_list span::after {
    right: 0;
  }

  #webc .main-content table th {
    display: table-footer-group;
  }

  #webc .main-content table td {
    display: table-header-group;
    text-align: center;
  }

  #webc .main-content table td img {
    width: 70%;
    padding-bottom: 12px;
  }

  #webc .main-content table h2 {
    width: 100%;
  }

  /* media */
  #consultation1911_top h4.ttl_list span {
    clear: both;
    display: block;
    overflow: hidden;
    padding-left: 50px;
    padding-right: 50px;
  }

  #consultation1911_top h4.ttl_list span::before {
    left: 0;
  }

  #consultation1911_top h4.ttl_list span::after {
    right: 0;
  }

  #consultation1911_top h4.ttl_list {
    line-height: 1.5;
    padding-bottom: 15px;
  }

  /*price*/
  #price section {
    margin-top: -100px;
    padding-top: 100px;
  }

  #price .list h3 {
    font-size: 1rem;
  }

  #price .list h3 div.link a {
    font-size: 0.7rem;
  }

  #price .list h3 div.link a:before {
    margin-right: 3px;
  }

  #price #tab_bnr ul li {
    margin: 0 2px;
  }

  #price .list tr.item td {
    padding: 10px 5px;
  }

  #price .list td i {
    font-size: 85%;
    letter-spacing: -2px;
  }

  #price .list .tblbody th:first-child {
    width: 30%;
  }

  #price .list .tblbody td:last-child {
    width: 40%;
  }

  /*consultation*/
  main #contents_c {
    width: 100%;
    margin: 0 auto 100px;
  }

  #consultation_main {
    width: 96%;
    margin: 0 auto 49px;
  }

  #consultation_main h2 {
    text-align: center;
    margin: 0 auto 36px;
    width: 50%;
  }

  #consultation_main h2 img {
    width: 100%;
  }

  #consultation_main p {
    margin-bottom: 30px;
  }

  #consultation_main p.thanks {
    text-align: center;
  }

  #consultation_main dl {
    background: #fff;
  }

  #consultation_main dl dt {
    border-top: 1px solid #c6c6c6;
    padding: 20px 2%;
    font-weight: bold;
  }

  #consultation_main dl dd {
    padding: 0 2% 20px;
  }

  #consultation_main dl dd:last-child {
    border-bottom: 1px solid #c6c6c6;
  }

  #consultation_main dl span.ss {
    font-size: 14px;
  }

  #consultation_main dl span.hissu {
    color: #fff;
    background: #871214;
    padding: 2px 10px;
    border-radius: 5px;
    line-height: 100%;
    margin-left: 15px;
  }

  #consultation_main input {
    width: 96%;
    height: 30px;
    font-size: 16px;
  }

  #consultation_main textarea {
    width: 96%;
    height: 100px;
    font-size: 16px;
  }

  #consultation_main select {
    width: 96%;
    height: 30px;
    font-size: 16px;
  }

  #consultation_main .kibo {
    margin-bottom: 20px;
  }

  #consultation_main .kibo:last-child {
    margin-bottom: 0;
  }

  #consultation_main .kibo input {
    width: 96%;
    height: 30px;
    font-size: 16px;
    margin-bottom: 10px;
  }

  #consultation_main #btn {
    clear: both;
    width: 100%;
    text-align: center;
  }

  button.button1 {
    width: 300px;
    margin: 50px auto;
    font-size: 1.4em;
    font-weight: bold;
    padding: 10px 30px;
    color: #fff;
    border-style: none;
    border-radius: 5px;
  }

  /*payment*/
  #payment .card_box01,
  #payment .card_box02,
  #payment .card_box03 {
    margin-bottom: 30px;
  }

  #payment section p {
    margin-bottom: 15px;
  }

  #payment section h4 {
    margin-bottom: 20px;
  }

  #payment section .card_box01 img {
    margin-right: 5px;
    margin-left: 5px;
    height: 30px;
  }

  #payment section .card_box02 .card01 img {
    margin-right: 5px;
    margin-left: 5px;
    width: 80px;
  }

  #payment section .card_box02 .card02 {
    border: #dddddd 1px solid;
    padding: 30px;
    margin-top: 30px;
  }

  #payment section .card_box03 .txt {
    width: 55%;
    float: left;
  }

  #payment section .card_box03 .card {
    width: 42%;
    margin-left: 3%;
    float: right;
  }

  #payment section .card_box03 div.lasttxt {
    clear: both;
  }

  /* .kerning03 {line-height: 1.4 !important; font-size: 0.7rem !important; letter-spacing: normal; position: relative; padding-left: 18px}
	.kerning03:before {position: absolute; top: 10px; left: 0}
	.kerning04 {letter-spacing: -1px;} */

  /* policy */
  #policy #conteiner #content {
    padding: 0 0 100px;
  }

  #policy .list-steps li {
    padding: 15px 15px 15px 60px;
  }

  #policy .list-steps li .num {
    width: 40px;
    font-size: 24px;
  }
}

/* @media only screen and (max-width:744px) */

@media only screen and (max-width: 465px) {
  #about #recruiting .list_bio li .row {
    padding-left: 160px;
  }

  #about #recruiting .list_bio li .img {
    width: 160px;
  }

  #about #recruiting .list_bio li .txt {
    min-height: 124px;
  }

  #access .inner_wrap .map h4 span {
    letter-spacing: -0.05em;
  }
}

/* @media only screen and (max-width:465px) */

@media only screen and (max-width: 414px) {
  #access .inner_wrap .card .text-phone span {
    font-size: 14px;
  }

  #access .inner_wrap .card .text-phone h5 {
    font-size: 30px;
    padding-left: 0;
    font-size: 9vw;
  }

  #access .inner_wrap .card .text-phone h5::before {
    display: inline-block;
    width: 18%;
    height: 0;
    margin: 0;
    padding-bottom: 11%;
    vertical-align: sub;
    position: static;
    background-size: 80%;
    background-position: left top;
  }

  #access .inner_wrap .card .clinic_info li,
  #access .inner_wrap .card .clinic_info li span {
    font-size: 90%;
  }
}

@media only screen and (max-width: 384px) {
  #about #recruiting .list_bio li .row {
    padding-left: 110px;
  }

  #about #recruiting .list_bio li .img {
    width: 155px;
    z-index: -1;
  }

  #about #recruiting .list_bio li .txt {
    padding: 10px 10px 0 10px;
  }

  #access .inner_wrap #tabs .googlemap_btn_wrap,
  #access .inner_wrap #tabs_B .googlemap_btn_wrap {
    width: 90%;
    margin: 0 auto;
  }

  #webc #commit ul li div {
    margin-top: 5px;
  }

  #index_menu .detail li a {
    font-size: 0.7rem;
  }
}

/* @media only screen and (max-width:384px) */

@media only screen and (max-width: 360px) {
  #access .inner_wrap .map h4 span {
    font-size: 12px;
  }

  #access .inner_wrap .map h4 strong {
    padding: 5% 0;
    padding-left: 5px;
    font-size: 13px;
  }
}

/* @media only screen and (max-width:360px) */

/* ----------------------------------------------------------------------------------------------------
From style-new.css
----------------------------------------------------------------------------------------------------  */

/* --------------------------------------------------
CATEGORY PAGE
-------------------------------------------------- */
/* overwrite ---------- */
main #conteiner {
  margin: 0 auto 30px;
}

/* end overwrite ---------- */

.c_ban-inner {
  background: url(/images/category/banner/banner-bg.jpg) no-repeat center top /
    cover;
  height: 270px;
  margin-bottom: 30px;
  position: relative;
  overflow: hidden;
}

.c_ban-inner:before {
  content: "";
  width: 100%;
  height: 4px;
  box-shadow: 0 5px 12px 1px rgba(0, 0, 0, 0.2);
  position: absolute;
  top: -5px;
  left: 0;
  z-index: 1;
}

.c_ban-inner.bg2 {
  background: url(/images/webcounseling/banner-bg2.jpg) no-repeat center top /
    cover;
  height: 270px;
  margin-bottom: 30px;
  position: relative;
  overflow: hidden;
}

.c_ban-inner__wrapper {
  max-width: 1080px;
  width: 100%;
  margin: 0 auto;
  position: relative;
  z-index: 0;
}

.c_ban-inner__main {
  position: relative;
  padding: 30px 0;
}

.c_ban-inner__main:before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  z-index: -1;
}

.c_ban-inner__main.face:before {
  content: url("/images/category/banner/ban-inner-face.png");
}

.c_ban-inner__main.body:before {
  content: url("/images/category/banner/ban-inner-body.png");
}

.c_ban-inner__main.prp:before {
  content: url("/images/category/banner/ban-inner-prp.png");
}

.c_ban-inner__main.skin:before {
  content: url("/images/category/banner/ban-inner-skin.png");
}

.c_ban-inner__page-ttl {
  padding-left: 100px;
  width: calc(100% - 404px);
  box-sizing: border-box;
}

.c_ban-inner__bcrumbs {
  margin-bottom: 50px;
  font-size: 10px;
  color: #323232;
}

.c_ban-inner__ttl {
  font-family: "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "游明朝",
    YuMincho, "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", "Noto Serif JP", serif;
  font-weight: normal;
  letter-spacing: 2px;
  color: #333333;
  font-size: 36px;
  margin-bottom: 10px;
  position: relative;
  z-index: 1;
}

.c_ban-inner__ttl span {
  font-size: 18px;
  line-height: 1;
  font-style: italic;
  background: -webkit-linear-gradient(#ddbe6b, #c1a65d);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  color: #ddbe6b;
  padding-right: 5px;
  display: block;
}

.c_ban-inner__txt {
  color: #333;
  font-size: 15px;
  line-height: 1.7;
}

@media screen and (max-width: 1080px) {
  .c_ban-inner__page-ttl {
    padding: 0 20px;
  }
}

@media screen and (max-width: 744px) {
  .c_ban-inner {
    height: auto;
    border-top: 0;
  }

  .c_ban-inner__main {
    padding: 90px 0 20px;
  }

  .c_ban-inner__bcrumbs {
    display: none;
  }

  .c_ban-inner__main:before {
    width: 218px;
    text-align: right;
  }

  .c_ban-inner__main.face:before {
    content: url("/images/category/banner/ban-inner-face-sp.png");
  }

  .c_ban-inner__main.body:before {
    content: url("/images/category/banner/ban-inner-body-sp.png");
  }

  .c_ban-inner__main.prp:before {
    content: url("/images/category/banner/ban-inner-prp-sp.png");
  }

  .c_ban-inner__main.skin:before {
    content: url("/images/category/banner/ban-inner-skin-sp.png");
  }

  .c_ban-inner__page-ttl {
    width: 100%;
  }

  .c_ban-inner.bg2 {
    background: url(/images/webcounseling/banner-bg2_sp.jpg) no-repeat center
      top / cover;
    margin-bottom: 0;
  }
}

/* ----------------------------
 .c_cat-box main-content
------------------------------- */
.c_cat-box {
  margin-bottom: 20px;
}

.c_cat-box div {
  box-sizing: border-box;
}

.c_cat-box__item {
  position: relative;
}

.c_cat-box__ttl {
  font-family: "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "游明朝",
    YuMincho, "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  line-height: 1.3;
  text-align: left;
  background: url(/images/category/c_cat-ttl-bg.png) no-repeat center top /
    cover;
  height: 115px;
  width: 100%;
  padding: 25px;
  position: relative;
  z-index: 1;
}

.c_cat-box__ttl h2 {
  font-size: 22px;
  font-weight: normal;
  color: #fff;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.c_cat-box__ttl.c_center {
  text-align: center;
  background-image: url(/images/category/c_cat-ttl-bg02.jpg);
}

.c_cat-box__ttl span {
  font-size: 16px;
  font-weight: 400;
  color: #ddbe6b;
  display: block;
  font-style: italic;
}

.c_cat-box__ttl img {
  position: absolute;
  top: 3px;
  right: 0;
  z-index: -1;
}

.c_cat-box__content {
  margin-top: -25px;
  padding: 0 10px;
  position: relative;
  z-index: 1;
}

.c_cat-box__list {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  padding-bottom: 20px;
}

.c_cat-box__list li {
  width: calc((100% / 2) - 5px);
  margin-bottom: 10px;
  position: relative;
}

.c_cat-box__list.col1 li {
  width: 100%;
}

/**for 1 column**/
.c_cat-box__list li a {
  display: block;
  min-height: 135px;
  padding: 10px 10px 30px 110px;
  border-radius: 5px;
  background: #fff;
  box-shadow: inset 0 0 10px 2px rgba(0, 0, 0, 0.2);
  position: relative;
  color: #333333;
  height: 100%;
  box-sizing: border-box;
}

.c_cat-box__list li a:hover {
  background: #fcf9f5;
  transition: background 0.4s ease;
}

.c_cat-box__list li img {
  position: absolute;
  top: 10px;
  left: 10px;
}

.c_cat-box__subttl {
  font-family: "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "游明朝",
    YuMincho, "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  font-size: 18px;
  font-weight: 600;
  line-height: 1.3;
  color: #851313;
  margin: 10px 0;
}

.c_cat-box__txt {
  font-size: 15px;
}

.c_limited:hover:before {
  opacity: 0.6;
}

.c_cat-box__btn {
  width: 16px;
  height: 16px;
  background: linear-gradient(to right, #9b102a, #721a1a);
  border-radius: 50%;
  position: absolute;
  bottom: 10px;
  right: 10px;
}

.c_cat-box__btn:before {
  content: "";
  width: 0;
  height: 0;
  border-top: 4px solid transparent;
  border-bottom: 4px solid transparent;
  border-left: 6px solid #fff;
  position: absolute;
  top: 50%;
  left: 2px;
  right: 0;
  margin: 0 auto;
  transform: translateY(-50%);
}

.c_cat-box__droplist {
  top: -100%;
  left: 0;
  position: relative;
}

.c_cat-box__droplist:before {
  content: "";
  width: 0;
  height: 0;
  border-left: 15px solid transparent;
  border-right: 15px solid transparent;
  border-top: 15px solid #ae9e8c;
  position: absolute;
  top: -30px;
  left: 0;
  right: 0;
  margin: 0 auto;
}

.sec_hide {
  position: absolute;
  visibility: hidden;
}

/* -------------------------
 .c_cat-box__dropbtn
---------------------------- */
.c_cat-box__dropbtn {
  font-family: "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "游明朝",
    YuMincho, "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  font-size: 21px;
  font-weight: 600;
  line-height: 1.3;
  color: #fff;
  text-align: center;
  background: url(/images/category/c_cat-dropbtn-bg.png) no-repeat center top /
    cover;
  min-height: 50px;
  width: 100%;
  padding: 10px 20px;
  position: relative;
  margin-bottom: 30px;
  cursor: pointer;
}

.c_cat-box__dropbtn:before {
  content: "";
  border: solid #fff;
  border-width: 0 2px 2px 0;
  display: inline-block;
  padding: 6px;
  position: absolute;
  top: 34%;
  right: 20px;
  transition: all 0.5s ease;
  transform: translate(-50%) rotate(45deg);
}

.c_cat-box__dropbtn.open:before {
  transform: translate(-50%) rotate(-134deg);
  top: 44%;
}

/* --------------------
no dropdown
----------------------- */
.no-dropdown .c_cat-box__content {
  margin-top: -66px;
}

.no-dropdown .c_cat-box__ttl {
  height: 167px;
}

/* height: 167px; */

/* RESPONSIVE STYLE ---------- */

@media screen and (max-width: 744px) {
  .c_cat-main {
    margin-top: 0;
  }

  .c_cat-box {
    margin-bottom: 0;
  }

  .c_cat-box__ttl img {
    max-width: calc(100% - 184px);
    width: 157px;
  }

  .c_cat-box__list li {
    width: 100%;
  }

  .c_cat-box__list li a {
    padding: 10px 10px 35px 95px;
    min-height: 115px;
  }

  .c_cat-box__list li img {
    width: 75px;
  }

  .c_cat-box__subttl {
    margin: 0 0 10px;
  }

  .c_cat-box__content {
    margin-top: -72px;
  }

  /* --------------------------
  .c_cat-box__dropbtn
  ----------------------------- */
  .c_cat-box__dropbtn {
    text-align: left;
    font-size: 17px;
    padding: 12px 50px 12px 10px;
  }

  .c_cat-box__dropbtn:before {
    right: 10px;
    padding: 5px;
  }

  .c_cat-box__dropbtn:after {
    border-left: 12px solid transparent;
    border-right: 12px solid transparent;
    border-top: 12px solid #ae9e8c;
    bottom: -12px;
  }

  .c_limited:before {
    left: 95px;
  }
}

/* End of CATEGORY PAGE STYLE ---------- */

/* --------------------------------------------------
PRICE PAGE
-------------------------------------------------- */
#p_priceTabs div {
  box-sizing: border-box;
}

#p_priceTabs h1,
#p_priceTabs h2,
#p_priceTabs h3,
#p_priceTabs h4 {
  box-sizing: border-box;
}

.p_pricetabs__btns {
  display: flex;
  justify-content: space-between;
}

.p_pricetabs__btns li {
  width: calc((100% / 4) - 3px);
}

.p_pricetabs__btns li a {
  font-family: "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "游明朝",
    YuMincho, "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", "Noto Serif JP", serif;
  font-size: 18px;
  color: #fff;
  display: block;
  text-align: center;
  position: relative;
  background: url(/images/category/price/pricetabs-btn-bg.png) no-repeat center
    top;
  padding: 10px;
  min-height: 50px;
  border-radius: 10px 10px 0 0;
  box-sizing: border-box;
}

.p_pricetabs__btns li a span {
  color: #ddbe6b;
  font-size: 14px;
  font-style: italic;
  display: inline-block;
  margin-left: 10px;
}

.p_pricetabs__btns li a:hover,
.p_pricetabs__btns li.ui-tabs-active a {
  background-image: url(/images/category/price/pricetabs-btn-bg-current.png);
}

/* --------------------------------------------------
 .c_ptabs__ban
-------------------------------------------------- */
.c_ptabs-ban {
  background-image: url(/images/category/price/pricetabs-ban-bg.jpg);
  background-repeat: no-repeat;
  background-position: center top;
  min-height: 223px;
  border-radius: 0 0 12px 12px;
  box-shadow: 0 5px 10px 0 rgba(0, 0, 0, 0.2);
  overflow: hidden;
}

.c_ptabs-ban__con {
  padding: 50px 268px 20px 30px;
  position: relative;
}

.c_ptabs-ban__ttl {
  font-family: "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "游明朝",
    YuMincho, "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", "Noto Serif JP", serif;
  font-size: 36px;
  color: #333333;
  margin-bottom: 20px;
  letter-spacing: 2px;
}

.c_ptabs-ban__ttl span {
  font-size: 18px;
  line-height: 1;
  font-style: italic;
  background: -webkit-linear-gradient(#ddbe6b, #c1a65d);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  color: #ddbe6b;
  padding-right: 5px;
  display: block;
}

.c_ptabs-ban__con p {
  font-weight: 500;
  font-size: 13px;
  position: relative;
  z-index: 1;
  color: #333;
}

.c_ptabs-ban__con img {
  position: absolute;
  top: 0;
  right: 0;
  max-height: 223px;
}

/* --------------------------------------------------
 .c_ptabs-anclist
-------------------------------------------------- */
.c_ptabs-anclist {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  margin: -20px 0 30px;
  padding: 0 20px;
}

.c_ptabs-anclist li {
  width: calc((100% / 4) - 10px);
}

.c_ptabs-anclist01 li {
  width: calc((100% / 5) - 10px);
}

.c_ptabs-anclist li a {
  font-family: "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "游明朝",
    YuMincho, "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", "Noto Serif JP", serif;
  font-size: 15px;
  color: #323232;
  padding: 14px 30px 14px 10px;
  display: inline-block;
  width: 100%;
  text-align: left;
  background: url(/images/category/price/ptabs-anclist-bg.jpg) no-repeat center
    top / cover;
  min-height: 51px;
  border-radius: 3px;
  position: relative;
  box-sizing: border-box;
  font-weight: bold;
  box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.13);
}

.c_ptabs-anclist li a:before {
  content: "";
  border: solid #333333;
  border-width: 0 1px 1px 0;
  display: inline-block;
  padding: 4px;
  position: absolute;
  top: 39%;
  right: 10px;
  transition: all 0.5s ease;
  transform: translate(-50%) rotate(45deg);
}

/*.c_ptabs-anclist.col-inc { justify-content: flex-start; }
.c_ptabs-anclist.col-inc li { margin-right: 26px; }*/

/* --------------------------------------------------
 .c_ptabs-anc
-------------------------------------------------- */
.c_ptabs-anc {
  margin-bottom: 30px;
}

.c_ptabs-anc__ttl {
  font-family: "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "游明朝",
    YuMincho, "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", "Noto Serif JP", serif;
  font-size: 21px;
  color: #333333;
  background: url(/images/category/price/ptabs-anc__ttl.jpg) no-repeat center
    top / cover;
  min-height: 70px;
  padding: 19px 10px;
  margin-bottom: 20px;
}

.c_ptabs-anc__ttl-ch {
  font-family: 宋体-简;
}

.c_ptabs-anc__ttl.center {
  box-sizing: border-box;
  color: #474747;
  min-height: 0;
  padding: 22px 20px 17px;
  margin-bottom: 30px;
  text-align: center;
}

/* --------------------------------------------------
 .c_ptabs-table
-------------------------------------------------- */
.c_ptabs-table {
  background: #f3f2ee;
  width: 100%;
  border-collapse: collapse;
  border-spacing: 0;
}

.c_ptabs-table thead tr th {
  color: #fff;
  text-align: center;
  background: url(/images/category/price/ptabs-table-th01.jpg) no-repeat center
    top / cover;
  height: 50px;
  padding: 13px;
  border: 2px solid #fff;
  vertical-align: middle;
  box-sizing: border-box;
}

.c_ptabs-table thead tr th span {
  font-size: 10px;
  font-weight: bold;
}

.c_ptabs-table thead th:first-child {
  width: 36%;
  border-left: 0;
}

.c_ptabs-table thead th:nth-child(2) {
  width: 45%;
  background-image: url(/images/category/price/ptabs-table-th02.jpg);
}

.c_ptabs-table thead th:nth-child(3) {
  width: 14%;
  border-right: 0;
  background-image: url(/images/category/price/ptabs-table-th03.jpg);
}

.c_ptabs-table tbody {
  border-bottom: 10px solid #fff;
}

.c_ptabs-table tbody tr:nth-child(even) {
  background: #faf9f7;
}

.c_ptabs-table tr td {
  padding: 13px;
  border: 2px solid #fff;
  font-size: 15px;
  font-weight: 400;
}

.c_ptabs-table tr td .priceSubtext {
  font-size: 11px;
  font-weight: normal;
  text-align: left;
}

.c_ptabs-table tbody tr td:first-child {
  border-left: 0;
}

.c_ptabs-table tbody tr td:last-child {
  border-right: 0;
}

.c_ptabs-table__price {
  font-weight: bold;
  text-align: right;
}

.c_ptabs-table__price small {
  font-size: 12px;
}

.c_ptabs-table__subttl {
  color: #fff;
  font-weight: bold;
  padding: 5px 20px;
  background-color: #851313;
  margin-bottom: 10px;
}

.c_ptabs-table__subttl-dark {
  color: #fff;
  font-weight: bold;
  padding: 5px 20px;
  background-color: #323232;
  margin-bottom: 10px;
}

.c_ptabs-table__redtxt {
  font-weight: 500;
  color: #851313;
}

.c_ptabs-table__list {
  background-color: #fff;
  padding: 10px;
  border-radius: 5px;
  margin-top: 10px;
}

.c_ptabs-table__link {
  position: relative;
  color: #323232;
}

.c_ptabs-table__link:hover {
  opacity: 0.6;
}

.c_ptabs-table__link:after {
  content: url(/images/category/price/icon01.svg);
  margin-left: 5px;
  display: inline-block;
  width: 12px;
}

/* --------------------------------------------------
 .c_ptabs-anclist-inner
-------------------------------------------------- */
.c_ptabs-innertab {
  display: flex;
  justify-content: space-between;
  align-items: end;
}

.c_ptabs-innertab li {
  width: 100%;
}

.c_ptabs-innertab.col2 li {
  width: calc((100% / 2) - 5px);
}

.c_ptabs-innertab.col3 li {
  width: calc((100% / 3) - 5px);
}

.c_ptabs-innertab.col4 li {
  width: calc((100% / 4) - 5px);
}

.c_ptabs-innertab li a {
  display: block;
  font-size: 15px;
  font-weight: bold;
  line-height: 1.2;
  text-align: center;
  color: #fff;
  background: url(/images/category/price/c_ptabs-innertab-bg.jpg) no-repeat
    center top / cover;
  min-height: 50px;
  padding: 5px;
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 10px 10px 0 0;
}

.c_ptabs-innertab li a:hover,
.c_ptabs-innertab li.ui-tabs-active a {
  background-image: url(/images/category/price/c_ptabs-innertab-bg-hover.jpg);
}

.c_target_anchor {
  display: block;
  padding-top: 10px;
  margin-top: -10px;
}

.c_cat-box__item.c_target_anchor {
  margin-top: 0;
  padding-top: 0;
}

/* ----- RESPONSIVE STYLE ---------- */

@media screen and (max-width: 744px) {
  .p_pricetabs__btns li a {
    font-size: 14px;
    padding: 5px 5px 9px;
    min-height: 0;
  }

  .p_pricetabs__btns li a span {
    font-size: 10px;
    margin: 0;
    display: block;
  }

  .c_ptabs-ban {
    min-height: 167px;
  }

  .c_ptabs-ban__ttl {
    font-size: 24px;
    margin-bottom: 10px;
  }

  .c_ptabs-ban__con {
    padding: 30px 184px 30px 10px;
  }

  .c_ptabs-ban__con img {
    right: -45px;
    max-height: 167px;
  }

  .c_ptabs-anclist {
    margin: -20px 0 10px;
    padding: 0 10px;
  }

  .c_ptabs-anclist li {
    width: calc((100% / 2) - 5px);
    text-align: center;
    margin-bottom: 10px;
  }

  .c_ptabs-anclist li a {
    background-repeat: repeat-x;
  }

  .c_ptabs-anc__ttl {
    font-size: 18px;
    padding: 11px 20px;
    text-align: center;
    min-height: 50px;
    margin-bottom: 10px;
  }

  .c_ptabs-anc__ttl.center {
    margin-bottom: 20px;
    padding: 15px 16px 8px;
  }

  .c_ptabs-anclist.col-inc {
    justify-content: space-between;
  }

  .c_ptabs-anclist.col-inc li {
    margin-right: 0;
  }

  .c_target_anchor {
    padding-top: 50px;
    margin-top: -50px;
  }

  .c_cat-box__item.c_target_anchor {
    margin-top: -50px;
    padding-top: 50px;
  }

  /* --------------------------------------------------
  .c_ptabs-table
  -------------------------------------------------- */
  .sample {
    height: 50px;
    background-color: #000;
    width: 100%;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 99999;
  }

  .c_ptabs-anc {
    display: block;
    padding-top: 50px !important;
    margin-top: -50px !important;
  }

  .c_ptabs-table thead tr th {
    font-size: 12px;
    height: 40px;
    align-items: center;
    padding: 8px 5px;
  }

  .c_ptabs-table tr td {
    font-size: 12px;
    padding: 10px;
  }

  .c_ptabs-table thead th:first-child {
    width: 20%;
  }

  .c_ptabs-table thead th:nth-child(2) {
    width: 31%;
  }

  .c_ptabs-table__price small {
    font-size: 10px;
  }

  /* --------------------------------------------------
  .c_ptabs-innertab
  -------------------------------------------------- */
  .c_ptabs-innertab.col2 li {
    width: calc((100% / 2) - 3px);
  }

  .c_ptabs-innertab.col3 li {
    width: calc((100% / 3) - 3px);
  }

  .c_ptabs-innertab.col4 li {
    width: calc((100% / 4) - 3px);
  }

  .c_ptabs-innertab li a {
    font-size: 10px;
  }
}

@media screen and (max-width: 450px) {
  .c_ptabs-ban__con {
    padding: 30px 120px 30px 10px;
  }
}

/* --------------------------------------------------
WEBCOUNSELING PAGE
-------------------------------------------------- */
.p_webc {
  font-size: 15px;
  padding-bottom: 30px;
}

.p_webc h2 {
  font-family: "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "游明朝",
    YuMincho, "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", "Noto Serif JP", serif;
  font-size: 21px;
  font-weight: 400;
  color: #333333;
  background: url(/images/webcounseling/webc_h2.png) no-repeat center top /
    cover;
  min-height: 30px;
  padding: 20px 20px;
  margin-bottom: 20px;
  width: auto;
  text-align: center;
  letter-spacing: 1px;
}

.p_webc p {
  margin-bottom: 15px;
  font-weight: 300;
  text-align: justify;
}

.p_webc p span {
  color: #db5968;
  font-weight: 600;
}

.p_webc .fr-img {
  float: right;
  margin: 0;
  margin-right: -30px;
}

.p_webc__inner {
  padding: 20px 30px;
  padding-top: 0;
}

.p_webc__inner.no {
  padding-bottom: 0;
}

.p_webc__info {
  display: block;
  clear: both;
  width: 100%;
  padding: 10px 0;
}

.info-inner {
  display: flex;
  justify-content: space-between;
}

.info-inner > div {
  width: calc(50% - 25px);
  background: #f8f7f7;
  border-radius: 10px;
  padding: 10px;
  padding-right: 5px;
  display: flex;
}

.info-inner > div img {
  width: 70px;
  height: 70px;
  margin-right: 10px;
}

.info-inner > div .info {
  flex: 1;
  padding-left: 10px;
  border-left: 1px solid #aaaaaa;
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.info-inner > div .info span {
  font-size: 17px;
  font-weight: 600;
  color: #a99f6e;
}

.p_webc__notes {
  clear: both;
  margin: 20px auto;
}

.p_webc__notes h3 {
  font-size: 15px;
  font-weight: 600;
  border-bottom: 1px solid #aaaaaa;
  padding-bottom: 5px;
}

.p_webc__notes ul {
  list-style: none;
  margin: 0;
  padding: 0;
}

.p_webc__notes > ul li {
  display: block;
  margin-top: 10px;
  padding-left: 20px;
  position: relative;
}

.p_webc__notes > ul li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 4px;
  width: 13px;
  height: 13px;
  border-radius: 50%;
  background: #a99f6e;
}

.steps-row {
  padding-bottom: 20px;
  margin-bottom: 30px;
  border-bottom: 1px solid #a99f6e;
  position: relative;
}

.steps-row::before {
  content: "";
  position: absolute;
  bottom: -15px;
  left: calc(50% - 15px);
  width: 38px;
  height: 30px;
  background: #fff;
}

.steps-row::after {
  content: "";
  position: absolute;
  bottom: -3px;
  left: calc(50% - 8px);
  width: 24px;
  height: 24px;
  border-top: 1px solid #a99f6e;
  border-left: 1px solid #a99f6e;
  transform: rotate(-135deg);
}

.steps-row:last-child {
  border: 0;
  padding-bottom: 0;
}

.steps-row:last-child::before,
.steps-row:last-child::after {
  display: none;
}

.steps-row > div {
  display: block;
  clear: both;
  overflow: hidden;
}

.steps-row > div > h3 {
  font-family: "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "游明朝",
    YuMincho, "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", "Noto Serif JP", serif;
  font-size: 18px;
  font-weight: 400;
  color: #555555;
  margin-bottom: 25px;
  display: block;
  overflow: hidden;
  position: relative;
  padding-left: 80px;
  line-height: 2;
}

.steps-row > div > h3 span {
  position: absolute;
  top: 1px;
  left: 0;
  display: inline-block;
  width: 69px;
  height: 30px;
  line-height: 30px;
  font-size: 14px;
  color: #fff;
  background: url(images/webcounseling/webc_step-bg.png) no-repeat center top;
  background-size: 100%;
  text-align: center;
  padding-right: 5px;
}

.steps-row > div > img {
  float: right;
  margin: 0 0 0 40px;
}

.p_webc__gbox {
  display: block;
  clear: both;
  overflow: hidden;
  background: #f8f7f7;
  padding: 15px 19px;
  margin-top: 10px;
  margin-bottom: 25px;
}

.p_webc__gbox h4 {
  border-left: 3px solid #a99f6e;
  color: #a99f6e;
  font-size: 17px;
  font-weight: 600;
  margin-bottom: 15px;
  padding-left: 5px;
}

.exlinks a {
  margin-right: 15px;
  display: inline-block;
}

.p_webc__contact {
  width: 100%;
  border-top: 3px solid #a99f6e;
  background: url(images/webcounseling/webc_contact-img.png) no-repeat left top
    #f6f5f2;
  background-size: auto 100%;
  display: block;
  clear: both;
  overflow: hidden;
  margin-top: 20px;
}

.p_webc__contact-inner {
  max-width: 430px;
  width: 100%;
  padding: 20px;
  float: right;
  display: block;
}

.p_webc__contact h3 {
  font-family: "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "游明朝",
    YuMincho, "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", "Noto Serif JP", serif;
  font-size: 18px;
  font-weight: 500;
  text-align: center;
  border-bottom: 1px solid #a99f6e;
  padding-bottom: 5px;
  margin-bottom: 20px;
}

.p_contact-infos {
  display: block;
}

.p_contact-infos img {
  margin: 0 auto;
}

.p_contact-btns {
  display: flex;
  justify-content: space-between;
  margin-top: 20px;
}

/* RESPONSIVE STYLE ---------- */

@media screen and (max-width: 744px) {
  .c_ban-inner.bg2 {
    min-height: 150px;
    height: auto;
    border-top: 0;
  }

  .c_ban-inner.bg2 .c_ban-inner__main {
    padding: 40px 0 0;
  }

  .c_ban-inner.bg2 .c_ban-inner__ttl {
    font-size: 20px;
  }

  .c_ban-inner.bg2 .c_ban-inner__ttl span {
    font-size: 13px;
  }

  .pan.spDisp .inner {
    line-height: 40px;
  }

  .p_webc {
    padding-bottom: 15px;
  }

  .p_webc h2 {
    font-size: 18px;
    background: url(/images/webcounseling/webc_h2_sp.png) no-repeat center top /
      cover;
    padding: 15px 10px 5px;
    margin-bottom: 20px;
  }

  .p_webc p {
    text-align: left;
    line-height: 1.8;
  }

  .p_webc .fr-img {
    width: 100%;
    max-width: 500px;
    float: none;
    margin: 0 auto 20px;
  }

  .p_webc__inner {
    padding: 0;
  }

  .webc_pad {
    padding: 0 16px;
  }

  .steps-row {
    border: 0;
  }

  .steps-row:before,
  .steps-row:after {
    display: none;
  }

  .steps-row > div {
    overflow: visible;
  }

  .steps-row .webc_pad {
    border-bottom: 1px solid #a99f6e;
    position: relative;
    padding: 0 0 5px;
    margin: 0 16px 15px;
  }

  .steps-row .webc_pad::before {
    content: "";
    position: absolute;
    bottom: -15px;
    left: calc(50% - 15px);
    width: 38px;
    height: 30px;
    background: #fff;
  }

  .steps-row .webc_pad::after {
    content: "";
    position: absolute;
    bottom: -3px;
    left: calc(50% - 8px);
    width: 24px;
    height: 24px;
    border-top: 1px solid #a99f6e;
    border-left: 1px solid #a99f6e;
    transform: rotate(-135deg);
  }

  .steps-row:last-child .webc_pad {
    border: 0;
    padding-bottom: 0;
  }

  .steps-row:last-child .webc_pad::before,
  .steps-row:last-child .webc_pad::after {
    display: none;
  }

  .info-inner {
    flex-direction: column;
  }

  .p_webc__info {
    padding: 0 16px;
    width: calc(100% - 32px);
  }

  .info-inner > div {
    width: calc(100% - 20px);
    margin-bottom: 10px;
  }

  .p_webc__notes {
    margin-top: 10px;
    padding: 0 16px;
  }

  .pan.spDisp {
    background: none;
    height: auto;
  }

  .steps-row {
    padding-bottom: 15px;
    margin-bottom: 0;
  }

  .steps-row:last-child {
    margin-bottom: 0;
  }

  .steps-row > div > h3 {
    margin-bottom: 10px;
    padding-left: 96px;
    padding-right: 16px;
  }

  .steps-row > div > h3 span {
    left: 16px;
  }

  .steps-row > div > img {
    float: none;
    margin: 0 auto 15px;
    max-width: 500px;
    width: 100%;
  }

  .p_webc__gbox {
    padding: 15px 13px;
  }

  .exlinks {
    display: flex;
  }

  .exlinks a {
    margin-right: 10px;
  }

  .exlinks a:last-child {
    margin-right: 0;
  }

  .p_webc__contact {
    background: url(images/webcounseling/webc_contact-img_sp.png) no-repeat left
      top #f6f5f2;
    background-size: 40% auto;
  }

  .p_webc__contact-inner {
    max-width: calc(100% - 32px);
    padding: 20px 16px 30px;
  }

  .p_webc__contact h3 {
    border: none;
  }

  .p_webc__contact-inner a {
    margin-top: 20px;
  }

  .p_contact-infos {
    margin: 0 20px;
  }

  .p_contact-btns {
    flex-direction: column;
    margin: 0 20px;
  }

  .p_contact-infos img.spDisp,
  .p_contact-btns img.spDisp {
    max-width: 500px;
    width: 100%;
    margin: 0 auto;
  }
}

@media screen and (max-width: 450px) {
  /* .p_webc p {
    font-size: 14px;
  } */
}

/* --------------------------------------------------
reason page
-------------------------------------------------- */

@font-face {
  font-family: "Dalmatins";
  src: url("font/dalmatins/Dalmatins.woff2") format("woff2"),
    url("font/dalmatins/Dalmatins.woff") format("woff");
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "DIN Alternate";
  src: url("font/DINAlternate/DINAlternate-Bold.woff2") format("woff2"),
    url("font/DINAlternate/DINAlternate-Bold.woff") format("woff");
  font-weight: bold;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Optima";
  src: url("font/optima/Optima.woff2") format("woff2"),
    url("font/optima/Optima.woff") format("woff");
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}

main#reason-page div {
  box-sizing: border-box;
}

main#reason-page {
  overflow: hidden;
}

.f_reason-banner {
  background-color: #dbd5cc;
}

.l_wrapper-ban {
  max-width: 1366px;
}

.p_banner__img {
  box-shadow: 0 0 24px 5px rgba(0, 0, 0, 0.5);
}

/* .f_reason-aesthetic */
.f_reason-aesthetic-page {
  padding: 60px 0 150px;
  position: relative;
  z-index: 1;
}

.f_reason-aesthetic-page:before {
  content: "";
  background: url(../images/reason/aesthetic-bg.jpg) no-repeat center top;
  width: 1920px;
  height: 690px;
  margin: 0 auto;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  z-index: -1;
}

.p_aesthetic-page {
  text-align: center;
}

.p_aesthetic-page__ttl {
  font-family: "游明朝", YuMincho, "Noto Serif JP", serif,
    "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝",
    "ＭＳ 明朝";
  font-weight: 600;
  font-size: 36px;
  color: #555555;
  margin-bottom: 45px;
  letter-spacing: 3px;
}

.p_aesthetic-page__txt {
  font-family: "游明朝", YuMincho, "Noto Serif JP", serif,
    "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝",
    "ＭＳ 明朝";
  font-size: 18px;
  color: #474747;
  line-height: 2;
}

.p_aesthetic-page__txt p {
  margin-bottom: 35px;
}

.p_aesthetic-page__txt p:last-child {
  margin-bottom: 0;
}

/* .f_reason-prospect */
.f_reason-prospect {
  padding-bottom: 100px;
}

.p_prospect {
}

.p_prospect__upper {
  position: relative;
  text-align: right;
}

.p_prospect__media01 {
  position: absolute;
  top: 0;
  left: -420px;
  z-index: 2;
}

.p_prospect__content {
  display: inline-block;
  text-align: left;
  padding: 10px 0 170px 100px;
  position: relative;
  z-index: 1;
  width: 580px;
  min-height: 502px;
}

.p_prospect__content:before {
  content: "";
  width: 1000px;
  height: 100%;
  background-color: #e4ecf4;
  transform: skewY(-10deg);
  position: absolute;
  top: -98px;
  left: 0;
  z-index: -1;
}

.p_prospect__ttl {
  font-family: "游明朝", YuMincho, "Noto Serif JP", serif,
    "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝",
    "ＭＳ 明朝";
  font-weight: 600;
  line-height: 1.7;
  font-size: 32px;
  color: #555555;
  margin-bottom: 42px;
  letter-spacing: -0.5px;
}

.p_prospect__uptxt {
  font-size: 15px;
  line-height: 1.75;
}

.p_prospect__lower {
  position: relative;
  z-index: 2;
  margin-top: -11px;
}

.p_prospect__media02 {
  position: absolute;
  top: -165px;
  right: -141px;
}

.p_prospect__txt {
}

.p_prospect__lowtxt {
  font-family: "游明朝", YuMincho, "Noto Serif JP", serif,
    "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝",
    "ＭＳ 明朝";
  font-size: 32px;
  line-height: 1.7;
  color: #fff;
  position: relative;
  z-index: 1;
  min-height: 315px;
  padding: 50px 30px 50px 50px;
  letter-spacing: 3px;
  width: 603px;
}

.p_prospect__lowtxt:before {
  content: "";
  width: 100%;
  height: 100%;
  background-color: #3b5564;
  transform: skewY(-10deg);
  box-shadow: -20px 20px 20px 0 rgba(0, 0, 0, 0.2);
  position: absolute;
  top: -53px;
  left: 0;
  z-index: -1;
}

/* .f_reason-survey */
.f_reason-survey {
  background: url(images/reason/survey-bg.jpg) no-repeat center top / cover;
  padding: 50px 0 60px;
}

.f_reason-survey .l_wrapper {
  max-width: 1110px;
}

.p_survey {
  color: #fff;
}

.p_survey__media {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}

.p_survey__media img {
  width: calc((100% / 2) - 15px);
  height: 100%;
  margin-bottom: 20px;
}

.p_survey__mediatxt {
  font-weight: bold;
  line-height: 1.7;
  font-size: 12px;
  margin-bottom: 30px;
  text-align: right;
  display: block;
  width: 100%;
}

.p_survey__content {
  font-weight: bold;
  font-size: 15px;
  text-align: center;
  line-height: 2;
}

/* .f_reason-page */
.f_reason-page {
  padding: 60px 0 70px;
}

.p_reason-page__heading {
  font-family: "游明朝", YuMincho, "Noto Serif JP", serif,
    "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝",
    "ＭＳ 明朝";
  font-size: 42px;
  font-weight: 600;
  line-height: 1.2;
  color: #555555;
  position: relative;
  display: inline-block;
  width: auto;
  z-index: 2;
  margin: 0;
}

.p_reason-page__heading span {
  font-size: 62px;
}

.p_reason-page__heading small {
  font-family: "Dalmatins";
  font-style: italic;
  font-size: 40px;
  color: #bf941d;
  display: block;
  padding: 13px 0 0 228px;
}

.p_reason-page__heading small img {
  width: 247px;
}

.p_reason-page__list {
  position: relative;
  z-index: 1;
  margin-top: -88px;
}

.p_reason-page__item.right-con {
  position: relative;
  text-align: right;
}

.p_reason-page__media01 {
  position: absolute;
  top: 0;
  left: -420px;
  z-index: 2;
}

.p_reason-page__content {
  display: inline-block;
  text-align: left;
  padding: 110px 0 266px 100px;
  position: relative;
  z-index: 1;
  width: 580px;
  min-height: 502px;
}

.p_reason-page__content:before {
  content: "";
  width: 1000px;
  height: 100%;
  background-color: #e4ecf4;
  transform: skewY(-10deg);
  position: absolute;
  top: -98px;
  left: 0;
  z-index: -1;
}

.p_reason-page__ttl {
  font-family: "游明朝", YuMincho, "Noto Serif JP", serif,
    "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝",
    "ＭＳ 明朝";
  font-weight: 600;
  line-height: 1.7;
  font-size: 32px;
  color: #555555;
  margin-bottom: 40px;
  letter-spacing: -1px;
}

.p_reason-page__txt {
  font-size: 15px;
  line-height: 1.7;
}

.p_reason-page__item.left-con {
  position: relative;
  z-index: 2;
  margin-top: -91px;
}

.p_reason-page__media02 {
  position: absolute;
  top: -146px;
  right: -81px;
}

.p_reason-page__txt {
}

.p_reason-page__content-blue {
  position: relative;
  z-index: 1;
  min-height: 381px;
  padding: 20px 70px 135px 50px;
  width: 603px;
  color: #fff;
}

.p_reason-page__content-blue:before {
  content: "";
  width: 100%;
  height: 100%;
  background-color: #3b5564;
  transform: skewY(-10deg);
  box-shadow: -20px 20px 20px 0 rgba(0, 0, 0, 0.2);
  position: absolute;
  top: -53px;
  left: 0;
  z-index: -1;
}

.p_reason-page__content-blue .p_reason-page__ttl {
  color: #fff;
}

.p_reason-page__num {
  font-family: "DIN Alternate";
  font-size: 155px;
  font-weight: bold;
  font-style: italic;
  line-height: 1;
  position: absolute;
  top: 85px;
  right: 2px;
  z-index: -1;
}

.p_reason-page__list .level {
  margin-top: -110px;
  position: relative;
}

.p_reason-page__list .level1 {
  margin-top: 0;
  z-index: 3;
}

.p_reason-page__list .level1 .p_reason-page__num {
  top: -66px;
}

.p_reason-page__list .level1 .p_reason-page__content {
  padding: 10px 0 232px 100px;
}

.p_reason-page__item.right-con .p_reason-page__num {
  color: #fff;
}

.p_reason-page__item.left-con .p_reason-page__num {
  color: #637684;
  top: -64px;
  right: 71px;
}

/* .f_reason-promise */
.f_reason-promise {
  padding-bottom: 200px;
}

.p_promise {
}

.p_promise__item {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 60px;
}

.p_promise__media {
  position: relative;
}

.p_promise__media:before {
  content: "";
  background-color: #f0ede8;
  width: 810px;
  height: 398px;
  position: absolute;
  bottom: -100px;
  left: -50px;
  z-index: -1;
}

.p_promise__content {
  font-family: "游明朝", YuMincho, "Noto Serif JP", serif,
    "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝",
    "ＭＳ 明朝";
  font-weight: 600;
  width: 690px;
}

.p_promise__subttl {
  font-weight: 600;
  font-size: 16px;
  line-height: 1.7;
  letter-spacing: 1px;
}

.p_promise__subttl span {
  font-family: "Optima";
  font-weight: 400;
  line-height: 1;
  font-size: 24px;
  color: #b3a28d;
  display: block;
  position: relative;
  margin-top: 10px;
  letter-spacing: 0;
}

.p_promise__subttl span:after {
  content: "";
  background-color: #b3a28d;
  width: 520px;
  height: 1px;
  position: absolute;
  top: 50%;
  left: 130px;
  transform: translateY(-50%);
  z-index: -2;
}

.p_promise__ttl {
  font-weight: 600;
  font-size: 36px;
  line-height: 1.5;
  margin: 25px 0;
  letter-spacing: 3px;
}

.p_promise__txt {
  font-size: 18px;
  font-weight: 500;
  line-height: 2;
}

.p_promise__media.horizontal:before {
  width: 860px;
  height: 394px;
}

.p_promise__item:last-child {
  margin-bottom: 0;
}

.p_promise__item:nth-child(odd) {
  flex-direction: row-reverse;
}

.p_promise__item:nth-child(odd) .p_promise__content {
  padding: 0 105px 0 50px;
}

.p_promise__item:nth-child(odd) .p_promise__media.horizontal {
  margin-right: -193px;
}

.p_promise__item:nth-child(odd) .p_promise__media img {
  box-shadow: 40px 40px 20px 0 rgba(0, 0, 0, 0.2);
}

.p_promise__item:nth-child(even) .p_promise__content {
  padding: 68px 100px 0 100px;
  width: 730px;
}

.p_promise__item:nth-child(even) .p_promise__media img {
  box-shadow: -40px 40px 20px 0 rgba(0, 0, 0, 0.2);
}

.p_promise__item:nth-child(even) .p_promise__media:before {
  left: auto;
  right: -50px;
  height: 509px;
}

.p_promise__item:nth-child(3) {
  align-items: end;
}

.p_promise__item:nth-child(3) .p_promise__content {
  padding: 0 60px 0 50px;
}

@media screen and (max-width: 744px) {
  /* .f_reason-aesthetic */
  .f_reason-aesthetic-page {
    background-position: center 40%;
    padding: 40px 15px 20px;
  }

  .f_reason-aesthetic-page:before {
    width: 1316px;
    top: 2px;
    background-size: contain;
  }

  .p_aesthetic-page__ttl {
    font-size: 21px;
    margin-bottom: 30px;
  }

  .p_aesthetic-page__txt {
    font-size: 15px;
  }

  /* .f_reason-prospect */
  .f_reason-prospect {
    padding-bottom: 0;
  }

  .p_prospect__upper {
    text-align: left;
  }

  .p_prospect__media01.spDisp {
    position: relative;
    top: 0;
    left: -7%;
    width: calc(100% - 5%);
    display: inline-block !important;
    max-width: 200%;
  }

  .p_prospect__ttl {
    font-size: 21px;
    margin-bottom: 20px;
  }

  .p_prospect__content {
    min-height: 0;
    padding: 150px 35px 62px;
    margin-top: -170px;
    width: 100%;
    line-height: 1.7;
  }

  .p_prospect__content:before {
    top: 0;
    left: 15px;
  }

  .p_prospect__lower {
    margin-top: 0;
  }

  .p_prospect__lowtxt {
    width: 100%;
    font-size: 18px;
    text-align: center;
    min-height: 0;
    padding: 50px 30px 60px 50px;
    letter-spacing: 2px;
    line-height: 1.5;
  }

  .p_prospect__lowtxt:before {
    width: calc(100% - 15px);
    top: 0;
    box-shadow: none;
  }

  .p_prospect__lowtxt-ttl span {
    font-size: 32px;
  }

  .p_prospect__media02 {
    position: relative;
    top: 0;
    right: -2%;
    width: 100%;
    z-index: 1;
    margin-top: -87px;
    width: calc(100% + 6%);
    max-width: 200%;
  }

  /* .f_reason-survey */
  .f_reason-survey {
    background-image: url(images/reason/survey-bg-sp.jpg);
    padding: 30px 15px;
    background-position: center center;
  }

  .p_survey__content {
    line-height: 1.7;
    font-weight: 400;
    text-align: left;
    padding: 0 10px;
  }

  .p_survey__media img {
    width: 100%;
    margin-bottom: 10px;
  }

  .p_survey__mediatxt {
    font-weight: 400;
    padding: 0 10px;
  }

  /* .f_reason-page */
  .f_reason-page {
    padding: 30px 0 0;
  }

  .p_reason-page__heading {
    font-size: 21px;
    display: block;
    width: 100%;
    padding: 0 20px;
  }

  .p_reason-page__heading span {
    font-size: 30px;
  }

  .p_reason-page__heading small {
    font-size: 25px;
    padding: 0 0 0 10px;
  }

  .p_reason-page__heading small img {
    width: 120px;
    height: 79px;
  }

  .p_reason-page__list {
    margin-top: -20%;
  }

  .p_reason-page__list .level {
    z-index: 2;
    margin-top: -85px;
  }

  .p_reason-page__list .level1 {
    margin-top: 0;
  }

  .p_reason-page__item.right-con {
    text-align: left;
  }

  .p_reason-page__media01.spDisp {
    position: relative;
    top: 0;
    left: -8%;
    width: calc(100% - 3%);
    display: inline-block !important;
    max-width: 200%;
  }

  .p_reason-page__ttl {
    font-size: 21px;
    margin-bottom: 20px;
    letter-spacing: 0;
  }

  .p_reason-page__content {
    min-height: 0;
    padding: 170px 40px 310px 35px;
    margin-top: -200px;
    width: 100%;
  }

  .p_reason-page__list .level1 .p_reason-page__content {
    padding: 170px 40px 310px 35px;
  }

  .p_reason-page__content:before {
    top: 0;
    left: 15px;
    height: 74%;
  }

  .p_reason-page__item.left-con {
    margin-top: -318px;
  }

  .p_reason-page__content-blue {
    width: 100%;
    font-size: 18px;
    min-height: 0;
    padding: 12% 40px 80px 35px;
    margin-top: -19%;
  }

  .p_reason-page__content-blue:before {
    width: calc(100% - 15px);
    top: 0;
    box-shadow: none;
  }

  .p_reason-page__content-blue {
    padding: 12% 40px 80px 35px;
  }

  .p_reason-page__list .level2 .p_reason-page__content-blue {
    padding: 12% 40px 65px 35px;
    margin-top: -12%;
  }

  .p_reason-page__media02 {
    position: relative;
    top: 0;
    right: -13%;
    width: 100%;
    z-index: 1;
    width: calc(100% - 13%);
    max-width: 200%;
  }

  .p_reason-page__num {
    font-size: 72px;
    top: 125px;
    right: 26px;
  }

  .p_reason-page__list .level1 .p_reason-page__num {
    top: 125px;
    right: 26px;
  }

  .p_reason-page__item.left-con .p_reason-page__num {
    color: rgba(255, 255, 255, 0.15);
    top: 20px;
    right: 42px;
  }

  /* .f_reason-promise */
  .f_reason-promise {
    padding: 10% 35px 30px;
  }

  .p_promise__item {
    display: block;
  }

  .p_promise__content {
    padding: 0 !important;
    width: 100% !important;
    text-align: left;
  }

  .p_promise__media {
    width: 100%;
    position: relative;
    display: inline-block;
  }

  .p_promise__subttl {
    font-size: 13px;
  }

  .p_promise__subttl span {
    font-size: 20px;
    margin-top: 5px;
  }

  .p_promise__subttl span:after {
    left: 92px;
  }

  .p_promise__ttl {
    font-size: 30px;
    color: #555;
  }

  .p_promise__txt {
    font-size: 15px;
    text-align: justify;
  }

  /* .p_promise__item:first-child  */
  .p_promise__item:first-child {
    text-align: right;
    margin-bottom: 60px;
  }

  .p_promise__item:first-child .p_promise__media {
    width: calc(100% - 15px);
    text-align: right;
    margin-bottom: 60px;
  }

  .p_promise__item:first-child .p_promise__media.horizontal {
    margin-right: -35px;
  }

  .p_promise__item:first-child .p_promise__media:before {
    left: -30px;
    bottom: -23px;
    height: 100%;
  }

  .p_promise__item:first-child .p_promise__media img {
    width: 100%;
    box-shadow: 10px 10px 10px 0 rgba(0, 0, 0, 0.2);
  }

  /* .p_promise__item:nth-child(2)  */
  .p_promise__item:nth-child(2) {
    margin-bottom: 30px;
  }

  .p_promise__item:nth-child(2) .p_promise__media {
    width: 55%;
    margin-bottom: 45px;
    margin-left: -10px;
  }

  .p_promise__item:nth-child(2) .p_promise__media.horizontal {
    margin-right: -35px;
  }

  .p_promise__item:nth-child(2) .p_promise__media:before {
    right: auto;
    left: 66%;
    bottom: auto;
    top: -30px;
    height: calc(100% - 58px);
  }

  .p_promise__item:nth-child(2) .p_promise__media img {
    box-shadow: 10px 10px 10px 0 rgba(0, 0, 0, 0.2);
  }

  /* .p_promise__item:nth-child(3)  */
  .p_promise__item:nth-child(3) {
    margin-bottom: 30px;
    text-align: right;
  }

  .p_promise__item:nth-child(3) .p_promise__media {
    width: 55%;
    margin-bottom: 80px;
    margin-right: -10px;
  }

  .p_promise__item:nth-child(3) .p_promise__media.horizontal {
    margin-right: -35px;
  }

  .p_promise__item:nth-child(3) .p_promise__media:before {
    left: auto;
    right: 66%;
    bottom: auto;
    top: 30px;
    height: 100%;
  }

  .p_promise__item:nth-child(3) .p_promise__ttl {
    letter-spacing: -1px;
  }

  .p_promise__item:nth-child(3) .p_promise__media img {
    width: 100%;
    box-shadow: -10px 10px 10px 0 rgba(0, 0, 0, 0.2);
  }
}

@media screen and (max-width: 500px) {
  .f_reason-prospect {
    padding-bottom: 10px;
  }

  .p_prospect__content {
    padding: 150px 35px 42px;
  }

  .p_prospect__media02 {
    top: 0;
    margin-top: -64px;
  }

  .f_reason-page {
    padding-bottom: 10px;
  }

  .p_reason-page__heading small {
    padding: 12px 0 0 13px;
  }

  .p_reason-page__content {
    padding: 150px 40px 290px 35px;
    margin-top: -170px;
  }

  .p_reason-page__list .level1 .p_reason-page__content {
    padding: 150px 40px 256px 35px;
  }

  .p_reason-page__list .level1 .p_reason-page__media02 {
    top: 0;
    margin-top: 49px;
  }

  .p_reason-page__media02 {
    top: 31px;
  }

  .p_reason-page__content-blue {
    margin-top: -17%;
  }

  .p_reason-page__list .level1 .p_reason-page__content-blue {
    margin-top: -17%;
    padding: 12% 40px 40px 35px;
  }

  .p_reason-page__list .level2 {
    margin-top: -48px;
  }

  .p_reason-page__list .level2 .p_reason-page__content-blue {
    margin-top: -4px;
    padding: 12% 40px 40px 35px;
  }
}

/* --------------------------------------------------
PTSP
-------------------------------------------------- */
#ptsp #content * {
  box-sizing: border-box;
}

#ptsp #content {
  color: #000;
}

#ptsp #content h3 {
  margin: 0 auto 30px;
  padding-bottom: 30px;
  border-bottom: 2px solid #c38988;
  text-align: center;
}

#ptsp #content h3 img {
  width: 561px;
  margin: auto;
}

#ptsp #content #pricebox {
  margin: 57px 0 30px;
  padding-top: 28px;
  background: url("/images/ptsp/sec-bg.png") no-repeat top left;
  font-size: 16px;
  font-weight: bold;
  text-align: center;
  line-height: 2;
}

#ptsp #content #pricebox img:not(.shadow) {
  width: 375px;
}

#ptsp #content #pricebox img.shadow {
  display: block;
  width: 100%;
}

#ptsp #content #pricebox > small {
  display: block;
  padding: 20px 0 15px;
}

#ptsp #content h4.h-ttl {
  padding: 10px;
  background: #840011;
  color: #fff;
  font-size: 18px;
  text-align: center;
  line-height: 1;
}

#ptsp #content .text01 {
  padding: 16px 0 50px;
  font-size: 18px;
  font-weight: bold;
  text-align: center;
}

#ptsp #content .text01 br {
  display: none;
}

#ptsp #content .text02Wrap {
  display: flex;
  flex-flow: row wrap;
  margin-bottom: 30px;
  padding-top: 34px;
}

#ptsp #content .text02Wrap .text02 {
  width: calc((100% - 15px) / 2);
  padding: 20px;
  background: #e8dece;
  font-size: 18px;
  font-weight: bold;
  text-align: center;
  line-height: 1.5;
}

#ptsp #content .text02Wrap .text02:first-child {
  margin-right: 15px;
}

#ptsp #content .text03Ttl {
  padding-top: 34px;
  padding-bottom: 10px;
  font-size: 18px;
  font-weight: bold;
}

#ptsp #content .text03Wrap {
  display: flex;
  flex-flow: row wrap;
  margin-bottom: 30px;
}

#ptsp #content .text03Wrap .text03 {
  width: calc((100% - 20px) / 3);
  padding: 8px;
  background: #e8dece url("/images/ptsp/bg_text03Wrap.png") no-repeat center
    right;
  font-size: 16px;
  font-weight: bold;
  text-align: center;
  letter-spacing: 1.8;
}

#ptsp #content .text03Wrap .text03:not(:first-child) {
  margin-left: 10px;
}

#ptsp #content .text03Wrap .num {
  display: block;
  margin-bottom: 10px;
  padding: 5px;
  background: #fff;
  font-size: 18px;
  text-align: center;
  line-height: 1;
}

#ptsp #content .text03Wrap .txtGray {
  color: #666;
}

#ptsp #content .text03Wrap .txtRed {
  display: inline-block;
  padding: 0 3px;
  color: #840011;
  font-size: 1.5em;
  text-decoration: underline;
}

#ptsp #content .lists {
  font-size: 15px;
  line-height: 1;
}

#ptsp #content .lists.red {
  color: #840011;
}

#ptsp #content .lists > p {
  margin-bottom: 1em;
}

#ptsp #content .notes {
  margin-top: 70px;
  padding: 28px;
  border: 1px solid #ccbba0;
  line-height: 1.5;
}

#ptsp #content .notes > p {
  margin-bottom: 0.5em;
}

#ptsp #content .notes strong {
  display: block;
  margin-bottom: 10px;
  font-size: 1.1em;
  font-weight: bold;
  text-indent: -0.5em;
}

@media only screen and (max-width: 744px) {
  #ptsp #content #pricebox {
    margin-top: 40px;
    font-size: 14px;
  }

  #ptsp #content .text01 br {
    display: block;
  }

  #ptsp #content .text02Wrap,
  #ptsp #content .text03Wrap {
    display: block;
  }

  #ptsp #content .text02Wrap .text02,
  #ptsp #content .text03Wrap .text03 {
    width: 100%;
    margin: 0 0 15px !important;
  }
}

@media only screen and (max-width: 425px) {
  #ptsp #content .text02Wrap .text02:nth-of-type(1) br {
    display: none;
  }
}

/* Terp page
-------------------------------------------------------------- */
.terpCont {
  min-height: 168px;
  padding-bottom: 50px;
  padding-right: 325px;
  position: relative;
}

#terp .c_ptabs-anc__ttl.center {
  font-weight: 400;
  letter-spacing: 0.13rem;
}

.terpCont__txt p {
  margin-bottom: 15px;
  font-size: 15px;
  font-weight: 400;
}

.terpCont__img img {
  position: absolute;
  right: 0;
  top: 0;
  width: auto;
}

.telmed,
.vidmed {
  padding-bottom: 50px;
}

#terp .inner_wrap.inner__clinic .card .clinic_info {
  padding-bottom: 16px;
}

#terp .inner_wrap .card .clinic_info li span {
  background-color: #eeeeee;
  padding: 10px 0;
  text-align: center;
  margin-right: 10px;
  position: absolute;
  top: 8px;
  left: 0;
  width: 130px;
  bottom: 10px;
}

.clinic_notes {
  width: 100%;
}

.clinic_notes li {
  display: block;
  font-size: 15px;
  padding-bottom: 3px;
  padding-left: 16px;
  position: relative;
}

.clinic_notes li:last-child {
  padding-bottom: 0;
}

.clinic_notes li:before {
  content: "※";
  left: 0;
  position: absolute;
  top: 1px;
}

.clinic_notes li strong {
  color: #db5968;
  font-weight: 700;
}

.clinic_first {
  padding-bottom: 14px;
}

.clinic_ptxt {
  padding: 14px 0;
}

#terp .inner_wrap.inner__clinic .card .clinic_info li {
  border-color: #a6a6a6;
  padding-left: 142px;
}

.terp__items {
  display: flex;
  flex-wrap: nowrap;
  justify-content: space-between;
  padding-bottom: 20px;
}

.terp__items li {
  width: calc((100% / 4) - 7px);
}

.terp__items li a {
  background-color: #fff;
  border: 1px solid #841212;
  border-bottom: none;
  border-top-left-radius: 10px;
  border-top-right-radius: 10px;
  color: #000;
  display: block;
  font-family: "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "游明朝",
    YuMincho, "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  font-size: 16px;
  font-weight: 500;
  padding: 16px 30px 16px 10px;
  position: relative;
  text-align: center;
  letter-spacing: 0.05rem;
}

.terp__items li.ui-tabs-active a,
.terp__items li a:hover {
  background-color: #851313;
  color: #fff;
  position: relative;
}

.terp__items li a:before span {
  transition: all 1s linear;
}

.terp__items li a span {
  padding-left: 40px;
  position: relative;
}

.terp__items li a span:before {
  box-sizing: border-box;
  content: "";
  font-size: 0;
  left: 8px;
  top: 50%;
  position: absolute;
  transform: translateY(-50%);
}

.terp__items li:first-child a span:before {
  left: 5px;
}

.terp__items li.jap a span:before {
  content: url("/images/terp/terp_icon__jap.png");
}

.terp__items li.eng a span:before {
  content: url("/images/terp/terp_icon__eng.png");
}

.terp__items li.kor a span:before {
  content: url("/images/terp/terp_icon__kor.png");
}

.terp__items li.chi a span:before {
  content: url("/images/terp/terp_icon__chi.png");
}

@media only screen and (max-width: 744px) {
  #terp .c_ptabs-anc__ttl.center {
    letter-spacing: normal;
  }

  #terp .inner_wrap .card .clinic_info li {
    display: block;
    letter-spacing: -0.02rem;
  }

  #terp .inner_wrap .card .clinic_info li span {
    position: absolute;
    align-items: flex-start;
    top: 10px;
    padding: 5px 0 0;
    min-height: 23px;
  }

  #terp .inner_wrap.inner__clinic .card .clinic_info li span {
    width: 23%;
    font-size: 14px;
    font-weight: normal !important;
    min-width: 75px;
  }

  #terp .inner_wrap.inner__clinic .card .clinic_info li {
    padding-left: 26%;
    padding-bottom: 15px;
    padding-top: 15px;
  }

  .clinic_first {
    padding-bottom: 10px;
  }

  .clinic_ptxt01 {
    padding: 14px 0;
  }

  .telmed,
  .vidmed {
    padding-bottom: 10px;
  }

  .terpCont {
    min-height: 0;
    padding-right: 0;
  }

  .clinic_notes li {
    font-size: 14px;
  }

  .terpCont {
    padding: 0 16px 14px;
  }

  .terpCont__img img {
    position: relative;
  }

  .terpCont__img_sp {
    padding-bottom: 17px;
  }

  #terp strong {
    font-weight: normal;
  }

  .terp__items {
    padding: 11px 16px 10px;
  }

  .terp__items li {
    width: calc((100% / 4) - 3px);
  }

  .terp__items li a {
    padding: 12px 2px;
  }

  .terp__items li a span {
    padding-left: 27px;
    font-size: 15px;
  }

  .terp__items li.jap a span:before {
    content: url("/images/terp/terp_icon__jap_sp.png");
  }

  .terp__items li.eng a span:before {
    content: url("/images/terp/terp_icon__eng_sp.png");
  }

  .terp__items li.kor a span:before {
    content: url("/images/terp/terp_icon__kor_sp.png");
  }

  .terp__items li.chi a span:before {
    content: url("/images/terp/terp_icon__chi_sp.png");
  }

  .terp__items li:first-child a span:before {
    left: 50%;
    transform: translate(-30px, -13px);
  }

  .terp__items li a span:before {
    left: 50%;
    transform: translate(-30px, -13px);
  }
  li.dflex-item__pick {
    background-color: #a78b40;
    color: #ffff;
    text-align: center;
    padding: 5px;
    font-weight: bold;
    font-size: 3.8vw;
    margin-bottom: 10px;
  }
}
