:root {
    --color-text: 245, 245, 245;
    --color-background: #000;
    --color-main: #e30449;
    --bg-shaped: #5aa9e6;
    --fw-icon: '\f772';
    --bg-color: #FFF;
    --border-color: #d4e7f5;
    --movement: 1s;
    --text-color: #333
}

.hand {
    cursor: pointer;
}

.header-bg {
    background: linear-gradient(90deg, rgba(21, 78, 135, 0.65), rgba(21, 106, 191, 0.75)), url(<?= _UploadUrl ?>temp/dental-header-bg-2.jpg);
    background-size: cover;
    background-position: center center;
}

.border-bottom-short:after {
    content: '';
    display: block;
    position: relative;
    width: 10%;
    border: 2px solid #156ABF;
    margin-top: 5px;
}

.btn-tag {
    border: 1px solid #DFDFDF;
    padding: 3px 5px;
    display: inline-block;
    color: #999;
    text-decoration: none;
    -webkit-border-radius: 7px;
    -moz-border-radius: 7px;
    border-radius: 7px;
    margin: 2px;
    font-size: 0.825rem;
    -webkit-transition: all 0.45s ease;
    -moz-transition: all 0.45s ease;
    -ms-transition: all 0.45s ease;
    -o-transition: all 0.45s ease;
    transition: all 0.45s ease;
}

.btn-tag:hover {
    border: 1px solid #AAA;
    color: #333;
}

.price-en {
    display: block;
}

.price-jp {
    display: none;
}

/* Slick */
.slick-dots li button {
    background-color: #333;
    width: 7px;
    height: 7px;
}

.slick-dots li.slick-active button {
    background-color: #1AABDD;
}

/* Accordion */
.accordion-button:not(.collapsed),
.accordion-button:focus {
    outline: none;
    border-color: transparent;
    box-shadow: none;
    background-color: transparent;
    border-bottom: 1px solid #DFDFDF;
    background: rgb(241, 241, 241);
    background: linear-gradient(0deg, rgba(241, 241, 241, 1) 0%, rgba(255, 255, 255, 1) 54%);
}

.accordion-button::after {
    width: 11px;
    height: 11px;
    border-radius: 100%;
    background-color: var(--bs-danger);
    background-image: none !important;
}

.accordion-button.collapsed::after {
    background-color: var(--bs-gray-300);
}



/* List */
.data-list ul,
.data-list li {
    padding: 0;
    margin: 0;
    list-style: none;
}

.data-list ul {
    margin: 2em 0;
}

.data-list li {
    margin: 1em;
    margin-left: 3em;
}

.data-list li:before {
    content: var(--fw-icon);
    font-family: 'Font Awesome 6 Free';
    float: left;
    margin-left: -1.5em;
    color: #0074D9;
    font-weight: 900;
}

/* BG */
.bg-color {
    background: var(--bg-color);
}

.border-color {
    border-color: var(--border-color) !important;
}

/* BTN 53 */
.button-53 {
    background-color: #FFF;
    border: 0 solid #E5E7EB;
    box-sizing: border-box;
    color: #000000;
    display: flex;
    font-family: ui-sans-serif, system-ui, -apple-system, system-ui, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
    font-size: 1rem;
    font-weight: 700;
    justify-content: center;
    line-height: 1.75rem;
    padding: .75rem 1.65rem;
    position: relative;
    text-align: center;
    text-decoration: none #000000 solid;
    text-decoration-thickness: auto;
    width: 100%;
    max-width: 460px;
    position: relative;
    cursor: pointer;
    transform: rotate(-2deg);
    user-select: none;
    -webkit-user-select: none;
    touch-action: manipulation;
}

.button-53:focus {
    outline: 0;
}

.button-53:after {
    content: '';
    position: absolute;
    border: 1px solid #000000;
    bottom: 4px;
    left: 4px;
    width: calc(100% - 1px);
    height: calc(100% - 1px);
}

.button-53:hover:after {
    bottom: 2px;
    left: 2px;
}

@media (min-width: 768px) {
    .button-53 {
        padding: .75rem 3rem;
        font-size: 1.25rem;
    }
}

/*  */
.img-scale {
    -moz-transition: all 0.43s;
    -webkit-transition: all 0.43s;
    transition: all 0.43s;

}

.img-scale:hover {
    -moz-transform: scale(1.1);
    -webkit-transform: scale(1.1);
    transform: scale(1.1);
}

.img-anime-move {
    -webkit-animation: mover var(--movement) infinite alternate;
    animation: mover var(--movement) infinite alternate;
}

@-webkit-keyframes mover {
    0% {
        transform: translateY(0);
    }

    100% {
        transform: translateY(-10px);
    }
}

@keyframes mover {
    0% {
        transform: translateY(0);
    }

    100% {
        transform: translateY(-7px);
    }
}

.bg-polygon {
    background-color: #ffffff;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='100%25'%3E%3Cdefs%3E%3ClinearGradient id='a' gradientUnits='userSpaceOnUse' x1='0' x2='0' y1='0' y2='100%25' gradientTransform='rotate(280,768,347)'%3E%3Cstop offset='0' stop-color='%23ffffff'/%3E%3Cstop offset='1' stop-color='%23299BC9'/%3E%3C/linearGradient%3E%3Cpattern patternUnits='userSpaceOnUse' id='b' width='378' height='315' x='0' y='0' viewBox='0 0 1080 900'%3E%3Cg fill-opacity='0.12'%3E%3Cpolygon fill='%23444' points='90 150 0 300 180 300'/%3E%3Cpolygon points='90 150 180 0 0 0'/%3E%3Cpolygon fill='%23AAA' points='270 150 360 0 180 0'/%3E%3Cpolygon fill='%23DDD' points='450 150 360 300 540 300'/%3E%3Cpolygon fill='%23999' points='450 150 540 0 360 0'/%3E%3Cpolygon points='630 150 540 300 720 300'/%3E%3Cpolygon fill='%23DDD' points='630 150 720 0 540 0'/%3E%3Cpolygon fill='%23444' points='810 150 720 300 900 300'/%3E%3Cpolygon fill='%23FFF' points='810 150 900 0 720 0'/%3E%3Cpolygon fill='%23DDD' points='990 150 900 300 1080 300'/%3E%3Cpolygon fill='%23444' points='990 150 1080 0 900 0'/%3E%3Cpolygon fill='%23DDD' points='90 450 0 600 180 600'/%3E%3Cpolygon points='90 450 180 300 0 300'/%3E%3Cpolygon fill='%23666' points='270 450 180 600 360 600'/%3E%3Cpolygon fill='%23AAA' points='270 450 360 300 180 300'/%3E%3Cpolygon fill='%23DDD' points='450 450 360 600 540 600'/%3E%3Cpolygon fill='%23999' points='450 450 540 300 360 300'/%3E%3Cpolygon fill='%23999' points='630 450 540 600 720 600'/%3E%3Cpolygon fill='%23FFF' points='630 450 720 300 540 300'/%3E%3Cpolygon points='810 450 720 600 900 600'/%3E%3Cpolygon fill='%23DDD' points='810 450 900 300 720 300'/%3E%3Cpolygon fill='%23AAA' points='990 450 900 600 1080 600'/%3E%3Cpolygon fill='%23444' points='990 450 1080 300 900 300'/%3E%3Cpolygon fill='%23222' points='90 750 0 900 180 900'/%3E%3Cpolygon points='270 750 180 900 360 900'/%3E%3Cpolygon fill='%23DDD' points='270 750 360 600 180 600'/%3E%3Cpolygon points='450 750 540 600 360 600'/%3E%3Cpolygon points='630 750 540 900 720 900'/%3E%3Cpolygon fill='%23444' points='630 750 720 600 540 600'/%3E%3Cpolygon fill='%23AAA' points='810 750 720 900 900 900'/%3E%3Cpolygon fill='%23666' points='810 750 900 600 720 600'/%3E%3Cpolygon fill='%23999' points='990 750 900 900 1080 900'/%3E%3Cpolygon fill='%23999' points='180 0 90 150 270 150'/%3E%3Cpolygon fill='%23444' points='360 0 270 150 450 150'/%3E%3Cpolygon fill='%23FFF' points='540 0 450 150 630 150'/%3E%3Cpolygon points='900 0 810 150 990 150'/%3E%3Cpolygon fill='%23222' points='0 300 -90 450 90 450'/%3E%3Cpolygon fill='%23FFF' points='0 300 90 150 -90 150'/%3E%3Cpolygon fill='%23FFF' points='180 300 90 450 270 450'/%3E%3Cpolygon fill='%23666' points='180 300 270 150 90 150'/%3E%3Cpolygon fill='%23222' points='360 300 270 450 450 450'/%3E%3Cpolygon fill='%23FFF' points='360 300 450 150 270 150'/%3E%3Cpolygon fill='%23444' points='540 300 450 450 630 450'/%3E%3Cpolygon fill='%23222' points='540 300 630 150 450 150'/%3E%3Cpolygon fill='%23AAA' points='720 300 630 450 810 450'/%3E%3Cpolygon fill='%23666' points='720 300 810 150 630 150'/%3E%3Cpolygon fill='%23FFF' points='900 300 810 450 990 450'/%3E%3Cpolygon fill='%23999' points='900 300 990 150 810 150'/%3E%3Cpolygon points='0 600 -90 750 90 750'/%3E%3Cpolygon fill='%23666' points='0 600 90 450 -90 450'/%3E%3Cpolygon fill='%23AAA' points='180 600 90 750 270 750'/%3E%3Cpolygon fill='%23444' points='180 600 270 450 90 450'/%3E%3Cpolygon fill='%23444' points='360 600 270 750 450 750'/%3E%3Cpolygon fill='%23999' points='360 600 450 450 270 450'/%3E%3Cpolygon fill='%23666' points='540 600 630 450 450 450'/%3E%3Cpolygon fill='%23222' points='720 600 630 750 810 750'/%3E%3Cpolygon fill='%23FFF' points='900 600 810 750 990 750'/%3E%3Cpolygon fill='%23222' points='900 600 990 450 810 450'/%3E%3Cpolygon fill='%23DDD' points='0 900 90 750 -90 750'/%3E%3Cpolygon fill='%23444' points='180 900 270 750 90 750'/%3E%3Cpolygon fill='%23FFF' points='360 900 450 750 270 750'/%3E%3Cpolygon fill='%23AAA' points='540 900 630 750 450 750'/%3E%3Cpolygon fill='%23FFF' points='720 900 810 750 630 750'/%3E%3Cpolygon fill='%23222' points='900 900 990 750 810 750'/%3E%3Cpolygon fill='%23222' points='1080 300 990 450 1170 450'/%3E%3Cpolygon fill='%23FFF' points='1080 300 1170 150 990 150'/%3E%3Cpolygon points='1080 600 990 750 1170 750'/%3E%3Cpolygon fill='%23666' points='1080 600 1170 450 990 450'/%3E%3Cpolygon fill='%23DDD' points='1080 900 1170 750 990 750'/%3E%3C/g%3E%3C/pattern%3E%3C/defs%3E%3Crect x='0' y='0' fill='url(%23a)' width='100%25' height='100%25'/%3E%3Crect x='0' y='0' fill='url(%23b)' width='100%25' height='100%25'/%3E%3C/svg%3E");
    background-attachment: fixed;
    background-size: cover;
}

/* Breah */
.breathing {
    -webkit-animation: breathing 4s ease-out infinite normal;
    animation: breathing 4s ease-out infinite normal;
}

@-webkit-keyframes breathing {
    0% {
        -webkit-transform: scale(0.9);
        transform: scale(0.9);
    }

    25% {
        -webkit-transform: scale(1);
        transform: scale(1);
    }

    60% {
        -webkit-transform: scale(0.9);
        transform: scale(0.9);
    }

    100% {
        -webkit-transform: scale(0.9);
        transform: scale(0.9);
    }
}

@keyframes breathing {
    0% {
        -webkit-transform: scale(0.9);
        -ms-transform: scale(0.9);
        transform: scale(0.9);
    }

    25% {
        -webkit-transform: scale(1);
        -ms-transform: scale(1);
        transform: scale(1);
    }

    60% {
        -webkit-transform: scale(0.9);
        -ms-transform: scale(0.9);
        transform: scale(0.9);
    }

    100% {
        -webkit-transform: scale(0.9);
        -ms-transform: scale(0.9);
        transform: scale(0.9);
    }
}

p strong {
    color: #156ABF;
}

/* More Link */
.bottom-bar {
    position: fixed;
    z-index: 100;
    bottom: 0;
    background-color: #131313;
    padding: 5px;
}

.bottom-bar .text {
    font-size: 0.615rem;
}

.bottom-bar a,
.bottom-bar span {
    display: inline-block;
    text-align: center;
    color: #d4e7f5;
}

.text-color {
    color: var(--text-color);
}

/* Page */
.page h2 {

    /* font-family: 'Helvetica Neue', Arial, sans-serif; */
    /* A clean, modern sans-serif font */
    font-size: 2.5em;
    /* Large enough to stand out, but not overwhelming */
    color: #051937;
    /* Soft black for good contrast */
    text-align: center;
    /* Centered for a balanced look */
    padding: 20px 0;
    /* Space below the heading */
    position: relative;
    /* Needed for the pseudo-element underline */
}

.page h2::after {
    content: '';
    display: block;
    width: 90px;
    /* Short underline */
    height: 4px;
    /* Thickness of the underline */
    background-color: #195FB5;
    /* A nice accent color (blue) */
    margin: 3px auto 0;
    /* Center the underline below the text */
    border-radius: 2px;
    /* Slightly rounded corners for the underline */
}