@font-face {
    font-family: swiper-icons;
    src: url("data:application/font-woff;charset=utf-8;base64, d09GRgABAAAAAAZgABAAAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABGRlRNAAAGRAAAABoAAAAci6qHkUdERUYAAAWgAAAAIwAAACQAYABXR1BPUwAABhQAAAAuAAAANuAY7+xHU1VCAAAFxAAAAFAAAABm2fPczU9TLzIAAAHcAAAASgAAAGBP9V5RY21hcAAAAkQAAACIAAABYt6F0cBjdnQgAAACzAAAAAQAAAAEABEBRGdhc3AAAAWYAAAACAAAAAj//wADZ2x5ZgAAAywAAADMAAAD2MHtryVoZWFkAAABbAAAADAAAAA2E2+eoWhoZWEAAAGcAAAAHwAAACQC9gDzaG10eAAAAigAAAAZAAAArgJkABFsb2NhAAAC0AAAAFoAAABaFQAUGG1heHAAAAG8AAAAHwAAACAAcABAbmFtZQAAA/gAAAE5AAACXvFdBwlwb3N0AAAFNAAAAGIAAACE5s74hXjaY2BkYGAAYpf5Hu/j+W2+MnAzMYDAzaX6QjD6/4//Bxj5GA8AuRwMYGkAPywL13jaY2BkYGA88P8Agx4j+/8fQDYfA1AEBWgDAIB2BOoAeNpjYGRgYNBh4GdgYgABEMnIABJzYNADCQAACWgAsQB42mNgYfzCOIGBlYGB0YcxjYGBwR1Kf2WQZGhhYGBiYGVmgAFGBiQQkOaawtDAoMBQxXjg/wEGPcYDDA4wNUA2CCgwsAAAO4EL6gAAeNpj2M0gyAACqxgGNWBkZ2D4/wMA+xkDdgAAAHjaY2BgYGaAYBkGRgYQiAHyGMF8FgYHIM3DwMHABGQrMOgyWDLEM1T9/w8UBfEMgLzE////P/5//f/V/xv+r4eaAAeMbAxwIUYmIMHEgKYAYjUcsDAwsLKxc3BycfPw8jEQA/gZBASFhEVExcQlJKWkZWTl5BUUlZRVVNXUNTQZBgMAAMR+E+gAEQFEAAAAKgAqACoANAA+AEgAUgBcAGYAcAB6AIQAjgCYAKIArAC2AMAAygDUAN4A6ADyAPwBBgEQARoBJAEuATgBQgFMAVYBYAFqAXQBfgGIAZIBnAGmAbIBzgHsAAB42u2NMQ6CUAyGW568x9AneYYgm4MJbhKFaExIOAVX8ApewSt4Bic4AfeAid3VOBixDxfPYEza5O+Xfi04YADggiUIULCuEJK8VhO4bSvpdnktHI5QCYtdi2sl8ZnXaHlqUrNKzdKcT8cjlq+rwZSvIVczNiezsfnP/uznmfPFBNODM2K7MTQ45YEAZqGP81AmGGcF3iPqOop0r1SPTaTbVkfUe4HXj97wYE+yNwWYxwWu4v1ugWHgo3S1XdZEVqWM7ET0cfnLGxWfkgR42o2PvWrDMBSFj/IHLaF0zKjRgdiVMwScNRAoWUoH78Y2icB/yIY09An6AH2Bdu/UB+yxopYshQiEvnvu0dURgDt8QeC8PDw7Fpji3fEA4z/PEJ6YOB5hKh4dj3EvXhxPqH/SKUY3rJ7srZ4FZnh1PMAtPhwP6fl2PMJMPDgeQ4rY8YT6Gzao0eAEA409DuggmTnFnOcSCiEiLMgxCiTI6Cq5DZUd3Qmp10vO0LaLTd2cjN4fOumlc7lUYbSQcZFkutRG7g6JKZKy0RmdLY680CDnEJ+UMkpFFe1RN7nxdVpXrC4aTtnaurOnYercZg2YVmLN/d/gczfEimrE/fs/bOuq29Zmn8tloORaXgZgGa78yO9/cnXm2BpaGvq25Dv9S4E9+5SIc9PqupJKhYFSSl47+Qcr1mYNAAAAeNptw0cKwkAAAMDZJA8Q7OUJvkLsPfZ6zFVERPy8qHh2YER+3i/BP83vIBLLySsoKimrqKqpa2hp6+jq6RsYGhmbmJqZSy0sraxtbO3sHRydnEMU4uR6yx7JJXveP7WrDycAAAAAAAH//wACeNpjYGRgYOABYhkgZgJCZgZNBkYGLQZtIJsFLMYAAAw3ALgAeNolizEKgDAQBCchRbC2sFER0YD6qVQiBCv/H9ezGI6Z5XBAw8CBK/m5iQQVauVbXLnOrMZv2oLdKFa8Pjuru2hJzGabmOSLzNMzvutpB3N42mNgZGBg4GKQYzBhYMxJLMlj4GBgAYow/P/PAJJhLM6sSoWKfWCAAwDAjgbRAAB42mNgYGBkAIIbCZo5IPrmUn0hGA0AO8EFTQAA") format("woff");
    font-weight: 400;
    font-style: normal;
}

:root {
    --swiper-theme-color: #007aff;
}

.swiper-container {
    margin-left: auto;
    margin-right: auto;
    position: relative;
    overflow: hidden;
    list-style: none;
    padding: 0px;
    z-index: 1;
}

.swiper-container-vertical > .swiper-wrapper {
    flex-direction: column;
}

.swiper-wrapper {
    position: relative;
    width: 100%;
    height: 100%;
    z-index: 1;
    display: flex;
    transition-property: transform, -webkit-transform;
    box-sizing: content-box;
}

.swiper-container-android .swiper-slide, .swiper-wrapper {
    transform: translate3d(0px, 0px, 0px);
}

.swiper-container-multirow > .swiper-wrapper {
    flex-wrap: wrap;
}

.swiper-container-multirow-column > .swiper-wrapper {
    flex-flow: column wrap;
}

.swiper-container-free-mode > .swiper-wrapper {
    transition-timing-function: ease-out;
    margin: 0px auto;
}

.swiper-slide {
    flex-shrink: 0;
    width: 100%;
    height: 100%;
    position: relative;
    transition-property: transform, -webkit-transform;
}

.swiper-slide-invisible-blank {
    visibility: hidden;
}

.swiper-container-autoheight, .swiper-container-autoheight .swiper-slide {
    height: auto;
}

.swiper-container-autoheight .swiper-wrapper {
    align-items: flex-start;
    transition-property: transform, height, -webkit-transform;
}

.swiper-container-3d {
    perspective: 1200px;
}

.swiper-container-3d .swiper-wrapper, .swiper-container-3d .swiper-slide, .swiper-container-3d .swiper-slide-shadow-left, .swiper-container-3d .swiper-slide-shadow-right, .swiper-container-3d .swiper-slide-shadow-top, .swiper-container-3d .swiper-slide-shadow-bottom, .swiper-container-3d .swiper-cube-shadow {
    transform-style: preserve-3d;
}

.swiper-container-3d .swiper-slide-shadow-left, .swiper-container-3d .swiper-slide-shadow-right, .swiper-container-3d .swiper-slide-shadow-top, .swiper-container-3d .swiper-slide-shadow-bottom {
    position: absolute;
    left: 0px;
    top: 0px;
    width: 100%;
    height: 100%;
    pointer-events: none;
    z-index: 10;
}

.swiper-container-3d .swiper-slide-shadow-left {
    background-image: linear-gradient(to left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}

.swiper-container-3d .swiper-slide-shadow-right {
    background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}

.swiper-container-3d .swiper-slide-shadow-top {
    background-image: linear-gradient(to top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}

.swiper-container-3d .swiper-slide-shadow-bottom {
    background-image: linear-gradient(rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}

.swiper-container-css-mode > .swiper-wrapper {
    overflow: auto;
}

.swiper-container-css-mode > .swiper-wrapper::-webkit-scrollbar {
    display: none;
}

.swiper-container-css-mode > .swiper-wrapper > .swiper-slide {
    scroll-snap-align: start;
}

.swiper-container-horizontal.swiper-container-css-mode > .swiper-wrapper {
    scroll-snap-type: x mandatory;
}

.swiper-container-vertical.swiper-container-css-mode > .swiper-wrapper {
    scroll-snap-type: y mandatory;
}

:root {
    --swiper-navigation-size: 44px;
}

.swiper-button-prev, .swiper-button-next {
    position: absolute;
    top: 50%;
    width: calc(var(--swiper-navigation-size)/44*27);
    height: var(--swiper-navigation-size);
    margin-top: calc(-1*var(--swiper-navigation-size)/2);
    z-index: 10;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--swiper-navigation-color, var(--swiper-theme-color));
}

.swiper-button-prev.swiper-button-disabled, .swiper-button-next.swiper-button-disabled {
    opacity: 0.35;
    cursor: auto;
    pointer-events: none;
}

.swiper-button-prev::after, .swiper-button-next::after {
    font-family: swiper-icons;
    font-size: var(--swiper-navigation-size);
    letter-spacing: 0px;
    font-variant: initial;
    line-height: 1;
    text-transform: none !important;
}

.swiper-button-prev, .swiper-container-rtl .swiper-button-next {
    left: 10px;
    right: auto;
}

.swiper-button-prev::after, .swiper-container-rtl .swiper-button-next::after {
    content: "prev";
}

.swiper-button-next, .swiper-container-rtl .swiper-button-prev {
    right: 10px;
    left: auto;
}

.swiper-button-next::after, .swiper-container-rtl .swiper-button-prev::after {
    content: "next";
}

.swiper-button-prev.swiper-button-white, .swiper-button-next.swiper-button-white {
    --swiper-navigation-color: #ffffff;
}

.swiper-button-prev.swiper-button-black, .swiper-button-next.swiper-button-black {
    --swiper-navigation-color: #000000;
}

.swiper-button-lock {
    display: none;
}

.swiper-pagination {
    position: absolute;
    text-align: center;
    transition: opacity 300ms ease 0s;
    transform: translate3d(0px, 0px, 0px);
    z-index: 10;
}

.swiper-pagination.swiper-pagination-hidden {
    opacity: 0;
}

.swiper-pagination-fraction, .swiper-pagination-custom, .swiper-container-horizontal > .swiper-pagination-bullets {
    bottom: 10px;
    left: 0px;
    width: 100%;
}

.swiper-pagination-bullets-dynamic {
    overflow: hidden;
    font-size: 0px;
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
    transform: scale(0.33);
    position: relative;
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active {
    transform: scale(1);
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-main {
    transform: scale(1);
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev {
    transform: scale(0.66);
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev-prev {
    transform: scale(0.33);
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next {
    transform: scale(0.66);
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next-next {
    transform: scale(0.33);
}

.swiper-pagination-bullet {
    width: 8px;
    height: 8px;
    display: inline-block;
    border-radius: 100%;
    background: rgb(0, 0, 0);
    opacity: 0.2;
}

button.swiper-pagination-bullet {
    border: none;
    margin: 0px;
    padding: 0px;
    box-shadow: none;
    appearance: none;
}

.swiper-pagination-clickable .swiper-pagination-bullet {
    cursor: pointer;
}

.swiper-pagination-bullet-active {
    opacity: 1;
    background: var(--swiper-pagination-color, var(--swiper-theme-color));
}

.swiper-container-vertical > .swiper-pagination-bullets {
    right: 10px;
    top: 50%;
    transform: translate3d(0px, -50%, 0px);
}

.swiper-container-vertical > .swiper-pagination-bullets .swiper-pagination-bullet {
    margin: 6px 0px;
    display: block;
}

.swiper-container-vertical > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
    top: 50%;
    transform: translateY(-50%);
    width: 8px;
}

.swiper-container-vertical > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
    display: inline-block;
    transition: transform 200ms ease 0s, top 200ms ease 0s, -webkit-transform 200ms ease 0s;
}

.swiper-container-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet {
    margin: 0px 4px;
}

.swiper-container-horizontal > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
    left: 50%;
    transform: translateX(-50%);
    white-space: nowrap;
}

.swiper-container-horizontal > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
    transition: transform 200ms ease 0s, left 200ms ease 0s, -webkit-transform 200ms ease 0s;
}

.swiper-container-horizontal.swiper-container-rtl > .swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
    transition: transform 200ms ease 0s, right 200ms ease 0s, -webkit-transform 200ms ease 0s;
}

.swiper-pagination-progressbar {
    background: rgba(0, 0, 0, 0.25);
    position: absolute;
}

.swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
    background: var(--swiper-pagination-color, var(--swiper-theme-color));
    position: absolute;
    left: 0px;
    top: 0px;
    width: 100%;
    height: 100%;
    transform: scale(0);
    transform-origin: left top;
}

.swiper-container-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
    transform-origin: right top;
}

.swiper-container-horizontal > .swiper-pagination-progressbar, .swiper-container-vertical > .swiper-pagination-progressbar.swiper-pagination-progressbar-opposite {
    width: 100%;
    height: 4px;
    left: 0px;
    top: 0px;
}

.swiper-container-vertical > .swiper-pagination-progressbar, .swiper-container-horizontal > .swiper-pagination-progressbar.swiper-pagination-progressbar-opposite {
    width: 4px;
    height: 100%;
    left: 0px;
    top: 0px;
}

.swiper-pagination-white {
    --swiper-pagination-color: #ffffff;
}

.swiper-pagination-black {
    --swiper-pagination-color: #000000;
}

.swiper-pagination-lock {
    display: none;
}

.swiper-scrollbar {
    border-radius: 10px;
    position: relative;
    background: rgba(0, 0, 0, 0.1);
}

.swiper-container-horizontal > .swiper-scrollbar {
    position: absolute;
    left: 1%;
    bottom: 3px;
    z-index: 50;
    height: 5px;
    width: 98%;
}

.swiper-container-vertical > .swiper-scrollbar {
    position: absolute;
    right: 3px;
    top: 1%;
    z-index: 50;
    width: 5px;
    height: 98%;
}

.swiper-scrollbar-drag {
    height: 100%;
    width: 100%;
    position: relative;
    background: rgba(0, 0, 0, 0.5);
    border-radius: 10px;
    left: 0px;
    top: 0px;
}

.swiper-scrollbar-cursor-drag {
    cursor: move;
}

.swiper-scrollbar-lock {
    display: none;
}

.swiper-zoom-container {
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
}

.swiper-zoom-container > img, .swiper-zoom-container > svg, .swiper-zoom-container > canvas {
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
}

.swiper-slide-zoomed {
    cursor: move;
}

.swiper-lazy-preloader {
    width: 42px;
    height: 42px;
    position: absolute;
    left: 50%;
    top: 50%;
    margin-left: -21px;
    margin-top: -21px;
    z-index: 10;
    transform-origin: 50% center;
    animation: 1s linear 0s infinite normal none running swiper-preloader-spin;
    box-sizing: border-box;
    border-top-style: ;
    border-top-width: ;
    border-right-color: ;
    border-right-style: ;
    border-right-width: ;
    border-bottom-color: ;
    border-bottom-style: ;
    border-bottom-width: ;
    border-left-color: ;
    border-left-style: ;
    border-left-width: ;
    border-image-source: ;
    border-image-slice: ;
    border-image-width: ;
    border-image-outset: ;
    border-image-repeat: ;
    border-radius: 50%;
    border-top-color: transparent;
}

.swiper-lazy-preloader-white {
    --swiper-preloader-color: #fff;
}

.swiper-lazy-preloader-black {
    --swiper-preloader-color: #000;
}

@-webkit-keyframes swiper-preloader-spin {
    100% {
        transform: rotate(360deg);
    }
}

@keyframes swiper-preloader-spin {
    100% {
        transform: rotate(360deg);
    }
}

.swiper-container .swiper-notification {
    position: absolute;
    left: 0px;
    top: 0px;
    pointer-events: none;
    opacity: 0;
    z-index: -1000;
}

.swiper-container-fade.swiper-container-free-mode .swiper-slide {
    transition-timing-function: ease-out;
}

.swiper-container-fade .swiper-slide {
    pointer-events: none;
    transition-property: opacity;
}

.swiper-container-fade .swiper-slide .swiper-slide {
    pointer-events: none;
}

.swiper-container-fade .swiper-slide-active, .swiper-container-fade .swiper-slide-active .swiper-slide-active {
    pointer-events: auto;
}

.swiper-container-cube {
    overflow: visible;
}

.swiper-container-cube .swiper-slide {
    pointer-events: none;
    backface-visibility: hidden;
    z-index: 1;
    visibility: hidden;
    transform-origin: 0px 0px;
    width: 100%;
    height: 100%;
}

.swiper-container-cube .swiper-slide .swiper-slide {
    pointer-events: none;
}

.swiper-container-cube.swiper-container-rtl .swiper-slide {
    transform-origin: 100% 0px;
}

.swiper-container-cube .swiper-slide-active, .swiper-container-cube .swiper-slide-active .swiper-slide-active {
    pointer-events: auto;
}

.swiper-container-cube .swiper-slide-active, .swiper-container-cube .swiper-slide-next, .swiper-container-cube .swiper-slide-prev, .swiper-container-cube .swiper-slide-next + .swiper-slide {
    pointer-events: auto;
    visibility: visible;
}

.swiper-container-cube .swiper-slide-shadow-top, .swiper-container-cube .swiper-slide-shadow-bottom, .swiper-container-cube .swiper-slide-shadow-left, .swiper-container-cube .swiper-slide-shadow-right {
    z-index: 0;
    backface-visibility: hidden;
}

.swiper-container-cube .swiper-cube-shadow {
    position: absolute;
    left: 0px;
    bottom: 0px;
    width: 100%;
    height: 100%;
    background: rgb(0, 0, 0);
    opacity: 0.6;
    filter: blur(50px);
    z-index: 0;
}

.swiper-container-flip {
    overflow: visible;
}

.swiper-container-flip .swiper-slide {
    pointer-events: none;
    backface-visibility: hidden;
    z-index: 1;
}

.swiper-container-flip .swiper-slide .swiper-slide {
    pointer-events: none;
}

.swiper-container-flip .swiper-slide-active, .swiper-container-flip .swiper-slide-active .swiper-slide-active {
    pointer-events: auto;
}

.swiper-container-flip .swiper-slide-shadow-top, .swiper-container-flip .swiper-slide-shadow-bottom, .swiper-container-flip .swiper-slide-shadow-left, .swiper-container-flip .swiper-slide-shadow-right {
    z-index: 0;
    backface-visibility: hidden;
}

html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {
    margin: 0px;
    padding: 0px;
    border: 0px;
    font: inherit;
    vertical-align: baseline;
}

article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
    display: block;
}

ol, ul {
    list-style: none;
}

blockquote, q {
    quotes: none;
}

blockquote::before, blockquote::after, q::before, q::after {
    content: none;
}

table {
    border-collapse: collapse;
    border-spacing: 0px;
}

img {
    max-width: 100%;
    height: auto;
    vertical-align: bottom;
}

a:link, a:visited, a:active, a:hover {
    outline: none;
    color: rgb(68, 68, 68);
    text-decoration: none;
}

.cf::before, .cf::after {
    content: "";
    display: table;
}

.cf::after {
    clear: both;
}

.clear {
    clear: both;
}

html {
    font-size: 62.5%;
}

body {
    background: none;
    text-align: left;
    font-family: "Noto Serif JP", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "ＭＳ Ｐ明朝", "MS PMincho", "serif";
    font-size: 1.6rem;
    font-feature-settings: "palt";
    line-height: 1.8;
    color: rgb(68, 68, 68);
    text-size-adjust: none;
    -webkit-font-smoothing: antialiased;
}

h1, h2, h3, h4, h5, h6 {
    line-height: 1.4;
}

.sans {
    font-family: "Noto Serif JP", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "ＭＳ Ｐ明朝", "MS PMincho", "serif";
}

.self {
    font-family: "Noto Serif JP", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "ＭＳ Ｐ明朝", "MS PMincho", "serif";
    font-weight: 400;
}

.self_m {
    font-family: "Noto Serif JP", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "ＭＳ Ｐ明朝", "MS PMincho", "serif";
    font-weight: 500;
}

.btn_arrow0, .btn_arrow1, .btn_arrow2 {
    position: relative;
}

.btn_arrow0::before {
    display: block;
    position: absolute;
    width: 16px;
    height: 16px;
    background: rgb(176, 43, 90);
    border-radius: 50px;
    content: "";
}

.btn_arrow0::after {
    display: block;
    position: absolute;
    width: 3px;
    height: 3px;
    border-top: 1px solid rgb(255, 255, 255);
    border-right: 1px solid rgb(255, 255, 255);
    transform: rotate(45deg);
    content: "";
}

#container {
    width: 100%;
    overflow: hidden;
}

.tagline {
    padding: 5px 10px;
    font-size: 1.1rem;
    color: rgb(153, 153, 153);
}

#mv {
    height: 450px;
    border-bottom: 1px solid rgb(220, 220, 220);
    overflow: hidden;
}

#mv .inner {
    position: relative;
    height: 100%;
}

#mv .online_img {
    margin-left: 30px;
    margin-top: 20px;
}

#mv .online_img img {
    position: static;
    width: 264px;
}

#mv img {
    position: absolute;
    left: 7%;
    bottom: 0px;
    width: 560px;
}

#mv .txt {
    position: relative;
    left: 60%;
    top: 50%;
    width: 40%;
    transform: translateY(-50%);
}

#mv h2 {
    text-align: left;
    font-size: 4rem;
    color: rgb(33, 139, 204);
    letter-spacing: 0.05em;
    transition-delay: 0.5s;
}

#mv h3 {
    margin-top: 0.5em;
    text-align: left;
    font-size: 2.2rem;
    letter-spacing: 0.05em;
    line-height: 1.5;
    transition-delay: 0.9s;
}

#mnav ul {
    display: flex;
}

#mnav li {
    width: 50%;
}

#mnav li:nth-child(2n+1) {
    border-right: 1px solid rgb(255, 255, 255);
}

#mnav li:hover {
    position: relative;
    z-index: 1;
}

#mnav li a {
    box-sizing: border-box;
    display: flex;
    background: rgb(255, 255, 255);
    border-bottom: 3px solid rgb(176, 43, 90);
    transition: all 0.2s ease-out 0s;
}

#mnav li a:hover {
    box-shadow: rgba(0, 0, 0, 0.2) 0px 0px 20px 0px;
    transform: scale(1.04);
}

#mnav .btn_arrow0 {
    padding-right: 40px;
}

#mnav .btn_arrow0::before {
    top: 0px;
    bottom: 0px;
    right: 20px;
    margin: auto;
}

#mnav .btn_arrow0::after {
    top: 0px;
    bottom: 0px;
    right: 27px;
    margin: auto;
}

#mnav li figure {
    box-sizing: border-box;
    width: 45%;
    height: 115px;
    align-self: center;
    background: center center / cover no-repeat;
    overflow: hidden;
}

#mnav li .txt {
    box-sizing: border-box;
    width: 55%;
    padding-left: 20px;
    align-self: center;
}

#mnav h2 {
    font-size: 2rem;
    color: rgb(176, 43, 90);
}

#mnav p {
    margin-top: 0.4em;
    line-height: 1.4;
    font-size: 1.3rem;
}

#reason {
    padding: 60px 50px;
    background: url("../image/reason_bg0.jpg") center center / cover no-repeat rgb(255, 210, 212);
}

#reason .box {
    box-sizing: border-box;
    max-width: 640px;
    padding: 8px;
    margin: auto;
    background: rgb(255, 255, 255);
    box-shadow: rgba(0, 0, 0, 0.2) 0px 0px 5px 0px;
}

#reason .box > div {
    border: 1px solid rgb(33, 139, 204);
    padding: 30px;
    text-align: center;
}

#reason h2 {
    border-bottom: 1px solid rgb(33, 139, 204);
    padding: 40px 0px 5px;
    background: url("../image/ornament0.jpg") center top / 90px no-repeat;
    font-size: 2.2rem;
    color: rgb(33, 139, 204);
}

#reason .txt p {
    margin-top: 25px;
    text-align: left;
}

#reason .btns {
    margin-top: 40px;
}

.line {
    border: 0px !important;
}

li.lang_cn_bnr a div.txt {
    margin: auto;
}

li.lang_cn_bnr a div.txt figure {
    display: inline;
}

li.lang_cn_bnr a div.txt figure img {
    width: 20%;
}

li.lang_cn_bnr a div.txt h3 {
    display: inline-block;
    margin-left: 20px;
}

li.lang_cn_p {
    padding: 5px 5px 0px !important;
}

.lang_cn img {
    width: 50%;
    padding: 19px 0px 19px 50px;
}

.lang_cn .txt {
    margin: auto 0px;
}

.no_lang_cn {
    display: inline-block;
    margin: auto;
    height: 137px;
}

#beauty_info {
    margin-top: 40px;
    padding: 0px 50px;
}

#beauty_info.lazyloaded {
    background: url("../image/beauty_info_bg0.jpg") right top no-repeat rgb(255, 229, 233);
}

#beauty_info .inner {
    position: relative;
    max-width: 810px;
    margin: auto;
    padding: 30px 0px 15px;
}

#beauty_info .head {
    float: right;
    width: 43%;
}

#beauty_info .ph {
    position: absolute;
    bottom: 0px;
    right: -110px;
    width: 422px;
}

#beauty_info h2 {
    box-sizing: border-box;
    position: relative;
    float: left;
    width: 160px;
    height: 160px;
    background: rgb(255, 255, 255);
    padding: 6px;
    box-shadow: rgba(0, 0, 0, 0.2) 0px 0px 5px 0px;
    text-align: center;
    font-size: 2.2rem;
    color: rgb(33, 139, 204);
    transition: all 0.2s ease-out 0s;
}

#beauty_info h2:hover {
    box-shadow: rgba(0, 0, 0, 0.2) 0px 0px 20px 0px;
    transform: scale(1.02);
}

#beauty_info h2 span {
    box-sizing: border-box;
    display: block;
    width: 100%;
    height: 100%;
    padding-top: 45px;
    border: 1px solid rgb(33, 139, 204);
}

#beauty_info ul {
    position: relative;
    float: left;
    width: 50%;
    z-index: 1;
}

#beauty_info li {
    box-sizing: border-box;
    float: left;
    width: 50%;
    padding: 0px 5px 10px;
}

#beauty_info li:nth-child(2n+1) {
    clear: both;
}

#beauty_info li a {
    display: block;
    text-align: center;
    background: rgb(255, 255, 255);
    border-radius: 4px;
    box-shadow: rgba(0, 0, 0, 0.2) 0px 0px 5px 0px;
    padding: 6px 6px 15px;
    transition: all 0.2s ease-out 0s;
}

#column li a:hover {
    box-shadow: rgba(0, 0, 0, 0.2) 0px 0px 20px 0px;
    transform: scale(1.02);
}

#column li figure {
    box-sizing: border-box;
    margin-bottom: 10px;
    overflow: hidden;
}

#column .head h2 {
    transition: all 0.2s ease-out 0s;
}

#column .head h2:hover {
    box-shadow: rgba(0, 0, 0, 0.2) 0px 0px 20px 0px;
    transform: scale(1.02);
}

#column li figure.border {
    border: 1px solid rgb(33, 139, 204);
}

#beauty_info li h3 {
    font-size: 1.8rem;
    color: rgb(33, 139, 204);
}

#beauty_info .lh {
    line-height: 3.45;
}

#attention {
    margin-top: -50px;
    padding-top: 50px;
}

#attention .inner {
    max-width: 830px;
    margin: auto;
}

#attention .box {
    padding: 30px;
    background: rgb(237, 236, 233);
    border-radius: 3px;
    color: rgb(176, 43, 90);
    margin: 40px 0px !important;
}

#attention .box h2 {
    margin-bottom: 2rem;
    text-align: center;
    font-size: 1.8rem;
    color: rgb(176, 43, 90);
}

#attention .box p {
    margin-bottom: 1rem;
}

#attention .box p strong {
    color: rgb(176, 43, 90);
}

#attention .box ul {
    display: block !important;
}

#attention .box ul li {
    position: relative;
    margin-bottom: 0.2em;
    padding-left: 1.3em;
    width: 100%;
}

#attention .box ul li span {
    display: inline-block;
    position: absolute;
    left: 0px;
}

.accordion {
    padding-top: 60px;
    margin-top: -20px;
    margin-bottom: 40px;
}

.accordion label {
    display: block;
    transition: all 0.7s ease 0s;
}

.accordion input {
    display: none;
}

.accordion .accshow {
    height: 0px;
    padding: 0px;
    overflow: hidden;
    opacity: 0;
    transition: all 0.8s ease 0s;
}

.accordion .cssacc:checked + .accshow {
    height: auto;
    padding: 5px;
    background: rgb(234, 234, 234);
    opacity: 1;
}

.accordion > li {
    border-radius: 4px;
    background: rgb(237, 236, 233);
}

.accordion > li + li {
    margin-top: 20px;
}

.accordion .texts_block {
    border: 5px solid rgb(237, 236, 233);
    border-radius: 0px 0px 4px 4px;
}

.accordion_h {
    box-sizing: border-box;
    display: table;
    width: 100%;
    position: relative;
    padding: 10px 30px 5px 10px;
    font-size: 1.2rem;
    transition: opacity 0.15s ease-out 0s;
    text-align: center;
}

.accordion_h span {
    display: table-cell;
    vertical-align: middle;
    text-align: left;
    width: 100%;
}

.accordion .center {
    text-align: center;
}

.accordion_content .inner .border, .accordion_content .inner .texts {
    padding: 15px;
    font-size: 1.4rem;
    background-color: rgb(255, 255, 255);
}

.accordion_content .inner .border .texts {
    padding-top: 0px;
    border-top: none;
}

.accordion_content .inner .texts > ul li {
    padding-top: 10px;
    text-align: left;
    padding-left: 2em;
    text-indent: -2em;
}

.accordion_content .box {
    margin: 2em 0px;
    padding: 20px;
    background: rgb(234, 233, 230);
}

.accordion .h_wimg {
    display: flex;
    padding: 0px 0px 20px;
    border-bottom: 1px solid rgb(33, 139, 204);
}

.accordion .h_wimg > * {
    align-self: center;
}

#box_lang .lang {
    text-align: center;
    margin: 20px 0px;
    display: block !important;
}

#box_lang .lang li {
    display: inline-block;
    width: 25% !important;
    padding-top: 30px !important;
}

#box_lang .lang li a {
    padding: 6px;
    vertical-align: middle;
    line-height: 1;
    color: rgb(33, 139, 204);
    background: none;
    display: block !important;
    border: 1px solid rgb(192, 181, 129) !important;
    border-radius: 3px !important;
    transition: all 0.15s ease-out 0s !important;
}

#box_lang .lang li a:hover {
    background: rgb(33, 139, 204);
    color: rgb(255, 255, 255);
}

#box_lang .lang li a.cn::before {
    width: 26px;
    height: 26px;
    background: url("../image/icon_flag_cn.svg") center center / contain no-repeat;
    margin-right: 8px;
    vertical-align: middle;
    content: "";
    display: inline-block !important;
}

#box_lang .lang li a.ob::before {
    width: 26px;
    height: 26px;
    background: url("../image/img_onlinemedic_icon_sp.jpg") center center / contain no-repeat;
    margin-right: 8px;
    vertical-align: middle;
    content: "";
    display: inline-block !important;
}

#online_medic {
    margin: 20px 0px;
    text-align: center;
}

#online_medic img {
    width: 58%;
}

.news_attention {
    font-size: 1.1rem;
}

.picup_height {
    height: 97px !important;
}

.pc_banner_full_width {
    width: 100% !important;
    padding: 0px 9px !important;
}

header {
    box-sizing: border-box;
    width: 100%;
    background: rgb(255, 255, 255);
    z-index: 1000;
    padding: 15px 0px 0px;
}

header .header_items_row1 {
    box-sizing: border-box;
    width: 100%;
    padding: 0px;
    max-width: 1070px;
    margin: 0px auto 15px;
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
    justify-content: space-around;
}

header .header_items_row1 .header_item h1 {
    font-size: 1.2rem;
    color: rgb(153, 153, 153);
    white-space: nowrap;
}

header .header_items_row1 .header_item #logo {
    margin: 10px 0px 0px;
}

header .header_items_row1 .header_item #logo a {
    display: block;
}

header .header_items_row1 .header_item h2 img {
    vertical-align: baseline;
}

header .header_items_row1 .header_item nav#cnav1 {
    margin-bottom: 15px;
}

header .header_items_row1 .header_item nav#cnav1 ul {
    list-style-type: none;
    display: flex;
    font-size: 1.2rem;
}

header .header_items_row1 .header_item nav#cnav1 ul li {
    margin: 0px 0.5rem 0px 0px;
    white-space: nowrap;
}

header .header_items_row1 .header_item nav#cnav1 ul li a {
    padding: 0px 0.6rem;
    display: block;
    transition: color 0.15s ease-out 0s;
}

header .header_items_row1 .header_item nav#cnav1 ul li a.cn {
    position: relative;
    padding: 0px 0.6rem 0px 40px;
    border-left: 1px solid rgb(225, 225, 225);
    background: transparent;
}

header .header_items_row1 .header_item nav#cnav1 ul li a.cn::before {
    display: inline-block;
    position: absolute;
    width: 18px;
    height: 18px;
    background: url("../image/icon_flag_cn1.svg") 0% 0% / 100% no-repeat;
    content: "";
    margin: 0px;
    top: 1.3px;
    left: 16.5px;
}

header .header_items_row1 .header_item nav#cnav1 ul li a:hover {
    color: rgb(33, 139, 204);
}

header .header_items_row1 .header_item nav#cnav2 ul {
    list-style-type: none;
    display: flex;
    font-size: 1.4rem;
    font-family: "Noto Serif JP", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "ＭＳ Ｐ明朝", "MS PMincho", "serif";
    font-weight: 400;
    justify-content: flex-end;
    align-items: baseline;
}

header .header_items_row1 .header_item nav#cnav2 ul li {
    text-align: center;
}

header .header_items_row1 .header_item nav#cnav2 ul li a {
    flex-wrap: nowrap;
    display: block;
    color: rgb(51, 51, 51);
    border-right: 1px solid rgb(225, 225, 225);
    padding: 0px 10px;
    transition: color 0.15s ease-out 0s;
    text-align: center;
}

header .header_items_row1 .header_item nav#cnav2 ul li a > img {
    display: block;
    margin: 0px auto;
}

header .header_items_row1 .header_item nav#cnav2 ul li a.cnav::before {
    display: block;
    width: 29.58px;
    height: 28.35px;
    background: url("../image/icon_menu_reserve.svg") 0% 0% / 100% no-repeat;
    content: "";
    margin: 0px auto 3px;
}

header .header_items_row1 .header_item nav#cnav2 ul li a.reserve::before {
    display: block;
    width: 29.58px;
    height: 28.35px;
    background: url("../image/icon_menu_reserve.svg") 0% 0% / 100% no-repeat;
    content: "";
    margin: 0px auto 3px;
}

header .header_items_row1 .header_item nav#cnav2 ul li a.line_reserve::before {
    display: block;
    width: 25.6px;
    height: 24.39px;
    background: url("../image/icon_menu_line_reserve.svg") 0% 0% / 100% no-repeat;
    content: "";
    margin: 0px auto 3px;
}

header .header_items_row1 .header_item nav#cnav2 ul li a.mail::before {
    display: block;
    width: 24.12px;
    height: 17.83px;
    background: url("../image/icon_menu_mail.svg") 0% 0% / 100% no-repeat;
    content: "";
    margin: 0px auto 8px;
}

header .header_items_row1 .header_item nav#cnav2 ul li a.cancel::before {
    display: block;
    width: 29.58px;
    height: 28.35px;
    background: url("../image/icon_menu_cancel.svg") 0% 0% / 100% no-repeat;
    content: "";
    margin: 0px auto 3px;
}

header .header_items_row1 .header_item nav#cnav2 ul li a.media::before {
    display: block;
    width: 29.58px;
    height: 28.35px;
    background: url("../image/icon_menu_media.svg") 0% 0% / 100% no-repeat;
    content: "";
    margin: 0px auto 3px;
}

header .header_items_row1 .header_item nav#cnav2 ul li a:hover {
    color: rgb(33, 139, 204);
}

header .header_items_row1 .header_item nav#cnav2 ul li:last-child a {
    border-right: none;
    padding: 0px 10px;
}

header .header_items_row1 .header_item .freedial {
    white-space: nowrap;
    padding-left: 15px;
}

header .header_items_row1 .header_item .freedial h3 {
    margin-bottom: 3px;
    line-height: 1;
    font-weight: bold;
    font-size: 1.1rem;
    color: rgb(33, 139, 204);
}

header .header_items_row1 .header_item .freedial strong {
    line-height: 1;
    font-size: 2.5rem;
    color: rgb(33, 139, 204);
}

header .header_items_row1 .header_item .freedial p {
    display: block;
    font-size: 1.1rem;
    line-height: 1.5rem;
    margin-bottom: 3px;
    text-indent: -0.5rem;
    padding-left: 0.5rem;
}

header .header_items_row1 .header_item .freedial p span {
    font-weight: bold;
}

header .header_items_row2 {
    box-sizing: border-box;
    width: 100%;
    padding: 10px;
    margin: 0px auto;
    background: rgb(232, 241, 255);
    position: static;
    z-index: 9999;
    transition: all 0.5s ease 0s;
    min-width: 1070px;
}

header .header_items_row2.hide {
    position: static;
    transform: translateY(-100%);
}

header .header_items_row2.show {
    position: fixed;
    top: 0px;
}

header .header_items_row2 .hmenus {
    width: 100%;
    max-width: 1070px;
    margin: 0px auto;
}

header .header_items_row2 .hmenus ul {
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
    justify-content: space-around;
    list-style-type: none;
    font-size: 1.5rem;
}

header .header_items_row2 .hmenus ul li {
    margin: 0px 0.5rem 0px 0px;
}

header .header_items_row2 .hmenus ul li a {
    display: block;
    position: relative;
    padding: 4px 1rem 7px;
    transition: background-color 0.15s ease-out 0s;
    border-radius: 30px;
    white-space: nowrap;
    box-sizing: border-box;
}

header .header_items_row2 .hmenus ul li a.gsst_a {
    padding: 0px;
    box-sizing: border-box;
}

header .header_items_row2 .hmenus ul li a:hover {
    background-color: rgb(255, 255, 255);
}

header .header_items_row2 .hmenus ul li a::before {
    display: inline-block;
    position: absolute;
    background-size: 100%;
    content: "";
    margin: auto;
    top: 0px;
    bottom: 0px;
    left: 13px;
}

header .header_items_row2 .hmenus ul li a > img {
    vertical-align: middle;
    margin-right: 5px;
}

header .header_items_row2 .hmenus ul li a.hmenus_price::before {
    width: 19.97px;
    height: 22.69px;
    background: url("../image/icon_menu_gnav_price.svg") no-repeat;
    left: 13px;
}

header .header_items_row2 .hmenus ul li a.hmenus_doctor::before {
    display: inline-block;
    position: absolute;
    width: 19.11px;
    height: 21.76px;
    background: url("../image/icon_menu_gnav_doctor.svg") 0% 0% / 100% no-repeat;
    content: "";
    margin: auto;
    top: 0px;
    bottom: 0px;
    left: 14.5px;
}

header .header_items_row2 .hmenus ul li a.hmenus_clinicmap::before {
    display: inline-block;
    position: absolute;
    width: 21.89px;
    height: 17.91px;
    background: url("../image/icon_menu_gnav_clinicmap.svg") 0% 0% / 100% no-repeat;
    content: "";
    margin: auto;
    top: 0px;
    bottom: 0px;
    left: 11px;
}

header .header_items_row2 .hmenus ul li a.hmenus_photo::before {
    display: inline-block;
    position: absolute;
    width: 20.7px;
    height: 21.76px;
    background: url("../image/icon_menu_gnav_photo.svg") 0% 0% / 100% no-repeat;
    content: "";
    margin: auto;
    top: 0px;
    bottom: 0px;
    left: 12.5px;
}

header .header_items_row2 .hmenus ul li a.hmenus_process::before {
    display: inline-block;
    position: absolute;
    width: 22.56px;
    height: 22.82px;
    background: url("../image/icon_menu_gnav_process.svg") 0% 0% / 100% no-repeat;
    content: "";
    margin: auto;
    top: 0px;
    bottom: 0px;
    left: 10.5px;
}

header .header_items_row2 .hmenus ul li a.hmenus_operation::before {
    display: inline-block;
    position: absolute;
    width: 15px;
    height: 22.49px;
    background: url("../image/icon_menu_gnav_operation.svg") 0% 0% / 100% no-repeat;
    content: "";
    margin: auto;
    top: 0px;
    bottom: 0px;
    left: 10.5px;
}

header .header_items_row2 .hmenus ul li a.hmenus_recruit::before {
    display: inline-block;
    position: absolute;
    width: 22.56px;
    height: 22.82px;
    background: url("../image/icon_menu_gnav_recruit.svg") 0% 0% / 100% no-repeat;
    content: "";
    margin: auto;
    top: 0px;
    bottom: 0px;
    left: 10.5px;
}

header .googlesearch {
    margin: 0px;
    border-radius: 30px;
    background: rgb(225, 225, 225);
    padding: 3px 6px;
    width: 174px;
    box-sizing: border-box;
}

header .googlesearch .gsc-search-button-v2 {
    padding: 9px;
    line-height: 0;
    background: url("../image/icon_menu_gnav_search1.svg") center center / 80% no-repeat;
    border: none;
    height: 32px;
    width: 24px;
}

header .googlesearch .gsc-search-button-v2 svg {
    display: none;
}

header .googlesearch .gsc-search-button-v2:hover {
    cursor: pointer;
}

header .googlesearch .gsc-search-button {
    margin-left: 0px;
}

header .googlesearch form.gsc-search-box {
    float: none !important;
    margin: 0px !important;
    width: auto !important;
}

header .googlesearch table.gsc-search-box {
    margin: 0px !important;
}

header .googlesearch .gsc-input-box {
    border: none;
    background: transparent;
}

header .googlesearch #gsc-i-id1 {
    font-size: 1.3rem;
    margin: 0px 0px 0px 1rem !important;
    width: 90% !important;
    height: 2em !important;
    background: transparent !important;
}

header .googlesearch .gsib_a {
    padding: 0px;
}

header .googlesearch .gsc-input {
    width: 100%;
    padding: 0px;
    font-size: small;
}

header .googlesearch table.gsc-search-box td.gsc-input {
    padding-right: 0px;
}

header .googlesearch .gsst_a .gscb_a {
    color: rgb(153, 153, 153);
    vertical-align: middle;
}

header .googlesearch .gsst_a:hover {
    background-color: transparent !important;
}

header .googlesearch_sp {
    padding: 0px;
    margin: 0px;
    box-sizing: border-box;
}

header .googlesearch_sp .gsc-search-button-v2 {
    padding: 9px;
    line-height: 0;
    border: 1px solid rgb(33, 139, 204);
    border-radius: 3px;
}

header .googlesearch_sp form.gsc-search-box {
    float: none !important;
    margin: 0px !important;
    width: auto !important;
}

header .googlesearch_sp .gsc-input {
    width: 100%;
    padding: 0px;
    font-size: small;
    background: transparent;
}

header .googlesearch_sp table.gsc-search-box td.gsc-input {
    padding-right: 0px;
}

header .googlesearch_sp .gsst_a .gscb_a {
    color: rgb(153, 153, 153);
    vertical-align: middle;
}

header #pc_menu {
    display: block;
}

header #sp_header, header #sp_menu {
    display: none;
}

#sp_menu {
    display: none;
    position: fixed;
    width: 100%;
    height: 100%;
    top: 0px;
    left: 0px;
    overflow: auto;
    z-index: 10000;
}

#sp_menu .bg {
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.6);
}

#sp_menu .inner {
    position: absolute;
    top: 0px;
    right: 0px;
    width: 84.5%;
    height: 100%;
    max-height: 100%;
    background: rgb(255, 255, 255);
    overflow: auto;
}

#sp_menu .inner > div {
    padding: 25px;
}

#sp_menu .subject {
    margin-top: 50px;
}

#sp_menu .subject h2 {
    box-sizing: border-box;
    float: none;
    width: auto;
    height: auto;
    padding: 0px 0px 0px 8px;
    border-left: 4px solid rgb(33, 139, 204);
    font-size: 1.8rem;
}

#sp_menu .subject .list {
    margin: 10px 0px 0px;
    display: block;
}

#sp_menu .subject .list > li {
    padding: 0px;
    flex-basis: 25%;
    border-top: 1px solid rgb(220, 220, 220);
}

#sp_menu .subject .list > li:first-child {
    border: none;
}

#sp_menu .subject .list > li:nth-child(2) {
    flex-basis: 35%;
}

#sp_menu .subject .list h3 {
    font-size: 1.5rem;
    position: relative;
    padding: 10px 0px;
    margin: 0px;
    transition: color 0.15s ease-out 0s;
}

#sp_menu .subject .list h3:hover {
    color: rgb(33, 139, 204);
}

#sp_menu .subject .list h3::before, #sp_menu .subject .list h3::after {
    position: absolute;
    top: 0px;
    bottom: 0px;
    right: 0px;
    margin: auto;
    background: rgb(33, 139, 204);
    content: "";
}

#sp_menu .subject .list h3::before {
    right: 7px;
    width: 2px;
    height: 16px;
}

#sp_menu .subject .list h3::after {
    width: 16px;
    height: 2px;
}

#sp_menu .subject .list h3.act::before {
    display: none;
}

#sp_menu .subject .list ul.cf li {
    float: none;
    width: 100%;
}

#sp_menu .subject .list li {
    font-size: 1.3rem;
}

#sp_menu .subject .list li a {
    font-size: 1.5rem;
    transition: color 0.15s ease-out 0s;
}

#sp_menu .subject .list li a:hover {
    color: rgb(33, 139, 204);
}

#sp_menu .subject .list li ul {
    margin: 0px 0px 20px;
}

#sp_menu .subject .list li ul li {
    margin: 0px;
    padding: 0px;
    border-top: 1px solid rgb(220, 220, 220);
}

#sp_menu .subject .list li ul li:first-child {
    border: none;
}

#sp_menu .subject .list li ul li a {
    position: relative;
    display: block;
    padding: 5px 5px 5px 20px;
}

#sp_menu .subject .list li ul li a::before {
    display: block;
    position: absolute;
    left: 0px;
    top: 0px;
    bottom: 0px;
    margin: auto;
    width: 13px;
    height: 13px;
    background: rgb(33, 139, 204);
    border-radius: 50px;
    content: "";
}

#sp_menu .subject .list li ul li a::after {
    display: block;
    position: absolute;
    left: 4px;
    top: 0px;
    bottom: 0px;
    margin: auto;
    width: 3px;
    height: 3px;
    border-top: 1px solid rgb(255, 255, 255);
    border-right: 1px solid rgb(255, 255, 255);
    transform: rotate(45deg);
    content: "";
}

#sp_menu .subject .list li ul li.btn {
    padding-top: 5px;
    border: none;
}

#sp_menu .subject .list li ul li.btn a::before, #sp_menu .subject .list li ul li.btn a::after {
    display: none;
}

#sp_menu .mmnav {
    padding-top: 20px;
    padding-bottom: 5px;
}

#sp_menu .mmnav h2 {
    box-sizing: border-box;
    float: none;
    width: auto;
    height: auto;
    padding: 0px 0px 0px 8px;
    border-left: 4px solid rgb(33, 139, 204);
    font-size: 1.8rem;
    margin-bottom: 20px;
}

#sp_menu .gnav {
    display: flex;
    flex-wrap: wrap;
    margin: 5px -25px 20px;
}

#sp_menu .gnav li {
    display: flex;
    align-items: center;
    box-sizing: border-box;
    width: 50%;
    max-width: 50%;
    padding-bottom: 2px;
}

#sp_menu .gnav li:nth-child(2n+1) {
    padding-right: 1px;
}

#sp_menu .gnav li:nth-child(2n) {
    padding-left: 1px;
}

#sp_menu .gnav li a {
    display: flex;
    align-items: center;
    height: 100%;
    background: rgb(237, 236, 233);
    padding: 10px 30px 10px 10px;
    line-height: 1.4;
    transition: all 0.15s ease-out 0s;
    width: 100%;
    box-sizing: border-box;
}

#sp_menu .gnav li a:hover {
    background: rgb(242, 242, 240);
    color: rgb(33, 139, 204);
}

#sp_menu .gnav li a::before {
    top: 0px;
    bottom: 0px;
    right: 10px;
    width: 14px;
    height: 14px;
    margin: auto;
}

#sp_menu .gnav li a::after {
    top: 0px;
    bottom: 0px;
    right: 17px;
    margin: auto;
}

#sp_menu .customer {
    margin: 20px 0px;
}

#sp_menu .customer li {
    box-sizing: border-box;
    width: 50%;
    float: left;
    margin-bottom: 10px;
}

#sp_menu .customer li:nth-child(2n+1) {
    padding-right: 6px;
}

#sp_menu .customer li:nth-child(2n) {
    padding-left: 6px;
}

#sp_menu .customer a {
    box-sizing: border-box;
    display: block;
    padding: 4px 0px;
    border: 1px solid rgb(33, 139, 204);
    border-radius: 3px;
    color: rgb(33, 139, 204);
    font-size: 1.2rem;
    text-align: center;
    transition: all 0.15s ease-out 0s;
    position: relative;
}

#sp_menu .customer a:hover {
    background: rgb(33, 139, 204);
    color: rgb(255, 255, 255);
}

#sp_menu .customer a.cn {
    padding: 4px 0px 4px 18px;
}

#sp_menu .customer a.cn::before {
    display: inline-block;
    position: absolute;
    top: 0px;
    bottom: 0px;
    left: 13px;
    width: 18px;
    height: 18px;
    background: url("../image/icon_flag_cn.svg") center center / contain no-repeat;
    vertical-align: middle;
    content: "";
    margin: auto;
}

#sp_menu .info {
    display: flex;
    flex-wrap: wrap;
    margin: 20px -25px;
    border-bottom: 1px solid rgb(220, 220, 220);
}

#sp_menu .info li {
    box-sizing: border-box;
    width: 50%;
    max-width: 50%;
    border-top: 1px solid rgb(220, 220, 220);
}

#sp_menu .info li:nth-child(2n+1) {
    border-right: 1px solid rgb(220, 220, 220);
}

#sp_menu .info li a {
    display: table;
    width: 100%;
    height: 100%;
    font-size: 1.3rem;
    line-height: 1.4;
    transition: color 0.15s ease-out 0s;
}

#sp_menu .info li a:hover {
    color: rgb(33, 139, 204);
}

#sp_menu .info li a.icon_qa span {
    background-image: url("../image/icon_qa.svg");
}

#sp_menu .info li a.icon_attention span {
    background-image: url("../image/icon_attention.svg");
}

#sp_menu .info li a.icon_info span {
    background-image: url("../image/icon_info.svg");
}

#sp_menu .info li a span {
    display: table-cell;
    vertical-align: middle;
    padding: 8px 10px 8px 45px;
    background: 10px center / 25px no-repeat;
}

#sp_menu .contact {
    display: flex;
    flex-wrap: wrap;
    margin: 20px -25px;
}

#sp_menu .contact li {
    flex-basis: 25%;
    text-align: center;
    line-height: 1.3;
    font-size: 1.1rem;
}

#sp_menu .contact li a {
    position: relative;
    display: block;
    padding-top: 35px;
    background: center top / 42px no-repeat;
    transition: color 0.15s ease-out 0s;
}

#sp_menu .contact li a:hover {
    color: rgb(33, 139, 204);
}

#sp_menu .contact li a::after {
    position: absolute;
    left: 0px;
    top: 35px;
    width: 1px;
    height: 25px;
    background: rgb(220, 220, 220);
    content: "";
}

#sp_menu .contact li a:first-child::after {
    display: none;
}

#sp_menu .contact li:nth-child(1) a {
    background-image: url("../image/icon_calendar0.svg");
}

#sp_menu .contact li:nth-child(2) a {
    background-image: url("../image/icon_mail.svg");
}

#sp_menu .contact li:nth-child(3) a {
    background-image: url("../image/icon_calendar1.svg");
}

#sp_menu .contact li:nth-child(4) a {
    background-image: url("../image/icon_tel.svg");
}

#sp_menu .contact2 {
    margin: 0px auto 20px;
    list-style-type: none;
    display: block;
    font-size: 1.4rem;
}

#sp_menu .contact2 li {
    text-align: left;
}

#sp_menu .contact2 li a {
    width: 100%;
    display: block;
    color: rgb(51, 51, 51);
    border-bottom: 1px solid rgb(225, 225, 225);
    padding: 10px 5px;
    box-sizing: border-box;
    transition: color 0.15s ease-out 0s;
}

#sp_menu .contact2 li div.line_reserve {
    width: 100%;
    display: block;
    color: rgb(51, 51, 51);
    border-bottom: 1px solid rgb(225, 225, 225);
    padding: 10px 5px;
    box-sizing: border-box;
    transition: color 0.15s ease-out 0s;
}

#sp_menu .contact2 li a.reserve::before {
    display: inline-block;
    width: 29.58px;
    height: 28.35px;
    background: url("../image/icon_menu_reserve_sp.svg") 0% 0% / 100% no-repeat;
    content: "";
    margin: 0px 1rem 0px 0px;
    vertical-align: middle;
}

#sp_menu .contact2 li div.line_reserve::before {
    display: inline-block;
    width: 25.6px;
    height: 24.39px;
    background: url("../image/icon_menu_line_reserve_sp.svg") 0% 0% / 100% no-repeat;
    content: "";
    margin: 0px 1rem 0px 0px;
    vertical-align: middle;
}

#sp_menu .contact2 li a.mail::before {
    display: inline-block;
    width: 24.12px;
    height: 17.83px;
    background: url("../image/icon_menu_mail_sp.svg") 0% 0% / 100% no-repeat;
    content: "";
    margin: 0px 1rem 0px 0px;
    vertical-align: middle;
}

#sp_menu .contact2 li a.cancel::before {
    display: inline-block;
    width: 29.58px;
    height: 28.35px;
    background: url("../image/icon_menu_cancel_sp.svg") 0% 0% / 100% no-repeat;
    content: "";
    margin: 0px 1rem 0px 0px;
    vertical-align: middle;
}

#sp_menu .contact2 li a:hover {
    color: rgb(33, 139, 204);
}

#sp_menu .contact2 li:last-child a {
    border-bottom: none;
}

#sp_menu .freedial {
    white-space: nowrap;
    text-align: center;
}

#sp_menu .freedial h3 {
    margin-bottom: 5px;
    line-height: 1;
    font-weight: bold;
    font-size: 1.1rem;
    color: rgb(33, 139, 204);
}

#sp_menu .freedial strong {
    line-height: 1;
    font-size: 2.7rem;
    color: rgb(33, 139, 204);
    margin-bottom: 5px;
}

#sp_menu .freedial .callphone {
    text-align: center;
    width: 165px;
    display: block;
    margin: 4px auto 12px;
}

#sp_menu .freedial .callphone a {
    box-sizing: border-box;
    display: block;
    padding: 6px 0px;
    border: 1px solid rgb(33, 139, 204);
    border-radius: 3px;
    color: rgb(51, 51, 51);
    font-size: 1.2rem;
    text-align: center;
    transition: all 0.15s ease-out 0s;
}

#sp_menu .freedial .callphone a.phone::before {
    display: inline-block;
    width: 24.01px;
    height: 24px;
    background: url("../image/icon_menu_phone_sp.svg") 0% 0% / 100% no-repeat;
    content: "";
    margin: 0px 1rem 0px 0px;
    vertical-align: middle;
}

#sp_menu .freedial .callphone a:hover {
    background: rgb(33, 139, 204);
    color: rgb(255, 255, 255);
}

#sp_menu .freedial p {
    display: block;
    font-size: 1.1rem;
    line-height: 1.5rem;
    margin-bottom: 3px;
}

#sp_menu .freedial p span {
    font-weight: bold;
}

#sp_menu .lang {
    text-align: center;
    margin: 20px 0px;
}

#sp_menu .lang li a {
    display: block;
    padding: 3px;
    border: 1px solid rgb(192, 181, 129);
    border-radius: 3px;
    vertical-align: middle;
    line-height: 1;
    color: rgb(33, 139, 204);
    transition: all 0.15s ease-out 0s;
}

#sp_menu .lang li a:hover {
    background: rgb(33, 139, 204);
    color: rgb(255, 255, 255);
}

#sp_menu .lang li a.cn::before {
    display: inline-block;
    width: 26px;
    height: 26px;
    background: url("../image/icon_flag_cn.svg") center center / contain no-repeat;
    margin-right: 8px;
    vertical-align: middle;
    content: "";
}

#sp_menu .sp_menu_logo {
    margin: 20px auto;
    text-align: center;
}

#sp_menu .sp_menu_logo img {
    max-width: 150px;
    width: 100%;
    height: auto;
}

#sp_menu .btn_close {
    position: absolute;
    top: 25px;
    right: 15px;
    border: none;
    padding: 0px 0px 0px 45px;
    width: auto;
    min-width: 0px;
    color: rgb(33, 139, 204);
    font-size: 1.1rem;
    transition: opacity 0.15s ease-out 0s;
}

#sp_menu .btn_close:hover {
    background: none;
    opacity: 0.6;
    color: rgb(33, 139, 204) !important;
}

#sp_menu .btn_close::before {
    position: absolute;
    top: 0px;
    bottom: 1px;
    left: 0px;
    margin: auto;
    width: 18px;
    height: 1px;
    background: rgb(33, 139, 204);
    content: "";
    transform: rotate(-45deg);
}

.menupanel .menupanelitem {
    width: 100%;
    margin: 6% auto 0px;
    background-color: rgb(244, 244, 244);
    padding-bottom: 13px;
}

.menupanel .menupanelitem ul {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    list-style-type: none;
    padding: 10px;
}

.menupanel .menupanelitem ul li {
    margin: 0px;
    width: 33.33%;
    text-align: center;
    border-radius: 5px;
    padding: 3px;
    box-sizing: border-box;
}

.menupanel .menupanelitem ul li a {
    display: table-cell;
    position: relative;
    padding: 16% 0px;
    transition: background-color 0.15s ease-out 0s;
    white-space: nowrap;
    box-sizing: border-box;
    font-size: 1.3rem;
    text-align: center;
    border-radius: 3px;
    background: rgb(255, 255, 255);
    width: 100vw;
    vertical-align: bottom;
    height: auto !important;
}

.menupanel .menupanelitem ul li a:hover {
    background-color: rgb(255, 255, 255);
}

.menupanel .menupanelitem ul li a::before {
    display: block;
    position: absolute;
    content: "";
    margin: auto;
    inset: 0px;
    height: fit-content;
    padding-bottom: 4px;
}

.menupanel .menupanelitem ul li a.hmenus_price::before {
    width: 30%;
    content: url("../image/icon_menu_gnav_price.svg");
}

.menupanel .menupanelitem ul li a.hmenus_doctor::before {
    width: 27%;
    content: url("../image/icon_menu_gnav_doctor.svg");
}

.menupanel .menupanelitem ul li a.hmenus_clinicmap::before {
    width: 29%;
    content: url("../image/icon_menu_gnav_clinicmap.svg");
}

.menupanel .menupanelitem ul li a.hmenus_photo::before {
    width: 28%;
    content: url("../image/icon_menu_gnav_photo.svg");
}

.menupanel .menupanelitem ul li a.hmenus_process::before {
    width: 28%;
    content: url("../image/icon_menu_gnav_process.svg");
}

.menupanel .menupanelitem ul li a.hmenus_operation::before {
    width: 22%;
    content: url("../image/icon_menu_gnav_operation.svg");
}

.menupanel .menupanelitem ul li a.hmenus_operation:hover {
    background-color: rgba(176, 43, 90, 0.54);
}

.menupanel .menupanelitem ul li a.hmenus_recruit::before {
    width: 30%;
    content: url("../image/icon_menu_gnav_recruit.svg");
}

#topslide .swiper-container-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet {
    margin: 0px 5px;
}

#topslide .swiper-pagination-bullet {
    width: 14px;
    height: 14px;
    display: inline-block;
    border-radius: 50%;
    background: rgb(255, 255, 255);
    opacity: 1;
    border: 1px solid rgb(155, 159, 164);
}

#topslide .swiper-pagination-bullet-active {
    background: rgb(155, 159, 164);
    border: 1px solid rgb(255, 255, 255);
}

#topslide .swiper1-container {
    position: relative;
}

#topslide .swiper-button-next::after, #topslide .swiper-container-rtl .swiper-button-prev::after, #topslide .swiper-button-prev::after, #topslide .swiper-container-rtl .swiper-button-next::after {
    content: "";
}

#topslide .swiper-button-next, #topslide .swiper-button-prev {
    top: 0px;
    bottom: 0px;
    margin: auto;
    max-width: 35px;
    width: 100%;
}

#topslide .swiper-button-next img, #topslide .swiper-button-prev img {
    width: 100%;
    height: auto;
}

#topslide .sp-slide {
    text-align: center;
}

#topslide .sp-slide img {
    width: 100%;
    height: auto;
    margin: auto;
}

#topslide .sp-slide .deco img {
    margin: 0px 0px 0px auto;
    display: block;
}

.swiper-slide {
    width: 200px;
}

.swiper1-container .swiper-slide, .swiper2-container .swiper-slide {
    width: 100vw;
}

.swiper4-container .swiper-slide {
    height: auto;
    margin: auto 3px;
    width: 190px !important;
}

#topslide .slide1 {
    background: url("../image/topslide_01bg.jpg") center center / 100% 100% no-repeat;
}

#topslide .slide1 .slide1wrap, #topslide .slide2 .slide2wrap, #topslide .slide3 .slide3wrap, #topslide .slide4 .slide4wrap, #topslide .slide5 .slide5wrap, #topslide .slide7 .slide7wrap, #topslide .slide8 .slide8wrap, #topslide .slide9 .slide9wrap, #topslide .slide10 .slide10wrap, #topslide .slide11 .slide11wrap, #topslide .slide12 .slide12wrap, #topslide .slide13 .slide13wrap, #topslide .slide13a .slide13awrap, #topslide .slide14 .slide14wrap, #topslide .slide14a .slide14awrap, #topslide .slide15 .slide15wrap, #topslide .slide15a .slide15awrap, #topslide .slide16 .slide16wrap, #topslide .slide17 .slide17wrap, #topslide .slide18 .slide18wrap, #topslide .slide19 .slide19wrap, #topslide .slide20 .slide20wrap, #topslide .slide21 .slide21wrap, #topslide .slide21a .slide21awrap, #topslide .slide22 .slide22wrap, #topslide .slide22a .slide22awrap, #topslide .slide23 .slide23wrap, #topslide .slide23a .slide23awrap, #topslide .slide24 .slide24wrap, #topslide .slide24a .slide24awrap, #topslide .slide25 .slide25wrap, #topslide .slide26 .slide26wrap, #topslide .slide27 .slide27wrap, #topslide .slide28 .slide28wrap, #topslide .slide28a .slide28awrap, #topslide .slide29 .slide29wrap, #topslide .slide30 .slide30wrap, #topslide .slide31 .slide31wrap, #topslide .slide32 .slide32wrap, #topslide .slide33a .slide33wrap, #topslide .slide33b .slide33wrap, #topslide .slide34a .slide34wrap, #topslide .slide34b .slide34wrap, #topslide .slide35 .slide35wrap, #topslide .slide36 .slide36wrap, #topslide .slide36a .slide36awrap, #topslide .slide37 .slide37wrap, #topslide .slide38 .slide38wrap, #topslide .slide38a .slide38awrap, #topslide .slide39 .slide39wrap, #topslide .slide40 .slide40wrap, #topslide .slide40a .slide40awrap, #topslide .slide41 .slide41wrap, #topslide .slide42 .slide42wrap, #topslide .slide42a .slide42awrap, #topslide .slide43 .slide43wrap, #topslide .slide43a .slide43awrap, #topslide .slide44 .slide44wrap, #topslide .slide44a .slide44awrap, #topslide .slide45 .slide45wrap, #topslide .slide46 .slide46wrap, #topslide .slide47 .slide47wrap, #topslide .slide47a .slide47awrap, #topslide .slide48 .slide48wrap, #topslide .slide48a .slide48awrap, #topslide .slide49 .slide49wrap, #topslide .slide50 .slide50wrap, #topslide .slide51 .slide51wrap, #topslide .slide52 .slide52wrap, #topslide .slide52a .slide52awrap, #topslide .slide53 .slide53wrap, #topslide .slide54 .slide54wrap, #topslide .slide55 .slide55wrap, #topslide .slide56 .slide56wrap, #topslide .slide57 .slide57wrap, #topslide .slide57a .slide57awrap, #topslide .slide58 .slide58wrap {
    max-width: 1280px;
    margin: auto;
    position: relative;
    line-height: initial;
}

#topslide .slide1 .slide1wrap .topslide_01cnt {
    position: absolute;
    inset: 65px 0px 0px;
    margin: auto 193px auto auto;
    z-index: 2;
    width: 24vw;
    text-align: left;
}

#topslide .slide1 .topslide_01cnt .topslide_01_pc01 {
    margin-bottom: 14px;
}

#topslide .slide1 .topslide_01cnt .topslide_01_pc01 img {
    width: 122px;
    height: auto;
    margin: 0px 0px 0px 27px;
}

#topslide .slide1 .topslide_01cnt h1 {
    background: rgb(89, 188, 154);
    font-size: 4rem;
    text-align: center;
    margin: 0px 0px 20px;
    color: rgb(229, 229, 227);
    padding: 6px 10px 13px;
    width: 370px;
}

#topslide .slide1 .topslide_01cnt p {
    font-size: 1.9rem;
    color: rgb(51, 51, 51);
    margin-bottom: 30px;
}

#topslide .slide1 .topslide_01cnt .youtube {
    display: block;
    margin: 0px auto;
    width: auto;
    padding: 0px 0px 0px 30px;
}

#topslide .slide1 .topslide_01cnt .youtube img {
    width: 377px;
}

#topslide .bnr {
    position: absolute;
    right: 139px;
    bottom: 38px;
    margin: auto;
    z-index: 2;
}

#topslide .bnr .btn_arrow1 {
    box-sizing: border-box;
    display: inline-block;
    padding: 13px 42px 13px 20px;
    width: 100%;
    border: 1px solid rgb(33, 139, 204);
    border-radius: 4px;
    line-height: 1.3;
    font-size: 1.8rem;
    color: rgb(33, 139, 204);
    text-shadow: none;
    transition: all 0.15s ease-out 0s;
    background: rgb(255, 255, 255);
    position: relative;
}

#topslide .bnr .btn_arrow1::before {
    display: block;
    position: absolute;
    width: 17px;
    height: 17px;
    border: 1px solid rgb(33, 139, 204);
    border-radius: 50px;
    content: "";
    top: 0px;
    bottom: 0px;
    right: 10px;
    margin: auto;
}

#topslide .bnr .btn_arrow1::after {
    display: block;
    position: absolute;
    width: 4px;
    height: 4px;
    border-top: 1px solid rgb(33, 139, 204);
    border-right: 1px solid rgb(33, 139, 204);
    transform: rotate(45deg);
    content: "";
    top: 0px;
    bottom: 0px;
    right: 18px;
    margin: auto;
}

#topslide .slide2 {
    background: url("../image/topslide_02bg.jpg") center center / 100% 100% no-repeat;
}

#topslide .slide3 {
    background: url("../image/topslide_03bg.jpg") center center / 100% 100% no-repeat;
}

#topslide .slide4 {
    background: url("../image/topslide_04bg.jpg") center center / auto 100% no-repeat;
}

#topslide .slide5 {
    background: url("../image/topslide_06_f_r.png") right center / auto 100% no-repeat, url("../image/topslide_06_f_l.png") left center / auto 100% no-repeat, url("../image/topslide_06.png") center center / auto 100% no-repeat, url("../image/topslide_06_b_r.png") right center / auto 100% no-repeat, url("../image/topslide_06_b_l.png") left center / auto 100% no-repeat, url("../image/topslide_06bg.jpg") center center / auto 100% repeat-x;
}

#topslide .slide7 {
    background: url("../image/topslide_07.png") center center / auto 100% no-repeat, url("../image/topslide_07_b_r.png") right center / auto 100% no-repeat, url("../image/topslide_07_b_l.png") left center / auto 100% no-repeat, url("../image/topslide_07bg.jpg") center center / 100% 100% repeat-x;
}

#topslide .slide8 {
    background: url("../image/topslide_08_l.png") center center / auto 100% no-repeat, url("../image/topslide_08_r.png") right center / auto 100% no-repeat, url("../image/topslide_08_b_r.png") right center / auto 100% no-repeat, url("../image/topslide_08_b_l.png") left center / auto 100% no-repeat, url("../image/topslide_08bg.jpg") center center / 100% 100% repeat-x;
}

#topslide .slide9 {
    background: url("../image/topslide_09bg.jpg") center center / 100% 100% no-repeat;
}

#topslide .slide10 {
    background: url("../image/topslide_10.png") center center / auto 100% no-repeat, url("../image/topslide_10bg.jpg") center center / auto 100% no-repeat;
}

#topslide .slide11 {
    background: url("../image/topslide_11.png") center center / auto 100% no-repeat, url("../image/topslide_11bg.jpg") center center / auto no-repeat;
}

#topslide .slide12 {
    background: url("../image/topslide_12.png") center center / auto 100% no-repeat, url("../image/topslide_12bg.jpg") center center / auto no-repeat;
}

#topslide .slide13 {
    background: url("../image/topslide_13.png") center center / auto 100% no-repeat, url("../image/topslide_13bg.jpg") center center / 100% no-repeat;
}

#topslide .slide13a {
    background: url("../image/topslide_13a.png") center center / auto 100% no-repeat, url("../image/topslide_13bg.jpg") center center / 100% no-repeat;
}

#topslide .slide14 {
    background: url("../image/topslide_14.png") center center / auto 100% no-repeat, url("../image/topslide_14bg.jpg") center center / auto no-repeat;
}

#topslide .slide14a {
    background: url("../image/topslide_14a.png") center center / auto 100% no-repeat, url("../image/topslide_14bg.jpg") center center / auto no-repeat;
}

#topslide .slide15 {
    background: url("../image/topslide_15.png") center center / auto 100% no-repeat, url("../image/topslide_15bg.jpg") center center / auto no-repeat;
}

#topslide .slide15a {
    background: url("../image/topslide_15a.png") center center / auto 100% no-repeat, url("../image/topslide_15bg.jpg") center center / auto no-repeat;
}

#topslide .slide16 {
    background: url("../image/topslide_16.png") center center / auto 100% no-repeat, url("../image/topslide_16bg.jpg") center center / auto no-repeat;
}

#topslide .slide17 {
    background: url("../image/topslide_17.png") center center / auto 100% no-repeat, url("../image/topslide_17bg.jpg") center center / auto no-repeat;
}

#topslide .slide18 {
    background: url("../image/topslide_18.png") center center / auto 100% no-repeat, url("../image/topslide_18bg.jpg") center center / auto no-repeat;
}

#topslide .slide19 {
    background: url("../image/topslide_19.png") center center / auto 100% no-repeat, url("../image/topslide_19bg.jpg") center center / auto no-repeat;
}

#topslide .slide20 {
    background: url("../image/topslide_20.jpg") center center / auto 100% no-repeat, 0% 0% / auto;
}

#topslide .slide21 {
    background: url("https://www.takasu.co.jp/top/img/topslide_21.jpg") center center / auto 100% no-repeat, 0% 0% / auto;
}

#topslide .slide21a {
    background: url("https://www.takasu.co.jp/top/img/topslide_21a.jpg") center center / auto 100% no-repeat, 0% 0% / auto;
}

#topslide .slide22 {
    background: url("../image/topslide_22.jpg") center center / auto 100% no-repeat, 0% 0% / auto;
}

#topslide .slide22a {
    background: url("../image/topslide_22a.jpg") center center / auto 100% no-repeat, 0% 0% / auto;
}

#topslide .slide23 {
    background: url("../image/topslide_23.jpg") center center / auto 100% no-repeat, 0% 0% / auto;
}

#topslide .slide23a {
    background: url("../image/topslide_23a.jpg") center center / auto 100% no-repeat, 0% 0% / auto;
}

#topslide .slide24 {
    background: url("../image/topslide_24.jpg") center center / auto 100% no-repeat, 0% 0% / auto;
}

#topslide .slide24a {
    background: url("../image/topslide_24a.jpg") center center / auto 100% no-repeat, 0% 0% / auto;
}

#topslide .slide25 {
    background: url("../image/topslide_25.jpg") center center / auto 100% no-repeat, 0% 0% / auto;
}

#topslide .slide26 {
    background: url("../image/topslide_26.jpg") center center / auto 100% no-repeat, 0% 0% / auto;
}

#topslide .slide27 {
    background: url("../image/topslide_27.jpg") center center / auto 100% no-repeat, 0% 0% / auto;
}

#topslide .slide28 {
    background: url("../image/topslide_28.jpg") center center / auto 100% no-repeat, 0% 0% / auto;
}

#topslide .slide28a {
    background: url("../image/topslide_28a.jpg") center center / auto 100% no-repeat, 0% 0% / auto;
}

#topslide .slide29 {
    background: url("../image/topslide_29.jpg") center center / auto 100% no-repeat, 0% 0% / auto;
}

#topslide .slide30 {
    background: url("../image/topslide_30.jpg") center center / auto 100% no-repeat;
}

#topslide .slide31 {
    background: url("../image/topslide_31.jpg") center center / auto 100% no-repeat;
}

#topslide .slide32 {
    background: url("../image/topslide_32.jpg") center center / auto 100% no-repeat;
}

#topslide .slide33a {
    background: url("../image/topslide_33a.jpg") center center / auto 100% no-repeat;
}

#topslide .slide33b {
    background: url("../image/topslide_33b.jpg") center center / auto 100% no-repeat;
}

#topslide .slide34a {
    background: url("../image/topslide_34a.jpg") center center / auto 100% no-repeat;
}

#topslide .slide34b {
    background: url("../image/topslide_34b.jpg") center center / auto 100% no-repeat;
}

#topslide .slide35 {
    background: url("../image/topslide_35.jpg") center center / auto 100% no-repeat;
}

#topslide .slide36 {
    background: url("../image/topslide_36.jpg") center center / auto 100% no-repeat;
}

#topslide .slide36a {
    background: url("../image/topslide_36a.jpg") center center / auto 100% no-repeat, 0% 0% / auto;
}

#topslide .slide37 {
    background: url("../image/topslide_37.jpg") center center / auto 100% no-repeat;
}

#topslide .slide38 {
    background: url("../image/topslide_38.jpg") center center / auto 100% no-repeat;
}

#topslide .slide38a {
    background: url("../image/topslide_38a.jpg") center center / auto 100% no-repeat;
}

#topslide .slide39 {
    background: url("../image/topslide_39.jpg") center center / auto 100% no-repeat;
}

#topslide .slide40 {
    background: url("../image/topslide_40.jpg") center center / auto 100% no-repeat;
}

#topslide .slide40a {
    background: url("../image/topslide_40a.jpg") center center / auto 100% no-repeat;
}

#topslide .slide41 {
    background: url("../image/topslide_41.jpg") center center / auto 100% no-repeat;
}

#topslide .slide42 {
    background: url("../image/topslide_42.jpg") center center / auto 100% no-repeat;
}

#topslide .slide42a {
    background: url("../image/topslide_42a.jpg") center center / auto 100% no-repeat;
}

#topslide .slide43 {
    background: url("../image/topslide_43.jpg") center center / auto 100% no-repeat;
}

#topslide .slide43a {
    background: url("../image/topslide_43a.jpg") center center / auto 100% no-repeat;
}

#topslide .slide44 {
    background: url("../image/topslide_44.jpg") center center / auto 100% no-repeat;
}

#topslide .slide44a {
    background: url("../image/topslide_44a.jpg") center center / auto 100% no-repeat;
}

#topslide .slide45 {
    background: url("../image/topslide_45.jpg") center center / auto 100% no-repeat;
}

#topslide .slide46 {
    background: url("../image/topslide_46.jpg") center center / auto 100% no-repeat;
}

#topslide .slide47 {
    background: url("../image/topslide_47.jpg") center center / auto 100% no-repeat;
}

#topslide .slide47a {
    background: url("../image/topslide_47a.jpg") center center / auto 100% no-repeat;
}

#topslide .slide48 {
    background: url("../image/topslide_48.jpg") center center / auto 100% no-repeat;
}

#topslide .slide48a {
    background: url("../image/topslide_48a.jpg") center center / auto 100% no-repeat;
}

#topslide .slide49 {
    background: url("../image/topslide_49.jpg") center center / auto 100% no-repeat;
}

#topslide .slide50 {
    background: url("../image/topslide_50.jpg") center center / auto 100% no-repeat;
}

#topslide .slide51 {
    background: url("../image/topslide_51.jpg") center center / auto 100% no-repeat;
}

#topslide .slide52 {
    background: url("../image/topslide_52.jpg") center center / auto 100% no-repeat;
}

#topslide .slide52a {
    background: url("../image/topslide_52a.jpg") center center / auto 100% no-repeat;
}

#topslide .slide53 {
    background: url("../image/topslide_53.jpg") center center / auto 100% no-repeat;
}

#topslide .slide54 {
    background: url("../image/topslide_54.jpg") center center / auto 100% no-repeat;
}

#topslide .slide55 {
    background: url("../image/topslide_55.jpg") center center / auto 100% no-repeat;
}

#topslide .slide56 {
    background: url("../image/topslide_56.jpg") center center / auto 100% no-repeat;
}

#topslide .slide57 {
    background: url("../image/topslide_57.jpg") center center / auto 100% no-repeat;
}

#topslide .slide57a {
    background: url("../image/topslide_57a.jpg") center center / auto 100% no-repeat;
}

#topslide .slide58 {
    background: url("../image/topslide_58.jpg") center center / auto 100% no-repeat;
}

#topslide .swiper1-container, #topslide .swiper2-container {
    transition: opacity 0.6s ease 0s;
}

#topslide .swiper2-container {
    position: relative;
}

#topslide .swiper1-loading, #topslide .swiper2-loading {
    opacity: 0;
    visibility: hidden;
}

#pickup2 {
    padding: 60px 0px;
    background: url("../image/top_pickup2_bg.jpg") center top / 100% 100% no-repeat;
    box-shadow: rgb(239, 239, 239) 0px 5px 6px 0px inset;
}

#pickup2 h2 {
    font-size: 2.6rem;
    color: rgb(33, 139, 204);
    text-align: center;
    margin-bottom: 20px;
    padding: 0px 50px;
}

#pickup2 h2 span {
    color: rgb(176, 43, 90);
}

#pickup2 #slider2 {
    margin-bottom: 30px;
    position: relative;
    transition: opacity 0.6s ease 0s;
}

#pickup2 .swiper3-loading {
    opacity: 0;
    visibility: hidden;
}

#pickup2 #slider2 .swiper-button-next::after, #pickup2 #slider2 .swiper-container-rtl .swiper-button-prev::after {
    content: "";
}

#pickup2 #slider2 .swiper-button-prev::after, #pickup2 #slider2 .swiper-container-rtl .swiper-button-next::after {
    content: "";
}

#pickup2 #slider2 .swiper-button-next, #pickup2 #slider2 .swiper-button-prev {
    top: 0px;
    bottom: 0px;
    margin: auto;
    width: auto;
}

#pickup2 #slider2 .swiper-button-prev, #pickup2 #slider2 .swiper-container-rtl .swiper-button-next {
    left: 0px;
}

#pickup2 #slider2 .swiper-button-next, #pickup2 #slider2 .swiper-container-rtl .swiper-button-prev {
    right: 0px;
}

#pickup2 #slider2 .swiper-button-next img, #pickup2 #slider2 .swiper-button-prev img {
    height: 200px;
    width: auto;
}

#pickup2 .sp-slide a img {
    transition: all 0.2s ease-out 0s;
    min-height: 200px;
    min-width: 200px;
}

#pickup2 .sp-slide a:hover img {
    opacity: 0.6;
}

#pickup2 h2 + p {
    margin-top: 10px;
    text-align: center;
    font-size: 1.4rem;
}

#pickup2 ul {
    padding: 0px 20px;
    max-width: 850px;
    margin: 10px auto auto;
    box-sizing: border-box;
}

#pickup2 li {
    box-sizing: border-box;
    float: left;
    width: 50%;
    padding: 7px 10px;
}

#pickup2 li:nth-child(2n+1) {
    clear: both;
}

#pickup2 li a {
    display: flex;
    align-items: center;
    height: 100%;
    background: rgb(255, 255, 255);
    overflow: hidden;
    border: 1px solid rgb(210, 203, 165);
    border-radius: 4px;
    transition: all 0.2s ease-out 0s;
}

#pickup2 li.pc_banner_full_width a {
    display: block;
    overflow: visible;
}

#pickup2 li a:hover {
    box-shadow: rgba(0, 0, 0, 0.2) 0px 0px 20px 0px;
    transform: scale(1.02);
}

#pickup2 li a::before, #pickup2 li a::after {
    top: 0px;
    bottom: 0px;
    right: 15px;
    margin: auto;
}

#pickup2 li a::after {
    right: 23px;
}

#pickup2 li figure {
    flex-basis: 120px;
    width: 120px;
    min-width: 120px;
    height: 120px;
    background: center center / cover no-repeat;
}

#pickup2 li figure.pickup_figure_01.lazyloaded {
    background-image: url("../image/pickup_img6.jpg");
}

#pickup2 li figure.pickup_figure_02.lazyloaded {
    background-image: url("../image/pickup_img15.jpg");
}

#pickup2 li figure.pickup_figure_03.lazyloaded {
    background-image: url("../image/pickup_img16.jpg");
}

#pickup2 li figure.pickup_figure_04.lazyloaded {
    background-image: url("../image/pickup_img17.jpg");
}

#pickup2 li figure.pickup_figure_05.lazyloaded {
    background-image: url("../image/pickup_img18.jpg");
}

#pickup2 li figure.pickup_figure_06.lazyloaded {
    background-image: url("../image/pickup_img20.jpg");
}

#pickup2 li .txt {
    padding: 5px 35px 5px 10px;
}

#pickup2 li p {
    line-height: 1.4;
    font-size: 1.4rem;
}

#pickup2 li h3 {
    margin-bottom: 5px;
    line-height: 1.2;
    font-size: 2rem;
    color: rgb(33, 139, 204);
}

#pickup2 li h3.ft_sm {
    font-size: 1.8rem;
    line-height: 1;
}

#pickup2 li h3.ft_sm span {
    font-size: 1.4rem;
}

#pickup2 .bnr {
    margin: 0px auto 35px;
}

#pickup2 .bnr a {
    display: block;
    background: rgb(176, 43, 90);
    max-width: 200px;
    margin: auto;
    padding: 20px;
    border-radius: 4px;
    transition: all 0.2s ease-out 0s;
}

#pickup2 .bnr a:hover {
    box-shadow: rgba(0, 0, 0, 0.2) 0px 0px 20px 0px;
    transform: scale(1.02);
}

#pickup2 .bnr h4 {
    padding: 0px;
    line-height: 1;
    font-size: 1.7rem;
    color: rgb(255, 255, 255);
    text-shadow: none;
    text-align: center;
}

#pickup2 .bnr p {
    line-height: 1.4;
    font-size: 1.4rem;
}

#pickup2 .bnr .btn_arrow0 {
    padding-right: 30px;
}

#pickup2 .bnr .btn_arrow0::before {
    background-color: rgb(255, 255, 255);
    top: 0px;
    bottom: 0px;
    right: 10px;
    width: 18px;
    height: 18px;
    margin: auto;
}

#pickup2 .bnr .btn_arrow0::after {
    top: 0px;
    bottom: 0px;
    right: 17px;
    margin: auto;
    width: 4px;
    height: 4px;
    border-top: 1px solid rgb(219, 89, 140);
    border-right: 1px solid rgb(219, 89, 140);
}

#worry2 {
    padding: 50px 30px 40px;
    text-align: center;
}

#worry2.mt40 {
    margin-top: 40px;
}

#worry2 h2 {
    padding: 0px 0px 30px;
    font-size: 2.6rem;
    color: rgb(51, 51, 51);
}

#worry2 h2 span {
    color: rgb(176, 43, 90);
}

#worry2 .wy_tabmenu {
    border: 1px solid rgb(255, 255, 255);
    border-radius: 9px;
    max-width: 862px;
    margin: 0px auto;
    width: 100%;
    background: rgb(255, 255, 255);
    box-shadow: rgba(77, 77, 77, 0.1) 0px 4px 4.3px 0px;
}

#worry2 .wy_tabmenu ul {
    list-style-type: none;
    margin: 0px auto;
    width: auto;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

#worry2 .wy_tabmenu ul li {
    width: 50%;
    padding: 5px 8px;
}

#worry2 .wy_tabmenu ul li span {
    display: block;
    padding: 10px;
    text-align: center;
    border-radius: 5px;
    background: rgb(255, 255, 255);
    color: rgb(0, 0, 0);
    transition: background-color 0.5s ease 0s;
}

#worry2 .wy_tabmenu ul li span:hover {
    cursor: pointer;
    background: rgb(238, 238, 238);
}

#worry2 .wy_tabmenu ul li span.wy_tabmenu_active {
    background: rgb(43, 158, 183);
    color: rgb(255, 255, 255);
}

#worry2 .wy_tabmenu ul li span.wy_tabmenu_active:hover {
    color: rgb(68, 68, 68);
    background: rgb(238, 238, 238);
}

#worry2 .wy_figures {
    text-align: center;
    padding: 0px;
    margin-top: 3%;
}

#worry2 .wy_figures figure {
    max-width: 500px;
    width: 100%;
    margin: 0px auto;
    padding: 0px;
    box-sizing: border-box;
    display: block;
    position: relative;
}

#worry2 .wy_figures figure img {
    width: 100%;
    height: auto;
    max-width: 750px;
    line-height: 0;
}

#worry2 .wy_figures figure a {
    color: rgb(51, 51, 51);
    width: auto;
    display: block;
    padding: 10px 30px;
    font-size: 1.2rem;
    text-align: left;
    line-height: 1.5em;
}

#worry2 .wy_figures figure a span {
    color: rgb(176, 43, 90);
    font-size: 1.8rem;
    display: block;
    line-height: 1.6em;
}

#worry2 .wy_figures figure p {
    display: block;
    position: absolute;
    margin: auto;
    width: auto;
}

#worry2 .wy_figures figure#wy_tabmenu2fig {
    display: none;
}

#worry2 .wy_figures figure#wy_tabmenu3fig {
    display: none;
}

#worry2 .wy_figures figure#wy_tabmenu4fig {
    display: none;
}

#worry2 .wy_figures figure map area {
    cursor: pointer;
}

#worry2 .wy_aging {
    max-width: 920px;
    width: 100%;
    margin: 0px auto 30px;
    padding: 0px;
}

#worry2 .wy_aging ul {
    display: flex;
    flex-wrap: wrap;
}

#worry2 .wy_aging ul li {
    width: calc(((25% - 20px) - 4px) - 10px);
    padding: 10px;
    border: 2px solid rgb(71, 201, 187);
    border-radius: 10px;
    margin: 0px 5px 20px;
    background-color: rgb(255, 255, 255);
}

#worry2 .wy_aging ul li > a {
    display: block;
}

#worry2 .wy_aging ul li > a p {
    text-align: left;
    color: rgb(71, 201, 187);
    font-size: 20px;
    margin-top: 10px;
}

#worry2 .wy_aging ul li > a p span {
    display: inline-block;
    width: 24px;
    text-align: center;
    height: 24px;
    line-height: 24px;
    border-radius: 50%;
    background-color: rgb(71, 201, 187);
    font-size: 20px;
    color: rgb(255, 255, 255);
    margin-right: 13px;
    font-family: "Noto Serif JP", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "ＭＳ Ｐ明朝", "MS PMincho", "serif";
}

#worry2 .wy_aging ul li img {
    width: 100%;
    height: auto;
}

#worry2 .wy_btnline {
    padding: 0px 0px 60px;
    margin-top: 3%;
}

#worry2 .wy_btnline a {
    background: rgb(33, 139, 204);
    max-width: 300px;
    margin: 0px auto;
    padding: 12px;
    border-radius: 4px;
    transition: all 0.2s ease-out 0s;
    display: block;
    color: rgb(255, 255, 255);
    position: relative;
    box-sizing: border-box;
}

#worry2 .wy_btnline a:hover {
    box-shadow: rgba(0, 0, 0, 0.2) 0px 0px 20px 0px;
    transform: scale(1.02);
}

#worry2 .wy_btnline a::after {
    content: "";
    top: 0px;
    bottom: 0px;
    right: 17px;
    margin: auto;
    width: 8px;
    height: 8px;
    border-top: 1px solid rgb(255, 255, 255);
    border-right: 1px solid rgb(255, 255, 255);
    position: absolute;
    display: block;
    transform: rotate(45deg);
}

#treatment2 {
    padding: 85px 50px 60px;
    background: url("../image/treatment2_shourei_bg_pc.jpg") center bottom / 100% no-repeat, url("../image/treatment2_shourei_bg1_pc.png") right top / 100% no-repeat, rgb(255, 239, 235);
    overflow: hidden;
    margin: 0px !important;
}

#treatment2 .innerhead {
    max-width: 920px;
    margin: auto;
}

#treatment2 .inner {
    max-width: 860px;
    margin: auto;
}

#contents #treatment2 .inner {
    padding-left: 0px;
    padding-right: 0px;
}

#treatment2 h2 {
    position: relative;
    margin: 25px auto 0px;
    font-size: 3rem;
    color: rgb(220, 90, 140);
    z-index: 1;
}

#treatment2 h3 {
    position: relative;
    display: inline-block;
    background-color: rgb(219, 89, 140);
    border-radius: 50px;
    padding: 9px 20px 10px;
    font-size: 1.6rem;
    color: rgb(255, 255, 255);
    z-index: 1;
}

#treatment2 h3 span {
    font-size: 2rem;
}

#treatment2 nav {
    position: relative;
    display: flex;
    justify-content: space-between;
    width: 100%;
    margin-top: 45px;
}

#treatment2 nav .img {
    position: absolute;
    right: 64px;
    top: -220px;
}

#treatment2 nav > div {
    box-sizing: border-box;
    position: relative;
    width: 200px;
    padding: 0px 0px 20px;
    margin: 0px 3px;
}

#treatment2 nav > div:last-child {
    padding: 0px 0px 20px;
}

#treatment2 nav > div > div {
    height: 100%;
    background: center top / 100% no-repeat rgb(255, 255, 255);
    border-radius: 6px;
}

#treatment2 nav > div:nth-child(2) > div.lazyloaded {
    background-image: url("../image/treatment_img1.webp");
}

#treatment2 nav > div:nth-child(3) > div.lazyloaded {
    background-image: url("../image/treatment_img2.webp");
}

#treatment2 nav > div:nth-child(4) > div.lazyloaded {
    background-image: url("../image/treatment_img3.webp");
}

#treatment2 nav > div:nth-child(5) > div.lazyloaded {
    background-image: url("../image/treatment_img4.webp");
}

#treatment2 h4 {
    padding: 40px 10px;
    font-size: 2rem;
    text-shadow: rgb(255, 255, 255) 0px 0px 3px, rgb(255, 255, 255) 0px 0px 5px, rgb(255, 255, 255) 0px 0px 5px, rgb(255, 255, 255) 0px 0px 10px, rgb(255, 255, 255) 0px 0px 10px;
}

#treatment2 nav ul {
    padding: 10px;
}

#treatment2 nav li {
    border-top: 1px solid rgb(244, 244, 244);
}

#treatment2 nav li:first-child {
    border: none;
}

#treatment2 nav a {
    display: block;
    padding: 8px 20px 8px 0px;
    font-size: 1.4rem;
    text-shadow: rgb(255, 255, 255) 0px 0px 3px, rgb(255, 255, 255) 0px 0px 5px, rgb(255, 255, 255) 0px 0px 5px, rgb(255, 255, 255) 0px 0px 10px, rgb(255, 255, 255) 0px 0px 10px;
    transition: color 0.15s ease-out 0s;
}

#treatment2 nav a img {
    vertical-align: middle;
}

#treatment2 nav a:hover {
    color: rgb(220, 90, 140);
}

#treatment2 .btn_arrow1::before {
    display: block;
    position: absolute;
    width: 13px;
    height: 13px;
    border: 1px solid rgb(33, 139, 204);
    border-radius: 50px;
    content: "";
    right: 0px;
    top: 0px;
    bottom: 0px;
    margin: auto;
}

#treatment2 .btn_arrow1::after {
    display: block;
    position: absolute;
    width: 4px;
    height: 4px;
    border-top: 1px solid rgb(33, 139, 204);
    border-right: 1px solid rgb(33, 139, 204);
    transform: rotate(45deg);
    content: "";
    right: 6px;
    top: 0px;
    bottom: 0px;
    margin: auto;
}

#treatment2 .btn_more.btn_arrow1::before {
    right: 7px;
}

#treatment2 .btn_more.btn_arrow1::after {
    right: 13px;
}

#treatment2 nav .btns {
    margin: 0px 0px 10px;
    padding: 10px;
    text-align: center;
}

#treatment2 nav .btn_more {
    box-sizing: border-box;
    display: inline-block;
    padding: 7px 20px;
    width: 100%;
    border: 1px solid rgb(33, 139, 204);
    border-radius: 4px;
    line-height: 1.3;
    font-size: 1.3rem;
    color: rgb(33, 139, 204);
    text-shadow: none;
    transition: all 0.15s ease-out 0s;
}

#treatment2 nav .btn_more:hover {
    background: rgb(220, 90, 140);
    color: rgb(255, 255, 255) !important;
}

#treatment2 .bnr {
    margin: 30px auto auto;
}

#treatment2 .bnr a {
    display: block;
    background: rgb(176, 43, 90);
    max-width: 200px;
    margin: auto;
    padding: 20px;
    border-radius: 4px;
    transition: all 0.2s ease-out 0s;
}

#treatment2 .bnr a:hover {
    box-shadow: rgba(0, 0, 0, 0.2) 0px 0px 20px 0px;
    transform: scale(1.02);
}

#treatment2 .bnr h4 {
    padding: 0px;
    line-height: 1;
    font-size: 1.7rem;
    color: rgb(255, 255, 255);
    text-shadow: none;
    text-align: center;
}

#treatment2 .bnr p {
    line-height: 1.4;
    font-size: 1.4rem;
}

#treatment2 .bnr .btn_arrow0 {
    padding-right: 30px;
}

#treatment2 .bnr .btn_arrow0::before {
    background-color: rgb(255, 255, 255);
    top: 0px;
    bottom: 0px;
    right: 10px;
    width: 18px;
    height: 18px;
    margin: auto;
}

#treatment2 .bnr .btn_arrow0::after {
    top: 0px;
    bottom: 0px;
    right: 17px;
    margin: auto;
    width: 4px;
    height: 4px;
    border-top: 1px solid rgb(219, 89, 140);
    border-right: 1px solid rgb(219, 89, 140);
}

#treatment2 .shoureiphoto {
    background-size: 100%;
    padding: 45px 0px;
    margin-bottom: 0px !important;
}

#treatment2 .shoureiphoto .inner {
    max-width: 790px;
}

#treatment2 .shoureiphoto h2 {
    font-size: 2.6rem;
    color: rgb(51, 51, 51);
    text-align: center;
    padding: 0px 0px 30px;
}

#treatment2 .shoureiphoto .shoureiphoto_tabmenu {
    border: 1px solid rgb(33, 139, 204);
    border-radius: 9px;
    max-width: 600px;
    margin: 0px auto 30px;
    width: 100%;
    background: rgb(255, 255, 255);
}

#treatment2 .shoureiphoto .shoureiphoto_tabmenu ul {
    list-style-type: none;
    margin: 0px auto;
    width: auto;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

#treatment2 .shoureiphoto .shoureiphoto_tabmenu ul li {
    padding: 5px;
    border-left: 1px solid rgb(33, 139, 204);
    flex: 1 1 0%;
}

#treatment2 .shoureiphoto .shoureiphoto_tabmenu ul li:first-child {
    border-left: none;
}

#treatment2 .shoureiphoto .shoureiphoto_tabmenu ul li span {
    display: block;
    padding: 10px;
    text-align: center;
    border-radius: 5px;
    background: rgb(255, 255, 255);
    color: rgb(33, 139, 204);
    transition: background-color 0.5s ease 0s;
}

#treatment2 .shoureiphoto .shoureiphoto_tabmenu ul li span:hover {
    cursor: pointer;
    background: rgb(238, 238, 238);
}

#treatment2 .shoureiphoto .shoureiphoto_tabmenu ul li span.shoureiphoto_tabmenu_active {
    background: rgb(33, 139, 204);
    color: rgb(255, 255, 255);
}

#treatment2 .shoureiphoto .shoureiphoto_tabmenu ul li span.shoureiphoto_tabmenu_active:hover {
    color: rgb(33, 139, 204);
    background: rgb(238, 238, 238);
}

#treatment2 .shoureiphoto .shoureiphoto_tabcnts {
    text-align: center;
    padding: 0px;
}

#treatment2 .shoureiphoto .shoureiphoto_tabcnts #shoureiphoto_tabcnts2_items, #treatment2 .shoureiphoto .shoureiphoto_tabcnts #shoureiphoto_tabcnts3_items, #treatment2 .shoureiphoto .shoureiphoto_tabcnts #shoureiphoto_tabcnts4_items {
    display: none;
}

#treatment2 .shoureiphoto .shoureiphoto_tabcnts .swipershoureiphoto1-scrollbar, #treatment2 .shoureiphoto .shoureiphoto_tabcnts .swipershoureiphoto2-scrollbar, #treatment2 .shoureiphoto .shoureiphoto_tabcnts .swipershoureiphoto3-scrollbar, #treatment2 .shoureiphoto .shoureiphoto_tabcnts .swipershoureiphoto4-scrollbar {
    margin-top: 20px;
    height: 5px;
    background: rgb(255, 255, 255);
}

#treatment2 .shoureiphoto .shoureiphoto_tabcnts .shoureiphoto_tabcnts_panel {
    background: rgb(237, 236, 232);
    border-radius: 12px;
    padding: 0px;
    box-sizing: border-box;
    height: auto;
    width: 300px !important;
}

#treatment2 .shoureiphoto .shoureiphoto_tabcnts .shoureiphoto_tabcnts_panel:last-child {
    margin: 0px !important;
}

#treatment2 .shoureiphoto .shoureiphoto_tabcnts .shoureiphoto_tabcnts_panel .set_combi {
    background: rgb(255, 255, 255);
    border-top-right-radius: 6px;
    border-top-left-radius: 6px;
    display: flex;
    padding: 15px 20px 5px;
    justify-content: space-between;
    position: relative;
}

#treatment2 .shoureiphoto .shoureiphoto_tabcnts .shoureiphoto_tabcnts_panel .set_combi .set_img span.eximg {
    display: flex;
    align-items: center;
    text-align: center;
    width: 128px;
    height: 128px;
    background-color: rgb(238, 238, 238);
}

#treatment2 .shoureiphoto .shoureiphoto_tabcnts .shoureiphoto_tabcnts_panel .set_combi .set_img img {
    width: 100%;
    height: auto;
}

#treatment2 .shoureiphoto .shoureiphoto_tabcnts .shoureiphoto_tabcnts_panel .set_combi .set_img span.hfit img {
    width: auto;
    height: 100%;
    margin: auto;
}

#treatment2 .shoureiphoto .shoureiphoto_tabcnts .shoureiphoto_tabcnts_panel .set_combi .set_img span.extxt {
    font-size: 1.4rem;
    display: block;
}

#treatment2 .shoureiphoto .shoureiphoto_tabcnts .shoureiphoto_tabcnts_panel .set_combi .set_img span.extxt span {
    font-size: 1.2rem;
    display: inline;
}

#treatment2 .shoureiphoto .shoureiphoto_tabcnts .shoureiphoto_tabcnts_panel .set_combi .set_img span.ssmall {
    font-size: 1.2rem;
    display: block;
}

#treatment2 .shoureiphoto .shoureiphoto_tabcnts .shoureiphoto_tabcnts_panel .set_combi .set_img span.extxt span.ssmall {
    font-size: 0.9rem;
    display: inline;
}

#treatment2 .shoureiphoto .shoureiphoto_tabcnts .shoureiphoto_tabcnts_panel h3 {
    position: static;
    background: rgb(255, 255, 255);
    box-sizing: border-box;
    color: rgb(176, 43, 90);
    padding: 9px 20px 8px;
    display: block;
    border-radius: unset;
    width: 100%;
    text-align: left;
    font-size: 1.7rem;
}

#treatment2 .shoureiphoto .shoureiphoto_tabcnts .shoureiphoto_tabcnts_panel h3 span {
    display: inline;
    font-size: 1.3rem;
}

#treatment2 .shoureiphoto .shoureiphoto_tabcnts .shoureiphoto_tabcnts_panel .shourei_desc {
    background: rgb(255, 255, 255);
    font-size: 1.4rem;
    display: block;
    margin: 0px;
    padding: 0px 20px;
}

#treatment2 .shoureiphoto .shoureiphoto_tabcnts .shoureiphoto_tabcnts_panel .shourei_price {
    background: rgb(255, 255, 255);
    display: block;
    padding: 0px 20px;
}

#treatment2 .shoureiphoto .shoureiphoto_tabcnts .shoureiphoto_tabcnts_panel .shourei_price .shourei_price_t {
    display: block;
    width: 100%;
    text-align: left;
    margin: 0px;
    padding: 0px;
    font-size: 1.7rem;
}

#treatment2 .shoureiphoto .shoureiphoto_tabcnts .shoureiphoto_tabcnts_panel .shourei_price .shourei_price_ex {
    display: block;
    width: 100%;
    text-align: left;
    margin: 0px;
    padding: 0px;
    font-size: 1.2rem;
}

#treatment2 .shoureiphoto .shoureiphoto_tabcnts .shoureiphoto_tabcnts_panel .shourei_risk {
    display: block;
    border-bottom-right-radius: 6px;
    border-bottom-left-radius: 6px;
    padding: 15px 20px;
}

#treatment2 .shoureiphoto .shoureiphoto_tabcnts .shoureiphoto_tabcnts_panel .shourei_risk .shourei_risk_t {
    display: block;
    width: 100%;
    text-align: left;
    margin: 0px;
    padding: 0px;
    font-size: 1.4rem;
}

#treatment2 .shoureiphoto .shoureiphoto_tabcnts .shoureiphoto_tabcnts_panel .shourei_risk .shourei_risk_ex {
    display: block;
    width: 100%;
    text-align: left;
    margin: 0px;
    padding: 0px;
    font-size: 1.2rem;
}

#treatment2 .shoureiphoto .shoureiphoto_tabcnts .shoureiphoto_tabcnts_panel p {
    font-size: 1.4rem;
    text-align: left;
    margin-bottom: 10px;
    padding-bottom: 1rem;
}

#treatment2 .shoureiphoto .shoureiphoto_tabcnts .shoureiphoto_tabcnts_panel p span {
    color: rgb(176, 43, 90);
}

#treatment2 .shoureiphoto .shoureiphoto_tabcnts .shoureiphoto_tabcnts_panel .btns {
    background: rgb(255, 255, 255);
    margin: 0px auto;
    padding: 15px 0px;
    text-align: center;
}

#treatment2 .shoureiphoto .shoureiphoto_tabcnts .shoureiphoto_tabcnts_panel .btn_link0.btn_arrow1, #treatment2 .shoureiphoto .shoureiphoto_tabcnts .shoureiphoto_tabcnts_panel .btn_link1.btn_arrow1 {
    display: block;
    padding-top: 7px;
    padding-bottom: 7px;
    width: 140px;
    max-width: 100%;
    font-size: 1.5rem;
    color: rgb(33, 139, 204);
    margin: 0px auto;
}

#treatment2 .shoureiphoto .shoureiphoto_tabcnts .shoureiphoto_tabcnts_panel .btns .btn_arrow1::before {
    display: block;
    position: absolute;
    width: 13px;
    height: 13px;
    border: 1px solid rgb(33, 139, 204);
    border-radius: 50px;
    content: "";
    right: 10px;
    top: 0px;
    bottom: 0px;
    margin: auto;
}

#treatment2 .shoureiphoto .shoureiphoto_tabcnts .shoureiphoto_tabcnts_panel .btns .btn_arrow1::after {
    display: block;
    position: absolute;
    width: 4px;
    height: 4px;
    border-top: 1px solid rgb(33, 139, 204);
    border-right: 1px solid rgb(33, 139, 204);
    transform: rotate(45deg);
    content: "";
    right: 16px;
    top: 0px;
    bottom: 0px;
    margin: auto;
}

#treatment2 .shoureiphoto .shoureiphoto_tabcnts .shoureiphoto_tabcnts_panel .btns:hover .btn_arrow1::before {
    border: 1px solid rgb(255, 255, 255);
    content: "";
}

#treatment2 .shoureiphoto .shoureiphoto_tabcnts .shoureiphoto_tabcnts_panel .btns:hover .btn_arrow1::after {
    border-top: 1px solid rgb(255, 255, 255);
    border-right: 1px solid rgb(255, 255, 255);
    content: "";
}

#treatment2 .shoureiphoto .shoureiphoto_tabcnts .shoureiphoto_tabcnts_panel .btn_link0.btn_arrow1 span, #treatment2 .shoureiphoto .shoureiphoto_tabcnts .shoureiphoto_tabcnts_panel .btn_link1.btn_arrow1 span {
    color: rgb(176, 43, 90);
}

#treatment2 .shoureiphoto .shoureiphoto_tabcnts .shoureiphoto_tabcnts_panel.adjbtn {
    position: relative;
}

#treatment2 .shoureiphoto .shoureiphoto_tabcnts .shoureiphoto_tabcnts_panel.adjbtn p {
    padding-bottom: 5rem;
}

#treatment2 .shoureiphoto .shoureiphoto_tabcnts .shoureiphoto_tabcnts_panel.adjbtn .btns {
    position: absolute;
    left: 0px;
    right: 0px;
    bottom: 10px;
}

#mv2 {
    background: url("../image/top_mv2_bg.jpg") center center / 100% 100% no-repeat;
    overflow: hidden;
    padding: 0px;
    height: 694px;
    margin: 0px !important;
}

#mv2 .inner {
    position: relative;
    width: 100%;
    max-width: 950px;
    margin: 0px auto;
    height: 100%;
}

#mv2 h2 {
    position: relative;
    margin: 0px auto 30px;
    font-size: 2.6rem;
    color: rgb(51, 51, 51);
    text-align: center;
    z-index: 1;
    padding-top: 52px;
}

#mv2 h2 span {
    font-size: 3rem;
    color: rgb(176, 43, 90);
}

#mv2 .inner #mvImg {
    position: absolute;
    top: 0px;
    bottom: 0px;
    left: 0px;
    width: auto;
    height: 694px;
    z-index: 1;
}

#mv2 .takasu_message {
    position: absolute;
    right: 0px;
    width: 100%;
    max-width: 360px;
    background: rgb(255, 255, 255);
    border-radius: 10px;
    padding: 30px 40px 52px;
    font-size: 1.5rem;
}

#mv2 .takasu_message p {
    margin-bottom: 1em;
}

#mv2 .bnr {
    margin: 30px auto auto;
}

#mv2 .bnr a {
    display: block;
    background: rgb(255, 255, 255);
    border: 1px solid rgb(33, 139, 204);
    max-width: 100%;
    box-sizing: border-box;
    margin: auto;
    padding: 20px;
    border-radius: 4px;
    transition: all 0.2s ease-out 0s;
}

#mv2 .bnr a:hover {
    box-shadow: rgba(0, 0, 0, 0.2) 0px 0px 20px 0px;
    transform: scale(1.02);
}

#mv2 .bnr h4 {
    padding: 0px;
    line-height: 1;
    font-size: 1.8rem;
    color: rgb(33, 139, 204);
    text-shadow: none;
    text-align: center;
}

#mv2 .bnr img {
    width: 114px;
    height: auto;
    margin-right: 4px;
}

#mv2 .bnr p {
    line-height: 1.4;
    font-size: 1.4rem;
}

#mv2 .bnr .btn_arrow0 {
    padding-right: 30px;
    border: 1px solid rgb(33, 139, 204);
}

#mv2 .bnr .btn_arrow0::before {
    background-color: rgb(255, 255, 255);
    border: 1px solid rgb(33, 139, 204);
    top: 0px;
    bottom: 0px;
    right: 11px;
    width: 18px;
    height: 18px;
    margin: auto;
}

#mv2 .bnr .btn_arrow0::after {
    top: 0px;
    bottom: 0px;
    right: 19px;
    margin: auto;
    width: 4px;
    height: 4px;
    border-top: 1px solid rgb(33, 139, 204);
    border-right: 1px solid rgb(33, 139, 204);
}

#mv3 {
    padding: 0px;
    background: linear-gradient(rgb(213, 242, 249) 0%, rgba(71, 201, 187, 0) 100%);
    margin: 0px !important;
}

#mv3 h2 {
    font-size: 3rem;
    color: rgb(33, 139, 204);
    text-align: center;
    padding: 30px 0px;
    position: relative;
}

#mv3 .inner {
    width: 100%;
    max-width: 950px;
    margin: 0px auto;
    height: 100%;
}

#mv3 h3 {
    margin: 0px auto 30px;
    font-size: 2.6rem;
    color: rgb(51, 51, 51);
}

#mv3 h3 span {
    font-size: 2.6rem;
    color: rgb(176, 43, 90);
}

#mv3 .takasu_message {
    width: 90%;
    box-sizing: border-box;
    max-width: 920px;
    background: rgb(255, 255, 255);
    border-radius: 10px;
    padding: 30px 40px 40px;
    margin: 0px auto;
    font-size: 1.5rem;
    box-shadow: rgba(161, 161, 161, 0.25) 0px 4px 4px 0px;
}

#mv3 .takasu_message p {
    margin-bottom: 1em;
}

#mv3 .bnr {
    margin: 6% auto auto;
}

#mv3 .bnr a {
    display: block;
    background: rgb(255, 255, 255);
    border: 1px solid rgb(33, 139, 204);
    max-width: 380px;
    box-sizing: border-box;
    margin: auto;
    padding: 20px;
    border-radius: 4px;
    transition: all 0.2s ease-out 0s;
}

#mv3 .bnr a:hover {
    box-shadow: rgba(0, 0, 0, 0.2) 0px 0px 20px 0px;
    transform: scale(1.02);
}

#mv3 .bnr h4 {
    padding: 0px;
    line-height: 1;
    font-size: 1.8rem;
    color: rgb(33, 139, 204);
    text-shadow: none;
    text-align: center;
}

#mv3 .bnr img {
    width: 114px;
    height: auto;
    margin-right: 4px;
}

#mv3 .bnr p {
    line-height: 1.4;
    font-size: 1.4rem;
}

#mv3 .bnr .btn_arrow0 {
    padding-right: 30px;
    border: 1px solid rgb(33, 139, 204);
}

#mv3 .bnr .btn_arrow0::before {
    background-color: rgb(255, 255, 255);
    border: 1px solid rgb(33, 139, 204);
    top: 0px;
    bottom: 0px;
    right: 11px;
    width: 18px;
    height: 18px;
    margin: auto;
}

#mv3 .bnr .btn_arrow0::after {
    top: 0px;
    bottom: 0px;
    right: 19px;
    margin: auto;
    width: 4px;
    height: 4px;
    border-top: 1px solid rgb(33, 139, 204);
    border-right: 1px solid rgb(33, 139, 204);
}

#toppage #info {
    padding: 60px 0px;
}

.modal {
    display: none;
    position: fixed;
    width: 100%;
    height: 100%;
    top: 0px;
    left: 0px;
    background: rgba(0, 0, 0, 0.5);
    z-index: 10000;
}

.modal_inner {
    position: absolute;
    top: 50%;
    left: 50%;
    width: auto;
    transform: translate(-50%, -50%);
}

.modal_inner .btns {
    margin-top: 1em;
    text-align: center;
}

.modal_inner iframe {
    margin: auto;
    max-width: 100%;
}

.modal_inner .others {
    margin: 1em auto 2em;
}

.modal_inner .others {
    max-width: 700px;
}

.modal_inner .others li {
    box-sizing: border-box;
    padding: 5px;
    float: left;
    width: 20%;
}

.modal_inner .others li a {
    display: block;
    transition: all 0.2s ease-out 0s;
}

.modal_inner .others li a:hover {
    box-shadow: rgba(0, 0, 0, 0.2) 0px 0px 20px 0px;
    transform: scale(1.02);
}

.modal_inner .btns {
    margin-top: 1em;
    text-align: center;
}

.ftc_red {
    color: rgb(176, 43, 90);
}

header .header_items_row1 .header_item p.h_1 {
    font-size: 1.2rem;
    color: rgb(153, 153, 153);
    white-space: nowrap;
}

header .header_items_row1 .header_item p.h_2 img {
    vertical-align: baseline;
}

p.h_1, p.h_2, p.h_3, p.h_4 {
    line-height: 1.4;
}

header .header_items_row1 .header_item .freedial p.h_3 {
    margin-bottom: 3px;
    line-height: 1;
    font-weight: bold;
    font-size: 1.1rem;
    color: rgb(33, 139, 204);
}

#contact p.h_2 {
    float: left;
    font-size: 2rem;
    color: rgb(33, 139, 204);
}

#contact p.h_3 {
    margin-top: 30px;
    font-size: 1.4rem;
    color: rgb(33, 139, 204);
}

#contact p.h_4 {
    margin-top: 3px;
    font-size: 1.4rem;
}

#clinic p.h_2 {
    font-size: 2rem;
    color: rgb(33, 139, 204);
}

#clinic ul + p.h_2 {
    margin-top: 30px;
}

#supervision p.h_2 {
    font-size: 1.8rem;
    color: rgb(33, 139, 204);
    margin-top: 0px;
}

#sp_menu .subject p.h_2 {
    box-sizing: border-box;
    float: none;
    width: auto;
    height: auto;
    padding: 0px 0px 0px 8px;
    border-left: 4px solid rgb(33, 139, 204);
    font-size: 1.8rem;
}

#sp_menu .subject .list p.h_3 {
    font-size: 1.5rem;
    position: relative;
    padding: 10px 0px;
    margin: 0px;
    transition: color 0.15s ease-out 0s;
}

#sp_menu .subject .list p.h_3:hover {
    color: rgb(33, 139, 204);
}

#sp_menu .subject .list p.h_3::before, #sp_menu .subject .list p.h_3::after {
    position: absolute;
    top: 0px;
    bottom: 0px;
    right: 0px;
    margin: auto;
    background: rgb(33, 139, 204);
    content: "";
}

#sp_menu .subject .list p.h_3::before {
    right: 7px;
    width: 2px;
    height: 16px;
}

#sp_menu .subject .list p.h_3::after {
    width: 16px;
    height: 2px;
}

#sp_menu .subject .list p.h_3.act::before {
    display: none;
}

#sp_menu .mmnav p.h_2 {
    box-sizing: border-box;
    float: none;
    width: auto;
    height: auto;
    padding: 0px 0px 0px 8px;
    border-left: 4px solid rgb(33, 139, 204);
    font-size: 1.8rem;
    margin-bottom: 20px;
}

#sp_menu .freedial p.h_3 {
    margin-bottom: 5px;
    line-height: 1;
    font-weight: bold;
    font-size: 1.1rem;
    color: rgb(33, 139, 204);
}

footer .box p.h_3 {
    margin-bottom: 5px;
    font-size: 1.4rem;
}

#newmenu5 {
    padding: 80px 0px;
    background: url("../image/top_newmenu5_bg.jpg") center center / 100% no-repeat;
}

#newmenu5 h2 {
    font-size: 2.6rem;
    color: rgb(33, 139, 204);
    text-align: center;
    margin-bottom: 20px;
    padding: 0px 50px;
}

#newmenu5 h2 span {
    color: rgb(176, 43, 90);
}

#newmenu5 #slider2 {
    position: relative;
    transition: opacity 0.6s ease 0s;
}

#newmenu5 #slider2 .swiper-wrapper {
    justify-content: center;
}

#newmenu5 .sp-slide a {
    position: relative;
}

#newmenu5 .sp-slide a .titlebar {
    font-size: 1.35rem;
    color: rgb(255, 255, 255);
    background: rgb(239, 168, 168);
    text-align: center;
    padding: 5px 0px;
    box-sizing: border-box;
    position: absolute;
    bottom: 0px;
    left: 0px;
    right: 0px;
    margin: auto;
    border-radius: 4px;
    width: 80%;
}

#newmenu5 .sp-slide a img {
    transition: all 0.2s ease-out 0s;
    min-height: 190px;
    min-width: 190px;
    margin-bottom: 43px;
}

#newmenu5 .sp-slide a:hover img {
    opacity: 0.6;
}

#subject {
    border-top: 1px solid rgb(220, 220, 220);
    padding: 50px;
}

#subject .mt30 {
    margin-top: 30px !important;
}

#subject p.h_2 {
    font-size: 2rem;
    color: rgb(33, 139, 204);
}

#subject .list p.h_3 {
    padding-bottom: 5px;
    margin-bottom: 15px;
    border-bottom: 1px solid rgb(220, 220, 220);
    font-size: 1.6rem;
}

#subject .list {
    display: flex;
    margin: 30px -10px 0px;
}

#subject .list_ope {
    flex-wrap: wrap;
}

#subject .list > li {
    padding: 0px 10px;
    flex-basis: 22%;
}

#subject .list_ope > li:nth-child(n+6) {
    margin-top: 30px;
}

#subject .list h3 {
    padding-bottom: 5px;
    margin-bottom: 15px;
    border-bottom: 1px solid rgb(220, 220, 220);
    font-size: 1.6rem;
}

#subject .list li li {
    margin: 3px 0px;
}

#subject .list li {
    font-size: 1.3rem;
}

#column_utilities li a, #subject li a {
    transition: color 0.15s ease-out 0s;
}

#column_utilities li a:hover, #subject li a:hover {
    color: rgb(33, 139, 204);
}

#subject nav {
    margin-top: 30px;
}

#column_utilities nav li, #subject nav li {
    display: inline-block;
    margin-right: 40px;
    line-height: 1.2;
    font-size: 1.4rem;
}

#column_utilities nav li a, #subject nav li a {
    display: block;
    position: relative;
    padding-left: 25px;
}

#column_utilities nav li a::before, #subject nav li a::before {
    display: block;
    position: absolute;
    top: 0px;
    bottom: 0px;
    left: 0px;
    margin: auto;
    width: 16px;
    height: 16px;
    border: 1px solid rgb(33, 139, 204);
    border-radius: 50px;
    content: "";
}

#column_utilities nav li a::after, #subject nav li a::after {
    display: block;
    position: absolute;
    top: 0px;
    bottom: 0px;
    left: 6px;
    margin: auto;
    width: 3px;
    height: 3px;
    border-top: 1px solid rgb(33, 139, 204);
    border-right: 1px solid rgb(33, 139, 204);
    transform: rotate(45deg);
    content: "";
}

#operation {
    border-top: 1px solid rgb(220, 220, 220);
    padding: 50px;
}

#operation .mt30 {
    margin-top: 30px !important;
}

#operation p.h_2 {
    font-size: 2rem;
    color: rgb(33, 139, 204);
}

#operation .list p.h_3 {
    padding-bottom: 5px;
    margin-bottom: 15px;
    border-bottom: 1px solid rgb(220, 220, 220);
    font-size: 1.6rem;
}

#operation .list {
    display: flex;
    margin: 30px -10px 0px;
}

#operation .list_ope {
    flex-wrap: wrap;
}

#operation .list > li {
    padding: 0px 10px;
    flex-basis: 22%;
}

#operation .list_ope > li:nth-child(n+5) {
    margin-top: 30px;
}

#operation .list h3 {
    padding-bottom: 5px;
    margin-bottom: 15px;
    border-bottom: 1px solid rgb(220, 220, 220);
    font-size: 1.6rem;
}

#operation .list li li {
    margin: 3px 0px;
}

#operation .list li {
    font-size: 1.3rem;
}

#column_utilities li a, #operation li a {
    transition: color 0.15s ease-out 0s;
}

#column_utilities li a:hover, #operation li a:hover {
    color: rgb(33, 139, 204);
}

#operation nav {
    margin-top: 30px;
}

#column_utilities nav li, #operation nav li {
    display: inline-block;
    margin-right: 40px;
    line-height: 1.2;
    font-size: 1.4rem;
}

#column_utilities nav li a, #operation nav li a {
    display: block;
    position: relative;
    padding-left: 25px;
}

#column_utilities nav li a::before, #operation nav li a::before {
    display: block;
    position: absolute;
    top: 0px;
    bottom: 0px;
    left: 0px;
    margin: auto;
    width: 16px;
    height: 16px;
    border: 1px solid rgb(33, 139, 204);
    border-radius: 50px;
    content: "";
}

#column_utilities nav li a::after, #operation nav li a::after {
    display: block;
    position: absolute;
    top: 0px;
    bottom: 0px;
    left: 6px;
    margin: auto;
    width: 3px;
    height: 3px;
    border-top: 1px solid rgb(33, 139, 204);
    border-right: 1px solid rgb(33, 139, 204);
    transform: rotate(45deg);
    content: "";
}

#fswords {
    padding: 40px 20px 0px;
    text-align: center;
}

#fswords .fswords_wrap {
    padding: 20px;
    text-align: center;
    margin: 0px auto;
    width: auto;
    max-width: fit-content;
    min-width: 550px;
    border-radius: 5px;
    background: rgb(244, 244, 244);
    box-sizing: border-box;
}

#fswords .fswords_wrap h2 {
    color: rgb(33, 139, 204);
    font-size: 1.8rem;
    line-height: 1;
    margin-bottom: 10px;
}

#fswords .fswords_wrap h2::before {
    content: "";
    width: 1.8rem;
    height: 1.8rem;
    background: url("../image/top_icon_fsw.svg") center center / 100% no-repeat;
    display: inline-block;
    vertical-align: middle;
    margin-right: 5px;
}

#fswords .fswords_wrap ul {
    padding: 5px 5px 0px;
    list-style-type: none;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
}

#fswords .fswords_wrap ul li {
    padding: 0px 5px 5px;
}

#fswords .fswords_wrap ul li a {
    padding: 6px 14px;
    display: inline-block;
    border-radius: 5px;
    text-align: center;
    background: rgb(255, 255, 255);
    font-size: 1.4rem;
    transition: all 0.2s ease-out 0s;
}

#fswords .fswords_wrap ul li a:hover {
    box-shadow: rgba(0, 0, 0, 0.2) 0px 0px 20px 0px;
    transform: scale(1.02);
}

.ginza_att {
    text-align: left;
    letter-spacing: -0.1px;
    color: rgb(176, 43, 90) !important;
    margin-top: 10px !important;
    font-size: 1.4rem !important;
    line-height: 1.8 !important;
}

#clinics .inner > div {
    vertical-align: top;
}

#clinics .inner div.ginza-mov {
    margin: 0px;
    width: 100%;
    max-width: 100%;
}

#clinics .inner div.ginza-mov iframe {
    max-width: 100%;
    width: 100%;
}

#clinics .inner .ginza_1 {
    margin: 40px auto 0px;
    width: 78.2%;
}

#clinics .inner .ginza_1 h3 {
    text-align: left;
    margin-bottom: 10px;
}

#doctor .inner ul {
    max-width: 560px;
}

a[target="_blank"] {
    display: inline-block;
    padding-right: 25px;
    background: url("../image/icon_blank.png") right center / 17px no-repeat;
    transition: color 0.15s ease-out 0s;
}

a[target="_blank"]:hover {
    color: rgb(33, 139, 204);
}

.btn_link_l_wimg[target="_blank"] {
    display: flex;
    padding: 20px 35px;
    background: rgb(255, 255, 255);
    transition: all 0.2s ease-out 0s;
}

.btn_link_l_wimg[target="_blank"]:hover {
    box-shadow: rgba(0, 0, 0, 0.2) 0px 0px 20px 0px;
    transform: scale(1.02);
}

.btns > div + div {
    margin-top: 30px;
}

.btn_close {
    position: relative;
    box-sizing: border-box;
    display: inline-block;
    padding: 7px 20px;
    min-width: 150px;
    background: rgb(255, 255, 255);
    border: 1px solid rgb(33, 139, 204);
    border-radius: 3px;
    text-align: center;
    line-height: 1.4;
    font-size: 1.4rem;
    transition: all 0.15s ease-out 0s;
    color: rgb(33, 139, 204) !important;
}

.btn_close::before, .btn_close::after {
    display: block;
    width: 14px;
    height: 1px;
    position: absolute;
    top: 0px;
    bottom: 0px;
    right: 15px;
    margin: auto;
    background: rgb(33, 139, 204);
    content: "";
    transition: background 0.15s ease-out 0s;
}

.btn_close:hover {
    background: rgb(33, 139, 204);
    color: rgb(255, 255, 255) !important;
}

.btn_close::before {
    transform: rotate(-45deg);
}

.btn_close::after {
    transform: rotate(45deg);
}

.btn_close:hover::before, .btn_close:hover::after {
    background: rgb(255, 255, 255);
}

.btn_blank, .btn_link0 {
    box-sizing: border-box;
    display: inline-block;
    padding: 7px 20px;
    min-width: 150px;
    background: rgb(255, 255, 255);
    border: 1px solid rgb(33, 139, 204);
    border-radius: 3px;
    text-align: center;
    line-height: 1.4;
    font-size: 1.4rem;
    transition: all 0.15s ease-out 0s;
    color: rgb(33, 139, 204) !important;
}

.btn_link0:hover {
    background: rgb(33, 139, 204);
    color: rgb(255, 255, 255) !important;
}

.btn_blank {
    position: relative;
    background: rgb(255, 255, 255) !important;
}

.btn_blank:hover {
    background: rgb(33, 139, 204) !important;
    color: rgb(255, 255, 255) !important;
}

.btn_blank::after {
    display: block;
    width: 18px;
    height: 16px;
    position: absolute;
    top: 0px;
    bottom: 0px;
    right: 15px;
    margin: auto;
    background: url("../image/icon_blank.svg") center center / contain no-repeat;
    content: "";
}

.btn_blank:hover::after {
    background-image: url("../image/icon_blank_w.svg");
}

.btn_link1 {
    box-sizing: border-box;
    display: inline-block;
    padding: 7px 20px;
    min-width: 150px;
    background: rgb(33, 139, 204);
    border: 1px solid rgb(33, 139, 204);
    border-radius: 3px;
    text-align: center;
    line-height: 1.4;
    font-size: 1.4rem;
    transition: all 0.15s ease-out 0s;
    color: rgb(255, 255, 255) !important;
}

.btn_link1:hover {
    background: rgb(255, 255, 255);
    color: rgb(33, 139, 204) !important;
}

.btn_link0[target="_blank"], .btn_link1[target="_blank"] {
    background-image: none;
}

.btn_link0.btn_arrow1, .btn_link1.btn_arrow1 {
    display: block;
    padding-top: 10px;
    padding-bottom: 10px;
    width: 345px;
    max-width: 100%;
    font-size: 1.8rem;
}

.btn_link0.btn_arrow1::before, .btn_link1.btn_arrow1::before {
    right: 10px;
    top: 0px;
    bottom: 0px;
    margin: auto;
}

.btn_link0.btn_arrow1::after, .btn_link1.btn_arrow1::after {
    right: 18px;
    top: 0px;
    bottom: 0px;
    margin: auto;
}

.btn_link0.btn_arrow1:hover::before, .btn_link0.btn_arrow1:hover::after {
    border-color: rgb(255, 255, 255);
}

.btn_link1.btn_arrow1::before {
    background: rgb(255, 255, 255);
}

.btn_link_l, .btn_link_l_wimg, .btn_anchor {
    position: relative;
    box-sizing: border-box;
    display: inline-block;
    padding: 20px 35px;
    width: 385px;
    max-width: 100%;
    background: rgb(255, 255, 255);
    border: 1px solid rgb(33, 139, 204);
    border-radius: 3px;
    text-align: center;
    line-height: 1.4;
    font-size: 1.8rem;
    transition: all 0.2s ease-out 0s;
    color: rgb(33, 139, 204) !important;
}

.btn_link_l:hover, .btn_link_l_wimg:hover, .btn_anchor:hover {
    box-shadow: rgba(0, 0, 0, 0.2) 0px 0px 20px 0px;
    transform: scale(1.02);
}

.btn_link_l_wimg {
    box-sizing: border-box;
    display: flex;
    margin: auto;
    padding: 4px;
    text-align: left;
}

.btn_link_l_wimg figure {
    flex-basis: 140px;
    width: 140px;
    min-width: 140px;
    max-width: 140px;
    align-self: center;
}

.btn_link_l_wimg div {
    padding: 0px 30px 0px 10px;
    align-self: center;
}

.btns > div + p {
    width: 385px;
    max-width: 100%;
    margin: 20px auto auto;
    text-align: left;
    font-size: 1.4rem;
}

.btn_link_l p, .btn_link_l_wimg p {
    font-size: 1.4rem;
    color: rgb(68, 68, 68) !important;
}

.btn_link_l h3, .btn_link_l_wimg h3 {
    display: block;
    font-size: 2rem;
    color: rgb(33, 139, 204) !important;
}

.btn_link_l_wimg h3 {
    margin-bottom: 0.2em;
}

.btn_link_l::before, .btn_link_l_wimg::before, .btn_anchor::before {
    display: block;
    position: absolute;
    top: 0px;
    bottom: 0px;
    right: 12px;
    margin: auto;
    width: 16px;
    height: 16px;
    border: 1px solid rgb(33, 139, 204);
    border-radius: 50px;
    content: "";
}

.btn_link_l::after, .btn_link_l_wimg::after {
    display: block;
    position: absolute;
    top: 0px;
    bottom: 0px;
    right: 20px;
    margin: auto;
    width: 3px;
    height: 3px;
    border-top: 1px solid rgb(33, 139, 204);
    border-right: 1px solid rgb(33, 139, 204);
    transform: rotate(45deg);
    content: "";
}

.btn_anchor::after {
    display: block;
    position: absolute;
    top: 0px;
    bottom: 3px;
    right: 22px;
    margin: auto;
    width: 3px;
    height: 3px;
    border-bottom: 1px solid rgb(33, 139, 204);
    border-right: 1px solid rgb(33, 139, 204);
    transform: rotate(45deg);
    content: "";
}

.img_compressed {
    width: 100%;
}

.img_auto {
    width: auto !important;
}

.btn_arrow1::before {
    display: block;
    position: absolute;
    width: 16px;
    height: 16px;
    border: 1px solid rgb(33, 139, 204);
    border-radius: 50px;
    content: "";
}

.btn_arrow1::after {
    display: block;
    position: absolute;
    width: 3px;
    height: 3px;
    border-top: 1px solid rgb(33, 139, 204);
    border-right: 1px solid rgb(33, 139, 204);
    transform: rotate(45deg);
    content: "";
}

.btn_arrow2::before {
    display: block;
    position: absolute;
    width: 13px;
    height: 13px;
    background: rgb(220, 90, 140);
    border-radius: 50px;
    content: "";
}

.btn_arrow2::after {
    display: block;
    position: absolute;
    width: 2px;
    height: 2px;
    border-top: 1px solid rgb(255, 255, 255);
    border-right: 1px solid rgb(255, 255, 255);
    transform: rotate(45deg);
    content: "";
}

#sp_menu {
    position: fixed;
    width: 100%;
    height: 100%;
    top: 0px;
    left: 0px;
    overflow: auto;
    z-index: 10000;
}

#sp_menu .bg {
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.6);
}

#sp_menu .inner {
    position: absolute;
    top: 0px;
    right: 0px;
    width: 84.5%;
    height: 100%;
    max-height: 100%;
    background: rgb(255, 255, 255);
    overflow: auto;
}

#sp_menu .inner > div {
    padding: 25px;
}

#sp_menu .subject h2 {
    box-sizing: border-box;
    float: none;
    width: auto;
    height: auto;
    padding: 0px 0px 0px 8px;
    border-left: 4px solid rgb(33, 139, 204);
    font-size: 1.8rem;
}

#sp_menu .subject .list {
    margin: 10px 0px 0px;
    display: block;
}

#sp_menu .subject .list > li {
    padding: 0px;
    flex-basis: 25%;
    border-top: 1px solid rgb(220, 220, 220);
}

#sp_menu .subject .list > li:first-child {
    border: none;
}

#sp_menu .subject .list > li:nth-child(2) {
    flex-basis: 35%;
}

#sp_menu .subject .list h3 {
    font-size: 1.5rem;
    position: relative;
    padding: 10px 0px;
    margin: 0px;
    transition: color 0.15s ease-out 0s;
}

#sp_menu .subject .list h3:hover {
    color: rgb(33, 139, 204);
}

#sp_menu .subject .list h3::before, #sp_menu .subject .list h3::after {
    position: absolute;
    top: 0px;
    bottom: 0px;
    right: 0px;
    margin: auto;
    background: rgb(33, 139, 204);
    content: "";
}

#sp_menu .subject .list h3::before {
    right: 7px;
    width: 2px;
    height: 16px;
}

#sp_menu .subject .list h3::after {
    width: 16px;
    height: 2px;
}

#sp_menu .subject .list h3.act::before {
    display: none;
}

#sp_menu .subject .list ul.cf li {
    float: none;
    width: 100%;
}

#sp_menu .subject .list li {
    font-size: 1.3rem;
}

#sp_menu .subject li a {
    font-size: 1.5rem;
    transition: color 0.15s ease-out 0s;
}

#sp_menu .subject li a:hover {
    color: rgb(33, 139, 204);
}

#sp_menu .subject .list li ul {
    margin: 0px 0px 20px;
}

#sp_menu .subject .list li li {
    margin: 0px;
    padding: 0px;
    border-top: 1px solid rgb(220, 220, 220);
}

#sp_menu .subject .list li li:first-child {
    border: none;
}

#sp_menu .subject .list li li a {
    position: relative;
    display: block;
    padding: 5px 5px 5px 20px;
}

#sp_menu .subject .list li li a::before {
    display: block;
    position: absolute;
    left: 0px;
    top: 0px;
    bottom: 0px;
    margin: auto;
    width: 13px;
    height: 13px;
    background: rgb(33, 139, 204);
    border-radius: 50px;
    content: "";
}

#sp_menu .subject .list li li a::after {
    display: block;
    position: absolute;
    left: 4px;
    top: 0px;
    bottom: 0px;
    margin: auto;
    width: 3px;
    height: 3px;
    border-top: 1px solid rgb(255, 255, 255);
    border-right: 1px solid rgb(255, 255, 255);
    transform: rotate(45deg);
    content: "";
}

#sp_menu .subject .list li li.btn {
    padding-top: 5px;
    border: none;
}

#sp_menu .subject .list li li.btn a::before, #sp_menu .subject .list li li.btn a::after {
    display: none;
}

#sp_menu .subject .list li.ope_h4 a {
    background: url("../image/side_menu_banner_sp.jpg") left center / 100% no-repeat;
    display: block;
    height: 45px;
    width: auto;
}

#sp_menu .gnav {
    display: flex;
    flex-wrap: wrap;
    margin: 20px -25px;
}

#sp_menu .gnav li {
    box-sizing: border-box;
    width: 50%;
    max-width: 50%;
    padding-bottom: 2px;
}

#sp_menu .gnav li:nth-child(2n+1) {
    padding-right: 1px;
}

#sp_menu .gnav li:nth-child(2n) {
    padding-left: 1px;
}

#sp_menu .gnav li a {
    display: block;
    background: rgb(237, 236, 233);
    padding: 10px 30px 10px 10px;
    line-height: 1.4;
    transition: all 0.15s ease-out 0s;
}

#sp_menu .gnav li a:hover {
    background: rgb(242, 242, 240);
    color: rgb(33, 139, 204);
}

#sp_menu .gnav li a::before {
    top: 0px;
    bottom: 0px;
    right: 10px;
    width: 14px;
    height: 14px;
    margin: auto;
}

#sp_menu .gnav li a::after {
    top: 0px;
    bottom: 0px;
    right: 17px;
    margin: auto;
}

#sp_menu .customer {
    margin: 20px 0px;
}

#sp_menu .customer li {
    box-sizing: border-box;
    width: 50%;
    float: left;
}

#sp_menu .customer li:nth-child(2n+1) {
    padding-right: 6px;
}

#sp_menu .customer li:nth-child(2n) {
    padding-left: 6px;
}

#sp_menu .customer a {
    box-sizing: border-box;
    display: block;
    padding: 4px 0px;
    border: 1px solid rgb(33, 139, 204);
    border-radius: 3px;
    color: rgb(33, 139, 204);
    font-size: 1.2rem;
    text-align: center;
    transition: all 0.15s ease-out 0s;
}

#sp_menu .customer a:hover {
    background: rgb(33, 139, 204);
    color: rgb(255, 255, 255);
}

#sp_menu .info {
    display: flex;
    flex-wrap: wrap;
    margin: 20px -25px;
    border-bottom: 1px solid rgb(220, 220, 220);
}

#sp_menu .info li {
    box-sizing: border-box;
    width: 50%;
    max-width: 50%;
    border-top: 1px solid rgb(220, 220, 220);
}

#sp_menu .info li:nth-child(2n+1) {
    border-right: 1px solid rgb(220, 220, 220);
}

#sp_menu .info li a {
    display: table;
    width: 100%;
    height: 100%;
    font-size: 1.3rem;
    line-height: 1.4;
    transition: color 0.15s ease-out 0s;
}

#sp_menu .info li a:hover {
    color: rgb(33, 139, 204);
}

#sp_menu .info li a.icon_qa span {
    background-image: url("../image/icon_qa.svg");
}

#sp_menu .info li a.icon_attention span {
    background-image: url("../image/icon_attention.svg");
}

#sp_menu .info li a.icon_info span {
    background-image: url("../image/icon_info.svg");
}

#sp_menu .info li span {
    display: table-cell;
    vertical-align: middle;
    padding: 8px 10px 8px 45px;
    background: 10px center / 25px no-repeat;
}

#sp_menu .contact {
    display: flex;
    flex-wrap: wrap;
    margin: 20px -25px;
}

#sp_menu .contact li {
    flex-basis: 25%;
    text-align: center;
    line-height: 1.3;
    font-size: 1.1rem;
}

#sp_menu .contact li a {
    position: relative;
    display: block;
    padding-top: 35px;
    background: center top / 42px no-repeat;
    transition: color 0.15s ease-out 0s;
}

#sp_menu .contact li a:hover {
    color: rgb(33, 139, 204);
}

#sp_menu .contact li a::after {
    position: absolute;
    left: 0px;
    top: 35px;
    width: 1px;
    height: 25px;
    background: rgb(220, 220, 220);
    content: "";
}

#sp_menu .contact li a:first-child::after {
    display: none;
}

#sp_menu .contact li:nth-child(1) a {
    background-image: url("../image/icon_calendar0.svg");
}

#sp_menu .contact li:nth-child(2) a {
    background-image: url("../image/icon_mail.svg");
}

#sp_menu .contact li:nth-child(3) a {
    background-image: url("../image/icon_calendar1.svg");
}

#sp_menu .contact li:nth-child(4) a {
    background-image: url("../image/icon_tel.svg");
}

#sp_menu .lang {
    text-align: center;
    margin: 20px 0px;
}

#sp_menu .lang li a {
    display: block;
    padding: 3px;
    border: 1px solid rgb(192, 181, 129);
    border-radius: 3px;
    vertical-align: middle;
    line-height: 1;
    color: rgb(33, 139, 204);
    transition: all 0.15s ease-out 0s;
}

#sp_menu .lang li a:hover {
    background: rgb(33, 139, 204);
    color: rgb(255, 255, 255);
}

#sp_menu .lang li a.cn::before {
    display: inline-block;
    width: 26px;
    height: 26px;
    background: url("../image/icon_flag_cn.svg") center center / contain no-repeat;
    margin-right: 8px;
    vertical-align: middle;
    content: "";
}

#sp_menu .btn_close {
    position: absolute;
    top: 25px;
    right: 15px;
    border: none;
    padding: 0px 0px 0px 45px;
    width: auto;
    min-width: 0px;
    color: rgb(33, 139, 204);
    font-size: 1.1rem;
    transition: opacity 0.15s ease-out 0s;
}

#sp_menu .btn_close:hover {
    background: none;
    opacity: 0.6;
    color: rgb(33, 139, 204) !important;
}

#sp_menu .btn_close::before, #sp_menu .btn_close::after {
    display: block;
    position: absolute;
    top: 0px;
    bottom: 1px;
    left: 0px;
    margin: auto;
    width: 18px;
    height: 1px;
    background: rgb(33, 139, 204);
    content: "";
}

#sp_menu .btn_close::before {
    transform: rotate(45deg);
}

#sp_menu .btn_close::before {
    transform: rotate(-45deg);
}

#sp_menu {
    display: none;
    position: fixed;
    width: 100%;
    height: 100%;
    top: 0px;
    left: 0px;
    overflow: auto;
    z-index: 10000;
}

#sp_menu .bg {
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.6);
}

#sp_menu .inner {
    position: absolute;
    top: 0px;
    right: 0px;
    width: 84.5%;
    height: 100%;
    max-height: 100%;
    background: rgb(255, 255, 255);
    overflow: auto;
}

#sp_menu .inner > div {
    padding: 25px;
}

#sp_menu .subject h2 {
    box-sizing: border-box;
    float: none;
    width: auto;
    height: auto;
    padding: 0px 0px 0px 8px;
    border-left: 4px solid rgb(33, 139, 204);
    font-size: 1.8rem;
}

#sp_menu .subject .list {
    margin: 10px 0px 0px;
    display: block;
}

#sp_menu .subject .list > li {
    padding: 0px;
    flex-basis: 25%;
    border-top: 1px solid rgb(220, 220, 220);
}

#sp_menu .subject .list > li:first-child {
    border: none;
}

#sp_menu .subject .list > li:nth-child(2) {
    flex-basis: 35%;
}

#sp_menu .subject .list h3 {
    font-size: 1.5rem;
    position: relative;
    padding: 10px 0px;
    margin: 0px;
    transition: color 0.15s ease-out 0s;
}

#sp_menu .subject .list h3:hover {
    color: rgb(33, 139, 204);
}

#sp_menu .subject .list h3::before, #sp_menu .subject .list h3::after {
    position: absolute;
    top: 0px;
    bottom: 0px;
    right: 0px;
    margin: auto;
    background: rgb(33, 139, 204);
    content: "";
}

#sp_menu .subject .list h3::before {
    right: 7px;
    width: 2px;
    height: 16px;
}

#sp_menu .subject .list h3::after {
    width: 16px;
    height: 2px;
}

#sp_menu .subject .list h3.act::before {
    display: none;
}

#sp_menu .subject .list ul.cf li {
    float: none;
    width: 100%;
}

#sp_menu .subject .list li {
    font-size: 1.3rem;
}

#sp_menu .subject li a {
    font-size: 1.5rem;
    transition: color 0.15s ease-out 0s;
}

#sp_menu .subject li a:hover {
    color: rgb(33, 139, 204);
}

#sp_menu .subject .list li ul {
    margin: 0px 0px 20px;
}

#sp_menu .subject .list li li {
    margin: 0px;
    padding: 0px;
    border-top: 1px solid rgb(220, 220, 220);
}

#sp_menu .subject .list li li:first-child {
    border: none;
}

#sp_menu .subject .list li li a {
    position: relative;
    display: block;
    padding: 5px 5px 5px 20px;
}

#sp_menu .subject .list li li a::before {
    display: block;
    position: absolute;
    left: 0px;
    top: 0px;
    bottom: 0px;
    margin: auto;
    width: 13px;
    height: 13px;
    background: rgb(33, 139, 204);
    border-radius: 50px;
    content: "";
}

#sp_menu .subject .list li li a::after {
    display: block;
    position: absolute;
    left: 4px;
    top: 0px;
    bottom: 0px;
    margin: auto;
    width: 3px;
    height: 3px;
    border-top: 1px solid rgb(255, 255, 255);
    border-right: 1px solid rgb(255, 255, 255);
    transform: rotate(45deg);
    content: "";
}

#sp_menu .subject .list li li.btn {
    padding-top: 5px;
    border: none;
}

#sp_menu .subject .list li li.btn a::before, #sp_menu .subject .list li li.btn a::after {
    display: none;
}

#sp_menu .gnav {
    display: flex;
    flex-wrap: wrap;
    margin: 20px -25px;
}

#sp_menu .gnav li {
    box-sizing: border-box;
    width: 50%;
    max-width: 50%;
    padding-bottom: 2px;
}

#sp_menu .gnav li:nth-child(2n+1) {
    padding-right: 1px;
}

#sp_menu .gnav li:nth-child(2n) {
    padding-left: 1px;
}

#sp_menu .gnav li a {
    display: block;
    background: rgb(237, 236, 233);
    padding: 10px 30px 10px 10px;
    line-height: 1.4;
    transition: all 0.15s ease-out 0s;
}

#sp_menu .gnav li a:hover {
    background: rgb(242, 242, 240);
    color: rgb(33, 139, 204);
}

#sp_menu .gnav li a::before {
    top: 0px;
    bottom: 0px;
    right: 10px;
    width: 14px;
    height: 14px;
    margin: auto;
}

#sp_menu .gnav li a::after {
    top: 0px;
    bottom: 0px;
    right: 17px;
    margin: auto;
}

#sp_menu .customer {
    margin: 20px 0px;
}

#sp_menu .customer li {
    box-sizing: border-box;
    width: 50%;
    float: left;
}

#sp_menu .customer li:nth-child(2n+1) {
    padding-right: 6px;
}

#sp_menu .customer li:nth-child(2n) {
    padding-left: 6px;
}

#sp_menu .customer a {
    box-sizing: border-box;
    display: block;
    padding: 4px 0px;
    border: 1px solid rgb(33, 139, 204);
    border-radius: 3px;
    color: rgb(33, 139, 204);
    font-size: 1.2rem;
    text-align: center;
    transition: all 0.15s ease-out 0s;
}

#sp_menu .customer a:hover {
    background: rgb(33, 139, 204);
    color: rgb(255, 255, 255);
}

#sp_menu .info {
    display: flex;
    flex-wrap: wrap;
    margin: 20px -25px;
    border-bottom: 1px solid rgb(220, 220, 220);
}

#sp_menu .info li {
    box-sizing: border-box;
    width: 50%;
    max-width: 50%;
    border-top: 1px solid rgb(220, 220, 220);
}

#sp_menu .info li:nth-child(2n+1) {
    border-right: 1px solid rgb(220, 220, 220);
}

#sp_menu .info li a {
    display: table;
    width: 100%;
    height: 100%;
    font-size: 1.3rem;
    line-height: 1.4;
    transition: color 0.15s ease-out 0s;
}

#sp_menu .info li a:hover {
    color: rgb(33, 139, 204);
}

#sp_menu .info li a.icon_qa span {
    background-image: url("../image/icon_qa.svg");
}

#sp_menu .info li a.icon_attention span {
    background-image: url("../image/icon_attention.svg");
}

#sp_menu .info li a.icon_info span {
    background-image: url("../image/icon_info.svg");
}

#sp_menu .info li span {
    display: table-cell;
    vertical-align: middle;
    padding: 8px 10px 8px 45px;
    background: 10px center / 25px no-repeat;
}

#sp_menu .contact {
    display: flex;
    flex-wrap: wrap;
    margin: 20px -25px;
}

#sp_menu .contact li {
    flex-basis: 25%;
    text-align: center;
    line-height: 1.3;
    font-size: 1.1rem;
}

#sp_menu .contact li a {
    position: relative;
    display: block;
    padding-top: 35px;
    background: center top / 42px no-repeat;
    transition: color 0.15s ease-out 0s;
}

#sp_menu .contact li a:hover {
    color: rgb(33, 139, 204);
}

#sp_menu .contact li a::after {
    position: absolute;
    left: 0px;
    top: 35px;
    width: 1px;
    height: 25px;
    background: rgb(220, 220, 220);
    content: "";
}

#sp_menu .contact li a:first-child::after {
    display: none;
}

#sp_menu .contact li:nth-child(1) a {
    background-image: url("../image/icon_calendar0.svg");
}

#sp_menu .contact li:nth-child(2) a {
    background-image: url("../image/icon_mail.svg");
}

#sp_menu .contact li:nth-child(3) a {
    background-image: url("../image/icon_calendar1.svg");
}

#sp_menu .contact li:nth-child(4) a {
    background-image: url("../image/icon_tel.svg");
}

#sp_menu .lang {
    text-align: center;
    margin: 20px 0px;
}

#sp_menu .lang li a {
    display: block;
    padding: 3px;
    border: 1px solid rgb(192, 181, 129);
    border-radius: 3px;
    vertical-align: middle;
    line-height: 1;
    color: rgb(33, 139, 204);
    transition: all 0.15s ease-out 0s;
}

#sp_menu .lang li a:hover {
    background: rgb(33, 139, 204);
    color: rgb(255, 255, 255);
}

#sp_menu .lang li a.cn::before {
    display: inline-block;
    width: 26px;
    height: 26px;
    background: url("../image/icon_flag_cn.svg") center center / contain no-repeat;
    margin-right: 8px;
    vertical-align: middle;
    content: "";
}

#sp_menu .btn_close {
    position: absolute;
    top: 25px;
    right: 15px;
    border: none;
    padding: 0px 0px 0px 45px;
    width: auto;
    min-width: 0px;
    color: rgb(33, 139, 204);
    font-size: 1.1rem;
    transition: opacity 0.15s ease-out 0s;
}

#sp_menu .btn_close:hover {
    background: none;
    opacity: 0.6;
    color: rgb(33, 139, 204) !important;
}

#sp_menu .btn_close::before, #sp_menu .btn_close::after {
    display: block;
    position: absolute;
    top: 0px;
    bottom: 1px;
    left: 0px;
    margin: auto;
    width: 18px;
    height: 1px;
    background: rgb(33, 139, 204);
    content: "";
}

#sp_menu .btn_close::before {
    transform: rotate(45deg);
}

#sp_menu .btn_close::before {
    transform: rotate(-45deg);
}

#info .topic2 {
    background: rgb(237, 236, 233);
    padding: 25px;
    margin-top: 10px;
}

#info .topic2 h4 {
    color: rgb(176, 43, 90);
}

#info .topic2 p {
    font-size: 1.4rem;
}

#notice {
    margin: 40px 0px;
}

#notice .notice_box {
    text-align: center;
    border: 1px solid rgb(244, 244, 244);
    width: 70%;
    margin: 0px auto;
    padding: 30px;
}

#notice .notice_box h2 {
    margin: 10px 0px;
    font-weight: bold;
}

#treatment {
    padding: 85px 50px 60px;
    background: url("../image/treatment_bg0.jpg") right top / 590px no-repeat rgb(249, 231, 227);
    overflow: hidden;
    margin: 0px !important;
}

#treatment .inner {
    max-width: 810px;
    margin: auto;
}

#contents #treatment .inner {
    max-width: 810px;
    padding-left: 0px;
    padding-right: 0px;
}

#treatment h2 {
    position: relative;
    margin-top: 5px;
    font-size: 2.8rem;
    color: rgb(220, 90, 140);
    z-index: 1;
}

#treatment h3 {
    position: relative;
    display: inline-block;
    background-color: rgb(220, 90, 140);
    border-radius: 50px;
    padding: 2px 20px 3px;
    font-size: 1.4rem;
    color: rgb(255, 255, 255);
    z-index: 1;
}

#treatment h3 span {
    font-size: 1.8rem;
}

#treatment nav {
    position: relative;
    display: flex;
    margin-top: 65px;
}

#treatment nav .img {
    position: absolute;
    right: 0px;
    top: -220px;
}

#treatment nav > div {
    box-sizing: border-box;
    position: relative;
    width: 25%;
    padding: 3px;
}

#treatment nav > div > div {
    height: 100%;
    background: center top / 100% no-repeat rgb(255, 255, 255);
}

#treatment nav > div:nth-child(2) > div {
    background-image: url("../image/treatment_img1.jpg");
}

#treatment nav > div:nth-child(3) > div {
    background-image: url("../image/treatment_img2.jpg");
}

#treatment nav > div:nth-child(4) > div {
    background-image: url("../image/treatment_img3.jpg");
}

#treatment nav > div:nth-child(5) > div {
    background-image: url("../image/treatment_img4.jpg");
}

#treatment h4 {
    padding: 40px 10px;
    font-size: 2rem;
    text-shadow: rgb(255, 255, 255) 0px 0px 3px, rgb(255, 255, 255) 0px 0px 5px, rgb(255, 255, 255) 0px 0px 5px, rgb(255, 255, 255) 0px 0px 10px, rgb(255, 255, 255) 0px 0px 10px;
}

#treatment nav ul {
    padding: 10px;
}

#treatment nav li {
    border-top: 1px solid rgb(220, 220, 220);
}

#treatment nav li:first-child {
    border: none;
}

#treatment nav a {
    display: block;
    padding: 8px 0px 8px 20px;
    font-size: 1.4rem;
    text-shadow: rgb(255, 255, 255) 0px 0px 3px, rgb(255, 255, 255) 0px 0px 5px, rgb(255, 255, 255) 0px 0px 5px, rgb(255, 255, 255) 0px 0px 10px, rgb(255, 255, 255) 0px 0px 10px;
    transition: color 0.15s ease-out 0s;
}

#treatment nav a img {
    vertical-align: middle;
}

#treatment nav a:hover {
    color: rgb(220, 90, 140);
}

#treatment .btn_arrow2::before {
    top: 0px;
    bottom: 0px;
    left: 0px;
    margin: auto;
}

#treatment .btn_arrow2::after {
    top: 0px;
    bottom: 0px;
    left: 5px;
    margin: auto;
}

#treatment nav .btns {
    margin: 0px 0px 10px;
    padding: 10px;
    text-align: center;
}

#treatment nav .btn_more {
    box-sizing: border-box;
    display: inline-block;
    padding: 7px 20px;
    width: 100%;
    border: 1px solid rgb(220, 90, 140);
    border-radius: 3px;
    line-height: 1.4;
    font-size: 1.4rem;
    color: rgb(220, 90, 140);
    text-shadow: none;
    transition: all 0.15s ease-out 0s;
}

#treatment nav .btn_more:hover {
    background: rgb(220, 90, 140);
    color: rgb(255, 255, 255) !important;
}

#treatment .bnr {
    margin: 30px auto auto;
}

#treatment .bnr a {
    display: block;
    background: rgb(255, 255, 255);
    max-width: 400px;
    margin: auto;
    padding: 10px;
    transition: all 0.2s ease-out 0s;
}

#treatment .bnr a:hover {
    box-shadow: rgba(0, 0, 0, 0.2) 0px 0px 20px 0px;
    transform: scale(1.02);
}

#treatment .bnr figure {
    float: left;
    background: center center / cover no-repeat;
    width: 90px;
}

#treatment .bnr .txt {
    float: right;
    width: calc(100% - 100px);
}

#treatment .bnr h4 {
    padding: 0px;
    margin-bottom: 10px;
    line-height: 1;
    font-size: 1.8rem;
    color: rgb(220, 90, 140);
}

#treatment .bnr p {
    line-height: 1.4;
    font-size: 1.4rem;
}

#treatment .bnr .btn_arrow0 {
    padding-right: 30px;
}

#treatment .bnr .btn_arrow0::before {
    background-color: rgb(220, 90, 140);
    top: 0px;
    bottom: 0px;
    right: 10px;
    margin: auto;
}

#treatment .bnr .btn_arrow0::after {
    top: 0px;
    bottom: 0px;
    right: 17px;
    margin: auto;
}

#start {
    padding: 8% 0px;
    text-align: center;
}

#start.lazyloaded {
    background: url("../image/start_bg0.jpg") center top / cover no-repeat;
}

#start h2 {
    font-size: 2.4rem;
    color: rgb(33, 139, 204);
}

#start .read {
    margin-top: 10px;
}

#start .inner {
    max-width: 920px;
    margin: auto;
}

#start ul {
    display: flex;
    flex-wrap: wrap;
    margin-top: 5%;
}

#start li {
    box-sizing: border-box;
    padding: 20px 4px;
    width: calc(16.6667%);
}

#start li a {
    box-sizing: border-box;
    display: block;
    height: 100%;
    background: center 15px / 70px no-repeat rgb(255, 255, 255);
    border-radius: 3px;
    padding: 110px 8px 15px;
    line-height: 1.6;
    font-size: 12px;
    transition: all 0.2s ease-out 0s;
}

#start li a:hover {
    box-shadow: rgba(0, 0, 0, 0.1) 0px 0px 20px 0px;
    transform: scale(1.04);
}

#start li:nth-child(1) a.lazyloaded {
    background-image: url("../image/start_img0.png");
}

#start li:nth-child(2) a.lazyloaded {
    background-image: url("../image/start_img1.png");
}

#start li:nth-child(3) a.lazyloaded {
    background-image: url("../image/start_img5.png");
}

#start li:nth-child(4) a.lazyloaded {
    background-image: url("../image/start_img3.png");
}

#start li:nth-child(5) a.lazyloaded {
    background-image: url("../image/start_img4.png");
}

#start .btns {
    margin-top: 10px;
}

#start .btn_link {
    position: relative;
    box-sizing: border-box;
    display: inline-block;
    padding: 18px 40px 18px 20px;
    min-width: 350px;
    max-width: 100%;
    background: rgb(220, 90, 140);
    border-radius: 3px;
    text-align: center;
    line-height: 1.4;
    font-size: 1.8rem;
    transition: background 0.15s ease-out 0s;
    color: rgb(255, 255, 255) !important;
}

#start .btn_link:hover {
    background: rgb(176, 43, 90);
}

#start .btn_link::before {
    display: block;
    position: absolute;
    top: 0px;
    bottom: 0px;
    right: 15px;
    margin: auto;
    width: 16px;
    height: 16px;
    border: 1px solid rgb(255, 255, 255);
    border-radius: 50px;
    content: "";
}

#start .btn_link::after {
    display: block;
    position: absolute;
    top: 0px;
    bottom: 0px;
    right: 23px;
    margin: auto;
    width: 3px;
    height: 3px;
    border-top: 1px solid rgb(255, 255, 255);
    border-right: 1px solid rgb(255, 255, 255);
    transform: rotate(45deg);
    content: "";
}

#banner {
    border-top: 1px solid rgb(220, 220, 220);
    padding: 30px 0px;
    text-align: center;
}

#banner li {
    display: inline-block;
    vertical-align: middle;
    margin: 10px 20px;
}

#banner li a {
    background: none;
    padding: 0px;
    transition: opacity 0.15s ease-out 0s;
}

#banner li a:hover {
    opacity: 0.7;
}

#supervision {
    border-top: 1px solid rgb(220, 220, 220);
    padding: 30px 50px;
    text-align: center;
}

#supervision .inner {
    max-width: 800px;
    margin: auto;
}

#supervision h2 {
    font-size: 1.8rem;
    color: rgb(33, 139, 204);
}

#supervision p.read {
    margin-top: 0.5em;
    margin-bottom: 1em;
    font-size: 1.3rem;
}

#supervision p {
    margin-top: 1.5em;
    font-size: 1.3rem;
}

#supervision figure {
    margin-bottom: 1em;
}

#supervision .btns {
    text-align: center;
}

#supervision .btns a {
    box-sizing: border-box;
    position: relative;
    display: inline-block;
    padding: 7px 70px 7px 20px;
    border: 1px solid rgb(33, 139, 204);
    border-radius: 3px;
    line-height: 1.4;
    font-size: 1.4rem;
    color: rgb(33, 139, 204);
    transition: all 0.15s ease-out 0s;
}

#supervision .btns a::before, #supervision .btns a::after {
    top: 0px;
    bottom: 0px;
    right: 10px;
    margin: auto;
}

#supervision .btns a::after {
    right: 18px;
    transition: border 0.15s ease-out 0s;
}

#simple_sv {
    border-top: 1px solid rgb(220, 220, 220);
    padding: 30px 50px;
    text-align: center;
}

#simple_sv .inner {
    max-width: 800px;
    margin: auto;
}

#simple_sv h2 {
    font-size: 1.8rem;
    color: rgb(33, 139, 204);
}

#simple_sv p.read {
    margin-top: 0.5em;
    font-size: 1.3rem;
}

#simple_sv p {
    margin-top: 1.5em;
    font-size: 1.3rem;
}

#simple_sv .btns {
    text-align: center;
}

#simple_sv .btns a {
    box-sizing: border-box;
    position: relative;
    display: inline-block;
    padding: 7px 70px 7px 20px;
    border: 1px solid rgb(33, 139, 204);
    border-radius: 3px;
    line-height: 1.4;
    font-size: 1.4rem;
    color: rgb(33, 139, 204);
    transition: all 0.15s ease-out 0s;
}

#simple_sv .btns a::before, #simple_sv .btns a::after {
    top: 0px;
    bottom: 0px;
    right: 10px;
    margin: auto;
}

#simple_sv .btns a::after {
    right: 18px;
    transition: border 0.15s ease-out 0s;
}

footer .block {
    border-top: 1px solid rgb(220, 220, 220);
    padding: 50px;
}

#contact {
    box-sizing: border-box;
    float: left;
    width: 75%;
    border-right: 1px solid rgb(220, 220, 220);
    padding-right: 20px;
    margin: 0px !important;
}

#contact h2 {
    float: left;
    font-size: 2rem;
    color: rgb(33, 139, 204);
}

#contact .head .btns {
    float: left;
    margin: 0px 0px 0px 30px !important;
}

#contact .head .btns a {
    box-sizing: border-box;
    position: relative;
    display: inline-block;
    padding: 7px 70px 7px 20px;
    border: 1px solid rgb(33, 139, 204);
    border-radius: 3px;
    line-height: 1.4;
    font-size: 1.4rem;
    color: rgb(33, 139, 204);
    transition: all 0.15s ease-out 0s;
}

#contact .head .btns a:hover {
    background: rgb(33, 139, 204);
    color: rgb(255, 255, 255);
}

#contact .head .btns a::before, #contact .head .btns a::after {
    top: 0px;
    bottom: 0px;
    right: 10px;
    margin: auto;
}

#contact .head .btns a::after {
    right: 18px;
    transition: border 0.15s ease-out 0s;
}

#contact .head .btns a:hover::before, #contact .head .btns a:hover::after {
    border-color: rgb(255, 255, 255);
}

#contact h3 {
    margin-top: 30px;
    font-size: 1.4rem;
    color: rgb(33, 139, 204);
}

#contact h4 {
    margin-top: 3px;
    font-size: 1.4rem;
}

#contact strong {
    display: block;
    margin: 10px 0px;
    line-height: 1;
    font-size: 2.4rem;
    color: rgb(68, 68, 68) !important;
}

#contact p {
    font-size: 1.2rem;
}

#contact ul {
    display: flex;
    margin: 30px -3px 0px;
}

#contact li {
    padding: 3px;
}

#contact li a {
    box-sizing: border-box;
    display: block;
    height: 100%;
    padding: 10px 20px;
    border: 1px solid rgb(33, 139, 204);
    border-radius: 3px;
    text-align: center;
    line-height: 1.4;
    font-size: 1.4rem;
    color: rgb(33, 139, 204);
    transition: all 0.15s ease-out 0s;
}

#contact li a:hover {
    background: rgb(33, 139, 204);
    color: rgb(255, 255, 255);
}

#clinic {
    box-sizing: border-box;
    float: right;
    width: 25%;
    padding-left: 20px;
    margin: 0px !important;
}

#clinic .inner {
    max-width: initial !important;
    margin: 0px !important;
    padding: 0px !important;
}

#clinic h2 {
    font-size: 2rem;
    color: rgb(33, 139, 204);
}

#clinic ul {
    margin-top: 10px;
}

#clinic li {
    float: left;
    width: 50%;
    margin: 5px 0px 10px;
}

#clinic ul + h2 {
    margin-top: 30px;
}

#clinic .sns {
    max-width: 270px;
}

#clinic .sns a[target="_blank"] {
    display: block;
    padding-right: 0px;
    background: none;
    transition: none 0s ease 0s;
}

#clinic .sns li {
    width: 3.5vw;
    padding-left: 5px;
    padding-right: 1.5vw;
    margin: 15px 0px 10px;
}

#column_utilities li a {
    transition: color 0.15s ease-out 0s;
}

#column_utilities li a:hover {
    color: rgb(33, 139, 204);
}

#subject nav {
    margin-top: 30px;
}

#column_utilities nav li {
    display: inline-block;
    margin-right: 40px;
    line-height: 1.2;
    font-size: 1.4rem;
}

#column_utilities nav li a {
    display: block;
    position: relative;
    padding-left: 25px;
}

#column_utilities nav li a::before {
    display: block;
    position: absolute;
    top: 0px;
    bottom: 0px;
    left: 0px;
    margin: auto;
    width: 16px;
    height: 16px;
    border: 1px solid rgb(33, 139, 204);
    border-radius: 50px;
    content: "";
}

#column_utilities nav li a::after {
    display: block;
    position: absolute;
    top: 0px;
    bottom: 0px;
    left: 6px;
    margin: auto;
    width: 3px;
    height: 3px;
    border-top: 1px solid rgb(33, 139, 204);
    border-right: 1px solid rgb(33, 139, 204);
    transform: rotate(45deg);
    content: "";
}

footer .box {
    background: rgb(33, 139, 204);
    padding: 30px;
    text-align: center;
    color: rgb(255, 255, 255);
}

footer .box nav {
    margin: 30px 0px;
}

footer .box nav li {
    display: inline-block;
    padding: 0px 10px;
    border-left: 1px solid rgb(255, 255, 255);
    line-height: 1;
    font-size: 1.2rem;
}

footer .box nav li:first-child {
    border: none;
}

footer .box nav li a {
    color: rgb(255, 255, 255);
    transition: color 0.15s ease-out 0s;
}

footer .box nav li a:hover {
    color: rgb(255, 255, 255);
}

footer .box p {
    font-size: 1.1rem;
}

footer .box h3 {
    margin-bottom: 5px;
    font-size: 1.4rem;
}

footer .copy i {
    position: relative;
    top: 1px;
    vertical-align: sub;
    font-size: 200%;
}

#column_contact {
    border-top: 1px solid rgb(220, 220, 220);
    padding: 30px 15px 0px;
    margin: 0px !important;
}

#column_utilities {
    border-top: 1px solid rgb(220, 220, 220);
    padding: 30px 15px;
}

.sub-display, .sub-display-inline {
    display: none !important;
}

.sub-display-g, .sub-display-inline-g {
    display: none !important;
}

#doctor {
    padding: 60px 50px;
}

#doctor h2 {
    text-align: center;
    line-height: 1.2;
    font-size: 2.2rem;
    color: rgb(33, 139, 204);
}

#doctor h2::before, #doctor h2::after {
    display: block;
    height: 23px;
    background-repeat: no-repeat;
    background-position: center center;
    background-size: contain;
    content: "";
}

#doctor h2::before {
    margin-bottom: 10px;
    background-image: url("../image/ornament11.png");
}

#doctor h2::after {
    margin-top: 10px;
    background-image: url("../image/ornament11.png");
    transform: rotate(180deg);
}

#doctor p {
    margin-top: 20px;
    text-align: center;
    font-size: 1.4rem;
}

#doctor ul {
    max-width: 780px;
    margin: 20px auto;
}

#doctor li {
    box-sizing: border-box;
    float: left;
    padding: 1px;
    width: 25%;
}

#doctor li .caption {
    box-sizing: border-box;
    display: block;
    color: rgb(33, 139, 204);
    background: rgb(234, 233, 230);
    padding: 5px;
    font-size: 1rem;
    text-align: center;
    line-height: 1;
}

#doctor .btns {
    text-align: center;
}

#worry {
    padding: 60px 50px;
    background: url("../image/worry_bg0.jpg") center center / cover no-repeat;
    text-align: center;
}

#worry h2 {
    padding: 40px 0px 5px;
    background: url("../image/ornament0.png") center top / 90px no-repeat;
    font-size: 2.2rem;
    color: rgb(33, 139, 204);
}

#worry ul {
    max-width: 700px;
    margin: auto;
}

#worry li {
    box-sizing: border-box;
    position: relative;
    float: left;
    width: 25%;
    padding: 10px;
}

#worry li a {
    position: absolute;
    display: block;
    top: 0px;
    left: 0px;
    width: 100%;
    height: 100%;
    line-height: 1.4;
    font-size: 1.8rem;
    transition: transform 0.3s ease-out 0s, -webkit-transform 0.3s ease-out 0s;
}

#worry li:hover {
    transform: scale(1.04);
}

#worry li:hover span img {
    box-shadow: none;
}

#worry li img {
    box-shadow: rgba(0, 0, 0, 0.2) 0px 0px 5px 0px;
}

#worry li:hover img {
    box-shadow: rgba(0, 0, 0, 0.2) 0px 0px 20px 0px;
}

#worry li a {
}

#worry li:hover a {
    color: rgb(33, 139, 204);
}

#worry li a span {
    position: absolute;
    display: block;
    width: 100%;
    top: 50%;
    transform: translateY(-65%);
}

#worry li a span img {
    box-shadow: none;
    width: 60%;
    height: auto;
}

#worry .btn_arrow1::before {
    left: -1px;
    right: 0px;
    bottom: 30px;
    margin: auto;
}

#worry .btn_arrow1::after {
    left: -2px;
    right: 0px;
    bottom: 37px;
    margin: auto;
}

#clinics {
    position: relative;
    padding: 440px 50px 60px;
    text-align: center;
}

#clinics .bg {
    position: absolute;
    width: 100%;
    height: 480px;
    top: 0px;
    left: 0px;
    z-index: -1;
}

#clinics .bg::after {
    display: block;
    position: absolute;
    width: 100%;
    height: 30%;
    bottom: 0px;
    left: 0px;
    background: linear-gradient(rgba(255, 255, 255, 0) 0%, white 95%);
    content: "";
}

#clinics h2 {
    padding: 40px 0px 5px;
    font-size: 2.2rem;
    color: rgb(33, 139, 204);
}

#clinics h2 + p {
    margin-top: 10px;
    font-size: 1.4rem;
}

#clinics .inner {
    max-width: 860px;
    margin: auto;
    text-align: center;
}

#clinics .inner > div {
    box-sizing: border-box;
    display: inline-block;
    padding: 20px 10px 0px;
    width: 100%;
}

#clinics .inner a {
    display: block;
    transition: opacity 0.15s ease-out 0s;
    max-width: 594px;
    margin: 0px auto;
}

#clinics .inner a table {
    margin: 0px auto;
}

#clinics .inner a table tr:last-child .time {
    border-bottom: 1px solid rgb(216, 216, 216);
}

#clinics .inner a:hover {
    opacity: 0.7;
}

#clinics .inner figure {
    border: 1px solid rgb(71, 201, 187);
    padding: 5px;
    margin-bottom: 6px;
}

#clinics .inner span {
    display: block;
    overflow: hidden;
}

#clinics .inner p {
    display: inline-block;
    position: relative;
    line-height: 1;
    color: rgb(33, 139, 204);
    font-size: 17px;
}

#clinics .inner p.btn_arrow1::before {
    top: 0px;
    bottom: -1px;
    right: -25px;
    margin: auto;
}

#clinics .inner p.btn_arrow1::after {
    top: 0px;
    bottom: -1px;
    right: -17px;
    margin: auto;
}

#clinics .inner p {
    font-size: 16px;
    margin: 4% 0px;
}

#clinics .inner p.btn_arrow1::before {
    bottom: -2px;
}

#clinics .inner p.btn_arrow1::after {
    bottom: -2px;
}

#clinics .inner .time {
    display: block;
    box-sizing: border-box;
    border-top: 1px solid rgb(216, 216, 216);
    padding: 10px 6px 8px;
    line-height: 1;
    margin: 3px auto 0px;
    width: 100%;
}

#clinics .inner .address {
    display: block;
    box-sizing: border-box;
    padding: 10px 15px 0px;
    text-align: left;
    font-size: 12px;
    line-height: 1.5;
}

#pickup {
    padding: 60px 50px;
    background: url("../image/pickup_bg0.jpg") left top no-repeat;
}

#pickup h2 {
    font-size: 2.6rem;
    color: rgb(33, 139, 204);
    text-align: center;
}

#pickup h2 + p {
    margin-top: 10px;
    text-align: center;
    font-size: 1.4rem;
}

#pickup ul {
    max-width: 810px;
    margin: 10px auto auto;
}

#pickup li {
    box-sizing: border-box;
    float: left;
    width: 50%;
    padding: 7px 10px;
}

#pickup li:nth-child(2n+1) {
    clear: both;
}

#pickup li a {
    display: flex;
    height: 100%;
    background: rgb(255, 255, 255);
    overflow: hidden;
    border: 1px solid rgb(210, 203, 165);
    border-radius: 4px;
    transition: all 0.2s ease-out 0s;
}

#pickup li.pc_banner_full_width a {
    display: block;
    overflow: visible;
}

#pickup li a:hover {
    box-shadow: rgba(0, 0, 0, 0.2) 0px 0px 20px 0px;
    transform: scale(1.02);
}

#pickup li a::before, #pickup li a::after {
    top: 0px;
    bottom: 0px;
    right: 15px;
    margin: auto;
}

#pickup li a::after {
    right: 23px;
}

#pickup li figure {
    flex-basis: 120px;
    width: 120px;
    min-width: 120px;
    background: center center / cover no-repeat;
}

#pickup li .txt {
    padding: 15px 30px 15px 10px;
}

#pickup li p {
    line-height: 1.4;
    font-size: 1.4rem;
}

#pickup li h3 {
    margin-top: 5px;
    line-height: 1.2;
    font-size: 2rem;
    color: rgb(33, 139, 204);
}

#column {
    padding: 0px 50px;
}

#column.lazyloaded {
    background: url("../image/column_bg0.jpg") left top no-repeat rgb(220, 232, 235);
}

#column .inner {
    position: relative;
    max-width: 810px;
    margin: auto;
    padding: 30px 0px 15px;
}

#column .head {
    float: left;
    width: 43%;
}

#column .ph {
    position: absolute;
    bottom: 0px;
    left: -110px;
    width: 422px;
}

#column h2 {
    box-sizing: border-box;
    position: relative;
    float: right;
    width: 160px;
    height: 160px;
    background: rgb(255, 255, 255);
    padding: 6px;
    box-shadow: rgba(0, 0, 0, 0.2) 0px 0px 5px 0px;
    text-align: center;
    font-size: 2.2rem;
    color: rgb(33, 139, 204);
}

#column h2 span {
    box-sizing: border-box;
    display: block;
    width: 100%;
    height: 100%;
    padding-top: 45px;
    border: 1px solid rgb(33, 139, 204);
}

#column ul {
    position: relative;
    float: right;
    width: 50%;
    z-index: 1;
}

#column li {
    box-sizing: border-box;
    float: left;
    width: 50%;
    padding: 0px 5px 10px;
}

#column li:nth-child(2n+1) {
    clear: both;
}

#column li a {
    display: block;
    text-align: center;
    background: rgb(255, 255, 255);
    border-radius: 4px;
    box-shadow: rgba(0, 0, 0, 0.2) 0px 0px 5px 0px;
    padding: 6px 6px 15px;
    transition: all 0.2s ease-out 0s;
}

#column li a:hover {
    box-shadow: rgba(0, 0, 0, 0.2) 0px 0px 20px 0px;
    transform: scale(1.02);
}

#column li figure {
    box-sizing: border-box;
    margin-bottom: 10px;
    overflow: hidden;
}

#column li figure.border {
    border: 1px solid rgb(33, 139, 204);
}

#column li h3 {
    font-size: 1.8rem;
    color: rgb(33, 139, 204);
}

#column_bnr {
    margin-top: 30px;
}

#column_bnr ul {
    max-width: 770px;
    margin: auto;
    text-align: center;
}

#column_bnr li {
    box-sizing: border-box;
    display: inline-block;
    width: 49%;
    padding: 7px 5px;
}

#column_bnr li a {
    display: flex;
    align-items: center;
    background: rgb(255, 255, 255);
    overflow: hidden;
    border: 1px solid rgb(33, 139, 204);
    border-radius: 4px;
    transition: all 0.2s ease-out 0s;
}

#column_bnr li a:hover {
    box-shadow: rgba(0, 0, 0, 0.2) 0px 0px 20px 0px;
    transform: scale(1.02);
}

#column_bnr li a::before, #column_bnr li a::after {
    top: 0px;
    bottom: 0px;
    right: 15px;
    margin: auto;
}

#column_bnr li a::after {
    right: 23px;
}

#column_bnr li figure {
    flex-basis: 150px;
    height: 100px;
    background: center center / cover no-repeat;
}

#column_bnr li:nth-child(1) figure.lazyloaded {
    background-image: url("../image/access_img5.jpg");
}

#column_bnr li:nth-child(2) figure.lazyloaded {
    background-image: url("../image/access_img1_1_resized.jpg");
}

#column_bnr li:nth-child(3) figure.lazyloaded {
    background-image: url("../image/access_img2_2_resized.jpg");
}

#column_bnr li:nth-child(4) figure.lazyloaded {
    background-image: url("../image/column_img5.jpg");
}

#column_bnr li:nth-child(5) figure.lazyloaded {
    background-image: url("../image/column_img6.jpg");
}

#column_bnr li .txt {
    box-sizing: border-box;
    margin-top: 5px;
    padding: 0px 40px 0px 10px;
}

#column_bnr h3 {
    margin-top: -0.3em;
    font-size: 1.8rem;
    color: rgb(33, 139, 204);
}

#info {
    padding: 60px 50px;
}

#info .inner {
    max-width: 830px;
    margin: auto;
}

#info h2 {
    text-align: center;
    font-size: 2.4rem;
    color: rgb(33, 139, 204);
}

#news h3, #activity h3 {
    border-bottom: 1px solid rgb(33, 139, 204);
    padding-bottom: 10px;
    margin-bottom: 30px;
    text-align: center;
    font-size: 1.8rem;
    color: rgb(33, 139, 204);
}

#news h3 + ol li:nth-of-type(1), #activity h3 + ol li:nth-of-type(1) {
    padding-top: 0px;
}

#info .tab_contents {
    margin: 30px 0px;
}

#info .tab_contents > div {
    box-sizing: border-box;
    float: left;
    width: 50%;
}

#news {
    padding-right: 20px;
}

#activity {
    padding-left: 20px;
}

#info .topic {
    background: rgb(237, 236, 233);
    padding: 25px;
}

#info .topic h4 {
    color: rgb(33, 139, 204);
}

#info .topic p {
    font-size: 1.4rem;
}

#info .topic p {
    font-size: 1.4rem;
}

#news li, #activity li {
    padding: 30px 0px;
    border-top: 1px solid rgb(220, 220, 220);
}

#news li:first-child, #activity li:first-child {
    border: none;
}

#news li time, #activity li time {
    font-size: 1.2rem;
    color: rgb(33, 139, 204);
}

#news li .label, #activity li .label {
    display: inline-block;
    margin-left: 10px;
    padding: 2px 5px;
    border: 1px solid rgb(33, 139, 204);
    font-size: 1.1rem;
    color: rgb(33, 139, 204);
}

#news li p, #activity li p {
    margin-top: 10px;
    font-size: 1.4rem;
}

#info .btns {
    margin-top: 10px;
    text-align: center;
}

#info .box {
    margin-top: 60px;
    background: rgb(237, 236, 233);
    padding: 20px;
}

#info .box ul {
    display: flex;
    max-width: 770px;
    margin: auto;
}

#info .box li {
    box-sizing: border-box;
    width: 50%;
    padding: 5px;
}

#info .box li.full-width {
    width: 100%;
    padding: 0px 5px;
}

#info .box li.full-width .line {
    display: block;
    background: none;
    border: none;
    border-radius: 0px;
    margin-top: 10px;
    height: auto;
}

#info .box li:nth-child(2n+1) {
    clear: both;
}

#info .box li a {
    display: flex;
    height: 100%;
    background: rgb(255, 255, 255);
    overflow: hidden;
    border: 1px solid rgb(33, 139, 204);
    border-radius: 4px;
    transition: all 0.2s ease-out 0s;
}

#info .box li a:hover {
    box-shadow: rgba(0, 0, 0, 0.2) 0px 0px 20px 0px;
    transform: scale(1.02);
}

#info .box li figure {
    flex-basis: 50%;
    background: center center / cover no-repeat;
}

#info figure.improving_skills.lazyloaded {
    background-image: url("../image/info_img0.jpg");
}

#info figure.monitor.lazyloaded {
    background-image: url("../image/info_img1.jpg");
}

#info figure.blog_introduction.lazyloaded {
    background-image: url("../image/info_img2.jpg");
}

#info figure.chinese_language.lazyloaded {
    background-image: url("../image/info_img3.jpg");
}

#info figure.publication.lazyloaded {
    background-image: url("../image/imfo_img4.jpg");
}

#info figure.point_card.lazyloaded {
    background-image: url("../image/imfo_img5.jpg");
}

#info .box li .txt {
    box-sizing: border-box;
    flex-basis: 50%;
    padding: 15px 10px;
}

#info .box li p {
    line-height: 1.4;
    font-size: 1.4rem;
}

#info .box li h3 {
    margin-top: 5px;
    font-size: 1.8rem;
    color: rgb(33, 139, 204);
}

#info .bnr {
    margin-top: 30px;
}

#info .bnr ul {
    max-width: 770px;
    margin: auto;
    text-align: center;
}

#info .bnr li {
    box-sizing: border-box;
    display: inline-block;
    width: 50%;
    padding: 7px 5px;
}

#info .bnr li a {
    display: flex;
    align-items: center;
    background: rgb(255, 255, 255);
    overflow: hidden;
    border: 1px solid rgb(33, 139, 204);
    border-radius: 4px;
    transition: all 0.2s ease-out 0s;
}

#info .bnr li a:hover {
    box-shadow: rgba(0, 0, 0, 0.2) 0px 0px 20px 0px;
    transform: scale(1.02);
}

#info .bnr li a::before, #info .bnr li a::after {
    top: 0px;
    bottom: 0px;
    right: 15px;
    margin: auto;
}

#info .bnr li a::after {
    right: 23px;
}

#info .bnr li figure {
    flex-basis: 150px;
    height: 100px;
    background: center center / cover no-repeat;
}

#info .bnr li .txt {
    box-sizing: border-box;
    margin-top: 5px;
    padding: 0px 40px 0px 10px;
}

#info .bnr h3 {
    margin-top: -0.3em;
    font-size: 1.8rem;
    color: rgb(33, 139, 204);
}

@font-face {
    font-family: "Noto Serif JP";
    font-style: normal;
    font-weight: 400;
    src: url("../font/NotoSerifJP-Regular.otf") format("opentype");
}

@font-face {
    font-family: "Noto Serif JP";
    font-style: normal;
    font-weight: 500;
    src: url("../font/NotoSerifJP-Medium.otf") format("opentype");
}

@media only screen and (max-width: 767px) {
    #beauty_info {
        padding: 0px 5px;
        overflow: hidden;
    }

    #beauty_info .inner {
        padding: 50px 0px 15px;
    }

    #beauty_info .head {
        float: none;
        width: 100%;
    }

    #beauty_info .ph {
        position: absolute;
        top: 5px;
        bottom: auto;
        right: -90px;
        width: 280px;
    }

    #beauty_info h2 {
        margin-right: 5px;
    }

    #beauty_info ul {
        float: none;
        width: 100%;
        margin: 30px 0px 0px;
    }

    #attention .box h2 {
        font-size: 1.5rem;
    }

    .accordion_content .inner {
        padding: 0px;
    }

    .accordion .ba_block .inner {
        padding: 0px 10px;
    }

    .accordion_content p img {
        max-width: 160px;
    }

    .accordion_content p .inline-figure {
        max-width: 160px;
        margin: 0px 0px 20px 20px;
    }

    .accordion_content p .inline-figure .cap {
        font-size: 14px;
    }

    .accordion {
        margin-bottom: 20px;
        margin-top: -100px;
        padding-top: 120px;
    }

    .accordion_content .inner .border, .accordion_content .inner .texts {
        font-size: 1.2rem;
    }

    .accordion_content .inner .texts > p {
        text-align: left;
    }

    .accordion_content .inner .texts > ul li {
        position: relative;
        padding-left: 1.3em;
        text-indent: 0px;
    }

    .accordion_content .inner .texts > ul li span {
        display: inline-block;
        position: absolute;
        left: 0px;
        margin-right: 0.3em;
    }

    .accordion_h {
        padding: 10px 10px 5px;
    }

    .accordion_h label::before {
        left: 90%;
    }

    .accordion .center {
        text-align: center !important;
    }

    body {
        font-size: 1.4rem;
    }

    .pc {
        display: none !important;
    }

    .btn_link_l, .btn_anchor {
        width: 350px;
        min-width: 0px;
        max-width: 100%;
        padding: 15px 35px;
    }

    .btn_link_l_wimg {
        min-width: 0px;
    }

    .btn_anchor {
        text-align: left;
        padding-left: 15px;
    }

    #gnav {
        display: none;
    }

    #cnav {
        float: right;
        width: 71%;
        max-width: 295px;
    }

    #cnav ul {
        margin-top: 0px;
        border: none;
    }

    #cnav li {
        box-sizing: border-box;
        border: none;
        width: 22%;
        max-width: 65px;
        float: left;
    }

    #cnav li:first-child {
        width: 34%;
        max-width: none;
    }

    #cnav li a {
        box-sizing: border-box;
        padding: 40px 5px 0px;
        height: 65px;
        text-align: center;
        font-size: 1rem;
        border-left: 1px solid rgb(225, 225, 225);
    }

    #cnav li a.reserve, #cnav li a.mail, #cnav li a.tel {
        background-position: center 10px;
    }

    #mnav li:nth-child(2n+1) {
        border-right: 1px solid rgb(220, 220, 220);
    }

    #mnav li a {
        display: block;
        border-bottom: none;
        padding: 10px;
        height: 100%;
    }

    #mnav .btn_arrow0 {
        padding-right: 10px;
    }

    #mnav .btn_arrow0::before {
        top: 115px;
        bottom: auto;
        right: 10px;
        margin: auto;
    }

    #mnav .btn_arrow0::after {
        top: 121px;
        bottom: auto;
        right: 17px;
        margin: auto;
    }

    #mnav li figure {
        box-sizing: border-box;
        width: 100%;
        height: 95px;
        border-bottom: 3px solid rgb(176, 43, 90);
        margin-bottom: 5px;
    }

    #mnav li .txt {
        width: 100%;
        padding-left: 0px;
    }

    #reason {
        padding: 20px 10px;
        background-size: 100%;
        background-position: center top;
    }

    #reason .box {
        padding: 6px;
    }

    #reason .box > div {
        padding: 30px 20px;
    }

    #box_lang .lang li {
        display: inline-block;
        width: 50% !important;
    }

    ul.bnr_line_cn {
        display: block !important;
    }

    .bnr_line_cn li {
        width: 100% !important;
    }

    .lang_cn ul li {
        display: contents !important;
    }

    .lang_cn ul li a {
        height: auto !important;
        padding: 10px !important;
    }

    .picup_height {
        height: unset !important;
    }

    .mt10 {
        margin-top: 10px;
    }

    .sp_banner {
        padding: 0px 10px;
    }

    header {
        padding: 0px;
        margin: 0px;
    }

    header #pc_menu {
        display: none;
    }

    header #sp_header {
        display: table;
        width: 100%;
        box-sizing: border-box;
        padding: 0px;
        margin: 0px;
        border-bottom: 1px solid rgb(225, 225, 225);
        position: static;
        z-index: 9999;
        transition: all 0.5s ease 0s;
        background-color: rgb(255, 255, 255);
    }

    header #sp_header.hide {
        position: static;
        transform: translateY(-100%);
    }

    header #sp_header.show {
        position: fixed;
        top: 0px;
    }

    header #sp_header div.sp_header_items_row1 {
        display: table-cell;
        width: 33.6%;
        box-sizing: border-box;
        vertical-align: middle;
    }

    header #sp_header div.sp_header_items_row1 h2#logo {
        line-height: 0;
        text-align: center;
        padding: 0px;
        box-sizing: border-box;
    }

    header #sp_header div.sp_header_items_row1 h2#logo img {
        width: 72%;
        height: auto;
    }

    header #sp_header div.sp_header_items_row2 {
        display: table-cell;
        width: 66.4%;
        text-align: right;
        box-sizing: border-box;
        vertical-align: middle;
    }

    header #sp_header div.sp_header_items_row2 ul {
        list-style-type: none;
        display: table;
        vertical-align: middle;
        font-size: 0.9rem;
        font-weight: 400;
        width: 100%;
        white-space: nowrap;
    }

    header #sp_header div.sp_header_items_row2 ul li {
        text-align: center;
        width: 25%;
        display: table-cell;
        border-left: 1px solid rgb(225, 225, 225);
        vertical-align: bottom;
    }

    header #sp_header div.sp_header_items_row2 ul li a {
        padding: 10px 2px;
        display: block;
        color: rgb(51, 51, 51);
        transition: color 0.15s ease-out 0s;
    }

    header #sp_header div.sp_header_items_row2 ul li a.reserve::before {
        display: block;
        width: 29.58px;
        height: 28.35px;
        background: url("../image/icon_menu_reserve_sp.svg") 0% 0% / 100% no-repeat;
        content: "";
        margin: 0px auto 2px;
    }

    header #sp_header div.sp_header_items_row2 ul li a.line_reserve::before {
        display: block;
        width: 25.6px;
        height: 24.39px;
        background: url("../image/icon_menu_line_reserve_sp.svg") 0% 0% / 100% no-repeat;
        content: "";
        margin: 0px auto 2px;
    }

    header #sp_header div.sp_header_items_row2 ul li a.phone::before {
        display: block;
        width: 24.01px;
        height: 24px;
        background: url("../image/icon_menu_phone_sp.svg") 0% 0% / 100% no-repeat;
        content: "";
        margin: 0px auto 2px;
    }

    header #sp_header div.sp_header_items_row2 ul li a:hover {
        color: rgb(33, 139, 204);
    }

    header #sp_header div.sp_header_items_row2 ul #btn_menu {
        background: rgb(176, 43, 90);
        border-left: none;
        vertical-align: middle;
    }

    header #sp_header div.sp_header_items_row2 ul #btn_menu img {
        width: 50%;
        max-width: 32px;
        height: auto;
    }

    header .googlesearch {
        display: none;
    }

    header .googlesearch_sp {
        margin: 0px;
        border-radius: 0px;
        background: rgb(237, 236, 232);
        padding: 3px 6px;
        position: absolute;
        top: 14px;
        left: 15px;
        border: none;
        width: 60%;
    }

    header .googlesearch_sp .gsc-input-box {
        padding: 0px;
        border: none;
        background: transparent;
    }

    header .googlesearch_sp .gsc-search-button-v2 {
        padding: 9px;
        line-height: 0;
        background: url("../image/icon.svg") center center / 80% no-repeat;
        border: none;
        height: 24px;
        width: 24px;
    }

    header .googlesearch_sp .gsc-search-button-v2 svg {
        display: none;
    }

    header .googlesearch_sp .gsc-search-button {
        margin-left: 0px;
    }

    header #sp_header div.sp_header_items_row11 {
        display: flex;
        justify-content: space-between;
        align-items: center;
        width: 100%;
        padding: 8.5px 30px;
        box-sizing: border-box;
    }

    header #sp_header div.sp_header_items_row11 #logo {
        line-height: 0;
        display: inline;
        width: 88px;
        text-align: left;
        padding-top: 0px;
    }

    header #sp_header div.sp_header_items_row11 #logo img {
        width: 100%;
        height: auto;
        margin: auto;
    }

    header #sp_header div.sp_header_items_row11 .sp_header_gmenu {
        width: 50%;
        line-height: 0;
        text-align: right;
    }

    header #sp_header div.sp_header_items_row11 .sp_header_gmenu ul {
        list-style-type: none;
        display: flex;
        align-items: center;
        justify-content: flex-end;
    }

    header #sp_header div.sp_header_items_row11 .sp_header_gmenu ul li:first-child {
    }

    header #sp_header div.sp_header_items_row12 {
        display: none;
        background: rgba(0, 0, 0, 0.3);
        width: 100%;
        height: 55px;
        position: fixed;
        z-index: 1000;
    }

    header #sp_header div.sp_header_items_row12 .googlesearch_sp2 {
        margin: auto 0px auto auto;
        border-radius: 0px;
        padding: 0px;
        position: relative;
        inset: 9px 25px 0px auto;
        font-size: 1.4rem;
        border: none;
        width: 200px;
    }

    header #sp_header div.sp_header_items_row12 .googlesearch_sp2::before {
        content: "";
        position: absolute;
        right: -65px;
        top: -9px;
        left: 0px;
        width: 0px;
        height: 0px;
        margin: auto;
        border-style: solid;
        border-color: rgb(255, 255, 255) transparent transparent;
        border-width: 6px 6px 0px;
    }

    header #sp_header div.sp_header_items_row12 .googlesearch_sp2 .gsc-search-button-v2 svg {
        display: none;
    }

    header #sp_header div.sp_header_items_row12 .googlesearch_sp2 .gsc-search-button-v2 {
        border: none;
        color: rgb(119, 119, 119);
        width: auto;
        margin: 0px;
        border-radius: 0px;
    }

    header #sp_header div.sp_header_items_row12 .googlesearch_sp2 .gsc-search-box {
        border-radius: 30px;
        background: rgb(255, 255, 255);
        width: 100%;
        padding: 1px 10px;
        box-sizing: border-box;
    }

    header #sp_header div.sp_header_items_row12 .googlesearch_sp2 .gsc-input-box {
        border: none;
        padding: 1px 0px;
        background: transparent;
    }

    header #sp_header div.sp_header_items_row12 .googlesearch_sp2 .gsc-input {
        font-size: 1.3rem;
    }

    header #sp_header div.sp_header_items_row12 .googlesearch_sp2 .gsib_a {
        padding: 2px 0px;
    }

    header #sp_header div.sp_header_items_row12 .googlesearch_sp2 .gsc-search-button-v2, header #sp_header div.sp_header_items_row12 .googlesearch_sp2 .gsc-search-button-v2:hover, header #sp_header div.sp_header_items_row12 .googlesearch_sp2 .gsc-search-button-v2:focus {
        background-color: transparent;
        font-size: 1.4rem;
        padding: 5px;
        margin-left: 10px;
        white-space: nowrap;
    }

    header #sp_header div.sp_header_items_row12 .googlesearch_sp2 .gsst_a {
        color: rgb(119, 119, 119);
        line-height: 1;
    }

    header #sp_header div.sp_header_items_row12 .googlesearch_sp2 .gsst_a .gscb_a {
        color: rgb(119, 119, 119);
        line-height: 1;
        font-size: 2rem;
    }

    #sp_foot_gmenu {
        position: fixed;
        display: block;
        bottom: 0px;
        width: 84%;
        background: rgba(255, 255, 255, 0.7);
        border-radius: 5px;
        padding: 5px;
        margin: auto;
        box-sizing: border-box;
        z-index: 1001;
        left: 0px;
        right: 0px;
    }

    #sp_foot_gmenu ul {
        list-style-type: none;
        padding: 0px;
        display: flex;
        align-items: center;
        margin: 0px auto;
    }

    #sp_foot_gmenu ul li:first-child {
        padding: 0px 2.5px 0px 0px;
        margin: 0px;
        width: 50%;
    }

    #sp_foot_gmenu ul li:last-child {
        padding: 0px 0px 0px 2.5px;
        margin: 0px;
        width: 50%;
    }

    #sp_foot_gmenu ul li img {
        padding: 0px;
        margin: 0px;
        width: 100%;
        height: auto;
    }

    footer #column_copy {
        padding-bottom: 100px;
    }

    header #sp_menu .lang {
        display: block;
    }

    #topslide .swiper-container-horizontal > .swiper-pagination-bullets {
        bottom: -25px;
    }

    #topslide .swiper-pagination-bullet {
        width: 10px;
        height: 10px;
    }

    #topslide .sp-slide .deco img {
        width: 100%;
    }

    #topslide .slick-dots li {
        width: 17px !important;
        margin: 0px 3px !important;
    }

    #topslide .bnr {
        right: 2% !important;
        bottom: 2% !important;
    }

    #topslide .bnr .btn_arrow1 {
        padding: 5px 25px 5px 10px;
        font-size: 1.6rem;
    }

    #topslide .bnr .btn_arrow1::before {
        width: 10px;
        height: 10px;
        right: 6px;
    }

    #topslide .bnr .btn_arrow1::after {
        width: 2px;
        height: 2px;
        right: 11px;
    }

    #pickup2 {
        padding: 30px 0px;
        background: url("../image/top_pickup2_bg_sp.jpg") center top / auto 100% no-repeat;
        box-shadow: none;
    }

    #pickup2 h2 {
        font-size: 2rem;
        color: rgb(51, 51, 51);
        text-align: center;
        margin-bottom: 20px;
        padding: 0px 15px;
    }

    #pickup2 h2 span {
        color: rgb(176, 43, 90);
    }

    #pickup2 ul {
        margin-top: 10px;
    }

    #pickup2 li {
        float: none;
        width: 100%;
        padding: 5px 0px;
    }

    #pickup2 .slick-slider {
        margin-bottom: 20px;
        line-height: 0;
    }

    #worry2 {
        padding: 50px 0px 10px;
        background: url("../image/top_worry2_bg2.jpg") center center / auto 100% no-repeat;
        text-align: center;
    }

    #worry2.mt40 {
        margin-top: 0px;
    }

    #worry2 h2 {
        padding: 0px 15px 15px;
        font-size: 2rem;
        color: rgb(51, 51, 51);
    }

    #worry2 h2 span {
        color: rgb(176, 43, 90);
    }

    #worry2 .wy_tabmenu {
        border: 1px solid rgb(255, 255, 255);
        border-radius: 9px;
        max-width: 600px;
        margin: 0px auto;
        width: 96%;
        background: rgb(255, 255, 255);
        box-sizing: border-box;
    }

    #worry2 .wy_tabmenu ul {
        list-style-type: none;
        margin: 0px auto;
        width: auto;
        display: flex;
        align-items: center;
        justify-content: space-between;
    }

    #worry2 .wy_tabmenu ul li {
        width: 50%;
        padding: 4px;
    }

    #worry2 .wy_tabmenu ul li span {
        display: block;
        padding: 3px;
        text-align: center;
        border-radius: 5px;
        background: rgb(255, 255, 255);
        color: rgb(0, 0, 0);
        transition: background-color 0.5s ease 0s;
        font-size: 12px;
    }

    #worry2 .wy_tabmenu ul li span:hover {
        cursor: pointer;
        background: rgb(238, 238, 238);
    }

    #worry2 .wy_tabmenu ul li span.wy_tabmenu_active {
        background: rgb(33, 139, 204);
        color: rgb(255, 255, 255);
    }

    #worry2 .wy_tabmenu ul li span.wy_tabmenu_active:hover {
        color: rgb(68, 68, 68);
        background: rgb(238, 238, 238);
    }

    #worry2 .wy_figures {
        text-align: center;
        padding: 0px;
    }

    #worry2 .wy_figures figure {
        max-width: 600px;
        width: 100%;
        margin: 0px auto;
        padding: 0px;
        box-sizing: border-box;
        display: block;
        position: relative;
    }

    #worry2 .wy_figures figure img {
        width: 100%;
        height: auto;
        max-width: 750px;
        line-height: 0;
    }

    #worry2 .wy_figures figure a {
        color: rgb(51, 51, 51);
        width: auto;
        display: block;
        padding: 10px 30px;
        font-size: 1.2rem;
        text-align: left;
        line-height: 1.5em;
    }

    #worry2 .wy_figures figure a span {
        color: rgb(176, 43, 90);
        font-size: 1.8rem;
        display: block;
        line-height: 1.6em;
    }

    #worry2 .wy_figures figure p {
        display: block;
        position: absolute;
        margin: auto;
        width: auto;
    }

    #worry2 .wy_figures figure#wy_tabmenu2fig {
        display: none;
    }

    #worry2 .wy_figures figure#wy_tabmenu4fig {
        display: none;
    }

    #worry2 .wy_aging {
        max-width: 920px;
        width: 100%;
        margin: 15px auto;
        padding: 5px;
        box-sizing: border-box;
    }

    #worry2 .wy_aging ul {
        display: flex;
        flex-wrap: wrap;
        box-sizing: border-box;
    }

    #worry2 .wy_aging ul li {
        width: calc(50% - 10px);
        padding: 5px;
        box-sizing: border-box;
    }

    #worry2 .wy_aging ul li a {
        box-sizing: border-box;
        display: block;
    }

    #worry2 .wy_aging ul li img {
        width: 100%;
        height: auto;
    }

    #worry2 .wy_btnline {
        padding: 0px 0px 50px;
    }

    #worry2 .wy_btnline a {
        background: rgb(33, 139, 204);
        max-width: 300px;
        margin: 0px auto;
        padding: 12px;
        border-radius: 4px;
        transition: all 0.2s ease-out 0s;
        display: block;
        color: rgb(255, 255, 255);
        position: relative;
        box-sizing: border-box;
    }

    #worry2 .wy_btnline a:hover {
        box-shadow: rgba(0, 0, 0, 0.2) 0px 0px 20px 0px;
        transform: scale(1.02);
    }

    #worry2 .wy_btnline a::after {
        content: "";
        top: 0px;
        bottom: 0px;
        right: 17px;
        margin: auto;
        width: 8px;
        height: 8px;
        border-top: 1px solid rgb(255, 255, 255);
        border-right: 1px solid rgb(255, 255, 255);
        position: absolute;
        display: block;
        transform: rotate(45deg);
    }

    #treatment2 {
        padding: 45px 10px 35px;
        background-size: 120%;
    }

    #treatment2 nav {
        flex-wrap: wrap;
        margin-top: 35px;
    }

    #treatment2 h2 {
        position: relative;
        margin: 25px auto 0px;
        font-size: 2.5rem;
        color: rgb(220, 90, 140);
        z-index: 1;
    }

    #treatment2 h3 {
        position: relative;
        display: inline-block;
        background-color: rgb(219, 89, 140);
        border-radius: 50px;
        padding: 9px 20px 10px;
        font-size: 1.3rem;
        color: rgb(255, 255, 255);
        z-index: 1;
    }

    #treatment2 h3 span {
        font-size: 1.6rem;
    }

    #treatment2 nav .img {
        top: -210px;
        right: -25px;
        width: 220px;
    }

    #treatment2 nav > div {
        width: 49.5%;
        padding: 0px 0px 5px;
        margin: 0px;
    }

    #treatment2 nav > div:last-child {
        padding: 0px 0px 5px;
    }

    #treatment2 h4 {
        padding: 30px 10px;
    }

    #treatment2 li a {
        font-size: 1.2rem;
    }

    #treatment2 .bnr {
        margin: 20px auto auto;
    }

    #treatment2 .shoureiphoto .shoureiphoto_tabmenu ul li {
        flex: initial;
        box-sizing: border-box;
        width: 100%;
    }

    #treatment2 .shoureiphoto .shoureiphoto_tabmenu ul li span {
        height: 5vh;
        display: flex;
        align-items: center;
        padding: 10px 0px;
        justify-content: center;
        width: 100%;
        box-sizing: border-box;
    }

    #treatment2 .shoureiphoto .shoureiphoto_tabmenu ul li span.shoureiphoto_tabmenu_active:hover {
        background: rgb(33, 139, 204);
        color: rgb(255, 255, 255);
    }

    #mv2 {
        background: url("../image/top_mv2_bg_sp.jpg") center top / 100% no-repeat rgb(239, 168, 168);
        overflow: hidden;
        padding: 0px 0px 40px;
        height: auto;
        margin: auto !important;
    }

    #mv2 .inner {
        position: relative;
        width: 100%;
        max-width: 950px;
        margin: 0px auto;
        height: 100%;
    }

    #mv2 h2 {
        position: relative;
        margin: 0px auto 15px;
        font-size: 1.8rem;
        color: rgb(51, 51, 51);
        text-align: center;
        z-index: 1;
        padding-top: 30px;
        padding-left: 20px;
        padding-right: 20px;
    }

    #mv2 h2 span {
        font-size: 1.8rem;
        color: rgb(176, 43, 90);
    }

    #mv2 .inner #mvImg_sp {
        position: absolute;
        top: 0px;
        width: 100%;
        height: auto;
        z-index: 1;
    }

    #mv2 .takasu_message {
        position: relative;
        margin: 81% 15px auto;
        box-sizing: border-box;
        width: auto;
        max-width: 100%;
        background: rgb(255, 255, 255);
        border-radius: 10px;
        padding: 30px 20px;
        font-size: 1.5rem;
        z-index: 2;
    }

    #mv2 .takasu_message p {
        margin-bottom: 1em;
    }

    #mv2 .bnr {
        margin: 30px auto auto;
    }

    #mv2 .bnr a {
        display: block;
        background: rgb(255, 255, 255);
        border: 1px solid rgb(33, 139, 204);
        max-width: 100%;
        box-sizing: border-box;
        margin: auto;
        padding: 20px;
        border-radius: 4px;
        transition: all 0.2s ease-out 0s;
    }

    #mv2 .bnr a:hover {
        box-shadow: rgba(0, 0, 0, 0.2) 0px 0px 20px 0px;
        transform: scale(1.02);
    }

    #mv2 .bnr h4 {
        padding: 0px;
        line-height: 1;
        font-size: 1.7rem;
        color: rgb(33, 139, 204);
        text-shadow: none;
        text-align: center;
    }

    #mv2 .bnr img {
        width: 114px;
        height: auto;
        margin-right: 4px;
    }

    #mv2 .bnr p {
        line-height: 1.4;
        font-size: 1.4rem;
    }

    #mv2 .bnr .btn_arrow0 {
        padding-right: 30px;
        border: 1px solid rgb(33, 139, 204);
    }

    #mv2 .bnr .btn_arrow0::before {
        background-color: rgb(255, 255, 255);
        border: 1px solid rgb(33, 139, 204);
        top: 0px;
        bottom: 0px;
        right: 11px;
        width: 18px;
        height: 18px;
        margin: auto;
    }

    #mv2 .bnr .btn_arrow0::after {
        top: 0px;
        bottom: 0px;
        right: 19px;
        margin: auto;
        width: 4px;
        height: 4px;
        border-top: 1px solid rgb(33, 139, 204);
        border-right: 1px solid rgb(33, 139, 204);
    }

    #mv3 h2::before {
        content: "";
        background: url("../image/top_mv3_icon_pc.png") center top / 80px 80px no-repeat;
        position: absolute;
        top: 0px;
        bottom: initial;
        right: 10%;
        width: 80px;
        height: 80px;
        margin: auto;
    }

    #mv3 .takasu_message p {
        padding: 0px;
    }

    #mv3 h2 {
        font-size: 2.5rem;
    }

    #mv3 h2 span.sp_mgr {
        margin-right: 2em;
    }

    #mv3 h3 {
        font-size: 2rem;
    }

    #mv3 h3 span {
        font-size: 2rem;
    }

    #toppage #info {
        padding: 60px 10px;
    }

    .modal_inner {
        width: 100%;
    }

    header #sp_header div.sp_header_items_row1 p.h_2 {
        line-height: 0;
        text-align: center;
        padding: 0px;
        box-sizing: border-box;
    }

    header #sp_header div.sp_header_items_row1 p.h_2 img {
        width: 72%;
        height: auto;
    }

    #contact p.h_3 {
        margin-top: 15px;
    }

    #supervision p.h_2.sub_font {
        font-size: 1.4rem;
    }

    footer .box p.h_3 {
        text-align: center;
    }

    #newmenu5 {
        padding: 50px 0px;
        background: url("../image/top_newmenu5_bg_sp.jpg") center top / cover no-repeat;
    }

    #newmenu5 h2 {
        font-size: 2rem;
        color: rgb(51, 51, 51);
        text-align: center;
        margin-bottom: 20px;
        padding: 0px 15px;
    }

    #newmenu5 h2 span {
        color: rgb(176, 43, 90);
    }

    #newmenu5 #slider2 .swiper-wrapper {
        justify-content: unset;
    }

    .swiper4-container .swiper-slide {
        height: auto;
        margin: auto;
        width: 190px !important;
    }

    #subject {
        padding: 30px 15px;
    }

    #subject .list {
        margin: 10px 0px 0px;
        display: block;
    }

    #subject .list p.h_3 {
        position: relative;
        padding: 15px 0px;
        margin: 0px;
    }

    #subject .list p.h_3::before, #subject .list p.h_3::after {
        position: absolute;
        top: 0px;
        bottom: 0px;
        right: 0px;
        margin: auto;
        background: rgb(33, 139, 204);
        content: "";
    }

    #subject .list p.h_3::before {
        right: 7px;
        width: 2px;
        height: 16px;
    }

    #subject .list .h_3::after {
        width: 16px;
        height: 2px;
    }

    #subject .list .h_3.act::before {
        display: none;
    }

    #subject .list > li {
        padding: 0px;
    }

    #subject .list li ul {
        margin: 15px 0px 20px;
    }

    #subject .list li li {
        margin: 8px 0px;
    }

    #subject .list ul.cf li {
        float: none;
        width: 100%;
    }

    #column_utilities nav li, #subject nav li {
        display: block;
        float: left;
        width: 33.33%;
        margin: 10px 0px;
    }

    #column_utilities nav li a, #subject nav li a {
        display: block;
        position: relative;
        padding-left: 25px;
    }

    #column_utilities nav li a::before, #subject nav li a::before {
        display: block;
        position: absolute;
        top: 0px;
        bottom: 0px;
        left: 0px;
        margin: auto;
        width: 16px;
        height: 16px;
        border: 1px solid rgb(33, 139, 204);
        border-radius: 50px;
        content: "";
    }

    #column_utilities nav li a::after, #subject nav li a::after {
        display: block;
        position: absolute;
        top: 0px;
        bottom: 0px;
        left: 6px;
        margin: auto;
        width: 3px;
        height: 3px;
        border-top: 1px solid rgb(33, 139, 204);
        border-right: 1px solid rgb(33, 139, 204);
        transform: rotate(45deg);
        content: "";
    }

    #operation {
        padding: 30px 15px;
    }

    #operation .list {
        margin: 10px 0px 0px;
        display: block;
    }

    #operation .list p.h_3 {
        position: relative;
        padding: 15px 0px;
        margin: 0px;
    }

    #operation .list p.h_3::before, #operation .list p.h_3::after {
        position: absolute;
        top: 0px;
        bottom: 0px;
        right: 0px;
        margin: auto;
        background: rgb(33, 139, 204);
        content: "";
    }

    #operation .list p.h_3::before {
        right: 7px;
        width: 2px;
        height: 16px;
    }

    #operation .list .h_3::after {
        width: 16px;
        height: 2px;
    }

    #operation .list .h_3.act::before {
        display: none;
    }

    #operation .list > li {
        padding: 0px;
    }

    #operation .list li ul {
        margin: 15px 0px 20px;
    }

    #operation .list li li {
        margin: 8px 0px;
    }

    #operation .list ul.cf li {
        float: none;
        width: 100%;
    }

    #column_utilities nav li, #operation nav li {
        display: block;
        float: left;
        width: 33.33%;
        margin: 10px 0px;
    }

    #column_utilities nav li a, #operation nav li a {
        display: block;
        position: relative;
        padding-left: 25px;
    }

    #column_utilities nav li a::before, #operation nav li a::before {
        display: block;
        position: absolute;
        top: 0px;
        bottom: 0px;
        left: 0px;
        margin: auto;
        width: 16px;
        height: 16px;
        border: 1px solid rgb(33, 139, 204);
        border-radius: 50px;
        content: "";
    }

    #column_utilities nav li a::after, #operation nav li a::after {
        display: block;
        position: absolute;
        top: 0px;
        bottom: 0px;
        left: 6px;
        margin: auto;
        width: 3px;
        height: 3px;
        border-top: 1px solid rgb(33, 139, 204);
        border-right: 1px solid rgb(33, 139, 204);
        transform: rotate(45deg);
        content: "";
    }

    #fswords {
        padding: 0px 0px 15px;
        text-align: center;
        background: rgb(244, 244, 244);
    }

    #fswords .fswords_wrap {
        padding: 35px 0px 15px;
        text-align: center;
        margin: 0px auto;
        width: 100%;
        max-width: unset;
        min-width: unset;
        border-radius: unset;
        background: rgb(255, 255, 255);
        box-sizing: border-box;
        box-shadow: rgb(237, 237, 237) 0px 10px 12px 0px;
    }

    #fswords .fswords_wrap h2 {
        color: rgb(33, 139, 204);
        font-size: 1.3rem;
        line-height: 1;
        margin-bottom: 5px;
    }

    #fswords .fswords_wrap h2::before {
        content: "";
        width: 1.3rem;
        height: 1.3rem;
        background: url("../image/top_icon_fsw.svg") center center / 100% no-repeat;
        display: inline-block;
        vertical-align: middle;
        margin-right: 5px;
    }

    #fswords .fswords_wrap ul {
        padding: 5px 5px 0px;
        list-style-type: none;
        display: flex;
        align-items: center;
        justify-content: center;
        flex-wrap: wrap;
    }

    #fswords .fswords_wrap ul li {
        padding: 0px 5px 5px;
    }

    #fswords .fswords_wrap ul li a {
        padding: 6px 12px;
        display: inline-block;
        border-radius: 5px;
        text-align: center;
        background: rgb(244, 244, 244);
        font-size: 1rem;
    }

    #fswords .fswords_wrap ul li a:hover {
        box-shadow: unset;
        transform: unset;
    }

    #clinics .inner .ginza_1 {
        width: 100%;
    }

    #info .blog_bnr.point_bnr_sp li .txt {
        text-align: left;
        flex-basis: 53%;
    }

    #info .blog_bnr.point_bnr_sp li .txt h3 {
        margin-top: 5px !important;
    }

    .btn_link_l, .btn_anchor {
        width: 350px;
        min-width: 0px;
        max-width: 100%;
        padding: 15px 35px;
    }

    .btn_link_l_wimg {
        min-width: 0px;
    }

    .btn_anchor {
        text-align: left;
        padding-left: 15px;
    }

    header #sp_menu .lang {
        display: block;
    }

    #treatment {
        padding: 65px 10px 60px;
        background-size: 120%;
    }

    #treatment nav {
        flex-wrap: wrap;
        margin-top: 35px;
    }

    #treatment nav .img {
        top: -200px;
        width: 220px;
    }

    #treatment nav > div {
        width: 50%;
    }

    #treatment h4 {
        padding: 30px 10px;
    }

    #treatment li a {
        font-size: 1.2rem;
    }

    #start {
        padding: 60px 18px;
    }

    #start ul {
        display: flex;
        flex-wrap: wrap;
        margin: 20px 0px;
    }

    #start li {
        padding: 6px;
        width: 33.333%;
    }

    #start .btn_link {
        width: 350px;
        min-width: 0px;
        max-width: 100%;
    }

    #banner li {
        margin: 10px;
    }

    #supervision {
        padding: 30px 15px;
    }

    #supervision p {
        margin-top: 1em;
    }

    footer .block {
        padding: 50px 15px;
    }

    #contact {
        float: none;
        width: 100%;
        border-right: none;
        padding-right: 0px;
    }

    #contact .head .btns {
        display: none;
    }

    #contact ul {
        flex-wrap: wrap;
    }

    #contact li {
        box-sizing: border-box;
        width: 50%;
    }

    #contact li a {
        font-size: 1.2rem;
    }

    #contact h3 {
        margin-top: 15px;
    }

    #clinic {
        float: none;
        width: 100%;
        padding: 25px 0px;
    }

    #clinic li {
        width: 33.33%;
    }

    #column_utilities nav li {
        display: block;
        float: left;
        width: 33.33%;
        margin: 10px 0px;
    }

    #column_utilities nav li a {
        display: block;
        position: relative;
        padding-left: 25px;
    }

    #column_utilities nav li a::before {
        display: block;
        position: absolute;
        top: 0px;
        bottom: 0px;
        left: 0px;
        margin: auto;
        width: 16px;
        height: 16px;
        border: 1px solid rgb(33, 139, 204);
        border-radius: 50px;
        content: "";
    }

    #column_utilities nav li a::after {
        display: block;
        position: absolute;
        top: 0px;
        bottom: 0px;
        left: 6px;
        margin: auto;
        width: 3px;
        height: 3px;
        border-top: 1px solid rgb(33, 139, 204);
        border-right: 1px solid rgb(33, 139, 204);
        transform: rotate(45deg);
        content: "";
    }

    footer .box {
        text-align: left;
    }

    footer .box nav li {
        padding: 0px 5px;
    }

    footer .box nav, footer .box p.copy, footer .box h3 {
        text-align: center;
    }

    #doctor {
        padding: 50px 10px;
    }

    #doctor ul {
        margin: 20px -10px;
    }

    #worry {
        padding: 50px 5px;
    }

    #worry ul {
        margin-top: 10px;
    }

    #worry li {
        width: 33.33%;
        padding: 5px;
    }

    #worry li a {
        font-size: 1.6rem;
    }

    #worry li a span {
        top: 50%;
        transform: translateY(-70%);
    }

    #worry li a span img {
        width: 68%;
        height: auto;
    }

    #worry .btn_arrow1::before {
        bottom: 20px;
    }

    #worry .btn_arrow1::after {
        bottom: 27px;
    }

    #clinics {
        padding: 200px 10px 30px;
    }

    #clinics .bg {
        height: 220px;
    }

    #clinics .inner {
        margin-top: 10px;
    }

    #clinics .inner > div {
        display: block;
        float: none;
        width: 85%;
        padding: 0px;
        margin: 0px auto;
    }

    #clinics .inner > div:nth-of-type(n+1) {
        margin-top: 25px;
    }

    #clinics .inner figure {
        padding: 3px;
    }

    #pickup {
        padding: 60px 10px;
    }

    #pickup ul {
        margin-top: 10px;
    }

    #pickup li {
        float: none;
        width: 100%;
        padding: 5px 0px;
    }

    #column {
        padding: 0px 5px;
        overflow: hidden;
    }

    #column .inner {
        padding: 50px 0px 15px;
    }

    #column .head {
        float: none;
        width: 100%;
    }

    #column .ph {
        position: absolute;
        top: 5px;
        bottom: auto;
        left: 0px;
        width: 280px;
    }

    #column h2 {
        margin-right: 5px;
    }

    #column ul {
        float: none;
        width: 100%;
        margin: 30px 0px 0px;
    }

    #column_bnr li {
        width: 100%;
    }

    #info {
        padding: 60px 10px;
    }

    #info .tab {
        margin: 30px -10px 0px;
    }

    #info .tab li {
        box-sizing: border-box;
        float: left;
        width: 50%;
        padding: 10px 5px;
        background: rgb(237, 236, 233);
        border-top: 1px solid rgb(237, 236, 233);
        border-bottom: 1px solid rgb(220, 220, 220);
        text-align: center;
        color: rgb(33, 139, 204);
    }

    #info .tab li:nth-child(2n+1) {
        border-right: 1px solid rgb(220, 220, 220);
    }

    #info .tab li.act {
        background: rgb(255, 255, 255);
        border-top: 1px solid rgb(220, 220, 220);
        border-bottom: 1px solid rgb(255, 255, 255);
    }

    #info .tab_contents > div.inact {
        display: none;
    }

    #news h3, #activity h3 {
        display: none;
    }

    #info .tab_contents {
        margin: 30px 0px;
    }

    #info .tab_contents > div {
        float: none;
        width: 100%;
    }

    #news {
        padding-right: 0px;
    }

    #activity {
        padding-left: 0px;
    }

    #info .inner > .btns {
        margin-top: -30px;
    }

    #info .box {
        margin: 40px -10px 0px;
        padding: 20px 10px;
    }

    #info .box li a {
        display: block;
        border: 1px solid rgb(228, 223, 201);
    }

    #info .box li figure {
        width: 100%;
        height: 110px;
    }

    #info .box li .txt {
        padding: 10px;
        text-align: center;
    }

    #info .bnr li {
        width: 100%;
    }

    #info .blog_bnr li a {
        display: flex;
        align-items: center;
        background: rgb(255, 255, 255);
        overflow: hidden;
        border: 1px solid rgb(33, 139, 204);
        border-radius: 4px;
        transition: all 0.2s ease-out 0s;
    }

    #info .blog_bnr li figure {
        flex-basis: 150px;
        height: 100px;
        background: center center / cover no-repeat;
    }

    #info .blog_bnr li .txt {
        box-sizing: border-box;
        margin-top: 5px;
        padding: 0px 40px 0px 10px;
    }

    #info .blog_bnr h3 {
        font-size: 1.8rem;
        color: rgb(33, 139, 204);
        margin-top: -0.3em !important;
    }

    #info .blog_bnr.point_bnr_sp li .txt h3 {
        margin-top: 5px !important;
    }
}

@media only screen and (max-width: 413px) {
    #beauty_info .ph {
        right: -50px;
    }

    #beauty_info h2 {
        font-size: 2rem;
    }

    #beauty_info li h3 {
        font-size: 1.6rem;
    }

    #beauty_info li p {
        font-size: 1.2rem;
    }

    #cnav li a {
        height: 58px;
    }

    #reason h2 {
        font-size: 2rem;
    }

    #cnav li a {
        font-size: 9px;
    }

    #cnav li a {
        font-size: 9px;
    }

    #pickup2 h2 {
        font-size: 2rem;
    }

    #pickup2 li h3 {
        font-size: 1.8rem;
    }

    #pickup2 li p {
        font-size: 1.2rem;
    }

    #treatment2 nav .img {
        top: -200px;
        right: -26px;
        width: 200px;
    }

    #treatment2 h2 {
        font-size: 2.5rem;
    }

    #treatment2 h3 {
        font-size: 1.2rem;
    }

    #treatment2 h3 span {
        font-size: 1.6rem;
    }

    #treatment2 h4 {
        font-size: 1.8rem;
    }

    #mv2 .takasu_message {
        margin: 79% 15px auto;
    }

    #contact p.h_2 {
        font-size: 1.8rem;
    }

    #clinic p.h_2 {
        font-size: 1.8rem;
    }

    #clinic ul + p.h_2 {
        margin-top: 20px;
    }

    #newmenu5 h2 {
        font-size: 2rem;
    }

    #subject .h_2 {
        font-size: 1.8rem;
    }

    #subject .list_ope > li:nth-child(n+5) {
        margin-top: 0px;
    }

    #operation .h_2 {
        font-size: 1.8rem;
    }

    #operation .list_ope > li:nth-child(n+5) {
        margin-top: 0px;
    }

    #cnav li a {
        font-size: 9px;
    }

    #treatment nav .img {
        top: -190px;
        right: -20px;
    }

    #treatment h2 {
        font-size: 2.5rem;
    }

    #treatment h3 {
        font-size: 1.2rem;
    }

    #treatment h3 span {
        font-size: 1.6rem;
    }

    #treatment h4 {
        font-size: 1.8rem;
    }

    #start h2 {
        font-size: 2.1rem;
    }

    #start li p {
        font-size: 1.2rem;
    }

    #contact h2 {
        font-size: 1.8rem;
    }

    #clinic h2 {
        font-size: 1.8rem;
    }

    #clinic ul + h2 {
        margin-top: 20px;
    }

    #clinic .sns {
        max-width: none;
    }

    #clinic .sns li {
        width: 30px;
        padding-right: 15px;
    }

    #doctor h2 {
        font-size: 2rem;
    }

    #worry h2 {
        font-size: 2rem;
    }

    #worry li a {
        font-size: 1.4rem;
    }

    #clinics h2 {
        font-size: 2rem;
    }

    #pickup h2 {
        font-size: 2rem;
    }

    #pickup li h3 {
        font-size: 1.8rem;
    }

    #pickup li p {
        font-size: 1.2rem;
    }

    #column .ph {
        left: -20px;
    }

    #column h2 {
        font-size: 2rem;
    }

    #column li h3 {
        font-size: 1.6rem;
    }

    #column li p {
        font-size: 1.2rem;
    }

    #info h2 {
        font-size: 2rem;
    }

    #info .box li p {
        font-size: 1.2rem;
    }

    #info .box li h3 {
        font-size: 1.6rem;
    }
}

@media only screen and (max-width: 374px) {
    #beauty_info .ph {
        right: -90px;
    }

    #beauty_info h2 {
        font-size: 1.7rem;
    }

    #beauty_info h3 {
        font-size: 1.4rem;
    }

    .btn_link_l_wimg figure {
        flex-basis: 120px;
        max-width: 120px;
    }

    .btn_link_l_wimg h3 {
        font-size: 1.5rem;
    }

    .btn_link_l_wimg p {
        font-size: 1.1rem;
    }

    #cnav li a {
        height: 50px;
    }

    #sp_menu .gnav li a, #sp_menu .info li a {
        font-size: 1.2rem;
    }

    #sp_menu .contact li a {
        font-size: 0.9rem;
    }

    #mv {
        height: 46vw;
        min-height: 0px;
    }

    #mv img {
        max-width: none;
        left: -5%;
        width: 55%;
    }

    #mv .txt {
        left: 50%;
        width: 50%;
    }

    #mv h2 {
        font-size: 1.6rem;
    }

    #mv h3 {
        font-size: 1rem;
    }

    #reason h2 {
        font-size: 1.7rem;
    }

    header #sp_header div.sp_header_items_row2 ul li a {
        padding: 5px 2px 2px;
    }

    header #sp_header div.sp_header_items_row2 ul li a.reserve::before {
        width: 25.58px;
        height: 24.35px;
        margin: 0px auto;
    }

    header #sp_header div.sp_header_items_row2 ul li a.line_reserve::before {
        width: 21.6px;
        height: 20.39px;
        margin: 0px auto 2px;
    }

    header #sp_header div.sp_header_items_row2 ul li a.phone::before {
        width: 20.01px;
        height: 20px;
        margin: 0px auto 2px;
    }

    header #sp_header div.sp_header_items_row2 ul #btn_menu {
        padding: 5px 0px 10px;
    }

    .menupanel .menupanelitem ul li a {
        font-size: 1rem;
    }

    #cnav li a {
        padding-top: 33px;
        background-size: 26px;
        font-size: 7.5px;
    }

    #sp_menu .gnav li a, #sp_menu .info li a {
        font-size: 1.2rem;
    }

    #sp_menu .contact li a {
        font-size: 0.9rem;
    }

    #pickup2 h2 {
        font-size: 1.7rem;
    }

    #pickup2 li h3 {
        font-size: 1.5rem;
    }

    #treatment2 nav .img {
        top: -192px;
        right: -30px;
        width: 190px;
    }

    #treatment2 h2 {
        font-size: 2.1rem;
    }

    #treatment2 h3 {
        font-size: 1.1rem;
    }

    #treatment2 h3 span {
        font-size: 1.4rem;
    }

    #treatment2 h4 {
        font-size: 1.6rem;
    }

    #mv2 .takasu_message {
        margin: 75% 15px auto;
    }

    #mv2 .bnr a {
        padding: 15px 5px;
    }

    #mv2 .bnr h4 {
        font-size: 1.5rem;
        text-align: center;
    }

    #mv2 .bnr img {
        width: 89px;
    }

    #mv2 h2 {
        font-size: 1.7rem;
    }

    #contact p.h_2 {
        font-size: 1.5rem;
    }

    #clinic p.h_2 {
        font-size: 1.5rem;
    }

    #newmenu5 h2 {
        font-size: 1.7rem;
    }

    #subject .h_2 {
        font-size: 1.5rem;
    }

    #operation .h_2 {
        font-size: 1.5rem;
    }

    .btn_link_l_wimg figure {
        flex-basis: 120px;
        max-width: 120px;
    }

    .btn_link_l_wimg h3 {
        font-size: 1.5rem;
    }

    .btn_link_l_wimg p {
        font-size: 1.1rem;
    }

    #cnav li a {
        padding-top: 33px;
        background-size: 26px;
        font-size: 7.5px;
    }

    #sp_menu .gnav li a, #sp_menu .info li a {
        font-size: 1.2rem;
    }

    #sp_menu .contact li a {
        font-size: 0.9rem;
    }

    #treatment nav .img {
        top: -180px;
        right: -40px;
    }

    #treatment h2 {
        font-size: 2.1rem;
    }

    #treatment h3 {
        font-size: 1.1rem;
    }

    #treatment h3 span {
        font-size: 1.4rem;
    }

    #treatment h4 {
        font-size: 1.6rem;
    }

    #start h2 {
        font-size: 1.8rem;
    }

    #start li p {
        font-size: 1.1rem;
    }

    #contact h2 {
        font-size: 1.5rem;
    }

    #contact li a {
        font-size: 1rem;
    }

    #clinic h2 {
        font-size: 1.5rem;
    }

    #doctor h2 {
        font-size: 1.7rem;
    }

    #doctor li .caption {
        letter-spacing: -1px;
    }

    #worry h2 {
        font-size: 1.7rem;
    }

    #worry li a {
        font-size: 1.2rem;
    }

    #worry .btn_arrow1::before {
        bottom: 15px;
    }

    #worry .btn_arrow1::after {
        bottom: 22px;
    }

    #clinics h2 {
        font-size: 1.7rem;
    }

    #pickup h2 {
        font-size: 1.7rem;
    }

    #pickup li h3 {
        font-size: 1.5rem;
    }

    #column .ph {
        left: -40px;
    }

    #column h2 {
        font-size: 1.7rem;
    }

    #column li h3 {
        font-size: 1.4rem;
    }

    #column_bnr li figure {
        flex-basis: 120px;
        height: 80px;
    }

    #column_bnr li h3 {
        font-size: 1.3rem;
    }

    #info h2 {
        font-size: 1.7rem;
    }

    #info .box li p {
        font-size: 1rem;
    }

    #info .box li h3 {
        font-size: 1.3rem;
    }

    #info .bnr li figure {
        flex-basis: 120px;
        height: 80px;
    }

    #info .bnr li h3 {
        font-size: 1.3rem;
    }
}

@media only screen and (max-width: 1200px) and (min-width: 768px) {
    #beauty_info li h3 {
        font-size: 1.6rem;
    }

    #beauty_info li p {
        font-size: 1.3rem;
    }

    #pickup li h3 {
        font-size: 1.8rem;
    }

    #pickup li p {
        font-size: 1.2rem;
    }

    #clinic .sns {
        max-width: none;
    }

    #clinic .sns li {
        float: left;
        width: 2.9vw;
        min-width: 29px;
    }

    #clinic li {
        float: none;
        width: 100%;
        margin: 5px 0px;
    }

    #pickup li h3 {
        font-size: 1.8rem;
    }

    #pickup li p {
        font-size: 1.2rem;
    }

    #column li h3 {
        font-size: 1.6rem;
    }

    #column li p {
        font-size: 1.3rem;
    }
}

@media only screen and (min-width: 768px) {
    .accordion_h:hover {
        opacity: 0.7;
    }

    .sp {
        display: none !important;
    }

    #doctor .inner li {
        width: 25%;
    }

    .img_compressed {
        width: auto;
    }

    .img_compressed_60 {
        width: 60% !important;
    }

    .img_compressed_67 {
        width: 67% !important;
    }

    .img_compressed_70 {
        width: 70% !important;
    }

    .img_compressed_full {
        width: 100% !important;
    }

    .img_compressed_neutral {
        width: auto;
    }

    #column_contact {
        padding: 50px;
    }

    #column_utilities {
        padding: 30px 50px;
    }

    #doctor li {
        width: 20%;
    }

    #doctor li .caption {
        padding: 6px 5px 5px;
        font-size: 16px;
        font-family: "Noto Serif JP", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "ＭＳ Ｐ明朝", "MS PMincho", "serif";
        font-weight: 400;
    }

    #doctor li .caption .small {
        font-size: 14px;
        display: inline-block;
        margin-left: 5px;
    }

    #clinics .inner .time {
        font-size: 15px;
    }
}

@media only screen and (max-width: 320px) {
    .accordion_h {
        padding: 10px 20px 5px 5px;
    }

    .accordion_h label::before {
        left: 95%;
    }
}

@media only screen and (min-width: 375px) {
    .sp_s {
        display: none !important;
    }
}

@media only screen and (min-width: 768px) and (max-width: 1180px) {
    #mv {
        height: 38vw;
        min-height: 360px;
    }

    #mv img {
        left: 0px;
        max-width: 65%;
    }

    #mv .txt {
        left: 65%;
        width: 35%;
    }

    #mv h2 {
        font-size: 3.2rem;
    }

    #mv h3 {
        font-size: 1.8rem;
    }
}

@media only screen and (min-width: 414px) and (max-width: 767px) {
    #mv {
        height: 46vw;
        min-height: 0px;
    }

    #mv img {
        max-width: none;
        left: -5%;
        width: 55%;
    }

    #mv .txt {
        left: 50%;
        width: 50%;
    }

    #mv h2 {
        font-size: 2.2rem;
    }

    #mv h3 {
        font-size: 1.3rem;
    }
}

@media only screen and (min-width: 375px) and (max-width: 413px) {
    #mv {
        height: 46vw;
        min-height: 0px;
    }

    #mv img {
        max-width: none;
        left: -5%;
        width: 55%;
    }

    #mv .txt {
        left: 50%;
        width: 50%;
    }

    #mv h2 {
        font-size: 1.8rem;
    }

    #mv h3 {
        font-size: 1.2rem;
    }
}

@media only screen and (max-width: 424px) {
    header #sp_header div.sp_header_items_row2 ul li a {
        padding: 6px 2px;
    }
}

@media only screen and (min-width: 1280px) {
    #topslide .slide11 {
        background: url("../image/topslide_11.png") center center / auto 100% no-repeat, url("/top/img/topslide_11bg_2.jpg") center center / auto no-repeat;
    }
}

@media only screen and (min-width: 1600px) {
    #topslide .slide11 {
        background: url("../image/topslide_11.png") center center / auto 100% no-repeat, url("/top/img/topslide_11bg_3.jpg") center center / auto no-repeat;
    }
}

@media only screen and (max-width: 1280px) {
    #topslide .slide1 .slide1wrap .topslide_01cnt {
        top: 16px;
        margin-right: 116px;
        width: 30vw;
    }

    #topslide .slide1 .topslide_01cnt h1 {
        font-size: 3rem;
        margin: 0px 0px 20px;
        padding: 6px 10px 13px;
        width: 270px;
    }

    #topslide .slide1 .topslide_01cnt p {
        width: 270px;
    }

    #topslide .slide1 .topslide_01cnt .youtube img {
        width: 20vw;
    }

    #topslide .bnr {
        right: 40px;
        bottom: 38px;
    }
}

@media only screen and (max-width: 470px) {
    #topslide .bnr .btn_arrow1 {
        line-height: 1;
        font-size: 1.1rem;
    }
}

@media only screen and (max-width: 450px) {
    #treatment2 .shoureiphoto .shoureiphoto_tabmenu ul li span {
        height: 6vh;
        font-size: 1.2rem;
    }
}

@media only screen and (max-width: 400px) {
    #treatment2 .shoureiphoto .shoureiphoto_tabmenu ul li span {
        height: 7vh;
        font-size: 1.1rem;
    }
}

@media only screen and (max-width: 300px) {
    #treatment2 .shoureiphoto .shoureiphoto_tabmenu ul li span {
        height: 8vh;
        font-size: 1rem;
    }
}

@media print {
    .inner {
        width: 1000px;
    }

    .sp {
        display: none;
    }

    header nav {
        display: none;
    }
}

#home-blog {
    margin: 3% 0px;
}

#home-blog .inner {
    width: 100%;
    max-width: 920px;
    margin: 0px auto;
}

#home-blog .inner h2 {
    color: rgb(33, 139, 204);
    margin-bottom: 38px;
    padding: 0px 0px 16px;
    font-size: 24px;
    line-height: 1.5;
    letter-spacing: 0.06em;
    text-indent: 0.06em;
    text-align: center;
}

#home-blog .inner h2::after {
    display: block;
    content: "";
    width: 100px;
    height: 5px;
    background-color: rgb(33, 139, 204);
    margin: 1% auto;
}

#home-blog .inner .column_three {
    width: 100%;
    align-items: flex-start;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

.contents_inner .main_contents .column_three::after {
    content: "";
    display: block;
    width: 30%;
}

#home-blog .inner .column_three li {
    display: flex;
    flex-wrap: wrap;
    margin-bottom: 30px;
    width: 30%;
}

#home-blog .inner .column_three li > * {
    width: 100%;
    box-sizing: border-box;
}

#home-blog .inner .column_three li .column_img {
    margin-bottom: 10px;
    width: 100%;
}

#home-blog .inner .column_three li .column_img img {
    width: 100%;
}

#home-blog .inner .column_three li .column_text {
    margin-bottom: 14px;
    font-size: 16px;
    line-height: 26px;
    font-weight: 700;
    letter-spacing: 0.1em;
}

#home-blog .inner .column_three li .column_data {
    margin: auto 0px 16px;
    font-size: 14px;
    line-height: 1;
    font-weight: 500;
}

#home-blog .inner .column_three li .column_text a:hover, #home-blog .inner .column_three li .column_data a:hover {
    text-decoration: underline;
}

#home-blog .inner .column_three li .column_tag {
    width: 100%;
}

#home-blog .inner .column_three li .column_tag li {
    display: table;
    margin-bottom: 0px;
    width: auto;
    line-height: 1;
    border: 1px solid rgb(33, 139, 204);
}

#home-blog .inner .column_three li .column_tag li a {
    display: block;
    padding: 4px 11px;
    color: rgb(33, 139, 204);
    font-size: 12px;
    font-weight: 500;
}

#home-blog .inner .column_three li .column_tag li a:hover {
    color: rgb(255, 255, 255);
    background-color: rgb(33, 139, 204);
}

#home-blog .inner .column_three li .column_tag li + li {
    margin-top: 5px;
}

footer .box p.copy {
}

footer .box p.copy a {
    display: inline-block;
    margin-right: 10px;
    vertical-align: middle;
}

footer .box p.copy img {
    width: 30px;
}

@media only screen and (max-width: 767px) {
    #home-blog .inner .column_three {
        padding: 0px 3.623vw;
        box-sizing: border-box;
    }

    #home-blog .inner .column_three::after {
        content: none;
        display: flex;
        width: 46.4%;
    }

    #home-blog .inner .column_three li {
        margin-bottom: 14.492vw;
        width: 46.4%;
    }

    #home-blog .inner .column_three li .column_img {
        margin-bottom: 2.415vw;
    }

    #home-blog .inner .column_three li .column_text {
        margin-bottom: 3vw;
        font-size: 3.623vw;
        line-height: 5.314vw;
    }

    #home-blog .inner .column_three li .column_data {
        margin: auto 0px 3vw;
        font-size: 3.14vw;
    }

    #home-blog .inner .column_three li .column_tag li {
        width: auto;
        color: rgb(173, 158, 95);
    }

    #home-blog .inner .column_three li .column_tag li a {
        display: block;
        padding: 1.6vw 4vw;
        font-size: 3.3vw;
        line-height: 1.3;
    }

    #home-blog .inner .column_three li .column_tag li + li {
        margin-top: 2vw;
    }

    .contents_inner .main_contents .column_three + .contents_tit {
        margin-top: 15.7vw;
    }

    #mv3 {
        padding-bottom: 10% !important;
    }

    .btntop {
        bottom: 20px;
        position: fixed;
        right: 20px;
        z-index: 990;
    }

    .flogo,footer .box p{
        text-align: center;
    }

}
