header {
    background-color: rgb(83 36 17 / 81%);
    position: relative !important;
}

header .container {
    border: none !important;
}

#page-ttl {
    display: none;
}

.mt-20{
    margin-top:20px;
}

a.link{
    color:#69c;
    text-decoration:underline;
}

p {
    font-size: 16px;
    line-height: 2;
}

.about-box h6 {
    font-size: 1.5em;
    /* font-style: italic; */
    margin: 0 0 16px 0;
    /* color: #1a1a1a; */
}

/* TOP*/

.top-main-image {
    position: relative;
    width: 100%;
    padding: 0;
    margin: 0 auto 0;
    /* height: 70vh; */
    background: linear-gradient(
178deg, #a0a0a0, #ffffff 70.71%), linear-gradient(336deg, #090c0d, rgba(0, 0, 255, 0) 70.71%);
    overflow: hidden;
}



section.top-main-image figure {
    width: 85%;
    max-width: 980px;
    margin: auto;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    left: 0;
    right: 0;
}

section.top-main-image figure.sp{
    display:none;
}

main {
    display: block;
    padding: 0;
    position:relative;
    background: #fff;
}


section {
    margin: 0 auto;
    padding: 80px 0 80px;
}

section.beforeafter, section.faq {
    background: #f3f3f3;
}

.box {
    max-width: 1070px;
    margin: auto;
    width: 90%;
    padding: 0;
    position: relative;
    z-index: 1;
}




.wrap {
    margin: 60px 0 0 0;
    display: flex;
    width: 90%;
}


section.banner {
    background: #e5ecef;
}

.banner-box {
    justify-content: space-between;
    display: flex;
    max-width: 840px;
    margin: auto;
}

.banner-box span {
    /* width: 49%; */
    margin: 0 10px;
}


/*about =============== */

section.about h2{
	color: #0f3774;
	/* text-shadow: 1px 1px 0 #111, -1px -1px 0 #111,-1px 1px 0 #111, 1px -1px 0 #111,0px 1px 0 #111,  0-1px 0 #111,-1px 0 0 #111, 1px 0 0 #111; */
}

section.about {
    position: relative;
    /* max-width: 1920px; */
}


.about_wrap {
    margin: 0;
    width: 100%;
    position: relative;
    padding: 0;
}

.about_wrap h3 {
    width: 100%;
    padding: 0;
    color: #bf974c;
    margin: 0 auto 60px;
    /* text-align: center; */
    font-size: 2.5em;
    border-bottom: 1px solid;
}


.about_text {
    width: 100%;
    display: flex;
    margin: 0 auto;
    justify-content: space-between;
    align-items: center;
}

.about_text figure {
    width: 22%;
}

.about_text figcaption {
    width: 70%;
}

.about_wrap .about_text p,.only_text p{
   font-weight: 400;
   font-size: 16px;
   line-height: 2.3;
}


.about_wrap .about_text p .grad {
    color: #0f3774;
}


.about-box {
    margin: 0 auto;
    display: flex;
    align-items: flex-start;
}

span.grad {
    background: linear-gradient(transparent 20%, #ffff87 20%);
    padding: 0 2px;
    /* color: #0f3774; */
    font-weight: 500;
}


b.marker {
    background: linear-gradient(transparent 50%, #e2e1d9 10%);
    color: #e39d15;
}


.about figure ul {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr 1fr;
    gap: 16px;
}

.about figure ul li span {
    border: 1px solid #ccc;
    display: block;
}

.about figure ul li p {
    line-height: 1.5;
    margin: 10px auto 0;
    font-size: 13px;
}

.about figure {
    margin: 30px auto 0;
}

/*laser =============== */



.laser-wrap {
    display: flex;
    justify-content: space-between;
}

.laser-box h4 {
    font-size: 1.5em;
    position: relative;
    padding: 0 0 0 20px;
    margin: 0 0 10px 0;
}

.laser-box h4:before {
    content:"";
    position: absolute;
    width: 10px;
    height: 10px;
    border-radius: 10px;
    background: #7cbac2;
    top: 12px;
    left: 0;
}

.laser-box {
    width: 49%;
    padding: 30px;
    background: #fff;
}


.laser figure {
    margin: 0 auto 40px;
}

/*ショット*/
section.shot {background: #0c4455;}

.shot .about_wrap h3 {
    color: #fff;
}

.shot .about_text figcaption {
    color: #fff;
}

.shot .about_text figcaption h6 {
    font-size: 1.8em;
    font-style: italic;
    margin: 0 0 16px 0;
    color: #f9ed49;
}

.shot .about_text figcaption h6 .marker {
    background: #ffb229;
    display: inline;
    padding: 0 2px;
    margin: 0 6px 0 0;
    color: #0b4455;
}

.sonota {
    padding: 15px 20px 20px 20px;
    background: #073d4d;
    margin: 20px 0 0 0;
}

.about_wrap .about_text .sonota p {
    font-size: 1.1em;
    margin: 0 0 12px 0;
    position: relative;
    padding: 0 0 0 12px;
}

.about_wrap .about_text .sonota p:before {
    content:"";
    width: 2px;
    height: 60%;
    background: #f8ed49;
    position:absolute;
    left:0;
    top:0;
    bottom: 0;
    margin: auto;
}

.shot .about_text figure {
    width: 30%;
    margin: 0 0 0 5%;
}

.shot .about_text {
    flex-direction: row-reverse;
    align-items: flex-end;
}

.shot .about_text figure span {
    display: block;
    margin: 0 0 15px 0;
}

.shot .about_text figure span small {
    color: #fff;
}

.shot .about_text figure span:last-child {
    margin: 0;
}

.system .about_text figure {width: 45%;margin: 0;}

.system .about_text figcaption {
    width: 51%;
}

.system .about_text {
    align-items: flex-start;
}

/*施術について*/
.treatment-box table {
    table-layout: auto;
}

.treatment-box {
    width: 100%;
}

.treatment-box table th {
    width: 22%;
    background: #fff4e0;
    padding: 20px;
    text-align: left;
}

.treatment-box table tr {
    border-bottom: 1px solid #e9e4d4;
}

.treatment-box table td {
    padding: 20px;
    background: #fff;
    width: 77%;
}

.treatment-box table {
    border: 1px solid #e9e4d4;
    width: 100%;
}

.furikomi .treatment-box table td {
    display: flex;
}

.treatment-box table.furikomi td {
    display: flex;
    /* float: none; */
    width: auto;
}

.treatment-box table.furikomi td span {max-width: 200px;display: block;margin: 0 0  0 10px;}

.treatment-box table td ul {
    display: flex;
    flex-wrap: wrap;
    gap: 3px 21px;
}



.treatment-box table td ul li {position: relative;padding: 0 0 0 11px;}

.treatment-box table td ul li:before {
    content: "●";
    position: absolute;
    left: 0;
    top: 8px;
    font-size: 7px;
    color: #e39d14;
}

.treatment-box .button a {
    margin: 30px auto 0;
    display: block;
    width: 100%;
    max-width: 500px;
    background: #bf984c;
    text-align: center;
    padding: 25px;
    border-radius: 66px;
    font-size: 16px;
    color: #fff;
    font-weight: 600;
    letter-spacing: 0px;
}

.treatment-box .button a.line-b {
    background: #fff;
    color: #02b907;
    display: flex;
    align-items: center;
    box-sizing: border-box;
    justify-content: center;
    margin: 20px auto 0;
}

.treatment-box .button a img {
    width: 33px;
    margin: 0 10px 0 0;
}

.button:nth-child(n+2) {
    margin: 40px auto 0;
}

.button.line p {text-align: center;font-size: 18px;position: relative;padding: 0;}

.button.line p b:before,.button.line p b:after {
    content: "";
    position: absolute;
    width: 1px;
    height: 140%;
    background: #000;
    transform: rotate(-25deg);
    left: 0;
}

.button.line p b:after{
    transform: rotate(25deg);
    left:inherit;
    right:0;
    /* top: 0; */
}

.button.line p b {
    display: inline-block;
    position: relative;
    padding: 0 30px;
}

section.reserve {
    background: #bf974c;
}

section.reserve * {
    color: #fff;
    text-align: center;
}

section.reserve h6 {
    font-size: 1.5em;
    font-weight: 500;
}

section.reserve .tel {
    font-size: 2.5em;
    margin: 10px auto 20px;
    display: inline-block;
    position: relative;
}

section.reserve p {
    display: block;
    width: 100%;
    float: left;
}

section.reserve .tel:before {
    content: "Tel. ";
    font-size: 70%;
    margin: 0 1px 0 0;
}

/*faq*/
ul.faq-list li {
    display: grid;
    gap: 50px;
}

ul.faq-list li dl {
    border: 1px solid #e9e4d4;
}

ul.faq-list li dd {
    padding: 15px;
    font-size: 16px;
    background: #fff;
}

ul.faq-list li dt {
    padding: 15px;
    font-size: 16px;
    font-weight: 600;
    position: relative;
    background: #f8f1e3;
}

ul.faq-list li dt:before {
    content: "Q.";
    margin: 0 5px 0 0;
    color: #e29d10;
}

/*before after*/
ul.bf-list {
    /* display: flex; */
    gap: 30px;
    /* justify-content: space-around; */
}

ul.bf-list > li {
    /* border-bottom: 1px dashed#e9e4d4; */
    width: 100%;
    display: flex;
    padding: 30px;
    margin: 30px auto 0;
    flex-direction: row-reverse;
    justify-content: space-between;
    background: #eeeeee;
}

ul.bf-list > li:last-child{
    border-bottom:none;
}
ul.bf-list > li .swiper {
    width: 35%;
    margin: 0;
}

.bf-list li > span {
    width: 61%;
}

.bf-list li h4 {
    font-size: 1.4em;
    position: relative;
    padding: 0 0  0 14px;
    margin: 0 0 20px 0;
    line-height: 1;
}

 .bf-list li h4:before {
    content:"";
    position: absolute;
    width: 4px;
    height: 100%;
    border-radius: 10px;
    background: #e29d10;
    top: 0;
    left: 0;
}
.bf-list li > span p {
    font-size: 16px;
}

.swiper-slide  figcaption {
    display: flex;
}

.swiper-slide figcaption span {
    width: 50%;
    text-align: center;
}

.swiper-slide figure {
    margin: 0;
}

.swiper-slide figcaption span:first-child {
    background: #cbcbcb;
}

.swiper-slide figcaption span:last-child {
    background: #ffde98;
}

@media (max-width: 1920px) {


}
@media (max-width: 1699px) {



}
@media (max-width: 1023px) {
    .top-main-image {
        background-position: 36%;
    }
    
    section.top-main-image figure {
        width: 97%;
    }
}

@media (max-width: 991px) {

.shot .about_text {
    flex-wrap: wrap;
    flex-direction: column-reverse;
}

.shot .about_text figure {
    width: 100%;
    display: flex;
    margin: 0;
    justify-content: space-between;
}

.shot .about_text figure span {
    width: 48%;
    margin: 0;
}

.about_text figcaption {
    width: 100%;
    margin: 0 0 40px 0;
}

.about_text {
    flex-wrap: wrap;
    flex-direction: column-reverse;
}

.about .about_text figure {
    width: 100%;
    max-width: 240px;
}

.system .about_text figure {
    width: 100%;
    max-width: 480px;
    margin: auto;
}

.system .about_text figcaption {
    width: 100%;
}
    
}

@media (max-height: 900px) {
    section.top-main-image figure {
        width: 73%;
    }
}


@media (max-height: 800px) {
    section.top-main-image figure {
        width: 63%;
    }
}

@media (max-height: 750px) {
    section.top-main-image figure {
        width: 51%;
    }

    
}

@media (max-width: 500px) {

body {
    padding-top: 0;
}

section {
    padding: 30px 0 60px;
}

/*section.top-main-image {
    background: url(../splendorx/images/main_banner_bg_sp.jpg) no-repeat center;
}*/

section.top-main-image figure.sp{
    display:block;
}

section.top-main-image figure.pc{
    display:none;
}


section.top-main-image figure {
    width: 90%;
}


    
    .banner-box {
        display: flex;
       flex-wrap:wrap;
        gap:20px;
    }
    
    .banner-box span {
        width: 100%;
    }

    
.about_wrap h3 {
    font-size: 1.6em;
    margin: 0 auto 20px;
}

    .about figure ul {
    grid-template-columns: 1fr  1fr;
    gap: 20px 10px;
}

.about figure ul li p {
    margin: 4px auto 0;
}

p {
    font-size: 14.4px;
}

.about_wrap .about_text p {
    font-size: 14.4px;
    line-height: 2;
}

.about .about_text figure {
    width: 45%;
    margin: 0;
}

.about_text figcaption {
    margin: 0 auto 20px;
}

.laser-wrap {
    flex-wrap: wrap;
}

.laser-box {
    width: 100%;
    padding: 15px;
    margin: 0 0 15px 0;
}

.laser-box h4 {
    font-size: 1.3em;
    padding: 0 0 0 13px;
}

.laser-box h4:before {
    width: 8px;
    height: 8px;
    top: 7px;
}

.laser-box:last-child {
    margin: 0;
}

.shot .about_text figcaption h6 {
    font-size: 1.4em;
}

.sonota {
    padding: 13px;
}

.about_wrap .about_text .sonota p {
    font-size: 14px;
}

small.during {
    font-size: 13px;
    line-height: 2;
}

.treatment-box table tr {
    display: block;
}

.treatment-box table {
    display: block;
}

.treatment-box table th {
    width: 100%;
    display: block;
    padding: 10px;
}

.treatment-box table td {
    width: 100%;
    display: block;
    padding: 10px;
    font-size: 14px;
}

    .treatment-box table.furikomi td{
        flex-wrap: wrap;
    }

    .treatment-box table.furikomi td span {
    max-width: max-content;
    margin: 30px auto 0;
}

.treatment-box table tbody {
    display: block;
}

.treatment-box table th {
    font-size: 14.4px;
}

.treatment-box .button a{
    font-size: 15px;
    padding: 20px;
}

.treatment-box .button a img {
    width: 27px;
}

.treatment-box .button a.line-b {
    margin: 15px auto 0;
    padding: 17px;
}

.button.line p b:before, .button.line p b:after {
    height: 80%;
    bottom: 0;
}

.button.line p {
    font-size: 15px;
}

.button.line p b {
    padding: 0 19px;
}

section.reserve h6 {
    font-size: 1.3em;
}

section.reserve .tel {
    font-size: 1.8em;
    margin: 20px auto 10px;
}

.treatment-box table td ul {
    gap: 3px 13px;
}

section.reserve p {
    text-align: left;
}

.about-box h6 {
    font-size: 1.3em;
    line-height: 2;
}

.about_wrap .about_text p, .only_text p {
    font-size: 14.4px;
}

ul.faq-list li dt,ul.faq-list li dd {
    font-size: 14.4px;
    padding: 10px;
}

ul.faq-list li {
    gap: 20px;
}


/*before after*/
    ul.bf-list > li {
    padding: 20px 10px;
    flex-wrap: wrap;
    margin: 20px auto 0;
}

ul.bf-list > li .swiper {width: 100%;}

.bf-list li > span {width: 100%;margin: 0 0 13px 0;}

.bf-list li h4 {
    margin: 0 0  10px 0;
    font-size: 1.3em;
    padding: 0 0 0 11px;
}

.bf-list li > span p {
    font-size: 14px;
    padding: 0 0 0 11px;
}

    
}

@media (max-width: 480px) {


body {
    padding-top: 0 !important;
}
}