@charset "UTF-8";
@media only screen and (min-width: 1001px) {
  .sp_1000 {
    display: none !important;
  }
}
@media only screen and (min-width: 451px) {
  .sp_450 {
    display: none !important;
  }
}
@media only screen and (min-width: 321px) {
  .sp_320 {
    display: none !important;
  }
}
.under {
  --h3: 55px;
  --h4: 45px;
}
.under .br_auto {
  display: inline-block;
}
.under .sitemap > ul > li .lv2 {
  padding-left: 1em;
}
.under .sitemap > ul > li a,
.under .sitemap > ul > li p {
  display: block;
  width: 100%;
  padding: 15px 15px 15px 30px;
  border-bottom: dotted 1px #ccc;
  color: var(--clr1);
  position: relative;
  box-sizing: border-box;
  text-decoration: none;
}
.under .sitemap > ul > li a:before {
  content: "";
  position: absolute;
  width: 15px;
  height: 3px;
  background: var(--main-color);
  left: 0;
  top: 1.5555555556em;
}
.under .sitemap > ul > li .title {
  margin-bottom: 0;
  font-weight: 500;
  font-size: 24px;
  padding-left: 0;
  line-height: 1;
  color: var(--main-color);
}
.under .sitemap > ul > li a:hover {
  text-decoration: none;
  background: rgba(36, 105, 186, 0.06);
  opacity: 1;
}
.under .sitemap > ul > li li a {
  padding-left: 40px;
}
.under .sitemap > ul > li li a:before {
  left: 10px;
}
.under #mainContent {
  padding-bottom: 100px;
}
.under #mainContent img {
  border-radius: 5px;
}
.under .key {
  background: url(../images/ud_key_bg.jpg) no-repeat center/cover;
  height: 516px;
  z-index: 0;
}
.under .key::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(70, 67, 65, 0.5);
  mix-blend-mode: multiply;
  z-index: -1;
}
.under .key .inner {
  height: 100%;
  padding: 0px;
}
.under .key .key_text {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  position: relative;
  height: 100%;
  padding: 35px 20px 20px;
}
.under .key .key_text h2 {
  display: table;
  font-size: 36px;
  font-weight: 500;
  text-align: center;
  color: #fff;
}
.under h2,
.under h3,
.under h4,
.under h5,
.under h6 {
  position: relative;
  line-height: 1.4;
  letter-spacing: 0.1em;
}
.under h2:last-child,
.under h3:last-child,
.under h4:last-child,
.under h5:last-child,
.under h6:last-child {
  margin-bottom: 0;
}
.under h3 {
  position: relative;
  margin-bottom: 36px;
  font-size: 32px;
  font-weight: 500;
  text-align: center;
}
.under h3::after {
  content: "";
  position: relative;
  display: block;
  margin: 16px auto 0;
  width: 158px;
  height: 3px;
  background-color: #592d13;
}
.under h3:has(+ .secH4) {
  margin-bottom: 0;
}
.under .secH4 {
  margin-top: var(--h3);
}
.under h4 {
  margin-bottom: 30px;
  font-weight: 500;
  font-size: 28px;
  color: #ffffff;
  background-color: #0068b7;
  border-radius: 5px;
  padding: 10px 22px 12px;
}
.under h4:has(+ .secH5) {
  margin-bottom: 0;
}
.under .secH5 {
  margin-top: var(--h4);
}
.under h5 {
  margin-bottom: 20px;
  font-weight: 500;
  font-size: 24px;
  padding-left: 25px;
}
.under h5::before {
  content: "";
  position: absolute;
  top: 3px;
  left: 0;
  width: 4px;
  height: 100%;
  border-radius: 4px;
  background-color: #0068b7;
}
.under h6 {
  margin-top: 30px;
  margin-bottom: 25px;
  font-size: 20px;
  color: var(--clr1);
  padding-left: 25px;
}
.under h6::before {
  content: "";
  position: absolute;
  top: 0.5em;
  left: 0;
  width: 12px;
  height: 12px;
  background-color: #592d13;
  border-radius: 50%;
}

@media only screen and (max-width: 1200px) and (min-width: 769px) {
  .under .key .key_text h2 {
    font-size: 30px;
  }
  .under h3 {
    font-size: 28px;
  }
  .under h4 {
    font-size: 25px;
  }
  .under h5 {
    font-size: 20px;
  }
  .under h6 {
    font-size: 18px;
  }
}
.under .inner > section,
.under .entry > section {
  padding-top: 1px;
  margin-top: 70px;
}
.under .inner > section:first-child,
.under .entry > section:first-child {
  margin-top: 29px;
}
.under section > p:last-of-type {
  margin-bottom: 0;
}
.under section > p:last-of-type + table,
.under section > p:last-of-type + ul {
  margin-top: 15px;
}
.under .btn-group .btn.style01 {
  display: table;
  margin: 20px auto;
}
.under .btn-group .btn.style01 span {
  display: inline-block;
}
.under .imgBox.rowImg .image_l img,
.under .imgBox.rowImg .image_r img {
  width: auto;
  max-height: 500px;
  border-radius: var(--border-radius);
}
.under .imgBox.rowImg .image_l {
  float: left;
  margin-right: 60px;
}
.under .imgBox.rowImg .image_r {
  float: right;
  margin-left: 60px;
}
.under .imgBox.rowImg .image_l,
.under .imgBox.rowImg .image_r {
  max-width: 450px;
  margin-bottom: 30px;
}
.under .imgBox.rowImg .txt_l {
  float: left;
}
.under .imgBox.rowImg .txt_r {
  float: right;
}
.under .imgBox.rowImg .txt_l,
.under .imgBox.rowImg .txt_r {
  width: calc(100% - 510px);
}
.under .imgBox.rowImg.large .image_l,
.under .imgBox.rowImg.large .image_r {
  max-width: 440px;
}
.under .imgBox.rowImg.large .txt_l,
.under .imgBox.rowImg.large .txt_r {
  width: calc(100% - 475px);
}
.under .imgBox.rowImg.full .image_l,
.under .imgBox.rowImg.full .image_r {
  max-width: 60vw;
}
.under .imgBox.colImg .list {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: flex-start;
}
.under .imgBox.colImg p {
  margin-bottom: 5px;
}
.under .imgBox.colImg p:last-child {
  margin-bottom: 0;
}
.under .imgBox.colImg picture {
  margin-bottom: 15px;
}
.under .imgBox.colImg .text p {
  font-size: 1em;
}
.under .imgBox.colImg .text .ttl {
  font-size: 1.375em;
  font-weight: bold;
  line-height: 1.8;
  text-align: center;
  color: #a98c54;
  font-family: "Noto Serif JP", serif;
}
.under .imgBox.colImg3 picture, .under .imgBox.colImg2 picture {
  position: relative;
  background: #efefef;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  height: 380px;
  width: 100%;
  text-align: center;
  border-radius: var(--border-radius);
  border-radius: 5px;
}
.under .imgBox.colImg3 img, .under .imgBox.colImg2 img {
  max-height: 100%;
  max-width: 100%;
  border-radius: 0 !important;
}
.under .imgBox.colImg3 .item {
  width: 32%;
}
.under .imgBox.colImg3 picture {
  height: 250px;
}
.under .imgBox.colImg2 .item {
  width: 49%;
}
.under .imgBox.colImg1 .item {
  width: 100%;
}
.under .imgBox.colImg1 .item img {
  max-height: 500px;
  border-radius: var(--border-radius);
  overflow: hidden;
}
.under .faq_box .box {
  overflow: hidden;
  margin-bottom: 1.75em;
  border-radius: 5px;
}
.under .faq_box .accBtn {
  position: relative;
  background-color: var(--main-color);
  transition: all 0.3s;
}
@media only screen and (min-width: 769px) {
  .under .faq_box .accBtn:hover {
    background-color: #395f89;
  }
}
.under .faq_box .accBtn::before, .under .faq_box .accBtn::after {
  content: "";
  display: block;
  position: absolute;
  transition: all 0.3s;
  width: 16px;
  height: 2px;
  right: 2%;
  top: calc(50% - 1px);
  background-color: #fff;
  z-index: 2;
}
.under .faq_box .accBtn:not(.rotate)::after {
  transform: rotate(90deg);
}
.under .faq_box .accBtn .ttl {
  position: relative;
  margin-bottom: 0;
  font-size: 1.3333333333em;
  line-height: 1.5;
  color: #fff;
  border-radius: 0;
  padding: 0.85em 2.125em 0.85em 3.125em;
  transition: all 0.3s;
  border: none;
}
.under .faq_box .accBtn .ttl:before {
  content: "Q.";
  position: absolute;
  top: 0.375em;
  left: 0.5em;
  line-height: 1;
  font-family: var(--f-en);
  font-size: 1.6666666667em;
}
.under .faq_box .accBtn:hover {
  cursor: pointer;
}
.under .faq_box .content {
  padding-top: 1.5em;
  padding-left: 5em;
  padding-right: 1.5em;
  padding-bottom: 1.5em;
  background-color: #f3f6fb;
  position: relative;
}
.under .faq_box .content .accContainer {
  min-height: 3em;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.under .faq_box .content:after {
  content: "A.";
  position: absolute;
  font-family: var(--f-en);
  top: 0.275em;
  left: 0.5em;
  font-size: 2.2222222222em;
  color: var(--main-color);
  font-weight: 500;
}

@media only screen and (min-width: 769px) and (max-width: 1024px) {
  .under .imgBox.rowImg .image_l,
  .under .imgBox.rowImg .image_r {
    display: table;
    float: none;
    max-width: 100%;
    margin-right: auto;
    margin-left: auto;
  }
}
.under table.rollTable {
  width: 100%;
}
.under table.tbl_style01 {
  margin-bottom: 15px;
}
.under table.tbl_style01:last-child {
  margin-bottom: 0;
}
.under table.tbl_style01 ul.list01 {
  padding: 0;
  background-color: transparent;
  border-radius: 0;
}
.under table.tbl_style01 th,
.under table.tbl_style01 td {
  border: 1px solid #ddd;
  padding: 0.625rem;
  line-height: 2;
}
.under table.tbl_style01 th img,
.under table.tbl_style01 td img {
  max-width: 100%;
}
.under table.tbl_style01 th {
  background-color: var(--main-color);
  color: #fff;
  font-weight: normal;
  text-align: center;
}
.under table.tbl_style01 td {
  background-color: #fff;
}
.under table.tbl_style01 td.v_top {
  vertical-align: top;
}
.under table.tbl_style01.rowHead tr th:not(:last-child) {
  border-right: 1px solid #ddd;
}
.under table.tbl_style01.colHead tr:not(:last-child) th {
  border-bottom: 1px solid #ddd;
}
.under table.tbl_style02 th,
.under table.tbl_style02 td {
  border: 2px solid #9dba38;
  border-left: none;
  border-right: none;
  padding: 0.625em;
}
.under table.tbl_style02 th img,
.under table.tbl_style02 td img {
  max-width: 100%;
}
.under table.tbl_style02 th {
  background: none;
  font-weight: normal;
  font-size: 1.125em;
  color: #9dba38;
}
.under table.tbl_style02 td {
  font-size: 1em;
}
.under .tbl_note {
  display: none;
  margin-top: 10px;
  color: #b4b4b4;
  font-size: 11px;
  letter-spacing: 0;
}

@media only screen and (max-width: 1024px) and (min-width: 769px) {
  .under .clinic_tbl01 th {
    width: 19em;
  }
  .under table.tbl_style01 th,
  .under table.tbl_style01 td {
    padding: 0.5rem;
  }
  .under table.tbl_style01 th {
    font-size: 1em;
  }
  .under table.tbl_style01 td {
    font-size: 0.9em;
  }
  .under table.tbl_style02 th {
    font-size: 1em;
  }
  .under table.tbl_style02 td {
    font-size: 0.9em;
  }
}
@media only screen and (min-width: 769px) {
  .under ul.mcol-2 li:last-child, .under ul.mcol-2 li:nth-child(2n+1) {
    padding-bottom: 0;
  }
  .under .rowImg ul.mcol-2 li {
    width: 100%;
    padding-right: 0;
    padding-bottom: 10px;
  }
}
.under ul.mcol-2 {
  position: relative;
  display: flex;
  flex-wrap: wrap;
}
.under ul.mcol-2 li {
  width: 50%;
  padding-right: 10px;
}
.under ul.list01 {
  margin-bottom: 15px;
}
.under ul.list01:last-child {
  margin-bottom: 0;
}
.under ul.list01.no_bg {
  padding: 0;
  background-color: transparent;
}
.under ul.list01 li {
  position: relative;
  padding-left: 1.25em;
  padding-bottom: 0.625em;
  letter-spacing: 0.1em;
  text-align: left;
  line-height: 2;
}
.under ul.list01 li:last-child {
  padding-bottom: 0;
}
.under ul.list01 li::before {
  content: "";
  width: 0.5em;
  height: 0.5em;
  position: absolute;
  left: 0;
  top: 0.8em;
  aspect-ratio: 1/1;
  border-radius: 50%;
  background-color: #0068b7;
  box-shadow: 0 0 0 2px rgb(255, 255, 255), 0 0 0 3px rgb(36, 105, 186);
}
.under .list_note {
  margin-top: 15px;
  padding-left: 20px;
}
.under .list_note.no_mt {
  margin-top: 0;
}
.under .topic_path {
  line-height: 1.45;
  padding: 21px 0 7px;
  font-size: 16px;
}
.under .topic_path ul {
  display: block;
  padding: 4px 10px 4px 0px;
}
.under .topic_path ul::after {
  content: "";
  display: block;
  clear: both;
}
.under .topic_path ul li {
  float: left;
  color: #592d13;
}
.under .topic_path a {
  text-decoration: none;
  color: #424944;
}
.under .topic_path a:hover {
  opacity: 1;
  text-decoration: underline;
}
.under .topic_path span {
  display: inline-block;
  padding: 0 11px;
  color: #424944;
  line-height: 1;
}
.under .toc_list {
  justify-content: space-between;
  padding: 30px 40px 38px;
  background: #f4f6f9;
  border-radius: 5px;
}
.under .toc_list:empty {
  display: none;
}
.under .toc_list li {
  padding: 0.5em 0px;
  width: 49%;
  padding-right: 0;
  border-bottom: 1px dashed rgba(51, 58, 65, 0.3);
}
.under .toc_list li a {
  position: relative;
  padding-right: 1em;
  text-decoration: none;
  color: var(--clr1);
  display: block;
}
.under .toc_list li a::before {
  content: "";
  width: 10px;
  height: 8px;
  background: #0068b7;
  clip-path: polygon(100% 0, 0 0, 50% 100%);
  position: absolute;
  right: 0;
  top: 0;
  bottom: 0;
  margin: auto;
}
.under .toc_list.style1 li {
  width: 100%;
  padding-right: 0;
  max-width: 100%;
}
@media only screen and (min-width: 993px) {
  .under .toc_list.style3 li {
    width: auto;
    max-width: 32%;
  }
}
@media only screen and (max-width: 1000px) and (min-width: 769px) {
  .under .toc_list li {
    width: 100%;
  }
}
.under .anchor-links {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  padding: 20px 0 0;
}
.under .anchor-links > div {
  background-color: var(--main-color);
  border-radius: 3px;
  position: relative;
  display: block;
  min-width: 250px;
  width: 49%;
  margin: 0% 0.5% 1%;
  text-align: center;
  color: #fff;
  font-size: 0.875em;
  line-height: 1.5;
  letter-spacing: 0.15em;
}
@media only screen and (min-width: 993px) {
  .under .anchor-links > div {
    width: 32.3%;
  }
}
.under .anchor-links > div a {
  display: block;
  width: 100%;
  padding: 10px 5px 9px;
  color: inherit;
  font-size: inherit;
  line-height: inherit;
  text-decoration: none;
}
.under .anchor-links > div::after {
  content: "";
  border: 4px solid;
  border-bottom-color: transparent;
  border-left-color: transparent;
  border-right-color: transparent;
  position: absolute;
  top: auto;
  bottom: 2px;
  left: calc(50% - 4px);
  right: auto;
  line-height: 1;
}
.under .anchor-links > div:hover a {
  opacity: 1;
}
.under .anchor-links > div:hover::after {
  bottom: 0;
}
.under .anchor-links > div.ext::after {
  content: ">";
  border: 0;
  position: absolute;
  top: calc(50% - 0.5em);
  bottom: auto;
  left: auto;
  right: 7px;
  font-size: 0.857em;
  line-height: 1;
  letter-spacing: 0;
  transform: scaleX(0.5);
}
.under .anchor-links > div.ext:hover::after {
  right: 5px;
}
.under .doctor_box {
  max-width: 700px;
  margin: auto;
  position: relative;
  margin-bottom: 20px;
}
.under .doctor_box p {
  margin-bottom: 0;
}
.under .doctor_box .doctor_name {
  position: absolute !important;
  right: 2%;
  bottom: 30px;
  background: rgba(255, 255, 255, 0.95);
  padding: 20px;
  z-index: 1;
  color: var(--main-color);
  text-align: center;
  font-weight: 600;
  letter-spacing: 0.1em;
  line-height: 1.5;
}
.under .doctor_box .doctor_name .tt {
  font-size: 1.125em;
}
.under .doctor_box .doctor_name .tt_name {
  font-size: 1.3333333333em;
  font-weight: bold;
}
.under .ud_map {
  height: 450px;
}
.under .exp li {
  margin-bottom: 1em;
  padding-bottom: 1em;
  display: flex;
  border-bottom: 1px solid #d6d6d6;
}
.under .exp li .year {
  width: 8em;
  font-weight: 700;
}
.under .exp li .txt {
  width: calc(100% - 8em);
}
.under .ud_feature .feature_item {
  padding: 50px 71px;
  margin-bottom: 40px;
  background-color: #f8fafd;
  box-shadow: 0 0 7px rgba(36, 105, 186, 0.6);
  position: relative;
  border: 1px solid #346abd;
  overflow: hidden;
  border-radius: 5px;
}
.under .ud_feature .feature_item:last-child {
  margin-bottom: 0;
}
.under .ud_feature .point {
  font-size: 14px;
  line-height: 1;
  width: 5.8571428571em;
  height: 5.3571428571em;
  text-align: center;
  margin-bottom: 0;
  background: #2469ba;
  display: flex;
  justify-content: center;
  flex-direction: column;
  color: #fff;
  position: absolute;
  top: 0px;
  left: 0;
  border-bottom-right-radius: 60px;
  padding-right: 0.7142857143em;
  padding-bottom: 0.5em;
}
.under .ud_feature .point span {
  font-size: 2.1428571429em;
}
.under .ud_feature .feature_ttl {
  border-bottom: 1px dotted #2469ba;
  padding-bottom: 15px;
  margin-bottom: 15px;
}
.under .ud_feature .feature_ttl h3,
.under .ud_feature .feature_ttl h4,
.under .ud_feature .feature_ttl h5 {
  background-color: transparent;
  padding: 0;
  color: var(--main-color);
  border-radius: 0;
}
.under .ud_feature .feature_ttl h3::before, .under .ud_feature .feature_ttl h3::after,
.under .ud_feature .feature_ttl h4::before,
.under .ud_feature .feature_ttl h4::after,
.under .ud_feature .feature_ttl h5::before,
.under .ud_feature .feature_ttl h5::after {
  display: none;
}
.under .ud_flow .flow_it {
  padding: 70px 50px 50px;
  margin-bottom: 70px;
  margin-top: 60px;
  background-color: #eef2f9;
  position: relative;
  border-radius: 5px;
  z-index: 0;
}
.under .ud_flow .flow_it::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  margin: auto;
  width: calc(100% - 20px);
  height: calc(100% - 20px);
  border: 1px solid #346abd;
  background-color: #ffffff;
  z-index: -1;
  border-radius: 5px;
}
.under .ud_flow .flow_it:not(:last-child)::after {
  content: "";
  position: absolute;
  clip-path: polygon(100% 0, 0 0, 50% 100%);
  bottom: -19px;
  left: 0;
  right: 0;
  margin: auto;
  width: 70px;
  height: 30px;
  background-color: var(--main-color);
}
.under .ud_flow .flow_it:last-child {
  margin-bottom: 0;
}
.under .ud_flow .flow_tl {
  text-align: center;
  padding-bottom: 10px;
}
.under .ud_flow .flow_tl h3,
.under .ud_flow .flow_tl h4,
.under .ud_flow .flow_tl h5 {
  background-color: transparent;
  padding: 0;
  color: var(--main-color);
  border-radius: 0;
}
.under .ud_flow .flow_tl h3::before, .under .ud_flow .flow_tl h3::after,
.under .ud_flow .flow_tl h4::before,
.under .ud_flow .flow_tl h4::after,
.under .ud_flow .flow_tl h5::before,
.under .ud_flow .flow_tl h5::after {
  display: none;
}
.under .ud_flow .flow_num {
  font-size: 14px;
  line-height: 1;
  width: 5.7142857143em;
  height: 5.7142857143em;
  text-align: center;
  margin-bottom: 0;
  background: #2469ba;
  display: flex;
  justify-content: center;
  flex-direction: column;
  color: #fff;
  margin: 0 auto 10px;
  border-radius: 50%;
  position: absolute;
  top: -2.1428571429em;
  left: 0;
  right: 0;
  margin: auto;
}
.under .ud_flow .flow_num span {
  font-size: 2.1428571429em;
}
.under .ud_catch {
  padding: 40px 40px;
  border: 1px solid #346abd;
  text-align: center;
  max-width: 900px;
  width: 100%;
  margin: 40px auto;
  position: relative;
  z-index: 0;
  border-radius: 5px;
}
.under .ud_catch:last-child {
  margin-bottom: 0;
}
.under .ud_catch::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  margin: auto;
  width: calc(100% - 10px);
  height: calc(100% - 10px);
  background-image: linear-gradient(to right top, #0068b7, #004d7a);
  z-index: -1;
  border-radius: 5px;
}
.under .ud_catch p {
  font-size: 24px;
  font-weight: 600;
  line-height: 1.4;
  color: #ffffff;
  font-family: var(--f-jp);
}
.under .img_center {
  display: table;
  margin: 0 auto 30px;
}
.under .img_center:last-child {
  margin-bottom: 0;
}
.under .tt_right {
  text-align: right;
  font-weight: 500;
}
.under .tt_right .tt {
  font-weight: 600;
  font-size: 18px;
  line-height: 1;
}
.under .tt_right .tt_name {
  font-size: 28px;
  color: #121f43;
}
.under .ud_btn_web {
  max-width: 300px;
  width: 100%;
  margin: 40px auto 0;
}
.under .ud_btn_web a {
  background-color: #084f85;
  color: #ffffff;
  text-align: center;
  font-size: 18px;
  font-weight: 500;
  padding: 1.3888888889em 1.1111111111em;
  text-decoration: none;
  width: 100%;
  display: block;
}
.under .ud_btn_web a span {
  padding-left: 1.9444444444em;
  position: relative;
}
.under .ud_btn_web a span::before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  width: 1.2777777778em;
  height: 1.2777777778em;
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='23px' height='23px'%3E%3Cpath fill-rule='evenodd' fill='rgb(255, 255, 255)' d='M22.797,21.337 C22.424,22.231 21.603,22.817 20.664,22.999 L2.246,22.999 C1.745,22.833 1.322,22.685 0.920,22.328 C0.425,21.890 0.190,21.377 0.000,20.754 L0.000,3.998 C0.215,3.289 0.497,2.699 1.108,2.254 C1.336,2.087 2.006,1.752 2.269,1.752 L5.301,1.752 L5.301,0.741 C5.301,0.443 5.707,0.093 5.975,-0.000 L6.424,-0.000 C6.562,0.109 6.722,0.132 6.852,0.268 C6.920,0.339 7.098,0.666 7.098,0.741 L7.098,1.752 L15.902,1.752 L15.902,0.741 C15.902,0.666 16.080,0.339 16.148,0.268 C16.278,0.132 16.438,0.109 16.576,-0.000 L17.025,-0.000 C17.293,0.093 17.699,0.443 17.699,0.741 L17.699,1.752 L20.731,1.752 C20.877,1.752 21.410,1.964 21.563,2.043 C22.344,2.450 22.797,3.208 23.000,4.043 L23.000,20.754 C22.893,20.928 22.877,21.145 22.797,21.337 ZM21.203,4.245 C21.203,4.188 21.052,3.925 21.002,3.862 C20.940,3.787 20.623,3.549 20.552,3.549 L17.699,3.549 L17.699,4.605 C17.699,4.633 17.571,4.892 17.539,4.938 C17.175,5.469 16.427,5.469 16.062,4.938 C16.030,4.892 15.902,4.633 15.902,4.605 L15.902,3.549 L7.098,3.549 L7.098,4.605 C7.098,4.633 6.970,4.892 6.938,4.938 C6.573,5.469 5.825,5.469 5.461,4.938 C5.429,4.892 5.301,4.633 5.301,4.605 L5.301,3.549 L2.448,3.549 C2.377,3.549 2.060,3.787 1.998,3.862 C1.947,3.925 1.797,4.188 1.797,4.245 L1.797,7.052 L21.203,7.052 L21.203,4.245 ZM21.203,8.849 L1.797,8.849 L1.797,20.462 C1.797,20.807 2.317,21.241 2.671,21.204 L20.284,21.205 C20.653,21.260 21.203,20.823 21.203,20.462 L21.203,8.849 ZM17.808,18.144 C17.405,18.199 16.246,18.195 15.835,18.148 C14.777,18.031 14.761,16.528 15.756,16.363 C16.151,16.296 17.301,16.312 17.724,16.350 C18.855,16.450 18.841,18.004 17.808,18.144 ZM17.762,13.696 C17.325,13.750 16.370,13.741 15.923,13.703 C14.745,13.601 14.783,12.094 15.665,11.915 C15.907,11.865 17.803,11.874 18.002,11.938 C18.855,12.217 18.761,13.575 17.762,13.696 ZM12.507,18.144 C12.104,18.199 10.945,18.195 10.534,18.148 C9.476,18.031 9.460,16.528 10.455,16.363 C10.850,16.296 12.001,16.312 12.423,16.350 C13.554,16.450 13.541,18.004 12.507,18.144 ZM12.461,13.696 C12.025,13.750 11.069,13.741 10.622,13.703 C9.444,13.601 9.482,12.094 10.365,11.915 C10.606,11.865 12.502,11.874 12.701,11.938 C13.554,12.217 13.460,13.575 12.461,13.696 ZM7.206,18.144 C6.803,18.199 5.645,18.195 5.233,18.148 C4.175,18.031 4.159,16.528 5.154,16.363 C5.549,16.296 6.700,16.312 7.122,16.350 C8.254,16.450 8.240,18.004 7.206,18.144 ZM7.160,13.696 C6.724,13.750 5.769,13.741 5.322,13.703 C4.143,13.601 4.182,12.094 5.064,11.915 C5.306,11.865 7.201,11.874 7.400,11.938 C8.254,12.217 8.160,13.575 7.160,13.696 Z'/%3E%3C/svg%3E");
}
.under .b_step .step_it {
  display: flex;
  flex-wrap: wrap;
  position: relative;
  box-shadow: 0 0 3px rgba(0, 0, 0, 0.26);
  margin-bottom: 50px;
}
.under .b_step .step_it::after {
  content: "";
  position: absolute;
  bottom: -42px;
  left: 125px;
  width: 29px;
  height: 35px;
  background: url(../images/step_arrow.svg) no-repeat center/contain;
}
.under .b_step .step_it:last-child {
  margin-bottom: 0;
}
.under .b_step .step_it:last-child::after {
  display: none;
}
.under .b_step .step_tl {
  width: 250px;
  padding: 10px 20px;
  background-color: #f2f6fb;
  text-align: center;
  margin-bottom: 0;
  display: flex;
  align-items: center;
  justify-content: center;
}
.under .b_step .step_ct {
  width: calc(100% - 250px);
  padding: 10px 30px;
}

.under .cl1 {
  color: var(--main-color);
}
.under .clinic_tbl01 th {
  width: 350px;
  text-align: right;
}
.under .clinic_tbl02 {
  text-align: center;
}
.under .clinic_tbl02 th:first-child {
  width: 30%;
}
.under .clinic_tbl02 th:not(:first-child) {
  width: 10%;
}
.under .clinic_tbl02 td:not(:first-child) {
  color: var(--main-color);
}

@media only screen and (max-width: 1200px) and (min-width: 769px) {
  .under .ud_catch {
    padding: 30px 17px;
    margin-bottom: 20px;
    margin-top: 20px;
  }
  .under .ud_catch p {
    font-size: 20px;
  }
}
@media only screen and (max-width: 1024px) and (min-width: 769px) {
  .under ul.list01 li:before {
    top: 0.78em;
  }
  .under ul.mcol-2.list01_769 li {
    width: 100%;
    padding-right: 0;
  }
  .under ul.mcol-2.list01_769 li:nth-child(2n+1) {
    padding-bottom: 0.625em;
  }
}
@media only screen and (max-width: 1000px) and (min-width: 769px) {
  .under ul.list01 li::before {
    width: 6px;
    height: 6px;
  }
  .under ul.mcol-2.mcol li {
    width: 100%;
    padding-right: 0;
  }
  .under ul.mcol-2.mcol li:nth-child(2n+1) {
    padding-bottom: 0.625em;
  }
}
/* START BLOG
------------------------------------------------------------------------*/
#pagination {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  margin: 40px auto 0;
}
#pagination:empty {
  display: none;
}
#pagination a,
#pagination span {
  background-color: var(--main-color);
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  border-radius: 100%;
  margin: 10px 5px;
  width: 32px;
  height: 32px;
  color: #fff;
  line-height: 1;
  text-decoration: none;
}
#pagination a.prev, #pagination a.next,
#pagination span.prev,
#pagination span.next {
  background-repeat: no-repeat;
  background-position: center;
  background-size: 7px auto;
  color: transparent;
}
#pagination a.prev,
#pagination span.prev {
  background-image: url(../images/shared_blog_arrow_prev.svg);
}
#pagination a.next,
#pagination span.next {
  background-image: url(../images/shared_blog_arrow_next.svg);
}
#pagination a:hover {
  text-decoration: none;
  opacity: 0.7;
}
#pagination span {
  opacity: 0.5;
}
#pagination .active a,
#pagination a.active:hover {
  background: none repeat scroll 0 0 #000000;
  color: #ffffff;
}

.blog-content .date {
  margin-bottom: 20px;
  text-align: center;
  color: #592d13;
}

.blog_list_style01 .item {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  border-bottom: 1px solid #bababa;
  padding-bottom: 30px;
  margin-bottom: 30px;
}
.blog_list_style01 .item picture {
  background-color: rgb(255, 255, 255);
  position: relative;
  overflow: hidden;
  border: 2px solid var(--main-color);
  width: 220px;
  height: 220px;
  border-radius: var(--border-radius);
}
.blog_list_style01 .item picture img {
  max-width: 100%;
  max-height: 100%;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  border-radius: 0 !important;
}
.blog_list_style01 .item .info {
  width: calc(100% - 250px);
  position: relative;
  padding-bottom: 40px;
}
.blog_list_style01 .item .info p {
  margin-bottom: 0;
  line-height: 1.5;
}
.blog_list_style01 .item .info .date {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  margin-bottom: 15px;
  padding-top: 15px;
  font-size: 90%;
}
.blog_list_style01 .item .info .date .tag {
  display: inline-block;
  color: transparent;
  font-size: 90%;
  letter-spacing: -1em;
}
.blog_list_style01 .item .info .date .tag a {
  background-color: var(--main-color);
  display: inline-block;
  margin-right: 2px;
  padding: 0 10px;
  color: #fff;
  letter-spacing: 0;
  text-decoration: none;
  margin-bottom: 1px;
  margin-top: 1px;
}
.blog_list_style01 .item .info .date .tag a.column {
  background-color: #00355e;
}
.blog_list_style01 .item .info .date .day {
  margin-right: 1em;
}
.blog_list_style01 .item .info .ttl {
  margin-bottom: 10px;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
  text-decoration: underline;
  font-size: 120%;
  font-weight: 600;
  color: #333333;
}
.blog_list_style01 .item .info .ttl a {
  color: inherit;
}
.blog_list_style01 .item .info .des {
  padding-bottom: 45px;
}
.blog_list_style01 .item .info .button {
  background-color: #fff;
  border: 2px solid var(--main-color);
  position: absolute;
  bottom: 0px;
  right: 0;
  border-radius: 40px;
  overflow: hidden;
}
.blog_list_style01 .item .info .button a {
  position: relative;
  z-index: 1;
  display: flex;
  align-items: center;
  padding: 5px 15px 5px 10px;
  font-size: 90%;
  color: var(--main-color);
  text-decoration: none;
}
.blog_list_style01 .item .info .button a span {
  display: block;
  position: absolute;
  right: 5px;
  line-height: 1em;
  top: calc(50% - 0.55em);
}
.blog_list_style01 .item .info .button a::before {
  opacity: 0;
}
.blog_list_style01 .item .info .button::after {
  content: "";
  background-color: var(--main-color);
  position: absolute;
  z-index: 0;
  top: 0;
  bottom: 0;
  right: 0;
  width: 0;
  transition: all 0.3s ease;
}
@media only screen and (min-width: 769px) {
  .blog_list_style01 .item .info .button:hover a {
    opacity: 1;
    color: #fff;
  }
  .blog_list_style01 .item .info .button:hover::after {
    width: 100%;
  }
}

@media only screen and (max-width: 640px) {
  .blog_list_style01 .item {
    display: block;
  }
  .blog_list_style01 .item picture {
    margin: 0 auto;
  }
  .blog_list_style01 .item .info {
    width: 100%;
    max-width: 420px;
    margin: 0 auto;
    padding-bottom: 0;
  }
  .blog_list_style01 .item .info .button {
    position: relative;
    display: table;
  }
}
@media only screen and (max-width: 768px) {
  .blog_list_style01 .item .info .des {
    padding-bottom: 25px;
  }
}
.main_blog_container {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.main_blog_container .main_blog_content {
  max-width: 100%;
  width: calc(100% - 250px);
}
.main_blog_container .main_blog_content > div {
  padding-top: 0;
}
.main_blog_container .sidebar {
  width: 220px;
}
.main_blog_container .sidebar .txt_head,
.main_blog_container .sidebar .widgettitle {
  background-color: var(--main-color);
  transform: none;
  position: static;
  display: block;
  margin-bottom: 0;
  padding: 15px 10px;
  width: 100%;
  writing-mode: horizontal-tb;
  font-size: 18px;
  color: #fff;
  text-align: center;
}
.main_blog_container .sidebar ul:not(.children) {
  background-color: #fff;
  border: 1px solid #ddebf2;
  border-top: 0;
  padding: 0 10px;
}
.main_blog_container .sidebar ul:not(.children) > li {
  border-bottom: 1px solid #959595;
  padding: 12px 10px;
  font-size: 80%;
}
.main_blog_container .sidebar ul:not(.children) > li:last-child {
  border-bottom: 0;
}
.main_blog_container .sidebar ul:not(.children) > li a {
  color: inherit;
  font-size: inherit;
  text-decoration: underline;
}
.main_blog_container .sidebar ul:not(.children) > li a:hover {
  text-decoration: none;
}
.main_blog_container .sidebar ul.children {
  padding: 7px 7px;
}
.main_blog_container .sidebar ul.children li {
  padding-bottom: 5px;
}
.main_blog_container .sidebar ul.children li:last-child {
  padding-bottom: 0;
}

@media only screen and (max-width: 768px) {
  .main_blog_container .main_blog_content {
    width: auto;
    margin: 0 auto;
  }
  .main_blog_container .sidebar {
    display: none;
  }
}
.blog_post_button {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  max-width: 600px;
  margin: 100px auto 0;
}
.blog_post_button > div {
  position: relative;
  width: 32%;
  color: #fff;
  text-align: center;
  line-height: 1;
  font-size: 0.9em;
  overflow: hidden;
  border-radius: 40px;
}
.blog_post_button > div:empty::before, .blog_post_button > div:empty::after {
  display: none;
}
.blog_post_button > div::before, .blog_post_button > div::after {
  content: "";
  transition: all 0.2s ease;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border-radius: 40px;
}
.blog_post_button > div::before {
  background-color: var(--main-color);
}
.blog_post_button > div::after {
  border: 1px solid var(--main-color);
}
.blog_post_button > div a {
  transition: all 0.3s;
  display: block;
  position: relative;
  z-index: 1;
  padding: 11px 10px 10px;
  max-width: 100%;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  line-height: inherit;
  color: inherit;
  text-align: center;
  text-decoration: none;
}
@media screen and (max-width: 768px) {
  .blog_post_button > div a:not(.tel_click):hover,
  .blog_post_button > div a:not(.tel_click):active {
    opacity: 1;
    color: #fff;
  }
}
@media only screen and (min-width: 769px) {
  .blog_post_button > div:hover::before {
    opacity: 0;
    transform: scale(0.8);
  }
  .blog_post_button > div:hover::after {
    opacity: 1;
    transform: scale(1);
  }
  .blog_post_button > div:hover a {
    color: var(--main-color);
  }
}

/* END BLOG
------------------------------------------------------------------------*/
/* START Mail
------------------------------------------------------------------------*/
.contact-form-style01 .contact-table {
  background-size: cover;
  width: 100%;
  margin: 0 auto 0px;
  overflow: hidden;
  position: relative;
}
.contact-form-style01 .contact-table textarea {
  min-width: 100%;
}
.contact-form-style01 .contact-table::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}
.contact-form-style01 .contact-table input,
.contact-form-style01 .contact-table select,
.contact-form-style01 .contact-table textarea {
  border: 1px solid;
  padding: 4px 8px;
  border-radius: 5px;
  font-size: 1rem;
}
.contact-form-style01 .contact-table input {
  width: 100%;
}
.contact-form-style01 .contact-table textarea {
  max-width: 100%;
  width: 100%;
  height: 7em;
}
.contact-form-style01 .contact-table input,
.contact-form-style01 .contact-table textarea {
  transition: all 0.2s ease-in-out;
}
.contact-form-style01 .contact-table input[type=radio],
.contact-form-style01 .contact-table input[type=checkbox] {
  margin: 5px 3px 5px 0px;
  width: auto;
}
.contact-form-style01 .contact-table [readonly*=readonly] {
  background: none;
  border: 0;
  font-weight: bold;
}
.contact-form-style01 .contact-table dl {
  position: relative;
  z-index: 1;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  justify-content: space-between;
}
.contact-form-style01 .contact-table dt {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  width: 400px;
  padding: 15px 20px;
}
.contact-form-style01 .contact-table dt span {
  display: inline-block;
  border-radius: 7px;
  padding: 2px 7px;
  margin-left: 5px;
  font-size: 70%;
  line-height: 1;
}
.contact-form-style01 .contact-table dd {
  width: calc(100% - 400px);
  padding: 15px 25px;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
}
.contact-form-style01 .contact-table .postal_code {
  display: flex;
  flex-wrap: wrap;
}
.contact-form-style01 .contact-table .inline span {
  max-width: 75px;
  margin: 0 5px;
  text-align: center;
}
.contact-form-style01 .contact-table .inline input {
  text-align: center;
}
.contact-form-style01 .contact-table .clockpicker input {
  width: 70px;
  text-align: center;
}
.contact-form-style01 .contact-table input:not([type=radio]):not([type=checkbox]):focus, .contact-form-style01 .contact-table textarea:focus {
  color: #495057;
  background-color: #fff;
  border-color: #80bdff;
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
}
.contact-form-style01 .confirm-table textarea {
  resize: none;
  width: 100%;
}
.contact-form-style01 .confirm-table input:not([type=radio]):not([type=checkbox]):focus,
.contact-form-style01 .confirm-table textarea:focus {
  color: inherit;
  background-color: transparent;
  border-color: transparent;
  outline: 0;
  box-shadow: none;
}
.contact-form-style01 .input_btn,
.contact-form-style01 .button.thanks_btn {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  max-width: 520px;
  margin: 40px auto 0;
}
.contact-form-style01 .input_btn input,
.contact-form-style01 .input_btn a,
.contact-form-style01 .button.thanks_btn input,
.contact-form-style01 .button.thanks_btn a {
  color: inherit;
  text-decoration: none;
  line-height: 1;
}
.contact-form-style01 .input_btn a,
.contact-form-style01 .button.thanks_btn a {
  margin: 0 !important;
  display: flex;
  justify-content: center;
  align-items: center;
}
.contact-form-style01 .input_btn input[type=button],
.contact-form-style01 .input_btn input[type=submit],
.contact-form-style01 .button.thanks_btn a {
  width: 200px;
  height: 45px;
  border: none;
  padding: 10px;
  text-align: center;
  font-size: 100%;
  font-weight: normal;
  margin: 0px 10px 10px;
  text-decoration: none;
  cursor: pointer;
  -webkit-appearance: none;
}
.contact-form-style01 .input_btn input[type=button]:hover,
.contact-form-style01 .input_btn input[type=submit]:hover,
.contact-form-style01 .button.thanks_btn a:hover {
  opacity: 1;
  background-color: #ccc;
}
.contact-form-style01 .input_btn input[type=button],
.contact-form-style01 .input_btn input[type=submit],
.contact-form-style01 .button.thanks_btn {
  background-color: var(--main-color);
  color: #fff;
  font-family: var(--f-jp);
}
.contact-form-style01 .contact-table {
  border: 1px solid #ddd;
}
.contact-form-style01 .contact-table input,
.contact-form-style01 .contact-table select,
.contact-form-style01 .contact-table textarea {
  border-color: #ddd;
}
@media only screen and (min-width: 769px) {
  .contact-form-style01 .contact-table dl:last-child dt,
  .contact-form-style01 .contact-table dl:last-child dd {
    border-bottom: none;
  }
}
.contact-form-style01 .contact-table dt {
  background-color: var(--main-color);
  border-bottom: 1px solid #ddd;
  color: #fff;
}
.contact-form-style01 .contact-table dt span {
  background-color: #ffffff;
  color: #ff3c7f;
}
@-moz-document url-prefix() {
  .contact-form-style01 .contact-table dt span {
    /* Fire Fox */
    padding-bottom: 3px;
  }
}
.contact-form-style01 .contact-table dd {
  border-bottom: 1px solid #ddd;
}
.contact-form-style01 .wpcf7-not-valid-tip {
  display: block;
  margin: 3px 7px 0;
}

.screen-reader-response {
  display: none;
}

.wpcf7-not-valid-tip {
  font-size: 80%;
  color: #ff3c7f;
}

.wpcf7-response-output {
  padding-top: 20px;
}

.wpcf7-list-item {
  margin-right: 15px;
}

.wpcf7-list-item-label {
  color: #000;
}

.wpcf7-form-control-wrap {
  width: 100%;
}

.cf7msm-ro {
  white-space: pre-wrap;
}

.captcha_box {
  display: table;
  margin: 50px auto 0;
}
@-moz-document url-prefix() {
  .captcha_box {
    /* Fire Fox */
    display: block;
    width: 304px;
    height: 78px;
  }
}
@supports (-webkit-touch-callout: none) {
  .captcha_box {
    /* Specific to iOS devices */
    display: block;
    width: 304px;
    height: 78px;
  }
}
@media not all and (min-resolution: 0.001dpcm) {
  @supports (-webkit-appearance: none) {
    .captcha_box {
      /* Safari */
      display: block;
      width: 304px;
      height: 78px;
    }
  }
}

@media only screen and (max-width: 1000px) and (min-width: 769px) {
  .contact-form-style01 .contact-table dt {
    width: 40%;
  }
  .contact-form-style01 .contact-table dd {
    width: 60%;
  }
}
@media only screen and (max-width: 768px) {
  .contact-form-style01 .contact-table {
    border: none;
  }
  .contact-form-style01 .contact-table dl {
    display: block;
  }
  .contact-form-style01 .contact-table dt {
    border-bottom: none;
    border-left: 1px solid var(--main-color);
    border-right: 1px solid var(--main-color);
  }
  .contact-form-style01 .contact-table dt,
  .contact-form-style01 .contact-table dd {
    width: 100%;
  }
  .contact-form-style01 .contact-table dd {
    border-left: 1px solid #ddd;
    border-right: 1px solid #ddd;
  }
  .contact-form-style01 .contact-table input,
  .contact-form-style01 .contact-table textarea {
    width: 100%;
  }
  .contact-form-style01 .contact-table input[type=checkbox],
  .contact-form-style01 .contact-table input[type=radio] {
    width: auto;
  }
  .contact-form-style01 .wpcf7-list-item {
    display: block;
  }
}
/* END Mail*/
/*INTERVIEW PAGE*/
.under {
  counter-reset: count;
}
.under.page-interview .key {
  max-height: 650px;
  background-image: url(../images/interview_key_bg.jpg);
  height: 50vw;
  overflow: hidden;
}
.under.page-interview .key .key_text {
  justify-content: flex-start;
  font-size: 0.555555556em;
}
.under.page-interview .key .key_text::before {
  content: "";
  position: absolute;
  bottom: -5em;
  right: 0;
  background: url(../images/interview_doctor.png) no-repeat center/contain;
  width: 57.8em;
  height: 64.9em;
}
.under.page-interview .key .catch {
  min-width: 50em;
}
.under.page-interview .key .catch h2,
.under.page-interview .key .catch p {
  display: table;
  color: #fff;
  letter-spacing: 0.1em;
}
.under.page-interview .key .catch h2 {
  margin-bottom: 0.1em;
  font-size: 3.6em;
  text-indent: -0.222222em;
}
.under.page-interview .key .idx_en {
  margin-bottom: 0;
  font-size: 6em;
  line-height: 1;
  font-weight: 500;
  text-transform: uppercase;
}
.under.page-interview .key .name {
  display: inline-flex;
  position: relative;
  margin-top: 0.75em;
  padding-top: 0.62em;
  padding-right: 0;
  align-items: center;
  font-size: 1.8em;
  font-weight: 500;
  line-height: 1.5;
}
.under.page-interview .key .name::before {
  content: "";
  display: block;
  position: absolute;
  transition: all 0.3s;
  width: 100%;
  height: 0px;
  left: 0;
  top: 0;
  border-bottom: 1px solid rgba(255, 255, 255, 0.5);
}
.under.page-interview .key .name .ja {
  font-size: 2em;
  margin-left: 0.3em;
}
.under.page-interview .key .name .en {
  margin-left: 0.8em;
  font-size: 0.8888888889em;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}
.under.page-interview .key .sub {
  font-weight: 500;
  line-height: 2.1153;
  letter-spacing: 0.08em;
  font-size: 2.6em;
}
.interview_catch {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 200px;
  margin-bottom: 50px;
  background-color: #fff;
  background-color: #90b0cf;
  position: relative;
  z-index: 1;
}
.interview_catch::before, .interview_catch::after {
  content: "";
  display: block;
  position: absolute;
  transition: all 0.3s;
  inset: 0;
  z-index: -1;
  background-position: center;
  background-repeat: no-repeat;
}
.interview_catch::before {
  opacity: 0.05;
  background-size: cover;
}
.interview_catch p {
  font-size: 30px;
  line-height: 1.5;
  text-align: center;
  font-weight: 500;
  color: #fff;
  padding: 40px 10px;
}
.interview_sec {
  margin-top: 35px;
}
.interview_img {
  position: relative;
  z-index: 0;
  padding-top: 15px;
}
.interview_img::before {
  content: counter(count, decimal-leading-zero);
  counter-increment: count;
  position: absolute;
  bottom: -0.2678571429em;
  left: -0.2678571429em;
  line-height: 0.5;
  font-size: min(3.5em, 10vw);
  color: var(--main-color);
  background-color: #dfeeff;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 1.5178571429em;
  height: 1.5178571429em;
  border-radius: 5px;
}
.interview_img::after {
  content: "";
  position: absolute;
  top: 0;
  right: -0.9375em;
  width: 12.5em;
  height: 12.5em;
  border-radius: 5px;
  background-color: var(--main-color);
  z-index: -1;
  opacity: 0.4;
}
.interview_content .itv_title {
  background-color: transparent;
  padding: 0 0 15px;
  color: var(--main-color);
  border-bottom: 1px dotted var(--main-color);
  border-radius: 0;
  display: flow-root;
  margin-bottom: 20px;
}
.interview_content h5 {
  display: table;
}

@media only screen and (min-width: 769px) {
  .interview_img {
    margin-bottom: 30px;
  }
  .interview_box {
    margin-bottom: 80px;
  }
  .interview_box.box_left .interview_img {
    float: left;
    margin-right: 45px;
  }
  .interview_box.box_right .interview_img {
    float: right;
    margin-left: 45px;
  }
  .interview_box .ud_catch {
    margin-top: 0;
    margin-left: 0;
    margin-right: 0;
    width: calc(100% - 550px);
  }
  .interview_box .clear {
    margin-top: 50px;
    display: flow-root;
  }
}
@media only screen and (max-width: 1400px) and (min-width: 769px) {
  .under.page-interview .key {
    height: 550px;
  }
  .under.page-interview .key .key_text::before {
    font-size: 8px;
  }
}
@media only screen and (max-width: 1280px) and (min-width: 769px) {
  .under.page-interview .key .inner {
    width: 90%;
  }
  .under.page-interview .key .key_text {
    font-size: min(0.625em, 1.1vw);
  }
  .under.page-interview .key .key_text::before {
    font-size: min(0.9em, 0.8vw);
  }
}
@media only screen and (max-width: 1200px) and (min-width: 769px) {
  .interview_img {
    width: 45%;
  }
  .interview_box .clear {
    margin-top: 0;
  }
  .interview_box .ud_catch {
    width: calc(54% - 45px);
  }
}
@media only screen and (max-width: 1000px) and (min-width: 769px) {
  .under.page-interview .key .key_text::before {
    right: -5em;
  }
  .interview_box .pc_br {
    display: none;
  }
}
/*---------add post---------*/
.blog-content .entry > h4 {
  margin-top: 2em;
}

.blog-content .entry > h5 {
  margin-top: 2em;
}

.blog-content .entry .colImg1 img,
.img_wcap_ct img {
  margin: 0px auto;
  max-height: 500px;
  border-radius: var(--border-radius);
}

.blog-content .entry .list01 {
  margin-top: 30px;
}

.center_img {
  margin: 0 auto 1.5em;
  text-align: center;
}

.img_wcap_ct {
  margin: 40px auto 40px;
  text-align: center;
}

.box_center {
  max-width: 760px;
  margin: 0 auto 40px;
}

p:empty {
  display: none;
}

.box_lig01,
.box_lig02 {
  margin-top: 40px;
  position: relative;
  padding: 40px;
  overflow: hidden;
  border-radius: var(--border-radius);
  background: #e3edf7;
  margin-bottom: 40px;
}

.box_lig02 {
  background-color: #f3efea;
}

.box_lig01 p:last-child {
  margin-bottom: 0;
}

.note01 {
  margin-bottom: 30px;
}

.note01 {
  position: relative;
  padding-left: 20px;
  line-height: 1.6em;
  margin-bottom: 10px;
}

.note01:before {
  content: "※";
  z-index: 4;
  position: absolute;
  top: 0px;
  left: 0;
}

.note01.note_c {
  margin-top: 1em;
  color: #D90029;
}

.note01.note_c:before {
  color: #D90029;
}

.box_ctwimg {
  clear: both;
  margin-bottom: 40px;
}

.box_ctwimg p:last-child {
  margin-bottom: 0;
}

.catption_txt {
  padding-top: 10px;
  color: #8E8E8E;
  font-size: 15px;
  display: block;
}
.catption_txt:empty {
  display: none;
}

blockquote p,
blockquote li,
blockquote dt,
blockquote dd,
blockquote a {
  font-size: 16px;
}

blockquote {
  position: relative;
  padding: 25px 30px 25px 70px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  background: #F7F7F7;
  margin-bottom: 40px;
  border-left: 2px solid #E5127C;
  -webkit-box-shadow: 1px 2px 2px 0px #e0e0e0;
  box-shadow: 1px 2px 2px 0px #e0e0e0;
}

blockquote:before {
  position: absolute;
  top: 15px;
  left: 20px;
  z-index: 2;
  background-size: 40px;
  width: 50px;
  height: 50px;
  content: "";
}

blockquote p {
  position: relative;
  padding: 0;
  margin: 10px 0;
  z-index: 3;
  line-height: 1.7;
}

blockquote cite {
  display: block;
  text-align: right;
  color: #888888;
  font-size: 0.9em;
}

/*---------add post sp---------*/
.blog-content .imgBox.colImg2 picture,
.blog-content .imgBox.colImg3 picture {
  background: #efefef;
  height: 250px;
}

@media screen and (max-width: 768px) {
  .img_wcap_ct {
    margin-bottom: 30px;
    width: auto !important;
  }
  .under .blog-content .entry .colImg1 img,
  .under .img_wcap_ct img {
    max-width: 100%;
  }
  .box_lig01,
  .box_lig02 {
    padding: 20px;
    margin-top: 30px;
  }
}
.under .btn2 {
  min-height: 3.5em;
}
.under .btn2 a {
  position: relative;
  color: var(--main-color);
  text-decoration: none;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  padding: 0.5em 1em;
  font-family: var(--f-jp);
  width: 13.625em;
  height: 100%;
  background-color: var(--main-color);
  color: #fff;
  border-radius: 5px;
  font-weight: 500;
  letter-spacing: 0em;
  border-radius: 40px;
  font-size: 16px;
  line-height: 1.5;
}
.under .btn2 a::after {
  content: "";
  display: block;
  position: absolute;
  transition: all 0.3s;
  width: 0.3125em;
  height: 0.5625em;
  right: 0.6em;
  top: calc(50% - 0.2813em);
  --mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='50px' height='90px'%3E%3Cpath fill-rule='evenodd' fill='rgb(181, 166, 150)' d='M0.000,90.000 L0.000,80.003 L43.752,44.1000 L0.000,10.002 L0.000,-0.002 L50.000,40.001 L50.000,49.998 L0.000,90.000 Z'/%3E%3C/svg%3E");
  mask-image: var(--mask);
  -webkit-mask-image: var(--mask);
  mask-repeat: no-repeat;
  -webkit-mask-repeat: no-repeat;
  mask-size: 100% auto;
  -webkit-mask-size: 100% auto;
  mask-position: center;
  -webkit-mask-position: center;
  background-color: #fff;
}
@media only screen and (min-width: 769px) {
  .under .btn2 a.atv, .under .btn2 a:hover {
    background-color: var(--clr3);
  }
  .under .btn2 a.atv::after, .under .btn2 a:hover::after {
    background-color: #fff;
  }
}
.under .page_link {
  margin-top: 80px;
  padding: 2em 20px;
  border-radius: 10px;
  --bg: #f6f7fb;
  background-color: var(--bg);
}
.under .page_link .tt {
  position: relative;
  margin-bottom: 30px;
  font-size: 1.5em;
  letter-spacing: 0.1em;
  color: var(--main-color);
  text-align: center;
}
.under .page_link .tt span {
  position: relative;
  z-index: 1;
  padding: 0px 0.5em;
  background-color: var(--bg);
}
.under .page_link .tt::before, .under .page_link .tt::after {
  content: "";
  display: block;
  position: absolute;
  transition: all 0.3s;
  width: calc(50% - 5em);
  height: 0;
  top: calc(50% + 1px);
  border-top: 1px solid rgba(106, 81, 56, 0.3);
}
.under .page_link .tt::before {
  left: 0;
}
.under .page_link .tt::after {
  right: 0;
}
.under .page_link .row {
  --size-mg: 0.5em;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  margin-left: calc(-1 * var(--size-mg));
  margin-right: calc(-1 * var(--size-mg));
}
.under .page_link .row > .btn2 {
  margin: 0.5em var(--size-mg);
  width: calc(33.333% - var(--size-mg) * 2);
  max-width: 20em;
  border-radius: inherit;
}
.under .page_link .row > .btn2.atv {
  display: none;
}
.under .page_link .row > .btn2 a {
  width: 100%;
}
.under .page_link .row > .btn2 a span {
  display: inline-block;
}
.under .page_link .row > .btn2 a:hover {
  opacity: 1;
}
@media (max-width: 768px) {
  .under .page_link {
    margin-top: 60px;
    padding: 30px 10px;
  }
  .under .page_link .row {
    --size-mg: 5px;
    justify-content: center;
    margin: calc(var(--size-mg) * -1);
  }
  .under .page_link .row > .btn2 {
    margin: var(--size-mg);
    width: calc(50% - var(--size-mg) * 2);
  }
  .under .page_link .row > .btn2 a {
    font-size: 14px;
    line-height: 1.5;
  }
}
@media (max-width: 425px) {
  .under .page_link .row {
    --size-mg: 2.5px;
  }
  .under .page_link .row > .btn2 a {
    font-size: 14px;
    padding: 1em;
    letter-spacing: 0;
  }
  .under .page_link .row > .btn2 a::after {
    right: 0.5em;
  }
}
@media (max-width: 345px) {
  .under .page_link .row > .btn2 a {
    font-size: min(3.5vw, 14px);
  }
}
@media (min-width: 431px) and (max-width: 520px) {
  .under .page_link.st3 .btn-group > .btn a {
    font-size: min(2vw, 14px);
  }
}

@media (max-width: 480px) {
  .under .page_link .tt {
    line-height: 1.4;
  }
}