@charset "UTF-8";

* {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

body {
    color: #222;
    font-size: 16px;
    font-size: 1.0rem;
    font-family: Noto Sans JP, ヒラギノ角ゴ ProN W3, Hiragino Kaku Gothic ProN, メイリオ, Meiryo, sans-serif;
}

@media (max-width: 767px) {
    body {
        font-size: 14px;
        font-size: 0.875rem;
    }
}

h2,
h3,
h4 {
    margin: 0;
    line-height: 1.5em;
}

p {
    margin: 0;
    line-height: 1.6em;
}

ul {
    margin: 0;
    padding: 0;
}

li {
    list-style: none;
}

img {
    max-width: 100%;
    height: auto;
}

.article {
    margin-bottom: 100px;
    font-weight: 500;
}

.article li {
    font-size: 16px;
    font-size: 1.0rem;
}

.article p {
    font-size: 16px;
    font-size: 1.0rem;
    line-height: 1.6;
}

.article p+p {
    margin-top: 1.6em;
}

@media (max-width: 767px) {
    .article {
        margin-bottom: 60px;
        padding: 0;
    }

    .article li {
        font-size: 14px;
        font-size: 0.875rem;
    }

    .article p {
        font-size: 14px;
        font-size: 0.875rem;
    }
}

main a:hover {
    text-decoration: none;
}

a:visited {
    color: inherit;
}

a:link {
    color: inherit;
}

.container {
    width: 1046px;
}

@media (max-width: 767px) {
    .container {
        width: auto;
        padding: 0 18px;
    }
}

.ml-sec {
    padding: 80px 0;
}

@media (max-width: 767px) {
    .ml-sec {
        padding: 40px 0;
    }
}

.ml-sec-medium {
    padding: 60px 0;
}

.ml-sec-low {
    padding: 40px 0;
}

header.global .pc_header .site_logo {
    display: inline-block;
    padding-top: 10px;
    font-size: 0;
    line-height: calc(77px - 10px);
}

header.global .pc_header .site_logo a {
    font-size: 14px !important;
    font-size: 0.875rem !important;
    font-weight: 500;
    color: #222 !important;
    vertical-align: middle;
}

header.global .pc_header .site_logo a:visited {
    color: #222 !important;
}

header.global .pc_header .site_logo img {
    position: relative;
    top: -2px;
    vertical-align: text-bottom;
}

header.global .pc_header .search_block .toggle_button a {
    background: #ffffff url(/-/media/medical/assets/img/common/icon_search.svg) center center no-repeat;
}

header.global .pc_header .search_block .toggle_button.open a {
    background: #ffffff url(/-/media/medical/assets/img/common/icon_cross.svg) center center no-repeat;
}

header.global .pc_header .search_block .search_field .input {
    background: url(/-/media/medical/assets/img/common/icon_search.svg) left center no-repeat;
    font-size: 14px;
    font-size: 0.875rem;
    font-family: Noto Sans JP, ヒラギノ角ゴ ProN W3, Hiragino Kaku Gothic ProN, メイリオ, Meiryo, sans-serif;
}

header.global .pc_header .search_block .search_field .submit {
    background: #007FA5;
    font-size: 14px;
    font-size: 0.875rem;
    font-family: Noto Sans JP, ヒラギノ角ゴ ProN W3, Hiragino Kaku Gothic ProN, メイリオ, Meiryo, sans-serif;
}

header.global .pc_header nav.global li {
    font-size: 13px;
    font-size: 0.8125rem;
}

header.global .pc_header nav.global li.active a,
header.global .pc_header nav.global li a:hover {
    color: #007FA5;
    background: url(/-/media/medical/assets/img/common/menu_on.svg) no-repeat center bottom;
}

a.icon.blank:after {
    width: 12px;
    height: 11px;
    margin-left: 5px;
    background: url(/-/media/medical/assets/img/common/icon_blank_blue.svg) no-repeat left top/contain;
}

@media (max-width: 767px) {
    header.global .sp_header .site_logo {
        width: auto;
    }

    header.global .sp_header .site_logo a {
        font-size: clamp(10px, 2.9vw, 15px);
        font-weight: 500;
        vertical-align: middle;
    }

    header.global .sp_header .site_logo a:visited {
        color: #222 !important;
    }

    header.global .sp_header .site_logo img {
        width: 23vw;
        min-width: 60px;
        max-width: 130px;
        vertical-align: text-bottom;
    }

    header.global .sp_header .search_block .input {
        background: url(/-/media/medical/assets/img/common/icon_search_sp.svg) left center no-repeat;
    }

    header.global .sp_header .search_block .submit {
        background: #007FA5;
    }

    header.global .sp_header .buttons a.search_toggle {
        background: #ffffff url(/-/media/medical/assets/img/common/icon_search_sp.svg) center center no-repeat;
    }

    header.global .sp_header .buttons a.search_toggle.open {
        background: #f2f2f2 url(/-/media/medical/assets/img/common/icon_cross_sp.svg) center center no-repeat;
    }

    header.global .sp_header .buttons a.menu_toggle span {
        background: #007FA5;
    }

    header.global .sp_header nav.global {
        background-color: #fff;
    }

    header.global .sp_header nav.global {
        -webkit-box-shadow: 5px 5px 5px #dcdede;
        box-shadow: 5px 5px 5px #dcdede;
    }

    header.global .sp_header nav.global .group {
        border-color: #fff;
    }

    header.global .sp_header nav.global .group a {
        color: #007FA5;
    }

    header.global .sp_header nav.global .group .heading a {
        color: #007FA5;
    }

    header.global .sp_header nav.global .heading {
        background: url(/-/media/medical/assets/img/common/icon-arrow-border-r-blue.svg) no-repeat 18px center/20px;
    }

    header.global .sp_header nav.global .sub_group {
        background: #fff;
        border: 1px solid #007FA5;
    }

    header.global .sp_header nav.global .sub_group .title {
        color: #007FA5;
        border-color: #007FA5;
    }

    header.global .sp_header nav.global .sub_group li a {
        background-image: url(/-/media/medical/assets/img/common/arrow-right_05_blue.svg);
        background-size: 11px 10px;
        color: #007FA5;
    }

    header.global .sp_header .buttons a.menu_toggle.open {
        background-color: #007FA5;
    }

    /* NewHeader用 */
    header.global #newdesign .sp_header nav.global .heading {
        font-size: 14px;
        font-size: 0.875rem;
        background-size: 0;
        margin: 0;
        height: auto;
        padding-left: 0;
        background: none;
    }

    header.global #newdesign .sp_header nav.global .heading a {
        display: inline-block;
        padding: 12px 0;
    }

    header.global #newdesign .sp_header nav.global .group .heading a span:before {
        content: "";
        background: url(/-/media/medical/assets/img/common/icon-arrow-border-r-blue.svg) no-repeat 18px center/20px;
        width: 20px;
        padding-left: 45px;
        flex-shrink: 0;
    }

    header.global #newdesign .sp_header nav.global .sub_group ul {
        padding: 10px 15px;
    }

    header.global #newdesign .sp_header nav.global .sub_group ul li {
        font-size: 12px;
        font-size: 0.75rem;
        float: none;
        width: 100%;
        margin-bottom: 7px;
    }

    header.global #newdesign .sp_header nav.global .sub_group ul li:last-child {
        margin-bottom: 0;
    }

    header.global #newdesign .sp_header nav.global .sub_group ul li a {
        background-image: none;
        background-size: 0;
        color: #007FA5;
        display: inline-block;
        padding: 10px 0;
    }

    header.global #newdesign .sp_header nav.global .sub_group ul li a span:before {
        content: "";
        background: url(/-/media/medical/assets/img/common/arrow-right_05_blue.svg) no-repeat;
        background-size: 10px 10px;
        background-position: left 4px;
        padding-left: 13px;
        flex-shrink: 0;
    }

}

.mm-footer {
    padding: 60px 0px 40px;
    background-color: #525B5C;
    color: #fff;
}

.mm-footer__main {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    padding-bottom: 30px;
}

.mm-footer__btn {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    min-height: 54px;
    margin-top: 30px;
    padding: 10px 30px;
    background-color: #007FA5;
    border: 1px solid #fff;
    border-radius: 4px;
    -webkit-transition: all .3s;
    transition: all .3s;
}

.mm-footer__btn:hover {
    color: #007FA5;
    background-color: #fff;
    text-decoration: none !important;
}

.mm-footer__btn:hover .mm-footer__btninner::after {
    opacity: 0;
}

.mm-footer__btninner {
    position: relative;
    display: block;
    padding-left: 22px;
}

.mm-footer__btn:hover .mm-footer__btninner {
    text-decoration: none;
}

.mm-footer__btninner::before,
.mm-footer__btninner::after {
    content: "";
    position: absolute;
    top: 2px;
    left: 0;
    bottom: 0;
    display: inline-block;
    width: 17px;
    height: 13px;
    margin-top: auto;
    margin-bottom: auto;
    -webkit-transition: all .3s;
    transition: all .3s;
}

.mm-footer__btninner::before {
    background: url(/-/media/medical/assets/img/common/icon-mail-on.svg) no-repeat center center/contain;
    flex-shrink: 0;
}

.mm-footer__btninner::after {
    background: url(/-/media/medical/assets/img/common/icon-mail-off.svg) no-repeat center center/contain;
    flex-shrink: 0;
}

.mm-footer__btn.blank {
    margin-top: 0;
    background-color: #fff;
    color: #222;
    padding: 10px 20px;
}

.mm-footer__btn.blank .mm-footer__btninner {
    padding-left: 0;
    padding-right: 28px;
}

.mm-footer__btn.blank .mm-footer__btninner::before,
.mm-footer__btn.blank .mm-footer__btninner::after {
    left: inherit;
    right: 0;
}

.mm-footer__btn.blank .mm-footer__btninner::before {
    background: url(/-/media/medical/assets/img/common/icon-blank-w.svg) no-repeat center center/contain;
}

.mm-footer__btn.blank .mm-footer__btninner::after {
    background: url(/-/media/medical/assets/img/common/icon-blank.svg) no-repeat center center/contain;
}

.mm-footer__btn.blank:hover {
    opacity: .7;
}

.mm-footer__btn.blank:hover .mm-footer__btninner::after {
    opacity: 1;
}

.mm-footer__left {
    width: 26%;
}

.mm-footer__center {
    width: 30%;
    margin-left: 2%;
    font-size: 14px;
    font-size: 0.875rem;
}

.mm-footer__right {
    width: 40%;
    margin-left: 2%;
}

.mm-footer__bottom {
    padding-top: 38px;
    border-top: 1px solid #fff;
}

.mm-footer__subnav {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-left: -10px;
    margin-right: -10px;
}

.mm-footer__subnav-item {
    margin: 0 10px;
}

.mm-footer__subnav-item a {
    font-size: 14px;
    font-size: 0.875rem;
}

.mm-footer__subnav-item a:hover {
    text-decoration: underline;
}

.mm-footer__subnav-item a.blank::after {
    content: "";
    display: inline-block;
    width: 12px;
    height: 11px;
    margin-left: 8px;
    background: url(/-/media/medical/assets/img/common/icon-blank-w.svg) no-repeat center center/contain;
    flex-shrink: 0;
}

.mm-footer__copy {
    margin-top: 30px;
    font-size: 12px !important;
    font-size: 0.75rem !important;
}

@media screen and (min-width: 769px) {
    .mm-footer__subnav {
        flex-wrap: wrap;
    }

    .mm-footer-m-sns {
        border-top: 1px solid #525b5c;
        display: flex;
        margin-top: 20px;
        width: 100%;
    }

    .mm-footer-m-sns_title {
        font-size: 1.0rem;
        font-weight: 700;
        margin-right: 10px;
        margin-top: 10px;
    }

    .mm-footer-m-sns_list {
        margin-left: -10px;
    }

    .mm-footer-m-sns_list>li {
        margin-left: 10px;
        margin-top: 10px;
    }

    .mm-footer-m-sns_icon {
        max-height: 24px;
        width: 24px;
    }
}

@media screen and (min-width: 768px) {
    .mm-footerlist__item a {
        width: fit-content !important;
    }
}

@media screen and (max-width: 768px) {
    .mm-footer-m-sns {
        align-items: center;
        border-top: 1px solid #525b5c;
        display: flex;
        flex-direction: column;
        justify-content: center;
        margin-top: 20px;
        width: 100%;
    }

    .mm-footer-m-sns_title {
        font-size: 1.0rem;
        font-weight: 700;
        margin-top: 20px;
    }

    .mm-footer-m-sns_list {
        display: flex;
        flex-wrap: wrap;
        margin-left: -20px;
    }

    .mm-footer-m-sns_list>li {
        margin-left: 20px;
        margin-top: 10px;
    }

    .mm-footer-m-sns_list>li>a {
        align-items: center;
        display: flex;
        width: 100%;
    }

    .mm-footer-m-sns_icon {
        max-height: 40px;
        width: 40px;
    }
}

@media (max-width: 767px) {
    .mm-footer .container {
        padding: 0;
    }

    .mm-footer__main {
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    }

    .mm-footer__btn {
        margin-top: 16px;
    }

    .mm-footer__left,
    .mm-footer__center,
    .mm-footer__right {
        width: 100%;
        margin-left: 0;
    }

    .mm-footer__left {
        text-align: center;
    }

    .mm-footer__center {
        margin-top: 40px;
    }

    .mm-footer__center p {
        padding-left: 18px;
    }

    .mm-footer__right {
        margin-top: 10px;
        text-align: center;
    }

    .mm-footer__subnav {
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    }

    .mm-footer__subnav-item {
        width: 100%;
        margin-top: 10px;
    }

    .mm-footer__bottom {
        padding: 0 18px;
        border-top: none;
    }

    .mm-footer__btn.blank {
        margin-top: 30px;
    }
}

.breadcrumb ol {
    padding-left: 15px;
    padding-right: 15px;
}

@media (max-width: 767px) {
    .breadcrumb ol {
        padding-left: 0;
        padding-right: 0;
    }
}

.mm-footerlist__item a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    width: 100%;
}

.mm-footerlist__item a::before {
    content: "";
    position: relative;
    top: 1px;
    display: inline-block;
    width: 14px;
    height: 14px;
    margin-right: 8px;
    background: url(/-/media/medical/assets/img/common/icon-arrow-round-r-w.svg) no-repeat center center/contain;
    flex-shrink: 0;
}

.mm-footerlist__item a:hover {
    text-decoration: underline;
}

.mm-footerlist__item:not(:first-child) {
    margin-top: 10px;
}

@media (max-width: 767px) {
    .mm-footerlist__item a {
        padding: 16px 14px;
        border-bottom: 1px solid #aaa;
        width: 100%;
    }

    .mm-footerlist__item:first-child a {
        border-top: 1px solid #aaa;
    }

    .mm-footerlist__item:not(:first-child) {
        margin-top: 0;
    }
}

.mm-page-header {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    min-height: 150px;
    padding: 20px;
    border-bottom: 1px solid #007FA5;
}

.mm-page-header__main {
    margin: 0;
    font-size: 36px;
    font-size: 2.25rem;
    color: #007FA5;
}

.mm-page-header__sub {
    font-size: 18px;
    font-size: 1.125rem;
    font-weight: 500;
}

@media (max-width: 767px) {
    .mm-page-header {
        min-height: 100px;
        padding: 10px 20px;
    }

    .mm-page-header__main {
        font-size: 22px;
        font-size: 1.375rem;
    }

    .mm-page-header__sub {
        font-size: 14px;
        font-size: 0.875rem;
        margin-top: 4px;
    }
}

.mm-page-header-sub {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    min-height: 184px;
    padding: 20px 15px;
}

.mm-page-header-sub__main {
    font-size: 36px;
    font-size: 2.25rem;
    font-weight: bold;
    margin: 0;
    color: #007FA5;
}

.mm-page-header-sub__sub {
    font-size: 18px;
    font-size: 1.125rem;
    font-weight: 500;
    margin-top: 4px;
}

.mm-page-header-sub.reverse {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
    -ms-flex-direction: column-reverse;
    flex-direction: column-reverse;
}

@media (max-width: 767px) {
    .mm-page-header-sub {
        min-height: 100px;
        -webkit-box-align: start;
        -ms-flex-align: start;
        align-items: flex-start;
    }

    .mm-page-header-sub__main {
        font-size: 20px;
        font-size: 1.25rem;
    }

    .mm-page-header-sub__sub {
        font-size: 14px;
        font-size: 0.875rem;
    }
}

.mm-heading-bold {
    font-size: 26px;
    font-size: 1.625rem;
    margin: 0;
}

.mm-heading-bold+* {
    margin-top: 26px;
}

@media (max-width: 767px) {
    .mm-heading-bold {
        font-size: 20px;
        font-size: 1.25rem;
    }

    .mm-heading-bold+* {
        margin-top: 20px;
    }
}

.mm-heading-color {
    font-size: 20px;
    font-size: 1.25rem;
    font-weight: bold;
    margin-top: 20px;
    color: #007FA5;
}

.mm-heading-color+* {
    margin-top: 8px;
}

.mm-heading-color.medium {
    font-size: 18px;
    font-size: 1.125rem;
}

@media (max-width: 767px) {
    .mm-heading-color {
        font-size: 16px;
        font-size: 1.0rem;
        margin-top: 16px;
    }

    .mm-heading-color+* {
        margin-top: 2px;
    }
}

.mm-heading-border {
    position: relative;
    padding-bottom: 15px;
    font-size: 28px;
    font-size: 1.75rem;
    font-weight: 500;
    margin: 80px auto 0;
    border-bottom: 3px solid #CCEFF8;
}

.mm-heading-border+* {
    margin-top: 40px;
}

.mm-heading-border::before {
    content: "";
    position: absolute;
    bottom: -3px;
    left: 0;
    display: block;
    width: 100px;
    height: 3px;
    background-color: #007FA5;
}

.mm-heading-border.light {
    border-color: #E4E4E4;
}

.mm-heading-border.light::before {
    background-color: #43D1F5;
}

@media (max-width: 767px) {
    .mm-heading-border {
        margin: 40px auto 0;
        padding-bottom: 10px;
        font-size: 20px;
        font-size: 1.25rem;
    }

    .mm-heading-border+* {
        margin-top: 20px;
    }
}

.mm-heading-bg {
    margin-top: 60px;
    padding: 8px 20px;
    font-size: 22px;
    font-size: 1.375rem;
    font-weight: 500;
    background-color: #F2F2F2;
    border-radius: 6px;
}

.mm-heading-bg+* {
    margin-top: 30px;
}

@media (max-width: 767px) {
    .mm-heading-bg {
        margin-top: 30px;
        font-size: 16px;
        font-size: 1.0rem;
    }

    .mm-heading-bg+* {
        margin-top: 14px;
    }
}

.mm-heading-marker {
    display: inline-block;
    font-size: 18px;
    font-size: 1.125rem;
    font-weight: normal;
    text-align: center;
    line-height: 1.2;
    background: -webkit-gradient(linear, left top, left bottom, color-stop(50%, transparent), color-stop(50%, #CCEFF8));
    background: linear-gradient(transparent 50%, #CCEFF8 50%);
}

.mm-heading-sidebar {
    padding: 7px 15px 9px;
    background-image: linear-gradient(#CCEFF8 50%, #F2F2F2 50%);
    background-repeat: no-repeat;
    background-size: 7px 100%;
    font-weight: normal;
    font-size: 18px;
    font-size: 1.125rem;
}

@media (max-width: 767px) {
    .mm-heading-marker {
        font-size: 16px;
        font-size: 1.0rem;
    }

    .mm-heading-sidebar {
        font-size: 16px;
        font-size: 1.0rem;
    }
}

.mm-icon-blank {
    display: inline-block;
    margin-right: 4px;
}

.mm-link {
    color: #007FA5 !important;
    display: flex;
    align-items: center;
    width: fit-content;
    overflow-wrap: anywhere;
    word-break: break-word;
}

.mm-link.type-external {
    position: relative;
    padding-right: 4px;
}

.mm-link.type-external::after {
    content: "";
    position: relative;
    display: inline-block;
    width: 14px;
    height: 13px;
    margin-left: 6px;
    background: url(/-/media/medical/assets/img/common/icon-blank-blue.svg) no-repeat center center/contain;
    flex-shrink: 0;
}

.mm-link span.type-external {
    position: relative;
    padding-right: 4px;
}

.mm-link span.type-external::after {
    content: "";
    position: relative;
    display: inline-block;
    width: 14px;
    height: 13px;
    margin-left: 6px;
    background: url(/-/media/medical/assets/img/common/icon-blank-blue.svg) no-repeat center center/contain;
    flex-shrink: 0;
}

.mm-link.type-dl {
    position: relative;
    padding-right: 4px;
    display: inline-block;
}

.mm-link.type-dl::after {
    content: "";
    position: relative;
    display: inline-block;
    top: 0.2rem;
    width: 18px;
    height: 18px;
    margin-left: 6px;
    background: url(/-/media/medical/assets/img/common/icon-download-on.svg) no-repeat center center/contain;
    flex-shrink: 0;
}

.mm-link.underline {
    text-decoration: underline;
    display: inline;
}

.mm-link.underline:hover {
    text-decoration: none;
}

.mm-link.arrow {
    position: relative;
    display: flex;
    align-items: flex-start;
}

.mm-link.arrow::before {
    content: "";
    position: relative;
    top: 0.25rem;
    display: inline-block;
    width: 18px;
    height: 18px;
    margin-right: 6px;
    background: url(/-/media/medical/assets/img/common/icon-arrow-border-r-w.svg) no-repeat center center/contain;
    flex-shrink: 0;
}

.mm-link.back {
    position: relative;
    display: flex;
    align-items: flex-start;
}

.mm-link.back::before {
    content: "";
    position: relative;
    top: 0.25rem;
    display: inline-block;
    width: 18px;
    height: 18px;
    margin-right: 6px;
    background: url(/-/media/medical/assets/img/common/icon-back-on-blue.svg) no-repeat center center/contain;
    flex-shrink: 0;
}

.mm-link.type-pdf {
    position: relative;
    padding-right: 4px;
    display: flex;
    align-items: flex-start;
}

.mm-link.type-pdf::before {
    top: 0.25rem;
    flex-shrink: 0;
}

.mm-link.type-pdf span.icon-pdf::after {
    content: "";
    position: relative;
    display: inline-block;
    top: 0.2rem;
    width: 18px;
    height: 20px;
    margin-left: 5px;
    background: url(/-/media/medical/assets/img/common/icon-pdf-on.svg) no-repeat center center/contain;
    flex-shrink: 0;
}

.mm-link.type-pdf._inline {
    display:inline;
}

.mm-link.type-pdf._inline:hover {
    text-decoration:underline;
}

@media screen and (max-width: 767px) {
    .mm-link.arrow::before {
        top: 0.1rem;
    }

    .mm-link.back::before {
        top: 0.1rem;
    }

    .mm-link.type-pdf::before {
        top: 0.3rem;
    }
}

.mm-link.back:hover {
    text-decoration: underline;
}

.mm-link.arrow:hover {
    text-decoration: underline;
}

.mm-link.type-dl:hover {
    text-decoration: underline;
}

a.mm-btn {
    position: relative;
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    min-width: 360px;
    height: auto;
    padding: 13px 45px;
    color: #fff;
    background-color: #007FA5;
    border-radius: 100px;
    border: 2px solid #007FA5;
    -webkit-transition: all .3s;
    transition: all .3s;
}

a.mm-btn::before,
a.mm-btn::after {
    content: "";
    position: absolute;
    right: 20px;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    display: block;
    width: 18px;
    height: 18px;
    -webkit-transition: all .3s;
    transition: all .3s;
}

a.mm-btn::before {
    background: url(/-/media/medical/assets/img/common/icon-btn-on.svg);
    opacity: 0;
}

a.mm-btn::after {
    background: url(/-/media/medical/assets/img/common/icon-btn-off.svg);
    opacity: 1;
}

a.mm-btn:hover {
    color: #007FA5;
    background-color: #fff;
}

a.mm-btn:hover::before {
    opacity: 1;
}

a.mm-btn:hover::after {
    opacity: 0;
}

a.mm-btn.auto {
    width: auto;
    min-width: inherit;
    max-width: inherit;
    padding: 13px 45px;
}

a.mm-btn.full {
    width: 100%;
    min-width: inherit;
    max-width: inherit;
    padding: 13px 45px;
}

a.mm-btn.small {
    min-width: 300px;
}

a.mm-btn.wide {
    min-width: 420px;
}

a.mm-btn.blue {
    border: 1px solid #fff;
}

a.mm-btn.blue:hover {
    border: 1px solid #007FA5;
}

a.mm-btn.gray {
    background-color: #525B5C;
    border-color: #525B5C;
}

a.mm-btn.plane::before,
a.mm-btn.plane::after {
    display: none;
}

a.mm-btn.plane:hover {
    color: #525B5C;
    background-color: #fff;
}

a.mm-btn.external::before,
a.mm-btn.external::after,
a.mm-btn.mail::before,
a.mm-btn.mail::after,
a.mm-btn.download::before,
a.mm-btn.download::after,
a.mm-btn.pdf::before,
a.mm-btn.pdf::after,
a.mm-btn.back::before,
a.mm-btn.back::after {
    display: none;
}

a.mm-btn.external .mm-btn__inner,
a.mm-btn.mail .mm-btn__inner,
a.mm-btn.download .mm-btn__inner,
a.mm-btn.pdf .mm-btn__inner,
a.mm-btn.back .mm-btn__inner {
    position: relative;
    padding-left: 24px;
}

a.mm-btn.external .mm-btn__inner::before,
a.mm-btn.external .mm-btn__inner::after,
a.mm-btn.mail .mm-btn__inner::before,
a.mm-btn.mail .mm-btn__inner::after,
a.mm-btn.download .mm-btn__inner::before,
a.mm-btn.download .mm-btn__inner::after,
a.mm-btn.pdf .mm-btn__inner::before,
a.mm-btn.pdf .mm-btn__inner::after,
a.mm-btn.back .mm-btn__inner::before,
a.mm-btn.back .mm-btn__inner::after {
    content: "";
    position: absolute;
    right: inherit;
    top: 2px;
    left: 0;
    bottom: 0;
    margin-top: auto;
    margin-bottom: auto;
    display: inline-block;
    -webkit-transition: all .3s;
    transition: all .3s;
}

a.mm-btn.external .mm-btn__inner::before,
a.mm-btn.mail .mm-btn__inner::before,
a.mm-btn.download .mm-btn__inner::before,
a.mm-btn.pdf .mm-btn__inner::before,
a.mm-btn.back .mm-btn__inner::before {
    opacity: 0;
}

a.mm-btn.external .mm-btn__inner::after,
a.mm-btn.mail .mm-btn__inner::after,
a.mm-btn.download .mm-btn__inner::after,
a.mm-btn.pdf .mm-btn__inner::after,
a.mm-btn.back .mm-btn__inner::after {
    opacity: 1;
}

a.mm-btn.external:hover .mm-btn__inner::before,
a.mm-btn.mail:hover .mm-btn__inner::before,
a.mm-btn.download:hover .mm-btn__inner::before,
a.mm-btn.pdf:hover .mm-btn__inner::before,
a.mm-btn.back:hover .mm-btn__inner::before {
    opacity: 1;
}

a.mm-btn.external:hover .mm-btn__inner::after,
a.mm-btn.mail:hover .mm-btn__inner::after,
a.mm-btn.download:hover .mm-btn__inner::after,
a.mm-btn.pdf:hover .mm-btn__inner::after,
a.mm-btn.back:hover .mm-btn__inner::after {
    opacity: 0;
}

a.mm-btn.external .mm-btn__inner {
    padding-left: 0;
    padding-right: 24px;
}

a.mm-btn.external .mm-btn__inner::before,
a.mm-btn.external .mm-btn__inner::after {
    left: inherit;
    right: 0;
    width: 15px;
    height: 13px;
}

a.mm-btn.external .mm-btn__inner::before {
    background: url(/-/media/medical/assets/img/common/icon-blank-blue.svg) no-repeat center center/contain;
}

a.mm-btn.external .mm-btn__inner::after {
    background: url(/-/media/medical/assets/img/common/icon-blank-w.svg) no-repeat center center/contain;
}

a.mm-btn.mail .mm-btn__inner::before,
a.mm-btn.mail .mm-btn__inner::after {
    width: 20px;
    height: 17px;
}

a.mm-btn.mail .mm-btn__inner::before {
    background: url(/-/media/medical/assets/img/common/icon-mail-on.svg) no-repeat center center/contain;
}

a.mm-btn.mail .mm-btn__inner::after {
    background: url(/-/media/medical/assets/img/common/icon-mail-off.svg) no-repeat center center/contain;
}

a.mm-btn.download .mm-btn__inner {
    padding-left: 0;
    padding-right: 24px;
}

a.mm-btn.download .mm-btn__inner::before,
a.mm-btn.download .mm-btn__inner::after {
    left: inherit;
    right: 0;
    width: 18px;
    height: 18px;
}

a.mm-btn.download .mm-btn__inner::before {
    background: url(/-/media/medical/assets/img/common/icon-download-on.svg) no-repeat center center/contain;
}

a.mm-btn.download .mm-btn__inner::after {
    background: url(/-/media/medical/assets/img/common/icon-download-off.svg) no-repeat center center/contain;
}

a.mm-btn.pdf .mm-btn__inner {
    padding-left: 0;
    padding-right: 24px;
}

a.mm-btn.pdf .mm-btn__inner::before,
a.mm-btn.pdf .mm-btn__inner::after {
    left: inherit;
    right: 0;
    width: 18px;
    height: 20px;
}

a.mm-btn.pdf .mm-btn__inner::before {
    background: url(/-/media/medical/assets/img/common/icon-pdf-on.svg) no-repeat center center/contain;
}

a.mm-btn.pdf .mm-btn__inner::after {
    background: url(/-/media/medical/assets/img/common/icon-pdf-off.svg) no-repeat center center/contain;
}


a.mm-btn.back {
    background: #fff;
    border-color: #525B5C;
    color: #525B5C;
}

a.mm-btn.back .mm-btn__inner::before,
a.mm-btn.back .mm-btn__inner::after {
    top: 2px;
    width: 15px;
    height: 12px;
}

a.mm-btn.back .mm-btn__inner::before {
    background: url(/-/media/medical/assets/img/common/icon-back-on-blue.svg) no-repeat center center/contain;
}

a.mm-btn.back .mm-btn__inner::after {
    background: url(/-/media/medical/assets/img/common/icon-back-on.svg) no-repeat center center/contain;
}

a.mm-btn.back:hover {
    color: #007FA5;
    border-color: #007FA5;
}

@media (max-width: 767px) {
    a.mm-btn {
        width: 100%;
        max-width: 320px;
        min-width: inherit;
    }

    a.mm-btn::before,
    a.mm-btn::after {
        right: 10px;
    }

    a.mm-btn.wide {
        width: 100%;
        max-width: 320px;
        min-width: inherit;
    }
}

.mm-btn-wrap {
    margin: 40px auto 0;
    text-align: center;
}

.mm-btn-caption {
    display: block;
    margin-bottom: 15px;
}

.grid {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin: -40px -1.5% 0;
}

.grid__item {
    width: 47%;
    margin-left: 1.5%;
    margin-right: 1.5%;
    text-align: center;
}

.col2 .grid__item {
    margin-top: 40px;
}

.col3 .grid__item {
    width: 30%;
    margin: 40px 1.5% 0;
}

.col4 .grid__item {
    width: 22%;
    margin: 40px 1.5% 0;
}

.grid__item img {
    max-width: 100%;
    -o-object-fit: contain;
    object-fit: contain;
}

@media (max-width: 767px) {
    .grid__item {
        width: 100%;
    }

    .col2 .grid__item {
        margin-top: 30px;
    }

    .col3 .grid__item {
        width: 97%;
        margin-top: 30px;
    }

    .col4 .grid__item {
        width: 47%;
        margin-top: 30px;
    }

    .grid.reverse-sp {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap-reverse;
        flex-wrap: wrap-reverse;
    }
}

.mm-media__img img {
    max-width: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    border-radius: 12px;
}

.mm-media__txt {
    margin-top: 8px;
    font-weight: 500;
    line-height: 1.6;
    text-align-last: left;
}

/*List Module AddStart*/
.mm-list li+li {
    margin-top: 15px;
}

.mm-list-number {
    margin-left: 1.6rem;
    padding-left: 0;
}

.mm-list-number li {
    list-style: decimal;
}

.mm-list-number li+li {
    margin-top: 15px;
}

.mm-list-bullet {
    margin-left: 1.6rem;
}

.mm-list-bullet li {
    list-style: disc;
}

.mm-list-bullet li+li {
    margin-top: 15px;
}

.mm-list-check li {
    display: flex;
    align-items: flex-start;
}

.mm-list-check li:before {
    content: url(/-/media/medical/assets/img/common/icon_check.svg);
    display: block;
    margin-top: 2.5px;
    margin-right: 5px;
    width: 18px;
    height: 18px;
    flex-shrink: 0;
}

.mm-list-check li+li {
    margin-top: 15px;
}

@media screen and (max-width: 767px) {
    .mm-list-check li:before {
        margin-top: 4px;
    }
}


.mm-list-number li .mm-list-bullet li {
    list-style: disc;
}

.mm-list-bullet li .mm-list-number li {
    list-style: decimal;
}

/*List Module AddEnd*/

/*Table Module AddStart*/
.mm-table {
    border-collapse: collapse;
    width: 100%;
}

.mm-table.w90per {
    width: 90%;
}

.mm-table thead tr th {
    color: #fff;
    background: #525B5C !important;
    border: 1px solid #BABDBE;
    padding: 20px;
}

.mm-table.vertical tbody tr th {
    background: #EEEFEF;
    border: 1px solid #BABDBE;
    padding: 20px;
    text-align: left;
}

.mm-table tbody tr td {
    border: 1px solid #BABDBE;
    padding: 20px;
}

.mm-table .mm-list-bullet li {
    font-size: 14px;
    font-size: 0.875rem;
    line-height: 1.4;
}

.mm-table .mm-list-bullet li:before {
    display: none !important;
}

.mm-table .mm-link.arrow {
    font-size: 14px;
    font-size: 0.875rem;
}

.mm-table .mm-link.arrow::before {
    width: 15px;
    height: 15px;
    margin-right: 4px;
}

.mm-table col.w10 {
    width: 10%;
}

.mm-table col.w15 {
    width: 15%;
}

.mm-table col.w20 {
    width: 20%;
}

.mm-table col.w25 {
    width: 25%;
}

.mm-table col.w30 {
    width: 30%;
}

.mm-table col.w35 {
    width: 35%;
}

.mm-table col.w40 {
    width: 40%;
}

.mm-table col.w45 {
    width: 45%;
}

.mm-table col.w50 {
    width: 50%;
}

@media screen and (min-width: 769px) {
    .mm-table col.pc-w10 {
        width: 10%;
    }

    .mm-table col.pc-w15 {
        width: 15%;
    }

    .mm-table col.pc-w20 {
        width: 20%;
    }

    .mm-table col.pc-w25 {
        width: 25%;
    }

    .mm-table col.pc-w30 {
        width: 30%;
    }

    .mm-table col.pc-w35 {
        width: 35%;
    }

    .mm-table col.pc-w40 {
        width: 40%;
    }

    .mm-table col.pc-w45 {
        width: 45%;
    }

    .mm-table col.pc-w50 {
        width: 50%;
    }
}

@media screen and (max-width: 768px) {
    .mm-table col.sp-w10 {
        width: 10%;
    }

    .mm-table col.sp-w15 {
        width: 15%;
    }

    .mm-table col.sp-w20 {
        width: 20%;
    }

    .mm-table col.sp-w25 {
        width: 25%;
    }

    .mm-table col.sp-w30 {
        width: 30%;
    }

    .mm-table col.sp-w35 {
        width: 35%;
    }

    .mm-table col.sp-w40 {
        width: 40%;
    }

    .mm-table col.sp-w45 {
        width: 45%;
    }

    .mm-table col.sp-w50 {
        width: 50%;
    }

    .mm-table.w90per {
        width: 100%;
    }

    .mm-news-list__body {
        width: 100%;
    }

    .mm-table.vertical tbody tr {
        display: flex;
        flex-direction: column;
    }

    .mm-table.vertical tbody tr th,
    .mm-table.vertical tbody tr td {
        width: 100%;
    }

    .mm-table.vertical tbody tr td {
        border-top: 0;
        border-bottom: 0;
    }

    .mm-table.vertical tbody tr td.last {
        border-bottom: 1px solid #BABDBE;
    }
}

/*Table Module AddEnd*/


/*Scroll Module AddStart */

.mm-scroll {
    width: 100%;
    position: relative;
}

@media screen and (min-width: 769px) {

    .mm-scroll-announcement {
        display: none;
    }

    .mm-scroll_pictograph {
        display: none;
    }

}

@media screen and (max-width: 768px) {

    .mm-scroll .mm-scroll_content {
        overflow-x: auto;
    }

    .mm-scroll .mm-scroll_content .mm-scroll_cover table.mm-table {
        max-width: 100%;
        min-width: 1400px;
    }

    .mm-scroll .mm-scroll_content .mm-scroll_cover .mm-image {
        width: auto;
    }

    .mm-scroll .mm-scroll_content .mm-scroll_cover .mm-image img {
        max-width: 100%;
        min-width: 1400px;
    }

    .mm-scroll-announcement {
        display: flex;
        align-items: center;
        position: relative;
        font-size: 13px !important;
        font-size: 0.8125rem !important;
    }

    .mm-scroll-announcement:before {
        content: "";
        position: relative;
        top: 0.05em;
        display: inline-block;
        width: 16px;
        height: 16px;
        margin-right: 4px;
        background: url(/-/media/medical/assets/img/common/icon-scroll-info.svg) no-repeat center center/contain;
        flex-shrink: 0;
    }

    .mm-scroll .mm-scroll_pictograph {
        display: block;
        left: 50%;
        position: absolute;
        top: 90px;
        transform: translateX(-50%);
        z-index: 10;
        opacity: 1.0;
        transition: 1.0s;
    }

    .mm-scroll .mm-scroll_pictograph .mm-scrollhint {
        max-width: 200px;
    }

    .mm-scroll.off .mm-scroll_pictograph {
        opacity: 0;
        transition: 1.0s;
        z-index: 0;
    }

}

@media screen and (max-width: 767px) {

    .mm-scroll .mm-scroll_content .mm-scroll_cover table.mm-table {
        max-width: 100%;
        min-width: 900px;
    }

    .mm-scroll .mm-scroll_content .mm-scroll_cover .mm-image {
        width: auto;
    }

    .mm-scroll .mm-scroll_content .mm-scroll_cover .mm-image img {
        max-width: 100%;
        min-width: 900px;
    }


}

/*Scroll Module AddEnd */

.mm-list__item {
    position: relative;
    padding-left: 24px;
    font-size: 18px !important;
    font-size: 1.125rem !important;
    line-height: 1.6;
}

.mm-list__item:not(:first-child) {
    margin-top: 10px;
}

.mm-list__item::before {
    content: "";
    position: absolute;
    top: 0.45em;
    left: 0;
    display: inline-block;
    width: 14px;
    height: 14px;
    border-radius: 50%;
    background-color: #007FA5;
}

@media (max-width: 767px) {
    .mm-list__item {
        font-size: 15px !important;
        font-size: 0.9375rem !important;
    }

    .mm-list__item::before {
        top: 0.4em;
    }
}

.mm-prod-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-left: -15px;
    margin-right: -15px;
}

.mm-prod-list__item {
    width: calc((100% - 90px) / 3);
    margin: 0 15px;
    background-color: #fff;
    -webkit-box-shadow: 10px 10px 15px rgba(0, 134, 168, 0.1);
    box-shadow: 10px 10px 15px rgba(0, 134, 168, 0.1);
}

.mm-prod-list__item:nth-child(n+4) {
    margin-top: 30px;
}

.mm-prod-list__item a {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    width: 100%;
    height: 100%;
}

.mm-prod-list__item a:hover .mm-prod-list__ttl {
    color: #fff;
}

.mm-prod-list__item a:hover .mm-prod-list__body {
    background-color: #007FA5;
    color: #fff;
}

.mm-prod-list__item a:hover .mm-prod-list__body::after {
    opacity: 0;
}

.mm-prod-list__image {
    position: relative;
    padding: 20px 20px 10px;
    border-left: thin solid #007FA5;
    border-right: thin solid #007FA5;
    border-top: thin solid #007FA5;
}

.mm-prod-list__image img {
    width: 100%;
    -o-object-fit: contain;
    object-fit: contain;
}

.mm-prod-list__image .no-medical {
    position: absolute;
    top: 20px;
    right: 20px;
    padding: 7px 5px;
    font-size: 12px;
    font-size: 0.75rem;
    color: #fff;
    line-height: 1.2;
    text-align: center;
    background-color: #525B5C;
}

.mm-prod-list__body {
    position: relative;
    left: 0;
    right: 0;
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
    width: 100%;
    padding: 20px 20px 30px;
    border-left: 1px solid #007FA5;
    border-right: 1px solid #007FA5;
    border-bottom: 1px solid #007FA5;
    -webkit-transition: all .3s;
    transition: all .3s;
}

.mm-prod-list__body::before,
.mm-prod-list__body::after {
    content: "";
    position: absolute;
    right: 15px;
    bottom: 15px;
    display: block;
    width: 21px;
    height: 12px;
    -webkit-transition: all .3s;
    transition: all .3s;
}

.mm-prod-list__body::before {
    background: url(/-/media/medical/assets/img/common/icon-arrow-r-w.svg) no-repeat center center/contain;
    flex-shrink: 0;
}

.mm-prod-list__body::after {
    background: url(/-/media/medical/assets/img/common/icon-arrow-r.svg) no-repeat center center/contain;
    flex-shrink: 0;
}

.mm-prod-list__ttl {
    font-size: 20px !important;
    font-size: 1.25rem !important;
    color: #007FA5;
    font-weight: 500;
    -webkit-transition: all .3s;
    transition: all .3s;
}

.mm-prod-list__txt {
    margin-top: 10px;
}

@media (max-width: 767px) {
    .mm-prod-list {
        margin-left: -5px;
        margin-right: -5px;
    }

    .mm-prod-list__item {
        width: calc(50% - 10px);
        margin-left: 5px;
        margin-right: 5px;
    }

    .mm-prod-list__item:nth-child(n+3) {
        margin-top: 20px;
    }

    .mm-prod-list__image {
        padding: 10px;
    }

    .mm-prod-list__image .no-medical {
        padding: 4px;
        top: 0;
        right: 0;
        font-size: 11px;
        font-size: 0.6875rem;
    }

    .mm-prod-list__image .no-medical br {
        display: none;
    }

    .mm-prod-list__body {
        padding: 10px 10px 25px;
    }

    .mm-prod-list__body::before,
    .mm-prod-list__body::after {
        right: 10px;
        bottom: 10px;
        width: calc(21px * .8);
        height: calc(12px * .8);
    }

    .mm-prod-list__ttl {
        font-size: 15px !important;
        font-size: 0.9375rem !important;
        line-height: 1.5 !important;
    }

    .mm-prod-list__txt {
        font-size: 13px !important;
        font-size: 0.8125rem !important;
    }
}

.mm-case-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-left: -10px;
    margin-right: -10px;
}

.mm-case-list__item {
    width: calc(20% - 20px);
    margin: 0 10px;
    text-align: center;
}

.mm-case-list__item img {
    max-width: 100%;
    -o-object-fit: contain;
    object-fit: contain;
}

@media (max-width: 767px) {
    .mm-case-list {
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        margin-left: -18px;
        margin-right: -18px;
    }

    .mm-case-list__item {
        width: calc(50% - 36px);
        margin: 0 18px;
    }

    .mm-case-list__item:nth-child(n+3) {
        margin-top: 10px;
    }
}

/*mm-image Start*/
.mm-image {
    display: block;
    width: fit-content;
    position: relative;
}

.mm-image.center {
    margin: 0 auto;
}

.mm-image.right {
    margin-left: auto;
}

.mm-image.border {
    border: 1px solid #eaeaea;
}

.img-caption {
    font-size: 14px !important;
    font-size: 0.875rem !important;
    line-height: 1.6;
}

.mm-image .no-medical {
    position: absolute;
    top: 20px;
    right: 20px;
    padding: 7px 5px;
    font-size: 12px;
    font-size: 0.75rem;
    color: #fff;
    line-height: 1.2;
    text-align: center;
    background-color: #525B5C;
}

@media (max-width: 768px) {
    .mm-image .no-medical {
        padding: 4px;
        top: 0;
        right: 0;
        font-size: 11px;
        font-size: 0.6875rem;
    }

}

/*mm-image end*/

/*mm-image-list Start*/
.mm-image-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-left: -10px;
    margin-right: -10px;
}

.mm-image-list__item {
    width: calc(20% - 20px);
    margin: 0 10px;
    text-align: center;
}

.mm-image-list__item img {
    max-width: 100%;
    -o-object-fit: contain;
    object-fit: contain;
}

.mm-image-list__item .img-caption {
    display: block;
    font-size: 14px;
    font-size: 0.875rem;
    margin-top: 5px;
    line-height: 1.4;
}

@media (max-width: 767px) {
    .mm-image-list {
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        margin-left: -18px;
        margin-right: -18px;
    }

    .mm-image-list__item {
        width: calc(50% - 36px);
        margin: 0 18px;
    }

    .mm-image-list__item:nth-child(n+3) {
        margin-top: 10px;
    }
}

/*mm-image-list End*/

.mm-news-list__item a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    padding: 18px 10px 14px;
    border-bottom: 1px solid #ccc;
}

.mm-news-list__item a:hover .mm-news-list__ttl {
    color: #007FA5;
    text-decoration: underline;
}

.mm-news-list__item:first-child a {
    border-top: 1px solid #ccc;
}

.mm-news-list__head {
    width: 126px;
    -ms-flex-negative: 0;
    flex-shrink: 0;
}

.mm-news-list__tag {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin: -2px -5px;
}

.mm-news-list__tag+.mm-news-list__ttl {
    margin-top: 8px;
}

.mm-news-list .tag {
    padding: 4px 8px;
    color: #fff;
    font-size: 12px;
    font-size: 0.75rem;
    font-weight: 500;
    background-color: #525B5C;
    margin: 2px 5px;
    line-height: 1.2;
}

.mm-news-list .tag.gray {
    background-color: #525B5C;
}

.mm-news-list .tag.green {
    background-color: #578033;
}

.mm-news-list__ttl {
    font-weight: 500;
    -webkit-transition: all .3s;
    transition: all .3s;
}

@media (max-width: 767px) {
    .mm-news-list__item a {
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        padding: 10px 8px;
    }

    .mm-news-list__item time {
        font-size: 12px;
        font-size: 0.75rem;
    }

    .mm-news-list__head,
    .mm-news-list__body {
        width: 100%;
    }

    .mm-news-list__body {
        margin-top: 5px;
    }

    .mm-news-list__tag+.mm-news-list__ttl {
        margin-top: 4px;
    }
}

/*StepList Start*/

.mm-step-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-left: -35px;
    margin-right: -35px;
}

.mm-step-list.small {
    margin-left: -20px;
    margin-right: -20px;
}

.mm-step-list.vertical {
    flex-direction: column;
}

.mm-step-list__item {
    position: relative;
    width: calc((100% - 210px) / 3);
    margin: 40px 35px 0;
    border: 1px solid #007FA5;
}

.mm-step-list__item .item-inner {
    margin: 0;
    padding: 20px;
}

.mm-step-list__item .item-inner dt {
    color: #007FA5;
    margin: 0 0 15px;
    padding: 0;
    font-size: 18px;
    font-size: 1.125rem;
    line-height: 1.5;
}

.mm-step-list__item .item-inner dd {
    margin: 0;
    padding: 0;
    font-size: 14px;
    font-size: 0.875rem;
    line-height: 1.6;
}


.small .mm-step-list__item {
    width: calc((100% - 160px) / 4);
    margin-left: 20px;
    margin-right: 20px;
}

.vertical .mm-step-list__item {
    width: calc(100% - 70px);
}

.mm-step-list__item:not(:first-child)::before,
.mm-step-list__item:not(:first-child)::after {
    content: "";
    position: absolute;
    top: 50%;
    left: -35px;
    width: 5px;
    height: 38px;
    background: #007FA5;
}

.triangle .mm-step-list__item:not(:first-child)::before {
    content: '';
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 12px 0 12px 16px;
    border-color: transparent transparent transparent #007FA5;
    position: absolute;
    top: 40%;
    left: -42px;
    margin-top: 0;
    transform: none;
    background: #fff;
}

.vertical.triangle .mm-step-list__item:not(:first-child)::before {
    top: -28px;
    left: 49%;
    border-width: 14px 12px 0 12px;
    border-color: #007FA5 transparent transparent transparent;
    margin-top: 0;
    transform: none;
    background: #fff;
}

.triangle .mm-step-list__item:not(:first-child)::after {
    display: none;
}

.small .mm-step-list__item:not(:first-child)::before,
.small .mm-step-list__item:not(:first-child)::after {
    left: -20px;
    width: 4px;
    height: 28px;
}

.small.vertical.triangle .mm-step-list__item:not(:first-child)::before {
    top: -28px;
    left: 50%;
    border-width: 14px 12px 0 12px;
    border-color: #007FA5 transparent transparent transparent;
    margin-top: 0;
    transform: none;
    background: #fff;
}

.small.triangle .mm-step-list__item:not(:first-child)::before {
    content: '';
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 12px 0 12px 14px;
    border-color: transparent transparent transparent #007FA5;
    position: absolute;
    top: 40%;
    left: -25px;
    margin-top: 0;
    transform: none;
    background: #fff;
}

.small.triangle .mm-step-list__item:not(:first-child)::after {
    display: none;
}

.mm-step-list__item:not(:first-child)::before {
    -webkit-transform: translate(-50%, -50%) rotate(45deg);
    transform: translate(-50%, -50%) rotate(45deg);
}

.mm-step-list__item:not(:first-child)::after {
    -webkit-transform: translate(-50%, -50%) rotate(-45deg);
    transform: translate(-50%, -50%) rotate(-45deg);
}

@media (max-width: 767px) {
    .mm-step-list {
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        margin: 0;
    }

    .vertical .mm-step-list__item {
        width: 100%;
    }

    .mm-step-list.small {
        margin-left: 0;
        margin-right: 0;
    }

    .mm-step-list__item {
        width: 100%;
        margin: 40px 0 0;
    }

    .small .mm-step-list__item {
        width: 100%;
        margin: 40px 0 0;
    }

    .mm-step-list__item:not(:first-child)::before,
    .mm-step-list__item:not(:first-child)::after {
        top: -20px;
        left: 50%;
        width: 4px;
        height: 26px;
    }

    .small .mm-step-list__item:not(:first-child)::before,
    .small .mm-step-list__item:not(:first-child)::after {
        top: -20px;
        left: 50%;
        height: 26px;
    }

    .mm-step-list__item:not(:first-child)::before {
        -webkit-transform: translateY(-50%) rotate(45deg);
        transform: translateY(-50%) rotate(45deg);
    }

    .small .mm-step-list__item:not(:first-child)::before {
        -webkit-transform: translateY(-50%) rotate(45deg);
        transform: translateY(-50%) rotate(45deg);
    }

    .mm-step-list__item:not(:first-child)::after {
        -webkit-transform: translateY(-50%) rotate(-45deg);
        transform: translateY(-50%) rotate(-45deg);
    }

    .small .mm-step-list__item:not(:first-child)::after {
        -webkit-transform: translateY(-50%) rotate(-45deg);
        transform: translateY(-50%) rotate(-45deg);
    }

    .triangle .mm-step-list__item:not(:first-child)::before {
        top: -28px;
        left: 47.5% !important;
        border-width: 14px 12px 0 12px;
        border-color: #007FA5 transparent transparent transparent;
        margin-top: 0;
        transform: none;
        background: #fff;
    }

    .small.triangle .mm-step-list__item:not(:first-child)::before {
        top: -28px;
        left: 47.5% !important;
        border-width: 14px 12px 0 12px;
        border-color: #007FA5 transparent transparent transparent;
        margin-top: 0;
        transform: none;
        background: #fff;
    }

}

/*StepList End*/

.mm-box-icon {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    height: 100%;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

.mm-box-icon__ttl {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    width: 100%;
    margin: 0;
    padding: 24px 10px 16px;
    color: #fff;
    background-color: #007FA5;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

.small .mm-box-icon__ttl {
    padding: 16px 10px;
    border-bottom: 1px solid #007FA5;
}

.mm-box-icon__mainttl {
    color: #fff;
    font-size: 28px;
    font-size: 1.75rem;
    font-weight: 500;
}

.small .mm-box-icon__mainttl {
    font-size: 18px;
    font-size: 1.125rem;
}

.mm-box-icon__subttl {
    margin-top: 6px;
    font-weight: 400;
}

.mm-box-icon__body {
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
    width: 100%;
    border-left: 2px solid #007FA5;
    border-right: 2px solid #007FA5;
    border-bottom: 2px solid #007FA5;
}

.mm-box-icon__icon {
    height: 76px;
    margin: 20px 0;
    text-align: center;
}

.mm-box-icon__icon img {
    height: 100%;
    -o-object-fit: contain;
    object-fit: contain;
}

.mm-box-icon__txt {
    font-size: 15px;
    font-size: 1.5rem;
    margin-top: 0 !important;
    padding: 0 24px 30px;
}

.small .mm-box-icon__txt {
    padding-bottom: 20px;
}

@media (max-width: 767px) {
    .mm-box-icon__ttl {
        padding: 20px 10px;
    }

    .mm-box-icon__mainttl {
        font-size: 22px;
        font-size: 1.375rem;
    }

    .small .mm-box-icon__mainttl {
        font-size: 16px;
        font-size: 1.0rem;
    }

    .mm-box-icon__subttl {
        font-size: 14px;
        font-size: 0.875rem;
        margin-top: 2px;
    }
}

.mm-box-flat {
    padding: 30px;
    border: 1px solid #007FA5;
}

@media (max-width: 767px) {
    .mm-box-flat {
        padding: 20px;
    }
}

.mm-box.bold {
    padding: 48px;
    border: 12px solid #F5F5F5;
}

.mm-box.radius {
    border-radius: 12px;
}

.mm-box-flat.radius {
    border-radius: 12px;
}

@media (max-width: 767px) {
    .mm-box.bold {
        padding: 20px;
        border-width: 8px;
    }
}

.mm-page-header+.mm-local-nav+*,
.mm-page-header-sub+.mm-local-nav+* {
    margin-top: 40px;
}

@media (max-width: 767px) {

    .mm-page-header+.mm-local-nav+*,
    .mm-page-header-sub+.mm-local-nav+* {
        margin-top: 30px;
    }
}

.mm-local-nav {
    background-color: #007FA5;
    padding: 22px 0;
}

.mm-local-nav__list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

.mm-local-nav__list.col2,
.mm-local-nav__list.col3 {
    justify-content: space-around;
}

.mm-local-nav__list.col3.col3_2,
.mm-local-nav__list.col3.col3_3 {
    justify-content: space-between;
}


.mm-local-nav__item {
    color: #fff;
}

.mm-local-nav__item a {
    font-size: 16px;
    font-size: 1.0rem;
    border-bottom: 1px solid transparent;
    -webkit-transition: all .3s;
    transition: all .3s;
}

.mm-local-nav__item a:hover .mm-local-nav__itemInner {
    border-color: #fff;
}

.mm-local-nav__item.current .mm-local-nav__itemInner {
    border-color: #fff;
}

.mm-local-nav__itemInner {
    border-bottom: 1px solid transparent;
}

@media (max-width: 767px) {
    .mm-local-nav {
        padding: 0;
    }

    .mm-local-nav .container {
        padding: 0;
    }

    .mm-local-nav__list {
        justify-content: flex-start;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        width: 100%;
        margin: 0 auto;
    }

    .mm-local-nav__list.col3.col3_2,
    .mm-local-nav__list.col3.col3_3 {
        justify-content: flex-start;
    }

    .mm-local-nav__item {
        display: flex;
        align-items: center;
        padding: 0;
        text-align: center;
        border: 1px solid #fff;
        margin-top: -1px;
        margin-left: -1px;
        width: calc(33.33% + 1px);
        min-height: 60px;
    }

    .mm-local-nav__item a {
        display: inline-block;
        width: 100%;
        padding: 15px 10px;
        font-size: 14px;
        font-size: 0.875rem;
    }

    .mm-local-nav__list.col2 .mm-local-nav__item {
        width: calc(50.0% + 1px);
    }

    .mm-local-nav__list .mm-local-nav__item:nth-child(3n),
    .mm-local-nav__list.col2 .mm-local-nav__item:nth-child(2n) {
        border-right: 0;
    }

    .mm-local-nav__list.col2.col2_2 .mm-local-nav__item:nth-child(n+3) {
        border-bottom: 0;
    }

    .mm-local-nav__list.col2.col2_3 .mm-local-nav__item:nth-child(n+5) {
        border-bottom: 0;
    }

    .mm-local-nav__list.col3.col3_2 .mm-local-nav__item:nth-child(n+4) {
        border-bottom: 0;
    }

    .mm-local-nav__list.col3.col3_3 .mm-local-nav__item:nth-child(n+7) {
        border-bottom: 0;
    }
}

.mm-prod-info {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
    margin-top: 40px;
}

.mm-prod-info__gallery {
    width: 50%;
}

.mm-prod-info__gallery img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    vertical-align: bottom;
}

.mm-prod-info__body {
    width: 50%;
    margin-left: 7%;
}

.mm-prod-info__ttl {
    margin: 0;
    color: #007FA5;
    font-weight: 500;
}

.mm-prod-info__ttl+* {
    margin-top: 16px;
}

@media (max-width: 767px) {
    .mm-prod-info {
        -webkit-box-orient: vertical;
        -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
        flex-direction: column-reverse;
        margin-top: 0;
    }

    .mm-prod-info__gallery {
        width: 100%;
    }

    .mm-prod-info__body {
        width: 100%;
        margin-left: 0;
    }

    .mm-prod-info__ttl {
        font-size: 18px;
        font-size: 1.125rem;
    }

    .mm-prod-info .mm-index {
        margin-bottom: 20px;
    }
}

.mm-gallery-mv {
    position: relative;
    margin-bottom: 20px;
    padding: 8px;
    aspect-ratio: 100 / 73;
    border: 1px solid #EAEAEA;
}

.mm-gallery-mv .no-medical {
    position: absolute;
    top: 20px;
    right: 20px;
    padding: 7px 5px;
    font-size: 12px;
    font-size: 0.75rem;
    color: #fff;
    line-height: 1.2;
    text-align: center;
    background-color: #525B5C;
}

@media (max-width: 768px) {
    .mm-gallery-mv .no-medical {
        padding: 4px;
        top: 0;
        right: 0;
        font-size: 11px;
        font-size: 0.6875rem;
    }
}

@media (max-width: 767px) {
    .mm-gallery-mv {
        margin-bottom: 10px;
    }
}

.mm-gallery {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin: 0 -0.7% 20px;
}

.mm-gallery a {
    display: block;
    padding: 8px;
    border: 1px solid #EAEAEA;
}

.mm-gallery a.is-current {
    border-color: #007FA5;
}

.mm-gallery img {
    vertical-align: top;
}

.mm-gallery__item {
    width: 23.6%;
    margin: 5px 0.7%;
}

.mm-index {
    margin-top: 34px;
}

.mm-index__ttl {
    font-size: 18px !important;
    font-size: 1.125rem !important;
    font-weight: bold;
}

.mm-index__list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    padding: 10px 20px 30px;
    border-top: 1px solid #A7A7A7;
    border-bottom: 1px solid #A7A7A7;
}

.mm-index__item {
    position: relative;
    width: 50%;
    margin-top: 20px;
    padding-left: 28px;
    padding-right: 10px;
}

.mm-index__item::before {
    content: "";
    position: absolute;
    top: 0.25em;
    left: 0;
    display: inline-block;
    width: 18px;
    height: 18px;
    background: url(/-/media/medical/assets/img/common/icon-arrow-round-b-blue.svg);
    flex-shrink: 0;
}

.mm-index__item a {
    color: #222;
    -webkit-transition: all .3s;
    transition: all .3s;
    border-bottom: 1px solid transparent;
}

.mm-index__item a:hover {
    color: #007FA5;
    border-color: #007FA5;
}

.mm-index.vertical .mm-index__item {
    width: 100%;
}

@media (max-width: 767px) {
    .mm-index {
        margin-top: 20px;
    }

    .mm-index__ttl {
        font-size: 16px;
        font-size: 1.0rem;
    }

    .mm-index__list {
        padding: 0 5px 20px;
    }

    .mm-index__item::before {
        top: 0.15em;
    }
}

.mm-dl__row {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    border-bottom: 1px solid #ccc;
}

.mm-dl__row:first-child {
    border-top: 1px solid #ccc;
}

.mm-dl__head {
    -ms-flex-negative: 0;
    flex-shrink: 0;
    width: 35%;
    margin: 0;
    padding: 20px 30px;
    font-weight: bold;
    background-color: #F2F2F2;
}

.mm-dl__data {
    width: 65%;
    margin: 0;
    padding: 20px 30px;
    font-weight: 500;
}

@media (max-width: 767px) {
    .mm-dl__row {
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    }

    .mm-dl__head,
    .mm-dl__data {
        width: 100%;
        padding: 10px 16px;
    }
}

.mm-movie {
    margin: 30px auto 0;
    width: 100%;
    max-width: 644px;
}

.mm-movie>* {
    width: 100%;
    aspect-ratio: 16/9;
    -o-object-fit: contain;
    object-fit: contain;
    border: 0;
}

.mm-movie-videojs {
    margin: 30px auto 0;
    width: 100%;
    max-width: 850px;
}

.mm-movie-videojs>* {
    width: 100%;
    -o-object-fit: contain;
    object-fit: contain;
    border: 0;
}

.mm-comment {
    margin-top: 30px;
    padding: 30px 40px;
    border: 1px solid #007FA5;
}

.mm-comment__ttl {
    color: #007FA5;
    font-size: 20px;
    font-size: 1.25rem;
    font-weight: 500;
}

.mm-comment__ttl+* {
    margin-top: 30px;
}

@media (max-width: 767px) {
    .mm-comment {
        padding: 30px 20px;
    }

    .mm-comment__ttl {
        font-size: 16px;
        font-size: 1.0rem;
    }

    .mm-comment__ttl+* {
        margin-top: 16px;
    }
}

.mm-profile {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
    margin-top: 30px;
}

.mm-profile__body {
    padding: 10px 30px;
}

.mm-profile__name {
    font-size: 18px !important;
    font-size: 1.125rem !important;
    font-weight: bold;
}

.mm-profile__position {
    margin-top: 20px;
}

.mm-profile__position p:first-child {
    margin-top: 0;
}

.mm-profile__position p:not(:first-child) {
    margin-top: 10px;
}

.mm-profile__img {
    max-width: 160px;
}

@media (max-width: 767px) {
    .mm-profile {
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        -webkit-box-orient: vertical;
        -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
        flex-direction: column-reverse;
    }

    .mm-profile__body {
        padding: 20px 0 0;
    }

    .mm-profile__img {
        width: 100%;
    }

    .mm-profile__name {
        font-size: 15px !important;
        font-size: 0.9375rem !important;
    }

    .mm-profile__position {
        margin-top: 10px;
    }
}

.mm-qa {
    margin-top: 20px;
}

.mm-qa__icon {
    position: relative;
    top: 1px;
    display: inline-block;
    width: 20px;
    height: 20px;
    margin-right: 16px;
    background: #007FA5;
    border-radius: 50%;
}

.mm-qa__icon::before,
.mm-qa__icon::after {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    display: inline-block;
    width: 13px;
    height: 2px;
    background-color: #fff;
    -webkit-transition: all .3s;
    transition: all .3s;
}

.mm-qa__icon::after {
    -webkit-transform: translate(-50%, -50%) rotate(90deg);
    transform: translate(-50%, -50%) rotate(90deg);
}

.mm-qa__ttl {
    position: relative;
    display: block;
    padding: 16px 25px;
    font-size: 22px;
    font-size: 1.375rem;
    font-weight: 500;
    text-align: left;
    line-height: 1.5em;
    width: 100%;
    font-family: Noto Sans JP, ヒラギノ角ゴ ProN W3, Hiragino Kaku Gothic ProN, メイリオ, Meiryo, sans-serif;
    background-color: #F2F2F2;
    border-radius: 6px;
}

.mm-qa__ttl.js-open {
    cursor: pointer;
}

.mm-qa__ttl+* {
    margin-top: 20px;
}

.mm-qa__ttl.is-open .mm-qa__icon::after {
    opacity: 0;
}

.mm-qa__ttl.page-low {
    margin-top: 40px;
    color: #fff;
    background-color: #007FA5;
}

.mm-qa__ttl.page-low .mm-qa__q {
    color: #fff;
}

.mm-qa__q {
    margin-right: 18px;
    color: #007FA5;
    font-size: 26px;
    font-size: 1.625rem;
    line-height: 1;
}

.mm-qa__list {
    margin-top: 0;
}

.mm-qa__item a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    padding: 25px;
    font-size: 18px;
    font-size: 1.125rem;
    font-weight: 500;
    border-bottom: 1px solid #A7A7A7;
}

.mm-qa__item a:hover .mm-qa__body {
    color: #007FA5;
    text-decoration: underline;
}

.mm-qa.others {
    margin-top: 100px;
}

/*CPAPサポートページ：お手入れ方法用モジュール Start*/

.mm-qa__list.mm-qa__box .mm-qa__item {
    border: 3px solid #f2f2f2;
    border-top: 0;
    padding: 15px;
    margin-top: 10px;
}

.mm-qa__list.mm-qa__box .mm-qa__item .grid+.grid {
    border-top: 1px solid #f2f2f2;
    margin-top: 30px;
}

/*CPAPサポートページ：お手入れ方法用モジュール End*/

@media (max-width: 767px) {
    .mm-qa__icon {
        width: 16px;
        height: 16px;
        margin-right: 4px;
    }

    .mm-qa__icon::before,
    .mm-qa__icon::after {
        width: 8px;
        height: 2px;
    }

    .mm-qa__ttl {
        padding: 12px 16px;
        font-size: 16px !important;
        font-size: 1.0rem !important;
    }

    .mm-qa__q {
        margin-right: 8px;
        font-size: 20px;
        font-size: 1.25rem;
    }

    .mm-qa__body {
        font-size: 14px;
        font-size: 0.875rem;
    }

    .mm-qa__item a {
        padding: 14px 10px;
    }
}

.mm-download {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    height: 100%;
    padding: 36px 20px 20px;
    border: 1px solid #007FA5;
    -webkit-box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16);
    box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16);
}

.mm-download::before {
    content: "";
    position: absolute;
    top: 20px;
    left: 20px;
    display: block;
    width: 25px;
    height: 4px;
    background-color: #007FA5;
}

.mm-download__ttl {
    margin-bottom: 36px;
    font-size: 20px !important;
    font-size: 1.25rem !important;
    text-align-last: left;
    line-height: 1.4 !important;
}

.mm-download__btn {
    margin-top: auto;
}

@media (max-width: 767px) {
    .mm-download__ttl {
        margin-bottom: 20px;
        font-size: 16px !important;
        font-size: 1.0rem !important;
    }
}

.mm-card {
    width: 100%;
    height: 100%;
    -webkit-box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16);
    box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16);
}

.mm-card a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    height: 100%;
    -webkit-transition: all .3s;
    transition: all .3s;
}

.mm-card a:hover {
    opacity: .7;
}

.mm-card__img {
    position: relative;
    width: 100%;
    aspect-ratio: 20/13;
    background-color: #fff;
}

.mm-card__img::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    display: block;
    width: 100%;
    height: 100%;
    border: 1px solid #007FA5;
    border-bottom: none;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

.mm-card__img img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
}

.mm-card__body {
    position: relative;
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
    padding: 15px 15px 56px;
    text-align: left;
    border: 1px solid #007FA5;
    border-top: none;
}

.mm-card__body::after {
    content: "";
    position: absolute;
    right: 15px;
    bottom: 15px;
    display: block;
    width: 21px;
    height: 12px;
    background: url(/-/media/medical/assets/img/common/icon-arrow-r.svg) no-repeat center center/contain;
    flex-shrink: 0;
}

.mm-card__ttl {
    min-height: calc(1em * 2* 1.5);
    font-size: 18px;
    font-size: 1.125rem;
    color: #007FA5;
}

.mm-card__ttl+* {
    margin-top: 10px;
}

.mm-card.new .mm-card__img {
    position: relative;
}

.mm-card.new .mm-card__img::before {
    content: "NEW";
    position: absolute;
    display: inline-block;
    padding: 6px 12px;
    color: #fff;
    font-size: 14px;
    font-size: 0.875rem;
    background-color: #EA002A;
    letter-spacing: 0.05em;
    line-height: 1;
    z-index: 1;
}

@media (max-width: 767px) {
    .mm-card__ttl {
        min-height: inherit;
        font-size: 16px;
        font-size: 1.0rem;
    }

    .mm-card.new .mm-card__img::before {
        font-size: 12px;
        font-size: 0.75rem;
    }
}

.mm-case__content {
    position: relative;
    margin-top: 30px;
}

.mm-case__content::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    display: block;
    width: 100%;
    height: 150px;
    background: -webkit-gradient(linear, left bottom, left top, from(#fff), to(transparent));
    background: linear-gradient(to top, #fff, transparent);
    z-index: 10;
}

.mm-case__mainttl {
    color: #007FA5;
    font-size: 26px !important;
    font-size: 1.625rem !important;
    text-align: center;
    line-height: 1.5;
}

.mm-case__mainttl+* {
    margin-top: 48px;
}

.mm-case__ttl {
    margin-top: 40px;
    font-size: 18px !important;
    font-size: 1.125rem !important;
    font-weight: 500;
}

.mm-case__ttl+* {
    margin-top: 20px;
}

.mm-case__img {
    margin: 30px auto;
    text-align: center;
}

.mm-case__img img {
    width: 100%;
    max-width: 600px;
    -o-object-fit: cover;
    object-fit: cover;
    vertical-align: text-top;
}

.mm-case__caption {
    margin-top: 10px;
    font-size: 14px;
    font-size: 0.875rem;
    text-align: center;
}

@media (max-width: 767px) {
    .mm-case__mainttl {
        font-size: 18px !important;
        font-size: 1.125rem !important;
        text-align: left;
    }

    .mm-case__mainttl+* {
        margin-top: 30px;
    }

    .mm-case__ttl {
        margin-top: 30px;
        font-size: 16px !important;
        font-size: 1.0rem !important;
    }

    .mm-case__img {
        margin: 20px auto;
    }

    .mm-case__caption {
        font-size: 12px;
        font-size: 0.75rem;
    }
}

.caption {
    position: relative;
    font-size: 14px !important;
    font-size: 0.875rem !important;
    padding-left: 1em;
    line-height: 1.8;
}

.caption::before {
    content: "※";
    position: absolute;
    left: 0;
}

@media (max-width: 767px) {
    .caption {
        font-size: 12px !important;
        font-size: 0.75rem !important;
    }
}

.mm-top-lineup {
    background-color: #E3F9FC;
}

.mm-inovation-flex {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.mm-inovation-flex__image {
    max-width: 340px;
    padding: 20px;
}

.mm-inovation-flex__image img {
    width: 100%;
    -o-object-fit: contain;
    object-fit: contain;
}

.mm-inovation-flex__body {
    padding-left: 68px;
    font-weight: 500;
}

@media (max-width: 767px) {
    .mm-inovation-flex {
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
    }

    .mm-inovation-flex__img {
        width: 100%;
        max-width: inherit;
    }

    .mm-inovation-flex__body {
        padding-left: 0;
    }
}

.mm-promise {
    padding: 20px;
}

.mm-promise__ttl {
    margin: 0 0 8px;
    font-size: 24px;
    font-size: 1.5rem;
    color: #007FA5;
    text-align: center;
}

.mm-promise p {
    margin-top: 24px;
    font-size: 18px;
    font-size: 1.125rem;
    text-align: center;
}

@media (max-width: 767px) {
    .mm-promise {
        padding: 0;
    }

    .mm-promise__ttl {
        font-size: 18px;
        font-size: 1.125rem;
    }

    .mm-promise p {
        font-size: 15px;
        font-size: 1.0rem;
        text-align: left;
    }
}

.mm-specification__box {
    margin-top: 60px;
}

.mm-specification__ttl {
    margin-top: 30px;
    font-size: 18px;
    font-size: 1.125rem;
    color: #007FA5;
}

.mm-specification__ttl+* {
    margin-top: 6px;
}

.mm-specification__txt {
    font-weight: 500;
    line-height: 1.8;
}

.mm-specification__mf100-flex {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}

.mm-specification__mf100-img {
    margin-left: 50px;
}

@media (max-width: 767px) {
    .mm-specification__ttl {
        margin-top: 20px;
        font-size: 16px;
        font-size: 1.0rem;
    }

    .mm-specification__mf100-img {
        margin-left: 20px;
    }

    .mm-specification__mf100-img img {
        width: 60px;
    }
}

.mm-stress {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}

.mm-stress__txt {
    width: 70%;
}

.mm-stress__img {
    width: 30%;
    padding-left: 20px;
    text-align: center;
}

.mm-stress__img img {
    max-width: 100%;
    -o-object-fit: contain;
    object-fit: contain;
}

@media (max-width: 767px) {
    .mm-stress {
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        -webkit-box-orient: vertical;
        -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
        flex-direction: column-reverse;
    }

    .mm-stress__txt {
        width: 100%;
        margin-top: 20px;
    }

    .mm-stress__img {
        width: 100%;
    }
}

.mm-prod-step {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

.mm-prod-step__item:not(:first-child) {
    padding-left: 5%;
}

.mm-prod-step__ttl {
    font-weight: 500;
}

.mm-prod-step__ttl .num {
    color: #007FA5;
}

.mm-prod-step__img {
    margin-top: 15px;
}

.mm-prod-step__img img {
    max-width: 100%;
    -o-object-fit: contain;
    object-fit: contain;
}

.mm-prod-step.type-2 {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    flex-wrap: wrap;
}

.mm-prod-step.type-2 .mm-prod-step__item {
    width: 46%;
    margin: 30px 2% 0;
}

.mm-prod-step.type-2 .mm-prod-step__item:not(:first-child) {
    padding-left: 0;
}

.mm-prod-step.type-3 {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    flex-wrap: wrap;
}

.mm-prod-step.type-3 .mm-prod-step__item:nth-child(1),
.mm-prod-step.type-3 .mm-prod-step__item:nth-child(3) {
    width: 23%;
    margin: 30px 2% 0;
}

.mm-prod-step.type-3 .mm-prod-step__item:nth-child(2),
.mm-prod-step.type-3 .mm-prod-step__item:nth-child(4) {
    width: 69%;
    margin: 30px 2% 0;
}

.mm-prod-step.type-3 .mm-prod-step__item:not(:first-child) {
    padding-left: 0;
}

@media (max-width: 767px) {
    .mm-prod-step {
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        margin: 0 -2%;
    }

    .mm-prod-step__item {
        width: 46%;
        margin: 30px 2% 0;
    }

    .mm-prod-step__item:not(:first-child) {
        padding: 0;
    }

    .mm-prod-step.type-2 .mm-prod-step__item,
    .mm-prod-step.type-3 .mm-prod-step__item {
        width: 92%;
        margin: 30px 2% 0;
    }

    .mm-prod-step.type-3 .mm-prod-step__item {
        width: 100% !important;
    }

    .mm-prod-step.type-3 .mm-prod-step__item .mm-prod-step__img img {
        display: block;
        margin: 0 auto;
    }

    .mm-prod-step.type-2 .mm-prod-step__item:not(:first-child),
    .mm-prod-step.type-3 .mm-prod-step__item:not(:first-child) {
        padding: 0;
    }

}

/*.mm-step-box Start*/
.mm-step-box__ttl {
    font-weight: 500;
}

.mm-step-box__ttl .num {
    color: #007FA5;
}

@media (min-width: 768px) {
    .mm-step-box {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
    }

    .mm-step-box.col2,
    .mm-step-box.col3,
    .mm-step-box.col4 {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: flex-start;
        flex-wrap: wrap;
    }

    .mm-step-box__item {
        width: 47%;
        margin-left: 1.5%;
        margin-right: 1.5%;
        text-align: center;
    }

    .col2 .mm-step-box__item {
        margin-top: 40px;
    }

    .col3 .mm-step-box__item {
        width: 30%;
        margin: 40px 1.5% 0;
    }

    .col4 .mm-step-box__item {
        width: 22%;
        margin: 40px 1.5% 0;
    }

    .mm-step-box__img {
        margin-top: 15px;
    }

    .mm-step-box__img img {
        max-width: 100%;
        -o-object-fit: contain;
        object-fit: contain;
    }
}

@media (max-width: 767px) {
    .mm-step-box {
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        margin: 0 -2%;
    }

    .mm-step-box__item {
        width: 96%;
        margin: 30px 2% 0;
    }

}

/*.mm-step-box End*/

.mm-mf100-strength {
    margin-top: 30px;
    text-align: center;
}

.mm-mf100-strength__img {
    max-width: 800px;
    margin: 20px auto 0;
}

.mm-mf100-strength__img img {
    max-width: 100%;
    -o-object-fit: contain;
    object-fit: contain;
}

.mm-mf100-strength__img img:not(:first-child) {
    margin-top: 16px;
}

@media (max-width: 767px) {
    .vpc {
        display: none;
    }
}

.vsp {
    display: none;
}

@media (max-width: 767px) {
    .vsp {
        display: block;
    }
}

.color-white {
    color: #fff !important;
}

.color-main {
    color: #007FA5 !important;
}

.color-red {
    color: #CC0011 !important;
}

.fw-medium {
    font-weight: 500 !important;
}

.fw-bold {
    font-weight: bold !important;
}

.mm-text-lead {
    font-size: 20px !important;
    font-size: 1.25rem !important;
    font-weight: bold;
    line-height: 1.5 !important;
}

.mm-text-lead-large {
    font-size: 24px !important;
    font-size: 1.5rem !important;
    font-weight: bold;
    line-height: 1.3 !important;
}

.mm-text-sub {
    font-size: 12px !important;
    font-size: 0.75rem !important;
    line-height: 1.6 !important;
}

.bd-t {
    border-top: 1px solid #007FA5 !important;
}

.bd-r {
    border-right: 1px solid #007FA5 !important;
}

.bd-b {
    border-bottom: 1px solid #007FA5 !important;
}

.bd-l {
    border-left: 1px solid #007FA5 !important;
}

@media screen and (min-width: 768px) {
    .bd-t_pc {
        border-top: 1px solid #007FA5 !important;
    }

    .bd-r_pc {
        border-right: 1px solid #007FA5 !important;
    }

    .bd-b_pc {
        border-bottom: 1px solid #007FA5 !important;
    }

    .bd-l_pc {
        border-left: 1px solid #007FA5 !important;
    }
}

@media screen and (max-width: 767px) {
    .bd-t_sp {
        border-top: 1px solid #007FA5 !important;
    }

    .bd-r_sp {
        border-right: 1px solid #007FA5 !important;
    }

    .bd-b_sp {
        border-bottom: 1px solid #007FA5 !important;
    }

    .bd-l_sp {
        border-left: 1px solid #007FA5 !important;
    }
}

.bd-white {
    border-color: #fff !important;
}

.bd-red {
    border-color: #ea002a !important;
}

.bd-light {
    border-color: #efefef !important;
}

.bd-gray {
    border-color: #cccccc !important;
}

.bd-dark {
    border-color: #757c7d !important;
}

.bg-red {
    background-color: #ea002a !important;
}

.bg-light {
    background-color: #efefef !important;
}

.bg-gray {
    background-color: #cccccc !important;
}

.bg-dark {
    background-color: #757c7d !important;
}

/*Ajust Padding Start*/
.pt-0 {
    padding-top: 0px !important;
}

.pl-0 {
    padding-left: 0px !important;
}

.pr-0 {
    padding-right: 0px !important;
}

.pb-0 {
    padding-bottom: 0px !important;
}

.pt-5 {
    padding-top: 5px !important;
}

.pl-5 {
    padding-left: 5px !important;
}

.pr-5 {
    padding-right: 5px !important;
}

.pb-5 {
    padding-bottom: 5px !important;
}

.pt-10 {
    padding-top: 10px !important;
}

.pl-10 {
    padding-left: 10px !important;
}

.pr-10 {
    padding-right: 10px !important;
}

.pb-10 {
    padding-bottom: 10px !important;
}

.pt-15 {
    padding-top: 15px !important;
}

.pl-15 {
    padding-left: 15px !important;
}

.pr-15 {
    padding-right: 15px !important;
}

.pb-15 {
    padding-bottom: 15px !important;
}

.pt-20 {
    padding-top: 20px !important;
}

.pl-20 {
    padding-left: 20px !important;
}

.pr-20 {
    padding-right: 20px !important;
}

.pb-20 {
    padding-bottom: 20px !important;
}

.pt-25 {
    padding-top: 25px !important;
}

.pl-25 {
    padding-left: 25px !important;
}

.pr-25 {
    padding-right: 25px !important;
}

.pb-25 {
    padding-bottom: 25px !important;
}

.pt-30 {
    padding-top: 30px !important;
}

.pl-30 {
    padding-left: 30px !important;
}

.pr-30 {
    padding-right: 30px !important;
}

.pb-30 {
    padding-bottom: 30px !important;
}

.pt-35 {
    padding-top: 35px !important;
}

.pl-35 {
    padding-left: 35px !important;
}

.pr-35 {
    padding-right: 35px !important;
}

.pb-35 {
    padding-bottom: 35px !important;
}

.pt-40 {
    padding-top: 40px !important;
}

.pl-40 {
    padding-left: 40px !important;
}

.pr-40 {
    padding-right: 40px !important;
}

.pb-40 {
    padding-bottom: 40px !important;
}

.pt-45 {
    padding-top: 45px !important;
}

.pl-45 {
    padding-left: 45px !important;
}

.pr-45 {
    padding-right: 45px !important;
}

.pb-45 {
    padding-bottom: 45px !important;
}

.pt-50 {
    padding-top: 50px !important;
}

.pl-50 {
    padding-left: 50px !important;
}

.pr-50 {
    padding-right: 50px !important;
}

.pb-50 {
    padding-bottom: 50px !important;
}

.pt-55 {
    padding-top: 55px !important;
}

.pl-55 {
    padding-left: 55px !important;
}

.pr-55 {
    padding-right: 55px !important;
}

.pb-55 {
    padding-bottom: 55px !important;
}

.pt-60 {
    padding-top: 60px !important;
}

.pl-60 {
    padding-left: 60px !important;
}

.pr-60 {
    padding-right: 60px !important;
}

.pb-60 {
    padding-bottom: 60px !important;
}

.pt-65 {
    padding-top: 65px !important;
}

.pl-65 {
    padding-left: 65px !important;
}

.pr-65 {
    padding-right: 65px !important;
}

.pb-65 {
    padding-bottom: 65px !important;
}

.pt-70 {
    padding-top: 70px !important;
}

.pl-70 {
    padding-left: 70px !important;
}

.pr-70 {
    padding-right: 70px !important;
}

.pb-70 {
    padding-bottom: 70px !important;
}

.pt-75 {
    padding-top: 75px !important;
}

.pl-75 {
    padding-left: 75px !important;
}

.pr-75 {
    padding-right: 75px !important;
}

.pb-75 {
    padding-bottom: 75px !important;
}

.pt-80 {
    padding-top: 80px !important;
}

.pl-80 {
    padding-left: 80px !important;
}

.pr-80 {
    padding-right: 80px !important;
}

.pb-80 {
    padding-bottom: 80px !important;
}

.pt-85 {
    padding-top: 85px !important;
}

.pl-85 {
    padding-left: 85px !important;
}

.pr-85 {
    padding-right: 85px !important;
}

.pb-85 {
    padding-bottom: 85px !important;
}

.pt-90 {
    padding-top: 90px !important;
}

.pl-90 {
    padding-left: 90px !important;
}

.pr-90 {
    padding-right: 90px !important;
}

.pb-90 {
    padding-bottom: 90px !important;
}

.pt-95 {
    padding-top: 95px !important;
}

.pl-95 {
    padding-left: 95px !important;
}

.pr-95 {
    padding-right: 95px !important;
}

.pb-95 {
    padding-bottom: 95px !important;
}

.pt-100 {
    padding-top: 100px !important;
}

.pl-100 {
    padding-left: 100px !important;
}

.pr-100 {
    padding-right: 100px !important;
}

.pb-100 {
    padding-bottom: 100px !important;
}

@media (min-width: 768px) {
    .pt-0pc {
        padding-top: 0px !important;
    }

    .pl-0pc {
        padding-left: 0px !important;
    }

    .pr-0pc {
        padding-right: 0px !important;
    }

    .pb-0pc {
        padding-bottom: 0px !important;
    }

    .pt-5pc {
        padding-top: 5px !important;
    }

    .pl-5pc {
        padding-left: 5px !important;
    }

    .pr-5pc {
        padding-right: 5px !important;
    }

    .pb-5pc {
        padding-bottom: 5px !important;
    }

    .pt-10pc {
        padding-top: 10px !important;
    }

    .pl-10pc {
        padding-left: 10px !important;
    }

    .pr-10pc {
        padding-right: 10px !important;
    }

    .pb-10pc {
        padding-bottom: 10px !important;
    }

    .pt-15pc {
        padding-top: 15px !important;
    }

    .pl-15pc {
        padding-left: 15px !important;
    }

    .pr-15pc {
        padding-right: 15px !important;
    }

    .pb-15pc {
        padding-bottom: 15px !important;
    }

    .pt-20pc {
        padding-top: 20px !important;
    }

    .pl-20pc {
        padding-left: 20px !important;
    }

    .pr-20pc {
        padding-right: 20px !important;
    }

    .pb-20pc {
        padding-bottom: 20px !important;
    }

    .pt-25pc {
        padding-top: 25px !important;
    }

    .pl-25pc {
        padding-left: 25px !important;
    }

    .pr-25pc {
        padding-right: 25px !important;
    }

    .pb-25pc {
        padding-bottom: 25px !important;
    }

    .pt-30pc {
        padding-top: 30px !important;
    }

    .pl-30pc {
        padding-left: 30px !important;
    }

    .pr-30pc {
        padding-right: 30px !important;
    }

    .pb-30pc {
        padding-bottom: 30px !important;
    }

    .pt-35pc {
        padding-top: 35px !important;
    }

    .pl-35pc {
        padding-left: 35px !important;
    }

    .pr-35pc {
        padding-right: 35px !important;
    }

    .pb-35pc {
        padding-bottom: 35px !important;
    }

    .pt-40pc {
        padding-top: 40px !important;
    }

    .pl-40pc {
        padding-left: 40px !important;
    }

    .pr-40pc {
        padding-right: 40px !important;
    }

    .pb-40pc {
        padding-bottom: 40px !important;
    }

    .pt-45pc {
        padding-top: 45px !important;
    }

    .pl-45pc {
        padding-left: 45px !important;
    }

    .pr-45pc {
        padding-right: 45px !important;
    }

    .pb-45pc {
        padding-bottom: 45px !important;
    }

    .pt-50pc {
        padding-top: 50px !important;
    }

    .pl-50pc {
        padding-left: 50px !important;
    }

    .pr-50pc {
        padding-right: 50px !important;
    }

    .pb-50pc {
        padding-bottom: 50px !important;
    }

    .pt-55pc {
        padding-top: 55px !important;
    }

    .pl-55pc {
        padding-left: 55px !important;
    }

    .pr-55pc {
        padding-right: 55px !important;
    }

    .pb-55pc {
        padding-bottom: 55px !important;
    }

    .pt-60pc {
        padding-top: 60px !important;
    }

    .pl-60pc {
        padding-left: 60px !important;
    }

    .pr-60pc {
        padding-right: 60px !important;
    }

    .pb-60pc {
        padding-bottom: 60px !important;
    }

    .pt-65pc {
        padding-top: 65px !important;
    }

    .pl-65pc {
        padding-left: 65px !important;
    }

    .pr-65pc {
        padding-right: 65px !important;
    }

    .pb-65pc {
        padding-bottom: 65px !important;
    }

    .pt-70pc {
        padding-top: 70px !important;
    }

    .pl-70pc {
        padding-left: 70px !important;
    }

    .pr-70pc {
        padding-right: 70px !important;
    }

    .pb-70pc {
        padding-bottom: 70px !important;
    }

    .pt-75pc {
        padding-top: 75px !important;
    }

    .pl-75pc {
        padding-left: 75px !important;
    }

    .pr-75pc {
        padding-right: 75px !important;
    }

    .pb-75pc {
        padding-bottom: 75px !important;
    }

    .pt-80pc {
        padding-top: 80px !important;
    }

    .pl-80pc {
        padding-left: 80px !important;
    }

    .pr-80pc {
        padding-right: 80px !important;
    }

    .pb-80pc {
        padding-bottom: 80px !important;
    }

    .pt-85pc {
        padding-top: 85px !important;
    }

    .pl-85pc {
        padding-left: 85px !important;
    }

    .pr-85pc {
        padding-right: 85px !important;
    }

    .pb-85pc {
        padding-bottom: 85px !important;
    }

    .pt-90pc {
        padding-top: 90px !important;
    }

    .pl-90pc {
        padding-left: 90px !important;
    }

    .pr-90pc {
        padding-right: 90px !important;
    }

    .pb-90pc {
        padding-bottom: 90px !important;
    }

    .pt-95pc {
        padding-top: 95px !important;
    }

    .pl-95pc {
        padding-left: 95px !important;
    }

    .pr-95pc {
        padding-right: 95px !important;
    }

    .pb-95pc {
        padding-bottom: 95px !important;
    }

    .pt-100pc {
        padding-top: 100px !important;
    }

    .pl-100pc {
        padding-left: 100px !important;
    }

    .pr-100pc {
        padding-right: 100px !important;
    }

    .pb-100pc {
        padding-bottom: 100px !important;
    }
}

@media (max-width: 767px) {
    .pt-0sp {
        padding-top: 0px !important;
    }

    .pl-0sp {
        padding-left: 0px !important;
    }

    .pr-0sp {
        padding-right: 0px !important;
    }

    .pb-0sp {
        padding-bottom: 0px !important;
    }

    .pt-5sp {
        padding-top: 5px !important;
    }

    .pl-5sp {
        padding-left: 5px !important;
    }

    .pr-5sp {
        padding-right: 5px !important;
    }

    .pb-5sp {
        padding-bottom: 5px !important;
    }

    .pt-10sp {
        padding-top: 10px !important;
    }

    .pl-10sp {
        padding-left: 10px !important;
    }

    .pr-10sp {
        padding-right: 10px !important;
    }

    .pb-10sp {
        padding-bottom: 10px !important;
    }

    .pt-15sp {
        padding-top: 15px !important;
    }

    .pl-15sp {
        padding-left: 15px !important;
    }

    .pr-15sp {
        padding-right: 15px !important;
    }

    .pb-15sp {
        padding-bottom: 15px !important;
    }

    .pt-20sp {
        padding-top: 20px !important;
    }

    .pl-20sp {
        padding-left: 20px !important;
    }

    .pr-20sp {
        padding-right: 20px !important;
    }

    .pb-20sp {
        padding-bottom: 20px !important;
    }

    .pt-25sp {
        padding-top: 25px !important;
    }

    .pl-25sp {
        padding-left: 25px !important;
    }

    .pr-25sp {
        padding-right: 25px !important;
    }

    .pb-25sp {
        padding-bottom: 25px !important;
    }

    .pt-30sp {
        padding-top: 30px !important;
    }

    .pl-30sp {
        padding-left: 30px !important;
    }

    .pr-30sp {
        padding-right: 30px !important;
    }

    .pb-30sp {
        padding-bottom: 30px !important;
    }

    .pt-35sp {
        padding-top: 35px !important;
    }

    .pl-35sp {
        padding-left: 35px !important;
    }

    .pr-35sp {
        padding-right: 35px !important;
    }

    .pb-35sp {
        padding-bottom: 35px !important;
    }

    .pt-40sp {
        padding-top: 40px !important;
    }

    .pl-40sp {
        padding-left: 40px !important;
    }

    .pr-40sp {
        padding-right: 40px !important;
    }

    .pb-40sp {
        padding-bottom: 40px !important;
    }

    .pt-45sp {
        padding-top: 45px !important;
    }

    .pl-45sp {
        padding-left: 45px !important;
    }

    .pr-45sp {
        padding-right: 45px !important;
    }

    .pb-45sp {
        padding-bottom: 45px !important;
    }

    .pt-50sp {
        padding-top: 50px !important;
    }

    .pl-50sp {
        padding-left: 50px !important;
    }

    .pr-50sp {
        padding-right: 50px !important;
    }

    .pb-50sp {
        padding-bottom: 50px !important;
    }

    .pt-55sp {
        padding-top: 55px !important;
    }

    .pl-55sp {
        padding-left: 55px !important;
    }

    .pr-55sp {
        padding-right: 55px !important;
    }

    .pb-55sp {
        padding-bottom: 55px !important;
    }

    .pt-60sp {
        padding-top: 60px !important;
    }

    .pl-60sp {
        padding-left: 60px !important;
    }

    .pr-60sp {
        padding-right: 60px !important;
    }

    .pb-60sp {
        padding-bottom: 60px !important;
    }

    .pt-65sp {
        padding-top: 65px !important;
    }

    .pl-65sp {
        padding-left: 65px !important;
    }

    .pr-65sp {
        padding-right: 65px !important;
    }

    .pb-65sp {
        padding-bottom: 65px !important;
    }

    .pt-70sp {
        padding-top: 70px !important;
    }

    .pl-70sp {
        padding-left: 70px !important;
    }

    .pr-70sp {
        padding-right: 70px !important;
    }

    .pb-70sp {
        padding-bottom: 70px !important;
    }

    .pt-75sp {
        padding-top: 75px !important;
    }

    .pl-75sp {
        padding-left: 75px !important;
    }

    .pr-75sp {
        padding-right: 75px !important;
    }

    .pb-75sp {
        padding-bottom: 75px !important;
    }

    .pt-80sp {
        padding-top: 80px !important;
    }

    .pl-80sp {
        padding-left: 80px !important;
    }

    .pr-80sp {
        padding-right: 80px !important;
    }

    .pb-80sp {
        padding-bottom: 80px !important;
    }

    .pt-85sp {
        padding-top: 85px !important;
    }

    .pl-85sp {
        padding-left: 85px !important;
    }

    .pr-85sp {
        padding-right: 85px !important;
    }

    .pb-85sp {
        padding-bottom: 85px !important;
    }

    .pt-90sp {
        padding-top: 90px !important;
    }

    .pl-90sp {
        padding-left: 90px !important;
    }

    .pr-90sp {
        padding-right: 90px !important;
    }

    .pb-90sp {
        padding-bottom: 90px !important;
    }

    .pt-95sp {
        padding-top: 95px !important;
    }

    .pl-95sp {
        padding-left: 95px !important;
    }

    .pr-95sp {
        padding-right: 95px !important;
    }

    .pb-95sp {
        padding-bottom: 95px !important;
    }

    .pt-100sp {
        padding-top: 100px !important;
    }

    .pl-100sp {
        padding-left: 100px !important;
    }

    .pr-100sp {
        padding-right: 100px !important;
    }

    .pb-100sp {
        padding-bottom: 100px !important;
    }
}

/*Ajust Padding End*/

/*Ajust Margin Start*/
.mg-0a {
    margin: 0 auto !important;
}

.mt-0 {
    margin-top: 0px !important;
}

.ml-0 {
    margin-left: 0px !important;
}

.mr-0 {
    margin-right: 0px !important;
}

.mb-0 {
    margin-bottom: 0px !important;
}

.mt-5 {
    margin-top: 5px !important;
}

.ml-5 {
    margin-left: 5px !important;
}

.mr-5 {
    margin-right: 5px !important;
}

.mb-5 {
    margin-bottom: 5px !important;
}

.mt-10 {
    margin-top: 10px !important;
}

.ml-10 {
    margin-left: 10px !important;
}

.mr-10 {
    margin-right: 10px !important;
}

.mb-10 {
    margin-bottom: 10px !important;
}

.mt-15 {
    margin-top: 15px !important;
}

.ml-15 {
    margin-left: 15px !important;
}

.mr-15 {
    margin-right: 15px !important;
}

.mb-15 {
    margin-bottom: 15px !important;
}

.mt-20 {
    margin-top: 20px !important;
}

.ml-20 {
    margin-left: 20px !important;
}

.mr-20 {
    margin-right: 20px !important;
}

.mb-20 {
    margin-bottom: 20px !important;
}

.mt-25 {
    margin-top: 25px !important;
}

.ml-25 {
    margin-left: 25px !important;
}

.mr-25 {
    margin-right: 25px !important;
}

.mb-25 {
    margin-bottom: 25px !important;
}

.mt-30 {
    margin-top: 30px !important;
}

.ml-30 {
    margin-left: 30px !important;
}

.mr-30 {
    margin-right: 30px !important;
}

.mb-30 {
    margin-bottom: 30px !important;
}

.mt-35 {
    margin-top: 35px !important;
}

.ml-35 {
    margin-left: 35px !important;
}

.mr-35 {
    margin-right: 35px !important;
}

.mb-35 {
    margin-bottom: 35px !important;
}

.mt-40 {
    margin-top: 40px !important;
}

.ml-40 {
    margin-left: 40px !important;
}

.mr-40 {
    margin-right: 40px !important;
}

.mb-40 {
    margin-bottom: 40px !important;
}

.mt-45 {
    margin-top: 45px !important;
}

.ml-45 {
    margin-left: 45px !important;
}

.mr-45 {
    margin-right: 45px !important;
}

.mb-45 {
    margin-bottom: 45px !important;
}

.mt-50 {
    margin-top: 50px !important;
}

.ml-50 {
    margin-left: 50px !important;
}

.mr-50 {
    margin-right: 50px !important;
}

.mb-50 {
    margin-bottom: 50px !important;
}

.mt-55 {
    margin-top: 55px !important;
}

.ml-55 {
    margin-left: 55px !important;
}

.mr-55 {
    margin-right: 55px !important;
}

.mb-55 {
    margin-bottom: 55px !important;
}

.mt-60 {
    margin-top: 60px !important;
}

.ml-60 {
    margin-left: 60px !important;
}

.mr-60 {
    margin-right: 60px !important;
}

.mb-60 {
    margin-bottom: 60px !important;
}

.mt-65 {
    margin-top: 65px !important;
}

.ml-65 {
    margin-left: 65px !important;
}

.mr-65 {
    margin-right: 65px !important;
}

.mb-65 {
    margin-bottom: 65px !important;
}

.mt-70 {
    margin-top: 70px !important;
}

.ml-70 {
    margin-left: 70px !important;
}

.mr-70 {
    margin-right: 70px !important;
}

.mb-70 {
    margin-bottom: 70px !important;
}

.mt-75 {
    margin-top: 75px !important;
}

.ml-75 {
    margin-left: 75px !important;
}

.mr-75 {
    margin-right: 75px !important;
}

.mb-75 {
    margin-bottom: 75px !important;
}

.mt-80 {
    margin-top: 80px !important;
}

.ml-80 {
    margin-left: 80px !important;
}

.mr-80 {
    margin-right: 80px !important;
}

.mb-80 {
    margin-bottom: 80px !important;
}

.mt-85 {
    margin-top: 85px !important;
}

.ml-85 {
    margin-left: 85px !important;
}

.mr-85 {
    margin-right: 85px !important;
}

.mb-85 {
    margin-bottom: 85px !important;
}

.mt-90 {
    margin-top: 90px !important;
}

.ml-90 {
    margin-left: 90px !important;
}

.mr-90 {
    margin-right: 90px !important;
}

.mb-90 {
    margin-bottom: 90px !important;
}

.mt-95 {
    margin-top: 95px !important;
}

.ml-95 {
    margin-left: 95px !important;
}

.mr-95 {
    margin-right: 95px !important;
}

.mb-95 {
    margin-bottom: 95px !important;
}

.mt-100 {
    margin-top: 100px !important;
}

.ml-100 {
    margin-left: 100px !important;
}

.mr-100 {
    margin-right: 100px !important;
}

.mb-100 {
    margin-bottom: 100px !important;
}

@media (min-width: 768px) {
    .mg-0apc {
        margin: 0 auto !important;
    }

    .mt-0pc {
        margin-top: 0px !important;
    }

    .ml-0pc {
        margin-left: 0px !important;
    }

    .mr-0pc {
        margin-right: 0px !important;
    }

    .mb-0pc {
        margin-bottom: 0px !important;
    }

    .mt-5pc {
        margin-top: 5px !important;
    }

    .ml-5pc {
        margin-left: 5px !important;
    }

    .mr-5pc {
        margin-right: 5px !important;
    }

    .mb-5pc {
        margin-bottom: 5px !important;
    }

    .mt-10pc {
        margin-top: 10px !important;
    }

    .ml-10pc {
        margin-left: 10px !important;
    }

    .mr-10pc {
        margin-right: 10px !important;
    }

    .mb-10pc {
        margin-bottom: 10px !important;
    }

    .mt-15pc {
        margin-top: 15px !important;
    }

    .ml-15pc {
        margin-left: 15px !important;
    }

    .mr-15pc {
        margin-right: 15px !important;
    }

    .mb-15pc {
        margin-bottom: 15px !important;
    }

    .mt-20pc {
        margin-top: 20px !important;
    }

    .ml-20pc {
        margin-left: 20px !important;
    }

    .mr-20pc {
        margin-right: 20px !important;
    }

    .mb-20pc {
        margin-bottom: 20px !important;
    }

    .mt-25pc {
        margin-top: 25px !important;
    }

    .ml-25pc {
        margin-left: 25px !important;
    }

    .mr-25pc {
        margin-right: 25px !important;
    }

    .mb-25pc {
        margin-bottom: 25px !important;
    }

    .mt-30pc {
        margin-top: 30px !important;
    }

    .ml-30pc {
        margin-left: 30px !important;
    }

    .mr-30pc {
        margin-right: 30px !important;
    }

    .mb-30pc {
        margin-bottom: 30px !important;
    }

    .mt-35pc {
        margin-top: 35px !important;
    }

    .ml-35pc {
        margin-left: 35px !important;
    }

    .mr-35pc {
        margin-right: 35px !important;
    }

    .mb-35pc {
        margin-bottom: 35px !important;
    }

    .mt-40pc {
        margin-top: 40px !important;
    }

    .ml-40pc {
        margin-left: 40px !important;
    }

    .mr-40pc {
        margin-right: 40px !important;
    }

    .mb-40pc {
        margin-bottom: 40px !important;
    }

    .mt-45pc {
        margin-top: 45px !important;
    }

    .ml-45pc {
        margin-left: 45px !important;
    }

    .mr-45pc {
        margin-right: 45px !important;
    }

    .mb-45pc {
        margin-bottom: 45px !important;
    }

    .mt-50pc {
        margin-top: 50px !important;
    }

    .ml-50pc {
        margin-left: 50px !important;
    }

    .mr-50pc {
        margin-right: 50px !important;
    }

    .mb-50pc {
        margin-bottom: 50px !important;
    }

    .mt-55pc {
        margin-top: 55px !important;
    }

    .ml-55pc {
        margin-left: 55px !important;
    }

    .mr-55pc {
        margin-right: 55px !important;
    }

    .mb-55pc {
        margin-bottom: 55px !important;
    }

    .mt-60pc {
        margin-top: 60px !important;
    }

    .ml-60pc {
        margin-left: 60px !important;
    }

    .mr-60pc {
        margin-right: 60px !important;
    }

    .mb-60pc {
        margin-bottom: 60px !important;
    }

    .mt-65pc {
        margin-top: 65px !important;
    }

    .ml-65pc {
        margin-left: 65px !important;
    }

    .mr-65pc {
        margin-right: 65px !important;
    }

    .mb-65pc {
        margin-bottom: 65px !important;
    }

    .mt-70pc {
        margin-top: 70px !important;
    }

    .ml-70pc {
        margin-left: 70px !important;
    }

    .mr-70pc {
        margin-right: 70px !important;
    }

    .mb-70pc {
        margin-bottom: 70px !important;
    }

    .mt-75pc {
        margin-top: 75px !important;
    }

    .ml-75pc {
        margin-left: 75px !important;
    }

    .mr-75pc {
        margin-right: 75px !important;
    }

    .mb-75pc {
        margin-bottom: 75px !important;
    }

    .mt-80pc {
        margin-top: 80px !important;
    }

    .ml-80pc {
        margin-left: 80px !important;
    }

    .mr-80pc {
        margin-right: 80px !important;
    }

    .mb-80pc {
        margin-bottom: 80px !important;
    }

    .mt-85pc {
        margin-top: 85px !important;
    }

    .ml-85pc {
        margin-left: 85px !important;
    }

    .mr-85pc {
        margin-right: 85px !important;
    }

    .mb-85pc {
        margin-bottom: 85px !important;
    }

    .mt-90pc {
        margin-top: 90px !important;
    }

    .ml-90pc {
        margin-left: 90px !important;
    }

    .mr-90pc {
        margin-right: 90px !important;
    }

    .mb-90pc {
        margin-bottom: 90px !important;
    }

    .mt-95pc {
        margin-top: 95px !important;
    }

    .ml-95pc {
        margin-left: 95px !important;
    }

    .mr-95pc {
        margin-right: 95px !important;
    }

    .mb-95pc {
        margin-bottom: 95px !important;
    }

    .mt-100pc {
        margin-top: 100px !important;
    }

    .ml-100pc {
        margin-left: 100px !important;
    }

    .mr-100pc {
        margin-right: 100px !important;
    }

    .mb-100pc {
        margin-bottom: 100px !important;
    }
}

@media (max-width: 767px) {
    .mg-0asp {
        margin: 0 auto !important;
    }

    .mt-0sp {
        margin-top: 0px !important;
    }

    .ml-0sp {
        margin-left: 0px !important;
    }

    .mr-0sp {
        margin-right: 0px !important;
    }

    .mb-0sp {
        margin-bottom: 0px !important;
    }

    .mt-5sp {
        margin-top: 5px !important;
    }

    .ml-5sp {
        margin-left: 5px !important;
    }

    .mr-5sp {
        margin-right: 5px !important;
    }

    .mb-5sp {
        margin-bottom: 5px !important;
    }

    .mt-10sp {
        margin-top: 10px !important;
    }

    .ml-10sp {
        margin-left: 10px !important;
    }

    .mr-10sp {
        margin-right: 10px !important;
    }

    .mb-10sp {
        margin-bottom: 10px !important;
    }

    .mt-15sp {
        margin-top: 15px !important;
    }

    .ml-15sp {
        margin-left: 15px !important;
    }

    .mr-15sp {
        margin-right: 15px !important;
    }

    .mb-15sp {
        margin-bottom: 15px !important;
    }

    .mt-20sp {
        margin-top: 20px !important;
    }

    .ml-20sp {
        margin-left: 20px !important;
    }

    .mr-20sp {
        margin-right: 20px !important;
    }

    .mb-20sp {
        margin-bottom: 20px !important;
    }

    .mt-25sp {
        margin-top: 25px !important;
    }

    .ml-25sp {
        margin-left: 25px !important;
    }

    .mr-25sp {
        margin-right: 25px !important;
    }

    .mb-25sp {
        margin-bottom: 25px !important;
    }

    .mt-30sp {
        margin-top: 30px !important;
    }

    .ml-30sp {
        margin-left: 30px !important;
    }

    .mr-30sp {
        margin-right: 30px !important;
    }

    .mb-30sp {
        margin-bottom: 30px !important;
    }

    .mt-35sp {
        margin-top: 35px !important;
    }

    .ml-35sp {
        margin-left: 35px !important;
    }

    .mr-35sp {
        margin-right: 35px !important;
    }

    .mb-35sp {
        margin-bottom: 35px !important;
    }

    .mt-40sp {
        margin-top: 40px !important;
    }

    .ml-40sp {
        margin-left: 40px !important;
    }

    .mr-40sp {
        margin-right: 40px !important;
    }

    .mb-40sp {
        margin-bottom: 40px !important;
    }

    .mt-45sp {
        margin-top: 45px !important;
    }

    .ml-45sp {
        margin-left: 45px !important;
    }

    .mr-45sp {
        margin-right: 45px !important;
    }

    .mb-45sp {
        margin-bottom: 45px !important;
    }

    .mt-50sp {
        margin-top: 50px !important;
    }

    .ml-50sp {
        margin-left: 50px !important;
    }

    .mr-50sp {
        margin-right: 50px !important;
    }

    .mb-50sp {
        margin-bottom: 50px !important;
    }

    .mt-55sp {
        margin-top: 55px !important;
    }

    .ml-55sp {
        margin-left: 55px !important;
    }

    .mr-55sp {
        margin-right: 55px !important;
    }

    .mb-55sp {
        margin-bottom: 55px !important;
    }

    .mt-60sp {
        margin-top: 60px !important;
    }

    .ml-60sp {
        margin-left: 60px !important;
    }

    .mr-60sp {
        margin-right: 60px !important;
    }

    .mb-60sp {
        margin-bottom: 60px !important;
    }

    .mt-65sp {
        margin-top: 65px !important;
    }

    .ml-65sp {
        margin-left: 65px !important;
    }

    .mr-65sp {
        margin-right: 65px !important;
    }

    .mb-65sp {
        margin-bottom: 65px !important;
    }

    .mt-70sp {
        margin-top: 70px !important;
    }

    .ml-70sp {
        margin-left: 70px !important;
    }

    .mr-70sp {
        margin-right: 70px !important;
    }

    .mb-70sp {
        margin-bottom: 70px !important;
    }

    .mt-75sp {
        margin-top: 75px !important;
    }

    .ml-75sp {
        margin-left: 75px !important;
    }

    .mr-75sp {
        margin-right: 75px !important;
    }

    .mb-75sp {
        margin-bottom: 75px !important;
    }

    .mt-80sp {
        margin-top: 80px !important;
    }

    .ml-80sp {
        margin-left: 80px !important;
    }

    .mr-80sp {
        margin-right: 80px !important;
    }

    .mb-80sp {
        margin-bottom: 80px !important;
    }

    .mt-85sp {
        margin-top: 85px !important;
    }

    .ml-85sp {
        margin-left: 85px !important;
    }

    .mr-85sp {
        margin-right: 85px !important;
    }

    .mb-85sp {
        margin-bottom: 85px !important;
    }

    .mt-90sp {
        margin-top: 90px !important;
    }

    .ml-90sp {
        margin-left: 90px !important;
    }

    .mr-90sp {
        margin-right: 90px !important;
    }

    .mb-90sp {
        margin-bottom: 90px !important;
    }

    .mt-95sp {
        margin-top: 95px !important;
    }

    .ml-95sp {
        margin-left: 95px !important;
    }

    .mr-95sp {
        margin-right: 95px !important;
    }

    .mb-95sp {
        margin-bottom: 95px !important;
    }

    .mt-100sp {
        margin-top: 100px !important;
    }

    .ml-100sp {
        margin-left: 100px !important;
    }

    .mr-100sp {
        margin-right: 100px !important;
    }

    .mb-100sp {
        margin-bottom: 100px !important;
    }
}

/*Ajust Margin End*/

.ta-left {
    text-align: left;
}

.ta-center {
    text-align: center;
}

.ta-right {
    text-align: right;
}

.m-hero {
    min-width: 320px;
}

.m-hero_inner,
.m-nav-local_panel .m-nav-local_list {
    margin: 0 auto;
    max-width: 1200px;
}

.js-carousel_panel-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}

.js-carousel_panel-list>div.is-hide,
.js-carousel_panel-list>li.is-hide {
    display: none;
}

.js-carousel_panel-list>div img,
.js-carousel_panel-list>li img {
    pointer-events: none;
}

.js-carousel_panel-list.is-active {
    -webkit-user-select: none;
    -ms-user-select: none;
    -moz-user-select: none;
    user-select: none;
}

.js-carousel_panel-list.is-active>div,
.js-carousel_panel-list.is-active>li {
    -ms-flex-preferred-size: auto;
    flex-basis: auto;
}

.js-carousel_pause:not(.is-active),
.js-carousel_play:not(.is-active) {
    display: none;
}

.js-carousel-hero:not(.carousel),
.js-carousel-index:not(.carousel),
.js-carousel:not(.carousel) {
    padding-bottom: 52px;
}

.js-carousel-hero:not(.carousel) .js-carousel_control,
.js-carousel-index:not(.carousel) .js-carousel_control,
.js-carousel:not(.carousel) .js-carousel_control {
    display: none;
}

.carousel.is-animation .js-carousel_panel-list {
    -webkit-transition: -webkit-transform 1s cubic-bezier(0.25, 0.8, 0.25, 1);
    transition: -webkit-transform 1s cubic-bezier(0.25, 0.8, 0.25, 1);
    transition: transform 1s cubic-bezier(0.25, 0.8, 0.25, 1);
    transition: transform 1s cubic-bezier(0.25, 0.8, 0.25, 1), -webkit-transform 1s cubic-bezier(0.25, 0.8, 0.25, 1);
}

.carousel:not(.is-built) .js-carousel_control {
    display: none;
}

.carousel_counter {
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}

.carousel_number {
    vertical-align: baseline;
}

.carousel_number.current {
    font-size: 20px;
    font-size: 1.25rem;
    margin-right: 5px;
    line-height: 1.1;
}

.carousel_number.max {
    font-size: 14px;
    font-size: 0.875rem;
    margin-left: 5px;
    line-height: 1.14;
}

.carousel_indicator {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    margin-left: 15px;
    position: relative;
    width: 100px;
}

.carousel_indicator:after,
.carousel_indicator:before {
    border-top: 0 solid #007FA5;
    content: "";
    display: block;
    left: 0;
    margin-top: -2px;
    position: absolute;
    top: 50%;
    -webkit-transform-origin: left top;
    transform-origin: left top;
    -webkit-transition: -webkit-transform 0.6s cubic-bezier(0.25, 0.8, 0.25, 1);
    transition: -webkit-transform 0.6s cubic-bezier(0.25, 0.8, 0.25, 1);
    transition: transform 0.6s cubic-bezier(0.25, 0.8, 0.25, 1);
    transition: transform 0.6s cubic-bezier(0.25, 0.8, 0.25, 1), -webkit-transform 0.6s cubic-bezier(0.25, 0.8, 0.25, 1);
    width: 100px;
    z-index: 1;
}

.carousel_indicator:before {
    -webkit-transform: scaleX(0);
    transform: scaleX(0);
}

.is-grow .carousel_indicator:before {
    border-top-width: 4px;
    -webkit-transform: scale(1);
    transform: scale(1);
}

.is-shrink .carousel_indicator:after {
    border-top-width: 4px;
    -webkit-transform: scaleX(0);
    transform: scaleX(0);
}

.carousel_indicator>li {
    -ms-flex-preferred-size: 100%;
    flex-basis: 100%;
    font-size: 0;
    position: relative;
}

.carousel_indicator>li:after,
.carousel_indicator>li:before {
    content: "";
    display: block;
    width: 100%;
}

.carousel_indicator>li:before {
    border-top: 1px solid #007FA5;
}

.carousel_indicator>li:after {
    border-top: 4px solid #007FA5;
    margin-top: -2px;
    position: absolute;
    top: 50%;
    -webkit-transform-origin: left top;
    transform-origin: left top;
    -webkit-transition: -webkit-transform 0.3s cubic-bezier(0.25, 0.8, 0.25, 1);
    transition: -webkit-transform 0.3s cubic-bezier(0.25, 0.8, 0.25, 1);
    transition: transform 0.3s cubic-bezier(0.25, 0.8, 0.25, 1);
    transition: transform 0.3s cubic-bezier(0.25, 0.8, 0.25, 1), -webkit-transform 0.3s cubic-bezier(0.25, 0.8, 0.25, 1);
}

.carousel_indicator>li>span {
    position: absolute;
    top: 50%;
}

.carousel_indicator>li[aria-current]:after {
    -webkit-transform: scale(1);
    transform: scale(1);
}

.carousel_indicator>li[aria-current]~li:after {
    -webkit-transform: scaleX(0);
    transform: scaleX(0);
}

.carousel_indicator>li.is-hide {
    display: none;
}

.is-grow .carousel_indicator>li:not(:first-child):after,
.is-shrink .carousel_indicator>li:not(:first-child):after {
    border-top-width: 0;
}

.m-hero {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    min-height: 260px;
    overflow: hidden;
    padding: 25px 24px;
    position: relative;
}

.m-hero_inner {
    width: 100%;
}

.m-hero_inner> :first-child {
    margin-top: 0;
}

.m-hero_inner> :first-child.m-list-label {
    margin-top: -10px;
}

.m-hero_inner> :first-child.m-list-label.square {
    margin-top: -10px;
}

@media print,
screen and (min-width: 769px) {
    .m-hero_inner> :first-child.m-list-label {
        margin-top: -14px;
    }

    .m-hero_inner> :first-child.m-list-label.square {
        margin-top: -8px;
    }
}

.m-hero_inner> :first-child.m-link-list.horizontal {
    margin-top: -10px;
}

.m-hero_inner> :first-child.m-link-list.horizontal-right {
    margin-top: -10px;
}

.m-hero_inner> :first-child.m-form-layout {
    margin-top: -10px;
}

.m-hero_inner> :last-child {
    margin-bottom: 0;
}

.m-hero_image {
    height: 100%;
    left: 0;
    z-index: -1;
}

.m-hero_image,
.m-hero_image img {
    position: absolute;
    top: 0;
    width: 100%;
}

.m-hero_image img {
    height: auto;
    max-width: inherit;
    right: 0;
}

.m-hero_heading {
    font-size: 22px;
    font-size: 1.375rem;
}

.m-hero_heading,
.m-hero_text {
    text-shadow: 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff;
}

.m-hero_text {
    margin-top: 20px;
}

.m-hero.corporate {
    margin-top: 10px;
    min-height: 308px;
}

.m-hero.corporate .m-hero_heading {
    color: #c01;
}

.m-hero.corporate .m-hero_image {
    background-color: #f8f8f8;
}

.m-hero.corporate .m-hero_image img {
    bottom: 0;
    max-height: 308px;
    top: auto;
    width: auto;
}

@media print,
screen and (min-width: 769px) {
    .m-hero {
        min-height: 350px;
        padding: 40px 30px;
    }

    .m-hero_inner {
        padding: 0 40px;
    }

    .m-hero_image img {
        height: 100%;
        width: auto;
    }

    .m-hero_heading {
        font-size: 30px;
        font-size: 1.875rem;
    }

    .m-hero.corporate {
        margin-top: 10px;
        min-height: 350px;
    }

    .m-hero.corporate .m-hero_image img {
        bottom: 0;
        max-height: 100%;
        top: auto;
    }
}

@media print,
screen and (min-width: 1025px) and (max-width: 1200px) {
    .m-hero.corporate .m-hero_image img {
        right: -150px;
    }
}

@media print,
screen and (min-width: 769px) and (max-width: 1024px) {
    .m-hero.corporate .m-hero_image img {
        right: -250px;
    }
}

.m-carousel-hero_panel-list>li img,
.m-carousel_panel-list>li img {
    width: 100%;
}

.m-carousel-hero_panel-list>li>a,
.m-carousel_panel-list>li>a {
    display: block;
}

.m-carousel-hero_panel-list>li a:focus,
.m-carousel_panel-list>li a:focus {
    outline: 1px solid #000;
    outline-offset: -1px;
}

.m-carousel-hero_control-wrap,
.m-carousel-index_control-wrap,
.m-carousel_control-wrap {
    padding: 0 15px;
}

.m-carousel-hero_control,
.m-carousel-index_control,
.m-carousel_control {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-top: 20px;
}

.m-carousel-hero_nav,
.m-carousel-index_nav,
.m-carousel_nav {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-left: 15px;
}

.m-carousel-hero_nav>li+li,
.m-carousel-index_nav>li+li,
.m-carousel_nav>li+li {
    margin-left: 5px;
}

.m-carousel-hero_button,
.m-carousel-index_button,
.m-carousel_button {
    margin-left: 15px;
}

.m-carousel-hero_next,
.m-carousel-hero_pause,
.m-carousel-hero_play,
.m-carousel-hero_prev,
.m-carousel-index_next,
.m-carousel-index_pause,
.m-carousel-index_play,
.m-carousel-index_prev,
.m-carousel_next,
.m-carousel_pause,
.m-carousel_play,
.m-carousel_prev {
    display: block;
    font-size: 0;
    height: 28px;
    width: 28px;
}

.m-carousel-hero_next,
.m-carousel-hero_prev,
.m-carousel-index_next,
.m-carousel-index_prev,
.m-carousel_next,
.m-carousel_prev {
    background-color: transparent;
    border: 0;
    position: relative;
}

.m-carousel-hero_next:after,
.m-carousel-hero_prev:after,
.m-carousel-index_next:after,
.m-carousel-index_prev:after,
.m-carousel_next:after,
.m-carousel_prev:after {
    border-bottom: 2px solid #007FA5;
    border-left-width: 0;
    border-right: 2px solid #007FA5;
    border-top-width: 0;
    content: "";
    height: 12px;
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%) rotate(135deg);
    transform: translateY(-50%) rotate(135deg);
    width: 12px;
}

.m-carousel-hero_prev:after,
.m-carousel-index_prev:after,
.m-carousel_prev:after {
    left: 12px;
}

.m-carousel-hero_next:after,
.m-carousel-index_next:after,
.m-carousel_next:after {
    right: 12px;
    -webkit-transform: translateY(-50%) rotate(-45deg);
    transform: translateY(-50%) rotate(-45deg);
}

.m-carousel-hero_pause,
.m-carousel-hero_play,
.m-carousel-index_pause,
.m-carousel-index_play,
.m-carousel_pause,
.m-carousel_play {
    background-color: #fff;
    border: 1px solid #007FA5;
    border-radius: 2px;
    padding: 0;
    position: relative;
}

.m-carousel-hero_pause:after,
.m-carousel-hero_pause:before,
.m-carousel-index_pause:after,
.m-carousel-index_pause:before,
.m-carousel_pause:after,
.m-carousel_pause:before {
    background-color: #007FA5;
    content: "";
    display: block;
    height: 12px;
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    width: 2px;
}

.m-carousel-hero_pause:before,
.m-carousel-index_pause:before,
.m-carousel_pause:before {
    left: 8px;
}

.m-carousel-hero_pause:after,
.m-carousel-index_pause:after,
.m-carousel_pause:after {
    right: 8px;
}

.m-carousel-hero_play:before,
.m-carousel-index_play:before,
.m-carousel_play:before {
    border-bottom: 6px solid transparent;
    border-left: 6px solid #007FA5;
    border-top: 6px solid transparent;
    content: "";
    display: block;
    left: 10px;
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}

.m-carousel {
    margin: 30px auto 0;
    max-width: 600px;
}

.m-carousel_slider {
    overflow: hidden;
}

.m-carousel_control {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.m-carousel-hero {
    margin-bottom: 20px;
    overflow: hidden;
}

.m-carousel-hero_slider {
    margin: 0 auto;
    max-width: 1200px;
}

.m-carousel-hero_control {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    margin-left: auto;
    margin-right: auto;
    max-width: 1200px;
}

.m-carousel-hero:not(.carousel) .m-carousel-hero_panel-list {
    position: relative;
    -webkit-transform: translateX(0) !important;
    transform: translateX(0) !important;
    width: 100% !important;
}

.m-carousel-hero:not(.carousel) .m-carousel-hero_panel-list:before {
    content: "";
    display: block;
    padding-top: 94.66667%;
    width: 100%;
}

.m-carousel-hero .m-carousel-hero_panel-list>li img {
    vertical-align: text-top;
}

.m-carousel-hero:not(.carousel) .m-carousel-hero_panel-list>li {
    left: 0;
    position: absolute;
    top: 0;
}

.m-carousel-hero:not(.carousel) .m-carousel-hero_panel-list>li:not(:first-child) {
    display: none;
}

@media print,
screen and (min-width: 415px) {
    .m-carousel-hero:not(.carousel) .m-carousel-hero_panel-list:before {
        padding-top: 31.66667%;
    }
}

.m-carousel-index {
    margin-top: 30px;
}

.m-carousel-index_control-wrap {
    padding: 0;
}

.m-carousel-index_slider {
    overflow: hidden;
}

.m-carousel-index_content> :first-child {
    margin-top: 0;
}

.m-carousel-index .carousel_indicator {
    width: 130px;
}

.m-carousel-index .carousel_indicator:after,
.m-carousel-index .carousel_indicator:before {
    width: 130px;
}

.m-carousel-index_nav {
    margin-left: auto;
}

.m-carousel-index_nav>li+li {
    margin-left: 35px;
}

.m-carousel-index_next:after,
.m-carousel-index_prev:after {
    border-bottom-width: 3px;
    border-right-width: 3px;
    height: 17px;
    width: 17px;
}

@media print,
screen and (min-width: 769px) {

    .m-carousel-hero .carousel_indicator,
    .m-carousel-index .carousel_indicator,
    .m-carousel .carousel_indicator {
        width: 200px;
    }

    .m-carousel-hero .carousel_indicator:after,
    .m-carousel-hero .carousel_indicator:before,
    .m-carousel-index .carousel_indicator:after,
    .m-carousel-index .carousel_indicator:before,
    .m-carousel .carousel_indicator:after,
    .m-carousel .carousel_indicator:before {
        width: 200px;
    }

    .m-carousel-hero_nav,
    .m-carousel-index_nav,
    .m-carousel_nav {
        margin-left: 40px;
    }

    .m-carousel-hero_nav>li+li,
    .m-carousel-index_nav>li+li,
    .m-carousel_nav>li+li {
        margin-left: 30px;
    }

    .m-carousel-hero_button,
    .m-carousel-index_button,
    .m-carousel_button {
        margin-left: 40px;
    }

    .m-carousel {
        margin-top: 40px;
    }

    .m-carousel-hero {
        margin-bottom: 20px;
    }

    .m-carousel-hero_control {
        -webkit-box-pack: end;
        -ms-flex-pack: end;
        justify-content: flex-end;
    }

    .m-carousel-index {
        margin-top: 40px;
    }

    .m-carousel-index_control {
        -webkit-box-pack: end;
        -ms-flex-pack: end;
        justify-content: flex-end;
    }
}


@media screen and (max-width: 767px) {
    header.global .sp_header nav.global .sub_group.single li {
        width: 100%;
        float: none;
    }

    header.global .sp_header .search_block .input {
        font-size: 16px;
        transform: scale(1.0);
    }

}


/*=========ページトップのためのCSS===============*/
/*リンクの形状*/
#page-top a {
    display: inline-block;
    width: 75px;
    height: 75px;
    -webkit-transition: all .3s;
    transition: all .3s;
}

#page-top a:hover {
    opacity: .7;
}

@media (max-width: 767px) {
    #page-top a {
        width: 46px;
        height: 46px;
    }
}

/*リンクを右下に固定*/
#page-top {
    position: fixed;
    right: 40px;
    z-index: 20;
    opacity: 0;
    -webkit-transform: translateY(100px);
    transform: translateY(100px);
}

#page-top.stop {
    position: absolute;
    top: -100px;
    z-index: 2;
    opacity: 1;
    -webkit-transform: translateY(100px);
    transform: translateY(100px);
}

@media (max-width: 767px) {
    #page-top {
        right: 10px;
    }

    #page-top.stop {
        position: absolute;
        top: -70px;
    }
}

/*　上に上がる動き　*/
#page-top.UpMove {
    -webkit-animation: UpAnime 0.5s forwards;
    animation: UpAnime 0.5s forwards;
}

@-webkit-keyframes UpAnime {
    from {
        opacity: 0;
        -webkit-transform: translateY(100px);
        transform: translateY(100px);
    }

    to {
        opacity: 1;
        -webkit-transform: translateY(0);
        transform: translateY(0);
    }
}

@keyframes UpAnime {
    from {
        opacity: 0;
        -webkit-transform: translateY(100px);
        transform: translateY(100px);
    }

    to {
        opacity: 1;
        -webkit-transform: translateY(0);
        transform: translateY(0);
    }
}

/*　下に下がる動き　*/
#page-top.DownMove {
    -webkit-animation: DownAnime 0.5s forwards;
    animation: DownAnime 0.5s forwards;
}

@-webkit-keyframes DownAnime {
    from {
        opacity: 1;
        -webkit-transform: translateY(0);
        transform: translateY(0);
    }

    to {
        opacity: 1;
        -webkit-transform: translateY(100px);
        transform: translateY(100px);
    }
}

@keyframes DownAnime {
    from {
        opacity: 1;
        -webkit-transform: translateY(0);
        transform: translateY(0);
    }

    to {
        opacity: 1;
        -webkit-transform: translateY(100px);
        transform: translateY(100px);
    }
}

#footer {
    position: relative;
}

/*Newsroom Styling Start*/
h2.large_title {
    position: relative;
    padding-bottom: 15px;
    font-size: 28px;
    font-size: 1.75rem;
    font-weight: 500;
    margin: 80px auto 0;
    border-bottom: 3px solid #CCEFF8;
}

h2.large_title+* {
    margin-top: 40px;
}

h2.large_title::before {
    content: "";
    position: absolute;
    bottom: -3px;
    left: 0;
    display: block;
    width: 100px;
    height: 3px;
    background-color: #007FA5;
}

h2.large_title span.title_text {
    border-left: 0;
    padding: 0;
}

@media (max-width: 767px) {
    h2.large_title {
        margin: 40px auto 0;
        padding-bottom: 10px;
        font-size: 20px;
        font-size: 1.25rem;
    }

    h2.large_title+* {
        margin-top: 20px;
    }
}

h3.small_title {
    margin-top: 60px;
    padding: 8px 20px;
    font-size: 22px;
    font-size: 1.375rem;
    font-weight: 500;
    background-color: #F2F2F2;
    border-left: 0;
    border-radius: 6px;
}

h3.small_title+* {
    margin-top: 30px;
}

@media (max-width: 767px) {
    h3.small_title {
        font-size: 16px;
        font-size: 1.0rem;
        margin-top: 30px;
    }

    h3.small_title+* {
        margin-top: 14px;
    }
}

#newsroom .mm-news-list {
    padding-left: 0 !important;
}

#newsroom .mm-news-list .mm-news-list__item {
    margin-bottom: 0;
}

#newsroom .mm-news-list .mm-news-list__item::before {
    display: none;
}

@media screen and (min-width:769px) {
    #newsroom .mm-news-list .mm-news-list__item .mm-news-list__ttl {
        display: flex;
        align-items: center;
    }
}

@media screen and (max-width:768px) {
    #newsroom .mm-news-list .mm-news-list__item .mm-news-list__ttl .mm-news-list__ttl_icon-pdf {
        vertical-align: middle;
    }

}

/*Newsroom Styling End*/

/*NewsDetail Styling Start*/

.mm-article ul li:before {
    display: none !important;
}

.mm-article .mm-table.vertical tbody tr th {
    background: #EEEFEF;
    border: 1px solid #BABDBE;
    padding: 20px;
    text-align: left;
}

.mm-article .mm-table tbody tr td {
    border: 1px solid #BABDBE;
    padding: 20px;
}

@media screen and (max-width: 768px) {
    .mm-article .mm-table.vertical tbody tr td {
        border-top: 0;
        border-bottom: 0;
    }

    .mm-article .mm-table.vertical tbody tr td.last {
        border-bottom: 1px solid #BABDBE;
    }
}

/*NewsDetail Styling End*/

/*Contactform Styling Start*/
section.contact_form.container {
    padding: 0;
}

/*Contactform Styling End*/

/*Sitemap Styling Start*/
.sitemap .item a {
    width: fit-content;
}

/*Sitemap Styling End*/

/*MedicalDialog Styling Start*/
.med_confirm .modal .confirm li a {
    background: #007FA5 !important;
}

.med_confirm.custom .modal .confirm {
    margin: 50px 0 25px;
}

.article .block ul li:before {
    display: none;
}

.med_confirm.custom .modal .note {
    font-size: 10px;
    font-size: 1.0rem;
}

.med_confirm.custom .modal .warning {
    padding: 0 90px 30px;
}

.med_confirm.custom .modal .warning p+p {
    margin-top: 10px;
}

.med_confirm.custom .modal {
    height: 500px;
}

.med_confirm.custom .overlay.show,
.med_confirm.custom .modal.show {
    display: block;
}

.med_confirm.custom .modal .confirm li:nth-of-type(2) a {
    line-height: 2.9;
}

@media only screen and (max-width: 767px) {
    .med_confirm.custom .modal {
        height: 450px;
        padding: 15px;
    }

    .med_confirm.custom .modal .title {
        font-size: 10px;
        font-size: 1.0rem;
    }

    .med_confirm.custom .modal .note {
        text-align: left;
    }

    .med_confirm.custom .modal .warning {
        padding: 0;
        width: 100%;
    }

    .med_confirm.custom .modal .warning p {
        text-align: left;
    }

    .med_confirm.custom .modal .warning p+p {
        margin-top: 10px;
    }

    .med_confirm.custom .modal .confirm {
        margin: 25px 0;
    }

    .med_confirm.custom .modal .confirm ul {
        width: 100%;
    }

    .med_confirm.custom .modal .confirm li {
        width: 48%;
    }

    .med_confirm.custom .modal .confirm li:nth-of-type(2) a {
        line-height: 2.7;
    }
}

/*MedicalDialog Styling Start*/

/*Footer Styling Start*/
footer {
    margin-top: 150px;
}

/*Footer Styling End*/