.mv{ position: relative; z-index: 1; overflow: hidden; }
.mv .bg01{ display: block; width: 100vw; min-height: 68rem; object-fit: cover; object-position: top center; }
.mv .wrap{ width: 100rem; position: absolute; top: 0; left: 50%; transform: translateX(-50%); height: 100%; display: flex; align-items: flex-end; justify-content: flex-end; color: #fff; }
.mv dl{ position: absolute; z-index: 0; width: 16rem; height: 55rem; display: flex; justify-content: center; align-items: flex-end; color: #fff; box-shadow: 0px 0px 16px -6px rgba(0,0,0,0.6); }
.mv dl.dr01{ top: 0; left: 0; padding-bottom: 6.5rem; }
.mv dl.dr02{ bottom: 0; left: 18rem; padding-bottom: 2.6rem; text-align: right; }
.mv dl img{ width: 100%; height: 100%; object-fit: cover; object-position: center; position: absolute; top: 0; left: 0; z-index: -1; }
.mv dl .dr-inner{ padding: 0 1.5rem; width: 100%; }
.mv dl dt{ font-size: 1rem; letter-spacing: .05em; padding-bottom: 1rem; position: relative; margin-bottom: .5rem; }
.mv dl dt:after{ content: ''; width: 14.7rem; height: 1px; background: #fff; position: absolute; bottom: 0; left: -1.5rem; }
.mv dl.dr02 dt:after{ left: auto; right: -1.5rem; }
.mv dl dd{ font-size: 2rem; }
.mv .inner{ padding-bottom: 4.5rem; position: relative; }
.mv .inner img{ position: absolute; top: -20rem; right: -3rem; max-width: none; }
.mv .inner h1{ font-size: 3rem; text-align: center; line-height: 1.4; border-left: solid 1px; border-right: solid 1px; margin-bottom: 1.4rem; letter-spacing: .15em; padding: 0 1.6rem; }
.mv .inner h1 strong{ font-size: 4rem; line-height: 1; }
.mv .inner h1 strong span{ font-size: 2rem; display: inline-block; transform: translateY(-44%); }
.mv .inner h1 small{ display: block; font-size: 2.4rem; margin-top: .8rem; letter-spacing: .08em; }
.mv .inner h2, .mv .inner p{ font-size: 1.2rem; font-weight: 300; font-family: var(--base-font); line-height: 1.5; text-align: center; }

h2.general{ font-size: 2rem; text-align: center; color: var(--sub-color01); font-family: var(--base-font); font-weight: 700; }
h2.general:after{ content: attr(data-en); font-family: var(--en-font); font-size: 4rem; font-weight: 400; display: block; text-align: center; }
h2.general span{ position: relative; padding-bottom: 1.8rem; margin-bottom: .2rem; display: inline-block; }
h2.general span:after{ content: ''; width: 5rem; height: .3rem; background: linear-gradient(90deg, rgba(211,211,211,1) 0%, rgba(211,211,211,1) 50%, rgba(107,151,228,1) 50%, rgba(107,151,228,1) 100%); position: absolute; bottom: 0; left: 50%; transform: translateX(-50%); }
h2.general + p.sub-font{ font-size: 3.2rem; text-align: center; line-height: 1.45; letter-spacing: .1em; margin-top: .5rem; }
h2.general + p.sub-font strong{ background:linear-gradient(transparent 60%, var(--sub-color03) 60%); }
.sec-trouble h2.general span:after,
.sec-flow h2.general span:after{ background: linear-gradient(90deg, #fff 0%, #fff 50%, rgba(107,151,228,1) 50%, rgba(107,151,228,1) 100%); }

.sec-allon4{ padding-top: 12.5rem; margin-bottom: 10rem; z-index: 0; }
.sec-allon4 .bg01{ position: absolute; top: -6rem; left: -30rem; z-index: -1; }
.sec-allon4 .bg02{ position: absolute; top: 27rem; right: -12.6rem; z-index: -1; }
.sec-allon4 .item01{ display: block; margin: -22rem auto 7rem; transform: translateX(2rem); position: relative; }
.sec-allon4 .multiply{ display: block; mix-blend-mode: multiply; margin: 6rem auto 0; transform: translateX(2rem); }
.sec-allon4 .content-row{ margin-bottom: 8rem; width: 85rem; align-items: flex-start; }
.sec-allon4 .content-row .txt{ width: 34.3rem; }
.sec-allon4 .content-row h3{ font-size: 2rem; line-height: 1.6; letter-spacing: .1em; margin-bottom: 2.6rem; }
.sec-allon4 .content-row h3 span{ background:linear-gradient(transparent 60%, var(--sub-color03) 60%); }
.sec-allon4 .content-row p{ letter-spacing: .03em; }
.sec-allon4 .content-row img{ border-radius: 5rem; }
.sec-allon4 > h3{ font-size: 3.2rem; text-align: center; color: var(--sub-color01); line-height: 1.5; display: table; margin: 0 auto 2rem; position: relative; z-index: 1; }
.sec-allon4 > h3 small{ display: block; font-size: 1.8rem; }
.sec-allon4 > h3:after{ content: ''; width: 10rem; height: 12.4rem; background: url(../images/index/allon4-list-item01.png) no-repeat center/contain; position: absolute; bottom: -4rem; right: -11.3rem; }
.sec-allon4 .allon4-list{ display: flex; position: relative; z-index: 0; padding: 4rem 0; justify-content: center; }
.sec-allon4 .allon4-list:before{ content: ''; width: calc(100% + 20rem); height: 100%; background: #f5f8fd; border-radius: 10rem 0; position: absolute; top: 0; left: 50%; transform: translateX(-50%); z-index: -1; }
.sec-allon4 .allon4-list:after{ content: ''; width: 7rem; height: 17.5rem; background: url(../images/index/allon4-list-item02.png) no-repeat center/contain; position: absolute; top: -2.8rem; left: -5.5rem; }
.sec-allon4 .allon4-list li{ margin: 0 2.4rem; }
.sec-allon4 .allon4-list li:last-of-type:after{ content: ''; width: 7rem; height: 17.5rem; background: url(../images/index/allon4-list-item02.png) no-repeat center/contain; position: absolute; bottom: -.8rem; right: -7rem; }
.sec-allon4 .allon4-list li img{ display: block; border-radius: 100%; margin: 0 auto 1.8rem; }
.sec-allon4 .allon4-list li p{ font-size: 1.5rem; text-align: center; line-height: 1.8; }
.sec-allon4 .allon4-list li p strong{ font-size: 2.4rem; line-height: 1; color: var(--sub-color01); background: linear-gradient(transparent 60%, var(--sub-color03) 60%); }

.sec-comp{ padding: 11.5rem 0 10rem; background: url(../images/index/webp/bg01.webp); position: relative; z-index: 1; }
.sec-comp h2 + p.sub-font{ margin-bottom: 2rem; }
.sec-comp h2 + p.sub-font + p{ max-width: 65rem; margin: 0 auto 3.5rem; }
.sec-comp .comp-table{ width: 100%; table-layout: fixed; }
.sec-comp .comp-table tr > *{ position: relative; z-index: 0; border-bottom: solid 1px var(--sub-color01); }
.sec-comp .comp-table tr > *:nth-child(2){ padding-right: 1.75rem; }
.sec-comp .comp-table tr > *:nth-child(2):before{ content: ''; width: calc(100% - 1.75rem); height: 100%; background: #efefef; position: absolute; left: 0; top: 0; z-index: -1; }
.sec-comp .comp-table tr > *:nth-child(3){ padding-left: 1.75rem; }
.sec-comp .comp-table tr > *:nth-child(3):before{ content: ''; width: calc(100% - 1.75rem); height: 100%; background: #d5e1f7; position: absolute; right: 0; top: 0; z-index: -1; }
.sec-comp .comp-table thead th:first-of-type{ width: 17.5rem; }
.sec-comp .comp-table thead th:before{ border-radius: 5rem 5rem 0 0; }
.sec-comp .comp-table thead th{ font-size: 2.4rem; text-align: center; line-height: 1.4; padding: 3.5rem 0 11rem; position: relative; }
.sec-comp .comp-table thead th small{ display: block; font-size: 1.2rem; font-weight: 300; }
.sec-comp .comp-table thead th img{ position: absolute; bottom: 2.5rem; left: 50%; transform: translateX(-50%); }
.sec-comp .comp-table tbody th{ vertical-align: middle; height: 12.5rem; text-align: center; font-size: 1.6rem; font-weight: 700; color: var(--sub-color01); line-height: 1.5; }
.sec-comp .comp-table tbody td{ vertical-align: middle; text-align: center; }
.sec-comp .comp-table tbody tr:first-of-type td{ font-size: 2.4rem; }
.sec-comp .comp-table tbody td:nth-of-type(1){ font-size: 1.6rem; font-weight: 700; line-height: 1.6; }
.sec-comp .comp-table tbody td:nth-of-type(1) small{ display: block; font-size: 1.2rem; font-weight: 300; margin-top: .6rem; }
.sec-comp .comp-table tbody td:nth-of-type(2){ font-size: 1.6rem; font-weight: 700; line-height: 1.6; }
.sec-comp .comp-table tbody td:nth-of-type(2) strong{ background: linear-gradient(transparent 60%, var(--sub-color03) 60%); }

.sec-merit{ padding-top: 11.5rem; margin-bottom: 10rem; z-index: 0; }
.sec-merit .bg01{ position: absolute; top: -3.5rem; left: -12rem; z-index: -1; max-width: none; }
.sec-merit h2 + p.sub-font{ margin-bottom: 6rem; }
.sec-merit h3{ font-size: 5.6rem; line-height: 1; text-align: center; margin-bottom: 3rem; }
.sec-merit h3 strong{ font-size: 5rem; color: var(--sub-color01); line-height: 1; vertical-align: sub; margin-left: .7rem; }
.sec-merit .case-photo{ display: flex; justify-content: space-between; margin-bottom: 2.4rem; }
.sec-merit .case-photo li{ position: relative; }
.sec-merit .case-photo li:after{ content: attr(data-ba); width: 5rem; height: 1.4rem; border-radius: .7rem; background: rgba(255, 255, 255, .5); display: flex; justify-content: center; align-items: center; font-size: 1rem; font-weight: 700; letter-spacing: 0; color: #fff; position: absolute; bottom: .5rem; right: .7rem; }
.sec-merit .case-photo li img{ display: block; }
.sec-merit .case-photo + table{ width: 100%; }
.sec-merit .case-photo + table th{ width: 1px; white-space: nowrap; padding: 1.4rem 2rem; border-top: solid 1px #d3d3d3; border-bottom: solid 1px #d3d3d3; position: relative; z-index: 0; text-align: center; }
.sec-merit .case-photo + table th:before{ content: ''; width: 100%; height: calc(100% - 1rem); background: var(--bg-color); position: absolute; top: 50%; left: 0; transform: translateY(-50%); z-index: -1; }
.sec-merit .case-photo + table td{ padding: 1.4rem 2.5rem; border-top: solid 1px #d3d3d3; border-bottom: solid 1px #d3d3d3; }
.sec-merit .case-photo + table + h3{ margin-top: 7.5rem; }

.sec-trouble{ padding: 13.5rem 0 10rem; background: url(../images/index/webp/bg02.webp); }
.sec-trouble h2 + p.sub-font{ margin-bottom: 3.4rem; }
.sec-trouble h2 + p.sub-font + p{ max-width: 65rem; margin: 0 auto 8.5rem; }
.sec-trouble .trouble-list li{ position: relative; z-index: 0; padding: 6.8rem 0 5rem; }
.sec-trouble .trouble-list li:before{ content: ''; width: calc(100% + 20rem); height: 100%; background: rgba(255, 255, 255, .5); border-radius: 0 10rem; position: absolute; top: 0; left: 50%; transform: translateX(-50%); z-index: -1; }
.sec-trouble .trouble-list li + li{ margin-top: 10rem; }
.sec-trouble .trouble-list li .no{ font-size: 4.8rem; line-height: 1; position: absolute; top: -5rem; left: 50%; transform: translateX(-50%); }
.sec-trouble .trouble-list li .no strong{ font-size: 10rem; color: var(--sub-color01); vertical-align: middle; margin-left: 1.2rem; }
.sec-trouble .trouble-list li h3{ font-size: 2.8rem; line-height: 1.6; text-align: center; margin-bottom: 3.5rem; }
.sec-trouble .trouble-list li:nth-of-type(1) h3{ color: #e53146; font-weight: 700; }
.sec-trouble .trouble-list li h3 span{ background: linear-gradient(transparent 60%, var(--sub-color03) 60%); }
.sec-trouble .trouble-list li h3 + p{ margin-bottom: 4rem; }
.sec-trouble .trouble-list li h4{ font-family: var(--base-font); font-size: 1.8rem; font-weight: 700; text-align: center; margin: 4rem 0 3.5rem; }
.sec-trouble .trouble-list li .row.half img{ display: block; }
.sec-trouble .trouble-list li .row.half .left{ width: 37.5rem; }
.sec-trouble .trouble-list li .row.half .right{ width: 37.5rem; }
.sec-trouble .trouble-list li .row.half .right .note{ display: block; font-size: 1.2rem; padding-left: 1em; position: relative; margin-top: 1.2rem; font-weight: 700; line-height: 1.6; }
.sec-trouble .trouble-list li .row.half .right .note:before{ content: '※'; position: absolute; left: 0; }
.sec-trouble .trouble-list li img.item01{ display: block; margin: 6rem 0 4.5rem; }

.sec-other{ padding-top: 14rem; margin-bottom: 5rem; z-index: 0; }
.sec-other .bg01{ position: absolute; top: 3.5rem; left: -39rem; z-index: -1; }
.sec-other .bg02{ position: absolute; top: 23.4rem; right: -13.7rem; z-index: -1; }
.sec-other h2 + p.sub-font{ margin-bottom: 3rem; }
.sec-other h2 + p.sub-font + p{ max-width: 65rem; margin: 0 auto 3.5rem; }
.sec-other .other-list li{ position: relative; z-index: 0; display: flex; justify-content: space-between; flex-wrap: wrap; padding-bottom: 4rem; }
.sec-other .other-list li:before{ content: ''; width: calc(50vw + 50rem); height: calc(100% - 12.5rem); background: var(--bg-color); position: absolute; bottom: 0; right: -10rem; z-index: -1; }
.sec-other .other-list li:nth-of-type(even):before{ right: auto; left: -10rem; }
.sec-other .other-list li + li{ margin-top: 5rem; }
.sec-other .other-list li img{ width: 100%; display: block; margin-bottom: 4rem; }
.sec-other .other-list li .head{ width: 33rem; }
.sec-other .other-list li .head .no{ font-size: 5.6rem; line-height: 1; margin-bottom: 1.6rem; }
.sec-other .other-list li .head .no strong{ font-size: 5rem; line-height: 1; color: var(--sub-color01); vertical-align: middle; margin-left: .4rem; }
.sec-other .other-list li .head h3{ font-size: 1.8rem; }
.sec-other .other-list li > p{ width: 40rem; }

.img-box{ width: 100%; height: 40rem; display: flex; justify-content: center; align-items: center; position: relative; z-index: 0; color: #fff; }
.img-box img{ width: 100%; height: 100%; position: absolute; top: 0; left: 0; z-index: -1; object-fit: cover; object-position: center; }
.img-box .inner small{ display: block; font-size: 2rem; text-align: center; margin-bottom: 1rem; letter-spacing: .12em; }
.img-box .inner p{ font-size: 4.2rem; text-align: center; letter-spacing: .1em; }
.img-box .inner p strong{ font-size: 8rem; display: inline-block; line-height: 1; vertical-align: sub; margin: 0 .3rem; letter-spacing: .11em; position: relative; }
.img-box .inner p strong:after{ content: ''; width: 2rem; height: 3rem; background: url(../images/index/img-box-item01.png) no-repeat center/contain; position: absolute; right: -1.2rem; top: -1rem; }

.sec-reasons{ padding-top: 11.5rem; z-index: 0; margin-bottom: 9rem; }
.sec-reasons .bg01{ position: absolute; top: 8rem; right: -23.5rem; z-index: -1; }
.sec-reasons .bg02{ position: absolute; top: 16rem; left: -11.2rem; z-index: -1; }
.sec-reasons h2 + p.sub-font{ margin-bottom: 4.6rem; }
.sec-reasons .reasons-list{ display: flex; justify-content: space-between; flex-wrap: wrap; position: relative; z-index: 0; }
.sec-reasons .reasons-list:before{ content: ''; width: 75.4rem; height: 65rem; background: url(../images/index/webp/reasons-bg03.webp) no-repeat center/contain; position: absolute; top: -4rem; left: 50%; transform: translateX(-50%); z-index: -1; }
.sec-reasons .reasons-list li{ width: 24rem; }
.sec-reasons .reasons-list li:nth-of-type(n+4){ margin-top: 4.4rem; }
.sec-reasons .reasons-list li img{ display: block; margin-bottom: 1.8rem; }
.sec-reasons .reasons-list li h3{ font-size: 1.6rem; color: var(--sub-color01); text-align: center; margin-bottom: 1.2rem; }
.sec-reasons .reasons-list li p{ font-size: 1.2rem; line-height: 1.8; }

.sec-flow{ background: url(../images/index/webp/bg02.webp); padding: 11.5rem 0 5rem; margin-bottom: 14rem; }
.sec-flow .wrap{ width: 90rem; }
.sec-flow h2 + p.sub-font{ margin-bottom: 4.5rem; }
.sec-flow .flow-list{ counter-reset: flow; }
.sec-flow .flow-list li{ position: relative; z-index: 0; display: flex; align-items: flex-start; padding: 2.5rem 0; }
.sec-flow .flow-list li:nth-of-type(even){ justify-content: flex-end; }
.sec-flow .flow-list li:nth-of-type(odd):before{ content: ''; width: 110rem; height: 100%; border-radius: 5rem 0; background: #fff; opacity: .5; position: absolute; top: 0; left: 50%; transform: translateX(-50%); z-index: -1; }
.sec-flow .flow-list li .txt{ width: 51rem; margin-right: 5rem; }
.sec-flow .flow-list li .txt h3{ font-size: 1.8rem; padding-left: 5rem; position: relative; height: 5rem; display: flex; align-items: center; margin-bottom: 1.6rem; }
.sec-flow .flow-list li .txt h3:before{ counter-increment: flow; content: counter(flow); font-size: 6rem; color: var(--sub-color01); line-height: 1; position: absolute; left: 0; top: 50%; transform: translateY(-50%); }
.sec-flow .flow-list li .txt p{ font-size: 1.2rem; line-height: 1.8; }

.sec-dr{ z-index: 0; margin-bottom: 9rem; }
.sec-dr .bg01{ max-width: none; position: absolute; top: 14rem; left: 50%; transform: translateX(-50%); z-index: -1; }
.sec-dr .dr-list{ height: 49rem; width: 100%; display: flex; margin-bottom: 3.4rem; }
.sec-dr .dr-list li{ height: 100%; width: 50%; position: relative; display: flex; align-items: flex-end; justify-content: flex-end; }
.sec-dr .dr-list li:after{ content: ''; width: 50rem; height: 10rem; clip-path: polygon(0 0, 0% 100%, 100% 100%); background: #fff; position: absolute; bottom: 0; left: 50%; transform: translateX(-50%); z-index: 2; }
.sec-dr .dr-list li:before{ content: ''; width: 50rem; height: 10rem; clip-path: polygon(0 0, 0% 100%, 100% 100%); background: #abc4f0; position: absolute; bottom: 1px; left: 50%; transform: translateX(-50%); z-index: 1; }
.sec-dr .dr-list li:nth-of-type(2):after{ bottom: -3rem; }
.sec-dr .dr-list li:nth-of-type(2):before{ bottom: -2.9rem; }
.sec-dr .dr-list li:nth-of-type(1){ padding: 0 21.4rem 11.6rem 0; z-index: 3; }
.sec-dr .dr-list li:nth-of-type(2){ padding: 0 4rem 8rem 0; }
.sec-dr .dr-list li img{ position: absolute; }
.sec-dr .dr-list li:nth-of-type(1) img{ bottom: 0; right: -4.5rem; }
.sec-dr .dr-list li:nth-of-type(2) img{ bottom: 2rem; left: -3rem; }
.sec-dr .dr-list li:nth-of-type(1) .inner{ text-align: right; }
.sec-dr .dr-list li .inner p{ font-size: 1rem; line-height: 1.8; margin-bottom: 1.5rem; }
.sec-dr .dr-list li .inner h3{ font-size: 2.8rem; line-height: 1.6; }
.sec-dr .dr-list li .inner h3 span{ color: var(--sub-color01); }
.sec-dr .dr-list li .inner h3 small{ display: block; font-family: var(--base-font); font-weight: 700; font-size: 1.2rem; line-height: 1; }
.sec-dr .dr-list li .inner h3 strong:after{ content: attr(data-en); display: block; font-size: 1rem; font-family: var(--base-font); font-weight: 300; line-height: 1; }

.sec-faq{ background: #f7f7f7; padding: 11.5rem 0 10rem; counter-reset: faq; }
.sec-faq h2 + p.sub-font{ margin-bottom: 4.5rem; }
.sec-faq dl.faq{ border: solid 1px #abc4f0; background: #fff; }
.sec-faq dl.faq + dl.faq{ margin-top: 1rem; }
.sec-faq dl.faq dt{ font-size: 1.6rem; font-weight: 700; color: #fff; background: #abc4f0; padding: 1.5rem 9rem 1.5rem 8rem; position: relative; cursor: pointer; }
.sec-faq dl.faq dt:before{ counter-increment: faq; content: 'Q'counter(faq)'.'; font-size: 2.4rem; font-weight: 300; position: absolute; left: 2.5rem; top: .7rem; }
.sec-faq dl.faq dt .torigger{ width: 2rem; height: 2rem; position: absolute; top: 50%; right: 4rem; transform: translateY(-50%); }
.sec-faq dl.faq dt .torigger:before{ content: ''; width: 100%; height: .2rem; background: #fff; position: absolute; top: 50%; left: 0; transform: translateY(-50%); }
.sec-faq dl.faq dt .torigger:after{ content: ''; height: 100%; width: .2rem; background: #fff; position: absolute; left: 50%; top: 0; transform: translateX(-50%); transition: .5s; }
.sec-faq dl.faq dt.active .torigger:after{ opacity: 0; }
.sec-faq dl.faq dd{ padding: 2rem 4.5rem 2rem 8rem; font-size: 1.2rem; display: none; }
.sec-faq dl.faq dd strong{ display: block; font-size: 1.6rem; color: var(--sub-color01); font-weight: 700; margin-bottom: 1rem; position: relative; }
.sec-faq dl.faq dd strong:before{ content: 'A.'; font-size: 2.4rem; font-weight: 300; line-height: 1.2; position: absolute; left: -3.5rem; }

.sec-consul{ background: #97b6ed; overflow: hidden; color: #fff; }
.sec-consul .wrap{ padding-top: 5.5rem; padding-bottom: 7.4rem; z-index: 0; }
.sec-consul .bg01{ position: absolute; top: 0; left: -23.2rem; z-index: -1; }
.sec-consul .bg02{ position: absolute; top: 32rem; right: -18rem; z-index: -1; }
.sec-consul h2{ font-size: 2.4rem; font-family: var(--base-font); text-align: center; font-weight: 300; margin-bottom: 4.5rem; }
.sec-consul h2 strong{ font-size: 5rem; line-height: 1; display: inline-block; transform: translateY(.4rem); }
.sec-consul h2 small{ font-size: 1.4rem; font-weight: 700; display: block; }
.sec-consul .step{ display: flex; justify-content: space-between; padding: 0 2.5rem; margin-bottom: 4.5rem; }
.sec-consul .step li{ width: 20rem; }
.sec-consul .step li h3{ width: 12.5rem; height: 12.5rem; border-radius: 100%; font-size: 1.6rem; font-family: var(--base-font); font-weight: 300; border: solid 1px; display: flex; justify-content: center; align-items: center; margin: 0 auto 1.8rem; }
.sec-consul .step li:nth-of-type(2) h3{ position: relative; z-index: 0; border: none; }
.sec-consul .step li:nth-of-type(2) h3:before{ content: ''; width: 42.55rem; height: 1px; background: url(../images/common/border02.png) repeat-x left center/contain; position: absolute; top: 50%; left: 50%; transform: translate(-50%,-50%); z-index: -2; }
.sec-consul .step li:nth-of-type(2) h3:after{ content: ''; box-sizing: border-box; width: 100%; height: 100%; border-radius: 100%; border: solid 1px; background: #97b6ed; position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%); z-index: -1; }
.sec-consul .step li p{ font-size: 1.2rem; letter-spacing: .055em; line-height: 1.8; }
.sec-consul .btn-counceling{ width: 46rem; height: 8rem; display: flex; justify-content: center; align-items: center; background: var(--sub-color01); margin: 0 auto 2.5rem; font-size: 2rem; }
.sec-consul .btn-counceling:hover{ opacity: 1; background: #4d69a5; }
.sec-consul .btn-counceling span{ padding-left: 4.6rem; background: url(../images/common/icon-resv01.png) no-repeat center left/2.6rem; }
.sec-consul .btn-tel{ width: 46rem; height: 8rem; display: flex; justify-content: center; align-items: center; background: #fff; color: var(--sub-color01); margin: 0 auto; font-size: 2rem; }
.sec-consul .btn-tel span{ font-size: 3.4rem; margin-left: 1.2rem; padding-left: 3rem; position: relative; }
.sec-consul .btn-tel span:before{ content: ''; width: 2.2rem; height: 2.6rem; background: url(../images/common/icon-tel02.png) no-repeat center/contain; position: absolute; left: 0; top: 50%; transform: translateY(-50%); transition: .5s; }
.sec-consul .btn-tel span:after{ content: ''; width: 2.2rem; height: 2.6rem; background: url(../images/common/icon-tel03.png) no-repeat center/contain; position: absolute; left: 0; top: 50%; transform: translateY(-50%); opacity: 0; transition: .5s; }
.sec-consul .btn-tel:hover{ opacity: 1; background: #4d69a5; color: #fff; }
.sec-consul .btn-tel:hover span:before{ opacity: 0; }
.sec-consul .btn-tel:hover span:after{ opacity: 1; }

.banner_wrap{ width: 900px; margin: 0 auto 60px; display: block;}
.banner_wrap.mt{ margin-top: 100px;}
.banner_wrap h3{ color: #153368; border-bottom: solid 1px; font-size: 2.4rem; font-family: "游明朝", YuMincho, yu-mincho-pr6n, serif; font-weight: 600; margin-bottom: 20px;}


