@charset "utf-8";

/*
Theme Name: Imhotep
Author: Tac
Description: Original Theme
version： 1.0.0
*/


/*========== INDEX PAGE ==========*/

.balance {
    width: 100%;
    min-height: 100vh;
    position: fixed;
    z-index: 99;
}

.balance img {
    width: 100%;
}


/*=== INDEX-TOP ===*/

.index--top__container {
    background: #fff;
}

.index--top__inner {
    max-width: 1200px;
    margin: 0 auto;
    padding: 6.5em 2em;
}

.top__content-upper {
    text-align: center;
    margin-bottom: 3em;
}

.top__content-upper h2 {
    color: #2d3436;
    font-size: 2.4rem;
    font-weight: normal;
    line-height: 2.5;
    margin-bottom: 2.35em;
}

.top__content-middle {
    display: flex;
    justify-content: center;
    margin-bottom: 3.5em;
}

.top__content-middle span {
    color: #2d3436;
    font-size: 1.8rem;
    line-height: 1.5;
    margin-bottom: 1.5em;
    margin-top: auto;
    margin-bottom: auto;
}

.top__content-middle span:nth-of-type(1) {
    margin-right: 0.5em;
    margin-left: 1em;
}

.top__content-middle span:nth-of-type(3) {
    margin-right: 1em;
    margin-left: 0.5em;
}

@keyframes blink {
    0% {
        opacity: 0;
    }
    100% {
        opacity: 1;
    }
}

.blinking {
    animation: blink 0.7s ease-in-out infinite alternate;
}

.top__content-lower {
    text-align: center;
    margin-bottom: 8em;
}

.link-lead {
    color: #2d3436;
    font-size: 1.8rem;
    line-height: 1.5;
    margin-bottom: 0.7em;
}

.link-lead:nth-of-type(1) {
    margin-bottom: 2.5em;
}

.registered-drs {
    margin-bottom: 5em;
}

.registered-drs span {
    display: block;
    color: #ED4F33;
    font-size: 1.2rem;
    font-style: italic;
    margin-bottom: 0.5em;
}

.registered-drs p {
    font-size: 1.55rem;
    font-weight: 300;
    line-height: 1.45;
}

.top__content-lower .social-media {
    display: flex;
    justify-content: center;
}

.top__content-lower .social-media a {
    display: block;
    margin-right: 2.5em;
    transition: .3s;
}

.top__content-lower .social-media a:hover {
    opacity: 0.7;
    transition: .3s;
}

.top__content-lower .social-media a:last-child {
    margin-right: 0;
}

.official-icon {
    width: 50px;
}

.footer--icon.front--page {
    width: 50px;
    -webkit-filter: brightness(1) invert(0);
    filter: brightness(1) invert(0);
    box-shadow: 0px 0px 0px 3px #00000c inset;
    padding: 0.5em;
}

@media (max-width: 1099.98px) {}

@media (max-width: 768.98px) {
    .index-top-container {
        height: 50vh;
    }
    .index-top-inner {
        padding: 3em 2em;
    }
    .index-top-inner .header-bottom {
        display: none;
    }
    .index-top-inner h1 {
        font-size: 1.6rem;
        margin-bottom: 1em;
    }
    .index-top-inner h2 {
        font-size: 1.2rem;
    }
    .index-top-inner .header-middle1 {
        margin-bottom: 0.3em;
    }
    .top__content-upper h2 {
        font-size: 2.2rem;
        line-height: 1.5;
        margin-bottom: 2em;
    }
}

@media (max-width: 414.98px) {
    .index--top__inner {
        padding: 3em 2em;
    }
    .top__content-upper {
        margin-bottom: 1.5em;
    }
    .top__content-upper h1 {
        font-size: 2rem;
        line-height: 1.3;
        margin-bottom: 1em;
    }
    .top__content-upper h2 {
        font-size: 1.2rem;
        line-height: 1.8;
        margin-bottom: 1em;
    }
    .top__content-middle {
        margin-bottom: 2em;
    }
    .top__content-middle span {
        font-size: 1.2rem;
    }
    .top__content-middle span:nth-of-type(1) {
        margin-right: 0.3em;
        margin-left: 0.5em;
    }
    .top__content-middle span:nth-of-type(3) {
        margin-right: 0.5em;
        margin-left: 0.3em;
    }
    .top__content-lower {
        margin-bottom: 5em;
    }
    .link-lead {
        font-size: 1.2rem;
        line-height: 1.5;
    }
    .link-lead br {
        display: none;
    }
    .link-main {
        font-size: 1.2rem;
        line-height: 1.5;
        margin-bottom: 1.5em;
    }
    .registered-drs {
        margin-bottom: 3em;
    }
    .registered-drs span {
        font-size: 1.2rem;
    }
    .registered-drs p {
        font-size: 1.2rem;
    }
    .top__content-lower .social-media a {
        margin-right: 1.5em;
    }
    .top__content-lower .social-media a:last-child {
        margin-right: 0;
    }
    .official-icon {
        width: 40px;
    }
    .footer--icon.front--page {
        width: 40px;
    }
}

.nf__container {
    padding: 4em 0 5em;
    margin: 0 6em;
    border-radius: 5px;
    box-shadow: rgba(100, 100, 111, 0.2) 0px 7px 29px 0px;
}

.nf-top {
    margin-bottom: 3.5em;
}

.nf-top img {
    margin-left: 0;
    margin-right: 1em;
}

.nf-top h2 {
    color: #000;
    font-size: 2.5rem;
    font-weight: bold;
    margin-top: 0.25em;
}

.nf-inner {
    margin-left: auto;
    margin-right: auto;
    width: 70%;
}

.nf-ol {
    list-style-type: disc;
    list-style-position: outside;
}

.nf-li {
    margin-bottom: 2.5em;
}

.nf-li:last-child {
    margin-bottom: 0;
}

.nf-title {
    color: #888088;
    font-size: 1.65rem;
    line-height: 1.5;
    text-decoration: none;
}

@media (max-width: 768.98px) {}

@media (max-width: 414.98px) {
    .nf__container {
        padding: 3em 0;
        margin: 0;
    }
    .nf-top {
        display: flex;
        margin-bottom: 2em;
    }
    .nf-top img {
        margin-left: 0;
        margin-right: 0.5em;
        width: 30px;
        height: 30px;
    }
    .nf-top h2 {
        font-size: 1.8rem;
        margin-top: 0.15em;
    }
    .nf-li {
        margin-bottom: 1.5em;
    }
    .nf-title {
        font-size: 1.2rem;
    }
}


/*=== TWO COLUMN SECTION ===*/

.two-column-container {
    background: linear-gradient(90deg, #8176ab 0%, #8176ab 50%, #6e6592 50%, #6e6592 100%);
}

.two-column-inner {
    max-width: 1200px;
    margin: 0 auto;
    display: flex;
    justify-content: center;
}

.two-column-left,
.two-column-right {
    width: 100%;
    color: #fff;
}

.column-left-inner,
.column-right-inner {
    position: relative;
    overflow: hidden;
    height: 220px;
    vertical-align: middle;
}

.column-left-inner {
    margin-left: 2.5em;
}

.column-right-inner {
    margin-right: 2.5em;
    text-align: right;
}

.column-left-inner h1,
.column-right-inner h1 {
    margin-top: 3em;
    font-size: 2rem;
    font-weight: bold;
}

.mask-left {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0;
    background-color: #8176ab;
    -webkit-transition: all 0.6s ease;
    transition: all 0.6s ease;
}

.mask-left:hover {
    opacity: 1;
    padding-top: 60px;
    padding-right: 1em;
}

.mask-right {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0;
    background-color: #6e6592;
    -webkit-transition: all 0.6s ease;
    transition: all 0.6s ease;
    text-align: right;
}

.mask-right:hover {
    opacity: 1;
    padding-top: 60px;
    padding-left: 1em;
}

.mask-left h2,
.mask-right h2 {
    font-size: 1.75rem;
    font-weight: bold;
    margin-bottom: 2rem;
}

.mask-left p,
.mask-right p {
    font-size: 1rem;
    line-height: 1.5em;
}

@media (max-width: 999.98px) {
    .mask-left:hover {
        padding-top: 50px;
    }
}

@media (max-width: 768.98px) {
    .two-column-container {
        background: linear-gradient(180deg, #8176ab 0%, #8176ab 50%, #6e6592 50%, #6e6592 100%);
    }
    .two-column-inner {
        display: block;
    }
    .column-left-inner,
    .column-right-inner {
        height: 180px;
    }
    .column-left-inner h1,
    .column-right-inner h1 {
        margin-top: 2.5em;
        font-size: 1.875rem;
    }
    .mask-right:hover {
        padding-top: 50px;
    }
    .mask-left h2,
    .mask-right h2 {
        font-size: 1.75rem;
        margin-bottom: 1rem;
    }
    .mask-left p,
    .mask-right p {
        font-size: 0.8rem;
    }
}

@media (max-width: 414.98px) {
    .column-left-inner,
    .column-right-inner {
        height: 110px;
    }
    .column-left-inner {
        margin-left: 2em;
    }
    .column-right-inner {
        margin-right: 2em;
    }
    .mask-left {
        padding-right: 0.3em;
    }
    .mask-left:hover {
        padding-top: 25px;
    }
    .mask-right:hover {
        padding-top: 35px;
    }
    .column-left-inner h1,
    .column-right-inner h1 {
        margin-top: 1.8em;
        font-size: 1.6rem;
    }
    .mask-left h2,
    .mask-right h2 {
        font-size: 1.5rem;
        margin-bottom: 0.5rem;
    }
    .mask-left p,
    .mask-right p {
        font-size: 0.7rem;
    }
}


/*=== ONE COLUMN SECTION ===*/

.welcome--message__container {
    background: #fff;
}

.welcome--message__inner {
    max-width: 1200px;
    margin: 0 auto;
    padding: 5em 2em;
    text-align: center;
}

.welcome--message__heading h2 {
    color: #000;
    margin-bottom: 1.5em;
    font-size: 2.5rem;
    font-weight: bold;
    text-align: center;
}

.welcome__message {
    color: #888088;
    font-size: 1.55rem;
    font-weight: 300;
    line-height: 1.45;
    margin-bottom: 2.75em;
}

.welcome__message:nth-of-type(3) {
    margin-bottom: 2.5em;
}

.welcome--message__heading .heading-bottom {
    margin-bottom: 2.5em;
}

.diagrams {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-evenly;
}

.diagrams img {
    width: 100px;
    height: 100px;
    margin-bottom: 1em;
}

.diagrams p {
    font-size: 1.3rem;
    max-width: 200px;
    line-height: 1.5;
    color: #888088;
}

@media (max-width: 1099.98px) {}

@media (max-width: 768.98px) {
    .welcome--message__heading h1 {
        font-size: 1.6em;
    }
}

@media (max-width: 414.98px) {
    .welcome--message__inner {
        padding: 3.5em 2em 2em;
    }
    .welcome--message__heading h2 {
        font-size: 1.45em;
        line-height: 1.2;
        margin-bottom: 1em;
    }
    .welcome--message__heading img {
        height: 20px;
        width: 20px;
        vertical-align: middle;
    }
    .welcome__message {
        font-size: 1rem;
        line-height: 1.8;
        margin-bottom: 1.7em;
    }
    .welcome--message__heading .heading-bottom {
        margin-bottom: 2em;
    }
    .diagrams {
        display: block;
        flex-wrap: nowrap;
    }
    .diagrams div {
        margin-bottom: 2em;
        padding: 0 1em;
    }
    .diagrams img {
        width: 50px;
        height: 50px;
        margin-bottom: 0.5em;
    }
    .diagrams p {
        font-size: 1rem;
        width: 100%;
        margin-right: auto;
        margin-left: auto;
    }
}


/*=== FIXED BACKGROUND IMG ===*/

.fb-inner {
    background-color: rgba(0, 0, 0, 0.45);
    color: #fff;
}

.fb-content {
    max-width: 1200px;
    margin: 0 auto;
    padding: 5.4em 2em;
}

.fb-title {
    font-size: 2.8rem;
    margin-bottom: 0.6em;
}

.fb-text {
    font-size: 1.65rem;
    font-weight: 300;
    line-height: 1.4;
    margin-bottom: 1.3em;
}

.fb-content button {
    margin: 0;
    padding: 0.45em 1.5em;
    font-size: 1.3rem;
    background: #fff;
    color: #00000c;
}

@media (max-width: 1099.98px) {}

@media (max-width: 768.98px) {
    .fb-title {
        font-size: 2.4rem;
        margin-bottom: 0.4em;
    }
    .fb-text {
        margin-bottom: 1em;
    }
}

@media (max-width: 414.98px) {
    .fixed-background {
        background-image: url("img/fuji.jpg");
        background-repeat: repeat;
        background-position: center;
        background-size: cover;
    }
    .fb-content {
        padding: 2em;
    }
    .fb-title {
        font-size: 1.8rem;
        margin-bottom: 0.3em;
    }
    .fb-text {
        font-size: 1.2rem;
        margin-bottom: 1em;
        line-height: 1.2;
    }
    .fb-content button {
        padding: 0.6em 1.2em;
        font-size: 1rem;
    }
}


/*=== STATS ===*/

.stats-container {
    background: linear-gradient(90deg, #c8cdd5 0%, #c8cdd5 50%, #bbc1ca 50%, #bbc1ca 100%);
}

.stats-inner {
    max-width: 1200px;
    margin: 0 auto;
    padding: 3.5em 2em 3.4em 2em;
    display: flex;
    justify-content: center;
}

@media (max-width: 1099.98px) {}

@media (max-width: 768.98px) {
    .stats-container {
        background: linear-gradient(180deg, #c8cdd5 0%, #c8cdd5 50%, #bbc1ca 50%, #bbc1ca 100%);
    }
    .stats-inner {
        display: block;
        padding: 0;
    }
}

@media (max-width: 414.98px) {}


/*=== STATS COUNTER ===*/

.stats-counter-container {
    background: #c8cdd5;
    padding: 0 4em 0 0;
    width: 50%;
}

.stats-counter-title {
    font-size: 1.7rem;
    font-weight: bold;
    color: #00000c;
    margin-bottom: 0.75em;
}

.continual-counter-container {
    float: left;
    width: 100%;
    border: 3px solid #fff;
    margin-bottom: 1.55em;
}

.continual-counter-container div:nth-of-type(1) {
    width: 34%;
}

.continual-counter-container div {
    padding: 0.9414rem;
    float: left;
    width: 21%;
}

.continual-counter-container div:not(:nth-of-type(4)) span {
    position: relative;
    display: block;
}

.continual-counter-container span {
    color: #fff;
    font-size: 3.5rem;
    font-weight: 300;
    letter-spacing: -0.05em;
}

.continual-counter-container div:not(:nth-of-type(4)) span:after {
    content: ":";
    position: absolute;
    top: 0;
    right: -0.9414rem;
}

.continual-counter-container p {
    font-weight: bold;
    text-transform: uppercase;
    font-size: 0.8125rem;
    margin: 0;
    color: #888088;
}

.counter-subtitle {
    font-size: 1.35rem;
    font-weight: 300;
    color: #888088;
}

@media (max-width: 999.98px) {
    .stats-counter-title {
        font-size: 1.3rem;
    }
    .continual-counter-container span {
        font-size: 2.6rem;
    }
    .continual-counter-container p {
        font-size: 0.6rem;
    }
    .counter-subtitle {
        font-size: 1.15rem;
    }
}

@media (max-width: 768.98px) {
    .stats-counter-container {
        padding: 2em;
        width: 100%;
    }
    .stats-counter-title {
        font-size: 1.55rem;
    }
    .continual-counter-container p {
        font-size: 0.7rem;
    }
    .counter-subtitle {
        font-size: 1.35rem;
    }
}

@media (max-width: 414.98px) {
    .stats-counter-title {
        font-size: 1.2rem;
    }
    .continual-counter-container span {
        font-size: 2.4rem;
    }
    .counter-subtitle {
        font-size: 1.2rem;
        letter-spacing: -0.02em;
    }
}


/*=== STATS COUNTUP ===*/

.stats-countup-container {
    background: #bbc1ca;
    padding: 0 0 0 4em;
    width: 50%;
}

.stats-countup-title {
    font-size: 1.7rem;
    color: #00000c;
    font-weight: bold;
    margin-bottom: 0.75em;
    letter-spacing: 0px;
}

.stats-countup-content {
    background: #bbc1ca;
    border: 3px solid #fff;
    height: 108px;
    display: flex;
    justify-content: center;
    margin-bottom: 1.15em;
}

.countup-icon {
    background: #edeef0;
    text-align: center;
    height: 102px;
    width: 50%;
}

.countup-icon img {
    height: 100%;
    width: auto;
}

.countup-number {
    width: 50%;
    height: 102px;
    text-align: center;
}

.countup-number span {
    font-weight: 300;
    font-size: 3.414rem;
    color: #fff;
    display: inline-block;
    margin-top: 0.55em;
}

.countup-text p {
    font-size: 1.35rem;
    font-weight: 300;
    color: #888088;
    line-height: 1.5;
}

@media (max-width: 999.98px) {
    .stats-countup-container {
        padding: 0 1em 0 4em;
    }
    .stats-countup-title {
        font-size: 1.3rem;
    }
    .countup-number span {
        font-size: 2.2rem;
        margin-top: 1em;
    }
    .countup-text p {
        font-size: 1.15rem;
        line-height: 1.2;
    }
}

@media (max-width: 768.98px) {
    .stats-countup-container {
        padding: 2em;
        width: 100%;
    }
    .countup-number span {
        font-size: 3rem;
        margin-top: 0.7em;
    }
    .countup-text p {
        font-size: 1.35rem;
        line-height: 1;
    }
}

@media (max-width: 414.98px) {
    .stats-countup-content {
        height: 95px;
    }
    .stats-countup-title {
        font-size: 1.2rem;
        letter-spacing: -0.02em;
    }
    .countup-icon {
        height: 89px;
    }
    .countup-number {
        height: 89px;
    }
    .countup-number span {
        font-size: 2.2rem;
        margin-top: 0.85em;
    }
    .countup-text p {
        font-size: 1.2rem;
        line-height: 1.2;
    }
}


/*=============== NEWS PAGE ===============*/

.nf .font--chennai,
.news .font--chennai {
    margin-bottom: 1.5em;
}

.news--feed {
    margin-left: auto;
    margin-right: auto;
    width: 70%;
    text-align: left;
}

.news--flex {
    display: flex;
    margin-bottom: 5em;
}

.news--img {
    width: 30%;
}

.news--img img {
    width: 150px;
    height: 150px;
    max-width: 150px;
    max-height: 150px;
}

.news--content {
    width: 70%;
    margin: auto 0;
    text-align: left;
}

.news--content h2 {
    font-size: 2.4rem;
    font-weight: bold;
    margin-bottom: 0.3em;
    color: #1a1a1a;
    line-height: 1.2;
    word-wrap: break-word;
}

.news--content time {
    font-weight: bold;
    margin-bottom: 1em;
    display: inline-block;
    color: #625b54;
}

.news--text {
    font-size: 1.2rem;
    font-weight: 300;
    line-height: 2;
    word-wrap: break-word;
}

.news--content a {
    font-size: 1.2rem;
    font-weight: 500;
    color: #4a317a;
    text-decoration: none;
    cursor: pointer;
    transition: 0.3s;
}

.news--content a:hover {
    opacity: 0.7;
    transition: 0.3s;
}

.pagination span {
    font-size: 0.9rem;
    color: #888088;
    padding: 0.8em;
}

.pagination a {
    color: #888088;
    padding: 0.8em;
    transition: 0.3s;
}

.pagination a:hover {
    color: #fff;
    background: #8176ab;
    text-decoration: none;
    padding: 0.8em;
    border: none;
    border-radius: 5px;
    opacity: 0.8;
    transition: 0.3s;
}

@media (max-width: 768.98px) {
    .news--feed {
        width: 90%;
    }
}

@media (max-width: 414.98px) {
    .nf .font--chennai,
    .news .font--chennai {}
    .news--feed {
        width: 100%;
    }
    .news--flex {
        display: block;
        margin-bottom: 3em;
    }
    .news--img {
        width: 100%;
        margin-bottom: 1.5em;
    }
    .news--img img {
        display: block;
        width: 50px;
        height: 50px;
        margin-right: auto;
        margin-left: auto;
    }
    .news--content {
        width: 100%;
    }
    .news--content h2 {
        font-size: 1.4rem;
        margin-bottom: 0.5em;
        line-height: 1.2;
    }
    .news--content time {}
    .news--text {
        margin-bottom: 0.5em;
    }
    .news--text {
        font-size: 1.2rem;
        line-height: 1.5;
    }
    .news--content a {
        font-size: 1.2rem;
    }
    .news--content a:hover {}
    .pagination span {}
    .pagination a {}
    .pagination a:hover {}
}


/*=============== SINGLE PAGES ===============*/

.news__img {
    text-align: center;
    margin-bottom: 4em;
}

.news__img img {
    width: 250px;
    height: 250px;
}

.news__content {
    margin-left: auto;
    margin-right: auto;
    width: 70%;
    text-align: left;
}

.news__content h2 {
    font-size: 2.4rem;
    color: #1a1a1a;
    font-weight: bold;
    margin-bottom: 0.3em;
}

.news__content time {
    display: block;
    color: #625b54;
    font-size: 1.2rem;
    font-weight: bold;
    margin-bottom: 3em;
}

.news__text {
    margin-bottom: 6em;
}

.news__text p {
    text-align: left;
    font-size: 1.5rem;
    line-height: 1.5;
    margin-bottom: 1.5em;
    word-wrap: break-word;
}

@media (max-width: 768.98px) {
    .news__img img {
        width: 200px;
        height: 200px;
    }
    .news__content h2 {
        font-size: 2.4rem;
        line-height: 1.2;
        margin-bottom: 0.3em;
    }
    .news__text {
        margin-bottom: 3em;
    }
}

@media (max-width: 414.98px) {
    .news__img {
        margin-bottom: 1.5em;
    }
    .news__img img {
        width: 50px;
        height: 50px;
    }
    .news__content {
        width: 100%;
    }
    .news__content h2 {
        font-size: 1.4rem;
        margin-bottom: 0.5em;
    }
    .news__content time {
        margin-bottom: 1em;
    }
    .news__text {
        margin-bottom: 3em;
    }
    .news__text p {
        font-size: 1.2rem;
        line-height: 1.5;
        margin-bottom: 1.5em;
    }
}


/*=============== ABOUT PAGE ===============*/

.ap h2 {
    color: #4a317a;
    margin-bottom: 1em;
}

.ap p:nth-of-type(6),
.ap p:nth-of-type(8),
.ap p:nth-of-type(9) {
    margin-bottom: 4em;
}

.img__box {
    margin-bottom: 3em;
}

.img__box:nth-of-type(1) img {
    height: 10em;
}

.img__box img {
    height: 4.5em;
    margin-top: 0;
}

.ap_table {}

.ap_table table {
    text-align: left;
    line-height: 1.4;
    font-size: 1.2rem;
    margin-bottom: 3em;
    margin-left: 2em;
    margin-right: 2em;
}

.ap_table table,
.ap_table tr,
.ap_table td {
    border: 1px #4a317a solid;
    border-collapse: collapse;
    padding: 1em;
    vertical-align: middle;
}

.t1 {
    white-space: nowrap;
}

@media (max-width: 768.98px) {
    .ap p:nth-of-type(6),
    .ap p:nth-of-type(8),
    .ap p:nth-of-type(9) {
        margin-bottom: 3em;
    }
    .ap_table {}
    .ap_table table {
        margin-bottom: 2em;
        line-height: 1.4;
        font-size: 1rem;
        margin-left: 0;
        margin-right: 0;
    }
    .t1 {
        white-space: normal;
    }
}

@media (max-width: 414.98px) {
    .ap h2 {}
    .ap p:nth-of-type(4) {
        margin-bottom: 3.5em;
    }
    .ap p:nth-of-type(6),
    .ap p:nth-of-type(8),
    .ap p:nth-of-type(9) {
        margin-bottom: 2.5em;
    }
    .img__box {
        margin-bottom: 3em;
    }
    .img__box img {
        height: 2.5em;
        margin-top: 0;
    }
    .ap_table {}
    .ap_table table {
        margin-bottom: 1.5em;
    }
}


/*========== Client Page ==========*/

.cl h2 {
    color: #4a317a;
}

.cl ol {
    list-style-type: disc;
}

.cl .common--lists {
    margin-bottom: 6em;
}

.cl li {
    font-weight: 300;
}

.attention p {
    color: #00000c;
    margin-bottom: 0;
    font-weight: 400;
}

@media (max-width: 1099.98px) {}

@media (max-width: 768.98px) {}

@media (max-width: 414.98px) {
    .cl .common--lists {
        margin-bottom: 2.5em;
    }
}


/*========== Medical Doctor Page ==========*/

.md--upper {
    margin-bottom: 7em;
}

.md--middle .title__logo h2 {
    color: #4a317a;
    font-size: 2.8rem;
    font-weight: 400;
}

.md__main--content h2 {
    color: #4a317a;
    margin-bottom: 0.5em;
    font-style: italic;
    font-weight: 400;
}

.md__main--content li {
    font-weight: 300;
    line-height: 1.5;
    font-size: 1.6rem;
}

.md--lower h2 {
    font-size: 2rem;
}

.md--lower p {
    margin-bottom: 1.5em;
    font-style: italic;
}

.md--lower .title__logo h2 {
    color: #4a317a;
    font-size: 2.4rem;
    font-style: italic;
    margin-bottom: 0;
}

.md--btn {
    display: flex;
    justify-content: space-evenly;
}

.md--btn a {
    text-decoration: none;
}

.md--btn span {
    display: block;
    color: #4a317a;
    font-size: 1.4rem;
    font-weight: normal;
    line-height: 3;
}

.md--btn img {
    height: 150px;
    vertical-align: middle;
}

.md--btn img:nth-of-type(2),
.md--btn img:nth-of-type(4) {
    filter: invert(50%) sepia(0%) saturate(11%) hue-rotate(143deg) brightness(101%) contrast(93%);
}

@media (max-width: 768.98px) {
    .md--btn img {
        height: 100px;
    }
}

@media (max-width: 414.98px) {
    .md--upper {
        margin-bottom: 3em;
    }
    .md--middle .title__logo {}
    .md--middle .title__logo h2 {
        font-size: 1.4rem;
    }
    .md--middle .title__logo img {
        margin-bottom: 2.5em;
    }
    .md__main--content h2 {}
    .md__main--content p {
        margin-bottom: 3em;
    }
    .md__main--content li {
        font-size: 1rem;
    }
    .md--lower h2 {
        font-size: 1.2rem;
    }
    .md--lower p {
        margin-bottom: 1.5em;
        font-style: italic;
    }
    .md--lower .title__logo h2 {
        font-size: 1.2rem;
        margin-bottom: 1em;
    }
    .md--btn {
        display: block;
    }
    .md--btn a {}
    .md--btn span {
        display: block;
        font-size: 1rem;
        line-height: 2;
    }
    .md--btn img {
        height: 70px;
        margin: 1em 0;
    }
}


/*========== MD in Japan & Overseas Page ==========*/

.dr--upper h2:nth-child(1) {
    margin-bottom: 3em;
}

.dr--upper h2:nth-child(2) {
    color: #4a317a;
}

.dr--upper.os h2:nth-child(2),
.dr--upper.os h2:nth-child(3) {
    color: #888088;
    font-size: 2rem;
    font-weight: 300;
    line-height: 1.5;
}

.dr--upper.os h2:nth-child(3) {
    margin-bottom: 3.5em;
}

.dr--upper.os h2:nth-child(4) {
    color: #4a317a;
}

.dr--middle h2:nth-child(1) {
    color: #4a317a;
    margin-bottom: 2.5em;
}

.dr--middle h2:nth-child(3) {
    color: #888088;
    font-weight: 300;
    margin-bottom: 3em;
}

.dr--middle h2:nth-child(4) {
    color: #4a317a;
}

.dr--middle li {
    font-size: 2.2rem;
    color: #4a317a;
    margin-bottom: 0;
}

.dr--middle p {
    font-style: italic;
}

.dr--middle h2:nth-child(6) {
    color: #4a317a;
    font-style: italic;
    font-weight: 300;
}

.dr--lower img {
    width: 60px;
    height: 60px;
    margin: auto 0;
}

.dr--lower h2 {
    color: #888088;
    font-size: 2.2rem;
    font-weight: 300;
    line-height: 1.5;
}

@media (max-width: 768.98px) {
    .dr--upper h2:nth-child(1) {
        margin-bottom: 1.5em;
    }
    .dr--upper.os h2:nth-child(2),
    .dr--upper.os h2:nth-child(3) {
        font-size: 1.8rem;
    }
    .dr--upper.os h2:nth-child(3) {
        margin-bottom: 2.5em;
    }
    .dr--middle h2:nth-child(3) {
        margin-bottom: 2em;
    }
    .dr--middle li {
        font-size: 1.8rem;
    }
    .dr--lower img {
        width: 60px;
        height: 60px;
        margin: 0 0 1.5em 0;
    }
    .dr--lower h2 {
        color: #888088;
        font-size: 1.8rem;
        font-weight: 300;
        line-height: 1.5;
    }
}

@media (max-width: 414.98px) {
    .dr--upper h2:nth-child(1) {
        margin-bottom: 2em;
    }
    .dr--upper h2:nth-child(2) {}
    .dr--upper.os h2:nth-child(2),
    .dr--upper.os h2:nth-child(3) {
        font-size: 1.2rem;
    }
    .dr--upper.os h2:nth-child(3) {
        margin-bottom: 2.5em;
    }
    .dr--upper.os h2:nth-child(4) {
        color: #4a317a;
    }
    .dr--middle h2:nth-child(1) {
        color: #4a317a;
        margin-bottom: 2.5em;
    }
    .dr--middle h2:nth-child(3) {
        margin-bottom: 3em;
    }
    .dr--middle h2:nth-child(4) {}
    .dr--middle li {
        font-size: 1rem;
    }
    .dr--middle p {}
    .dr--middle h2:nth-child(6) {}
    .dr--lower img {
        width: 50px;
        height: 50px;
        margin-bottom: 1.5em;
    }
    .dr--lower h2 {
        font-size: 1.2rem;
    }
}


/*============ Services Page ============*/

.sp h1 {
    color: #4a317a;
}

.sp h2 {
    color: #4a317a;
}

.sp h2:nth-of-type(2) {
    color: #888088;
    font-weight: 300;
    margin-bottom: 3em;
}

.sp h2:nth-of-type(3) {
    margin-bottom: 3em;
}

.sp p {
    font-size: 1.4rem;
}

.sp ol li {
    list-style-type: disc;
    line-height: 2;
    color: #4a317a;
}

.sp ol img {
    height: 1em;
    vertical-align: middle;
}

.sp div:nth-of-type(2),
.sp div:nth-of-type(3) {
    display: flex;
    justify-content: space-around;
}

.sp div:nth-of-type(2) {
    margin-bottom: 2em;
}

@media (max-width: 768.98px) {
    .sp h2:nth-of-type(2) {
        margin-bottom: 2em;
    }
    .sp h2:nth-of-type(3) {
        margin-bottom: 2em;
    }
}

@media (max-width: 414.98px) {
    .sp div:nth-of-type(2),
    .sp div:nth-of-type(3) {
        display: block;
    }
    .sp div:nth-of-type(2) {
        margin-bottom: 1em;
    }
    .sp div:nth-of-type(2) img {
        height: auto;
        width: 75%;
    }
    .sp h2:nth-of-type(3) {
        margin-bottom: 1.5em;
    }
    .sp div:nth-of-type(3) button:nth-of-type(1) {
        margin-bottom: 1.5em;
    }
}


/*============ Service Enquiry Page ============*/

.of .content__box {
    margin-bottom: 6em;
}

.of h2 {
    color: #4a317a;
    margin-bottom: 1em;
}

.of .sub-title {
    font-size: 2.8rem;
}

.of--top {
    margin-top: 6em;
    margin-bottom: 2.5em;
}

.of .color {
    color: #4a317a;
    font-weight: bold;
}

.of--middle img,
.of--lower img {
    margin-left: 0;
    margin-right: 0.5em;
}

.of-flex {
    display: flex;
    justify-content: center;
    margin-bottom: 3em;
}

.of-flex img {
    width: 80px;
    height: 80px;
    margin: 0 3em;
}

.quick-look {
    text-align: center;
}

.of--lower {
    margin-bottom: 2.5em;
}

.of--lower:last-child {
    margin-bottom: 0;
}

.of--lower h2 {
    margin-bottom: 0;
}

@media (max-width: 768.98px) {
    .of .content__box {
        margin-bottom: 4em;
    }
    .of--top {
        margin-top: 3em;
    }
}

@media (max-width: 414.98px) {
    .of .content__box {
        margin-bottom: 3em;
    }
    .of h2 {
        margin-bottom: 1em;
    }
    .of--top {
        margin-top: 2.5em;
        margin-bottom: 1em;
    }
    .of--top img {
        margin-bottom: 2em;
    }
    .of .sub-title {
        font-size: 1.8rem;
    }
    .of .color {}
    .of--middle img,
    .of--lower img {
        margin-left: 0;
        margin-right: 0.5em;
    }
    .of-flex {
        margin-bottom: 3em;
    }
    .of-flex img {
        width: 50px;
        height: 50px;
        margin: 0 1.5em;
    }
    .quick-look {}
    .of--lower {
        margin-bottom: 1.5em;
    }
    .of--lower:last-child {}
    .of--lower h2 {}
}


/*============ Accessing MDs page ============*/

.ad--upper {
    margin-bottom: 1em;
}

.ad--middle h2:nth-of-type(1) {
    color: #4a317a;
}

.ad--heading {
    font-size: 3.2rem;
    font-weight: bold;
    margin-bottom: 1em;
}

.ad-list {
    display: flex;
    margin-bottom: 2em;
}

.ad-list img {
    height: 1em;
    margin-top: 0.7em;
}

.ad-list li {
    width: 35%;
    margin-right: 0.5em;
    margin-bottom: 0;
    color: #4a317a;
}

.ad-list div {
    width: 65%;
}

.ad-list p:nth-of-type(1) {
    margin-bottom: 0.5em;
}

.ad-list p:nth-of-type(2) {
    font-style: italic;
}

.ad-flex {
    display: flex;
    justify-content: center;
    margin-bottom: 5em;
}

.ad-flex div {
    padding: 0 2em;
}

.ad-flex img {
    width: 80px;
    height: 80px;
}

.ad-flex a {
    text-decoration: none;
    display: block;
    font-size: 1.8rem;
    color: #4a317a;
    line-height: 2;
    transition: 0.3s;
}

.ad-flex a:hover {
    opacity: 0.7;
    transition: 0.3s;
}

.ad--middle .dr__main--logo {
    margin-bottom: 0;
}

@media (max-width: 768.98px) {}

@media (max-width: 414.98px) {
    .ad--upper {
        margin-bottom: 3em;
    }
    .ad--middle h2:nth-of-type(1) {}
    .ad--upper .title__logo,
    .ad--middle .title__logo {
        display: block;
        margin-bottom: 1.5em;
    }
    .ad-list {
        display: block;
        margin-bottom: 1.5em;
    }
    .ad-list li {
        width: 100%;
        margin-right: 0;
        margin-bottom: 1em;
    }
    .ad-list div {
        width: 100%;
    }
    .ad-list p:nth-of-type(1) {
        margin-bottom: 0.5em;
    }
    .ad-list p:nth-of-type(2) {}
    .ad-flex {
        margin-bottom: 3em;
    }
    .ad-flex div {
        padding: 0 1em;
    }
    .ad-flex img {
        width: 40px;
        height: 40px;
    }
    .ad-flex a {
        font-size: 1rem;
        line-height: 2;
    }
    .ad-flex a:hover {}
    .ad--middle .dr__main--logo {
        margin-bottom: 0;
    }
}


/*============ Resources Page ============*/

.common__content.rs {
    margin-top: 4em;
}

.common__content.rs h3 {
    position: relative;
    padding: 1.5em 6em 1.5em 3em;
    background: #6e6592;
    font-size: 1.8rem;
    color: #fff;
    cursor: pointer;
    margin-top: 0.5em;
    margin-bottom: 0;
    text-align: left;
}

.common__content.rs h3:nth-of-type(1) {
    margin-top: 0;
}

.common__content.rs h3::after {
    content: "";
    position: absolute;
    top: 50px;
    right: 100px;
    width: 0;
    height: 0;
    border: 8px solid transparent;
    border-left-color: #fff;
}

.common__content.rs h3.open::after {
    content: "";
    position: absolute;
    top: 55px;
    border: 8px solid transparent;
    border-top-color: #fff;
}

.common__content.rs div {
    background: #c8cdd5;
    padding: 1.5em 1.3em;
    margin: 0 auto 0.5em auto;
    text-align: center;
}

.common__content.rs a {
    font-weight: bold;
    font-size: 1.8rem;
    color: #47413b;
    line-height: 1.5;
    text-decoration: none;
}

.common__content.rs a:hover {
    text-decoration: none;
    color: #47413b;
}

.common__content.rs img {
    width: 70px;
    height: 70px;
    display: inline-block;
    vertical-align: middle;
    margin-left: 1em;
}

.common__content.rs span {
    color: #47413b;
    font-size: 2rem;
    margin-top: 1em;
    padding: 0 1em;
}

@media (max-width: 768.98px) {}

@media (max-width: 414.98px) {
    .common__content.rs {
        margin-top: 2em;
    }
    .common__content.rs h3 {
        position: relative;
        padding: 1.5em 6em 1.5em 1.5em;
        font-size: 1rem;
        margin-top: 0.5em;
        margin-bottom: 0;
    }
    .common__content.rs h3:nth-of-type(1) {
        margin-top: 0;
    }
    .common__content.rs h3::after {
        content: "";
        position: absolute;
        top: 25px;
        right: 25px;
    }
    .common__content.rs h3.open::after {
        content: "";
        position: absolute;
        top: 30px;
    }
    .common__content.rs div {
        padding: 1.5em 1.3em;
        margin: 0 auto 0.5em auto;
        text-align: center;
    }
    .common__content.rs a {
        font-size: 1rem;
        line-height: 1.5;
    }
    .common__content.rs a:hover {}
    .common__content.rs img {
        width: 25px;
        height: 25px;
        margin-left: 1em;
    }
    .common__content.rs span {
        font-size: 1rem;
        margin-top: 1em;
        padding: 0 0.5em;
    }
}


/*============ ISP Page ============*/

.isp h2:nth-of-type(1) {
    color: #4a317a;
    font-size: 2.8rem;
}

.isp h2:nth-of-type(2) {
    color: #888088;
}

.isp h2:nth-of-type(3) {
    color: #4a317a;
    font-style: italic;
    font-size: 2rem;
    font-weight: 300;
    margin-bottom: 0;
}

.isp ol {
    list-style-type: disc;
}

.title__link {
    text-align: center;
    margin-top: 3em;
    margin-bottom: 3em;
}

.title__link a {
    font-size: 1.8rem;
    line-height: 2;
    color: #4a317a;
}

.title__link img {
    display: block;
    width: 150px;
    margin-left: auto;
    margin-right: auto;
}

@media (max-width: 768.98px) {
    .isp h2:nth-of-type(3) {
        font-size: 1.8rem;
    }
    .title__link {}
    .title__link a {
        display: inline-block;
        line-height: 1.4;
        margin-right: 0;
    }
}

@media (max-width: 414.98px) {
    .isp h2:nth-of-type(1) {
        font-size: 1.4rem;
        line-height: 1.4;
    }
    .isp h2:nth-of-type(2) {}
    .isp h2:nth-of-type(3) {
        font-size: 1.4rem;
        margin-bottom: 0;
    }
    .isp ol {}
    .title__link {}
    .title__link a {
        font-size: 1.2rem;
    }
    .title__link img {
        width: 100px;
    }
}


/*========== Guidance Page ==========*/

.gp h1,
.gp h2 {
    text-align: center;
}

.gp h2 {
    color: #4a317a;
}

.gp h2:nth-of-type(5) {
    font-weight: bold;
}

.gp .title__logo {
    margin-bottom: 2em;
}

.gp .title__logo h1 {
    margin-top: 0.15em;
}

.gp .title__logo img {
    width: 75px;
    height: 100%;
    margin-right: 0.5em;
    margin-left: 0;
}

.gp p {
    font-style: italic;
    font-size: 1rem;
    color: #2d3436;
    margin-bottom: 0;
}

.p--upper p {
    font-size: 1.65rem;
    font-style: normal;
    color: #888088;
}

.p--bottom {
    margin-bottom: 4em;
}

.p--bottom p {
    font-style: italic;
    font-size: 1.4rem;
    line-height: 2;
    color: #4a317a;
}

.p--bottom a {
    text-decoration: none;
    color: #4a317a;
}

.gp .common--lists ol {
    margin-bottom: 2em;
}

.gp .common--lists.disc ol li {
    list-style-type: disc;
}

.gp .common--lists ol li {
    line-height: 2;
}

.gp span {
    font-weight: bold;
}

.gp button {
    margin-bottom: 2.5em;
    font-size: 2.2rem;
    background: #4a317a;
    height: 120px;
    width: 420px;
}

.gp button img {
    height: 1.2em;
    vertical-align: middle;
    -webkit-filter: brightness(0) invert(1);
    filter: brightness(0) invert(1);
}

.gp button img:nth-of-type(1) {
    margin-right: 0.5em;
}

.gp button img:nth-of-type(2) {
    margin-left: 0.5em;
}

.gp button:nth-of-type(2) {
    margin-bottom: 0;
}

.gp--icon {
    display: inline;
    height: 30px;
    width: 30px;
    margin: 0.3em 0.2em auto 0;
}

.gp--hr {
    background-color: #4a317a;
    border: 0.05em solid #4a317a;
    margin-bottom: 6em;
}

.gp--instruction1,
.gp--instruction2,
.gp--instruction3,
.gp--instruction4 {
    margin-bottom: 4em;
    margin-left: 3em;
}

.gp--instruction1 {
    height: 250px;
}

.gp--instruction2 {
    height: 150px;
}

.gp--instruction3 {
    height: 100px;
}

.gp--instruction4 {
    height: 355px;
}

.gp--instruction5 {
    height: 100px;
    margin-bottom: 2em;
    margin-left: 3em;
}

@media (max-width: 768.98px) {}

@media (max-width: 414.98px) {
    .gp h1,
    .gp h2 {}
    .gp h2:nth-of-type(5) {}
    .gp .title__logo {
        margin-bottom: 2em;
    }
    .gp .title__logo h1 {
        margin-top: 0.15em;
    }
    .gp .title__logo img {
        width: 50px;
        height: 100%;
        margin-right: 0;
        margin-left: 0;
        margin-bottom: 0.5em;
    }
    .gp p {
        font-size: 1rem;
        margin-bottom: 0;
    }
    .p--upper p {
        font-size: 1rem;
    }
    .p--bottom {
        margin-bottom: 3em;
    }
    .p--bottom p {
        font-size: 1rem;
        line-height: 1.5;
    }
    .p--bottom a {}
    .gp .common--lists ol {
        margin-bottom: 2em;
    }
    .gp .common--lists.disc ol li {}
    .gp .common--lists ol li {
        line-height: 1.5;
    }
    .gp span {}
    .gp button {
        margin-bottom: 2.5em;
        font-size: 1.2rem;
        height: 60px;
        width: 210px;
    }
    .gp button img {
        height: 1.2em;
    }
    .gp button img:nth-of-type(1) {}
    .gp button img:nth-of-type(2) {}
    .gp button:nth-of-type(2) {}
    .gp--icon {
        display: inline;
        height: 30px;
        width: 30px;
    }
    .gp--hr {
        margin-bottom: 3em;
    }
    .gp--instruction1,
    .gp--instruction2,
    .gp--instruction3,
    .gp--instruction4,
    .gp--instruction5 {
        margin-bottom: 2em;
        margin-left: 0;
        width: 100%;
        height: auto;
    }
    .gp--instruction1 {}
    .gp--instruction2 {}
    .gp--instruction3 {}
    .gp--instruction4 {}
    .gp--instruction5 {
        margin-bottom: 0;
    }
}


/*========== Lists Page ==========*/

.li .title__logo {
    margin-bottom: 5em;
}

.li .title__logo img {
    width: 75px;
    height: 100%;
    margin-right: 0.5em;
    margin-left: 0;
}

.li .title__logo h1 {
    margin-bottom: 0;
    margin-top: 0.2em;
}

.li p {
    font-size: 1.65rem;
    font-weight: 400;
    color: #4a317a;
    margin-bottom: 4em;
}

.lists-ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}

.lists-li {
    margin-bottom: 5em;
    width: 25%;
}

.lists-li a {
    display: block;
    text-decoration: none;
    color: #888088;
    font-size: 1.5rem;
}

.lists-li img {
    margin-bottom: 1em;
}

@media (max-width: 768.98px) {
    .li .title__logo {
        margin-bottom: 3em;
    }
    .li .title__logo img {
        margin-right: 0;
    }
    .li p {
        margin-bottom: 2.5em;
    }
}

@media (max-width: 414.98px) {
    .li .title__logo {
        margin-bottom: 2em;
    }
    .li .title__logo img {
        width: 50px;
        height: 100%;
        margin-left: 0;
        margin-bottom: 0.5em;
    }
    .li .title__logo h1 {
        margin-bottom: 0;
        margin-top: 0.2em;
    }
    .li p {
        font-size: 1rem;
        margin-bottom: 3em;
    }
    .lists-ul {}
    .lists-li {
        margin-bottom: 3em;
        width: 33%;
    }
    .lists-li a {
        font-size: 0.7rem;
        line-height: 1.2;
    }
    .lists-li img {
        width: 60px;
        height: 100%;
        margin-bottom: 1em;
    }
}


/*=== Database Page ===*/

.database__inner {
    padding: 1em;
    background-color: #fff;
}

.table__container {
    width: 100%;
    overflow-x: scroll;
}

.database__inner table {
    width: 100%;
}

.database__inner table,
.database__inner td,
.database__inner th {
    border: 1px #4a317a solid;
    border-collapse: collapse;
}

.database__inner td,
.database__inner th {
    vertical-align: middle;
    text-align: center;
    padding: 0.8em 0.5em;
}

.database__inner th {
    color: #fff;
    background-color: #8b9099;
    line-height: 1.25;
}

.database__inner td {}

.database__inner th:nth-child(5) {
    background-color: #A4AF3B;
}

.database__inner th:nth-child(8) {
    background-color: #4a317a;
}

.database__inner th:nth-child(9) {
    background-color: #535E96;
}

.database__inner th:nth-child(14) {
    background-color: #B3903C;
}

.database__inner th:nth-child(16) {
    background-color: #692A76;
}

.table__header {
    display: flex;
    justify-content: space-between;
}

.back__btn {
    text-decoration: none;
    margin-bottom: 0.3em;
    color: #4a317a;
}

.td-1 {}

.star {
    position: absolute;
    left: 1.1%;
    max-height: 0.85em;
    animation: blink 0.7s ease-in-out infinite alternate;
}

@keyframes blink {
    0% {
        opacity: 0;
    }
    100% {
        opacity: 1;
    }
}

.numbering-system {
    margin-bottom: 0.3em;
}

.numbering-system__btn {
    background: #4a317a;
    color: #fff;
    border: none;
    border-radius: 5px;
}

.popup__btn {
    box-shadow: 10px 10px 10px -6px rgba(0, 0, 0, 0.3);
    margin-top: 2em;
    display: block;
    margin-left: auto;
    font-size: 1.2rem;
    padding: 0.3em 0.5em;
}

.numbering-system__btn:hover {
    cursor: pointer;
}

.numbering-system__content {
    background: #fff;
    line-height: 1.2;
    padding: 30px;
    border-radius: 5px;
    width: 80%;
    display: flex;
}

.numbering-system__content div {
    margin-bottom: 1em;
    margin-right: 1em;
}

.numbering-system__content table .t1 {
    background-color: #A4AF3B;
    color: #fff;
}

.numbering-system__content table .t2 {
    background-color: #4a317a;
    color: #fff;
}

.numbering-system__content table .t3 {
    background-color: #535E96;
    color: #fff;
}

.numbering-system__content table .t4 {
    background-color: #B3903C;
    color: #fff;
}

.numbering-system__content table .t5 {
    background-color: #692A76;
    color: #fff;
}

.popup {
    display: none;
    height: 100vh;
    width: 100%;
    background: black;
    opacity: 0.95;
    position: fixed;
    top: 0;
    left: 0;
}

.show {
    display: flex;
    justify-content: center;
    align-items: center;
}

@media (max-width: 768.98px) {
    .database__inner {
        padding: 1em;
    }
    .table__container {
        width: 100%;
        overflow-x: scroll;
    }
    .table__container table {
        width: auto;
    }
    .database__inner table,
    .database__inner td,
    .database__inner th {}
    .database__inner td,
    .database__inner th {
        vertical-align: middle;
        text-align: center;
        padding: 0.8em 0.5em 0.5em;
    }
    .table__header {
        display: block;
    }
    .table__header a {
        display: block;
        margin-bottom: 1em;
    }
    .table__header p {
        margin-bottom: 0.5em;
    }
    .back__btn {}
    .star {
        left: 2.4%;
        max-height: 0.8em;
    }
    .numbering-system {}
    .numbering-system__btn {}
    .numbering-system__btn.pc {
        display: none;
    }
    .numbering-system--btn.sp {
        display: inline;
        background: #4a317a;
        color: #fff;
        border: none;
        border-radius: 5px;
    }
    .popup__btn {}
    .numbering-system__btn:hover {}
    .popup {}
    .numbering-system__content {
        width: 100%;
        overflow-x: scroll;
    }
    .show {}
}

@media (max-width: 414.98px) {
    .database__inner {
        padding: 1em;
    }
    .table__container {
        width: 100%;
        overflow-x: scroll;
    }
    .table__container table {
        width: auto;
    }
    .database__inner table,
    .database__inner td,
    .database__inner th {}
    .database__inner td,
    .database__inner th {
        vertical-align: middle;
        text-align: center;
        padding: 0.2em 0.3em;
    }
    .table__header {
        display: block;
    }
    .table__header a {
        display: block;
        margin-bottom: 1em;
    }
    .table__header p {
        margin-bottom: 0.5em;
        line-height: 1.3;
    }
    .back__btn {}
    .star {
        left: 4%;
        max-height: 0.7em;
    }
    .numbering-system {}
    .numbering-system__btn {}
    .numbering-system__btn.pc {
        display: none;
    }
    .numbering-system--btn.sp {
        display: inline;
        background: #4a317a;
        color: #fff;
        border: none;
        border-radius: 5px;
    }
    .popup__btn {}
    .numbering-system__btn:hover {}
    .popup {}
    .numbering-system__content {}
    .numbering-system__content div {}
    .show {}
}


/*========== Identifier ==========*/

.simple-banner.idf {
    background-image: linear-gradient(90deg, rgba(74, 49, 122, 1), rgba(205, 167, 255, 1));
    width: 100%;
    height: 100%;
}

.idf--heading {
    color: #fff;
    line-height: 3;
    margin-left: 5em;
    font-size: 2rem;
}

.identifier__inner {
    max-width: 1200px;
    padding: 3em 2em 0;
    margin: 0 auto;
    background-color: #fff;
}

.identifier__box--inner {
    margin-bottom: 1em;
}

.identifier__box--inner p:nth-child(1) {
    font-size: 1.4rem;
    line-height: 1.5;
    margin-bottom: 1em;
}

#js-copytext {
    height: 30px;
    width: 300px;
    color: #2d3436;
    border-bottom: 1px solid #4a317a;
}

.js__copy {
    display: flex;
    justify-content: left;
    margin-left: 0;
}

#js-copybtn {
    background: #fff;
    color: #4a317a;
    border-radius: 5px;
    border: 1px solid #4a317a;
    text-align: center;
    box-shadow: 10px 10px 10px -6px rgba(0, 0, 0, 0.3);
    font-size: 1.4rem;
    padding: 0.6em 1em;
    margin-right: 1em;
    height: 50px;
    transition: 0.3s;
}

#js-copybtn:hover {
    cursor: pointer;
    opacity: 0.7;
    transition: 0.3s;
}

.copy_alert {
    display: none;
    padding: 0 1em 0 0.5em;
    margin-top: auto;
    margin-bottom: auto;
    font-size: 1.4em;
}

.js-mailbtn {
    height: 50px;
}

.email__container {
    background-color: #fff;
}

.email__inner {
    max-width: 1200px;
    padding: 2em 2em 4em;
    margin: 0 auto;
}

.email__inner label {
    font-size: 1.6rem;
    font-weight: bold;
}

.email__inner input {
    line-height: 2;
}

.email__inner p {
    font-size: 1.4rem;
    margin-bottom: 1em;
    line-height: 1.5;
    color: #4a317a;
}

.email__inner hr {
    background-color: #4a317a;
    border: 0.05em solid #4a317a;
    margin-top: 2em;
    margin-bottom: 2em;
}

.send--button {
    background: #4a317a;
    color: #fff;
    border-radius: 5px;
    text-align: center;
    box-shadow: 10px 10px 10px -6px rgba(0, 0, 0, 0.3);
    font-size: 1.4rem;
    padding-left: 1.6em;
    padding-right: 1.6em;
    margin-right: 1em;
    height: 50px;
}

.send--button:hover {
    cursor: pointer;
    opacity: 0.7;
    transition: 0.3s;
}

.identifier--logo {
    max-width: 1200px;
    padding: 0 2em 3em;
    margin: 0 auto;
    text-align: right;
}

.identifier--logo img {
    height: 6em;
}

@media (max-width: 768.98px) {
    .simple-banner.idf h1 {
        margin-left: 2em;
        font-size: 1.8rem;
    }
}

@media (max-width: 414.98px) {
    .simple-banner.idf h1 {
        line-height: 2;
        margin-left: 1em;
        font-size: 1.4rem;
    }
    .idf {}
    .idf--heading {
        line-height: 3;
        margin-left: 2em;
        font-size: 1.4rem;
    }
    .identifier__inner {
        max-width: 1200px;
        padding: 3em 2em 0;
        margin: 0 auto;
    }
    .identifier__box--inner {
        margin-bottom: 2em;
    }
    .identifier__box--inner p:nth-child(1) {
        font-size: 1.4rem;
        line-height: 1.5;
        margin-bottom: 1em;
    }
    #js-copytext {}
    .js__copy {}
    #js-copybtn {}
    .copy_alert {}
    .js-mailbtn {}
    .email__inner {
        padding: 2em;
    }
    .email__inner .mw_wp_form.mw_wp_form_input,
    .email__inner .mw_wp_form.mw_wp_form_confirm.mw_wp_form_preview {}
    .email__inner label {
        font-size: 1.2rem;
    }
    .email__inner input {
        line-height: 2;
        width: 100%;
    }
    .email__inner p {
        font-size: 1rem;
        line-height: 1.2;
    }
    .email__inner hr {}
    .send--button {}
    .identifier--logo {
        text-align: center;
        padding: 0;
    }
    .identifier--logo img {
        height: 4em;
    }
}


/*========== List Page (Confirm) ==========*/

.confirm--show {
    display: none;
}

.mw_wp_form.mw_wp_form_confirm.mw_wp_form_preview .confirm--hidden,
.mw_wp_form.mw_wp_form_confirm.mw_wp_form_preview p:nth-of-type(1),
.mw_wp_form.mw_wp_form_confirm.mw_wp_form_preview .identifier__box--inner,
.mw_wp_form.mw_wp_form_confirm.mw_wp_form_preview hr {
    display: none;
}

.mw_wp_form.mw_wp_form_confirm.mw_wp_form_preview .confirm--show {
    display: block;
}


/*========== Contact Page ==========*/

.contact {
    display: flex;
    justify-content: left;
}

.contact .common__content {
    width: 50%;
    margin-bottom: 0;
}

.contact h2 {
    color: #4a317a;
    font-size: 2.8rem;
    line-height: 1.5;
    margin-bottom: 0.5em;
}

.contact h3 {
    color: #00000c;
    font-size: 2rem;
    font-weight: 400;
    margin-bottom: 2em;
}

.contact div {
    margin-bottom: 2.5em;
}

.contact span {
    font-size: 1.85rem;
    color: #00000c;
    font-weight: 300;
    line-height: 1.5;
    margin-bottom: 0.5em;
    display: block;
}

.contact a {
    color: #6e6592;
    text-decoration: none;
    font-size: 1.65rem;
    line-height: 2;
    display: block;
    transition: 0.3s;
}

.contact a:hover {
    opacity: 0.7;
    transition: 0.3s;
}

.exclusively {
    margin: 2em 0;
    height: 5em;
}

.mw_wp_form.mw_wp_form_input,
.mw_wp_form.mw_wp_form_confirm.mw_wp_form_preview {
    padding: 2em 0 0.5em 0;
    border-radius: 5px;
}

.contact form {
    width: 80%;
    margin: 0 auto 0 auto;
}

.contact input,
.contact textarea {
    width: 100%;
}

.contact input {
    height: 35px;
}

.contact label {
    text-align: left;
    font-size: 1.85rem;
    color: #00000c;
    font-weight: 300;
    display: block;
}

.asterisk {
    color: red;
    display: inline;
}

.captcha {
    line-height: 1.5;
}

.captcha p {
    font-size: 0.8rem;
}

.captcha a {
    font-size: 1rem;
    display: inline-block;
}

@media (max-width: 768.98px) {
    .contact a {
        font-size: 1.5rem;
        line-height: 1.8;
    }
    .captcha {}
    .captcha p {
        font-size: 0.75rem;
    }
    .captcha a {
        font-size: 0.95rem;
        display: inline-block;
    }
}

@media (max-width: 414.98px) {
    .contact {
        display: block;
        justify-content: center;
    }
    .contact .common__content {
        width: 100%;
        margin-bottom: 0;
    }
    .contact h2 {
        font-size: 1.4rem;
        line-height: 1.5;
        margin-bottom: 0.5em;
    }
    .contact h3 {
        font-size: 1.2rem;
        margin-bottom: 2em;
    }
    .contact div {
        margin-bottom: 1.5em;
    }
    .contact span {
        font-size: 1rem;
        line-height: 1.5;
        margin-bottom: 0;
        display: block;
    }
    .contact a {
        font-size: 1rem;
        line-height: 1.5;
        display: block;
    }
    .contact a:hover {}
    .exclusively {
        margin: 0;
        height: 2em;
    }
    .mw_wp_form.mw_wp_form_input,
    .mw_wp_form.mw_wp_form_confirm.mw_wp_form_preview {
        padding: 2em 0 0.5em 0;
        margin-bottom: 0;
    }
    .contact form {
        width: 80%;
        margin: 0 auto 0 auto;
    }
    .contact input,
    .contact textarea {
        width: 100%;
    }
    .contact input {
        height: 35px;
    }
    .contact label {
        text-align: left;
        font-size: 1rem;
        display: block;
    }
    .asterisk {
        display: inline;
    }
    .captcha {
        line-height: 1.2;
    }
    .captcha p {
        font-size: 0.65rem;
    }
    .captcha a {
        font-size: 0.85rem;
        display: inline-block;
    }
}


/*=============== Privacy Policy Page ===============*/

.pp {
    text-align: left;
}

.pp .common__content {
    margin-bottom: 5em;
}

.pp .common__content:last-of-type {
    margin-bottom: 0;
}

.pp h2 {
    color: #4a317a;
    margin-bottom: 0.5em;
}

.pp h2:nth-of-type(1),
.pp h2:nth-of-type(2) {
    margin-bottom: 0;
}

.pp h3 {
    color: #4a317a;
    font-size: 2rem;
    line-height: 2;
    margin-top: 2em;
    margin-bottom: 0.5em;
}

.pp p {
    margin-bottom: 1em;
}

.pp-anchor {
    color: #6e6592;
    font-size: 1.65rem;
    line-height: 2;
    text-decoration: none;
    transition: 0.3s;
}

.pp-anchor:hover {
    opacity: 0.7;
    transition: 0.3s;
}

@media (max-width: 768.98px) {}

@media (max-width: 414.98px) {
    .pp {}
    .pp .common__content {
        margin-bottom: 2.5em;
    }
    .pp .common__content:last-of-type {}
    .pp h2:nth-of-type(1),
    .pp h2:nth-of-type(2) {
        margin-bottom: 0.5em;
    }
    .pp h3 {
        font-size: 1.2rem;
        line-height: 1.5;
        margin-top: 2em;
        margin-bottom: 0.5em;
    }
    .pp p {}
    .pp-anchor {
        font-size: 1rem;
        line-height: 1.5;
    }
    .pp-anchor:hover {}
}


/*=============== Site Map Page ===============*/

.sitemap--flex {
    display: flex;
    margin-top: 5em;
}

.sitemap--flex div {
    width: 33%;
    text-align: left;
}

.sitemap--flex div:nth-of-type(1),
.sitemap--flex div:nth-of-type(2) {
    margin-right: 1em;
}

.sitemap--flex div a {
    margin-bottom: 2em;
    display: block;
    text-decoration: none;
    color: #888088;
    font-size: 1.5rem;
    line-height: 1.5;
}

@media (max-width: 768.98px) {}

@media (max-width: 414.98px) {
    .sitemap--flex {
        display: block;
        padding: 0 2em;
        margin-top: 3em;
    }
    .sitemap--flex div {
        width: 100%;
    }
    .sitemap--flex div:nth-of-type(1),
    .sitemap--flex div:nth-of-type(2) {
        margin-bottom: 3.5em;
    }
    .sitemap--flex div:nth-of-type(1),
    .sitemap--flex div:nth-of-type(2) {
        margin-right: 0em;
    }
    .sitemap--flex div a {
        margin-bottom: 1.5em;
        font-size: 1.2rem;
        line-height: 1.2;
    }
}


/*=============== Business Card ===============*/

.card__container {
    position: relative;
    background-image: linear-gradient(90deg, rgba(74, 49, 122, 1), rgba(205, 167, 255, 1));
    text-align: center;
    width: 100%;
    height: 100vh;
}

.card__inner {
    width: 100%;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translateY(-50%) translateX(-50%);
    -webkit- transform: translateY(-50%) translateX(-50%);
}

.card__content {
    padding: 3em 1em 1em;
}

.card__content img {
    width: 70%;
    height: auto;
}

.card--link {
    padding: 1em 0;
}

.card--link a {
    color: #fff;
    font-size: 2rem;
    text-decoration: none;
    padding: 0 3em;
}

@media (max-width: 896.98px) {
    .card__container {}
    .card__inner {}
    .card__content {
        padding: 0.5em;
    }
    .card__content img {
        width: 100%;
    }
    .card--link {
        padding: 1em 0;
    }
    .card--link a {
        font-size: 1.2rem;
        padding: 0 1.5em;
    }
}

@media (max-width: 414.98px) {
    .card__container {}
    .card__inner {}
    .card__content {
        padding: 0.3em;
    }
    .card__content img {}
    .card--link {}
    .card--link a {
        font-size: 0.8rem;
        padding: 0 1em;
    }
}