/*
Theme Name: Astra Child
Template: astra
*/
section {
max-width: 1200px;
  margin: 0 auto;
}
body {
/*max-width: 1200px;*/
margin: 0 auto;
}
.ast-separate-container .ast-article-single:not(.ast-related-post), .ast-separate-container .error-404, .ast-separate-container .no-results, .single.ast-separate-container .ast-author-meta, .ast-separate-container .related-posts-title-wrapper, .ast-separate-container .comments-count-wrapper, .ast-box-layout.ast-plain-container .site-content, .ast-padded-layout.ast-plain-container .site-content, .ast-separate-container .ast-archive-description, .ast-separate-container .comments-area .comment-respond, .ast-separate-container .comments-area .ast-comment-list li, .ast-separate-container .comments-area .comments-title {
  background: none;
}
@media screen and  (max-width: 921px) {
  .smatabnone {
    display: none !important
  }
}
@media screen and  (max-width: 544px){
  .smanone {
    display: none !important
  }
}
@media only screen and (min-width: 545px) {
  .smanone {
    display: block;
  }
}
@media only screen and (min-width: 921px) {
  .pcnone {
    display: none !important;
  }
.page img {
    margin: 0 0 20px 30px;
    float: right;
    width: 35%;
  }
}
@media (min-width: 769px) {
  .site-content .ast-container {
    display: block;
  }
}
h1, .entry-content :where(h1) {
line-height: 1.2em;
}
.post h2 {
  line-height: 1.2;
  background: #267cbe;
  position: relative;
  text-align: left;
  font-size: 24px;
  color: #fff;
margin-bottom: 20px;
padding: 10px;
line-height: 1.5em;
}
.post h3 {
  font-size: 22px;
  padding-left: 20px;
  border-bottom: solid 2px rgb(227, 227, 227);
line-height: 1.5em;
  background: #f6f6f6;
  height: auto;
  text-decoration: none;
  position: relative;
  padding: 8px 15px;
}
.post h3::after {
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  content: '';
width: 5px;
  height: 100% !important;
  background-color: #267cbe;
}
.post h4 {
line-height: 1.5em;
  width: fit-content;
border-bottom: solid 3px #40a773;
  position: relative;
  font-size: 125%;
  font-weight: bold;
  padding:.5% 0;
  margin-bottom: 2%;
}
@media only screen and (max-width: 921px) {
.post h2, .post h3 {
font-size: 17px;
  }
.ast-separate-container #primary, .ast-separate-container.ast-left-sidebar #primary, .ast-separate-container.ast-right-sidebar #primary {
    padding-top: 0;
  }
}
span.att {
  background: #a99983;
  padding: 3px 15px;
  margin: 5px 0;
  font-weight: bold !important;
  font-size: 105%;
  display: inline-block;
  color: #fff;
  font-family: 'Hiragino Kaku Gothic Pro','ヒラギノ角ゴ Pro W3','メイリオ',Meiryo,'Osaka','ＭＳ Ｐゴシック',Arial,sans-serif !important;
}
span.att1 {
background: #f0ebe9;
  color: #9c8b80;
  padding: 3px 15px;
  margin: 5px 0;
  font-weight: bold !important;
  font-size: 105%;
  display: inline-block;
font-family: '游ゴシック' !important;
}
.fz120{
font-size: 120%;
}
.fz130{
font-size: 130%;
}
.fz140{
font-size: 140%;
}
.fz150{
font-size: 150%;
}
span.po {
  color: #c70404;
  font-weight: bold !important;
font-family: '游ゴシック' !important;
}
span.po-b {
  color: #175b8f;
  font-weight: bold !important;
font-family: '游ゴシック' !important;
}
span.po-c {
  color: #935723;
  font-weight: bold !important;
font-family: '游ゴシック' !important;
}
span.po-g {
  color: #40a773;
  font-weight: bold !important;
font-family: '游ゴシック' !important;
}
.ch {
  background: url(./images/icon_check.svg)no-repeat;
  font-weight: bold;
  padding: 0 0 0px 30px;
}
.ch-b {
  background: url(./images/icon_check-b.svg)no-repeat;
  font-weight: bold;
  padding: 0 0 0px 30px;
}
.ch-c {
  background: url(./images/icon_check-c.svg)no-repeat;
  font-weight: bold;
  padding: 0 0 0px 30px;
}
.post ul {
margin: 0 0 0 10px;
}
.post ul li {
line-height: 1.5em;
margin-bottom: 5px;
}
b, strong {
  font-weight: bold !important;
font-family: '游ゴシック' !important;
}
a.link{
  color: #3d71c3;
  text-decoration: underline;
}
.small {
  font-size: smaller !important;
}
ul.yajirushi{
  list-style: disclosure-closed;
}
ul.yajirushi li {
font-weight: bold !important;
font-family: '游ゴシック' !important;
  letter-spacing: 2px;
  font-size: 16px;
  line-height: 1.6em;
}
.ch-list p {
  margin-bottom: 5px !important;
  padding-left: 2em;
  text-indent: -2em;
}
.thumbnail {
aspect-ratio: 1 / 1;
overflow: hidden;
}
.thumbnail img {
display: block;
width: 100%;
height: 100%;
object-fit: cover;
}
.w5 {
    width: 5%;
}
.w8 {
    width: 8% !important;
}
.w10 {
    width: 10% !important;
}
.w15 {
    width: 15% !important;
}
.w20 {
width: 20% !important;
}
.w25 {
    width: 25% !important;
}
.w30 {
width: 30% !important;
}
.w35 {
width: 35% !important;
}
.w40 {
width: 40% !important;
}
.w45 {
width: 45% !important;
}
.w48 {
width: 48% !important;
}
.w50 {
width: 50% !important;
}
.w60 {
width: 60% !important;
}
.w70 {
width: 70% !important;
}
.w80 {
width: 80% !important;
}
.w100 {
width: 100% !important;
}
img.post-main {
width: 100% !important;
}

table, td, th {
border: 1px solid #bbb;
border-collapse: collapse;
}
* {
  /*
  font-family: 'YuGothic','游ゴシック体','Hiragino Kaku Gothic ProN','ヒラギノ角ゴ ProN W3',sans-Serif !important;
  font-family: "fot-tsukuardgothic-std", sans-serif !important;*/
font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif !important;
  font-weight: 400 !important;
}
.clear {
  clear: both;
}
.t-c {
  text-align: center !important;
}
.mt30 {
  margin-top: 30px !important;
}
.mt10{
margin-top: 10px !important;
}
.mt20{
margin-top: 20px !important;
}
.mb30 {
margin-bottom: 30px !important;
}
.mb10{
margin-bottom: 10px !important;
}
.mb20{
margin-bottom: 20px !important;
}
ul {
  margin: 0 0 0em 1em;
}
@media screen and  (max-width: 544px){
.smaw50 {
width: 50% !important;
}
.smaw100 {
width: 100% !important;
}
.smat-c{
text-align: center !important;
}
html {
font-size: 85.5%;
width: 100%;
overflow-x: hidden;
}
img {
  height: auto;
  width: 100%;
}
}
@media only screen and (min-width: 921px) {
  .graybox {
    line-height: 27px;
    margin-bottom: 20px;
}
}
.graybox {
padding: 20px 20px 10px;
border: solid 1px #ccc;
background-color: #f3f3f3;
}
.yellowbox {
padding: 20px 20px 10px;
background-color: #f9f5f1;
border: solid 1px #ece8e3;
}
@media only screen and (min-width: 921px) {
  .yellowbox {
    line-height: 27px;
    margin-bottom: 20px;
  }
}
#content h1{
text-align: center;
font-size: 2.2rem;
margin: 1em 0;
line-height: 1.6em !important;
}
#content h1::after{
  content: "";
  display: block;
  border-bottom: 1px solid;
  width: 20%;
  margin: 0 auto;
  padding-top: 10px;
}
/*　ボタン　*/
.btn-normal {
  display: inline-block;
  text-align: left;
  background-color: #0f4426;
  color: #FFF;
  text-decoration: none;
  position: relative;
font-family: '游ゴシック' !important;
}
.btn-normal:before {
content: "";
  width: 13px;
  height: 13px;
  background-image: url(./images/icon-yajirushi01.svg);
  display: inline-block;
  margin-right: 8px;
}
.btn-normal-A {
  font-weight: bold;
padding: 8px 20px 8px 20px;
  background: rgb(22, 135, 145);
border:1px solid rgb(22, 135, 145);
}
.btn-normal-B {
  font-weight: bold;
padding: 8px 20px 8px 20px;
  background: #988b8b;
border:1px solid #988b8b;
}

.btn-normal-A:hover {
  background-color: #fff;
  color: #10a619;
  border:1px solid #10a619;
}
.btn-normal-A:hover:before {
  color: #9c8b80;
  background-image: url(./images/icon-yajirushiA.svg);
}
.btn-normal-B:hover {
  background-color: #fff;
  color: #988b8b;
  border:1px solid #988b8b;
}
.btn-normal-B:hover:before {
  color: #988b8b;
  background-image: url(./images/icon-yajirushiB.svg);
}
/*　ボタン　おわり　*/
/*　投稿ページ、一覧ページ、サイドバー　*/
.ast-separate-container .ast-blog-layout-5-grid .post-content {
  padding: 0;
}
.ast-blog-layout-5-grid .post-content {
  width: 75%;
  padding-left: 1.5em !important;
}
.ast-separate-container #primary {
  margin: 0 !important;
}
.ast-archive-description .ast-archive-title {
  margin-bottom: 3%;
}
.ast-separate-container .ast-article-post, .ast-separate-container .ast-article-single,body.archive .ast-archive-description {
padding: .5em !important;
border-bottom: none;
margin: 4em auto 0;
  background: none;
}
.ast-breadcrumbs-wrapper {
  margin-bottom: 1%;
}
.archive .content-area,.single .content-area,.postcontent{
display: flex;
flex-wrap: wrap;
}
.sidebar-blog{
width: 23% !important;
  background-color: #F8F8F5;
  padding: 20px;
  margin-left: 4%;
}
.sidebar-main ul{
  margin: 0 0 1.5em 1em;
}
h2.sidebar-title{
font-size: 28px;
  line-height: 1.3em;
  text-align: center;
  margin-bottom: 5%;
background: none !important;
  color: black;
  padding: 0;
}
.ast-page-builder-template .entry-header {
text-align: center;
font-size: 2.2rem;
margin: 0;
}
.archive .site-main,.single .hentry,.entry-content .site-main {
  margin: 0;
width: 72%;
}
.post h2.entry-title {
  background: #fff;
  border-bottom: 1px solid #dfdfdf;
}
.archive .post img {
    margin: 0 30px 20px 0px;
  }
.archive .entry-title, .blog .entry-title, .search .entry-title {
  line-height: 1.3;
  font-size: 24px;
  border-bottom: 1px solid #dfdfdf;
  padding-top: 15px;
  padding-bottom: 10px;
}
.ast-blog-layout-5-grid .ast-article-inner {
  border-bottom: 1px solid #ccc;
  padding-bottom: 10px;
}
@media screen and  (max-width: 921px){
.archive .content-area,.single .content-area,.entry-content{
display: block;
}
.archive .site-main, .single .hentry, .entry-content .site-main,.sidebar-blog{
margin: 0 auto;
margin-bottom: 0px;
width: 95% !important;
}
#content h1 {
  text-align: center;
  font-size: 1.8rem;
  margin-top: 5%;
}
h2.sidebar-title {
  font-size: 24px;
}
}
@media (max-width: 768px) {
.post-thumb a {
    float: left;
    margin: 0 !important;
    aspect-ratio: 1 / 1;
    overflow: hidden;
    display: grid;
  }
.ast-blog-layout-5-grid .blog-layout-5 {
  flex-wrap: unset;
}
.ast-blog-layout-5-grid .post-thumb-img-content {
  margin-right: 20px;
}
.ast-excerpt-container{
display: none;
}
.post-thumb{
width: 50% !important;
}
.post-thumb .post-thumb{
width: 95% !important;
}
.entry-title {
  padding: 5px 15px !important;
}
}
/*　フローティングバナー　*/

.webyoyaku{
bottom: 110px;
right: 0;
width: 60px;
background: none;
position: fixed;
}
.onlineyoyaku{
bottom: 320px;
right: 0;
width: 60px;
background: none;
position: fixed;
}
.onlineyoyaku img,.webyoyaku img{
  width: auto;
  padding: 0;
  margin: 0;
}
@media screen and (max-width: 544px) { 
.onlineyoyaku,.webyoyaku{
display: none;
}
}
/*.side-navi */
.side-navi {
  position: fixed;
  top: 30%;
  right: 0;
  z-index: 1000;
}
.side-navi__box {
margin-bottom: 15px;
  position: relative;
  font-size: 1.2px;
  line-height: 1;
  text-align: center;
background-color: rgba(70, 56, 47, 0.7);
}
.side-navi__item {
width: 35px;
  height: 230px;
  cursor: pointer;
}
.side-navi__item a {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
}
.side-navi__item p::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  background: url(./images/icon-tel-w.png) no-repeat;
    background-size: auto;
  background-size: cover;
width: 16px;
  height: 16px;
}
.side-navi__item p {
  padding-top: 25px;
  -ms-writing-mode: tb-rl;
  -webkit-writing-mode: vertical-rl;
  writing-mode: vertical-rl;
font-size: 14px;
  color: #fff;
  letter-spacing: 1px;
  text-orientation: upright;
  position: relative;
}
@media screen and (max-width: 544px) { 
.side-navi__box{
display: none;
}
}
/*.side-navi__box おわり */
/*フッター */
footer{
  max-width: 1200px;
  margin: 5% auto 0;
}
.footer_innner {
  display: flex;
}
.footer_Larea {
  flex: 1;
  position: relative;
  padding: 1rem;
}
.footer_Rarea {
  flex: 1;
}
.footer_Larea h3 {
width: 60%;
margin: 0 auto 1rem;
}
.footer_Larea h3 img{
  width: 100%;
}
.footer_innner p {
margin-bottom: 0;
}
.footer_address {
width: 80%;
margin: 0 auto;
clear: both;
}
.footer_tel {
  text-align: center;
  font-size: xx-large;
  padding: 3% 0 0 0;
}
.footer_reserve {
  background: #e7eff1;
  color: #444;
  padding: 5px 20px;
  margin-top: -5px;
  display: inline-block;
  vertical-align: middle;
  margin-right: 20px;
  font-size: 1rem;
}
.fotter_contactBtnArea {
  width: 90%;
  margin: 0 auto;
  padding: 1rem 0;
  display: flex;
  justify-content: center;
  align-items: center;
}
.fotter_contactBtnArea.link {
text-align: center;
  font-size: .8em;
}
.footer_contactBtn {
  display: block;
  position: relative;
  padding: 1rem;
  text-align: center;
  text-decoration: none;
  color: #fff;
  background: #babba7;
  font-size: 1.25rem;
  border-radius: 5px;
  margin: 0 auto;
margin: 1px;
}

.footer_contactBtn:hover {
background: #fff;
border: 1px solid #918381;
color: #918381;
}
.footer_access {
  width: 100%;
  display: flex;
}
.footer_accessL {
  background: #fff;
  border-radius: 10px;
  font-size: 1rem;
  color: #555;
  text-align: center;
  position: relative;
  border: 1px solid #432d16;
  padding: 0.3rem !important;
  width: 65% !important;
  height: auto !important;
  margin: auto;
}
.footer_accessL span {
  font-size: 1.5rem;
  display: inline !important;
  padding: 0 5px !important;
}
.footer_accessR {
  padding: 0 1.5em;
  position: relative;
}
.footer_accessBtn {
	display: block;
	position: relative;
	padding: .7rem;
	text-align: center;
	text-decoration: none;
	background: #fff;
	border:1px solid #432d16;
	font-size:1rem;
border-radius: 10px;
}
.footer_accessBtn:hover {
background:#34ab32;color: #fff;cursor: pointer;text-decoration: none;
}
.copyright{padding: 0.5rem 0; text-align:center; color:#fff; background:#75a3f2; font-size:.8rem;}
.copyright p {margin-bottom: 0;}
@media only screen and (max-width: 544px) {
.footer_innner {
    flex-direction: column;
  }
 .footer_access {
    display: grid !important;
  }
  .footer_accessL {
    margin: 3% 0;
    width: 100% !important;
  }
.footer_accessR {
  padding: 0;
}
.footer_Larea h3 {
  width: 90%;
}
}
/*フッター おわり*/
/*Practice-time*/
.Practice-time.top {
  background: rgba(255, 255, 255, 0.85);
  padding: 1%;
  font-size: smaller;
border: 1px solid #efeeee;
  box-shadow: 0.4rem 0.4rem 0px 0 #988b8b;
}
.Practice-time.top p {
margin-bottom: 0;
}
.Practice-time.top table th,.Practice-time.top table td {
line-height: .6em;
  font-size: small !important;
}
.Practice-time table {
  width: 100%;
  border-spacing: 0;
  margin: .5rem 0;
}
.Practice-time table tr:first-child {
  border-top: solid 1px #999 !important;
}
.Practice-time table th {
  border-left: solid 1px transparent !important;
  padding: 10px 0;
  color: #000 !important;
  text-align: left;
  width: 120px;
  background: transparent;
  box-shadow: 1px 1px 0 transparent inset;
  font-size: 1rem !important;
text-align: center;
}
.Practice-time table td {
  border-left: solid 1px transparent !important;
  text-align: center;
  padding: 10px 0;
  background: transparent;
  font-size: 1rem !important;
}
.Practice-time table td,.Practice-time table th,.Practice-time table {
border-right: none;
border-left: none;
line-height: 18px;
}
.smanone .Practice-time.top table td, .smanone .Practice-time.top table th {
padding: 10px 0;
  font-size: .9rem !important;
}
/*Practice-time おわり*/
/*Instagram　LINEバナー　YouTube fasebook*/
.fab {
  font-family: "Font Awesome 5 Brands" !important;
}
.fasebook_btn2{
  color: #FFF;
  border-radius: 7px;
  position: relative;
  display: inline-block;
  height: 50px;
  width: 190px;
  text-align: center;
  font-size: 25px;
  line-height: 50px;
background: #214f97;
text-decoration: none;
margin: 0 .5%;
}
.fasebook_btn2 .fa-fasebook{/*アイコン*/
  font-size: 35px;/*アイコンサイズ*/
  position: relative;
  top: 4px;/*アイコン位置の微調整*/
}
.fa-fasebook::before {
content: "\f082";
  font-size: 0.8em;
  top: -2px;
  position: relative;
}
.fasebook_btn2 span {/*テキスト*/
display: inline-block;
  position: relative;
  background-image: url(./images/icon-facebook.svg);
padding-left: 45px;
  background-repeat: no-repeat;
  background-size: 30px;
  background-position: 0 10px;
}
.insta_btn2{/*ボタンの下地*/
  color: #FFF;/*文字・アイコン色*/
  border-radius: 7px;/*角丸に*/
  position: relative;
  display: inline-block;
  height: 50px;/*高さ*/
  width: 190px;/*幅*/
  text-align: center;/*中身を中央寄せ*/
  font-size: 25px;/*文字のサイズ*/
  line-height: 50px;/*高さと合わせる*/
  background: -webkit-linear-gradient(135deg, #427eff 0%, #f13f79 70%) no-repeat;
  background: linear-gradient(135deg, #427eff 0%, #f13f79 70%) no-repeat;/*グラデーション①*/
  overflow: hidden;/*はみ出た部分を隠す*/
  text-decoration:none;/*下線は消す*/
margin: 0 .5%;
}

.insta_btn2:before{/*グラデーション②*/
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;/*全体を覆う*/
  height: 100%;/*全体を覆う*/
  background: -webkit-linear-gradient(15deg, #ffdb2c, rgb(249, 118, 76) 25%, rgba(255, 77, 64, 0) 50%) no-repeat;
  background: linear-gradient(15deg, #ffdb2c, rgb(249, 118, 76) 25%, rgba(255, 77, 64, 0) 50%) no-repeat;
}

.insta_btn2 .fa-instagram{/*アイコン*/
  font-size: 35px;/*アイコンサイズ*/
  position: relative;
  top: 4px;/*アイコン位置の微調整*/
}
.fa-insta::before {
content: "\f16d";
position: relative;
}
.insta_btn2 span {/*テキスト*/
display: inline-block;
  position: relative;
  background-image: url(./images/icon-insta01.svg);
padding-left: 45px;
  background-repeat: no-repeat;
  background-size: 30px;
  background-position: 0 10px;
}
.LINE_btn2 {
  color: #FFF;
  border-radius: 7px;
  position: relative;
  display: inline-block;
  height: 50px;
  width: 190px;
  text-align: center;
  font-size: 25px;
  line-height: 50px;
background: #00c300;
text-decoration: none;
margin: 0 .5%;
}
.LINE_btn2 .fa-line{/*アイコン*/
  font-size: 35px;/*アイコンサイズ*/
  position: relative;
  top: 4px;/*アイコン位置の微調整*/
}
.LINE_btn2 span {/*テキスト*/
display: inline-block;
  position: relative;
  background-image: url(./images/icon-line01.png);
padding-left: 45px;
  background-repeat: no-repeat;
  background-size: 30px;
  background-position: 0 10px;
}
.YouTube_btn2 {
  color: #FFF;
  border-radius: 7px;
  position: relative;
  display: inline-block;
  height: 50px;
  width: 190px;
  text-align: center;
  font-size: 25px;
  line-height: 50px;
background: #f03;
text-decoration: none;
margin: 0 .5%;
}
.YouTube_btn2 .fa-line{/*アイコン*/
  font-size: 35px;/*アイコンサイズ*/
  position: relative;
  top: 4px;/*アイコン位置の微調整*/
}
.YouTube_btn2 span {/*テキスト*/
display: inline-block;
  position: relative;
  background-image: url(./images/icon-YouTube.svg);
padding-left: 45px;
  background-repeat: no-repeat;
  background-size: 30px;
  background-position: 0 10px;
}
.insta_btn2.w48,.LINE_btn2.w48,.YouTube_btn2.w48{
width: 48%;
}
.fotter_contactBtnArea.sns {
  padding: 0;
}
 .fotter_contactBtnArea.sns a:hover {
color: #fff !important;
  }
@media only screen and (max-width: 544px) {
.fotter_contactBtnArea.sns {
  padding: 0;
/*display: block;*/
}

a.insta_btn2.w50,a.LINE_btn2.w50,a.YouTube_btn2.w50,a.fasebook_btn2.w50{
font-size: 20px;
color: #fff !important;
}
.insta_btn2.w50,.LINE_btn2.w50,.YouTube_btn2.w50,.fasebook_btn2.w50{
/*width: 100% !important;
margin-bottom: 2%;*/
}
.fotter_contactBtnArea {
  width: 100%;
}
.footer_contactBtn {
padding: 1rem 0;
margin: 1px;
}
}
/*スマホフッター */
.headerCta {
position: fixed;
bottom: 0;
left: 0;
z-index: 10000;
width: 100%;
height: 95px;
box-sizing: border-box;
padding: 10px 5px 0;
background: rgba(219, 217, 217, 0.8);
display: flex;
flex-wrap: wrap;
justify-content: space-between;
margin: 0;
list-style: none;
}
.headerCta li {width: calc( (100%)/3);}
.headerCta li:nth-child(1) { width: calc( (100%)/3 - 5px );}
.headerCta li a { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; width: 100%; height: 80px; background: rgb(246, 173, 0); border-radius: 4px 4px 0 0; color: #FFF; font-size: medium; text-align: center; line-height: 1.23;text-decoration: none;}
.headerCta li:nth-child(1) a {background:rgb(0, 151, 80); color: #fff;}
.headerCta li a > span { display: block; padding: 35px 0 0; font-family: '游ゴシック' !important;
  font-weight: bold !important;line-height: 1.4em;font-size: smaller;}
.headerCta li:nth-child(1) a > span { background: url(./images/access-ico-w.png) no-repeat 50% 5px/ auto 25px; }
.headerCta li:nth-child(1) a > span > span { display: block; }
.headerCta li:nth-child(2) a > span { background: url(./images/icon-tel-w.png) no-repeat 50% 5px/ auto 25px; }
.headerCta li:nth-child(3) a > span { background: url(./images/icon-calendar.png) no-repeat 50% 5px/ auto 25px; }
/*スマホフッター おわり */

/*　ヘッター　*/
.top-bk {
  position: absolute;
  width: 410px;
  left: 0;
  opacity: .2;
margin: 0 !important;
z-index: -1;
}
.top-bk02 {
position: absolute;
  left: -50px;
  opacity: .3;
  z-index: 1;
  margin: 0 !important;
  max-width: 190px;
  aspect-ratio: auto !important;
  bottom: -10px;
}
#headbox,.header-navibox,.custom-global-nav ul li,#header-l {
height: 80px;
max-width: 1200px;
margin: 0 auto;
}
#header-l {
  width: fit-content;
  float: left;
position: absolute;
z-index: 2;
}
#header-r {
  float: right;
}
#header-r a{
display: block;
}
.header-navibox {
  display: flex;
  float: right;
}
#header h1 {
position: absolute;
top: 5px;
}
.custom-global-nav ul{
display: flex;
list-style: none;
margin: 0;
}
.custom-global-nav ul li {
width: 100px;
  min-width: 70px;
  font-size: 14px;
  display: flex;
  align-items: center;
  padding: 0 2px;
}
.custom-global-nav ul li:hover {
display: block;
top: 30px;
}
.custom-global-nav ul li a span {
  font-size: 10px;
  color: #aaa;
}
.custom-global-nav ul li a{
  width: 100%;
  display: block;
text-align: center;
}
.is-fixed .smanone{
display:none;
}
.metal{
  margin: 0;
  padding: 5px 10px;
background-color: rgba(70, 56, 47, 0.7);
  color: #fff;
  text-align: center;
}
.metal.orange {
background:#f2f6e7;
  color: #616161;
}
.metal p{
  margin: 0;
}
.home #header-l img {
width: 280px;
top: 0;
}
#header-l img {
width: 280px;
left: 20px;
position: relative;
top: 5px;
}
@media only screen and (max-width: 544px) {
.home #header-l img {
width: 230px;
}
#header-l img {
width: 230px;
left: 20px;
position: relative;
}
#headbox, .header-navibox, .custom-global-nav ul li {
  height: 60px;
}
}
/* グローバルナビ */
.custom-global-menu {
    display: flex;
    margin: 0;
    padding: 0;
    list-style: none;
}
.custom-global-menu > li {
    position: relative;
}
.custom-global-menu > li > a {
display: block;
}
.custom-global-menu .sub-menu {
    display: none;
    min-width: 300px;
    background: #fff;
    box-shadow: 0 4px 12px rgba(0,0,0,.15);
z-index: 999999;
  position: relative;
}
.custom-global-menu .sub-menu li {
width: 100%;
  height: 38px;
  background: rgb(255, 255, 255);
  line-height: 1em;
}
.custom-global-menu > li:hover > .sub-menu {
    display: block;
}
.custom-global-menu .sub-menu li a {
padding: 12px 18px;
  color: #333;
  text-align: left;
}
.custom-global-menu .sub-menu li a:hover {
    background: #f5f5f5;
}
.is-fixed {
	position: fixed;
	top: 0;
	left: 0;
z-index: 99999;
width: 100%;
background-color: rgb(255, 255, 255);
  border-bottom: 1px solid #c9c9c9;
}
.is-fixed ul {
    list-style: none;
    margin: 0 auto;
    height: 40px;
    padding: 0;
    justify-content: center;
    align-items: center;
    display: flex;
	max-width: 1200px;
  }
.is-fixed ul li {
  font-size: 15px;
  width: calc(100%);
}
.is-fixed ul li a span {
  display: none;
}
.is-fixed ul li,custom-global-nav ul li a {
height: 60px;	
}
/* グローバルナビ */
/* Main-Visual */
.home .ast-container{
padding: 0;
max-width: none !important;
 }
#Main-Visual.inner .bx-wrapper .bx-viewport {
  background: rgb(255, 255, 255);
}
#Main-Visual ul.bxslider{
list-style: none;
margin: 0;
}
/*#Main-Visual.inner img {
  width: calc(70%);
  float: right;
aspect-ratio: 1400 / 750;
    object-fit: cover;
}*/
#Main-Visual {
  position: relative;
z-index: -2;
}
#Main-Visual.inner {
/*position: relative;
min-height:0;
min-height: 450px;*/
}
#Main-Visual.inner .bxslider li {
  position: relative;
}
#Main-Visual.inner img {
  display: block;
  width: 70%;
  height: auto;
  aspect-ratio: 1400 / 750;
  object-fit: cover;
  float: right;
}
.bx-wrapper img {
/*border-radius: 100px;*/
}
.inner1 {
  position: absolute;
  bottom: 20px;
  padding: 0px;
  right: 8%;
  text-align: center;
width: 380px;
}
.inner2 {
position: absolute;
  padding: 0px;
  bottom: 10px;
  left: 3%;
  width: 430px;
}
.inner3 {
  position: absolute;
  padding: 0px;
  bottom: 10px;
  left: 3%;
width: 380px;
  margin: 0 1px;
  background: rgba(117, 163, 242, 0.9);
    background-color: rgba(117, 163, 242, 0.9);
padding: 1% 2%;
  line-height: 1.5em;
}

.mainvisual_catch {
  position: absolute;
  left: 0;
bottom: 60px;
  width: 100%;
  margin: 0;
  z-index: 10;
}
.box_main {
padding: 15px 3%;
  width: 100%;
  text-shadow: 2px 2px 2px #fff, -2px 2px 2px #fff, 2px -2px 2px #fff, -2px -2px 2px #fff, 2px 0px 2px #fff, 0px 2px 2px #fff, -2px 0px 2px #fff, 0px -2px 2px #fff;
/*writing-mode: vertical-rl;*/
}
.copy_main {
font-size: 200%;
line-height: 2em !important;
margin-bottom: 0px;
}
.copy_main .bb {
font-size: 130%;
  letter-spacing: 3px;
  padding: 0 1%;
background: linear-gradient(transparent 50%,rgba(207, 200, 137, 0.45) 50%);
  display: inline-block;
  line-height: 1em;
  letter-spacing: .1em;
}
.copy_main .dot {
  padding: 0;
  margin-top: 4%;
  position: relative;
}
.copy_main .dot::before {
  content: "";
  display: block;
  width: 8px;
  height: 8px;
  position: absolute;
  background: url(./images/afap_dot.png) no-repeat top center/8px;
  top: -.2em;
  left: 50%;
  -webkit-transform: translate(-50%,0);
  transform: translate(-50%,0);
}
.copy_sub {
font-size: 110%;
line-height: 1.9em !important;
margin-top: 1%;
margin-bottom: 0;
}

.d-flex {
  display: -webkit-box !important;
  display: -ms-flexbox !important;
  display: flex !important;
  position: absolute;
  bottom: 10px;
  left: 3%;
  z-index: 3;
margin: 0;
}
.el-list li {
display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
 line-height: 1.3em;
  margin: 1px 1.5px;
  padding: 2px;
  text-align: center;
  box-shadow: 0 0 0 5px rgba(255, 255, 255, 0.6);
  background-color: rgba(255, 255, 255, 0.9);
  width: 120px;
  height: 120px;
  border-radius: 50%;
}
.el-list__thumb {
  margin: auto;
    margin-bottom: auto;
  margin-bottom: auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
  -ms-flex-align: end;
  height: 40px;
  width: 40px;
  margin-bottom: 0.5rem !important;
}
.el-list__thumb img {
width: 100% !important;
}	
.el-list__title {
font-size: 13px;
font-family: '游ゴシック' !important;
  font-weight: bold !important;
}
@media screen and (max-width: 544px) {
  #Main-Visual.inner .bx-viewport ul li {
/*opacity: 0.45;*/
  }
#Main-Visual.inner img {
    width: calc(100%);
aspect-ratio: 600 / 780;
/*object-fit: contain;*/
object-position: -300px;
  }
.bx-wrapper {
  opacity: .6;
}
.bx-wrapper img {
border-radius: 10px;
}
.copy_main {
font-size: 160%;
    margin-bottom: 4%;
    line-height: 1.6em !important;
}
.copy_sub {
font-size: 18px;
}
.box_main {
text-align: center;
padding: 0;
}
.mainvisual_catch {
bottom: 30px;
}
.d-flex {
left: 0;
width: 100%;
justify-content: center;
bottom: 30px;
}
.el-list li {
width: 85px;
    height: 85px;
    margin: 0;
}
.el-list__title{
font-size: 11px;
}
.inner3 {
  width: 93%;
bottom: -20px;
}
.inner2 {
  left: 0;
  width: 100%;
bottom: -20px;
}
.inner1 {
  position: relative;
  bottom: -20px;
  right: 0;
  width: 100%;
}
}
/*Main-Visual おわり*/
/*.kokuban*/
.kokuban {
   /* border-radius: 3px;
    box-shadow: 2px 2px 4px #666, 2px 2px 2px #111 inset;
    text-shadow: 0px 0px 2px #000;*/
    line-height: 1.9;
}
.kokuban ul li {
padding: 5px;
}
.kokuban ul #move {
border-bottom: 1px solid #ddd;
}
.kokuban ul {
overflow-y: scroll;
height: 200px;
}
.btn02.ichiran {
  position: relative;
  margin-bottom: 2%;
  border-bottom: 1.4px solid #bbb;
  padding-bottom: 1%;
}
.ditem.w20{
width: 20%;
text-align: center;
}
.kokuban span.date {
padding: 2px 15px;
  background: rgb(233, 231, 225);
  margin: 0 10px 0 0px;
}
span.newslogo {
  padding: 0;
  letter-spacing: 0.2em;
  color: #333;
}
.ditem .btn-normal {
  font-size: medium;
  letter-spacing: 2px;
  line-height: 1.3em;
position: absolute;
  top: 8%;
  right: 8%;
}
@media screen and (max-width: 544px) {
.ditem .btn-normal {
  top: 2%;
  right: 5%;
}
}
/*.kokuban*/
/*.p-top-main__news*/
.p-top-main__news-wrapper {
position: relative;
padding: 0 8rem 0 8rem;
border-top: 1px solid #e3e3e3;
border-bottom: 1px solid #e3e3e3;
}
.p-top-main__news-content {
 position:relative;
 display:flex;
 display:-ms-flexbox;
 flex-direction:row;
 justify-content:space-between;
padding: 2rem 0;
min-height: 300px !important;
}
.p-top-main__news-content::before {
 position:absolute;
 top:0;
left: 17rem;
 width:1px;
 height:100%;
 content:"";
 background-color:#e3e3e3
}
.c-ttl__sec-main-min::before {
 position:absolute;
bottom: -.5rem;
 left:.4rem;
 width:6.4rem;
 height:1px;
 content:"";
 background-color:#4e453d
}
.p-top-main__news-all {
 position:absolute;
bottom: 2rem;
 left:0;
 display:flex;
 display:-ms-flexbox;
 flex-direction:row;
 align-items:center
}
.p-top-main__news-all.news-blog {
bottom: 1.5rem;
}
.p-top-main__news-all-box {
 width:3rem;
 height:3rem;
 border-radius:50%;
background-color: rgb(117, 163, 242);
}
.p-top-main__news-all-img {
  display: flex;
  display: -ms-flexbox;
  align-items: center;
  justify-content: center;
width: 3rem;
height: 3rem;
flex-shrink: 0;
}
.p-top-main__news-all-img-item {
width: 1rem;
height: 3rem;
display: block;
}
.p-top-main__news-all-link {
 margin:0 0 0 1rem;
text-decoration: none;
}
.p-top-main__news-all-txt {
position: relative;
font-size: 1.2rem;
letter-spacing: .2rem;
}
.p-top-main__news-all-txt::before {
 /*position:absolute;
 bottom:-.18rem;
 left:1%;
 content:"";
 width:98%;
 height:1px;
 background-color:#262626*/
}
.p-top-main__news-content-body {
 width:80rem
}
.p-top-main__news-content-body-link {
 position:relative;
 display:flex;
 display:-ms-flexbox;
 flex-direction:row;
 justify-content:space-between;
 align-items:center
}
.p-top-main__news-content-body-link-cover {
 position:relative;
 width:100%;
 height:100%;
 padding:4rem 3.4rem 4rem 1.4rem
}
.p-top-main__news-content-body-link-cover::before {
 position:absolute;
 bottom:-.2rem;
 left:0;
 width:100%;
 height:1px;
 content:"";
 background-color:#8c8168;
 z-index:1
}
.p-top-main__news-content-body li::after {
 position:absolute;
 bottom:-.2rem;
 left:0;
 width:100%;
 height:1px;
 content:"";
 background-color:#e3e3e3
}
.p-top-main__news-content-body-link-wrapper {
 display:flex;
 display:-ms-flexbox;
 flex-direction:row;
 align-items:center;
 width:90%
}
.p-top-main__news-content-body-time {
 font-size:1.6rem;
 color:#a3a099
}
.p-top-main__news-content-body-ttl {
 margin:0 0 0 4.8rem;
 font-size:1.7rem;
 letter-spacing:-0.14rem;
 color:#9b8c6c;
}
.p-top-main__news-content-body-ttl span {
 display:inline
}
.p-top-main__news-content-body-img {
 top:48%;
 right:3.5rem;
 overflow:hidden
}
.p-top-main__news-content-body-img-item {
 width:100%;
 height:100%
}
.p-top-main__news-content-header-ttl {
position: relative;
}
.c-ttl__sec-main-min {
font-size: 3rem;
text-align: left;
position: relative;
padding-bottom: 5%;
}
.p-top-main__news-content-body-list {
margin: -1rem 0 0 13rem;
}
.p-top-main__news-content-body li {
position: relative;
display: flex;
display: -ms-flexbox;
flex-direction: row;
justify-content: space-between;
align-items: center;
}
.p-top-main__news-content-body a {
position: relative;
width: 100%;
height: 100%;
padding: 1em 3rem 1rem 1rem;
line-height: initial;
text-decoration: none;
}
.p-top-main__news-content-body a::after {
  display: inline-block;
  position: absolute;
  top: 1px;
  margin: auto;
  bottom: 0;
  right: -15px;
  width: 42px;
  height: 4px;
  background-image: url(./images/arrow01.svg);
  transition: 0.2s ease-in-out;
  content: "";
}
.p-top-main__news-content-body a:hover::after {
  right: -30px;
}
.p-top-main__news-content-body li .date{
padding: 10px 15px;
background-color: rgba(208, 208, 208, 0.27);
  margin: 0 10px 0 0px;
  color: rgb(0, 0, 0);
font-family: '游ゴシック' !important;
}
.new {
  font-weight: bold;
  color: red;
  margin: 5px;
}
@media screen and (max-width: 544px) {
.p-top-main__news-wrapper {
  margin:2rem 0 0;
padding: 0 2rem 2rem;

 }
.c-ttl__sec-main-min {
margin: 0rem 0 0 -.4rem;
    font-size: 2rem;
    text-align: left;
    padding: 0;
}
.c-ttl__sec-main-min::before {
  bottom: -.6rem;
  left: .4rem;
  width: 4rem;
}
.p-top-main__news-content-body li .date {
  padding: 5px 15px;
  margin: 5% 0 3% 0;
  width: fit-content;
}
.p-top-main__news-content-body li {
  position: relative;
  display: grid;
 }
.p-top-main__news-content-body a {
    position: relative;
    width: 100%;
    height: 100%;
    padding: 0 2rem .5rem 0;
    line-height: initial;
    text-decoration: none;
}
 .p-top-main__news-content::before {
  content:none
 }
 .p-top-main__news-content {
  display:flex;
  display:-ms-flexbox;
  flex-direction:column;
  justify-content:space-between;
  padding:0
 }
 .p-top-main__news-content-header {
  display:flex;
  display:-ms-flexbox;
  flex-direction:column;
margin: 1rem 0;
  order:1
 }
 .p-top-main__news-content-header-ttl {
  display:inline-block;
  width:-webkit-fit-content;
  width:-moz-fit-content;
  width:fit-content
 }
 .p-top-main__news-content-header-ttl::before {
  position:absolute;
  bottom:9rem;
  right:-10rem;
  left:auto;
  width:7.5rem;
  height:1px;
  content:"";
  background-color:#4e453d
 }
 .p-top-main__news-content-body {
  width:100%;
  order:2
 }
 .p-top-main__news-content-body-list {
margin:0;
 }
 .p-top-main__news-content-body-link {
  position:relative
 }
 .p-top-main__news-content-body-link-cover {
  padding:12rem 3.4rem 12rem 1.4rem
 }
 .p-top-main__news-content-body-link-wrapper {
  flex-direction:column;
  align-items:flex-start
 }
 .p-top-main__news-content-body-time {
  font-size:5rem
 }
 .p-top-main__news-content-body-ttl {
  margin:2rem 0 0;
  font-size:5.5rem
 }
 .p-top-main__news-content-body-img {
  position:absolute;
  right:0rem;
  display:flex;
  display:-ms-flexbox;
  align-items:center;
  width:4.4rem
 }
 .p-top-main__news-content-body-img-item {
  width:100%
 }
 .p-top-main__news-all {
margin: 2rem 0 0;
 }
 .p-top-main__news-all-box {
width: 3rem;
height: 3rem;
 }
 .p-top-main__news-all {
  position:static;
  top:auto;
  bottom:-12rem;
  left:15.65rem;
  display:flex;
  display:-ms-flexbox;
  flex-direction:row;
  align-items:center;
  order:3
 }
 .p-top-main__news-all-txt::before {
  bottom:-.8rem
 }
}

/*ブログ*/
.darea{
  display: flex;
}
.ditem {
  width: 100%;
  height: auto;
  padding: 2% 20px;
position: relative;
}
.columnlogo {
display: inline-block;
padding: 1em 0 0em;
}
.subtitle {
  border-bottom: 1.4px solid gray;
  padding: 5px 0;
  width: 30%;
  margin: 0px auto;
  text-align: center;
}
.ditem p {
  margin-bottom: 10px;
}
.column a{
  text-decoration: none;
}
.column ul{
list-style: none;
margin: 0;
}
.column ul li{
width: 18%;
  float: left;
  height: 250px;
margin: 1%;
}
.column ul li img {
  width: 100%;
}
.kokuban {
  line-height: 1.9;
}
@media only screen and (max-width: 544px) {
  .darea {
display: block;
  }
.kokuban ul {
overflow-y: scroll;
    height: 230px;
    margin: 0;
padding: 0;
    list-style: none;
}
.kokuban.pcnone ul li {
  padding: 5px 0;
  text-indent: 0;
  border-bottom: 1px solid #ddd;
  display: flex;
}
.kokuban.pcnone .thumbnail {
  width: 30%;
  float: left;
  margin: 0 10px 10px auto;
}
.columnlogo {
padding: 0 20px .3em;
font-size: 1.2em;
border-bottom: 1.4px solid gray;
letter-spacing: 3px;
margin-bottom: 5%;
}
.subtitle {
  border-bottom: none;
  padding: 5px 0;
  width: 30%;
  margin: 10px auto 0 auto;
  text-align: center;
  color: #7b7b7b;
}
}
/*ブログ おわり*/
/*note2*/
.note2 {
  padding: 20px;
  border-top: 1px solid;
  border-bottom: 1px solid;
max-width: 80%;
margin: 1% auto;
background: rgba(255, 255, 255, 0.95);
}
.note2 p {
margin-bottom: 15px;
}
.note2 p.ttl {
font-size: 28px;
color: #9a0808;
  font-weight: 900 !important;
  text-align: center;
font-family: '游ゴシック' !important;
}
.note2 img {
  padding-bottom: 0;
width: 300px !important;
margin: 20px auto 0;
}

@media only screen and (max-width: 544px) {
.note2 p.ttl {
font-size: 18px;
margin-top: 10px !important;
}
.note2 p {
  font-size: 14px;
  line-height: 1.8em !important;
}
.note2 {
margin: 0 auto !important;
padding: 5px 8px;
    max-width: 100%;
}
.note2 img {
  padding-bottom: 0;
  width: 80%;
  margin: 5px auto 0;
}
.smat-c{
    text-align: center;
  }
}
/*note2 おわり*/
/*.haikei*/
.haikei {
  width: 100%;
  background: url("./images/IMG_2731s.jpg") right bottom/cover no-repeat;
  position: relative;
}
.fill {
  padding: 3%;
  background: rgba(200, 229, 212, 0.7);
}
/*.haikei おわり*/
/* .subBox */
.subBox {
  background: url(./images/bg_sub.png) no-repeat top center;
  background-size: 100%;
  padding: 40px 70px 60px;
max-width: 1100px;
margin: 2% auto;
background-color: aliceblue;
}
.subBox h3 {
  font-size: 30px;
  text-align: center;
  letter-spacing: .1em;
  position: relative;
  margin-bottom: 20px;
  padding-bottom: 15px;
font-family: '游ゴシック' !important;
  font-weight: bold !important;
}
}
.subBox h3::after {
  content: "";
  width: 80px;
  height: 2px;
  background: #19a317;
  position: absolute;
  bottom: 0;
  left: 50%;
  margin-left: -40px;
}
.subBox .flex {
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}
.subBox .subList {
font-size: 22px;
list-style: none;
/*display: flex;
  flex-wrap: wrap;*/
}
.subBox .subList li {
padding: 5px 0 5px 20px;
  border-bottom: 1px dotted #1b1b1b;
  position: relative;
width: fit-content;
margin: .5% 0%;
line-height: 1.5;
}
.subBox .subList p{
  font-size: initial;
margin-bottom: 20px;
}
.subBox .subList li::before {
  content: "";
  width: 10px;
  height: 10px;
  background: url(./images/ico_circle.png) no-repeat center center;
    background-size: auto;
  background-size: 10px;
  display: inline-block;
  position: absolute;
  left: 0px;
margin-top: 13px;
}
.subBox li a {
color: #19a317;
  text-decoration: none;
  font-size: 18px !important;
  font-weight: bold !important;
font-family: '游ゴシック' !important;
}
@media screen and (max-width: 544px) {
.subBox {
padding: 30px 10px 0px;
}
.subBox .subList li {
font-size: 15px;
padding: 10px 0 10px 20px;
}
.subBox .subList li::before {
background-size: 7px;
}
.subBox .flex {
padding-bottom: 5%;
}
.subBox h3 {
font-size: 22px;
    margin-bottom: 10px;
    padding-bottom: 5px;
    letter-spacing: 0;
}
.subBox .subList p {
  font-size: 15px;
  margin-bottom: 15px;
}
}
/* .subBox おわり*/
/*.top_feature*/
.top_feature {
  position: relative;
  padding: 70px 0 0;
background: linear-gradient(90deg,#fff,#eff9ee);
margin-top: 0;
padding-bottom: 5px;
}
  .top_feature_title_bgimg {
    position: absolute;
    pointer-events: none;
    width: 100%;
    left: 0;
    top: 0;
    height: 600px;
  }
.top_feature_title_bgimg img {
border-radius: 200px;
 }
 .top_feature_title_bgimg_01 {
    width: 282px;
width: 220px;
    position: absolute;
    left: 0;
top: 200px;
    right: 50%;
    margin-right: 33%;
  }
  .top_feature_title_bgimg_02 {
width: 190px;
  position: absolute;
  left: 15%;
  right: 50%;
  margin-right: 18%;
top: 60px;
  }
  .top_feature_title {
font-size: 40px;
  padding-top: 5px;
  margin-bottom: 90px;
  }
.top_feature_title {
  display: grid;
  grid-template-columns: auto auto auto;
  grid-template-rows: 1fr auto;
  align-items: end;
  justify-content: center;
  gap: 0 0;
  font-family: "noto sans jp", sans-serif;
color: #555;
  line-height: 1.2;
font-weight: 900;
  letter-spacing: 0;
  position: relative;
  max-width: fit-content;
  margin: 0 auto 40px;
    margin-bottom: 40px;
letter-spacing: 10px;
}
.top_feature_title_name {
  grid-column: 2/4;
  grid-row: 1/2;
font-size: 25px;
  text-align: center;
  letter-spacing: 3px;
}
.top_feature_title_num {
  grid-column: 1 / 2;
  grid-row: 1/3;
  font-size: 650%;
color:#40e0d0;
  line-height: 1;
  align-self: center;
top: 30px;
  position: relative;
font-style: italic;
}
.top_feature_title_numAfter {
  grid-column: 2 / 3;
  grid-row: 2 / 3;
  font-size: 170%;
  letter-spacing: 0.1em;
}
.top_feature_title_main {
  grid-column: 3 / 4;
  grid-row: 2 / 3;
  font-size: 270%;
}
  .top_feature_title_bgimg_03 {
  width: 25%;
  position: absolute;
  left: 74%;
  top: 120px;
  }
.el-items .comment {
background: url(./images/ico_line02_left.svg) no-repeat left 60%,url(./images/ico_line02_right.svg) no-repeat right 60%;
    background-size: auto, auto;
  font-size: 16px !important;
  padding: 0 1.5em;
  width: fit-content;
  margin: 0 !important;
  background-size: 10px;
}
.el-items h3 span.line {
color: #7b736d;
background: linear-gradient(transparent 50%,rgba(22, 135, 145, 0.10) 50%) center bottom;
font-size: 120%;
  font-weight: bold !important;
  letter-spacing: 3px;
}
@media screen and (max-width: 544px) {
.top_feature_title_num {
top: 10px;
}
.top_feature_title_bgimg {
  display: none;
}
.top_feature {
padding: 0 0 5px 0;
}
.top_feature_title_name {
  font-size: 50%;
}
.top_feature_title_num {
  font-size: 300%;
}
.top_feature_title_numAfter {
  font-size: 100%;
}
.top_feature_title_main {
  font-size: 140%;
}
.top_feature_title_bgimg_01 {
  width: 30%;
  opacity: .4;
}
.top_feature_title_bgimg_01 {
  width: 30%;
  opacity: .4;
top: 150px;
}
.top_feature_title_bgimg_02 {
  width: 30%;
  opacity: .4;
top: 30px;
}
.top_feature_title_bgimg_03 {
  width: 30%;
  opacity: .4;
}
.top_feature_title {
text-shadow: 1px 1px 2px #fff, -1px 1px 2px #fff, 1px -1px 2px #fff, -1px -1px 2px #fff, 1px 0px 2px #fff, 0px 1px 2px #fff, -1px 0px 2px #fff, 0px -1px 2px #fff;
}
}
/*.top_feature end*/
/*pholosophy*/
.sc-pholosophy {
background-image: url("./images/ptn-bk.png");
background-color: #f7f7f7;
overflow: hidden;
}
.bg-logo{
background-image: url("./images/logo-icon.png");
background-size: 80%;
background-repeat: no-repeat;
}
.sc-pholosophy .bg-logo {
content: "";
position: absolute;
top: 0%;
right: -35%;
width: 100%;
height: 100%;
}

.sc-pholosophy .c-header__title {
color: #c4c4c4;
font-size: 90px;
margin-top: 0;
  padding-top: 6%;
}
.fillFFF{
background-color: rgba(255, 255, 255, 0.6);
}
.logobk{
background: url(./images/photo-02.png) center right -80px / contain no-repeat,url(./images/photo-01.png) center left -80px / contain no-repeat;
}
.sc-pholosophy .fillFFF{
padding-top: 50px;
}
.sc-pholosophy .el-item__thumb {
/*  position: absolute;*/
  left: 0;
top: 0;
  width: 100%;
  height: 100%;
}

.sc-pholosophy .el-item__thumb img {
/*position: absolute;*/
  top: 0;
  left: 0;
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.sc-pholosophy .el-item__content {
padding: 20px 30px;
  line-height: 10px;
font-size: 14px;
}
.sc-pholosophy .el-item__content .color {
color: #00437e;
  font-weight: bold !important;
  font-size: x-large;
  line-height: 1.5em;
  font-family: 'YuGothic','游ゴシック体','Hiragino Kaku Gothic ProN','ヒラギノ角ゴ ProN W3',sans-Serif !important;
}
.sc-pholosophy .el-item__content p{
margin-bottom: 18px;
  line-height: 1.8em !important;
}
.row{
  display: flex;
}

#footer_top h2::before, h2::after {
  display: none;
}
@media only screen and (min-width: 961px) {
  h2::after {
    bottom: -10px;
    left: 50px;
  }
}
@media only screen and (min-width: 961px) {
  h2::before {
    bottom: -10px;
    left: 50px;
  }
}
要素 {
}
.sc-pholosophy h2 {
font-size: 1.8em;
  text-align: left;
  margin-bottom: 10px;
  line-height: 1.8em;
}
@media (min-width: 545px){
.col-md-6 {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 auto;
  flex: 0 0 auto;
width: 40%;
}
.col-md-6.position-relative{
position: relative;
    width: 60%;
    right: 0%;
}
.col-md-6.position-relative.top{
width: 100%;
margin: 0 auto;
}
.sc-pholosophy .el-item__content.top {
font-size: 19px;
text-align: center;
}
}
@media (max-width: 768px){
.sc-pholosophy .el-item__content p {
font-size: 14px;
    line-height: 1.8em !important;
    margin-bottom: 10px;
}
 .sc-pholosophy .el-item__content.top p {
text-align: center;
}
.sc-pholosophy .el-item__content .color {
  font-size: 18px;
}
.sc-pholosophy .c-header__title {
  font-size: 40px;
}
.bg-logo {
top: 10% !important;
background-size: 100%;
right: 0 !important;
}
.logobk {
  background: url(./images/photo-02.png) top right -90px / 135% no-repeat,url(./images/photo-01.png) bottom left -100px / 120% no-repeat;
}
.fillFFF {
  background-color: rgba(255, 255, 255, 0.8);
}
.sc-pholosophy .fillFFF {
  padding-top: 10px;
}
.sc-pholosophy .el-item__content {
  padding: 18px 0
}
.sc-pholosophy .c-content {
  padding: 0 5%;
}
.c-header__title {
  margin-top: 0;
font-size: 40px !important;
}
}
/*sc-pholosophy*/
/*row__medical03*/
.row__medical03 .col {
width: 49%;
max-width: 725px;
padding-top: calc(200 / 1920 * 100vw);
margin: 1% 0;
}
.row__medical03 .col:before {
	content: "";
	background: url("./images/bg__medical01.jpg")no-repeat center / cover;
	width: 100%;
	height: calc(100% - calc(50 / 1920 * 100vw));
	position: absolute;
	left: 0;
	top: 0;
	z-index: -1;
}
.row__medical03 .col_r:before { background-image: url("./images/bg__medical02.jpg"); }
.row__medical03 .bgimg03::before {
background-image: url("./images/20260314_69s.jpg");
}
.row__medical03 .bgimg04::before {
background-image: url("./images/20260314_14s.jpg");
}
.row__medical03 .col:after {
	content: "";
	width: 100%;
	height: calc(100% - calc(50 / 1920 * 100vw));
	border: calc(20 / 1920 * 100vw) solid #ddd;
	opacity: .2;
	position: absolute;
	left: 0;
	top: 0;
	z-index: 0;
}
.row__medical03 .box {
width: 60%;
  max-width: 330px;
	background: url("./images/bg__medical08.svg")no-repeat right -1px bottom -1px / 100% auto;
}
.row__medical03 .btn {
	max-width: 140px;
}
.row__medical03 .btn a {
	height: calc(40 / 1920 * 100vw);
}
.row__medical03 .btn a:after {
	content: "";
	background: #fff;
	width: calc(25 / 1920 * 100vw);
	height: 1px;
	margin: auto;
	position: absolute;
	right: 0;
	top: 0;
	bottom: 0;
	transition: .3s;
}
.flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-align-items: flex-start;
  align-items: flex-start;
}
.por {
  position: relative;
  z-index: 1;
}
.bg_white {
  background-color: #fff !important;
}
.prl30 {
  padding-right: calc(30 / 1920 * 100vw);
  padding-left: calc(30 / 1920 * 100vw);
}
.pb40 {
  padding-bottom: calc(40 / 1920 * 100vw);
}
.pt30 {
  padding-top: calc(30 / 1920 * 100vw);
}
.por {
  position: relative;
  z-index: 1;
}
.mgn_l {
  margin-left: auto;
}
.prl40 {
  padding-right: calc(40 / 1920 * 100vw);
  padding-left: calc(40 / 1920 * 100vw);
}
.mb80 {
  margin-bottom: calc(80 / 1920 * 100vw);
}
.mgn_a {
  margin-left: auto;
  margin-right: auto;
}
::after {
  box-sizing: border-box;
  background-repeat: no-repeat;
}
.mb30 {
  margin-bottom: calc(30 / 1920 * 100vw);
}
.row__medical03 .btn {
  max-width: 140px;
}
.mgn_a {
  margin-left: auto;
  margin-right: auto;
}
.row__medical03 .btn a {
  height: calc(40 / 1920 * 100vw);
text-decoration: none;
}
.flex.ccc {
  -webkit-align-items: center;
  align-items: center;
  -webkit-justify-content: center;
  justify-content: center;
  text-align: center;
}
.bg_col07 {
  background-color: #f8657b;
}
.row__medical03 .btn a::after {
  content: "";
  background: #fff;
  width: calc(25 / 1920 * 100vw);
  height: 1px;
  margin: auto;
  position: absolute;
  right: 0;
  top: 0;
  bottom: 0;
  transition: .3s;
}
.fz36 {
font-size: 1.7rem;
}
.lh16 {
  line-height: 1.6;
}
.mb10 {
  margin-bottom: calc(10 / 1920 * 100vw);
}
.txt_center {
  text-align: center;
}
@media(min-width: 768px) and (max-width:1599px) {
.row__medical03 .btn a::after {
  width: calc(25 / 1599 * 100vw);
}
.row__medical03 .btn a {
height: 40px;
}
.mb10 {
margin-bottom: 10px;
}
.mb30 {
margin-bottom: 30px;
}
.mb80 {
margin-bottom: 80px;
}
	.row__medical03 .col {
		padding-top: calc(200 / 1599 * 100vw);
	}
	.row__medical03 .col:before {
		height: calc(100% - calc(50 / 1599 * 100vw));
	}
	.row__medical03 .col:after {
		height: calc(100% - calc(50 / 1599 * 100vw));
		border: calc(20 / 1599 * 100vw) solid #ddd;
	}
.prl40 {
padding-right: 0px;
    padding-left: 0px;
}
}
  @media (max-width: 767px){
.row__medical03 .col_l {
  margin-bottom: calc(60 / 750 * 100vw);
}
.row__medical03 .col {
  width: 100%;
  max-width: 100%;
  padding: 0;
margin-bottom: calc(60 / 750 * 100vw);
}
.row__medical03 {
display: block;
margin-bottom: calc(60 / 750 * 100vw);
}
	.row__medical03 .col:before {
		content: "";
		display: block;
		height: calc(484 / 750 * 100vw);
		position: relative;
		left: auto;
		top: auto;
	}
	.row__medical03 .col:after {
		height: calc(484 / 750 * 100vw);
		border-width: calc(20 / 750 * 100vw);
	}
	.row__medical03 .box {
		width: 100%;
		max-width: calc(646 / 750 * 100vw);
		margin: calc(-80 / 750 * 100vw) auto 0;
		background-size: calc(280 / 750 * 100vw) auto;
		padding: 6vw 5vw 8vw;
	}
	.row__medical03 .ttl {
font-size: 175%;
margin-bottom: 5%;
	}
.row__medical03 .txt {
font-size: 87.5%;
margin-bottom: 5vw;
height: 80px;
	}
	.row__medical03 .btn {
max-width: 100%;
	}
	.row__medical03 .btn a {
		height: calc(60 / 750 * 100vw);
	}
	.row__medical03 .btn a:after {
		width: calc(25 / 750 * 100vw);
	}
}
/*row__medical03 おわり*/
/*　row__medical02 */
.bgptn01 {
background: url("./images/ptn01.png") left top;
padding: 30px 50px;
}
.row__medical02 .col {
width: 24%;
  max-width: 460px;
margin-bottom: 2%;
}
.col a.db{
  text-decoration: none;
  display: block;
}
.row__medical02 .img_medical02{
  position: relative;
  z-index: 1;
padding-right: 10px;
padding-bottom: 10px;
margin-bottom:20px;
}
.oh {
  overflow: hidden;
}
.row__medical02 .col .img_medical02 img {
  transition: .5s;
}
  .row__medical02 .col .img::after {
    width: calc(100% - calc(10 / 1599 * 100vw));
    height: calc(100% - calc(10 / 1599 * 100vw));
  }
.row__medical02 .col .img_medical02::after {
  content: "";
  position: absolute;
  width: calc(100% - calc(10 / 1920 * 100vw));
  height: calc(100% - calc(10 / 1920 * 100vw));
  right: 0;
  bottom: 0;
  border-right: 1px solid #332f26;
  border-bottom: 1px solid #332f26;
}
.ttl__medical02 {
background: url("./images/arw04.svg") right 15px top 15px no-repeat;
    background-size: auto;
margin-bottom: 5px;
  text-align: left;
  padding-left: 10px;
  background-size: 25px;
min-height: 90px;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  }
.ttl__medical02 .ja {
font-size: 22px;
  line-height: 1.4;
  margin-bottom: 0;
  font-weight: bold !important;
  width: 100%;
}
.ttl__medical02 .en {
color: #999 !important;
  font-size: 1.1rem;
  line-height: 1.3;
  display: block;
}
.row__medical02 .col .txt {
  text-align: initial;
  text-align: left;
  padding-left: 10px;
font-size: 16px;
}
@media screen and (max-width: 700px){
.indexBnr02Btn {
  font-size: 75.7%;
}
.row__medical02 .col {
  width: 100%;
margin-bottom: 10%;
}
.bgptn01 {
  padding: 30px 25px;
}
.ttl__medical02 {
  background: url("./images/arw04.svg") right 0px top 15px no-repeat;
  padding-right: 30px;
  margin-bottom: 15px;
  padding-left: 5px;
background-size: 35px;
}
.row__medical02 .col .txt {
  padding-left: 0px;
  font-size: 16px;
}
.ttl__medical02 .ja {
  font-size: 26px;
}
}
/*　row__medical02 おわり*/
/*sc-feature*/
.sc-feature {
  position: relative;
}
.sc-feature:before {
/* content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #f2eeeb;
  opacity: 0.85;*/
}
.sc-feature .sc__wrap {
  position: relative;
}
.sc-feature .el-item {
position: relative;
}
.sc-feature .el-item::after{
content: "";
  position: absolute;
  right: 40%;
  bottom: -10px;
  width: 100%;
background-color: rgba(235, 246, 241, 0.5);
  z-index: -1;
  height: 60%;
}
.sc-feature .el-item.ms-auto::after{
left: 40%;
}
.sc-feature .el-item__header {
padding: 35px 50px;
background: -webkit-gradient(linear, left top, right top, from(#4d99c0), to(rgba(77, 153, 192, 0.4)));
background: linear-gradient(to right, #E3C7A4, #DD9D84);
background: transparent linear-gradient(300deg, #A2907B 0%, #5a4c41 100%) 0% 0% no-repeat padding-box;
}
.sc-feature .el-item__title {
  font-family: "Noto Serif JP", serif;
  font-weight: 300;
  position: relative;
  font-size: 40px;
  line-height: 1;
  letter-spacing: 0.075em;
  color: #fff;
}
.sc-feature .el-item__title span {
  font-size: 40px;
  font-weight: 400;
}
.sc-feature .el-item__sub {
position: relative;
top: 20px;
font-family: "Trajan Pro";
font-weight: bold;
color: #fff;
font-size: 36px;
line-height: 1;
letter-spacing: 0.05em;
opacity: 0.5;
padding-left: 2%;
}
.sc-feature .el-item__content {
  font-size: 18px;
padding: 40px 50px;
}
.sc-feature .el-item__content h3 {
font-size: 30px;
  line-height: 1.7em;
  text-align: left;
  padding-bottom: 10px;
  border-bottom: 1px solid #000;
margin-bottom: 20px;
}
.feature-bk {
  position: absolute;
  width: 130px;
  right: 0;
  bottom: 0;
  opacity: .8;
}
.sc-feature .el-item__content h3 .index_icn_pickupnumber01{
font-size: 170%;
  line-height: 1.2em !important;
  letter-spacing: -0.05em;
display: inline-block;
  margin-right: 3%;
}
.sc-feature .el-item__content h3 .index_icn_pickupnumber01::before {
position: absolute;
/*content: "POINT";*/
  font-size: 17.1%;
  letter-spacing: 0.05em;
  line-height: 1em;
  left: -20%;
  top: 50px;
  transform: translateY(-50%);
  z-index: 3;
}
.sc-feature .el-item__content h3 .index_icn_pickupnumber01::after {
position: absolute;
/*content: "";*/
  font-size: 17.1%;
  letter-spacing: 0.05em;
  line-height: 1em;
  background: #fff;
  width: 4.5em;
  height: 1.5em;
  left: -20%;
  top: 50px;
  transform: translateY(-50%);
  z-index: 2;
}
.sc-feature .el-item__content p{
margin: 0;
}
.sc-feature .el-item .el-item__thumb {
position: relative;
  top: 0;
  left: 0;
  width: 100%;
min-height: 330px;
}
.sc-feature .el-item .el-item__thumb img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
height: 100%;
object-fit: cover;
border-radius: 20px;
box-shadow: 10px 10px 0px #fffbc3 !important;
/*filter: drop-shadow(0 0 15px rgba(139,106,73,0.3));
box-shadow: 2px 2px 15px rgba(176, 176, 184, 0.7);*/
}
.sc-feature .el-item .el-item__thumb img.right {
  box-shadow: -10px 10px 0px #e5ffb8 !important;
}
.index_icn_pickupnumber01 {
width: 75px;
  height: 75px;
  border-radius: 50%;
  text-align: center;
  font-size: xxx-large;
  margin-bottom: 9px;
  color: #ccc;
  border: 1px solid #ccc;
}
.index_icn_pickupnumber01 span {
color: #40e0d0;
}
@media (max-width: 922px){
.sc-feature .el-item .el-item__thumb img {
object-fit: cover;
box-shadow: none;
}
}
.sc-feature .el-item:nth-child(2) .el-item__header {
/*background: linear-gradient(to right, #ff7fdf, rgba(251, 93, 93, 0.4));
background: transparent linear-gradient(300deg, #6F6C9F 0%, #282652 100%) 0% 0% no-repeat padding-box;*/
}
.sc-feature .el-item:nth-child(3) .el-item__header {
/*background: -webkit-gradient(linear, left top, right top, from(#b09820), to(rgba(176, 152, 32, 0.4)));
background: linear-gradient(to right, #b09820, rgba(176, 152, 32, 0.4));
background: transparent linear-gradient(300deg, #6F6C9F 0%, #282652 100%) 0% 0% no-repeat padding-box;*/
}
.sc-feature .el-item:nth-child(4) .el-item__header {
    background: linear-gradient(to right, #b0208a, rgb(176 32 176 / 40%));
}
.sc-feature .el-item:nth-child(5) .el-item__header {
  background: linear-gradient(to right, #b02020, rgb(220 69 54 / 40%));
}
.sc-feature .el-item.-large {
  width: 92%;
  background: #fff;
  margin-bottom: 100px;
}
.sc-feature .el-item.-large .el-item__header {
  background: -webkit-gradient(linear, left top, left bottom, from(rgb(132, 178, 47)), to(rgba(132, 178, 47, 0.4)));
  background: linear-gradient(to bottom, rgb(132, 178, 47), rgba(132, 178, 47, 0.4));
padding: 5px 0 40px 0;
}
.sc-feature .el-item.-large .el-item__excerpt {
  font-family: "Noto Serif JP", serif;
  font-weight: 300;
  font-size: 32px;
  color: #fff;
  letter-spacing: 0.05em;
}
.sc-feature .el-item.-large .el-item__content {
  position: relative;
padding: 88px 10% 88px 0%;
  text-shadow: -1px 1px 2px rgba(255, 255, 255, 0.7);
}
.sc-feature .el-item.-large .el-item__content__bg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.ms-auto {
  margin-left: auto !important;
}
.col-xl-6 {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 auto;
  flex: 0 0 auto;
  width: 60%;
z-index: 1;
}
.col-xl-5 {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 auto;
  flex: 0 0 auto;
  width: 50%;
z-index: 1;
}
.row {
  display: flex;
}
.col-lg-55 {
  position: relative;
width: 55%;
}
.justify-content-center {
  -webkit-box-pack: center !important;
  -ms-flex-pack: center !important;
  justify-content: center !important;
margin: 2% 0 1%;
}
.c-header__title {
font-size: 80px;
color: #e9e9e9;
line-height: 1;
  padding-bottom: 0;
}
.c-header__sub {
font-size: 30px;
  letter-spacing: 0.1em;
margin: 0;
  text-align: center;
  line-height: 1.5em;
}
  @media (min-width: 798px){
.d-sm-flex {
  display: -webkit-box !important;
  display: -ms-flexbox !important;
  display: flex !important;
}
.col-lg-45 {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 auto;
  flex: 0 0 auto;
width: 50%;
padding: 5%;
}
}
@media (max-width: 544px){
.sc-feature .el-item__content h3 .index_icn_pickupnumber01::before {
left: -20%;
top: 33px;
}
.sc-feature .el-item__content h3 .index_icn_pickupnumber01::after {
left: -20%;
top: 33px;
}
.sc-feature .el-item__title::before {
content: none;
}
.sc-feature .el-item__content h3 {
letter-spacing: 0;
font-size: 28px;
    text-align: center;
    line-height: 2em;
margin: 5% 0;
}
.el-items h3 span.line {
font-size: 25px !important;
}
.sc-feature .el-item {
  width: 100%;
}
.sc-feature .el-item__header {
padding: 20px 0;
}
.sc-feature .el-item__sub {
text-align: center;
}
.sc-feature .el-item__title {
  font-size: 30px;
}
.sc-feature .el-item .el-item__thumb {
min-height: 220px;
margin-bottom: 25px;
}
.sc-feature .el-item__content {
padding: 2% 0 10%;
}
.feature-bk {
  opacity: .5;
bottom: -60px;
}
.sc-feature .el-item__content p{
    margin: 2% auto !important;
    font-weight: initial;
    line-height: 1.5em !important;
    background-size: 10px;
}
.sc-feature .el-item__content h3 .index_icn_pickupnumber01 {
  display: block;
  line-height: 1.5em !important;
}
.sc-feature {
  padding-bottom: 0;
}
.col-lg-55 {
  width: 100%;
}
}
@media (max-width: 544px){
.sc-pholosophy .el-item__content {
padding: 0;
}	
.sc-pholosophy .c-header__title {
  font-size: 40px;
}
.bg-logo {
top: 10% !important;
background-size: 100%;
right: 0 !important;
}
.c-header__title {
font-size: 50px !important;
}
.c-header__sub {
font-size: 24px;
    letter-spacing: 0;
margin: 10px 0 0px;
}
.c-header__sub.trouble {
  font-size: 30px;
  line-height: 1.5;
}
.sc-feature .el-item.-large {
  width: 100% !important;
margin-bottom: 30px !important;
}
.sc-feature .el-item__sub {
  top: 0 !important;
}
.sc-feature .el-item.-large .el-item__excerpt {
font-size: 22px !important;
line-height: 1.5em;
}
.row {
  display: block;
}
.col-xl-6 {
width: 100% !important;
}
.sc-feature .el-item.-large .el-item__content {
padding: 5% !important;
font-size: medium;
}
.sc-feature .el-item.-large .el-item__content__bg {
background-position-x: left -250px !important;
}
.sc-feature .el-item.-large .el-item__content__bg::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(255, 255, 255, 0.8);
}
.aboutSec__contents {
  margin-bottom: 0px;
}
}
/*sc-feature　おわり*/
/*.p-top-main__philosophy*/
.p-top-main__philosophy-wrapper {
 display:flex;
 display:-ms-flexbox;
 flex-direction:row;
 justify-content:center;
}
.p-top-main__philosophy-img {
 display:flex;
 display:-ms-flexbox;
 flex-direction:row;
 z-index:1;
width: 45%;
  margin-right: 10%;
}
.p-top-main__philosophy-img__lg-item {
width: 40rem;
  height: 40rem;
background-size:100%;
background-repeat:no-repeat;
background-position:center;
background-image: url("./images/img_philosophy_lower.jpg");
}
.p-top-main__philosophy-img__sm {
margin: 20rem 0em 0 -15rem;
  z-index: 1;
  width: 18rem;
  height: 18em;
}
.p-top-main__philosophy-content {
padding: 7rem 0 0 0;
}
.p-top-main__philosophy-content-header {
 position:relative;
padding: 1rem 1em 2rem 0rem;
}
.p-top-main__philosophy-content-header::before {
 position:absolute;
 top:.3rem;
 right:-8rem;
 content:"";
width: 110vw;
 height:1px;
 background-color:#e3e3e3
}
.p-top-main__philosophy-content-header::after {
 position:absolute;
bottom: .5rem;
 right:-8rem;
 content:"";
width: 110vw;
 height:1px;
 background-color:#e3e3e3;
 z-index:-1
}
.p-top-main__philosophy-content-header-ttl {
position: relative;
font-size: 3rem;
color: #393327;
width: 100%;
text-align: left;
display: inline-block;
line-height: 1.5em;
}
.introSec .p-top-main__philosophy-content-header-ttl::before {
position: absolute;
bottom: -1.5rem;
  right: 0;
  content: "";
  width: 110vw;
  height: 1px;
  background-color: #e3e3e3;
}
.p-top-main__philosophy-content-header-ttl::after {
 position:absolute;
bottom: -1.5rem;
left: 1em;
 content:"";
 width:8rem;
 height:1px;
 background-color:#38342c;
 z-index:1
}
.p-top-main__philosophy-content-header-ttl.c-ttl__sec-main::after {
  bottom: -.5rem;
}
.p-top-main__philosophy-content-body {
padding: 1rem 0em 2rem 0rem;
}
.p-top-main__philosophy-content-body-ttl {
font-size: 2rem;
line-height: 1.8;
}
.p-top-main__philosophy-content-body-txt {
margin: 1rem 0;
font-size: 1rem;
line-height: 2 !important;
}
.c-ttl__sec-sub {
display: block;
color: #666;
padding: 0 0 1% 0%;
}
.doctor-list {
  background: #525252;
  padding: 0px 15px;
  margin: 8px 0;
  display: inline-block;
  color: #fff;
  box-shadow: 0 0 2px #ede9e1 inset;
  font-size: medium;
}
.keirekibox{
padding: 1% 7% 2%;
}
.keirekibox ul li {
  font-size: small;
  line-height: 2;
  list-style: disclosure-closed;
}
@media screen and (max-width: 544px) {
 .p-top-main__philosophy-wrapper {
flex-direction: column;
margin: 0;
padding: 0;
 }
.p-top-main__philosophy-img__lg-item {
height: 22rem;
 }
 .p-top-main__philosophy-img__sm {
height: 15rem;
margin: 10rem 0 0 -15rem;
 }
.p-top-main__philosophy-content-header-ttl {
font-size: 2.3rem;
margin-bottom: 20px;
text-align: center;
padding: 0;
}
.introSec{
text-align: center;
}
.c-ttl__sec-sub {
text-align: center;
padding: 0;
}
 .p-top-main__philosophy-content {
  padding:0
 }
 .p-top-main__philosophy-content-header {
  position:relative;
padding: 2em 0 0 0;
 }
 .p-top-main__philosophy-content-header::before {
top: .3rem;
right: 0rem;
display: none;
 }
 .p-top-main__philosophy-content-header::after {
bottom: -1rem;
right: 0rem;
display: none;
 }
 .p-top-main__philosophy-content-header-ttl::after {
width: 8rem;
bottom: -1rem;
right: 1rem;
left: 35%;
right: 35%;
 }
.introSec .p-top-main__philosophy-content-header-ttl::before {
 bottom: -1rem;
}
 .p-top-main__philosophy-content-body-ttl {
line-height: 1.5em;
text-align: center;
font-size: 1.6rem;
 }
.p-top-main__philosophy-content-body {
padding: 0% 5%;
margin-bottom: 70px;
}
 .p-top-main__philosophy-content-body-txt {
margin: 1rem 0;
font-size: 1rem;
line-height: 1.5 !important;
 }
.p-top-main__philosophy-img {
width: 100%;
}
.keirekibox {
  padding: 1%;
}
.keirekibox p {
font-size: smaller;
}
.keirekibox ul li {
line-height: 1.5em;
}
}
/*.p-top-main__philosophy 終わり*/
/*.sw_menu*/

.tab-box02 {
background: rgba(132, 132, 132, 0.8);
padding: 3%;
}
.c-header__title {
  font-size: 80px;
  color: #e9e9e9;
  line-height: 1;
  padding-bottom: 0;
text-align: center;
}
.sw_menu ul.sw_liststyle1 {
list-style: none;
width: 100%;
overflow: hidden;
max-width: 1200px;
margin: 0 auto;
}
.sw_menu ul.sw_liststyle1 li {
float: left;
  width: 18%;
  text-align: center;
  margin: 1%;
}
.sw_menu ul.sw_liststyle1 li:hover {
	-moz-opacity: 0.8;
	opacity: 0.8;
}
.sw_menu ul.sw_liststyle1 li a img {
height: auto;
width:100%;
}
.sw_menu ul.sw_liststyle1 li a {
text-decoration: none;
}
.sw_menu ul.sw_liststyle1 li a span {
display: block;
padding: 10px;
text-align: justify;
text-align: center;
font-size: 1.2em;
font-weight: 700;
background: #fff;
line-height: 1.1em;
}
.sw_menu ul.sw_liststyle1 li a span.sw_menu_ttl {
color: #000;
}
.sw_menu ul.sw_liststyle1 li a span.sw_menu_ttl p{
line-height: 1.5em;
  margin-bottom: 3%;
}
.sw_menu ul.sw_liststyle1 figure {
    position: relative;
    margin: 0 0 25px;
}
.sw_menu ul.sw_liststyle1 figure figcaption {
    position: absolute;
}
.cp_imghover {
overflow: hidden;
}
/*zoomin*/
.cp_zoomin img {
-webkit-transition: all 1s ease;
transition: all 1s ease;
}
.cp_zoomin img:hover {
-webkit-transform: scale(1.3,1.3);
transform: scale(1.3,1.3);
}
@media screen and (max-width:544px){
.sw_menu ul.sw_liststyle1 li {
margin-right: 1%;
margin-bottom: 1%;
width: 48.5%;
}
.sw_menu ul.sw_liststyle1 li:nth-child(2n) {
margin-right: 0;
}
.sw_area3 ul li .flow-ttl {
letter-spacing: 0;
}
.sw_menu ul.sw_liststyle1 figure {
margin: 0 0 5px;
}
.sw_area3 ul li .text_area {
padding: 5% 0 5% 5%;
}
.sw_area2 ul li .flow-ttl{
padding: 20px 0;
}
}
/*.sw_menu 終わり*/
/* .prof02*/
.prof02section{
box-shadow: 0 3px 6px #bebebe;
  display: flex;
}
.prof02 {
background-color: rgba(255, 255, 255, 0.95);
  margin: 50px 40px;
  padding: 40px 20px 20px 40px;
  margin: 0 auto;
}
.prof02.flex{
/*align-items: flex-end;*/
width: 100%;
background-color:#f5faf8;
}
.prof02section.doctor2 .prof02.flex {
  flex-direction: row-reverse;
}
.prof02section.doctor2 .prof02_pic {
  padding: 0px 40px 0 0px;
}
.prof02_inner {
  width: 55%;
}
.prof02_namebox {
position: relative;
margin-bottom: 30px;
}
.prof02 .position {
font-size: 22px;
  width: 75px;
  height: 75px;
  border: 1px solid #555;
  text-align: center;
  padding: 5px;
  line-height: 1.4em !important;
margin-right: 10px;
  color: #2e2e2e;
  top: 5px;
  position: relative;
}
.prof02_name {
font-size: 45px;
margin: 0 0 0 9px;
}
.prof02_en {
margin: 30px 0 0 40px;
  font-size: 25px;
  color: #c3b69f;
}
.prof02_namebox::after {
content: "";
  display: block;
  position: absolute;
  bottom: 0px;
  border-top: 1px solid;
  width: 100%;
}
.prof02 .prof_vertical_txt {
 background-color: rgba(156, 139, 128, 0.8);
  color: #fff;
  border-top: 7px solid rgb(123, 115, 109);
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
  text-orientation: upright;
  font-feature-settings: initial;
  text-align: center;
  line-height: 2.2;
  letter-spacing: 5px;
  font-size: 15px;
  padding: 2% 0;
}
.prof02 .check {
  margin-left: max(.714vw,9px);
  font-size: max(1.041vw,13px);
  line-height: 1.7;
list-style: none;
}
.prof02 .check li {
  position: relative;
padding-left: 1em;
  text-indent: -1em;
}
.prof02 .line2 {
  margin-left: max(1.786vw,23px);
  display: block;
}
.prof02 .check li::before {
  position: relative;
  content: "";
  width: max(1vw,13px);
  height: max(.857vw,11px);
background-image: url(./images/prof_check.svg);
  background-size: 100% 100%;
  display: inline-block;
  margin-right: max(.714vw,9px);
}
.certificate2 {
  margin: max(1.786vw,23px) 0 0 max(2.5vw,32px);
}
.certificate2 li {
  width: max(8.571vw,111px);
}
.prof02 img {
width: 400px;
}
.prof02_02 {
  margin-top: max(1.429vw,18px);
  justify-content: flex-start;
}
.prof02 .list2 {
  margin-left: max(.929vw,12px);
  font-size: max(1.041vw,13px);
  line-height: 1.7;
list-style: none;
}
.prof02 .list2 li {
  position: relative;
  letter-spacing: max(.036vw,0px);
}
.prof02 .list2 li::before {
  content: "・";
  display: inline-block;
  margin-right: max(.929vw,12px);
  position: relative;
}
.certificate3 {
width: 250px;
flex-wrap: wrap;
justify-content: space-around;
}
.certificate3 li {
width: 30%;
}
.certificate3 li.yoko{
  width: 50%;
  margin: 0 25%;
  height: 0%;
}
.prof02_pic {
padding: 0px 0 0 20px;
width: 40%;
}
.flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
}
@media screen and (max-width: 544px) {
.prof02 {
width: 99%;
    margin: 1%;
padding: 40px 5px;
    flex-wrap: wrap-reverse;
}
.prof02section.doctor2,.prof02section{
  height: auto;
}
.prof02_name {
font-size: 30px;
}
.prof02_namebox {
  flex-wrap: wrap;
 margin-bottom: 30px;
}
.prof02_en {
margin: 20px 0 0 10px;
    font-size: 16px;
}
.prof02 .position {
font-size: 16px;
    width: 45px;
    height: 45px;
    line-height: 1.2em !important;
    padding: 1px;
}
.prof02_pic,.prof02section.doctor2 .prof02_pic {
padding: 20px 60px;
width: 100%;
}
.prof02_inner {
  width: 100%;
}
.prof02 .flex {
  flex-wrap: wrap;
}
.prof02 .prof_vertical_txt {
width: 100%;
writing-mode: initial;
margin-bottom: 5%;
}
.certificate2,.certificate3 {
  justify-content: center;
}
.certificate3 {
  margin: 0;
flex-flow: wrap;
width: 100%;
justify-content: space-evenly;
}
.certificate3 li {
  width: 28%;
}
.certificate3 li.yoko {
  width: 50%;
  margin: 0 25%;
height: 55%;
}
}
/* .prof02 おわり*/
/* =====================================
top_concept_area
===================================== */

.top_concept_area {
	position: relative;
	padding: 50px 0 55px !important;
max-width: 1600px;
  margin: 0 auto;
}

.top_concept_area:before {
	position: absolute;
	content: "";
background: rgb(94, 94, 94);
	width: 33%;
	height: 100%;
	right: 0;
	top: 0;
}

.top_concept_area .tl01 {
font-family: 'Noto Serif JP', serif;
font-size: 30px;
letter-spacing: 0.05em;
font-weight: 600;
display: block;
line-height: 1;
margin-bottom: 0.2em;
padding: 0;
}

.top_concept_area .tl02 {
font-size: 35px;
letter-spacing: 0;
font-weight: 600;
display: block;
line-height: 2;
margin-bottom: 10px;
padding: 0;
}

.top_concept_area .tl03 {
	color: #B4A464;
	font-size: 1.8rem;
	letter-spacing: 0.2em;
	font-family: "秀英明朝 M", serif;
	padding-left: 65px;
	position: relative;
}

.top_concept_area .tl03:before {
	position: absolute;
	content: "";
	background: #B4A464;
	width: 48px;
	height: 1px;
	top: 50%;
	left: 0%;
	-webkit-transform: translate(0%, -50%);
	transform: translate(0%, -50%);
	margin-top: 1px;
}
.top_concept {
width: 50%;
}
.top_concept h2 {
font-size: 1.8em;
  text-align: center;
  line-height: 1.8em;
  margin-bottom: 20px;
}
.top_concept_area .txt {
line-height: 2.2 !important;
  color: #555;
}

.btn_block {
	margin-top: 50px;
}

.top_concept_area .btn_block .top_btn {
	margin-left: auto;
	margin-right: auto;
}

.top_btn {
	background: #4A331A;
	width: 300px;
	display: block;
	text-align: center;
	text-decoration: none !important;
	color: #fff;
font-size: 1.2rem;
	letter-spacing: 0.05em;
	font-family: 'Noto Serif JP', serif;
	padding: 13px;
margin: 0 auto;
}
.top_btn::before {
  font-family: "FontAwesome";
  content: "\f105";
padding: 0 3%;
}
.top_concept_area > div > div {
	/*! position: relative; */
}

.top_concept_area > div:before {
position: absolute;
content: "";
background: url(./images/IMG_3711-2s.jpg) no-repeat center center /contain;
width: 45%;
height: 650px;
  right: 0px;
}
.elementor-row{
max-width: 1200px;
  margin: 0 auto;
}
@media screen and (max-width: 922px) {
.top_concept_area {
  padding: 50px 30px 55px !important;
}
.top_concept_area::before {
width: 31%;
}
.top_concept_area > div::before {
  right: 20px;
}
.top_concept_area .tl01 {
font-size: 25px;
}
.top_concept_area .tl02 {
line-height: 1.5em;
margin: 7% 0;
}
}
@media screen and (max-width: 544px) {
	.top_concept_area {
padding: 10vw 0 0 0 !important;
	}
	.top_concept {
width: 90%;
margin: 0 auto;
	}
	.top_concept_area:before {
		height: 52vw;
		top: inherit;
		bottom: 0;
		width: 100%;
		z-index: -1;
		display: none;
	}
	.top_concept_area .tl01 {
		font-size: 1.3rem;
		margin-bottom: 0.5em;
	}
	.top_concept_area .tl02 {
font-size: 27px;
margin-bottom: 10px;
	}
	.top_concept_area .tl03:before {
		width: 14vw;
	}
	.top_concept_area .tl03 {
		padding-left: 18vw;
	}
	.top_concept_area .tl {
margin-bottom: 5vw;
    font-size: 1.7em;
    letter-spacing: 0;
	}
	.top_concept_area .btn_block {
		margin-top: 8vw;
	}
	.top_btn {
		width: 53vw;
		padding: 4vw;
	}
	.top_concept_area > div:before {
width: 80%;
right: 0;
height: 96vw;
left: 0;
bottom: 10vw;
margin: 0 auto;
display: none;
	}
.top_concept_area .txt {
font-size: 1em;
    line-height: 2 !important;
}
}
/* =====================================
top_concept_area 終わり
===================================== */
/* policy-------------------------------- */
.policy{
position: relative;
background: #f4ffef;
background-repeat: repeat;
background-image: none;
background-size: auto;
background: url("./images/pattern.jpg") repeat center / auto;
background-repeat: no-repeat;
background-position: top center;
background-size: cover;
margin-top: 5% !important;
}

.policy:before{
content: "";
width: 500px;
  height: 600px;
  background-image: url(./images/doctor01.jpg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  position: absolute;
top: -30px;
  filter: drop-shadow(0 0 15px rgba(139,106,73,0.2));
}
.policy.re::before {
  background-image: url(./images/IMG_6817s.jpg);
right: -5%;
left: auto;
}
.policy.re{
  margin-top: 5% !important;
}
.policy.re .tit-area p {
  padding: 3% 18% 0 5%;
}
.policy.re .eng,.policy.re .tit-area{
  left: auto;
}
.policy.re .dr-certification {
  right: 1%;
left: auto !important;
}
/*no*/.no-webp .policy:before{ background-image: url("./images/policy-catch.png"); }

.policy .eng{
font-size: 6em;
  left: 45%;
  padding: 0 5%;
  position: relative;
color: #c5c5c5;
margin-bottom: 0;
}
.policy .tit-area{
width: 60%;
margin: 0 10px;
position: relative;
  left: 45%;
}
.policy .tit-area h2{
color: #333;
  font-size: 2em;
  line-height: 1.5;
padding: 0 5%;
  text-align: inherit;
  margin-top: 0;
  letter-spacing: 0;
}
.policy .tit-area p{
width: 100%;
text-align: justify;
line-height: 2 !important;
padding: 3% 15% 0 5%;
}
.policy .in{ display: flex; justify-content: space-between; margin-bottom: 140px; }
.policy .in .box{ width: 280px; position: relative; }
.policy .in h3{ width: 60px; height: 115px; display: flex; align-items: center; justify-content: center; border-radius: 40px;
	font-size: 2.8rem; color: #9f8368; background: #dee4df; position: absolute; top: 0; right: 0;
	writing-mode: vertical-rl; -ms-writing-mode: tb-rl;
	-moz-font-feature-settings: "vkrn", "vpal"; -webkit-font-feature-settings: "vkrn", "vpal"; font-feature-settings: "vkrn", "vpal";  }
.policy .in .txt{ text-align: center; color: #9f8368; font-size: 1.5rem; line-height: 1.7; padding-top: 20px; position: relative; }
.policy .in .txt:after{ content: ""; width: 280px; height: 280px;
	background-repeat: no-repeat; background-position: center; background-size: cover;
	position: absolute; top: -140px; left: 0; z-index: -1; mix-blend-mode: multiply; }

.policy .in .box:nth-child(1) .txt:after{ background-image: url("./images/policy01-bg.png"); }
.policy .in .box:nth-child(2) .txt:after{ background-image: url("./images/policy02-bg.png"); }
.policy .in .box:nth-child(3) .txt:after{ background-image: url("./images/policy03-bg.png"); }
/*no*/.no-webp .policy .in .box:nth-child(1) .txt:after{ background-image: url("./images/index/policy01-bg.png"); }
/*no*/.no-webp .policy .in .box:nth-child(2) .txt:after{ background-image: url("./images/index/policy02-bg.png"); }
/*no*/.no-webp .policy .in .box:nth-child(3) .txt:after{ background-image: url("./images/index/policy03-bg.png"); }
.policy__links {
background: #c77765;
  color: #faf5ea;
  text-decoration: none;
  border-radius: 9vw;
  padding: 10px 50px;
}
@media screen and (max-width: 599px) {
.policy{
border-radius: 0 85px 0 0;
margin-top: 25% !important;
padding: 180px 0 10px;
}
.policy:before{
width: 100%;
    height: 350px;
    left: 0;
    top: -100px;
}
	
	.policy .eng{ font-size: 4rem;
    line-height: 1;
    padding: 0 5%;
    left: 0;
    margin-top: 12%;
    text-align: center;}
	.policy .tit-area{ width: 100%; display: inline; margin-bottom: 45px;left: 0;margin: 0;}
	.policy .tit-area h2{
text-align: center;
margin-bottom: 15px;
    padding: 0;
font-size: 20px;
    letter-spacing: 0;
	}
	.policy .tit-area p{ width: 100%; border-left: none; padding: 0 5% 5% !important;font-size: .9em;}
	
	.policy .in{ display: block; margin-bottom: 30px; }
	.policy .in .box{ width: 100%; }
	.policy .in .box .photo{ text-align: center; }
	
	.policy .in .txt{ padding-bottom: 70px; }
	.policy .in .txt:after{ left: calc(50% - 140px); }
	
	.policy .in h3{ right: calc(50% - 140px); }
}
.dr-certification {
width: auto;
  position: absolute;
top: 380px;
background: linear-gradient(300deg, rgba(152, 139, 139, 0.6), rgb(152, 139, 139), rgb(152, 139, 139));
  color: #fff;
padding: 1em 2em;
  left: 1%;
font-size: 13px;
}
.dr-certification p.big2{
font-size: 1.5em;
}
.dr-certification p.big{
font-size: 1.3em;
}
@media only screen and (max-width: 640px) {
.dr-certification {
width: 99%;
font-size: 11px;
    left: 0;
    bottom: auto;
top: 150px;
    margin: 0 auto;
    right: 0;
padding: 1em;
}
.dr-certification p.big2{
font-size: 1.3em;
}
.dr-certification p.big{
font-size: 1.1em;
}
.policy .content.dr{
top: 200px;
    position: relative;
margin-bottom: 180px;
}
.policy.re::before {
  right: 0;
}
.policy.re .content.dr {
    top: 250px;
    margin-bottom: 250px;
  }
}
/* policy　終わり---------------------------- */
/*#indexBnr02*/
#indexBnr02 { overflow: hidden;}
.indexBnr02List {}
.indexBnr02List li { float: left; width: calc( ( 100% - 16px )/2 ); margin: 0 16px 16px 0; text-align: center; line-height: 1.2;list-style: none;}
.indexBnr02List li:nth-child(2n) { margin-right: 0;}
.indexBnr02List li a { display: block; position: relative; }
.indexBnr02Img {}
.indexBnr02Btn { position: absolute; bottom: 0; right: 0; font-size: 85.7%; min-width: 80%; padding: 7px 8px; color: #FFF; background: #988b8b; text-align: right; box-sizing: border-box;}
.indexBnr02Btn span { display: inline-block; padding: 0 18px 0 0; background: url(images/icon_arrow01_wh.png) 100% 50% no-repeat; background-size: 12px auto; transition: all .25s ease-in-out;}
.indexBnr02Btn:hover span { background: url(images/icon_arrow01_wh.png) 97.5% 50% no-repeat; background-size: 12px auto;}
@media screen and (min-width: 700px) {	
#indexBnr02 { /*overflow: hidden;*/}
.indexBnr02List { width: 1200px; margin: 3% auto; }
.indexBnr02List li { float: left; width: 288px; margin: 0 16px 16px 0;}
.indexBnr02List li:nth-child(2n) { margin-right: 16px;}
.indexBnr02List li:nth-child(4n) { margin-right: 0;}
.indexBnr02List li a { }
.indexBnr02Img {}
.indexBnr02Btn { font-size: 100%; min-width: 218px; padding: 10px 8px;}
.indexBnr02Btn span { padding: 0 32px 0 0; background: url(images/icon_arrow01_wh.png) 98% 50% no-repeat; background-size: auto; }
.indexBnr02Btn:hover span { background: url(images/icon_arrow01_wh.png) 101% 50% no-repeat; background-size: auto;}
}
/*#indexBnr02 end*/
/*.policyBox*/
.policyBox{
background: url(./images/topMain01.jpg) no-repeat center center;
margin-bottom: 30px;
}
.policyBox-fill{
background-color: rgba(0, 0, 0, 0.5);
  padding: .5% 0;
}
.policyBox-in{
width: 60%;
  margin: 0 auto;
  background: rgba(255, 255, 255, 0.9);
  box-shadow: 7px 7px 11px -5px rgba(112, 112, 112, 0.5);
  padding: 2%;
  border: 1px solid #cdcdcd;
}
.policyBox h2 {
font-size: 2.0em;
  text-align: center;
  line-height: 1.5em;
  margin-bottom: 20px;
position: relative;
}
.policyBox h2::after {
bottom: -.7rem;
  left: 40%;
  content: "";
  width: 8rem;
  height: 1px;
  background-color: #38342c;
  z-index: 1;
  right: 0;
  position: absolute;
}
@media screen and (max-width: 700px){
.policyBox {
  padding: 3% 0;
}
.policyBox-in {
  width: 98%;
}
.policyBox-fill {
  background-color:none;
}
.policyBox h2 {
  font-size: 1.5em;
  margin-top: 15px;
margin-bottom: 10px;
}
.policyBox-in p {
font-size: 15px;
}
}
/*.policyBox　おわり*/
/*indexStaffClinic */
#indexClinicTxt01 { position: relative; top: 0; left: 0; width: 100%; height: 100%; transform: translateY(0); margin-top: 0;padding: 0 3%;background: rgba(255, 255, 255, 0.7);}
#indexStaffTxt01 { position: relative; top: 0; left: 0; width: 100%; height: 100%; transform: translateY(0); margin-top: 0; padding: 0 3%;background: rgba(255, 255, 255, 0.7);}
#indexClinicTxt01 > dl > dt {
margin-right: 0px;
font-size: 40px;
font-family: 'Times New Roman', serif;
color: #8a8576;
width: 40%;
}
#indexClinicTxt01 > dl > dd {
color: #8a8576;
letter-spacing: 0.10em;
line-height: 1.5em;
text-align: left;
margin: 0 auto;
}
#indexStaffTxt01 > dl > dt {
margin-right: 0px;
font-size: 40px;
font-family: 'Times New Roman', serif;
color: #8a8576;
}
#indexStaffTxt01 > dl > dd {
color: #8a8576;
letter-spacing: 0.10em;
line-height: 1.5em;
text-align: left;
margin: 0 auto;
}
#indexClinicTxt01 > p {position: relative;
bottom: 15px;
left: 0;
width: 100%; }
#indexStaffTxt01 > p { position: relative;
bottom: 15px;
left: 0;
width: 100%;}
#indexClinicTxt01 > dl { position: inherit;display: flex;margin-top: -35%;}
#indexStaffTxt01 > dl { position: inherit;display: flex;margin-top: -35%;}

@media print, screen and (min-width: 544px){
#indexStaffClinic {
display: flex;
flex-wrap: wrap;
margin: 5% auto;
justify-content: space-around;
max-width: 1200px;}
#indexStaff { width: 50%;text-align: center;}
#indexStaff01 {box-sizing: border-box;position: relative;}
#indexStaffImg { position: relative;}
#indexStaffImg img {}
#indexClinic { width: 50%;text-align: center;}
#indexClinic01 { position: relative;}
#indexClinicImg01 { position: relative; }
#indexClinicTxt01 { position: absolute; top: 0; left: 0; width: 100%; height: 100%; text-align: center; transform: translateY(0); margin-top: 0; background-color: rgba(140, 140, 140, 0.5);}
#indexStaffTxt01 { position: absolute; top: 0; left: 0; width: 100%; height: 100%; text-align: center; transform: translateY(0); margin-top: 0;background: none;}
#indexClinicTxt01 > dl { position: absolute; top: 25px; left: 47px; display: block; flex-wrap: wrap; align-items: center;margin-top: auto;}
#indexStaffTxt01 > dl { position: absolute; top: 25px; left: 47px; display: block; flex-wrap: wrap; align-items: center;margin-top: auto;}
#indexClinicTxt01 > dl > dt {
margin-right: 48px;
font-size: 4em;
font-family: 'Times New Roman', serif;
color: white;
width: auto;
}
#indexClinicTxt01 > dl > dd {
color: #FFF;
letter-spacing: 0.10em;
line-height: 1.5em;
text-align: left;
margin: 7% 0;
}
#indexStaffTxt01 > dl > dt {
margin-right: 48px;
font-size: 4em;
font-family: 'Times New Roman', serif;
color: #8a8576;
}
#indexStaffTxt01 > dl > dd {
color: #8a8576;
letter-spacing: 0.10em;
line-height: 1.5em;
text-align: left;
margin: 7% 0;
}
#indexClinicTxt01 > p { position: absolute; bottom: 30px; left: 0; width: 100%; text-align: center; }
#indexStaffTxt01 > p { position: absolute; bottom: 30px; left: 0; width: 100%; text-align: center; }
}
/*indexStaff 終わり*/
/* #device
------------------------------------*/
.haikei,.haikei2{
  position: relative;
}
.haikei::after {
content: "";
  position: absolute;
  left: 0;
  bottom: 0px;
  width: 100%;
/*background-color: rgba(192, 234, 217, 0.5);*/
  z-index: -1;
height: 60%;
  width: calc(100% - 100px);
  border-radius: 0 10px 10px 0;
}
.haikei2::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0px;
  width: 100%;
/*background-color: rgba(192, 234, 217, 0.5);*/
  z-index: -1;
height: 85%;
  width: calc(100% - 100px);
  border-radius: 0 10px 10px 0;
}
.haikei3 {
background: url(./images/menu-bk.jpg) repeat-y center top;
}
#device {
position: relative;
max-width: 1200px;
}
#device strong{
float: left;
margin: 3% 0;
width: 16%;
}
.f-r {
  float: right !important;
}
#device .contTit + strong img{
  border-left: 1px solid #acacac;
  padding: 6px 0 0 30px;
}

#device .contTit + strong {
float: left;
padding-left: 5px;
border-left: 1px solid #acacac;
}

#device > div {
	overflow: hidden;
}

#device > div article {
width: 18%;
  position: relative;
  float: left !important;
  margin: 1% !important;
}
#device > div article.w46 {
  width: 46%;
}
#device > div article.w23 {
  width: 23%;
}
#device article a {
text-decoration: none;
min-width: 80%;
}
#device > div article img {
box-shadow: 7px 7px 11px -5px rgba(112, 112, 112, 0.5);
}
#device > div article h2 {
	text-align:center;
	position:relative;
	display:block;
	padding:30px 0 15px;
	letter-spacing:1px;
	font-size:16px;
/*   font-weight: bold; */
}

#device > div article h2 strong{
  display: block;
  font-size: 12px;
  padding-top: 10px;
  letter-spacing: 0.1em;
  color: #888888;
}

#device > div article h2 + em {
	font-size:13px;
	text-align:center;
	letter-spacing:.1em;
	display:block;
	margin-bottom:25px;
}

#device > div article h3 {
	font-weight:700;
	font-size:14px;
	color:#0080BE;
	text-align:center;
	margin-bottom:20px;
line-height: 1.5em;
}

#device div p{
color: #454545;
  margin: 10px 0;
  text-align: center;
}
#device div p.big{
font-size: x-large;
}
#device .btn-blue{
  position: absolute;
  bottom: 0;
  width: 100%;
  display: block;
}
@media screen and (max-width: 544px) {
#device div p.big {
  font-size: x-large;
}
#device strong {
  float: none;
}
#device > div article h2 {
  font-size: 20px;
}
#device strong {
  writing-mode: unset;
}
#device > div article.w46,#device > div article.w23 {
width: 50%;
    padding: 2%;
    margin: 0 !important;
}
#device > div article.mh350 {
min-height: 350px;
}
  #device > div article {
width: 50%;
padding: 2%;
margin: 5% 0 !important;
margin: 0 !important;
  }
#device article a {
  min-width: 100%;
padding: 2px 0px 2px 10px;
}
}
/* #device　終わり
------------------------------------*/
/*.otonakodomo*/
.otonakodomo {
padding: 0px 0px 15px;
  box-sizing: border-box;
  background: url(./images/pattern02.png) bottom repeat;
}
.otonakodomo .sec_title .large {
    font-size: 4.6vw;
    font-weight: 500;
    letter-spacing: 0.2em;
  }
.otonakodomo .cont01 {
  margin-bottom: 300px;
background: #f2fdff;
}
.otonakodomo .cont {
  position: relative;
  width: 1800px;
  max-width: 100%;
padding: 200px 20px 50px;
margin: 50px auto 0;
box-sizing: border-box;
background: url(./images/bdt_news_index.png) left top repeat-x,#f2fdff;
background-size: .5%;
}
.otonakodomo .c-header__title {
  padding-top: 50px;
}
.otonakodomo .cont02 {
padding: 250px 20px 50px;
  margin-top: 0;
background: url(./images/pattern02.png) left top repeat-x,url(./images/facility_bg_01.png);
}
.otonakodomo .sec_title {
margin-bottom: 130px;
  line-height: 1.5em;
}
.otonakodomo .cont_header {
  position: absolute;
  left: 0;
top: -50px;
  display: flex;
  align-items: center;
}
.otonakodomo .cont02 .cont_header {
width: 100%;
}
.otonakodomo .cont_header .header_image img{
  font-size: 0;
  line-height: 0;
  vertical-align: bottom;
  height: auto;
}
.otonakodomo .cont_header .header_text01 {
font-size: 50px;
  letter-spacing: 5px;
  font-weight: bold !important;
  color: #6ec8da;
  position: relative;
}
.otonakodomo .cont02 .header_text01 {
color: #887955;
text-align: center;
margin-bottom: 0;
}
.otonakodomo .cont_header .header_text02 {
margin-bottom: 20px;
  font-size: 26px;
  color: #060606;
text-align: center;
}
.otonakodomo .list {
  display: flex;
  justify-content: center;
flex-wrap: wrap;
margin: 0;
}
.otonakodomo .item {
position: relative;
  display: flex;
  flex-direction: column;
  width: 19%;
  padding: 15px;
  box-sizing: border-box;
  background: #fff;
  margin: .5%;
}
.otonakodomo .item_image {
/*position: absolute;
  left: 50%;
  top: -190px;
  transform: translateX(-50%);
  width: 90%;*/
}
.otonakodomo .lead_text {
display: flex;
  justify-content: center;
  align-items: center;
  min-height: 80px;
font-size: 20px;
  text-align: center;
  line-height: 1.3em !important;
}
.otonakodomo .cont02 .lead_text {
/*color: #887955;*/
}
.item_link {
  width: 90%;
  max-width: 100%;
  margin: 10px auto 0;
}
.item_link a {
  display: block;
  width: 100%;
  box-sizing: border-box;
  padding: 10px 0;
  text-align: center;
background: #6ec8da;
text-decoration: none;
border-radius: 5px;
}
.item_link.pink a {
background:#89C3ED;
}
.otonakodomo .header_image {
width: 35%;
top: -60px;
position: relative;
}
.otonakodomo .cont02 .header_image {
width: 30%;
  top: 0px;
  right: -30px;
  position: relative;
}
.otonakodomo .cont02 .textbox{
margin-top: 100px;
width: 100%;
} 
.item_link span {
padding-right: 8px;
  font-size: 16px;
  font-weight: 600 !important;
  color: #fff;
}
.item_link img{
display: inline-block;
  width: 30px;
}
@media screen and (max-width: 780px) {
.otonakodomo .item {
width: 49%;
    padding: 5px;
}
.otonakodomo .cont {
  padding: 50px 10px 50px;
}
.otonakodomo .cont_header {
top: -60px;
display: block;
}
.otonakodomo .cont_header .header_text02 {
font-size: 20px;
text-align: center;
}
.otonakodomo .sec_title .large {
  font-size: 36px;
  letter-spacing: 0;
}
.otonakodomo .cont_header .header_text01 {
  font-size: 40px;
  letter-spacing: 0px;
}
.otonakodomo .cont02 .cont_header .header_image img {
width: 60%;
    position: absolute;
    top: -80px;
    z-index: -1;
    opacity: .8;
    right: -60px;
    left: auto;
}
.otonakodomo .cont_header .header_image img {
width: 42%;
    position: absolute;
    top: -10px;
    z-index: -1;
    opacity: .9;
    left: 30px;
}
.otonakodomo .cont02 .cont_header {
  top: 20px;
}
.otonakodomo .cont02 {
padding: 200px 0px 50px;
}
.otonakodomo .cont02 .textbox {
  margin-top: 30px;
}
.otonakodomo .sec_title {
  margin-bottom: 80px;
}
.otonakodomo .header_image {
  width: 100%;
  top: -50px;
  left: -40px;
}
.otonakodomo .cont02 .header_image {
  width: 100%;
  top: -170px;
}
.otonakodomo .lead_text {
min-height: 45px;
font-size: 17px;
letter-spacing: 0;
}
.item_link img {
  width: 15px;
}
.item_link a {
line-height: 1.2em;
}
.item_link span {
  padding-right: 0px;
font-size: 16px;
}
}
/*.otonakodomo　おわり*/
/* .messageArea */
.messageArea {
background-position: top 90px right;
  background-size: cover;
  padding: 220px 5% 80px;
  background-image: url(./images/pic_message03.jpg);
  background-repeat: no-repeat;
  position: relative;
  margin: 0 auto;
  }
.messageArea-in {
max-width: 1400px;
margin: 0 auto;
  }
  .messageArea .pinkBox {
padding: 40px 50px;
  margin-left: 15%;
  width: 900px;
  color: #59452f;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  position: relative;
  background: rgba(255, 255, 255, 0.8);
  text-align: center;
  }
.messageArea .pinkBox h2 span {
color: #ff9b1a;
  font-size: 1.5em;
  font-weight: bold !important;
}
  .messageArea .pinkBox h2 {
font-size: 30px;
margin-bottom: 3%;
  margin-top: 0;
  line-height: 1.8em;
  }
  .messageArea .pinkBox p {
font-size: 18px;
line-height: 1.8 !important;
margin-bottom: 2%;
  }
  .messageArea .pinkBox .img01 {
position: absolute;
  top: -10px;
  width: 300px;
  left: -250px;
  z-index: -1;
  }
 .messageArea .pinkBox .img02 {
width: 500px;
  bottom: -150px;
  position: absolute;
  right: -30px;
  opacity: .05;
z-index: -2;
  }
.messageArea .message{
letter-spacing: 5px;
  position: absolute;
  top: 50px;
  font-size: 150px;
  opacity: 0.1;
  z-index: 2;
  }
@media screen and (max-width: 780px) {
.messageArea {
  background-position: top 10px right 0px;
  background-size: contain;
padding: 120px 0 0;
background-repeat: repeat;
 }
.messageArea .message {
font-size: 80px;
    letter-spacing: 1px;
    top: 0px;
    z-index: 2;
    opacity: 0.1;
    text-align: center !important;
    width: 100%;
}
.messageArea .pinkBox {
padding: 3%;
  margin-left: 0;
  width: auto;
  height: auto;
background: none;
 }
.messageArea .pinkBox h2 {
font-size: 19px;
    margin-bottom: .2em;
    text-align: center;
    letter-spacing: 0;
    line-height: 1.8em;
}
.messageArea .pinkBox h2 span {
  font-size: 32px;
}
.messageArea .pinkBox p {
margin-bottom: .5em;
font-size: 14px;
}
 }
/* .messageArea おわり*/
/*bg_common02*/
.bg_common02 {
position: relative;
  z-index: 0;
padding: 20px 50px 50px 50px;
}
.box_common01 {
  padding: 22px;
box-shadow: 0 0 5px 0 rgba(157, 157, 157, 0.5);
background-color: #fff !important;
}
.box_common01 .box {
border: 2px solid #3dc6b9;
  position: relative;
background: url("./images/A7A9882t.png")no-repeat right center / auto 100%;
padding: 100px 5% 30px;
background-position-x: right -150px;
}
.box_common01 .ttl01 {
position: absolute;
  top: 30px;
font-size: 190%;
  letter-spacing: .1em;
  width: fit-content;
  color: #fff !important;
  font-weight: 700 !important;
background: linear-gradient(150deg, #1cb8a8 0%, #64e5d8 40%,#35c0b2 100%);
  padding: 0 20px;
  left: -34px;
}
.box_common01 .ttl01::before {
  position: absolute;
  top: 100%;
  left: 0;
  border: none;
  border-right: solid 10px #acaba1;
  border-bottom: solid 10px transparent;
  content: '';
}
.box_common01 .ttl01::after {
position: absolute;
  width: 0;
  height: 0;
  top: 0;
  right: -19px;
  z-index: 1;
  border-style: solid;
  border-width: 54px 21px 0px 0;
border-color: #3dc6b9 transparent;
  content: '';
}
p.ttl02 {
color:#8b7c58;
  font-weight: bold !important;
  font-size: 30px;
  line-height: 1.6em !important;
  margin-bottom: 2%;
}
.box_common01 p.txt {
max-width: 570px;
  line-height: 2em !important;
  font-size: 16px;
  margin-bottom: 2%;
}
.bg_common02::after {
  content: "";
  position: absolute;
  width: 100%;
  height: calc(100% - 100px);
  background: url("./images/A7A0266s.jpg")no-repeat center / cover;
  left: 0;
  bottom: 0;
  z-index: -1;
filter: opacity(20%) blur(2px);
}
.inner1200{
  max-width: 1200px;
  margin: 0 auto;
}
@media screen and (max-width: 767px){
.box_common01 .ttl01 {
top: -5px;
    font-size: 110%;
    letter-spacing: 0;
    padding: 5px 20px;
    left: -22px;
    line-height: 1.5em !important;
}
.bg_common02 {
padding: 30px 0 0;
}
.box_common01 .ttl01::after {
border-width: 34px 21px 0px 0;
}
.box_common01 .box {
padding: 120px 8px 5px;
background: url("./images/A7A9882ts.png")no-repeat top center / 100% auto;
background-position-y: 28px;
}
.box_common01 {
  padding: 10px;
}
p.ttl02 {
font-size: 22px;
    line-height: 1.6em !important;
    margin-top: 62px;
    margin-bottom: 10px !important;
    text-shadow: 0 0 5px #fff,1px 1px 5px #fff,1px -1px 5px #fff,-1px -1px 5px #fff,-1px 1px 5px #fff !important;
    padding: 0 4%;
    background: rgba(255, 255, 255, 0.7);
}
.box_common01 .box .ch-list {
padding: 0 0 0 4%;
}
.box_common01 p.txt {
font-size: 13px;
}
}
/*bg_common02　おわり*/

/*動画中央*/
.youtube-w100 .youtube-container{
  float: none;
  margin: 0 auto;
  width: 60%;
}
.youtube-w100.top .youtube-container {
margin: 3% auto;
width: 40%;
}
@media screen and (max-width: 544px) { 
.youtube-w100 .youtube-container {
padding-top: 0px;
width: 100%;
}
.youtube-w100.top .youtube-container {
  width: 100%;
}
}
/*動画中央　おわり*/
.youtube-w100 .youtube-lazy{
  float: none;
  margin: 0 auto;
  width: 40%;
}
/* 親要素のレスポンシブ化と基準位置の設定 */
.youtube-lazy {
    position: relative;
    width: 100%;
    max-width: 480px; /* 必要に応じて調整してください */
    aspect-ratio: 16 / 9; /* 16:9のアスペクト比を維持 */
    overflow: hidden;
    cursor: pointer;
    background-color: #000;
}

/* サムネイル画像（枠いっぱいに収める） */
.youtube-lazy img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: opacity 0.3s ease, transform 0.3s ease;
}

/* ホバー時に画像をわずかに拡大 */
.youtube-lazy:hover img {
    transform: scale(1.03);
    opacity: 0.9;
}

/* 再生ボタン（中央配置） */
.youtube-play {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 68px;
    height: 48px;
    background-color: rgba(33, 33, 33, 0.8);
    color: #fff;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 18px;
    transition: background-color 0.2s ease;
    z-index: 2;
}

.youtube-lazy:hover .youtube-play {
    background-color: #ff0000; /* ホバー時にYouTube赤色へ */
}

/* 動画タイトルのオーバーレイ（上部に黒グラデーションで配置） */
.youtube-title {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    padding: 12px 15px 35px 15px; /* 下部にグラデーションの余白を確保 */
    color: #ffffff;
    font-size: 14px;
    font-weight: bold;
    line-height: 1.4;
    text-shadow: 0 1px 2px rgba(0, 0, 0, 0.8);
    
    /* 上から下へ自然に暗くなるグラデーション背景（視認性向上） */
    background: linear-gradient(180deg, rgba(0, 0, 0, 0.75) 0%, rgba(0, 0, 0, 0) 100%);
    
    /* 長いタイトルを2行で切り捨てて「...」にする設定 */
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    
    box-sizing: border-box;
    pointer-events: none; /* クリックを阻害しない */
    z-index: 1;
}
@media screen and (max-width: 544px){
.youtube-w100 .youtube-lazy {
width: 100%;
}
}
/*治療の流れ*/
.flow_design02 {
display: flex;
}
.flow_design02 ul {
padding: 0;
width: 100%;
margin: 0;
}
.flow_design02 li {
  list-style-type: none;
}
.flow_design02 dd {
line-height: 2em;
  margin: 0;
}
.flow02 > li {
/*padding: 40px 10px;*/
}
.flow02 > li:not(:last-child) {
border-bottom: 2px solid #BBB;
position: relative;
margin-bottom: 5%;
padding-left: 0;
display: grid;
padding-bottom: 2%;
}
.flow02 > li:not(:last-child)::before,
.flow02 > li:not(:last-child)::after {
  content: "";
  border: solid transparent;
  position: absolute;
  top: 100%;
  left: 15%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
}
.flow02 > li:not(:last-child)::before {
border-width: 21px;
border-top-color: #BBB;
}
.flow02 > li:not(:last-child)::after {
  border-width: 18px;
  border-top-color: #fff;
}
.flow02 > li dl {
  margin: 0;
}
.flow02 > li dl dt {
  font-size: 1.3em;
  font-weight: 600;
  border-bottom: 1px dotted #878787;
  margin-bottom: 0.5em;
  padding-bottom: 0.5em;
  display: flex;
}
.flow02 > li dl dt .icon02 {
color: #fff;
  background: #34ab32;
  padding: 3px 10px;
  display: inline-block;
  margin-right: .5em;
  font-size: smaller;
}
@media screen and (max-width: 544px){
.flow_design02 ul li{
  padding: 0;
}
.smaw50.margin0 {
width: 50%;
margin: 0 auto 8%;
}
.flow02 > li:not(:last-child) {
  margin-bottom: 15%;
}
}
/*治療の流れ おわり*/
/*アクセスのテーブル*/
#a-table table {
border-collapse: collapse;
width: 100%;
}
#a-table table th,
#a-table table td {
  padding: 10px;
  text-align: left !important;
}
#a-table table th {
background-color: #ebebe1;
width: 20%;
color: #000;
}
#a-table img, #r-table img {
  margin-left: 0;
  border: none;
  width: 100%;
}
@media screen and (max-width: 544px){
	#a-table  table {
		border-collapse: collapse;
	    border-top: none;
	    width: 100%;
	}
	#a-table  table td {
		display: block;
		text-align: left;
		border: none;
width: 100% !important;
		
	}
	#a-table  table th {
		display: block;
		text-align: left;
		border-left: none;
		border-right: none;
width: 100% !important;
	}
}
/*タイムテーブル*/
#t-table table{
	border-collapse: collapse;
	}
	
#t-table th,td{
	margin: 0;
	padding: 10px;
	text-align: center !important;
	}
/*テーブル*/
table tr th {
  font-size: 1em;
  line-height: 2em;
  padding: 6px;
background: #f2f2ed;
}
table p {
margin-bottom: 0 !important;
  text-align: left;
}
/*テーブル*/
table.t-case3,table.t-case,table.t-case4,table.t-case5{
border: none;
}
.post table.t-case3 tr td{
border: none;
width: 33%;
}
.post table.t-case tr td{
border: none;
width: 50%;
}
.post table.t-case4 tr td{
border: none;
width: 25%;
}
.post table.t-case5 tr td{
border: none;
width: 20%;
}
.post table img {
width: 100% !important;
  margin: 0;
}
@media only screen and (max-width: 544px) {
  .post table.t-case3 tr td, .post table.t-case tr td, .post table.t-case4 tr td, .post table.t-case5 tr td  {
    display: block;
  }
.post table.t-case tr td,.post table.t-case3 tr td,.post table.t-case4 tr td,.post table.t-case5 tr td{
width: 100%;
}
}
/*目次*/
.table-of-contents {
  position: relative;
  padding: 30px 15px 15px;
  border-radius: 5px;
  background: #f3f3f3;
  margin: 50px auto 0;
}
.table-of-contents:before {
  display: inline-block;
  position: absolute;
  top: -8px;
  left: 9px;
  width: 60px;
  height: 30px;
  vertical-align: middle;
  text-align: center;
  content: "目 次";
font-family: '游ゴシック' !important;
  color: #FFF;
  font-size: 18px;
  line-height: 30px;
  background:#75a3f2;
}
.table-of-contents:after {
  position: absolute;
  content: '';
  top: -8px;
  left: 69px;
  border: none;
  border-bottom: solid 8px #7a9c09;
  border-right: solid 9px transparent;
}
.table-of-contents ul li {
  padding: 0;
font-size: 17px;
}
.table-of-contents ul {
list-style: none;
}
.table-of-contents ul li:before {
content: "";
  width: 8px;
  height: 8px;
  background-image: url("./images/icon-yajirushi02.svg");
  display: inline-block;
  margin-right: 8px;
  background-repeat: no-repeat;
}
.table-of-contents ul li+li {
  border-top: 1px dashed #ccc;
}
.table-of-contents ul li a {
text-decoration: none;
display: contents;
font-size: initial;
}
.table-of-contents ul li a:hover {
  opacity: .5;
}
.ch-list p{
margin-bottom: 5px !important;
padding-left: 2em;
text-indent: -2em;
}
@media screen and (max-width: 767px) {
.table-of-contents ul li {
font-size: 13px;
    padding-left: 1em;
    text-indent: -1em;
    padding-top: 10px;
    padding-bottom: 5px;
}
}
/*目次　おわり*/
/*numbering*/
.numbering {
  margin: 0;
  counter-reset: number;
}
.numbering .yoyakuform-list li::before {
content: counter(number);
counter-increment: number;
background-color: #b2924c;
color: white;
font-weight: bold;
display: block;
float: left;
line-height: 20px;
margin-left: -28px;
text-align: center;
height: 20px;
width: 20px;
border-radius: 50%;
top: 4px;
position: relative;
}
.numbering ul{
	list-style: none;
padding-left: 0px;
	}
.numbering ul li {
    font-size: 16px;
    line-height: 1.8em;
    padding-bottom: 1%;
	padding-left: 3%;
}
@media screen and (max-width: 700px) {
.numbering {
padding: 0 0 0 5%;
}
}
/*numbering おわり*/
/*問い合わせボタン*/
.comTalkBox .btnUl {
display: flex;
  justify-content: space-between;
  padding: 0;
}
.comTalkBox .btnUl li {
width: 50%;
list-style: none;
}
.comTalkBox .btnUl li a {
	padding: 22px 30px 18px 90px;
	height: 100%;
	display: block;
	color: #FFF;
	font-size: 1.2rem;
	letter-spacing: 0.124em;
line-height: 2;
	text-align: center;
	background:url(./images/icon_reservation.svg) no-repeat left 20px center / 50px auto;
background-color: #fda445;
	box-sizing: border-box;
	text-decoration: none;
}
.comTalkBox .btnUl li a span {
	display: block;
	font-size: 2rem;
font-weight: bold !important;
	letter-spacing: 0.05em;
}
.comTalkBox .btnUl li a span em {
	font-size: 3.4rem;
	font-style: normal;
	line-height: 1;
}
@media all and (max-width: 544px) {
	.comTalkBox .btnUl {
		margin: 0 auto;
		max-width: 90%;
		width: auto;
		display: block;
	}
	.comTalkBox .btnUl li {
		width: auto;
	}
	.comTalkBox .btnUl li:not(:last-child) {
		margin-bottom: 10px;
	}
	.comTalkBox .btnUl li a {
padding: 15px 15px 15px 75px;
font-size: small;
letter-spacing: 0.01em;
line-height: 1.4;
	}
	.comTalkBox .btnUl li a span {
font-size: 1.4rem;
letter-spacing: 0;
	}
	.comTalkBox .btnUl li a span em {
		font-size: 3rem;
	}
}
/*問い合わせボタン　ここまで*/
/*　ContactForm7のテーブル化レスポンシブ調整　*/
 
/*テーブルを親要素の幅いっぱいに伸ばす*/
.table-res-form {
    width: 100%;
}
/*一行ごとに上ボーダー*/
.table-res-form tr {
border-top: 1px #DDD solid;
background: #fff;
}
/*一番上の行だけボーダーなし*/
.table-res-form tr:first-child {
    border-top: none;
}
/*奇数行だけ背景色つける*/
/*.table-res-form tr:nth-child(2n+1) {
    background: #eee;*/
}
/*thとtd内の余白指定*/
.table-res-form th, .table-res-form td {
    padding: 1.5em;
}
/*th（項目欄）は30%幅、テキストを右寄せ*/
.table-res-form th {
    width: 30%;
    text-align: right;
}
/*「必須」部分のスタイリング*/
.table-res-form .requied {
    font-size: 0.8em;
    color: #FFF;
    display: inline-block;
    padding: 0.3em 0.3em 0.2em;
    background: red;
    border-radius: 2px;
}
 
/*ここから768px以下の指定*/
 
@media only screen and (max-width: 768px) {
　　　　　/*thとtdをブロック化して幅100％にして、縦積み*/
    .table-res-form th, .table-res-form td {
        width: 100%;
    }
　　　　　/*th（項目名）欄の不要な余白削除・テキスト左寄せ*/
    .table-res-form th {
        padding-bottom: 0;
        text-align: left;
    }
　　　　　/*不要な最終行の左のthを非表示にする*/
    .table-res-form .empty {
        display: none;
    }
}
 
/*ここまで768px以下の指定---終わり*/
 
/*ここから入力欄のスタイル指定*/
 
/*各入力フォームスタイリング*/
.table-res-form input[type="text"], input[type="email"], textarea {
    border: 1px #C9E0C5 solid;
    padding: 0.5em;
    border-radius: 5px;
    margin-bottom: 0.5em;
    width: 100%;
}
/*入力欄にフォーカスしたら変化*/
.table-res-form input[type="text"]:focus, textarea:focus {
    background: #EEFFFF;
    box-shadow: 0 0 1px 0 rgba(0, 0, 0, 0.5);
}
/*送信ボタンスタイリング*/
.table-res-form input[type="submit"] {
padding: 1em 4em;
  border-radius: 5px;
  font-weight: bold !important;
  width: 100%;
  background: #e1e1e1;
}
/*送信ボタン・マウスオーバー時スタイリング*/
.table-res-form input[type="submit"]:hover {
    box-shadow: none;
}
@media only screen and (max-width: 960px) and (min-width: 500px) {
table.p-table img {
width: 20%;
float: none;
}
table#pw-table img{
width: 20%;
float: none;
}
}
/*--------------よくある質問css--------------*/
.qadl {
    line-height: 1.8em;
    overflow: hidden;
    zoom: 1;
    font-size: 14px;
}
.qadl dd,
.qadl dt {
    text-indent: -2.6em;
    padding: 0 20px 0 50px;
    font-size: 14px;
}
.qadl dt {
    margin: 20px 20px 0 10px;
    color: #2d6dae;
    font-size: 18px;
    font-weight: bold !important;
    font-family: 'Hiragino Kaku Gothic Pro',
        'ヒラギノ角ゴ Pro W3',
        'メイリオ',
        Meiryo,
        'Osaka',
        'ＭＳ Ｐゴシック',
        Arial,
        sans-serif !important;
}
.qadl dd:first-letter,
.qadl dt:first-letter {
    font-size: 1.6em;
    font-weight: bold;
    margin-right: 10px;
    padding: 5px;
    font-family: 'Hiragino Kaku Gothic ProN',
        '游ゴシック',
        YuGothic,
        'メイリオ',
        Meiryo,
        sans-serif;
}
.qadl dd {
    margin: 20px 0 -1px 0;
    padding-bottom: 15px;
    border-bottom: 1px #000 dotted;
}
.qadl dt:first-letter {
    color: #0F78E1;
}
.qadl dd:first-letter {
    color: #ff6767;
}
/*--------------よくある質問css おわり--------------*/
/*.column.caseblog*/
.column.caseblog ul li img {
    margin: 0;
    float: none;
    width: auto;
  }
.column.caseblog ul li {
  list-style: none;
height: auto;
}
.column.caseblog p {
margin-bottom: 0 !important;
}
@media (max-width: 768px) {
.column.caseblog ul li {
width: 31%;
text-align: center;
}
.column.caseblog p {
  line-height: 1.5em !important;
}
}
/*.column.caseblog　おわり*/
/*.open-note2*/
.open-note2 h2{
  font-size: 1.7em;
margin: 10px 0 20px;
text-align: center;
}
.open-note2{
  margin-top: 30px !important;
  padding: 20px;
  border-top: 1px solid;
  border-bottom: 1px solid;
  max-width: 80%;
  margin: 1% auto;
  background: #fff;
}
.open-note2 .flex{
justify-content: flex-start;
margin: 0;
}
.open-note2 .date{
padding: 2px 15px;
  background: #988b8b;
  margin: 5px 20px 0 0px;
  color: #fff;
  display: flex;
  align-items: center;
}
.open-note2 p{
line-height: 2em !important;
margin-bottom: 0;
}
.open-note2 li{
list-style: none;
}
@media screen and (max-width: 700px){
.open-note2{
margin: 30px 2% !important;
    max-width: 100% !important;
    padding: 20px 0;
}
.open-note2 h2 {
  font-size: 1.2em;
margin: 10px 0;
}
.open-note2 .flex {
  display: block;
}
.open-note2 .date {
  margin: 0;
}
}
/*.open-note2　おわり*/
/*Dr経歴表示*/
dl.drProfile {
	display: block;
	margin: 0 0 2em 0em;
	line-height: 1.7em;
	font-size: 16px;
	}

dl.drProfile dt {
float: left;
width: 100px;
padding: 0px 0 0px 1em;
	}

dl.drProfile dd {
	margin: 0;
	margin-left: 100px;
	}
@media screen and (max-width: 700px){
dl.drProfile dt {
  float: none;
}
dl.drProfile dd {
margin-left: 15px;
margin-bottom: 10px;
}
}
/*Dr経歴表示　おわり*/
/*
色変更
*/
.side-navi__box,.metal,.inner3,.p-top-main__news-all-box,.btn-normal-A,.prof02 .prof_vertical_txt,.copyright,.footer_contactBtn,.top_concept_area::before,.footer_accessBtn:hover,span.att,.post h3::after,.post h2,.table-of-contents:before,.flow02 > li dl dt .icon02,.headerCta li:nth-child(1) a,.headerCta li a,.item_link.pink a,.numbering .yoyakuform-list li::before{
background-color: #40a773;
}
.btn-normal-A {
  border:1px solid #40a773;
border-radius: 50px;
}
.el-items h3 span.line {
color: #988b8b;
}
.btn-normal-A:hover {
  background-color: #fff;
  color: #988b8b;
  border:1px solid #988b8b;
}
.btn-normal-A:hover:before {
  color: #988b8b;
}
/*
色変更(ページごと)
*/
.post .color01 h2 {
color: #543518;
background-color: #FFEC50;
font-family: '游ゴシック' !important;
}
.post .color01 h3::after{
background: rgb(255, 170, 80);
}
.post .color01 h3{
background: #fffee7;
}
.post .color01 h4 {
border-bottom: solid 3px #ffec50;
}
.color01 .flow02 > li dl dt .icon02 {
background-color: #FBF9CD;
color: #86837f;
}
.post .color02 h2 {
background-color: #878681;
}
.post .color02 h3::after{
background: #878681;
}
.post .color02 h3{
background: #f4f4ed;
}
.post .color02 h4 {
border-bottom: solid 3px #ffec50;
}
.color02 .flow02 > li dl dt .icon02 {
background-color: #c5c5c5;
  color: #fff;
}
.color01 .btn-normal-A {
background-color: rgb(233, 164, 31);
border:1px solid rgb(233, 164, 31);
}
.color02 .btn-normal-A {
background-color: rgb(135, 134, 129);
border:1px solid rgb(135, 134, 129);
}
/*
色変更　おわり
*/
/*
.p-top-main__news-all-img-item {
    display: none !important;
}
.p-top-main__news-content-body a::after {
  display: none !important;
}
*/