.mv{ padding-top: 12.5rem; position: relative; z-index: 1; }
.mv:before{ content: ''; width: calc(50vw + 10rem); height: calc(100% - 7.5rem); background: var(--gradation01); position: absolute; top: 0; right: calc(-50vw + 50rem); z-index: -2; }
.mv:after{ content: ''; width: calc(50vw + 10rem); height: calc(100% - 7.5rem); background: url(../images/common/webp/bg01.webp) center/15rem; position: absolute; top: 0; right: calc(-50vw + 50rem); z-index: -1; }
.mv .main-slide{ width: calc(50vw + 25rem); margin: 0 0 0 calc(-50vw + 50rem); padding-bottom: 2rem; overflow: hidden; }
.mv .main-slide li img{ width: 100%; object-fit: cover; object-position: center; max-height: 80rem; }
.mv .main-slide li:before{ content: ''; width: calc(100% - 2rem); height: calc(100% - 2rem); box-sizing: border-box; border: solid .4rem var(--sub-color01); position: absolute; top: 50%; left: 50%; transform: translate(-50%,-50%);  }
.mv .main-slide li:after{ content: ''; width: calc(100% - 4rem); height: calc(100% - 4rem); box-sizing: border-box; border: solid 1px var(--sub-color01); position: absolute; top: 50%; left: 50%; transform: translate(-50%,-50%); }
.mv .main-slide li p{ position: absolute; z-index: 10; bottom: -2rem; left: 0; font-size: 4rem; color: var(--sub-color01); line-height: 1; }
.mv .main-slide li p span{ background: #fff; display: inline-block; line-height: 1.5; padding: 0 .5em 0 1em; }
.mv .main-slide li p span ~ span{ margin-top: .5rem; }
.mv .inner{ position: absolute; top: 0; right: calc(-50vw + 50rem); z-index: 10; width: calc(100vw - (50vw + 250px)); height: 100%; padding-top: 20rem; }
.mv .inner .txt{ margin: 0 auto; display: table; }
.mv .inner .txt h1{ font-size: 2rem; font-family: var(--base-font); color: #fff; line-height: 1.4; margin-bottom: 3.6rem; }
.mv .inner .txt h1 span{ display: inline-block; background: var(--sub-color01); padding: 0 .3em; }
.mv .inner .txt h1 span ~ span{ margin-top: .4rem; }
.mv .inner .txt ul{ display: table; }
.mv .inner .txt ul li{ font-size: 2.5rem; color: var(--bg-color01); font-weight: 700; height: 5.4rem; display: flex; align-items: center; border-bottom: solid 1px var(--sub-color02); padding: 0 .5em 0 3.2rem; background: url(../images/common/icon-check01.png) no-repeat left center/2.2rem; }
.mv .inner .banner-covid{ position: absolute; bottom: 0; right: 50%; transform: translateX(50%); filter: drop-shadow(0px 0px 6px rgba(0,0,0,0.2)); }
.mv .inner .banner-covid img{ max-width: none; }

.sec-news{ background: var(--bg-color01); padding: 5rem 0; position: relative; z-index: 0; }
.sec-news:before{ content: ''; width: 100vw; height: calc(100% + 7.5rem); background: var(--bg-color01); position: absolute; bottom: 0; left: 50%; transform: translateX(-50%); z-index: -1; }
.sec-news a{ display: block; width: 60rem; margin: 0 auto; padding-right: 6.5rem; position: relative; }
.sec-news a:before{ content: ''; width: 3.8rem; height: 3.8rem; background: url(../images/common/arrow01.png) no-repeat center/contain; position: absolute; top: 50%; right: 0; transform: translateY(-50%); transition: .5s; }
/*.sec-news a:after{ content: ''; width: 3.8rem; height: 3.8rem; background: url(../images/common/arrow02.png) no-repeat center/contain; position: absolute; top: 50%; right: 0; transform: translateY(-50%); transition: .5s; opacity: 0; }*/
.sec-news a > span{ display: block; width: 100%; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.sec-news a > span .time{ display: inline-block; margin-right: 2em; }
.sec-news a:hover{ opacity: 1; }
.sec-news a:hover:before{ opacity: 0; }
.sec-news a:hover:after{ opacity: 1; }

.sec-intro{ padding-top: 8.5rem; margin-bottom: 9rem; z-index: 1; }
.sec-intro .item01{ position: absolute; top: -4rem; right: -14rem; }
.sec-intro .item02{ position: absolute; top: 9.8rem; left: -14rem; }
.sec-intro h2{ font-size: 4rem; color: var(--sub-color01); text-align: center; margin-bottom: 1.4rem; }
.sec-intro h2 + p{ font-size: 1.8rem; text-align: center; line-height: 2.1; margin-bottom: 3.6rem; }
.sec-intro .link-list a{ width: 100%; height: 10rem; display: flex; align-items: center; justify-content: flex-end; position: relative; z-index: 0; background: no-repeat center/cover; }
.sec-intro .link-list a:before{ content: ''; width: 100%; height: 100%; background: linear-gradient(270deg, rgba(112, 87, 66, 1) 0%, rgba(112, 87, 66, 0) 100%); position: absolute; top: 0; left: 0; z-index: -1; }
/*.sec-intro .link-list a:after{ content: ''; width: .9rem; height: .9rem; background: url(../images/common/arrow03.png) no-repeat center/contain; position: absolute; bottom: 1.4rem; right: 1.4rem; }*/
.sec-intro .link-list a:nth-of-type(1){ background-image: url(../images/index/webp/intro01.webp); }
.sec-intro .link-list a:nth-of-type(2){ background-image: url(../images/index/webp/intro02.webp); }
.sec-intro .link-list a + a{ margin-top: 1rem; }
.sec-intro .link-list a dl{ width: 33rem; color: #fff; }
.sec-intro .link-list a dl dt{ font-size: 1.8rem; font-weight: 700; }

.sec-info{ padding-bottom: 10rem; z-index: 0; }
.sec-info:before{ content: ''; width: 120vw; height: calc(100% + 30rem); background: url(../images/common/webp/bg02.webp) repeat-x top center/120rem; position: absolute; bottom: 0; left: 50%; transform: translateX(-50%); z-index: -1; }

.bg-flower{ position: relative; z-index: 0; color: #fff; }
.bg-flower:before{ content: ''; width: 100vw; height: 100%; background: var(--gradation01); position: absolute; top: 0; left: 50%; transform: translateX(-50%); z-index: -2; }
.bg-flower:after{ content: ''; width: 100vw; height: 100%; background: url(../images/common/webp/bg01.webp) center/15rem; position: absolute; top: 0; left: 50%; transform: translateX(-50%); z-index: -1; }
.bg-flower h2{ font-size: 4rem; text-align: center; line-height: 1.6; margin-bottom: 1.8rem; }
.bg-flower h3{ font-size: 2.4rem; text-align: center; color: var(--sub-color02); position: relative; z-index: 0; padding: 1.2rem 0; margin-bottom: 1.8rem; }
.bg-flower h3:before{ content: ''; width: 100vw; height: 100%; background: var(--bg-color01); position: absolute; top: 0; left: 50%; transform: translateX(-50%); z-index: -2; }
.bg-flower h3:after{ content: ''; width: 100vw; height: calc(100% - 1rem); border-top: solid 1px; border-bottom: solid 1px; position: absolute; top: 50%; left: 50%; transform: translate(-50%,-50%); z-index: -1; }
.bg-flower h3 + p{ text-align: center; font-size: 1.8rem; line-height: 2.1; }

.sec-about{ z-index: 1; }
.sec-about .wrap{ padding-top: 9rem; padding-bottom: 10rem; }
.sec-about .item01{ position: absolute; bottom: 21rem; right: -17rem; }
.sec-about .item02{ position: absolute; bottom: -3rem; right: -12rem; }
.sec-about .item03{ position: absolute; bottom: 6rem; left: -16rem; }
.sec-about h3 + p{ margin-bottom: 4rem; }
.sec-about .btn{ margin: 0 auto; }

h2.general{ font-size: 3rem; color: var(--sub-color01); text-align: center; position: relative; z-index: 0; height: 15rem; padding-top: 7rem; }
h2.general:before{ content: attr(data-en); font-size: 15rem; font-family: var(--en-font); line-height: .7; letter-spacing: 0; color: #ece8e1; position: absolute; bottom: 0; left: 50%; transform: translateX(-50%); z-index: -1; }
h2.general:after{ content: ''; width: 18rem; height: 6.2rem; background: url(../images/common/webp/item-ttl01.webp) no-repeat center/contain; position: absolute; top: 0; left: 50%; transform: translateX(-50%); }
h2.general + p.sub-font{ font-size: 1.8rem; text-align: center; margin-top: .6rem; }

.sec-feature{ padding-top: 10rem; padding-bottom: 10rem; z-index: 0; }
.sec-feature:before{ content: ''; width: 100vw; height: 100%; background: var(--bg-color01); position: absolute; top: 0; left: 50%; transform: translateX(-50%); z-index: -1; }
.sec-feature h2{ margin-bottom: 5rem; }
.sec-feature ol li{ min-height: 30rem; display: flex; align-items: center; position: relative; }
.sec-feature ol li + li{ margin-top: 1rem; }
.sec-feature ol li .img{ position: absolute; left: calc(-50vw + 50rem); height: 100%; padding-left: 6rem; }
.sec-feature ol li .img .no{ width: 6rem; height: 100%; position: absolute; left: 0; background: linear-gradient(180deg, rgba(238, 218, 226, 1) 0%, rgba(235, 213, 222, 1) 1.17%, rgba(218, 175, 192, 1) 10.51%, rgba(202, 143, 167, 1) 20.6%, rgba(190, 117, 147, 1) 31.44%, rgba(180, 96, 131, 1) 43.3%, rgba(173, 82, 120, 1) 56.71%, rgba(169, 74, 113, 1) 72.97%, rgba(168, 71, 111, 1) 100%); z-index: 0; color: #fff; padding-top: 9rem; }
.sec-feature ol li .img .no:before{ content: ''; width: 100%; height: 100%; background: url(../images/common/webp/bg01.webp) center/15rem; position: absolute; top: 0; left: 0; z-index: -1; }
.sec-feature ol li .img .no span{ display: block; -webkit-writing-mode: vertical-rl; -ms-writing-mode: tb-rl; writing-mode: vertical-rl; font-size: 1.2rem; margin: 0 auto; }
.sec-feature ol li .img .no strong{ font-size: 3rem; display: block; text-align: center; line-height: 2; }
.sec-feature ol li .img img{ width: calc(50vw - 6rem); height: 100%; object-fit: cover; object-position: center; }
.sec-feature ol li .txt{ width: 40rem; margin-left: auto; }
.sec-feature ol li .txt h3{ font-size: 2.4rem; color: var(--sub-color02); line-height: 1.6; padding-bottom: 1.4rem; position: relative; margin-bottom: 1.8rem; }
.sec-feature ol li .txt h3:after{ content: ''; width: 50rem; height: 1px; background: #fff; position: absolute; bottom: 0; right: 0; }
.sec-feature ol li .txt h3 a{ display: block; position: relative; }
/*
.sec-feature ol li .txt h3 a:before{ content: ''; width: 3.8rem; height: 3.8rem; background: url(../images/common/arrow01.png) no-repeat center/contain; position: absolute; top: 50%; right: 0; transform: translateY(-50%); transition: .5s; }
.sec-feature ol li .txt h3 a:after{ content: ''; width: 3.8rem; height: 3.8rem; background: url(../images/common/arrow02.png) no-repeat center/contain; position: absolute; top: 50%; right: 0; transform: translateY(-50%); transition: .5s; opacity: 0; }
*/
.sec-feature ol li .txt h3 a:hover{ opacity: 1; }
.sec-feature ol li .txt h3 a:hover:before{ opacity: 0; }
.sec-feature ol li .txt h3 a:hover:after{ opacity: 1; }

.sec-painless{ background: url(../images/index/webp/painless-bg01.webp) no-repeat center/cover; padding: 10rem 0; }
.sec-painless .white-wrap{ background: #fff; z-index: 0; padding: 9.4rem 10rem 10rem; }
.sec-painless .white-wrap:before{ content: ''; width: calc(100% - 2rem); height: calc(100% - 2rem); box-sizing: border-box; border: solid .4rem var(--bg-color01); position: absolute; top: 50%; left: 50%;  transform: translate(-50%,-50%); z-index: -1; }
.sec-painless .white-wrap:after{ content: ''; width: calc(100% - 4rem); height: calc(100% - 4rem); box-sizing: border-box; border: solid 1px var(--bg-color01); position: absolute; top: 50%; left: 50%;  transform: translate(-50%,-50%); z-index: -1; }
.sec-painless .white-wrap h2{ font-size: 2.4rem; color: var(--sub-color02); text-align: center; letter-spacing: .12em; }
.sec-painless .white-wrap .head{ padding-bottom: 4.5rem; position: relative; }
.sec-painless .white-wrap .head div[class^="round"]{ padding-bottom: 10rem; position: absolute; bottom: 0; }
.sec-painless .white-wrap .head div[class^="round"] p{ width: 20rem; height: 20rem; border-radius: 100%; background: var(--gradation01); display: flex; justify-content: center; align-items: center; font-size: 1.8rem; font-weight: 700; text-align: center; color: var(--bg-color01); }
.sec-painless .white-wrap .head div[class^="round"] p strong{ position: relative; }
.sec-painless .white-wrap .head div[class^="round"] p strong:before{ content: ''; width: .3rem; height: .3rem; border-radius: 100%; background: var(--bg-color01); position: absolute; top: -.7rem; left: 50%; transform: translateX(-50%); }
.sec-painless .white-wrap .head .round-left{ left: -2.3rem }
.sec-painless .white-wrap .head .round-left img{ position: absolute; bottom: 0; right: 0; max-width: none; }
.sec-painless .white-wrap .head .round-right{ right: -2.3rem }
.sec-painless .white-wrap .head .round-right img{ position: absolute; bottom: 0; left: 0; max-width: none; }
.sec-painless .white-wrap .worry-list{ position: relative; z-index: 0; padding: 4rem 0 5rem; display: table; margin: 0 auto 4rem; min-width: 38rem; }
.sec-painless .white-wrap .worry-list:before{ content: ''; width: 100vw; height: 100%; background: var(--bg-color01); position: absolute; top: 0; left: 50%; transform: translateX(-50%); z-index: -1; }
.sec-painless .white-wrap .worry-list li{ font-size: 1.8rem; font-weight: 700; color: var(--sub-color02); letter-spacing: .1em; height: 5rem; width: 100%; display: flex; align-items: center; padding-left: 4.4rem; background: url(../images/common/border01.png) repeat-x left bottom/auto 1.5px; position: relative; }
.sec-painless .white-wrap .worry-list li:before{ content: ''; width: 2.4rem; height: 2rem; background: url(../images/index/icon-check01.png) no-repeat center/contain; position: absolute; left: 0; top: 50%; transform: translateY(-50%); }
.sec-painless .white-wrap .worry-list li strong{ color: var(--sub-color01); }
.sec-painless .white-wrap .btn{ margin: 4rem auto 0; }

.sec-dr{ padding-top: 10rem; background: url(../images/common/webp/bg02.webp) repeat-x bottom center/120rem; position: relative; z-index: 0; }
.sec-dr:before{ content: ''; width: 100%; height: 100%; background: url(../images/index/webp/dr-bg01.webp) repeat-x left bottom/120rem; position: absolute; bottom: 0; left: 0; z-index: -1; }
.sec-dr .wrap{ padding-bottom: 10rem; }
.sec-dr h2{ margin-bottom: 10rem; }
.sec-dr .txt{ width: 40rem; }
.sec-dr .txt h3{ font-size: 2.4rem; color: var(--sub-color02); line-height: 1.6; padding-bottom: 2.8rem; background: url(../images/common/border01.png) repeat-x bottom left/auto 1.5px; margin-bottom: 2.4rem; }
.sec-dr .txt h4{ font-family: var(--base-font); font-size: 1.8rem; font-weight: 700; color: var(--sub-color02); line-height: 1.7; padding-bottom: 2.5rem; background: url(../images/common/border01.png) repeat-x bottom left/auto 1.5px; margin-bottom: 2.4rem; }
.sec-dr .txt p{ margin-bottom: 3.6rem; line-height: 2.2; }
.sec-dr .pic{ position: absolute; bottom: 0; right: -10rem; }
.sec-dr .pic p.catch{ position: absolute; top: 0; right: 0; -webkit-writing-mode: vertical-rl; -ms-writing-mode: tb-rl; writing-mode: vertical-rl; font-size: 4rem; color: var(--sub-color01); line-height: 1.6; font-feature-settings: initial; }
.sec-dr .pic p.catch span{ display: inline-block; background: #fff; margin-left: 1rem; }

.sec-orth{ position: relative; z-index: 1; }
.sec-orth .bg-flower{ padding: 9rem 0 5rem; }
.sec-orth .orth-list{ display: flex; }
.sec-orth .orth-list li{ width: 100%; height: 24rem; position: relative; display: flex; justify-content: center; align-items: center; z-index: 0; background: no-repeat center/cover; }
.sec-orth .orth-list li:nth-of-type(1){ background-image: url(../images/index/webp/orth01.webp); }
.sec-orth .orth-list li:nth-of-type(2){ background-image: url(../images/index/webp/orth02.webp); }
.sec-orth .orth-list li:nth-of-type(3){ background-image: url(../images/index/webp/orth03.webp); }
.sec-orth .orth-list li:before{ content: ''; width: 100%; height: 10rem; background : linear-gradient(0deg, rgba(229, 228, 218, 1) 0%, rgba(229, 228, 218, 0) 100%); position: absolute; bottom: 0; left: 0; z-index: -1; }
.sec-orth .orth-list li span{ display: block; font-size: 2.4rem; color: #fff; text-align: center; }
.sec-orth .orth-list li .btn{ position: absolute; bottom: -3rem; left: 50%; transform: translateX(-50%); }
.sec-orth .orth-list li .btn:hover{ transform: translateX(-50%) scale(1.05); }

.sec-treatment{ padding-top: 13rem; padding-bottom: 10rem; z-index: 0; margin-bottom: 10rem; }
.sec-treatment:before{ content: ''; width: 100vw; height: 100%; background: var(--bg-color01); position: absolute; top: 0; left: 50%; z-index: -1; transform: translateX(-50%); }
.sec-treatment h2 + p{ margin-bottom: 4rem; }

.sec-flow .item01{ position: absolute; top: 20rem; left: calc(-50vw + 50rem); z-index: 1; width:660px; }
.sec-flow .item01 picture img{ width: calc(50vw - 5rem); height: 26rem; object-fit: cover; object-position: center; }
.sec-flow h2{ margin-bottom: 14.5rem; }
.sec-flow .inner{ width: 48rem; margin-left: auto; padding: 7rem 0 10rem; position: relative; z-index: 0; }
.sec-flow .inner:before{ content: ''; width: calc(50vw + 40rem); height: 100%; background: var(--gradation01); position: absolute; bottom: 0; left: -42rem; z-index: -2; }
.sec-flow .inner:after{ content: ''; width: calc(50vw + 40rem); height: 100%; background: url(../images/common/webp/bg01.webp) center/15rem; position: absolute; left: -42rem; bottom: 0; z-index: -1; }
.sec-flow .inner ol{ counter-reset: flow; margin-bottom: 5rem; }
.sec-flow .inner ol li{ color: #fff; position: relative; min-height: 12.5rem; padding: 2rem 0 2.3rem 8rem; background: url(../images/common/border02.png) repeat-x left bottom/auto 1.5px; }
.sec-flow .inner ol li:before{ counter-increment: flow; content: counter(flow,decimal-leading-zero); width: 6rem; height: 7.5rem; clip-path: polygon(0% 0%, 100% 0%, 100% 80%, 50% 100%, 0% 80%); background: var(--sub-color02); position: absolute; top: 50%; left: 0; transform: translateY(-50%); font-size: 3rem; font-family: var(--sub-font); color: #fff; line-height: 1; letter-spacing: 0; display: block; text-align: center; box-sizing: border-box; padding-top: 1.9rem; }
.sec-flow .inner ol li h3{ font-size: 1.8rem; font-family: var(--base-font); font-weight: 700; margin-bottom: .6rem; }
.sec-flow .inner ol li p{ line-height: 1.6; font-size: 1.2rem; }
.sec-flow .inner .btn{ margin: 0 auto; }

.sec-price{ padding: 9rem 0 10rem; background: url(../images/common/webp/bg02.webp) repeat-x bottom center/120rem; position: relative; z-index: 0; }
.sec-price:before{ content: ''; width: 100%; height: 100%; background: url(../images/index/webp/dr-bg01.webp) repeat-x left bottom/120rem; position: absolute; bottom: 0; left: 0; z-index: -1; }
.sec-price h2{ font-size: 4rem; color: var(--sub-color01); text-align: center; margin-bottom: 4rem; }
.sec-price .first-visit{ background: #e0dad2; color: var(--sub-color02); text-align: center; margin-bottom: 3rem; }
.sec-price .first-visit dt{ width: 43rem; height: 12rem; display: flex; align-items: center; justify-content: center; clip-path: polygon(0% 0%, calc(100% - 4rem) 0%, 100% 50%, calc(100% - 4rem) 100%, 0% 100%); background: var(--bg-color01); }
.sec-price .first-visit dt h3{ font-size: 2.4rem; font-family: var(--base-font); font-weight: 700; display: table; margin: 0 auto; line-height: 1.6; padding-left: 3.5rem; background: url(../images/index/price-icon01.png) no-repeat center left/3rem; }
.sec-price .first-visit dd{ width: calc(100% - 43rem); align-self: center; padding-right: 3rem; }
.sec-price .first-visit dd strong{ font-size: 2.4rem; font-family: var(--base-font); font-weight: 700; display: table; margin: 0 auto; line-height: 1.6; padding-left: 3.5rem; background: url(../images/index/price-icon02.png) no-repeat center left/3rem; }
.sec-price .white-wrap{ background: #fff; border: solid .4rem var(--bg-color01); padding: 5.5rem 4.5rem 4.5rem; position: relative; z-index: 0; margin-bottom: 3rem; }
.sec-price .white-wrap:before{ content: ''; width: calc(100% - 2rem); height: calc(100% - 2rem); box-sizing: border-box; border: solid 1px var(--bg-color01); position: absolute; top: 50%; left: 50%; transform: translate(-50%,-50%); z-index: -1; }
.sec-price .white-wrap ul{ display: flex; margin-bottom: 3.5rem; }
.sec-price .white-wrap ul li{ width: 100%; text-align: center; }
.sec-price .white-wrap ul li + li{ border-left: solid 1px var(--bg-color01); }
.sec-price .white-wrap ul li h3{ font-family: var(--base-font); font-size: 1.8rem; font-weight: 700; line-height: 1; color: var(--sub-color02); text-align: center; margin-bottom: 2.4rem; }
.sec-price .white-wrap + .btn{ margin: 0 auto; }

.sec-clinic{ padding-top: 10rem; padding-bottom: 9rem; z-index: 0; }
.sec-clinic:before{ content: ''; width: 100vw; height: 100%; background: var(--bg-color01); position: absolute; top: 0; left: 50%; transform: translateX(-50%); z-index: -1; }
.sec-clinic h2 + p{ margin-bottom: 4rem; }
.sec-clinic .clinic-row{ margin-top: 4rem; align-items: center; }
.sec-clinic .clinic-row p{ width: 60rem; }

.sec-recruit{ padding-left: 42rem; position: relative; }
.sec-recruit .item01{ position: absolute; left: 0; bottom: 0; }
.sec-recruit .link-box{ width: 100%; height: 37.2rem; display: flex; align-items: center; background: var(--gradation01); padding-left: 8rem; position: relative; z-index: 0; color: #fff; }
.sec-recruit .link-box:before{ content: ''; width: calc(100% - 2rem); height: calc(100% - 2rem); box-sizing: border-box; border: solid .4rem var(--bg-color01); position: absolute; top: 50%; left: 50%; transform: translate(-50%,-50%); z-index: -1; }
.sec-recruit .link-box:after{ content: ''; width: calc(100% - 4rem); height: calc(100% - 4rem); box-sizing: border-box; border: solid 1px var(--bg-color01); position: absolute; top: 50%; left: 50%; transform: translate(-50%,-50%); z-index: -1; }
.sec-recruit .link-box .inner{ padding-right: 7.5rem; position: relative; }
/*
.sec-recruit .link-box .inner:before{ content: ''; width: 3.8rem; height: 3.8rem; background: url(../images/common/arrow02.png) no-repeat center/contain; position: absolute; top: 50%; right: 0; transform: translateY(-50%); transition: .5s; }
.sec-recruit .link-box .inner:after{ content: ''; width: 3.8rem; height: 3.8rem; background: url(../images/common/arrow07.png) no-repeat center/contain; position: absolute; top: 50%; right: 0; transform: translateY(-50%); transition: .5s; opacity: 0; }
*/
.sec-recruit .link-box .inner h2{ font-size: 4rem; margin-bottom: 1rem; }
.sec-recruit .link-box .inner p{ font-size: 1.8rem; }
.sec-recruit .link-box:hover{ opacity: 1; }
.sec-recruit .link-box:hover .inner:before{ opacity: 0; }
.sec-recruit .link-box:hover .inner:after{ opacity: 1; }

/*banner-price01*/
.banner-price01{max-width: 960px; margin: 2rem auto 5rem; position: relative;}
.banner-price01 .point{position: absolute; top: -80px;bottom: 0;right: -85px;z-index: 2; width: 200px; }
.banner-price01::before{content: "";max-width: 580px;width: 65%;height: 100%;margin: auto;background: url("../images/ortho/index/banner-price01.jpg")no-repeat center / cover;position: absolute;top: 0;bottom: 0;right: 0;z-index: -1;
}
.banner-price01 .pay-box{display: flex;width: 500px;align-items: center;padding: 10px 10px 10px 10px;margin-bottom: 20px;}
.banner-price01 .title{display: inline-block;padding: 0rem 2rem;font-size: 2rem;color: #fff;font-weight: 800;background: var(--sub-color01);}
.banner-wrap{position: relative; background: linear-gradient( to right, #fff 20%, rgba(255,255,255,0) 100%); padding: 4rem;}
.banner-price01 .banner-wrap:before{ content: ''; width: calc(100% - 2rem); height: calc(100% - 2rem); box-sizing: border-box; border: solid .4rem var(--sub-color01); position: absolute; top: 50%; left: 50%; transform: translate(-50%,-50%); z-inde:-1;}
.banner-price01 .banner-wrap:after{ content: ''; width: calc(100% - 4rem); height: calc(100% - 4rem); box-sizing: border-box; border: solid 1px var(--sub-color01); position: absolute; top: 50%; left: 50%; transform: translate(-50%,-50%); z-inde:-1; }
.banner-price01 .pay{ order: 1;  color: #484B4F; font-weight: 700; position: relative; margin-right: 55px; margin-top: 1rem; }
.banner-price01 .pay p:nth-child(1){ font-size: 5rem; line-height: 1; }
.banner-price01 .pay p:nth-child(1) small{ font-size: 2.6rem; }
.banner-price01 .pay p:nth-child(1) span{ font-size: 8.8rem; font-family: YuMincho, "Yu Mincho", yu-mincho-pr6n, serif; font-weight: 600; letter-spacing: 0; }
.banner-price01 .pay p:nth-child(1):after{ content: "〜"; font-family: YuMincho, "Yu Mincho", yu-mincho-pr6n, serif; font-weight: 700; font-size: 6rem; }
.banner-price01 .pay p:nth-child(2){ font-size: 2rem; position: absolute; top: 7px; right: 65px; }
.banner-price01 .sub-text{font-size:2.5rem;line-height: 1.2;}
.banner-price01 .sub-text span{font-size: 4rem;}
.banner-price01 .call-out-box{display: flex;}
.banner-price01 .call-out-box .btn{z-index:2; margin-left:4rem;}


/*banner-price02*/
.banner-price02{max-width: 960px; margin: 2rem auto 5rem; position: relative;}
.banner-price02 .point{position: absolute; top: -80px;bottom: 0;right: -85px;z-index: 2; width: 200px; }
.banner-price02::before{content: "";max-width: 580px;width: 65%;height: 100%;margin: auto;background: url("../images/ortho/index/banner-price02.jpg")no-repeat center / cover;position: absolute;top: 0;bottom: 0;right: 0;z-index: -1;
}
.banner-price02 .pay-box{display: flex;width: 500px;align-items: center;padding: 10px 10px 10px 10px;margin-bottom: 20px;}
.banner-price02 .title{display: inline-block;padding: 0rem 2rem;font-size: 2rem;color: #fff;font-weight: 800;background: var(--sub-color01);}
.banner-wrap{position: relative; background: linear-gradient( to right, #fff 20%, rgba(255,255,255,0) 100%); padding: 4rem;}
.banner-price02 .banner-wrap:before{ content: ''; width: calc(100% - 2rem); height: calc(100% - 2rem); box-sizing: border-box; border: solid .4rem var(--sub-color01); position: absolute; top: 50%; left: 50%; transform: translate(-50%,-50%); z-inde:-1;}
.banner-price02 .banner-wrap:after{ content: ''; width: calc(100% - 4rem); height: calc(100% - 4rem); box-sizing: border-box; border: solid 1px var(--sub-color01); position: absolute; top: 50%; left: 50%; transform: translate(-50%,-50%); z-inde:-1; }
.banner-price02 .pay{ order: 1;  color: #484B4F; font-weight: 700; position: relative; margin-right: 55px; margin-top: 1rem; }
.banner-price02 .pay p:nth-child(1){ font-size: 5rem; line-height: 1; }
.banner-price02 .pay p:nth-child(1) small{ font-size: 2.6rem; }
.banner-price02 .pay p:nth-child(1) span{ font-size: 8.8rem; font-family: YuMincho, "Yu Mincho", yu-mincho-pr6n, serif; font-weight: 600; letter-spacing: 0; }
.banner-price02 .pay p:nth-child(1):after{ content: "〜"; font-family: YuMincho, "Yu Mincho", yu-mincho-pr6n, serif; font-weight: 700; font-size: 6rem; }
.banner-price02 .pay p:nth-child(2){ font-size: 2rem; position: absolute; top: 7px; right: 65px; }
.banner-price02 .sub-text{font-size:2.5rem;line-height: 1.2;}
.banner-price02 .sub-text span{font-size: 4rem;}
.banner-price02 .call-out-box{display: flex;}
.banner-price02 .call-out-box .btn{z-index:2; margin-left:4rem;}


/*banner-price03*/
.banner-price03{max-width: 960px; margin: 2rem auto 5rem; position: relative;}
.banner-price03 .point{position: absolute; top: -80px;bottom: 0;right: -85px;z-index: 2; width: 200px; }
.banner-price03::before{content: "";max-width: 580px;width: 65%;height: 100%;margin: auto;background: url("../images/ortho/index/banner-price03.jpg")no-repeat center / cover;position: absolute;top: 0;bottom: 0;right: 0;z-index: -1;
}
.banner-price03 .pay-box{display: flex;width: 500px;align-items: center;padding: 10px 10px 10px 10px;margin-bottom: 20px;}
.banner-price03 .title{display: inline-block;padding: 0rem 2rem;font-size: 2rem;color: #fff;font-weight: 800;background: var(--sub-color01);}
.banner-wrap{position: relative; background: linear-gradient( to right, #fff 20%, rgba(255,255,255,0) 100%); padding: 4rem;}
.banner-price03 .banner-wrap:before{ content: ''; width: calc(100% - 2rem); height: calc(100% - 2rem); box-sizing: border-box; border: solid .4rem var(--sub-color01); position: absolute; top: 50%; left: 50%; transform: translate(-50%,-50%); z-inde:-1;}
.banner-price03 .banner-wrap:after{ content: ''; width: calc(100% - 4rem); height: calc(100% - 4rem); box-sizing: border-box; border: solid 1px var(--sub-color01); position: absolute; top: 50%; left: 50%; transform: translate(-50%,-50%); z-inde:-1; }
.banner-price03 .pay{ order: 1;  color: #484B4F; font-weight: 700; position: relative; margin-right: 55px; margin-top: 1rem; }
.banner-price03 .pay p:nth-child(1){ font-size: 5rem; line-height: 1; }
.banner-price03 .pay p:nth-child(1) small{ font-size: 2.6rem; }
.banner-price03 .pay p:nth-child(1) span{ font-size: 8.8rem; font-family: YuMincho, "Yu Mincho", yu-mincho-pr6n, serif; font-weight: 600; letter-spacing: 0; }
.banner-price03 .pay p:nth-child(1):after{ content: "〜"; font-family: YuMincho, "Yu Mincho", yu-mincho-pr6n, serif; font-weight: 700; font-size: 6rem; }
.banner-price03 .pay p:nth-child(2){ font-size: 2rem; position: absolute; top: 7px; right: 65px; }
.banner-price03 .sub-text{font-size:2.5rem;line-height: 1.2;}
.banner-price03 .sub-text span{font-size: 4rem;}
.banner-price03 .call-out-box{display: flex;}
.banner-price03 .call-out-box .btn{z-index:2; margin-left:4rem;}


/* trouble---------------------------- */
.trouble{ color: #fff; text-align: center; padding: 95px 0 130px; position: relative; 
	-webkit-clip-path: polygon(0 0, 100% 0, 100% calc(100% - 120px), 50% 100%, 0 calc(100% - 120px));
	clip-path: polygon(0 0, 100% 0, 100% calc(100% - 120px), 50% 100%, 0 calc(100% - 120px));
	background: var(--gradation01); background-repeat: no-repeat; background-position: center; background-size: cover; }
.trouble:after {
    content: '';
    width: 100vw;
    height: 100%;
    background: url(../images/common/webp/bg01.webp) center/15rem;
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    z-index: -1;
}
.trouble:before{ content: ""; width: 230px; height: 230px;
	background-image: url("../images/ortho/index/trouble01.png"); background-repeat: no-repeat; background-position: center; background-size: contain;
	position: absolute; bottom: 10px; left: calc(50% + 200px); }


@media(min-width: 1240px){
	.trouble:before{ width: 16vw; height: 18vw; bottom: auto; bottom: 30px; }
}

.trouble h2{ font-size: 2.8rem; margin-bottom: 40px; }

.trouble ul{ display: flex; justify-content: center; margin-bottom: 35px; }
.trouble ul li{ flex-basis: 160px; font-size: 2rem; font-weight: 700; padding: 5px 0 0; }
.trouble ul li:not(:last-child){ border-right: 1px solid rgba(255,255,255,.2); }
.trouble ul li:before{ content: ""; display: block; width: 200px; height: 100px; margin: 0 auto 15px;
	background-repeat: no-repeat; background-position: center; background-size: contain; }
.trouble ul li:nth-child(1):before{ background-image: url("../images/ortho/index/feature001.png"); }
.trouble ul li:nth-child(2):before{ background-image: url("../images/ortho/index/feature002.png"); }
.trouble ul li:nth-child(3):before{ background-image: url("../images/ortho/index/feature003.png"); }
.trouble ul li:nth-child(4):before{ background-image: url("../images/ortho/index/feature004.png"); }
.trouble ul li:nth-child(5):before{ background-image: url("../images/ortho/index/feature005.png"); }
.trouble ul li:nth-child(6):before{ background-image: url("../images/ortho/index/feature006.png"); }

.trouble ul li span{ color: #fcee46; }

.trouble p:last-child{ width: 645px; background: #fff; font-size: 2.6rem; font-weight: 800; color: var(--sub-color01); margin: auto; line-height: 1.53; padding: 20px 0; }
