@charset "UTF-8";
/*
border: solid 1px red;
*/
/* トップページ */
/* スライド親コンテナ */
.slideshow-container {
position: relative;
width: 100%;
height: 45vh;
overflow: hidden;

/*z-index: 0;*/
}

/* スライドの基本設定 */
.slide {
position: absolute;
width: 98%;
height: 100%;
opacity: 0;
animation: slideAnim 24s infinite;
background-size: cover;
background-position: center;
right: 0;
left: 0;
margin: 0 auto;
border-radius: 12px;
}

/* スライド画像の設定 */
.slide1 { background-image: url('../images/top/top-img142.jpg'); animation-delay: 0s; }
.slide2 { background-image: url('../images/top/top-img018.jpg'); animation-delay: 8s; }
.slide3 { background-image: url('../images/top/top-img037.jpg'); animation-delay: 16s; }
/*画像の位置*/
.slide2 {background-position: 50% 20%}

/* フェードアニメーション例 */
@keyframes slideAnim {
   0% { opacity: 0; }
 10% { opacity: 1; }
 33% { opacity: 1; }
 43% { opacity: 0; }
100% { opacity: 0; }
}

/* キャッチコピー文字のスタイル */
.top-hero {
position: absolute;
top: 3.5rem;
left: 0;
width: 100%;
height: 100%;
display: flex;
text-align: left;
padding: 0 30px; /* 端の余白 */
z-index: 1;
pointer-events: none; /* 下の要素の操作を邪魔しない場合 */
font-size: 2.2rem;
font-weight: bold;
color: #A98C5A;
text-shadow:2px 2px 0 #FFF, -2px -2px 0 #FFF,
-2px 2px 0 #FFF, 2px -2px 0 #FFF,
0px 2px 0 #FFF,  0 -2px 0 #FFF,
-2px 0 0 #FFF, 2px 0 0 #FFF;
}
/* h1文字のスタイル */
.top-h1 {
position: absolute;
top: 94%;
display: flex;
text-align: left;
padding: 0 30px; /* 端の余白 */
z-index: 1;
pointer-events: none; /* 下の要素の操作を邪魔しない場合 */
font-size: 1rem;
/*font-weight: bold;
bottom: 0;
left: 0;
width: 100%;
height: 100%;
*/
color: #A98C5A;
text-shadow:1px 1px 0 #FFF, -1px -1px 0 #FFF,
-1px 1px 0 #FFF, 1px -1px 0 #FFF,
0px 1px 0 #FFF,  0 -1px 0 #FFF,
-1px 0 0 #FFF, 1px 0 0 #FFF;
}

.sub-banner1 {
position: absolute;
width: 100%;
margin: -60px auto 0 auto;
text-align: right;
}
.circle-gold {	
position: relative;
display: inline-block;
width: 110px;
height: 110px;
border-radius: 50%;
border: double 4px #C6A875;
background: var(--gradation01);
right: 30px;
box-shadow: 1px 1px 8px rgba(156,159,167,0.8);
}
.circle-gold span {
position: absolute;
display: inline-block;
top: 48%;
left: -4px;
-webkit-transform: translateY(-50%);
transform: translateY(-50%);
width :110px;
text-align:center;
font-size: 1.1em;
font-weight: bold;
font-family: var(--base-font);
color: #C6A875;
}
.sub-banner2 {
width: 98%;
margin: 0 auto;
padding:0.81rem ;
color: var(--sub-color01);
text-align: left;
}



/*
.link-btn{ 
display: flex;
display: -webkit-flex;
justify-content: space-around;
-webkit-justify-content: space-around;
flex-wrap: wrap;
max-width: 500px;
z-index: 9970;
font-size: 2rem;
font-weight: bold;
margin: 250px auto 0 auto;
border: solid 1px red; }

.link-btn li a{ width: 22rem; height: 3.8rem; border-radius: 1.9rem; 
display: flex; justify-content: center; align-items: center; background: #fff; 
position: relative;  }
.link-btn li:nth-of-type(1) a{ background: var(--sub-color-blue); color: #fff; }
.link-btn li:nth-of-type(2) a{ background: var(--sub-color-gold); color: #fff; }
*/

/* 6つの特徴画像とラベルを包む親要素 */
.image-box {
position: relative;
/*
width: 100%;
line-height: 0;
*/
}
/* 6つの特徴画像 */
.base-img {
height: auto;
display: block;
box-shadow: 0 4px 15px rgba(0,0,0,0.1); /* 軽い影をつけると境界がわかりやすい */
}
/* 右下三角形ラベル */
.corner-label {
position: absolute;
/* はみ出しの指定 */
right: -5px; 
bottom: -5px;
width: 15%;
min-width: 85px;
max-width: 140px;
background-color: var(--sub-color02);
aspect-ratio: 1.4 / 1; /* 正方形で作ってから切り抜く */
clip-path: polygon(100% 0, 100% 100%, 0 100%);/* 右下直角三角形に切り抜き */
display: flex;
justify-content: flex-end;
align-items: flex-end;
z-index: 10;
opacity: 0.8;
}
/* ラベル内の数字 */
.number {
color: #fff;
font-family: var(--base-font);
font-size:1.9rem; /* デフォルトサイズ */
margin-right: 5%;
margin-bottom: 3%;
line-height: 1;
}
/* カード全体のコンテナ */
.feature-card {
position: relative;
width: 100%;
aspect-ratio: 16 / 9; /* 画像の比率を維持 */
background-image: url(../images/top/feature02-back.jpg); /* ここに背景画像を指定 */
background-size: cover;
background-position: center;
box-shadow: 0 10px 30px rgba(0,0,0,0.1);
border-radius: 4px; /* 必要に応じて */
}
.feature-card::before {
content: '';
position: absolute;
top: 0; left: 0; right: 0; bottom: 0;
background-color: rgba(255,255,255,0.3);
}
/* 内側の余白管理 */
.content-wrapper {
position: relative;
height: 100%;
padding: 10% 5%;
box-sizing: border-box;
display: flex;
align-items: center;
}
/* グラフ部分の構造 */
.chart-container {
position: relative;
width: 100%;
display: flex;
flex-direction: column;
gap: 20px;
}
.chart-row {
display: flex;
align-items: center;
z-index: 2;
}
/* ラベル部分（当院 / 以前の治療） */
.label-all {
width: 28%;
padding:0;
}
.label-current {
color: #4da6d8;
display: flex;
justify-content: center;
align-items: flex-end;
gap: 5px;
font-size: 1.2rem;
font-weight: bold;
}
.label-past {
font-family: var(--sub-font);
font-size: 95%;
color: var(--sub-color01);
position: relative;
right: 5px;
letter-spacing: -0.05rem;
}
/* バーのエリア */
.bar-area {
flex: 1;
position: relative;
right: 0%
}
.bar {
height: 22px;
display: flex;
justify-content: center;
align-items: center;
text-align: center;
color: white;
white-space: nowrap;
font-family: var(--sub-font);
}
.blue-bar {
background-color: #5bb2e5;
width: 66%; /* 期間に応じた長さ */
font-size: 110%;
}
.gray-bar {
background-color: var(--sub-color01);
width: 95%; /* 比較用の長さ */
}
/* 装飾線 */
.vertical-line {
position: absolute;
left: 27.5%; /* ラベルとバーの境界 */
top: -20%;
bottom: -20%;
width: 2px;
background-color: var(--sub-color01);
z-index: 1;
}
.dashed-line {
position: absolute;
left: 75.5%; /* 青いバーの終端に合わせる */
top: -20%;
bottom: -20%;
border-left: 0.1rem dashed #fff;
z-index: 3;
}

/*矯正歯科について*/
.bg-img-all {
background-image: url(../images/top/bg-img01.jpg);
background-repeat: no-repeat;
width: 100%;
padding: 10rem 0;
margin: 0 auto;
background-position: 50% 50%;
background-size: cover;
}
.bg-white {
background-color: rgba(255,255,255,0.8);
max-width: 700px;
margin: 0 auto;
padding: 3rem 10px;
}

/*院長あいさつ*/
.img-dr{
max-width: 400px;
padding: 10px;
border-radius: 20px;
margin-top: -10px;
}
.message {
font-size: 1.2rem;
padding: 1.2rem 1rem;
text-align: left;
}
.message span {
color: var(--sub-color02);
}
.qualific {
color: var(--sub-color01);
padding: 1rem 1rem 1rem;
max-width: 430px;
margin: 0 auto
}
.sub-banner3 {
position:relative;
max-width: 430px;
margin: -120px auto 0 auto;
text-align: right;
right: -10px;
}
.circle-gold3 {	
position: relative;
display: inline-block;
width: 140px;
height: 140px;
border-radius: 50%;
border: solid 1px var(--sub-color01);
background: var(--bg-color01);
right: 0px;
font-family: var(--sub-font);
color: var(--sub-color01);
padding-top: 1rem;
text-align: center;
line-height: 1.2rem;
font-weight: bold;
/*
box-shadow: 1px 1px 8px rgba(156,159,167,0.8);
*/
}
.circle-gold3 span {
position: absolute;
display: inline-block;
top: 55%;
left: 0px;
-webkit-transform: translateY(-50%);
transform: translateY(-50%);
width :140px;
text-align:center;
font-size: 1.3em;
font-weight: bold;
font-family: var(--base-font);
}

.roma-name {
padding-top: 2.4rem;
font-family: var(--base-font);
letter-spacing: -0.01rem;
}
.career {
background: var(--sub-color01);
max-width: 600px;
margin: 10px auto;
border-radius: 10px;
color: #fff;
padding: 1.1rem 0.5rem
}
.career table {
font-family: var(--sub-font);
text-align: left;
margin: 0 auto;
}
.career-border {
max-width: 400px;
padding: 1rem 0;
margin: 1rem auto 0;
border-top: medium double #fff;
border-bottom: medium double #fff;
}
.career table th {
white-space: nowrap;
}
.career table td {
padding: 0.2rem;
}
.message-txt {
text-align: left;
font-size: 1.2rem;
line-height: 1.9rem;
padding: 1rem;
max-width: 800px;
margin: 0 auto;
}

/*保険適応について*/
/*
.insurance {
background-image: url(../images/top/insurance01.jpg);
margin-top: 200px;
background-repeat: no-repeat;
background-position: 50% 33%;
background-size: 110% auto;
padding-bottom: 5rem;
border: solid 1px red;
}
*/
.my-number {
background-image: url(../images/top/myna.jpg);
height: 100%;
background-repeat: no-repeat;
background-position: 50% 70%;
background-size: cover;
padding: 5rem 0 3rem;
}
.insurance02 {
max-width: 500px;
background: var(--bg-color01);
opacity: 0.9;
filter: alpha(opacity=90);
-ms-filter: "alpha(opacity=90)";
border-radius: 0 90px 90px 0;
padding-top: 4rem;
}
.insurance-ttl {
font-size: 1.8rem;
font-weight: normal;
color: var(--sub-color01);
}
.insurance-txt {
text-align: left;
font-size: 1.1rem;
max-width: 400px;
margin: 0 auto;
padding: 1rem 0.8rem;
}
.circle03 {
position: absolute;
z-index: 2;
margin: -60px auto 0 1rem;
text-align: left;
}

.circle-item03 {	
position: relative;
display: inline-block;
width: 120px;
height: 120px;
border-radius: 50%;
border: solid 2px var(--sub-color02);
background: #fff;
right: 0px;
font-family: var(--main-font);
color: var(--sub-color01);
padding-top: 1rem;
text-align: center;
line-height: 1.4rem;
font-weight: bold;
font-size: 1.2em;
/*
box-shadow: 1px 1px 8px rgba(156,159,167,0.8);
*/
}
.circle-gold3 span {
position: absolute;
display: inline-block;
top: 55%;
left: 0px;
-webkit-transform: translateY(-50%);
transform: translateY(-50%);
width :140px;
text-align:center;
font-size: 1.3em;
font-weight: bold;
font-family: var(--base-font);
}
.beginner-mark {
padding-bottom: 0.7rem;
}
.icon-beginner {
position: relative;
display: inline-block;
width: 1em;
height: 1.2em;
vertical-align: middle;
margin-right: .4em;
}
.icon-beginner::before,.icon-beginner::after {
position: absolute;
top: 0;
content: "";
display: block;
width: 50%;
height: 100%;
border: .1em solid var(--sub-color01);
border-bottom-width: .15em;
box-sizing: border-box;
}
.icon-beginner::before {
left: 0;
background: #ff0;
transform: skewY(45deg);
border-radius: .3em 0 0 .1em;
border-right: none;
}
.icon-beginner::after {
right: 0;
background: #390;
transform: skewY(-45deg);
border-radius: 0 .3em .1em 0;
border-left: none
}
.icon-beginner.mono::before {background: transparent;}
.icon-beginner.mono::after {background: var(--sub-color01);}

/*院内設備について*/
.top-facility {
width: 85%;
margin: 0 auto;
padding: 2rem 0.5rem;
border-top: solid 1px var(--sub-color01);
border-left: solid 1px var(--sub-color01);
border-right: solid 1px var(--sub-color01);
border-radius: 30px 30px 0 0;
background-color: var(--bg-color03);
}


/***下層ページ****/
/*院長あいさつ*/
.dr-name {font-size: 1.8rem;}
.qualific2 {
padding: 1rem;
color: var(--sub-color01);
}
.job-ttl {
text-align: left;
padding: 0 1rem;
color: var(--sub-color01);
}
.book-img {
max-width: 220px;
height: auto;
box-shadow: 0 4px 15px rgba(0,0,0,0.2); /* 軽い影をつけると境界がわかりやすい */
}
.txt-low-layer picture {}
.message-img {
max-width: 500px;
display: flex;
justify-content: center;
align-items: center;
margin: 0 auto;
}
/* テキスト下のBG画像 */
.hero-img {
position: relative;
max-width: 500px;
min-height: 300px;
background-image: url(../images/message/message-img01.jpg);
background-size: 140%;
background-position: 20% 50%;
background-repeat: no-repeat;
display: flex;
align-items: center; /* 縦方向の中央揃え */
justify-content: center;
margin: 0 auto 1rem;
}
.hero-img02 {
position: relative;
max-width: 500px;
min-height: 300px;
background-image: url(../images/message/message-img02.jpg);
background-size: 140%;
background-position: 70% 40%;
background-repeat: no-repeat;
display: flex;
align-items: center; /* 縦方向の中央揃え */
justify-content: center;
margin: 0 auto 1rem;
}
/* 画像上の背景バーとテキスト */
.hero-bar {
background: rgba(255, 255, 255, 0.9);
padding: 7px 3px;
margin-top: 35%;
width: 80%;
margin-left: -20%;
box-shadow: 7px 8px 15px rgba(0,0,0,0.2); 
}
.hero-title {
font-size: 1.1rem;
color: #5a7b8f;
line-height: 1.4;
text-align: left;
}
.hero-bar02 {
width: 56%;
margin-right: -44%;
padding: 7px 8px;
margin-top: 35%;
background: rgba(255, 255, 255, 0.9);
box-shadow: -10px 10px 15px rgba(0,0,0,0.2); 
}
.hero-title02 {
font-size: 1.1rem;
color: #5a7b8f;
line-height: 1.4;
text-align: left;
}

/***医院紹介****/
.itero th {width:35%; text-align: right; padding: 0 0.5rem 0.6rem 0; line-height: 1.3rem; color: var(--sub-color01);}
.itero td {width:auto; line-height: 1.5rem;}

/*下層ページテーブル*/
.info table {
max-width: 600px;
width: 97%;
margin: 3rem auto;
color: var(--sub-color01);
}
.info th, .info td {
border: thin solid var(--sub-color01);
padding: 0.7rem 1rem;
}
.info th {
vertical-align: middle;
background-color: var(--bg-color02);
width: 30%
}
/*下層ページスケジュール表*/
.schedule-page {
max-width: 600px;
margin: 0 auto;
padding-bottom: 1rem;
}
.scheTable-page {
font-size: 1.6rem;
}
.scheTable-page thead {
border-bottom: thin solid var(--sub-color01);
}
.scheTable-page thead th {
color: var(--sub-color01);
font-family: var(--sub-font);
}
.scheTable-page td {
color: var(--sub-color02);
padding: 0.2rem 0.4rem;
}
.scheTable-page tbody th {
font-family: var(--sub-font);
font-weight: 200;
padding: 0 0.7rem;
color: var(--sub-color01);
}
.scheTable-page tbody tr {
border-bottom: thin solid var(--sub-color01);
}
.scheTable-page th, .scheTable-page td {
padding: 0.8rem;
}
.scheTable-page thead span {
text-align: center;
padding: 0 0.5rem 0 0;
}
.sche-notice-page {
color: var(--sub-color01);
padding: 1rem 0;
text-align: left;
font-size: 1.4rem;
}
.sche-notice-page2 {
color: var(--sub-color01);
text-align: left;
}
.slash-page {
padding: 0 0 0 0.4rem;
}

/*料金表ページ*/
.price-img {/*border-bottom: 1px solid var(--sub-color01);*/}
.price, .price-ttl {padding: 0.7rem 1rem;}

/*下層ページテーブル*/
.price th, .price td {border: thin solid var(--sub-color01);}
.price th {background-color: var(--bg-color02);color: var(--sub-color01);
/*vertical-align: middle;*/
}
.price td {font-weight: bold;}

.pay table {
max-width: 550px;
width: 96%;
margin: 3rem auto;
}
.pay th{
border: thin solid var(--sub-color01);
padding: 0.5rem;
}
.pay td {
border: thin solid var(--sub-color01);
padding: 1rem 0.7rem;
text-align: left;
}
.pay th {
background-color: var(--sub-color01);
color: #fff;
font-size: 1.1rem;
}
.pay td p {
margin-bottom: 1rem;
}
.pay td picture {

}
.pay td picture img{

}
.loan-ttl {
color: var(--sub-color01);
text-align: center;
}
.loan-txt {
color: var(--sub-color01);
}
.credit {
display: flex;
justify-content: center;
align-items: center;
max-width: 400px;
margin: 0 auto;
}
.loan {
display: flex;
justify-content: center;
align-items: center;
max-width: 180px;
margin: 1.5rem auto;
}



/*アクセスページリスト*/
.access-list {
color: var(--sub-color01);
font-size: 1.1rem;
line-height: 2rem;
margin-left: 1.3rem;
}
.access-list li {
list-style: disc;
}
.info td p {
margin-bottom: 1rem;
}
/*医療費控除についてページ*/
.deduction-box {
background: #f9fbfd;
border: 1px solid #e1e8f0;
border-radius: 10px;
padding: 0.4rem;
text-align: center;
}
.deduction-box strong {

}
.deduction-box small {
display: block;
font-size: 0.85rem;
color: #666;
line-height: 1.4;
margin: 5px auto;
}
.highlight {
display: flex;
align-items: center;
justify-content: center;
background: #e8f2ff;
border-color: #bcd7ff;
}
.highlight strong {
color: #1e6bb8;
}
.operator {
display: flex;
align-items: center;
justify-content: center;
font-size: 1.8rem;
font-weight: bold;
color: #1e6bb8;
padding: 0 0.2rem;
}

/*** 矯正歯科選びのコツ ***/
.number{counter-reset: titlenum; padding: 0 1rem; margin: 0 auto;}
.subcopy {
position: relative;
max-width: 700px;
padding: 1rem 1.5rem;
text-align: left;
color: var(--sub-color01);
background: var(--bg-color04);
border-radius: 0 10px 10px 10px;
margin: 3rem auto 5rem;
line-height: 1.8rem;
}
.subcopy p {
font-size: 1rem;
}
.subcopy:before {
font-size: 1rem;
position: absolute;
top: -24px;
left: 0;
height: 24px;
padding: 0 2em;
counter-increment: titlenum; 
content: "誤解 " counter(titlenum);
color: #fff;
border-radius: 10px 10px 0 0;
background: var(--sub-color01);
}
.subcopy-ttl {font-size: 1.3rem;margin-bottom: 0.5rem;}
.subcopy-ttl span {margin-right: 0.5rem}
.closs {
display: inline-block;
vertical-align: middle;
color: red;
line-height: 1;
width: 1em;
height: 0.1em;
background: currentColor;
border-radius: 0.1em;
position: relative;
transform: rotate(45deg);
}
.closs::before {
content: '';
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
background: inherit;
border-radius: inherit;
transform: rotate(90deg);
}

.subcopy2 {
position: relative;
max-width: 700px;
padding: 1rem 1.5rem;
text-align: left;
color: var(--sub-color01);
background: var(--bg-color05);
border-radius: 0 10px 10px 10px;
margin: 0rem auto 5rem;
line-height: 1.8rem;
}
.subcopy2-ttl {
font-size: 1rem;
color: #fff;
padding: 0.5rem 2em;
border-radius: 10px 10px 0 0;
background: var(--sub-color01);
width: 270px;
}

/*** よくあるご質問ページ ***/
.faq {
counter-reset: serial-number;
}
.anser {counter-reset: serial-anser;}
.accordion {margin: 20px auto;}
.accordion_title {
font-family: var(--sub-font);
position: relative;
border: none;
display: block;
list-style: none;
cursor: pointer;
background: #fff;
padding: 1rem 4.7em 1rem 4em;
line-height: 1.6em;
font-weight: bold;
counter-increment: serial-number;
text-indent: -2.5em;
}
summary.accordion_title::-webkit-details-marker {display:none;}
.accordion_title::before{
color: var(--sub-color01);
font-size:1.1rem;
margin-right:0.5rem;
content: "Q" counter(serial-number) "." ;
}
.accordion_title:after {
content: "+";
position: absolute;
top: calc(50% - 0.5em);
right: 1rem;
line-height: 1;
padding: 0;
pointer-events: none;
}
.accordion::details-content {
opacity: 0;
block-size: 0;
transition: .3s;
transition-property: display, opacity, block-size, padding;
transition-behavior: allow-discrete;
line-height: 1.6em;
background: #fff;
}
.accordion .accordion_content {
padding: 0 1.4em;
background: var(--bg-color01);
}
.accordion_content::before {
content: "A"  counter(serial-number) ".";
}
.accordion .accordion_content > *:first-of-type {margin-top: 0;}
.accordion .accordion_content > *:last-of-type {margin-bottom: 0;}
.accordion_content p {margin: 1rem 0;}
.accordion[open]::details-content {
opacity: 1;
block-size: auto;
block-size: calc-size(auto, size);
}
.accordion[open] .accordion_content {
padding: 1em 1.4rem 1.4rem 1.4rem;
}
.accordion[open] .accordion_title:after {content: "ー";}
.accordion[open] .accordion_title {color: var(--sub-color01); font-weight: bold;}
.accordion[open] .link-more {
font-family: var(--sub-font);
width: 150px;
margin: 1rem 0 0 auto!important;
padding: 0.3rem;
text-align: center;
font-size: 0.9rem;
font-weight: bold;
background-color: #fff;
border: thin solid var(--sub-color01);
border-radius: 0 15px 15px 0
}
/*よくある質問アンサーページ*/
.answer {
font-family: var(--sub-font);
max-width: 600px;
margin: 0 auto;
padding: 2rem 1rem;
text-align: left;
line-height: 1.5rem;
}
.answer p {
margin-bottom: 1.2rem;
}
.blue {
color: var(--sub-color04);
font-size: 1.1rem;
}
/***　学会発表***/
.academy p {margin-bottom: 1rem;}
/* ==============================================
   レスポンシブ
   ============================================== */
/* タブレット (最大幅 1024px) */

@media (max-width: 900px) {
.top-banner {

}

.top-h1 {top: 80%;}
}

@media (max-width: 768px) {
.top-banner {}
.top-hero{font-size: 2.2rem;}
.sub-banner3 {right: 1px;}
.top-facility {width: 97%;}
}

@media screen and (max-width: 640px) {
.top-banner {}
.top-hero{font-size: 1.8rem;}
.top-h1 {top: 78%;}
.sub-banner1 {position: static;}
.img-dr{max-width: 400px}
.career {margin: 10px;}
.my-number {background-position: 65% 70%;}
/*下層ページスケジュール表*/
.scheTable-page {font-size: 1.4rem;}
}

@media screen and (max-width: 560px) {
/*下層ページスケジュール表*/
.schedule-page {
width: 99%;
}
.scheTable-page {
font-size: 1.2rem;
}
.scheTable-page th, .scheTable-page td {
padding: 0.6rem;
}
.sche-notice-page {
padding: 0.6rem 0;
font-size: 1.2rem;
}
}

@media screen and (max-width: 530px) {
/* テキスト下のBG画像 */
.hero-img {
background-size: 150%;
background-position: 30% 50%;
}
/* 画像上のテキストボックス */
.hero-bar {
margin-top: 45%;
width: 93%;
margin-left: -7%;
}
.hero-title {
font-size: 1rem;
}
.hero-bar02 {
width: 70%;
margin-right: -30%;
}
}

@media screen and (max-width: 470px) {
/*下層ページスケジュール表*/
.scheTable-page th, .scheTable-page td {
padding: 0.3rem;
}
.sche-notice-page {
padding: 0.6rem 0;
font-size: 1rem;
}
/**/
.info th {
width: 28%;
padding-left: 0;
padding-right: 0;
}
}

@media screen and (max-width: 460px) {
.top-banner {}
.slide1 {background-position: 75%;}
.slide3 {background-position: 65%;}
.top-hero{font-size: 1.6rem; }
.sub-banner1 {text-align: center;}
.circle-gold {right: 0;width: 6rem; height: 6rem;}
.circle-gold span {width: 6rem;}
.insurance-ttl {
font-size: 1.6rem;
}
}

@media screen and (max-width: 450px) {
/* 画像上のテキストボックス */
.hero-img {
min-height: 250px;
background-position: 30% 50%;
}
.hero-bar {
width: 98%;
margin-left: -2%;
padding: 7px 0px;
}
.hero-bar02 {
width: 84%;
margin-right: -16%;
}
}

@media screen and (max-width: 400px) {
.top-hero {padding: 0 15px;}
/*下層ページスケジュール表*/
.scheTable-page {font-size: 1.1rem;}
.scheTable-page th, .scheTable-page td {
padding: 0.2rem;
}
}