html,
body {
    margin: 0;
    overflow-x: hidden;
}

img {
    backface-visibility: hidden;
}

body {
    --blue-color: #1E5199;
    --text-color: #231815;
    --orange-color: #ED721B;
    font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
    font-weight: 500;
    color: var(--text-color);
    -webkit-text-size-adjust: 100%;
    /* background-image: url(../assets/background.png); */
    background-repeat: no-repeat;
    background-position: top;
    background-size: auto;
}

.notosans {
    font-family: 'Noto Sans JP', sans-serif;
}

.notoserif {
    font-family: 'Noto Serif JP', serif;
}

.garamond {
    font-family: eb-garamond, serif;
    font-weight: 700;
    font-style: normal;
}

.top-fv-wrap {
    /*background-image: url(../assets/fv-pc.jpg);*/
    background-repeat: no-repeat;
    background-position: top;
    background-size: auto;
}

.rest-bg {
    /*background-image: url(../assets/bg-pc-rest.jpg);*/
    background-repeat: no-repeat;
    background-position: top;
    background-size: auto;
}

#entry {
    z-index: 9;
    max-width: 1100px;
    margin: auto;
}

ul,
ol,
h1,
h2,
h3,
h4,
h5,
p,
span,
div {
    margin: 0;
    padding: 0;
}

ul {
    list-style: none;
}

a {
    color: var(--blue-color);
    text-decoration: none;
}

img {
    max-width: 100%;
    width: auto;
}

h2 {
    letter-spacing: -1.5px;
    font-family: source-han-serif-japanese, serif;
    color: #1E5199;
    text-align: center;
    font-weight: normal;
    font-size: 34px;
    font-weight: 700 !important;
}

h3 {
    color: #1E5199;
    text-align: center;
    font-weight: 500;
    font-size: 28px;
    font-size: 36px;
    font-family: "ヒラギノ明朝 Pro W3", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}


/* bg削除 */

.border-box-outer {
    border: solid 1px var(--blue-color);
    position: relative;
    background: white;
}

.border-box-inner {
    border: solid 1px var(--blue-color);
    position: relative;
    margin: 3px;
    padding: 100px 50px 50px;
}

.border-box-top {
    position: absolute;
    top: -32px;
    left: 0px;
    width: 100%;
}

.box-radius-heading-wrap {
    border-radius: 65px;
    width: 970px;
    height: 128px;
    display: flex;
    justify-content: center;
    align-items: center;
    margin: auto;
}

.box-radius-heading {
    font-size: 52px;
    position: relative;
    bottom: 5px;
}

.box-radius-heading-wrap.blue {
    background: var(--blue-color);
}

.box-radius-heading-wrap.blue .box-radius-heading {
    color: white;
}

.box-radius-heading-wrap.orange {
    background: #ED721B;
}

.box-radius-heading-wrap.orange .box-radius-heading {
    color: #FFF100;
}

p {
    font-size: 19px;
    line-height: 32px;
}

.phone-number-image:hover,
.reserve-button-img:hover,
.sp-tel-button a:hover,
.reserve-wrap-tel-img:hover {
    opacity: 0.7;
}

.text-left {
    text-align: left;
}

.font-bold {
    font-weight: bold !important;
}

.font-blue {
    color: #1E5199 !important;
}

.side-padding {
    padding: 0 50px;
}

.flex-around-start {
    display: flex;
    justify-content: space-around;
}

.flex-between-start,
.flex-between-center {
    display: flex;
    justify-content: space-between;
}

.flex-between-start {
    align-items: flex-start;
}

.flex-between-center {
    align-items: center;
}

.flex-half {
    width: 50%;
}

.orange {
    color: #ED721B;
}

.border-yellow {
    background: linear-gradient(transparent 70%, #fde569d9 60%);
}

.center {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
}

.outer-title-wrap {
    display: flex;
    flex-direction: column;
}

.outer-title-wrap span {
    margin: 24px auto 12px !important;
    font-size: 40px !important;
}

.contact-button img {
    width: 500px;
    height: 132.65px;
    background: transparent;
}

.tel-text {
    line-height: 32px;
    margin: 16px 0;
    color: var(--blue-color);
    font-size: 18px;
}


/* footer */

footer {
    background: var(--blue-color);
    height: 100px;
    display: flex;
    justify-content: center;
    align-items: center;
    margin-top: 150px;
}

footer p {
    font-family: YuGothic, sans-serif;
    font-weight: 500;
    font-size: 15px;
    line-height: 22px;
    text-align: center;
    color: #fff;
}


/* header */

header {
    z-index: 99;
}

.top-header-inner {
    border-bottom: 0.5px solid black;
    padding: 6px 0;
}

.top-header-inner p {
    font-family: "Noto Sans CJK JP", sans-serif;
    font-weight: normal;
    font-size: 14px;
    line-height: 20px;
    text-align: center;
    color: #333;
}

.header-icon-img {
    width: 185px;
    height: auto;
}

.bottom-header {
    padding: 25px 0;
    background: white;
}

.container,
.bottom-header .container,
.menu-bar .container {
    max-width: 1100px;
    margin: auto;
}

.container .inner {
    padding: 0 0;
}

.header-left {
    display: flex;
    align-items: center;
}

.header-left-text p {
    font-size: 14px;
    letter-spacing: 0.05em;
    line-height: 21px;
    text-align: left;
    color: #231815;
    margin-left: 32px;
}

.header-content-right a:hover {
    opacity: 0.7;
}

.bottom-header .inner {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.header-content-right {
    width: 350px;
}

.header-content-right>img {
    display: block;
    width: 200px;
    height: auto;
    margin-bottom: 10px;
}

.header-content-right a img {
    width: 100%;
}

.bottom-header .container .header-text {
    font-size: 14px;
    letter-spacing: 0.05em;
    line-height: 21px;
    text-align: left;
    color: #231815;
}

.menu-bar {
    background: #1D4E90;
    padding: 6px 0;
}

.nav a {
    color: white;
}

.nav {
    display: flex;
    justify-content: space-between;
    font-size: 14px;
    margin: 0 -16px;
}

.nav-item {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    margin: 0 16px;
}

.nav-item::before {
    content: "";
    background-image: url(../assets/nav-direction.png);
    width: 14px;
    height: 7px;
    display: block;
    background-repeat: no-repeat;
    margin-right: 12px;
    background-size: cover;
}

.top-wrap-inner {
    width: 1100px;
    margin: 0 auto;
    position: relative;
    padding-bottom: 160px;
}

.top-head-img {
    margin: 100px 0 270px;
    width: 600px;
}

.top-main {
    width: 100%;
    background: url(../assets/bg-1.jpg);
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
}

.top-info {
    background: rgba(255, 255, 255, 0.75);
    width: 900px;
    margin: 0 auto;
    padding: 10px;
    position: absolute;
    bottom: -188px;
    left: calc(50% - 450px);
}

.top-strongs-wrap {
    padding-top: 200px;
    background-color: #E6E6E6;
}

.top-main .container {
    position: relative;
}

.top-info-inner {
    border: 2px solid #09396C;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    padding: 60px 35px 20px;
    position: relative;
}

.top-info-bottom {
    margin: 0 auto;
}

.top-info-reserve {
    margin: 15px auto;
    width: 400px;
    display: block;
}

.top-info-tel {
    margin: 0 auto;
    display: block;
    width: 360px;
}

.top-info-left,
.top-info-right {
    width: 350px;
    z-index: 100;
    text-align: left;
}

.info-bg-img-1 {
    position: absolute;
    left: 175px;
    top: -50px;
    width: 360px;
    height: auto;
    z-index: 10;
}

.info-bg-img-2 {
    position: absolute;
    width: 300px;
    height: auto;
    right: 19px;
    top: -57px;
    z-index: 10;
}

.top-info-left img,
.top-info-right img {
    width: 80%;
}

.top-info-notice {
    font-family: "Noto Sans CJK JP", sans-serif;
    font-weight: normal;
    font-size: 14px;
    line-height: 25px;
    color: #333;
}

.guarantee-head {
    width: 850px;
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 0 auto;
}

.guarantee-wrap {
    margin: 30px auto;
}

.guarantee-img {
    width: 544px;
}

.all-free {
    width: 680px;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    margin: 30px auto;
}

.all-free img {
    margin-right: 30px;
    margin-bottom: 10px;
}

.all-free img:last-child {
    margin-right: 0;
}

.top-strongs {
    width: 1000px;
    display: flex;
    flex-wrap: nowrap;
    justify-content: space-between;
    align-items: center;
    position: absolute;
    bottom: -70px;
    left: calc(50% - 500px);
}

.top-strongs img {
    width: 225px;
    height: auto;
}

.clinic-introduction p {
    font-family: "Noto Sans JP", sans-serif;
    font-weight: normal;
    font-size: 19px;
    line-height: 36px;
    text-align: left;
    color: #231815;
}

.top-title {
    text-align: center;
}

.histry-wrap {
    width: 100%;
    padding: 150px 0 160px;
}

.histry-head-img {
    margin: 0 auto 65px;
    width: 509px;
    height: auto;
    display: block;
}

.histries {
    width: 100%;
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
}

.histry {
    width: 50%;
}

.histry:nth-child(1),
.histry:nth-child(4) {
    background-color: #DDE4EE;
}

.histry:nth-child(even) .histy-inner {
    margin: 0 auto 0 0;
    padding: 45px 0 45px 55px;
}

.histry:nth-child(odd) .histy-inner {
    margin: 0 0 0 auto;
    padding: 45px 55px 45px 0;
}

.histry .histy-inner {
    width: 445px;
    position: relative;
}

.histry-num {
    position: absolute;
    left: 0;
    top: -27px;
    width: 70.5px;
    height: auto;
}

.histry:nth-child(even) .histry-num {
    left: 55px;
}

.histry-img {
    margin: 0 auto;
    text-align: center;
}

.histry:nth-child(2) .histry-img,
.histry:nth-child(3) .histry-img,
.histry:nth-child(4) .histry-img {
    margin-top: 25px;
}

.histry-text {
    font-family: "Noto Sans CJK JP", sans-serif;
    font-weight: normal;
    font-size: 18px;
    line-height: 32px;
    text-align: left;
    color: #231815;
}

.histry-head {
    margin: 20px 0;
}

.top-staff-img {
    display: block;
    margin: 60px auto 0;
    width: 1000px;
}

.top-wrap h2 {
    letter-spacing: -1px;
    margin: 36px 0;
    font-weight: bold;
    font-size: 40px;
    line-height: 65px;
    text-align: center;
    color: #e58900;
}

.top-wrap h3,
.top-introductions h3 {
    font-family: "Noto Sans JP", sans-serif;
    font-weight: bold;
    font-size: 28px;
    line-height: 40px;
    text-align: left;
    color: #e58900;
    margin-bottom: 20px;
}

.top-wrap p,
.top-introductions p {
    font-family: "Noto Sans JP", sans-serif;
    font-weight: normal;
    font-size: 19px;
    line-height: 36px;
    text-align: left;
    color: #231815;
}

.clinic-introduction {
    display: flex;
    margin-top: 60px;
    align-items: flex-start;
    margin-bottom: 40px;
}

.clinic-introduction div {
    flex: 1;
}

.clinic-introduction img {
    width: 414px;
}

.clinic-introduction div {
    margin-right: 80px;
}

.top-wrap .flex-half:first-of-type {
    margin-right: 80px;
}

.top-wrap .clinic-introduction-bottom {
    margin: 28px 0 20px;
}

.clinic-introduction-bottom p {
    font-family: YuGothic, sans-serif;
    font-weight: 500;
    font-size: 19px;
    letter-spacing: 0.02em;
    line-height: 33px;
    text-align: left;
    color: #231815;
}

.top-introductions {
    padding: 0;
    margin: 72px 0;
}

.top-introduction-1,
.top-introduction-2 {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin: 36px 0;
}

.orange-bg-img-1 {
    position: absolute;
    left: calc(-50vw + 50%);
    z-index: -500;
    width: auto;
    height: 355px;
}

.orange-bg-img-2 {
    position: absolute;
    right: calc(-50vw + 50%);
    z-index: -500;
    width: auto;
    height: 322px;
}

.top-introduction-1 {
    flex-direction: row-reverse;
    padding-left: 50px;
    position: relative;
}

.top-introduction-2 {
    padding-right: 50px;
    position: relative;
}

.top-introduction-img {
    width: 50%;
    height: auto;
}

.top-introduction-text h3 {
    margin-bottom: 24px;
}

.top-introduction-text {
    width: 44%;
}

.worries-wrap {
    width: 100%;
    background-color: #FFE1DE;
    position: relative;
}

.worries-head {
    width: 490px;
    position: absolute;
    top: -100px;
    left: calc(50% - 245px);
}

.worries-inner {
    width: 1200px;
    margin: 0px auto;
    padding: 70px 0;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.worries {
    width: 770px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
}

.worries-woman {
    width: 361px;
    height: auto;
}

.worry-text:nth-child(1),
.worry-text:nth-child(3) {
    margin-bottom: 45px;
}

.bottom-arrow {
    position: absolute;
    width: 64px;
    left: calc(50% - 32px);
    bottom: -49px;
}

.solution-wrap {
    position: relative;
    margin-top: -12px;
}

.solution-bg-img {
    margin: 0 calc(50% - 50vw);
    width: 100vw !important;
    max-width: none;
}

.solution-text-img {
    position: absolute;
    width: 500px;
    height: auto;
    top: 10px;
    left: 152px;
}

.woman-img {
    position: absolute;
    width: 250px;
    top: -88px;
    right: 160px;
}

.reason-wrap {
    width: 1000px;
    margin: 0 auto;
    padding: 97px 0 50px;
}

.reasons-head {
    text-align: center;
}

.reasons-head .reason-head-img {
    width: 561px;
}

.reasons-head .reason-head-bottom {
    width: 443.5px;
    margin-top: 40px;
}

.top-reasons {
    display: flex;
    justify-content: left;
    flex-wrap: wrap;
    margin: 0 auto;
}

.reason {
    width: 30%;
    margin: 50px 15px 30px;
}

.reason:nth-child(3n) {
    margin: 50px 0 30px;
}

.reason-head-img {
    width: 800px;
    height: auto;
}

.reasons-head {
    text-align: center;
}

.reason-title {
    font-family: "Noto Sans JP", sans-serif;
    font-weight: normal;
    font-size: 24px;
    line-height: 34px;
    height: 80px;
    text-align: left;
    color: #FF6366;
    margin-top: 15px;
}

.reason-text {
    font-family: "Noto Sans JP", sans-serif;
    font-weight: normal;
    font-size: 18px;
    line-height: 36px;
    text-align: left;
    color: #231815;
}

.reasons {
    padding: 0 25px;
}


/* caution */

.cautions-wrap {
    background: url(../assets/bg-5.png);
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    padding: 85px 0 120px;
}

.caution-top-head {
    display: flex;
    justify-content: center;
    align-items: center;
}

.cautions-head-img {
    width: 550px;
}

.caition-head-right {
    width: 485px;
    margin-left: -35px;
}

.cautions-text {
    font-family: "Noto Sans JP", sans-serif;
    font-weight: normal;
    font-size: 18px;
    line-height: 36px;
    text-align: left;
    color: #231815;
    margin: 30px auto;
}

.cautions-top-bottom {
    display: flex;
    align-items: center;
    position: relative;
    right: 16px;
}

.cautions-top-bottom p {
    font-size: 28px;
    font-weight: bold;
    margin-left: 16px;
}

.cautions-clinic {
    display: flex;
    justify-content: center;
}

.cautions-left,
.cautions-right {
    width: 50%;
}

.caution-clinic {
    margin: 0 auto;
    display: block;
}

.caution {
    display: flex;
    align-items: flex-start;
    margin: 36px 20px 0;
}

.caution-box {
    margin-right: 16px;
    position: relative;
    top: 5px;
}


/* 
.caution p {
    font-family: "Noto Sans JP" , sans-serif;
    font-weight: normal;
    font-size: 22px;
    line-height: 36px;
    text-align: left;
    color: #231815;
} */

.caution-lists-head {
    font-family: "Noto Serif JP", serif;
    font-weight: bold;
    font-size: 27px;
    letter-spacing: 0.03em;
    line-height: 30.14px;
    color: #ffe900;
    margin: auto;
}

.cautions-top-bottom {
    width: 500px;
    height: 50px;
    border-radius: 25px;
    background-color: #1D4E90;
    text-align: center;
    margin: 65px auto 0;
}


/* reserve */

.reserve-wrap {
    text-align: center;
    background-color: #DDE4EE;
    padding: 60px 0 80px;
}

.reserve-button-img {
    margin: 0 auto 10px;
    width: 370px;
    height: auto;
    display: block;
}

.reserve-wrap-tel-img {
    width: 350px;
    margin: 0 auto;
    display: block;
}


/* nikibi-reasons */

.nikibi-reasons-container {
    width: 1000px;
    margin: 0 auto;
    padding: 108px 0 80px;
    text-align: center;
    position: relative;
}

.nikibi-caution-head-1 {
    width: 29.7%;
    margin-bottom: 50px;
}

.nikibi-caution-head-2 {
    width: 59%;
    margin-bottom: 20px;
}

.nikibi-mecanism {
    margin-top: 60px;
}

.nikibi-head-bottom {
    width: 37.7%;
    margin: 0 auto 30px;
    display: block;
}

.nikibi-caution-head-3 {
    width: 81.3%;
    margin: 75px 0 50px;
}

.nikibi-caution-img {
    width: 100%;
}

.nikibi-caution-text {
    text-align: left;
    font-size: 18px;
    line-height: 32px;
    margin-top: 24px;
    font-weight: normal;
}

.nikibi-point {
    margin-bottom: 85px;
}

.nikibi-caution-arrow {
    width: 64px;
    position: absolute;
    bottom: -40px;
    left: calc(50% - 32px);
}


/* nikibi-solutions */

.nikibi-solutions-wrap {
    background-color: #E6E6E6;
}

.nikibi-solutions-container {
    width: 1000px;
    margin: 0 auto;
    padding: 108px 0 75px;
}

.nikibi-solution-head {
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
}

.nikibi-solution-head .nikibi-kind-img {
    width: 17.5%;
    margin-right: 2.5%;
}

.nikibi-solution-head .dotted-line {
    width: 80%;
    border-top: 2px dotted black;
}

.nikibi-solution-head-img {
    margin: 0 auto 60px;
    width: 40%;
    display: block;
}

.nikibi-kinds {
    width: 100%;
    display: flex;
    justify-content: space-between;
    position: relative;
    z-index: 100;
}

.nikibi-kind {
    width: 25%;
    padding-right: 25px;
}

.nikibi-kind-title {
    font-family: "Noto Sans CJK JP", sans-serif;
    font-weight: 600;
    font-size: 24px;
    letter-spacing: 0.02em;
    line-height: 34px;
    text-align: left;
    color: #1d4e90;
    margin-bottom: 15px;
}

.nikibi-kind-text {
    font-family: "Noto Sans CJK JP", sans-serif;
    font-weight: normal;
    font-size: 18px;
    line-height: 32px;
    text-align: left;
    color: #231815;
    height: 275px;
}

.nikibi-kind .nikibi-kind-img {
    width: 100%;
    transition: 0.3s;
}

.nikibi-kind-danger {
    width: 80%;
    margin: 0 10px 0 auto;
    display: block;
}

.nikibi-kind-danger-icon {
    width: 54px;
    margin: 25px 35px 0 auto;
    display: block;
    z-index: 100;
    cursor: pointer;
}

.danger-bar {
    position: absolute;
    bottom: 6.5px;
    width: 100%;
    z-index: -10;
}

.nikibi-solution-methods-wrap {
    width: 100%;
    background-color: #fff;
    position: relative;
    margin-top: 95px;
}

.nikibi-methods-head {
    width: 265px;
    top: -38px;
    left: calc(50% - 132.5px);
    position: absolute;
}

.nikibi-solution-methods {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    padding: 80px 50px 0;
}

.nikibi-solution-method {
    width: 420px;
    margin-bottom: 45px;
}

.nikibi-solution-method-head {
    font-family: "Noto Sans CJK JP", sans-serif;
    font-weight: bold;
    font-size: 28px;
    line-height: 34px;
    text-align: left;
    color: #ff6366;
    margin-bottom: 15px;
}

.nikibi-solution-method-text {
    font-family: "Noto Sans CJK JP", sans-serif;
    font-weight: normal;
    font-size: 18px;
    line-height: 32px;
    text-align: left;
    color: #231815;
}

.nikibi-solution-trace-wrap {
    padding: 75px 0 0;
}

.nikibi-solution-trace-head {
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
}

.nikibi-solution-trace-head .nikibi-kind-img {
    width: 20%;
    margin-right: 4%;
}

.nikibi-solution-trace-head .dotted-line {
    width: 76%;
    border-top: 2px dotted black;
}

.nikibi-solution-head-2 {
    margin: 0 auto 60px;
    width: 40%;
    display: block;
}

.nikibi-trace-solutions {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}

.trace-box-1,
.trace-box-2 {
    width: 469px;
}

.trace-box-3 {
    width: 433px;
}

.trace-box-4 {
    width: 535px;
    height: 319px;
    margin-top: 100px;
}

.trace-box-1 img {
    width: 237px;
    margin: 0 auto;
    display: block;
}

.trace-box-2 img {
    width: 168px;
    margin: 35px auto;
    display: block;
}

.trace-box-3 img {
    width: 237px;
}

.nikibi-trace-solution-head {
    font-family: "Noto Sans CJK JP", sans-serif;
    font-weight: 500;
    font-size: 24px;
    letter-spacing: 0.02em;
    line-height: 34px;
    text-align: left;
    color: #1d4e90;
    margin-bottom: 15px;
}

.nikibi-trace-solution-text {
    font-family: "Noto Sans CJK JP", sans-serif;
    font-weight: normal;
    font-size: 18px;
    line-height: 32px;
    text-align: left;
    color: #231815;
}

.nikibi-trace-3-head {
    display: flex;
    align-items: flex-end;
    flex-direction: row-reverse;
    justify-content: flex-end;
}

.nikibi-trace-3-head img {
    margin-bottom: -10px;
}

.nikibi-methods-blue-arrow {
    width: 64px;
    margin: 50px auto 65px;
    display: block;
}

.nikibi-treatment-flows-head {
    width: 50.8%;
    margin: 0 auto;
    display: block;
}

.nikibi-treatment-flows {
    margin-top: 48px;
    display: flex;
    justify-content: space-between;
}

.nikibi-treatment-flow {
    width: 22.5%;
}

.nikibi-treatment-flow img {
    width: 100%;
    margin-bottom: 20px;
}

.nikibi-treatment-flow-text {
    font-weight: normal;
}

.nikibi-treatment-flow-text a {
    text-decoration: underline;
}


/* laser-about */

.laser-about-wrap {
    margin: 72px 0;
}

.laser-about-head {
    text-align: center;
}

.laser-about-head-1 {
    width: 545px;
    height: auto;
}

.laser-about-head-2 {
    width: 710px;
    height: auto;
}

.laser-about-head-3 {
    width: 859px;
    height: auto;
}

.laser-about-head img {
    width: 100%;
    height: auto;
}

.laser-head-text {
    text-align: left;
    width: 800px;
    margin: 24px auto;
}

.laser-head-text p {
    font-family: "Noto Sans JP", sans-serif;
    font-weight: normal;
    font-size: 19px;
    line-height: 36px;
    text-align: left;
    color: #231815;
}

.laser-about-contents p {
    font-family: "Noto Sans JP", sans-serif;
    font-weight: normal;
    font-size: 19px;
    line-height: 36px;
    text-align: left;
    color: #231815;
}

.laser-abouts {
    width: 1000px;
    margin: 0 auto;
}

.laser-about-title {
    text-align: center;
    width: 100%;
    margin-bottom: 24px;
}

.laser-about {
    width: 100%;
    margin: 40px 0;
}

.laser-about-contents {
    width: 800px;
    padding: 0 90px;
}

.laser-about-contents img {
    margin-top: 24px;
}


/* price */

.price-wrap {
    padding: 88px 0 130px;
}

.price-container {
    width: 1000px;
    margin: 0 auto;
}

.all-prices-head {
    width: 408px;
    display: block;
    margin: 0 auto;
}

.nikibi-price-head {
    display: flex;
    align-items: center;
    margin: 70px auto 30px;
}

.nikibi-price-head img {
    width: 15%;
    margin-right: 2.5%;
}

.nikibi-price-head .dotted-line {
    width: 82.5%;
    border-top: 2px dotted black;
}

.price-introduction {
    display: flex;
    justify-content: space-between;
}

.price-introduction-left {
    width: 55%;
}

.price-introduction-right {
    width: 35%;
}

.price-introduction-right img {
    width: 100%;
    display: block;
    margin-bottom: 15px;
}

.price-introduction-right p {
    font-size: 14px;
    line-height: 25px;
}

.nikibi-trace-price-wrap .price-introduction-right {
    text-align: center;
}

.bottom-guarantee-wrap .guarantee-head {
    padding-top: 20px;
}


/* flow */

.flow-wrap {
    position: relative;
    margin-top: -12px;
}

.flow-bg-img {
    margin: 0 calc(50% - 50vw);
    width: 100vw !important;
    max-width: none;
    height: 330px;
}

.flow-text-img {
    position: absolute;
    width: 500px;
    height: auto;
    top: 66px;
    left: 122px;
}

.woman-img-2 {
    position: absolute;
    width: 361px;
    top: -83px;
    right: 115px;
}


/* question */

.question-wrap {
    text-align: center;
    padding: 108px 0;
    background-color: #E6E6E6;
}

.question-head-img {
    width: 260px;
    height: auto;
    margin: 0 0 50px;
}

.question-title {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.question-q {
    font-family: "Noto Sans JP", sans-serif;
    font-weight: normal;
    font-size: 24px;
    line-height: 30px;
    text-align: left;
    color: #1d4e90;
    margin-top: -5px;
}

.questions {
    width: 1000px;
    margin: 0 auto;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

.question {
    width: 48%;
    margin-bottom: 40px;
}

.question-label {
    display: flex;
    justify-content: center;
    align-items: flex-start;
}

.question-arrow-img {
    margin-top: 6px;
}

.q-icon {
    font-size: 77.47px;
    line-height: 77.47px;
    color: #1d4e90;
    margin-right: 28px;
    margin-bottom: 18px;
    font-family: "Noto Sans JP", sans-serif;
    font-weight: bold;
}

.question-body {
    text-align: left;
}

.question-body p {
    font-family: "Noto Sans JP", sans-serif;
    font-weight: normal;
    font-size: 18px;
    line-height: 32px;
    text-align: left;
    color: #231815;
    margin-top: 12px;
}


/* flow */

.flow-wrap {
    width: 1200px !important;
    margin: 115px auto 78px -50px;
}

.flow-contents {
    margin-top: 36px;
}

.flow-content:nth-child(even) {
    display: flex;
    justify-content: space-between;
    flex-direction: row-reverse;
    width: 100%;
    margin-bottom: 36px;
}

.flow-content:nth-child(odd) {
    display: flex;
    justify-content: space-between;
    width: 100%;
}

.flow-content:nth-child(even) .flow-img {
    margin-right: -250px;
}

.flow-content:nth-child(odd) .flow-img {
    margin-left: -250px;
}

.flow-content:nth-child(4) {
    margin-top: -36px;
}

.even-flow-title-img {
    margin-top: 95px;
}

.flow-content-text {
    font-family: "Noto Sans JP", sans-serif;
    font-weight: normal;
    font-size: 23px;
    line-height: 43px;
    text-align: left;
    color: #231815;
    width: 500px;
    margin: 24px auto 0 100px;
}

.even-flow-content-text {
    margin: 24px 100px 0 auto;
}

.flow-title-left {
    width: 953px;
}

.flow-img {
    width: 500px;
}

.differences-head {
    letter-spacing: -1.5px;
    font-family: source-han-serif-japanese, serif;
    font-weight: 700;
    font-style: normal;
    margin: 20px 0;
}

.differences-head span {
    letter-spacing: -1.5px;
    font-family: source-han-serif-japanese, serif;
    font-weight: 700;
    font-style: normal;
    font-size: 1.8em;
}

.differences-wrap .border-box-inner {
    padding-top: 0px;
}

.difference {
    margin: 50px 0 0;
}

.difference h4 {
    font-family: source-han-serif-japanese, serif;
    font-size: 24px;
    color: var(--blue-color);
    font-weight: bold;
    font-weight: 700;
}

.difference p {
    margin: 16px 0;
    font-size: 18.7px;
    font-family: YuGothic, sans-serif;
    font-weight: 500;
    letter-spacing: -0.06em;
    line-height: 33px;
    text-align: left;
    color: #231815;
}

.difference .flex-between-center div {
    margin-left: 24px;
}

.differences-wrap .direction {
    margin: 44px 0 12px 0;
}

.about-articles {
    border: solid 1px #1E5199;
    margin: 60px 0;
    background: white;
}

.about-tabs {
    display: flex;
}

.about-tab {
    width: 50%;
    height: 90px;
    display: flex;
    justify-content: center;
    align-items: center;
    background: var(--blue-color);
    cursor: pointer;
}

.about-tab::after {
    content: "";
    background-image: url(../assets/about-direction-white.png);
    width: 18px;
    height: 12px;
    display: block;
    background-repeat: no-repeat;
    margin-left: 40px;
}

.about-tab h3 {
    color: white;
    font-family: source-han-serif-japanese, serif;
    font-weight: 700;
    margin: 0 !important;
    font-size: 40px;
}

.about-tab.active {
    background: white;
}

.about-tab.active::after {
    background-image: url(../assets/about-direction.png);
}

.about-tab.active h3 {
    color: var(--blue-color);
}

.about-tab-target {
    display: none;
    padding: 50px;
}

.about-tab-target.active {
    display: flex;
}

.about-tab-target p {
    margin-right: 50px;
    font-family: YuGothic, sans-serif;
    font-weight: 500;
    font-size: 19px;
    letter-spacing: -0.02em;
    line-height: 33px;
    text-align: left;
    color: #231815;
}

.compare-wrap h3 {
    margin: 0 0 20px;
}

.about-wrap .direction {
    margin: 44px 0 12px 0;
}

.treatment-title-wrap span {
    color: #ed7238;
    font-size: 32px;
    margin: auto;
    font-family: source-han-serif-japanese, serif;
    font-weight: 700;
    font-style: normal;
}

.treatment-wrap p {
    font-family: YuGothic, sans-serif;
    font-weight: 500;
    letter-spacing: 0.02em;
    line-height: 33px;
    text-align: left;
    color: #231815;
    font-size: 18px;
}

.treatment-wrap li {
    font-family: YuGothic, sans-serif;
    font-weight: bold;
    font-size: 19px;
    line-height: 28px;
    text-align: left;
    color: #231815;
}

.treatment-wrap h3 {
    color: #ed7238;
    font-family: source-han-serif-japanese, serif;
    font-weight: 700;
    margin: 16px auto;
    font-size: 40px;
}

.treatment-wrap h4 {
    font-family: YuGothic, sans-serif;
    font-weight: bold;
    font-size: 25px;
    line-height: 32px;
    text-align: left;
    color: #ed721b;
}

.treatment-injection {
    margin-top: 40px;
    text-align: center;
}

.treatment-injection-contents {
    display: flex;
    justify-content: space-around;
    align-items: flex-start;
    text-align: left;
}

.treatment-injection-contents div {
    width: 44%;
}

.treatment-injection-contents h4,
.treatment-laser h4,
.treatment-surgery h4 {
    font-size: 24.3px;
    margin: 20px 0;
    font-weight: bold;
}

.treatment-injection-article p {
    font-size: 18px;
}

.treatment-injection-merits ul,
.treatment-laser-article ul,
.treatment-surgery-merits ul {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: flex-start;
}

.treatment-injection-merits li,
.treatment-laser-article li,
.treatment-surgery-merits li {
    display: flex;
    align-items: center;
    font-weight: bold;
    font-size: 18px;
    margin: 8px 0;
}

.treatment-injection-merits li img,
.treatment-laser-article li img,
.treatment-surgery-merits li img {
    margin-right: 16px;
}

.treatment-injection-price,
.treatment-laser-price {
    margin: 24px auto 52px;
}

.treatment-separtor {
    width: 100%;
    height: 1px;
    display: block;
    background: var(--text-color);
}

.treatment-laser,
.treatment-surgery {
    margin: 52px auto 0;
}

.treatment-laser-contents {
    display: flex;
    margin: 48px 0 0;
}

.treatment-laser-article {
    margin-right: 100px;
}

.treatment-laser-article p {
    margin: 0 0 32px;
}

.treatment-laser-article span {
    font-family: YuGothic, sans-serif;
    font-weight: 500;
    font-size: 15px;
    letter-spacing: 0.02em;
    line-height: 33px;
    text-align: left;
    color: #595757;
}

.treatment-laser-article-botoom .attention {
    font-size: 15px;
    color: #595757;
}

.treatment-surgery-contents {
    display: flex;
    justify-content: space-around;
}

.treatment-surgery-contents div {
    width: 40%;
}

.treatment-surgery-notice {
    position: relative;
    border: solid 1px var(--orange-color);
    width: 690px;
    margin: 40px auto 52px;
}

.treatment-surgery-notice-inner {
    border: solid 1px var(--orange-color);
    position: relative;
    margin: 3px;
    padding: 28px;
}

.treatment-surgery-notice p {
    font-family: YuGothic, sans-serif;
    font-weight: bold;
    font-size: 19px;
    line-height: 28px;
    text-align: left;
    color: #231815;
}

.treatment-surgery-notice-inner a {
    text-decoration: underline;
    color: #1E5199;
}

.clinic-wrap {
    margin-top: 100px;
    text-align: center;
}

.clinic-wrap h3 {
    font-family: source-han-serif-japanese, serif;
    font-weight: 700;
    font-style: normal;
}

.clinic-wrap-title {
    position: relative;
    margin-bottom: 50px;
    padding-bottom: 50px;
    font-size: 38px;
}

.clinic-wrap-title:before {
    content: '';
    position: absolute;
    bottom: 0;
    display: inline-block;
    width: 60px;
    height: 1px;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    background-color: var(--text-color);
}

.clinic-wrap h4 {
    font-family: "Noto Sans CJK JP", sans-serif;
    font-weight: 500;
    font-size: 28px;
    line-height: 40px;
    text-align: center;
    color: #1d4e90;
    margin: 0 auto;
}

.clinic-wrap .clinic-opening-hours h4+p {
    font-weight: bold;
    font-size: 22px;
}

.clinic-wrap p {
    font-family: "Noto Sans JP", sans-serif;
    font-weight: normal;
    font-size: 20px;
    line-height: 38px;
    text-align: center;
    color: #231815;
    margin: 24px 0;
}

.clinic-wrap a {
    text-decoration: underline;
}

.clinic-access,
.clinic-opening-hours,
.clinic-facilities,
.clinic-cooperations,
.clinic-doctors,
.clinic-others {
    margin: 52px 0 52px;
}

.clinic-messages {
    padding-top: 50px;
}

.clinic-messages .border-yellow {
    font-weight: 600;
}

#map-wrap {
    width: 100%;
}

.clinic-opening-hours a {
    color: var(--text-color);
    font-weight: bold;
    text-decoration: underline;
}


.facilities-slider {
    position: relative;
    right: 50px;
    width: calc(100% + 100px);
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.slider-arrow {
    width: 39px;
    cursor: pointer;
}

.slider-main {
    flex: 1;
    margin: 0 12px;
}

.slider-main img {
    display: none;
    width: 100%;
    height: 500px;
    object-fit: cover;
}

.slider-main img.active,
.facilities-slider-pointers img.active {
    display: block;
}

.facilities-slider-pointers img {
    width: 170px;
    margin: 20px 8px;
    height: 77.5px;
    object-fit: cover;
    cursor: pointer;
}

.clinic-cooperations span {
    font-weight: bold;
    font-size: 22px;
    line-height: 49.66px;
    color: #1e5199;
}

.clinic-message span {
    letter-spacing: -1.5px;
    font-family: "Noto Sans JP", sans-serif;
    font-weight: bold;
    font-size: 22px;
    line-height: 35px;
    text-align: center;
    color: #231815;
}

.clinic-message img {
    width: 600px;
    margin: 24px 0 0;
}

.doctors {
    display: flex;
    justify-content: space-around;
    align-items: flex-start;
    flex-wrap: wrap;
    margin: 32px 0 12px;
    padding: 0 50px;
}

.doctor {
    width: 49%;
    margin: 12px auto;
}

.doctor p {
    text-align: left;
    margin: 8px 0;
    font-size: 17.4px;
}

.doctor .doctor-title {
    font-weight: bold;
    font-size: 28px;
    margin-bottom: 16px;
}

.doctor .doctor-title span {
    font-size: 19px;
    margin-left: 16px;
}

.doctor .text {
    display: flex;
    align-items: center;
}

.doctor .text p:first-of-type {
    margin-right: 16px;
}

.clinic-messages h4 {
    margin: 24px 0;
}


/* ハンバーガーメニューcss */

#menu-input {
    display: none;
}


/* ここから個別css */

.form-container {
    width: 1000px;
    margin: 0 auto;
}

.top-main-image {
    margin-bottom: 50px;
}

.top-title {
    padding-top: 225px;
}

.clinic-introduction {
    margin-top: 50px;
}

.question-text {
    margin-top: 115px;
}

.question-main-image {
    margin-left: auto;
    display: flex;
}

.problem-wrap .direction {
    margin: 0 auto 24px;
}

.solution-title {
    margin: 10px auto;
}

.cautions-top-wrap {
    width: 100%;
    margin: 0 auto;
}

.cautions-head-img {
    margin-bottom: 12px;
    margin-left: -36px;
}

.caution-container {
    width: 1000px;
    margin: 0 auto;
}

.cautions-top-bottom {
    text-align: center;
}

.cautions-title-img {
    width: 60%;
    height: auto;
    margin: 36px 0 24px;
}

.differences-wrap {
    margin-top: 50px;
}

.about-wrap h3 {
    margin: 0 0 20px;
    font-family: source-han-serif-japanese, serif;
    font-weight: 700;
    font-style: normal;
}

.treatment-wrap h3 {
    font-weight: bold;
}

.doctor p {
    margin: 0 0 5px;
}

.privacy {
    width: 954.69px;
    height: 364.93px;
    font-size: 15px;
    color: #595757;
    margin: 50px auto;
    overflow-x: hidden;
    overflow-y: scroll;
}

.privacy::-webkit-scrollbar {
    height: 10px;
}

.privacy::-webkit-scrollbar-thumb {
    background: #999;
    border-radius: 5px;
}

.privacy::-webkit-scrollbar-track-piece {
    background: #efefef;
}

.privacy-separtor {
    width: 75px;
    height: 1px;
    display: block;
    background-color: #231815;
    margin: 50px auto;
}

.privacy p {
    font-family: "Noto Sans JP", sans-serif;
    font-weight: normal;
    font-size: 19px;
    line-height: 33px;
    text-align: left;
    color: #231815;
}

.clinic-wrap-title {
    font-weight: bold;
}

.doctor .empty-text {
    width: 72px;
    margin: 0 !important;
    padding: 0 !important;
}

.nav-item::before {
    margin-right: 8px;
    position: relative;
    top: 2px;
}


/* border */

.problem-elm-wrap p .border-yellow {
    border-image: url(../assets/under-orange.png) 1/0 0 13px 0;
}

.treatment-wrap h3 .border-yellow {
    border-image: url(../assets/under-orange.png) 1/0 0 16px 0;
}

.red-side-border {
    border-image: url("../assets/red-border.png") 27;
    border-image-repeat: repeat;
    border-right: 10px solid;
    border-left: 10px solid;
}

.blue-side-border {
    border-image: url("../assets/blue-border.png") 27;
    border-image-repeat: repeat;
    border-right: 10px solid;
    border-left: 10px solid;
}

.btn-submit-img {
    width: 422px;
    height: auto;
}

footer p {
    font-family: "Noto Serif JP", serif;
    font-weight: bold;
    font-size: 15px;
    line-height: 22px;
    text-align: center;
    color: #fff;
}

.pink-reserve,
.pink-bg-color {
    background-color: #FFE1DE;
}

.pink-bg-color {
    margin: 0;
}

.pink-bg-color .all-free {
    margin: 30px auto 0;
}


/* スライダー */

.service-slider-inner {
    position: relative;
}

.service-slider {
    width: 1000px;
    margin: 30px auto;
}

.slider-left-arrow {
    position: absolute;
    top: 50%;
    left: -19px;
    transform: translateY(-50%);
    cursor: pointer;
}

.slider-right-arrow {
    position: absolute;
    top: 50%;
    right: -19px;
    transform: translateY(-50%);
    cursor: pointer;
}

.main-slider,
.main-slider2 {
    display: flex;
    width: 2560px;
    transition: 0.4s;
}

.main-slider img,
.main-slider2 img {
    min-width: 480px;
    margin-right: 40px;
    height: auto;
    max-width: initial;
}

.main-slider img:nth-last-child(1),
.main-slider2 img:nth-last-child(1) {
    margin-right: 0;
}

@media (max-width: 1200px) {
    .service-slider {
        width: 100%;
    }
    .main-slider {
        width: 450vw;
    }
    .main-slider img {
        width: 90vw;
        margin-right: 0;
        height: 55.7vw;
    }
    .slider-left-arrow {
        width: 25px;
        height: 25px;
        left: -12.5px;
    }
    .slider-right-arrow {
        width: 25px;
        height: 25px;
        right: -12.5px;
    }
}

.question .dotted-line {
    width: 100%;
    border-top: dotted 2px #939394;
}

/* 回遊リンク */
.top-fv-wrap {
  position: relative;
  z-index: 2;
}
.excursion-wrapper {
  background-color: #CCEAFD;
  padding: 100px 0px;
  position: relative;
}

.excursion-wrapper .excursion-title {
  color: #333;
  font-size: 30px;
  font-size: 1.875rem;
  text-align: center;
  width: 100%;
  margin-bottom: 30px;
}

.excursion-wrapper .excursion-link-wrapper {
  width: 98%;
  max-width: 1080px;
  display: flex;
  flex-direction: row;
  justify-content: center;
  margin: 0 auto;
}

.excursion-wrapper .excursion-link-wrapper .excursion-box {
  width: 50%;
  padding: 0px 20px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.excursion-wrapper .excursion-link-wrapper .excursion-box .excursion-link-title {
  color: white;
  text-align: center;
  display: block;
  font-size: 1.3rem;
}
.excursion-wrapper .excursion-link-wrapper .excursion-box .excursion-link-img {
  width: 100%;
}

.excursion-wrapper .excursion-link-wrapper .excursion-box a.excursion-link-img:hover {
  opacity: 0.6;
}

.excursion-wrapper .excursion-link-wrapper .excursion-box .excursion-link-img img {
  width: 100%;
}

.excursion-wrapper .excursion-link-wrapper .excursion-box .excursion-text-link{
  font-size: 20px;
  font-size: 1.25rem;
  color: #333;
  margin-top: 15px;
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
}
.excursion-wrapper .excursion-link-wrapper .excursion-box a:hover .excursion-text-link{
  opacity: 0.6;
}

.excursion-wrapper .excursion-link-wrapper .excursion-box .excursion-text-link .excursion-arrow{
  margin-left: 10px;
  height: 14px;
  width: auto;
}

.excursion-arrows {
  display: none;
}


.excursion-wrap {
  width: 1090px;
  max-width: 100%;
  box-sizing: border-box;
  padding: 0 25px;
  margin: 0 auto 30px;
}
.excursion-btn {
  flex: 1;
  padding: 10px 4px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  text-align: center;
  color: white;
font-size: 0.8em;
cursor: pointer;
}

@media screen and (min-width: 767px) {
  .excursion-btn {
      width: unset;
      flex: 1;
  font-size: 16px;
  }
}

.excursion-btn.shibuya {
  background-color: #6ca85e;
}
.excursion-btn.shinjuku {
  background-color: #4780c7;
}
.excursion-btn.ueno {
  background-color: #63A0A8;
}
.excursion-btn.tokyo {
  background-color: #172a87;
}
.excursion-btn.ikebukuro {
  background-color: #54669f;
}

@media screen and (max-width: 767px) {
  .excursion-wrap {
      display: flex;
      width: 100%;
      margin-bottom: 20px;
  }
}
@media screen and (max-width: 767px) {
  .excursion-wrapper .excursion-title {
      font-size: 20px;
      font-size: 1.25rem;
  }
  .excursion-wrapper .excursion-link-wrapper {
      display: block;
  }
  .excursion-wrapper .excursion-link-wrapper .excursion-box {
      width: 100%;
  }
  .excursion-wrapper .excursion-link-wrapper .excursion-box:first-child {
      border-right: none;
      margin-bottom: 30px;
  }
  .excursion-wrapper .excursion-link-wrapper .excursion-box .excursion-text-link{
      font-size: 16px;
      font-size: 1rem;
  }
  .excursion-arrows {
      display: block;
  }
  .excursion-wrapper {
      padding: 50px 0;
  }
  .excursion-arrows .slick-next:before{
      display: none;
  }

  .excursion-arrows .slick-prev:before{
      display: none;
  }
  .excursion-arrows .slick-prev{
      display: block;
      font-size: 0;
      line-height: 0;
      position: absolute;
      top: 55%;
      left: 10px;
      width: 38px;
      height: 38px;
      padding: 0;
      -webkit-transform: translate(0, -50%);
      -ms-transform: translate(0, -50%);
      transform: translate(0, -50%);
      cursor: pointer;
      color: transparent;
      border: none;
      outline: none;
      background: transparent;
  }
  .excursion-arrows .slick-next{
      display: block;
      font-size: 0;
      line-height: 0;
      position: absolute;
      top: 55%;
      right: 10px;
      width: 38px;
      height: 38px;
      padding: 0;
      -webkit-transform: translate(0, -50%);
      -ms-transform: translate(0, -50%);
      transform: translate(0, -50%);
      cursor: pointer;
      color: transparent;
      border: none;
      outline: none;
      background: transparent;
  }
  .excursion-arrows .slick-next img{
      width: 38px;
      height: 38px;
  }
  .excursion-arrows .slick-prev img{
      width: 38px;
      height: 38px;
  }
}

.flex-row {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: row;
    flex-direction: row;
}
@media screen and (max-width: 767px) {
    /* line 40, ../sass/index.scss */
    .flex-row {
        display: block;
    }
    /* line 45, ../sass/index.scss */
    .flex-row.mobile-flex {
        display: -webkit-flex;
        display: flex;
        -webkit-flex-wrap: wrap;
        flex-wrap: wrap;
    }
}


/* line 60, ../sass/index.scss */
.flex-center {
    -webkit-justify-content: center;
    justify-content: center;
}

/* line 64, ../sass/index.scss */
.align-item {
    align-items: center;
}

/* line 68, ../sass/index.scss */
.text-center {
    text-align: center;
}