/* style.css内の記述 */


.bg-green {
    background-color: #076057;
}

.bg-green2 {
    background-color: #E6EFEE;
}

.text-green2 {
    color: #20756C;
}

.text-gray {
    color: #333333;
}

/* こちらは貴社の修正箇所？ */
.text-orange {
    color: #fa961e;
}

.border-green {
    border-color: #076057;
}

/* こちらは貴社の修正箇所？ */
.ed-btn-contact-item {
    background: #076057;
    border: 2px solid #076057;
}

/* こちらは貴社の修正箇所？ */
.btn-contact-item.ed-btn-contact-item:hover p {
    color: #076057;
}

/* こちらは貴社の修正箇所？ */
.btn-contact-item.ed-btn-contact-item:hover::after {
    transform: scale(1, 1);
}

#ed-cause .section-title,
#ed-list .section-title,
#about-edwave .section-title,
#ed-treatment .section-title,
#ed-pricing .section-title,
#ed-good-and-bad .section-title,
#ed-effect .section-title,
#ed-flow .section-title,
#ed-other-treatment .section-title,
#medicine-kinds .section-title,
#ed-price .section-title,
#ed-pricing .section-title,
#ml-ed .section-title,
#ed-side-effect .section-title {
    border-top: solid 2px #076057;
    color: #076057;
}

.scl-check.edwave-scl-check {
    background-color: #076057;
    border: 2px solid #076057;
}

/* こちらは、ピンクの点の位置に違和感を感じたためtopのスタイルのみ
40% →0.3125remに修正、transform: translate(-40%)を削除させていただきました */
.custom-list.pink li::before {
    top: 0.3125rem;
    left: 0;
    width: 9px;
    /* 丸のサイズ */
    height: 9px;
    background-color: #E8CEC6;
    border-radius: 30%;
}

/* Attention */
.attention p {
    margin-bottom: 0;
}

@media screen and (max-width: 1023px) {
    .attention svg {
        margin-top: 4px;
    }
}

.orange-items {
    border: 5px solid rgba(226, 149, 47, 0.3);
}

.orange-item svg {
    margin-top: 5px;
}

.orange-item p {
    font-size: 0.8125rem;
    line-height: 175%;
    width: calc(100% - 19px);
}

/* h3内、最後のテキスト下余白 */
.last-text {
    margin-bottom: 3.75rem;
}

.margin-t5 {
    margin-top: 0.3125rem;
}

.margin-t10 {
    margin-top: 0.625rem;
}



/* ED */

.green-flex-item {
    background-color: #E9EEF0;
    border-radius: 10px;
}

@media screen and (max-width: 1023px) {
    .section-top {
        padding-top: 1.875rem;
    }
}


.pc-ed-wrap .text-black333-14 {
    font-size: 0.8125rem;

}

.pc-ed-wrap .text-13 {
    font-size: 0.8125rem;
    font-style: normal;
    font-weight: 400;
    line-height: 175%;
}

.green-flex-item .title span {
    font-size: 0.625rem;
}

.pc-ed-wrap .text-black333-13 {
    font-size: 0.8125rem;
    color: #333;
    font-style: normal;
    font-weight: 400;
    line-height: 175%;
}


.green-flex-item .title {
    color: #2f3036;
    font-style: normal;
    font-weight: 400;
    line-height: 145%;
}

.green-flex-item .button {
    background-color: #fff;
    border-radius: 10px;
}

.green-flex-item .button-text {
    margin-bottom: 0;
}


@media screen and (min-width: 1024px) {
    .pc-ed {
        padding-top: 60px;
        padding-bottom: 100px;
        background-color: #E6EFEE;
    }

    .pc-ed-wrap {
        background-color: #fff;
        max-width: 1100px;
        margin-right: 0;
        margin-left: 340px;
        padding: 60px;
        box-sizing: border-box;
        overflow-x: hidden;
    }

    .ed-wave-pc-ed-wrap.pc-ed-wrap {
        margin-top: 64px;
    }

    .pc-ed-wrap .ed {
        max-width: 39.68rem;
    }

    .pc-ed-wrap>div,
    .h1-title_item,
    .h2-title_item,
    .section-title {
        margin-left: 0 !important;
    }

    .pc-ed-wrap .section-title {
        width: 100%;
    }

    .pc-ed-wrap h1,
    .pc-ed-wrap h2,
    .pc-ed-wrap p {
        word-wrap: break-word;
    }

    .pc-ed-wrap .text-black000-13 {
        font-size: 0.8125rem;
        color: #000;
        font-style: normal;
        font-weight: 400;
        line-height: 175%;
    }

    .pc-ed-wrap .text-black333-14 {
        font-size: 0.875rem;
        color: #333;
        font-style: normal;
        font-weight: 400;
        line-height: 180%;
    }

    .pc-ed-wrap .text-green {
        margin-bottom: 0;
    }

    .green-flex-items {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        column-gap: 16px;
    }

    .green-flex-item {
        background-color: #E9EEF0;
        border-radius: 10px;
        display: grid;
        grid-row: span 3;
        grid-template-rows: subgrid;
    }
}

@media screen and (min-width: 1441px) {
    .pc-ed-wrap {
        background-color: #fff;
        max-width: 1400px;
        margin-left: 520px;
    }

}

/* ED WAVE、MEDICINE */

.text-img {
    column-gap: 1.5rem;
}

.medicine-text-img {
    column-gap: 1rem;
}

.text-wrap {
    max-width: calc(100% - 1.5rem - 13.625rem);
    width: 100%;
}

.img-wrap {
    max-width: 13.625rem;
    width: 100%;
}

.text-img.medicine-text-img .text-wrap {
    max-width: calc(100% - 1rem - 14.125rem);
    width: 100%;
}

.text-img.medicine-text-img .img-wrap {
    max-width: 14.125rem;
}

@media screen and (max-width: 1023px) {
    .text-wrap {
        max-width: 100%;
    }

    .text-img.medicine-text-img .text-wrap {
        max-width: 100%;
    }

    .img-wrap {
        margin-left: auto;
        margin-right: auto;
    }
}

.edwave-step-items {
    margin-top: 3.6rem;
    display: flex;
    justify-content: center;
    margin-left: auto;
    margin-right: auto;
    max-width: 24rem;
    position: relative;
}

@media screen and (max-width: 1023px) {
    .edwave-step-items {
        max-width: 15.25rem;
    }
}

.edwave-step-items::before {
    content: "";
    position: absolute;
    width: 5.8125rem;
    height: 5.8125rem;
    background-image: url(../img/ed/ed_wave_2.png);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    z-index: 6;
    left: -3.5rem;
    top: 50%;
    transform: translateY(-50%);
}

@media screen and (max-width: 1023px) {
    .edwave-step-items::before {
        width: 3.625rem;
        height: 3.625rem;
        left: -2.7rem;
    }
}

.edwave-step-items::after {
    content: "";
    position: absolute;
    width: 5.125rem;
    height: 5.125rem;
    background-image: url(../img/ed/ed_wave_3.png);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    z-index: 6;
    right: -2.5rem;
    top: 50%;
    transform: translateY(-50%);
}

@media screen and (max-width: 1023px) {
    .edwave-step-items::after {
        width: 3.25rem;
        height: 3.25rem;
        right: -2.7rem;
    }
}

.edwave-step-item+.edwave-step-item {
    margin-left: -1.3rem;
}

@media screen and (max-width: 1023px) {
    .edwave-step-item+.edwave-step-item {
        margin-left: -0.79rem;
    }
}

.edwave-step-item:first-child {
    min-width: 6.4375rem;
}

@media screen and (max-width: 1023px) {
    .edwave-step-item:first-child {
        min-width: 4.0625rem;
    }
}

.edwave-step-item {
    list-style: none;
    padding: 1.1rem 0 0.5625rem;
    font-weight: 400;
    line-height: calc(36 / 24);
    letter-spacing: 0.08em;
    position: relative;
    min-width: 4.4375rem;
    text-align: center;
    position: relative;
    writing-mode: vertical-rl;
    display: flex;
    align-items: center;
}

@media screen and (max-width: 1023px) {
    .edwave-step-item {
        font-size: 0.625rem;
    }
}

.edwave-step-item:first-child {
    position: relative;
    z-index: 5;
    width: 21.75%;

}

.edwave-step-item:nth-child(2) {
    position: relative;
    z-index: 4;
    width: 24.7%;

}

.edwave-step-item:nth-child(3) {
    position: relative;
    z-index: 3;
    width: 24.7%;

}

.edwave-step-item:nth-child(4) {
    position: relative;
    z-index: 2;
    width: 24.7%;


}

.edwave-step-item:nth-child(5) {
    width: 21.75%;

}

.edwave-step-item span {
    font-size: 2rem;
    font-weight: 700;
    line-height: calc(36 / 20);
}


.edwave-step-item::before {
    content: "";
    position: absolute;
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    left: 50%;
    transform: translateX(-50%);
}

.edwave-step-item::after {
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    z-index: -1;

}

.edwave-step-item:nth-child(1)::after {
    background-color: #49B6AB;
}

.edwave-step-item:nth-child(2)::after {
    background-color: #3A958D;
}

.edwave-step-item:nth-child(3)::after {
    background-color: #20756C;
}

.edwave-step-item:nth-child(4)::after {
    background-color: #076057;
}

.edwave-step-item:first-child::after {
    clip-path: polygon(80.58% 0, 100% 50%, 80.58% 100%, 0 100%, 0 0);
}

.edwave-step-item:not(:first-child)::after {
    clip-path: polygon(82% 0, 100% 50%, 82% 100%, 0 100%, 0 0);
}

.flow-item+.flow-item {
    margin-left: -0.2rem;
}

.flow-items-sp .flow-item+.flow-item {
    margin-left: -0.5rem;
}

.flow-item {
    background-color: #076057;
    max-width: 5.9375rem;
    width: 100%;
    text-align: center;
}

.flow-items-sp .flow-item {
    max-width: 7.3125rem;
}

.flow-item:first-child {
    clip-path: polygon(86.316% 0, 100% 50%, 86.316% 100%, 0 100%, 0 0);

}

.flow-item:not(:first-child) {
    clip-path: polygon(86.316% 0%, 100% 50%, 86.316% 100%, 0% 100%, 13.684% 50%, 0% 0%);
}

.flow-item:nth-child(4) {
    background-color: #F5F3EF;
}

.flow-item-week {
    font-size: 0.625rem;
    text-decoration: underline;
    color: #EED2C8;
}

.flow-item:nth-child(4) .flow-item-week {
    color: #076057;
}

.flow-item-time {
    font-size: 0.5625rem;
}

.flow-item:nth-child(4) .flow-item-time span {
    color: #076057;
    line-height: 1.8;
}

.other-treatment-box .title {
    max-width: 10.4375rem;
    width: 100%;
}

.medicine-other-treatment-box.other-treatment-box .title {
    max-width: 14.4375rem;
}

.other-treatment-box .text-wrap {
    max-width: 16.75rem;
    width: 100%;
}

.effect-items-text {
    font-size: 0.625rem;
    color: #666;
}

.flow-item.flow-item-full {
    margin-left: auto;
    margin-right: auto;
    max-width: 21.1rem;
    clip-path: polygon(94.316% 0%, 100% 50%, 94.316% 100%, 0% 100%, 5.684% 50%, 0% 0%);
}

/* アンカーリンク ホバーカラー */
.hover-green {
    transition: color 0.3s;
}

.hover-green:hover {
    color: #076057;
}

/* ポイントセクション */
.ed-point {
    position: relative;
}

.ed-point:before {
    content: "";
    position: absolute;
    width: 2px;
    height: 4.375rem;
    background-color: #076057;
    left: 0;
    top: 1.8625rem;
}

/* 料金表 */
@media screen and (min-width: 1024px) {

    .about-price-box .bg-purple {
        border-top: 1px solid #2430A5;
        width: 404px;
        height: 100px;
    }

    .about-membership-price-box .bg-green,
    .about-price-box .bg-green {
        border-top: 1px solid #076057;
        width: 404px;
        height: 100px;
    }

    .about-price-box .has-discount .bg-purple,
    .about-membership-price-box .has-discount .bg-green,
    .about-price-box .has-discount .bg-green {
        width: 243px;
    }


    .about-price-box .has-discount .price-detail {
        width: 389px;
    }

    .price-detail {
        width: 227px;
        height: 100px;
    }

}

.green-title {
    border-top: solid 2px #076057;
    color: #076057;
}

.text-green {
    color: #076057;
}

.price-unit {
    font-size: 10px;
}

.border-green {
    border-top-color: #076057;
}

.green-bg-header,
.bg-green {
    background-color: #E6EFEE;
}

.green-bg-price {
    background-color: #F5F3EF;
}

.member-divider {
    position: relative;
}

.member-divider::after {
    content: '';
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    width: 1px;
    height: 55px;
    background-color: #49B6AB;
}

.btn-large-green .btn-large-item::after {
    background: #076057;
}

.custom-list.orange li::before {
    content: '';
    position: absolute;
    top: 0.5em;
    left: 0;
    transform: translateY(0);
    width: 9px;
    height: 9px;
    background-color: #E2952F;
    border-radius: 30%;
}

.writing-vertical-rl {
    writing-mode: vertical-rl;
    text-orientation: upright;
}

#check01 li a:hover,
#check02 li a:hover,
#check01 .c-selfcheck__link:hover,
#check02 .c-selfcheck__link:hover {
    background-color: #1e1e88;
    color: white;
}

#check01 li a:hover svg path:first-child,
#check02 li a:hover svg path:first-child,
#check01 .c-selfcheck__link:hover svg path:first-child,
#check02 .c-selfcheck__link:hover svg path:first-child {
    fill: white;
}

#check01 li a:hover svg path:last-child,
#check02 li a:hover svg path:last-child,
#check01 .c-selfcheck__link:hover svg path:last-child,
#check02 .c-selfcheck__link:hover svg path:last-child {
    fill: #1e1e88;
}


#check03 .js-selfcheck__answer:hover,
#check03 .c-selfcheck__link:hover {
    background-color: #076057;
    color: white;
}

#check03 .js-selfcheck__answer:hover svg path:first-child,
#check03 .c-selfcheck__link:hover svg path:first-child {
    fill: white;
}

#check03 .js-selfcheck__answer:hover svg path:last-child,
#check03 .c-selfcheck__link:hover svg path:last-child {
    fill: #076057;
}

.c-selfcheck__menu--item01 .js-selfcheck__menu:hover,
.c-selfcheck__menu--item02 .js-selfcheck__menu:hover {
    background-color: #1e1e88;
    color: white;
}

.c-selfcheck__menu--item01 .js-selfcheck__menu:hover svg path:first-child,
.c-selfcheck__menu--item02 .js-selfcheck__menu:hover svg path:first-child {
    fill: white;
}

.c-selfcheck__menu--item01 .js-selfcheck__menu:hover svg path:last-child,
.c-selfcheck__menu--item02 .js-selfcheck__menu:hover svg path:last-child {
    fill: #1e1e88;
}

.c-selfcheck__menu--item03 .js-selfcheck__menu:hover {
    background-color: #076057;
    color: white;
}

.c-selfcheck__menu--item03 .js-selfcheck__menu:hover svg path:first-child {
    fill: white;
}

.c-selfcheck__menu--item03 .js-selfcheck__menu:hover svg path:last-child {
    fill: #076057;
}

.border-purple {
    border-color: #2430a5;
}

.btn-large-green .c-arrow-link {
    border: 1px solid #076057;
}

.btn-large-green .c-arrow-link:hover {
    animation: buttonHoverGreenBg 0.6s ease forwards;
}

.btn-large-green .c-arrow-link:hover .c-arrow-link--icon {
    animation: iconHoverGreenBg 0.6s ease forwards;

}