/*
Theme Name: Astra Child
Template: astra
*/
section {
max-width: 1200px;
  margin: 0 auto;
}
@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;
  }
.post img {
    margin: 0 0 20px 30px;
    float: right;
    width: 35%;
  }
}
@media (min-width: 769px) {
  .site-content .ast-container {
    display: block;
  }
}
.post h2 {
  line-height: 1.2;
  background: #267cbe;
  position: relative;
  text-align: left;
  font-size: 24px;
  color: #fff;
margin-bottom: 20px;
  padding-top: 15px;
  padding-bottom: 10px;
  padding-left: 10px;
}
.post h3 {
  font-size: 22px;
  padding-left: 20px;
  border-bottom: solid 2px rgb(227, 227, 227);
  line-height: 1.2;
  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;
}
@media only screen and (max-width: 921px) {
.post h2, .post h3 {
    font-size: 20px;
  }
.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;
}
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;
}
.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;
}
.w45 {
width: 45% !important;
}
.w50 {
width: 50% !important;
}
.w60 {
width: 60% !important;
}
.w70 {
width: 70% !important;
}
.w80 {
width: 80% !important;
}
img.post-main {
width: 100% !important;
}

table, td, th {
border: 1px solid #bbb;
border-collapse: collapse;
}
* {
  font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif !important;
  /*font-family: 'YuGothic','游ゴシック体','Hiragino Kaku Gothic ProN','ヒラギノ角ゴ ProN W3',sans-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;
}
ul {
  margin: 0 0 0em 1em;
}
@media screen and  (max-width: 544px){
.smaw50 {
width: 50% !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: #10a619;
}
.btn-normal-B {
  font-weight: bold;
padding: 8px 20px 8px 20px;
  background: #cba18d;
}

.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: #cba18d;
  border:1px solid #cba18d;
}
.btn-normal-B:hover:before {
  color: #cba18d;
  background-image: url(./images/icon-yajirushiB.svg);
}
/*　ボタン　おわり　*/
/*　投稿ページ、一覧ページ、サイドバー　*/
.ast-separate-container .ast-blog-layout-5-grid .post-content {
  padding: 0;
}
.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;
}
.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: 60%;
  margin: 0 auto;
}
.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.8);
  padding: 1%;
  font-size: smaller;
}
.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: 5px 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.svg);
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; }
/*スマホフッター おわり */

/*　ヘッター　*/
#headbox,.header-navibox,.custom-global-nav ul li {
height: 80px;
max-width: 1200px;
margin: 0 auto;
}
#header-l {
  width: fit-content;
  float: left;
}
#header-r {
  float: right;
}
.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: 95px;
  min-width: 80px;
  font-size: 15px;
}
.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;
}
.metal{
  margin: 0;
  padding: 5px 10px;
background-color: rgba(70, 56, 47, 0.7);
  color: #fff;
  text-align: center;
}
.metal.orange {
background: rgba(236, 236, 236, 0.8);
color: #000;
}
.metal p{
  margin: 0;
}
.home #header-l img {
width: 340px;
}
#header-l img {
width: 340px;
}
@media only screen and (max-width: 544px) {
.home #header-l img {
width: 280px;
}
#header-l img {
width: 280px;
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;
padding: 15px 2px 0px;
}
.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;
}

#Main-Visual.inner {
  position: relative;
  min-height: calc(70vw * 750 / 1400);
}

#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;
}

.inner1 {
  position: absolute;
  bottom: 20px;
  padding: 0px;
  right: 8%;
  text-align: center;
  width: 480px;
}
.inner2 {
  position: relative;
}
.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: 120px;
  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: 30px;
}
.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: 160%;
  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;
  width: 300px;
  margin: 0 1px;
  background: rgba(117, 163, 242, 0.9);
    background-color: rgba(117, 163, 242, 0.9);
padding: 2% 5%;
  line-height: 1.3em;
}
.el-list__title {
font-size: 13px;
  color: #fff;
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: top;
  }
.copy_main {
font-size: 200%;
    margin-bottom: 3%;
    line-height: 1.6em !important;
}
.copy_sub {
font-size: 20px;
line-height: 1.4em !important;
}
.box_main {
text-align: center;
padding: 0;
}
.mainvisual_catch {
bottom: 80px;
}
.d-flex {
left: 0;
width: 100%;
justify-content: center;
}
.el-list li {
width: 85px;
    height: 85px;
    margin: 0;
}
.el-list__title{
font-size: 13px;
    letter-spacing: 3px;
    line-height: 1.5em;
}
.inner3 {
  width: 93%;
bottom: -20px;
}
}
/*Main-Visual おわり*/
/*.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: 250px;
}
.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:100%;
 overflow:hidden
}
.p-top-main__news-all-img-item {
width: 1rem;
height: 3rem;
}
.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;
}
.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;
}
.column a{
  text-decoration: none;
}
.column ul{
list-style: none;
}
.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: box;
    display: -webkit-box;
    display: -moz-box;
    box-pack: center;
    -webkit-box-pack: center;
    -moz-box-pack: center;
  }
.kokuban ul {
overflow-y: scroll;
    height: 230px;
    margin: 0;
padding: 0 5%;
    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;
}
  .top_feature_title_bgimg {
    position: absolute;
    pointer-events: none;
    width: 100%;
    left: 0;
    top: 0;
    height: 600px;
  }
 .top_feature_title_bgimg_01 {
    width: 282px;
    width: 14.6875%;
    width: min(282px,14.6875%);
    position: absolute;
    left: 3.125%;
top: 200px;
    right: 50%;
    margin-right: 33%;
  }
  .top_feature_title_bgimg_02 {
    width: 238px;
    width: 12.4%;
width: min(238px,12.4%);
  position: absolute;
  left: 18%;
  right: 50%;
  margin-right: 18%;
  top: 84px;
  }
  .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: 30px;
  text-align: center;
  letter-spacing: 3px;
}
.top_feature_title_num {
  grid-column: 1 / 2;
  grid-row: 1/3;
  font-size: 650%;
color:#03bc3b;
  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%,#f6f1e2 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_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*/
/*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(246, 241, 226, 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: 26px;
  line-height: 1.7em;
  text-align: left;
  padding-bottom: 15px;
  border-bottom: 1px solid #000;
}
.sc-feature .el-item__content h3 .index_icn_pickupnumber01{
color: rgb(3, 188, 59);
  font-size: 300%;
  line-height: 1em !important;
  letter-spacing: -0.05em;
  padding-left: 3%;
  font-weight: bold !important;
position: relative;
}
.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: 20px 0;
line-height: 2em !important;
font-size: medium;
}
.sc-feature .el-item .el-item__thumb {
position: relative;
  top: 0;
  left: 0;
  width: 100%;
min-height: 400px;
}
.sc-feature .el-item .el-item__thumb img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
height: 100%;
object-fit: contain;
filter: drop-shadow(0 0 15px rgba(139,106,73,0.3));
/*box-shadow: 2px 2px 15px rgba(176, 176, 184, 0.7);*/
}
@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;
}
.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;
  line-height: 1;
  letter-spacing: 0.1em;
  margin: 10px 0 40px;
  text-align: center;
  color: #fff;
}
  @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: 18px;
    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: 180px;
margin-bottom: 25px;
}
.sc-feature .el-item__content {
padding: 2%;
}
.sc-feature .el-item__content p{
font-size: 15px !important;
    margin: 2% auto !important;
    font-weight: initial;
    line-height: 1.5em !important;
    background-size: 10px;
}
.sc-feature {
  padding-bottom: 0;
}
}
@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;
}
.sc-pholosophy .c-content {
padding: 5%;
}
.c-header__title {
font-size: 50px !important;
}
.c-header__sub {
font-size: 20px;
    letter-spacing: 0;
    margin: 10px 0 20px;
}
.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;
 padding:0 4rem
}
.p-top-main__philosophy-img {
 display:flex;
 display:-ms-flexbox;
 flex-direction:row;
 z-index:1;
width: 50%;
}
.p-top-main__philosophy-img__lg-item {
width: 38rem;
height: 48rem;
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: 33rem 0em 0 -15rem;
z-index: 1;
width: 18rem;
height: 12em;
}
.p-top-main__philosophy-content {
padding: 7rem 0 0 0;
}
.p-top-main__philosophy-content-header {
 position:relative;
padding: 1rem 3em 2rem 3rem;
}
.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:.3rem;
 right:-8rem;
 content:"";
width: 110vw;
 height:1px;
 background-color:#e3e3e3;
 z-index:-1
}
.p-top-main__philosophy-content-header-ttl {
position: relative;
font-size: 4rem;
color: #393327;
width: 100%;
text-align: left;
padding: 2% 0 0% 5%;
}
.introSec .p-top-main__philosophy-content-header-ttl::before {
position: absolute;
bottom: -0.5rem;
  right: 0;
  content: "";
  width: 110vw;
  height: 1px;
  background-color: #e3e3e3;
}
.p-top-main__philosophy-content-header-ttl::after {
 position:absolute;
bottom: -0.5rem;
left: 1em;
 content:"";
 width:8rem;
 height:1px;
 background-color:#38342c;
 z-index:1
}
.p-top-main__philosophy-content-body {
padding: 3% 3% 0 10%;
}
.p-top-main__philosophy-content-body-ttl {
font-size: 2rem;
line-height:1.8
text-align: center;
}
.p-top-main__philosophy-content-body-txt {
margin: 2rem 0;
font-size: 1rem;
line-height: 2 !important;
}
.c-ttl__sec-sub {
display: block;
color: #666;
padding: 0 0 1% 5%;
}
@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: 15rem;
background-position: top;
 }
 .p-top-main__philosophy-img__sm {
height: 13rem;
margin: 25rem -5em 0 -20rem;
 }
.p-top-main__philosophy-content-header-ttl {
font-size: 2.3rem;
margin-bottom: 30px;
margin-top: .5rem;
text-align: center;
padding: 0;
}
.introSec{
text-align: center;
}
.c-ttl__sec-sub {
text-align: center;
padding: 5px 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: 5%;
 }
.introSec .p-top-main__philosophy-content-header-ttl::before {
 bottom: -1rem;
}
 .p-top-main__philosophy-content-body-ttl {
font-size: 1.5rem;
line-height: 1.2em;
 }
.p-top-main__philosophy-content-body {
padding: 10% 5%;
}
 .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%;
}
}
/*.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;
}
.c-header__sub {
  font-size: 30px;
  line-height: 1;
  letter-spacing: 0.1em;
  margin: 10px 0 40px;
  text-align: center;
  color: #fff;
}
.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;
  margin-top: 50px;
}
.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: #faf8f0;
}
.prof02section.doctor2 .prof02.flex {
  flex-direction: row-reverse;
}
.prof02section.doctor2 .prof02_pic {
  padding: 0px 40px 0 0px;
}
.prof02_inner{
width: 80%;
}
.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: 98%;
    margin: 1%;
    padding: 40px 10px;
    flex-wrap: wrap-reverse;
}
.prof02section.doctor2,.prof02section{
  height: auto;
}
.prof02_name {
font-size: 40px;
margin: 0;
width: 70%;
}
.prof02_namebox {
  flex-wrap: wrap;
 margin-bottom: 30px;
}
.prof02_en {
margin: 0px 0 0 30px;
}
.prof02 .position {
font-size: 16px;
    width: 55px;
    height: 55px;
}
.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;
}

.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 終わり
===================================== */
/*.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 終わり*/
/*動画中央*/
.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: #ebebe1;
}
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%;
}
@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;
}
}
/*目次　おわり*/
/*--------------よくある質問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 おわり--------------*/
/*
色変更
*/
.side-navi__box,.metal,.el-list li,.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{
background-color: rgba(145, 126, 114, 0.9);
}
.sc-feature .el-item__content h3 .index_icn_pickupnumber01,.el-items h3 span.line {
color: rgb(123, 115, 109);
}
.btn-normal-A:hover {
  background-color: #fff;
  color: rgb(123, 115, 109);
  border:1px solid rgb(123, 115, 109);
}
.btn-normal-A:hover:before {
  color: rgb(123, 115, 109);
}