* {
font-family: "Noto Sans SC", serif !important;
}

@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: 0;
    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: -webkit-transform;
    transition-property: transform;
    transition-property: transform, -webkit-transform;
    box-sizing: content-box
}

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

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

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

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

.swiper-slide {
    flex-shrink: 0;
    width: 100%;
    height: 100%;
    position: relative;
    transition-property: -webkit-transform;
    transition-property: transform;
    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: height, -webkit-transform;
    transition-property: transform, height;
    transition-property: transform, height, -webkit-transform
}

.swiper-container-3d {
    -webkit-perspective: 1200px;
    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 {
    -webkit-transform-style: preserve-3d;
    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: 0;
    top: 0;
    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(to bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0))
}

.swiper-container-css-mode>.swiper-wrapper {
    overflow: auto;
    scrollbar-width: none;
    -ms-overflow-style: none
}

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

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

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

.swiper-container-vertical.swiper-container-css-mode>.swiper-wrapper {
    -ms-scroll-snap-type: y mandatory;
    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: .35;
    cursor: auto;
    pointer-events: none
}

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

.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: 300ms opacity;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
    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: 0;
    width: 100%
}

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

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

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

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

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

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

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

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

.swiper-pagination-bullet {
    width: 8px;
    height: 8px;
    display: inline-block;
    border-radius: 100%;
    background: #000;
    opacity: .2
}

button.swiper-pagination-bullet {
    border: none;
    margin: 0;
    padding: 0;
    box-shadow: none;
    -webkit-appearance: none;
    -moz-appearance: 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%;
    -webkit-transform: translate3d(0px, -50%, 0);
    transform: translate3d(0px, -50%, 0)
}

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

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

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

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

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

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

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

.swiper-pagination-progressbar {
    background: rgba(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: 0;
    top: 0;
    width: 100%;
    height: 100%;
    -webkit-transform: scale(0);
    transform: scale(0);
    -webkit-transform-origin: left top;
    transform-origin: left top
}

.swiper-container-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
    -webkit-transform-origin: right top;
    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: 0;
    top: 0
}

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

.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;
    -ms-touch-action: none;
    background: rgba(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, .5);
    border-radius: 10px;
    left: 0;
    top: 0
}

.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%;
    -o-object-fit: contain;
    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;
    -webkit-transform-origin: 50%;
    transform-origin: 50%;
    -webkit-animation: swiper-preloader-spin 1s infinite linear;
    animation: swiper-preloader-spin 1s infinite linear;
    box-sizing: border-box;
    border: 4px solid var(--swiper-preloader-color, var(--swiper-theme-color));
    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% {
        -webkit-transform: rotate(360deg);
        transform: rotate(360deg)
    }
}

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

.swiper-container .swiper-notification {
    position: absolute;
    left: 0;
    top: 0;
    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;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    z-index: 1;
    visibility: hidden;
    -webkit-transform-origin: 0 0;
    transform-origin: 0 0;
    width: 100%;
    height: 100%
}

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

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

.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;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden
}

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

.swiper-container-flip {
    overflow: visible
}

.swiper-container-flip .swiper-slide {
    pointer-events: none;
    -webkit-backface-visibility: hidden;
    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;
    -webkit-backface-visibility: hidden;
    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: 0;
    padding: 0;
    border: 0;
    font-size: 100%;
    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: "";
    content: none
}

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

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

a:link,
a:visited,
a:active,
a:hover {
    outline: none;
    color: #444;
    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 Sans SC", serif !important;
    font-size: 1.6rem;
    -webkit-font-feature-settings: "palt";
    font-feature-settings: "palt";
    line-height: 1.8;
    color: #444;
    -webkit-text-size-adjust: none;
    -webkit-font-smoothing: antialiased
}

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

.sans {
    font-family: "Noto Sans SC", serif !important;
}

.self {
    font-family: "Noto Sans SC", serif !important;
    font-weight: 400
}

.self_m {
    font-family: "Noto Sans SC", serif !important;
    font-weight: 500
}

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

.btn_arrow0::before {
    display: block;
    position: absolute;
    width: 16px;
    height: 16px;
    background: #4694D1;
    border-radius: 50px;
    content: ""
}

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

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

.tagline {
    padding: 5px 10px;
    font-size: 1.1rem;
    color: #999
}

#mv {
    height: 450px;
    border-bottom: solid 1px #dcdcdc;
    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: 0;
    width: 560px
}

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

#mv h2 {
    text-align: left;
    font-size: 4rem;
    color: #4694D1;
    letter-spacing: .05em;
    transition-delay: .5s
}

#mv h3 {
    margin-top: .5em;
    text-align: left;
    font-size: 2.2rem;
    letter-spacing: .05em;
    line-height: 1.5;
    transition-delay: .9s
}

#mnav ul {
    display: flex
}

#mnav li {
    width: 50%
}

#mnav li:nth-child(odd) {
    border-right: solid 1px #fff
}

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

#mnav li a {
    box-sizing: border-box;
    display: flex;
    background: #fff;
    border-bottom: solid 3px #b02b5a;
    transition: all .2s ease-out
}

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

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

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

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

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

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

#mnav h2 {
    font-size: 2rem;
    color: #b02b5a
}

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

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

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

#reason .box>div {
    border: solid 1px #4694D1;
    padding: 30px;
    text-align: center
}

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

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

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

.line {
    border: 0 !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 0 5px !important
}

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

.lang_cn .txt {
    margin: auto 0
}

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


#column {
    padding: 0 50px;
}

#column .inner {
    max-width: 1000px;
    margin: 0 auto;
    padding: 3% 0;
    position: relative;
}

#column .pic {
    width: 40%;
    position: absolute;
    left: 0;
    top: 16%;
}

#column .pic>img {}

#column .con {
    width: 50%;
    margin-left: 50%;
}

#column .con h2 {

    color: #509cd3;

    font-size: 20px;
}

#column .con .nav {

    display: flex;

    margin-top: 2%;
}

#column .con .nav>li {
    padding: 1% 1%;
    border-right: 1px solid #509cd3;
    background: #fff;
    width: calc(100% / 2);
    text-align: center;
    cursor: pointer;
}

#column .con .nav>li.cur,#column .con .nav>li:hover {
    background: #509cd3;
    color: #fff;
}

#column .con .nav>li:last-child {
    border-right: none;
}

#column .con .info {
    background: #fff;
    padding: 5%;
    border-top: 1px solid #509cd3;
    min-height: 320px;
}

#column .con .txt {}

#column .con .txt table,
#column .con .txt table tbody {
    width: 100%;
    display: block;
}

#column .con .txt table tr {
    width: 100%;
    display: flex;
    font-size: 14px;
}

#column .con .txt table tr th {
    width: 120px;
    display: block;
}

#column .con .txt table tr td {
    width: calc(100% - 120px);
}

#column .con .txt table tr a {
    display: block;
    width: 100%;
    background: none;
    word-break: break-all;
}

#column .con .txt p {
    font-size: 14px;
}

.news_attention {
    font-size: 1.1rem
}

.picup_height {
    height: 97px !important
}

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

header {
    box-sizing: border-box;
    width: 100%;
    background: #fff;
    z-index: 1000;
    padding: 10px 0 0;
}

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

header .header_items_row1 .header_item:nth-child(2) {
    margin-right: -4%;
}

header .header_items_row1 .header_item h1 {
    font-size: 1.2rem;
    color: #999;
    white-space: nowrap
}

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

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: 0 .5rem 0 0;
    white-space: nowrap
}

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

header .header_items_row1 .header_item nav#cnav1 ul li a.cn {
    position: relative;
    padding: 0 .6rem 0 40px;
    border-left: 1px solid #e1e1e1;
    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") no-repeat;
    background-size: 100%;
    content: "";
    margin: 0;
    top: 1.3px;
    left: 16.5px
}

header .header_items_row1 .header_item nav#cnav1 ul li a.en {
    position: relative;
    padding: 0 .6rem 0 40px;
    border-left: 1px solid #e1e1e1;
    background: transparent
}

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

header .header_items_row1 .header_item nav#cnav1 ul li a:hover {
    color: #b5ac6e
}

header .header_items_row1 .header_item nav#cnav2 ul {
    list-style-type: none;
    display: flex;
    font-size: 1.4rem;
    font-family: "Noto Sans SC", serif !important;
    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: #333;
    border-right: 1px solid #e1e1e1;
    padding: 0 30px;
    transition: color .15s ease-out;
}

header .header_items_row1 .header_item nav#cnav2 ul li a:before {
    display: block;
    width: 29.58px;
    height: 28.35px;
    content: "";
    margin: 0 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") no-repeat;
    background-size: 100%;
    content: "";
    margin: 0 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") no-repeat;
    background-size: 100%;
    content: "";
    margin: 0 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") no-repeat;
    background-size: 100%;
    content: "";
    margin: 0 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") no-repeat;
    background-size: 100%;
    content: "";
    margin: 0 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") no-repeat;
    background-size: 100%;
    content: "";
    margin: 0 auto 3px
}

header .header_items_row1 .header_item nav#cnav2 ul li a:hover {
    color: #b5ac6e
}

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

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: #4694D1
}

header .header_items_row1 .header_item .freedial strong {
    line-height: 1;
    font-size: 2.5rem;
    color: #4694D1
}

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: .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: 0 auto;
    background: #DEF2FF;
    position: static;
    z-index: 9999;
    transition: .5s;
    min-width: 1070px
}

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

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

header .header_items_row2 .hmenus {
    width: 100%;
    max-width: 1070px;
    margin: 0 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: 0 .5rem 0 0
}

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

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

header .header_items_row2 .hmenus ul li a:hover {
    background-color: #fff
}

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

/*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") no-repeat;
    background-size: 100%;
    content: "";
    margin: auto;
    top: 0;
    bottom: 0;
    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") no-repeat;
    background-size: 100%;
    content: "";
    margin: auto;
    top: 0;
    bottom: 0;
    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") no-repeat;
    background-size: 100%;
    content: "";
    margin: auto;
    top: 0;
    bottom: 0;
    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") no-repeat;
    background-size: 100%;
    content: "";
    margin: auto;
    top: 0;
    bottom: 0;
    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") no-repeat;
    background-size: 100%;
    content: "";
    margin: auto;
    top: 0;
    bottom: 0;
    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") no-repeat;
    background-size: 100%;
    content: "";
    margin: auto;
    top: 0;
    bottom: 0;
    left: 10.5px
}*/

header .googlesearch {
    margin: 0;
    border-radius: 30px;
    background: #e1e1e1;
    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_search.svg) no-repeat center;
    background-size: 80%;
    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: 0
}

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

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

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

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

header .googlesearch .gsib_a {
    padding: 0
}

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

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

header .googlesearch .gsst_a .gscb_a {
    color: #999;
    vertical-align: middle
}

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

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

header .googlesearch_sp .gsc-search-button-v2 {
    padding: 9px;
    line-height: 0;
    border: 1px solid #4694D1;
    border-radius: 3px
}

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

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

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

header .googlesearch_sp .gsst_a .gscb_a {
    color: #999;
    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: 0;
    left: 0;
    overflow: auto;
    z-index: 10000
}

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

#sp_menu .inner {
    position: absolute;
    top: 0;
    right: 0;
    width: 84.5%;
    height: 100%;
    max-height: 100%;
    background: #fff;
    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: 0 0 0 8px;
    border-left: solid 4px #4694D1;
    font-size: 1.8rem
}

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

#sp_menu .subject .list>li {
    padding: 0;
    flex-basis: 25%;
    border-top: solid 1px #dcdcdc
}

#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 0;
    margin: 0;
    transition: color .15s ease-out
}

#sp_menu .subject .list h3:hover {
    color: #4694D1
}

#sp_menu .subject .list h3::before,
#sp_menu .subject .list h3::after {
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    margin: auto;
    background: #4694D1;
    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 .15s ease-out
}

#sp_menu .subject .list li a:hover {
    color: #4694D1
}

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

#sp_menu .subject .list li ul li {
    margin: 0;
    padding: 0;
    border-top: solid 1px #dcdcdc
}

#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: 0;
    top: 0;
    bottom: 0;
    margin: auto;
    width: 13px;
    height: 13px;
    background: #4694D1;
    border-radius: 50px;
    content: ""
}

#sp_menu .subject .list li ul li a::after {
    display: block;
    position: absolute;
    left: 4px;
    top: 0;
    bottom: 0;
    margin: auto;
    width: 3px;
    height: 3px;
    border-top: solid 1px #fff;
    border-right: solid 1px #fff;
    -webkit-transform: rotate(45deg);
    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: 0 0 0 8px;
    border-left: solid 4px #4694D1;
    font-size: 1.8rem;
    margin-bottom: 20px
}

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

#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(odd) {
    padding-right: 1px
}

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

#sp_menu .gnav li a {
    display: flex;
    align-items: center;
    height: 100%;
    background: #edece9;
    padding: 10px 30px 10px 10px;
    line-height: 1.4;
    transition: all .15s ease-out;
    width: 100%;
    box-sizing: border-box
}

#sp_menu .gnav li a:hover {
    background: #f2f2f0;
    color: #4694D1
}

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

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

#sp_menu .customer {
    margin: 20px 0
}

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

#sp_menu .customer li:nth-child(odd) {
    padding-right: 6px
}

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

#sp_menu .customer a {
    box-sizing: border-box;
    display: block;
    padding: 4px 0;
    border: solid 1px #4694D1;
    border-radius: 3px;
    color: #4694D1;
    font-size: 1.2rem;
    text-align: center;
    transition: all .15s ease-out;
    position: relative
}

#sp_menu .customer a:hover {
    background: #4694D1;
    color: #fff
}

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

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

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

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

#sp_menu .info {
    display: flex;
    flex-wrap: wrap;
    margin: 20px -25px;
    border-bottom: solid 1px #dcdcdc
}

#sp_menu .info li {
    box-sizing: border-box;
    width: 50%;
    max-width: 50%;
    border-top: solid 1px #dcdcdc
}

#sp_menu .info li:nth-child(odd) {
    border-right: solid 1px #dcdcdc
}

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

#sp_menu .info li a:hover {
    color: #4694D1
}

#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: no-repeat 10px center/25px
}

#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: no-repeat center top/42px auto;
    transition: color .15s ease-out
}

#sp_menu .contact li a:hover {
    color: #4694D1
}

#sp_menu .contact li a::after {
    position: absolute;
    left: 0;
    top: 35px;
    width: 1px;
    height: 25px;
    background: #dcdcdc;
    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: 0 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: #333;
    border-bottom: 1px solid #e1e1e1;
    padding: 10px 5px;
    box-sizing: border-box;
    transition: color .15s ease-out
}

#sp_menu .contact2 li a img{
    width: 30px;
    margin-right: 10px;
}

#sp_menu .contact2 li div.line_reserve {
    width: 100%;
    display: block;
    color: #333;
    border-bottom: 1px solid #e1e1e1;
    padding: 10px 5px;
    box-sizing: border-box;
    transition: color .15s ease-out
}

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

#sp_menu .contact2 li a:hover {
    color: #b5ac6e
}

#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: #4694D1
}

#sp_menu .freedial strong {
    line-height: 1;
    font-size: 2.7rem;
    color: #4694D1;
    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 0;
    border: solid 1px #4694D1;
    border-radius: 3px;
    color: #333;
    font-size: 1.2rem;
    text-align: center;
    transition: all .15s ease-out
}

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

#sp_menu .freedial .callphone a:hover {
    background: #4694D1;
    color: #fff
}

#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 0
}

#sp_menu .lang li a {
    display: block;
    padding: 3px;
    border: solid 1px #c0b581;
    border-radius: 3px;
    vertical-align: middle;
    line-height: 1;
    color: #4694D1;
    transition: all .15s ease-out
}

#sp_menu .lang li a:hover {
    background: #4694D1;
    color: #fff
}

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

#sp_menu .lang li a.en::before {
    display: inline-block;
    width: 26px;
    height: 26px;
    background: url("../image/icon_flag_en.svg") no-repeat center center/contain;
    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: 0 0 0 45px;
    width: auto;
    min-width: 0;
    color: #4694D1;
    font-size: 1.1rem;
    transition: opacity .15s ease-out
}

#sp_menu .btn_close:hover {
    background: none;
    color: #4694D1 !important;
    opacity: .6
}

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

.menupanel .menupanelitem {
    width: 100%;
    margin: 0 auto;
    background-color: #f4f4f4;
    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: 0;
    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: 0 0 7%;
    transition: background-color .15s ease-out;
    white-space: nowrap;
    box-sizing: border-box;
    font-size: 1.3rem;
    text-align: center;
    border-radius: 3px;
    background: #fff;
    height: 11vh;
    width: 100vw;
    vertical-align: bottom
}

.menupanel .menupanelitem ul li a:hover {
    background-color: #fff
}

.menupanel .menupanelitem ul li a:before {
    display: block;
    position: absolute;
    content: "";
    margin: auto;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    height: -webkit-fit-content;
    height: -moz-fit-content;
    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: #b02b5a8a
}

.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: 0 5px
}

#topslide .swiper-pagination-bullet {
    width: 14px;
    height: 14px;
    display: inline-block;
    border-radius: 50%;
    background: #fff;
    opacity: 1;
    border: 1px solid #9b9fa4
}

#topslide .swiper-pagination-bullet-active {
    background: #9b9fa4;
    border: 1px solid #fff
}

#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: 0;
    bottom: 0;
    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: 0 0 0 auto;
    display: block
}

.swiper-slide {
    width: 200px
}

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

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

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

#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,
#topslide .slide59 .slide59wrap,
#topslide .slide59a .slide59awrap,
#topslide .slide60 .slide60wrap,
#topslide .slide60a .slide60awrap,
#topslide .slide61 .slide61wrap,
#topslide .slide61a .slide61awrap,
#topslide .slide62 .slide62wrap,
#topslide .slide62a .slide62awrap,
#topslide .slide63 .slide63wrap,
#topslide .slide64 .slide64wrap,
#topslide .slide65 .slide65wrap,
#topslide .slide65a .slide65awrap,
#topslide .slide66 .slide66wrap,
#topslide .slide66a .slide66awrap,
#topslide .slide67 .slide67wrap,
#topslide .slide68 .slide68wrap,
#topslide .slide68a .slide68awrap,
#topslide .slide69 .slide69wrap,
#topslide .slide70 .slide70wrap,
#topslide .slide70a .slide70awrap,
#topslide .slide71 .slide71wrap,
#topslide .slide72 .slide72wrap,
#topslide .slide73 .slide73wrap,
#topslide .slide74 .slide74wrap,
#topslide .slide76 .slide76wrap,
#topslide .slide77 .slide77wrap,
#topslide .slide77a .slide77awrap,
#topslide .slide78 .slide78wrap,
#topslide .slide78a .slide78awrap {
    max-width: 1280px;
    margin: auto;
    position: relative;
    line-height: initial
}*/

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

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

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

#topslide .slide1 .topslide_01cnt h1 {
    background: #59bc9a;
    font-size: 4rem;
    text-align: center;
    margin: 0 0 20px 0;
    color: #e5e5e3;
    padding: 6px 10px 13px;
    width: 370px
}

#topslide .slide1 .topslide_01cnt p {
    font-size: 1.9rem;
    color: #333;
    margin-bottom: 30px
}

#topslide .slide1 .topslide_01cnt .youtube {
    display: block;
    margin: 0 auto;
    width: auto;
    padding: 0 0 0 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: solid 1px #4694D1;
    border-radius: 4px;
    line-height: 1.3;
    font-size: 1.8rem;
    color: #4694D1;
    text-shadow: none;
    transition: all .15s ease-out;
    background: #fff;
    position: relative
}

#topslide .bnr .btn_arrow1::before {
    display: block;
    position: absolute;
    width: 17px;
    height: 17px;
    border: solid 1px #4694D1;
    border-radius: 50px;
    content: "";
    top: 0;
    bottom: 0;
    right: 10px;
    margin: auto
}

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



#topslide .swiper1-container,
#topslide .swiper2-container {
    transition: opacity .6s ease
}

#topslide .swiper2-container {
    position: relative
}

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

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

#pickup2 h2 {
    font-size: 2.6rem;
    color: #4694D1;
    text-align: center;
    margin-bottom: 20px;
    padding: 0 50px
}

#pickup2 h2 span {
    color: #b02b5a
}

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

#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: 0;
    bottom: 0;
    margin: auto;
    width: auto
}

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

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

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

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

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

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

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

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

#pickup2 li:nth-child(odd) {
    clear: both
}

#pickup2 li a {
    display: flex;
    align-items: center;
    height: 100%;
    background: #fff;
    overflow: hidden;
    border: solid 1px #d2cba5;
    border-radius: 4px;
    transition: all .2s ease-out
}

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

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

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

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

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

#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: #4694D1
}

#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: 0 auto 35px
}

#pickup2 .bnr a {
    display: block;
    background: #b02b5a;
    max-width: 200px;
    margin: auto;
    padding: 20px;
    border-radius: 4px;
    transition: all .2s ease-out
}

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

#pickup2 .bnr h4 {
    padding: 0;
    line-height: 1;
    font-size: 1.7rem;
    color: #fff;
    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: #fff;
    top: 0;
    bottom: 0;
    right: 10px;
    width: 18px;
    height: 18px;
    margin: auto
}

#pickup2 .bnr .btn_arrow0::after {
    top: 0;
    bottom: 0;
    right: 17px;
    margin: auto;
    width: 4px;
    height: 4px;
    border-top: solid 1px #db598c;
    border-right: solid 1px #db598c
}

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

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

#worry2 h2 {
    padding: 0 0 30px 0;
    font-size: 2.6rem;
    color: #333
}

#worry2 h2 span {
    color: #b02b5a
}

#worry2 .wy_tabmenu {
    border: 1px solid #fff;
    border-radius: 9px;
    max-width: 600px;
    margin: 0 auto;
    width: 100%;
    background: #fff
}

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

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

#worry2 .wy_tabmenu ul li span {
    display: block;
    padding: 10px;
    text-align: center;
    border-radius: 5px;
    background: #fff;
    color: #000;
    transition: background-color .5s
}

#worry2 .wy_tabmenu ul li span:hover {
    cursor: pointer;
    background: #eee
}

#worry2 .wy_tabmenu ul li span.wy_tabmenu_active {
    background: #dc5b8c;
    color: #fff
}

#worry2 .wy_tabmenu ul li span.wy_tabmenu_active:hover {
    color: #444;
    background: #eee
}

#worry2 .wy_figures {
    text-align: center;
    padding: 0
}

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

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

#worry2 .wy_figures figure a {
    color: #333;
    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: #b02b5a;
    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*/
    max-width: 800px;
    margin-top: 8%;
}

#worry2 .wy_figures figure#wy_tabmenu2fig img{
    transition: transform 0.3s ease; /* 添加平滑过渡效果 */
}

#worry2 .wy_figures figure#wy_tabmenu2fig img:hover {
    transform: scale(1.1); /* 放大 1.1 倍 */
}

#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: 30px auto;
    padding: 0
}

#worry2 .wy_aging ul {
    display: flex
}

#worry2 .wy_aging ul li {
    width: 24%;
    padding: 10px
}

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

#worry2 .wy_btnline {
    padding: 0 0 60px
}

#worry2 .wy_btnline a {
    background: #dc5b8c;
    max-width: 300px;
    margin: 0 auto;
    padding: 12px;
    border-radius: 4px;
    transition: all .2s ease-out;
    display: block;
    color: #fff;
    position: relative;
    box-sizing: border-box
}

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

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

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

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

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

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

#treatment2 h2 {
    position: relative;
    margin: 25px auto 0;
    font-size: 3rem;
    color: #dc5a8c;
    z-index: 1
}

#treatment2 h3 {
    position: relative;
    display: inline-block;
    background-color: #db598c;
    border-radius: 50px;
    padding: 9px 20px 10px 20px;
    font-size: 1.6rem;
    color: #fff;
    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: 0 0 20px 0;
    margin: 0 3px
}

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

#treatment2 nav>div>div {
    height: 100%;
    background: #fff no-repeat center top/100% auto;
    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: 0 0 3px #fff, 0 0 5px #fff, 0 0 5px #fff, 0 0 10px #fff, 0 0 10px #fff
}

#treatment2 nav ul {
    padding: 10px
}

#treatment2 nav li {
    border-top: solid 1px #f4f4f4
}

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

#treatment2 nav a {
    display: block;
    padding: 8px 20px 8px 0;
    font-size: 1.4rem;
    text-shadow: 0 0 3px #fff, 0 0 5px #fff, 0 0 5px #fff, 0 0 10px #fff, 0 0 10px #fff;
    transition: color .15s ease-out
}

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

#treatment2 nav a:hover {
    color: #dc5a8c
}

#treatment2 .btn_arrow1::before {
    display: block;
    position: absolute;
    width: 13px;
    height: 13px;
    border: solid 1px #4694D1;
    border-radius: 50px;
    content: "";
    right: 0;
    top: 0;
    bottom: 0;
    margin: auto
}

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

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

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

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

#treatment2 nav .btn_more {
    box-sizing: border-box;
    display: inline-block;
    padding: 7px 20px;
    width: 100%;
    border: solid 1px #4694D1;
    border-radius: 4px;
    line-height: 1.3;
    font-size: 1.3rem;
    color: #4694D1;
    text-shadow: none;
    transition: all .15s ease-out
}

#treatment2 nav .btn_more:hover {
    background: #dc5a8c;
    color: #fff !important
}

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

#treatment2 .bnr a {
    display: block;
    background: #b02b5a;
    max-width: 200px;
    margin: auto;
    padding: 20px;
    border-radius: 4px;
    transition: all .2s ease-out
}

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

#treatment2 .bnr h4 {
    padding: 0;
    line-height: 1;
    font-size: 1.7rem;
    color: #fff;
    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: #fff;
    top: 0;
    bottom: 0;
    right: 10px;
    width: 18px;
    height: 18px;
    margin: auto
}

#treatment2 .bnr .btn_arrow0::after {
    top: 0;
    bottom: 0;
    right: 17px;
    margin: auto;
    width: 4px;
    height: 4px;
    border-top: solid 1px #db598c;
    border-right: solid 1px #db598c
}

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

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

#treatment2 .shoureiphoto h2 {
    font-size: 2.6rem;
    color: #333;
    text-align: center;
    padding: 0 0 30px 0
}

#treatment2 .shoureiphoto .shoureiphoto_tabmenu {
    border: 1px solid #4694D1;
    border-radius: 9px;
    max-width: 600px;
    margin: 0 auto 30px;
    width: 100%;
    background: #fff
}

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

#treatment2 .shoureiphoto .shoureiphoto_tabmenu ul li {
    padding: 5px;
    border-left: 1px solid #4694D1;
    flex: 1
}

#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: #fff;
    color: #b5ac6e;
    transition: background-color .5s
}

#treatment2 .shoureiphoto .shoureiphoto_tabmenu ul li span:hover {
    cursor: pointer;
    background: #eee
}

#treatment2 .shoureiphoto .shoureiphoto_tabmenu ul li span.shoureiphoto_tabmenu_active {
    background: #b5ac6e;
    color: #fff
}

#treatment2 .shoureiphoto .shoureiphoto_tabmenu ul li span.shoureiphoto_tabmenu_active:hover {
    color: #b5ac6e;
    background: #eee
}

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

#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: #fff
}

#treatment2 .shoureiphoto .shoureiphoto_tabcnts .shoureiphoto_tabcnts_panel {
    width: 300px !important;
    background: #edece8;
    border-top-right-radius: 12px;
    border-top-left-radius: 12px;
    border-bottom-right-radius: 12px;
    border-bottom-left-radius: 12px;
    padding: 0;
    box-sizing: border-box;
    height: auto
}

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

#treatment2 .shoureiphoto .shoureiphoto_tabcnts .shoureiphoto_tabcnts_panel .set_combi {
    background: #fff;
    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: #eee
}

#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: .9rem;
    display: inline
}

#treatment2 .shoureiphoto .shoureiphoto_tabcnts .shoureiphoto_tabcnts_panel h3 {
    position: static;
    background: #fff;
    box-sizing: border-box;
    color: #b02b5a;
    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: #fff;
    font-size: 1.4rem;
    display: block;
    margin: 0;
    padding: 0 20px
}

#treatment2 .shoureiphoto .shoureiphoto_tabcnts .shoureiphoto_tabcnts_panel .shourei_price {
    background: #fff;
    display: block;
    padding: 0 20px
}

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

#treatment2 .shoureiphoto .shoureiphoto_tabcnts .shoureiphoto_tabcnts_panel .shourei_price .shourei_price_ex {
    display: block;
    width: 100%;
    text-align: left;
    margin: 0;
    padding: 0;
    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: 0;
    padding: 0;
    font-size: 1.4rem
}

#treatment2 .shoureiphoto .shoureiphoto_tabcnts .shoureiphoto_tabcnts_panel .shourei_risk .shourei_risk_ex {
    display: block;
    width: 100%;
    text-align: left;
    margin: 0;
    padding: 0;
    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: #b02b5a
}

#treatment2 .shoureiphoto .shoureiphoto_tabcnts .shoureiphoto_tabcnts_panel .btns {
    background: #fff;
    margin: 0 auto;
    padding: 15px 0;
    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: #4694D1;
    margin: 0 auto
}

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

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

#treatment2 .shoureiphoto .shoureiphoto_tabcnts .shoureiphoto_tabcnts_panel .btns:hover .btn_arrow1::before {
    border: solid 1px #fff;
    content: ""
}

#treatment2 .shoureiphoto .shoureiphoto_tabcnts .shoureiphoto_tabcnts_panel .btns:hover .btn_arrow1::after {
    border-top: solid 1px #fff;
    border-right: solid 1px #fff;
    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: #b02b5a
}

#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: 0;
    right: 0;
    bottom: 10px
}

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

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

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

#mv2 h2 span {
    font-size: 3rem;
    color: #b02b5a
}

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

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

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

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

#mv2 .bnr a {
    display: block;
    background: #fff;
    border: 1px solid #4694D1;
    max-width: 100%;
    box-sizing: border-box;
    margin: auto;
    padding: 20px;
    border-radius: 4px;
    transition: all .2s ease-out
}

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

#mv2 .bnr h4 {
    padding: 0;
    line-height: 1;
    font-size: 1.8rem;
    color: #4694D1;
    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 #4694D1
}

#mv2 .bnr .btn_arrow0::before {
    background-color: #fff;
    border: 1px solid #4694D1;
    top: 0;
    bottom: 0;
    right: 11px;
    width: 18px;
    height: 18px;
    margin: auto
}

#mv2 .bnr .btn_arrow0::after {
    top: 0;
    bottom: 0;
    right: 19px;
    margin: auto;
    width: 4px;
    height: 4px;
    border-top: solid 1px #4694D1;
    border-right: solid 1px #4694D1
}

#mv3 {
    background-color: #efa7a8;
    overflow: hidden;
    margin: 0 !important;
    padding: 0
}

#mv3 h2 {
    font-size: 3rem;
    color: #4694D1;
    text-align: center;
    padding: 30px 0;
    position: relative
}

#mv3 h2::before {
    content: "";
    /* background: url("../image/top_mv3_icon_pc.png") center top no-repeat; */
    background-size: 100px 100px;
    position: absolute;
    top: 0;
    bottom: 0;
    right: 10%;
    width: 100px;
    height: 100px;
    margin: auto
}

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

#mv3 h3 {
    margin: 0 auto 30px;
    font-size: 2.6rem;
    color: #333;
    text-align: center;
}

#mv3 h3 span {
    font-size: 2.6rem;
    color: #b02b5a
}

#mv3 .takasu_message {
    box-sizing: border-box;
    max-width: 920px;
    background: #fff;
    border-radius: 10px;
    padding: 30px 40px 40px;
    margin: 0 20px 50px;
    font-size: 1.5rem;
    border: 2px dotted #4694D1;
}

#mv3 .takasu_message p {
    margin-bottom: 1em;
    padding: 0 60px
}

#mv3 .bnr {
    margin: 30px auto auto auto
}

#mv3 .bnr a {
    display: block;
    background: #4694D1;
    border: 1px solid #4694D1;
    max-width: 380px;
    box-sizing: border-box;
    margin: auto;
    padding: 10px;
    border-radius: 4px;
    transition: all .2s ease-out
}

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

#mv3 .bnr h4 {
    padding: 0;
    line-height: 1;
    font-size: 1.8rem;
    color: #fff;
    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 #4694D1;
    max-width: 200px;
}

#mv3 .bnr .btn_arrow0::before {
    background-color: #fff;
    border: 1px solid #4694D1;
    top: 0;
    bottom: 0;
    right: 11px;
    width: 18px;
    height: 18px;
    margin: auto
}

#mv3 .bnr .btn_arrow0::after {
    top: 0;
    bottom: 0;
    right: 19px;
    margin: auto;
    width: 4px;
    height: 4px;
    border-top: solid 1px #4694D1;
    border-right: solid 1px #4694D1;
}

#toppage #info {
    padding: 60px 0
}

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

.modal_inner {
    position: absolute;
    top: 50%;
    left: 50%;
    width: auto;
    -webkit-transform: translate(-50%, -50%);
    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 auto
}

.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 .2s ease-out
}

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

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

.ftc_red {
    color: #b02b5a
}

header .header_items_row1 .header_item p.h_1 {
    font-size: 1.2rem;
    color: #999;
    white-space: nowrap
}

header .header_items_row1 .header_item p.h_2 img {
    vertical-align: baseline;
    max-width: 300px;
}

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: #4694D1
}

#contact p.h_2 {
    float: left;
    font-size: 2rem;
    color: #4694D1
}

#contact p.h_3 {
    margin-top: 30px;
    font-size: 1.4rem;
    color: #4694D1
}

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

#clinic p.h_2 {
    font-size: 2rem;
    color: #4694D1
}

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

#supervision p.h_2 {
    font-size: 1.8rem;
    color: #4694D1;
    margin-top: 0
}

#sp_menu .subject p.h_2 {
    box-sizing: border-box;
    float: none;
    width: auto;
    height: auto;
    padding: 0 0 0 8px;
    border-left: solid 4px #4694D1;
    font-size: 1.8rem
}

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

#sp_menu .subject .list p.h_3:hover {
    color: #4694D1
}

#sp_menu .subject .list p.h_3::before,
#sp_menu .subject .list p.h_3::after {
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    margin: auto;
    background: #4694D1;
    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: 0 0 0 8px;
    border-left: solid 4px #4694D1;
    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: #4694D1
}

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

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

#newmenu5 h2 {
    font-size: 2.6rem;
    color: #4694D1;
    text-align: center;
    margin-bottom: 20px;
    padding: 0 50px
}

#newmenu5 h2 span {
    color: #b02b5a
}

#newmenu5 #slider2 {
    position: relative;
    transition: opacity .6s ease
}

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

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

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

#newmenu5 .sp-slide a .titlebar_long {
    font-size: 1.15rem !important;
    padding: 7px 0px !important
}

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

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

#subject {
    border-top: solid 1px #dcdcdc;
    padding: 50px
}

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

#subject p.h_2 {
    font-size: 2rem;
    color: #4694D1
}

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

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

#subject .list_ope {
    flex-wrap: wrap
}

#subject .list>li {
    padding: 0 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: solid 1px #dcdcdc;
    font-size: 1.6rem
}

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

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

#column_utilities li a,
#subject li a {
    transition: color .15s ease-out
}

#column_utilities li a:hover,
#subject li a:hover {
    color: #4694D1
}

#subject nav {
    margin-top: 30px
}

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

#column_utilities nav li a,
#subject nav li a {
    display: block;
    position: relative;
}

#column_utilities nav li a img {
    width: 22px;
    margin-right: 8px;
    filter: brightness(100);
}

#subject nav li a::before {
    display: block;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    margin: auto;
    width: 16px;
    height: 16px;
    border: solid 1px #4694D1;
    border-radius: 50px;
    content: ""
}

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

#operation {
    border-top: solid 1px #dcdcdc;
    padding: 50px
}

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

#operation p.h_2 {
    font-size: 2rem;
    color: #4694D1
}

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

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

#operation .list_ope {
    flex-wrap: wrap
}

#operation .list>li {
    padding: 0 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: solid 1px #dcdcdc;
    font-size: 1.6rem
}

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

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

#column_utilities li a,
#operation li a {
    transition: color .15s ease-out
}

#column_utilities li a:hover,
#operation li a:hover {
    color: #4694D1
}

#operation nav {
    margin-top: 30px
}

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

#column_utilities nav li a,
#operation nav li a {
    display: block;
    position: relative;
}

#operation nav li a::before {
    display: block;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    margin: auto;
    width: 16px;
    height: 16px;
    border: solid 1px #4694D1;
    border-radius: 50px;
    content: ""
}

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

#fswords {
    padding: 3% 20px 3%;
    text-align: center;
    background: #fdf9ee;
}

#fswords .txt {
    color: ff6c04;
    font-size: ;
}

#fswords .fswords_wrap {
    padding: 20px;
    text-align: center;
    margin: 0 auto;
    width: auto;
    max-width: -webkit-fit-content;
    max-width: -moz-fit-content;
    max-width: fit-content;
    min-width: 550px;
    border-radius: 5px;
    background: #f4f4f4;
    box-sizing: border-box
}

#fswords .fswords_wrap h2 {
    color: #b5ac6e;
    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") no-repeat center center;
    background-size: 100%;
    display: inline-block;
    vertical-align: middle;
    margin-right: 5px
}

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

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

#fswords .fswords_wrap ul li a {
    padding: 6px 14px;
    display: inline-block;
    border-radius: 5px;
    text-align: center;
    background: #fff;
    font-size: 1.4rem;
    transition: all .2s ease-out
}

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

.ginza_att {
    color: #b02b5a !important;
    margin-top: 10px !important;
    font-size: 1.4rem !important;
    line-height: 1.8 !important;
    text-align: left;
    letter-spacing: -0.1px
}

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

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

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

#clinics .inner .ginza_1 {
    margin: 40px auto;
    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") no-repeat right center/17px auto;*/
    transition: color .15s ease-out
}

a[target=_blank]:hover {
    color: #4694D1
}

.btn_link_l_wimg[target=_blank] {
    display: flex;
    padding: 20px 35px;
    background: #fff;
    transition: all .2s ease-out
}

.btn_link_l_wimg[target=_blank]:hover {
    box-shadow: 0 0 20px 0 rgba(0, 0, 0, .2);
    -webkit-transform: scale(1.02);
    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: #fff;
    border: solid 1px #4694D1;
    border-radius: 3px;
    text-align: center;
    line-height: 1.4;
    font-size: 1.4rem;
    color: #4694D1 !important;
    transition: all .15s ease-out
}

.btn_close::before,
.btn_close::after {
    display: block;
    width: 14px;
    height: 1px;
    position: absolute;
    top: 0;
    bottom: 0;
    right: 15px;
    margin: auto;
    background: #4694D1;
    content: "";
    transition: background .15s ease-out
}

.btn_close:hover {
    background: #4694D1;
    color: #fff !important
}

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

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

.btn_close:hover::before,
.btn_close:hover::after {
    background: #fff
}

.btn_blank,
.btn_link0 {
    box-sizing: border-box;
    display: inline-block;
    padding: 7px 20px;
    min-width: 150px;
    background: #fff;
    border: solid 1px #4694D1;
    border-radius: 3px;
    text-align: center;
    line-height: 1.4;
    font-size: 1.4rem;
    color: #4694D1 !important;
    transition: all .15s ease-out
}

.btn_link0:hover {
    background: #4694D1;
    color: #fff !important
}

.btn_blank {
    position: relative;
    background: #fff !important
}

.btn_blank:hover {
    background: #4694D1 !important;
    color: #fff !important
}

.btn_blank::after {
    display: block;
    width: 18px;
    height: 16px;
    position: absolute;
    top: 0;
    bottom: 0;
    right: 15px;
    margin: auto;
    background: url("../image/icon_blank.svg") no-repeat center center/contain;
    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: #4694D1;
    border: solid 1px #4694D1;
    border-radius: 3px;
    text-align: center;
    line-height: 1.4;
    font-size: 1.4rem;
    color: #fff !important;
    transition: all .15s ease-out
}

.btn_link1:hover {
    background: #fff;
    color: #4694D1 !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: 0;
    bottom: 0;
    margin: auto
}

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

.btn_link0.btn_arrow1:hover::before,
.btn_link0.btn_arrow1:hover::after {
    border-color: #fff
}

.btn_link1.btn_arrow1::before {
    background: #fff
}

.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: #fff;
    border: solid 1px #4694D1;
    border-radius: 3px;
    text-align: center;
    line-height: 1.4;
    font-size: 1.8rem;
    color: #4694D1 !important;
    transition: all .2s ease-out
}

.btn_link_l:hover,
.btn_link_l_wimg:hover,
.btn_anchor:hover {
    box-shadow: 0 0 20px 0 rgba(0, 0, 0, .2);
    -webkit-transform: scale(1.02);
    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: 0 30px 0 10px;
    align-self: center
}

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

.btn_link_l p,
.btn_link_l_wimg p {
    font-size: 1.4rem;
    color: #444 !important
}

.btn_link_l h3,
.btn_link_l_wimg h3 {
    display: block;
    font-size: 2rem;
    color: #4694D1 !important
}

.btn_link_l_wimg h3 {
    margin-bottom: .2em
}

.btn_link_l::before,
.btn_link_l_wimg::before,
.btn_anchor::before {
    display: block;
    position: absolute;
    top: 0;
    bottom: 0;
    right: 12px;
    margin: auto;
    width: 16px;
    height: 16px;
    border: solid 1px #4694D1;
    border-radius: 50px;
    content: ""
}

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

.btn_anchor::after {
    display: block;
    position: absolute;
    top: 0;
    bottom: 3px;
    right: 22px;
    margin: auto;
    width: 3px;
    height: 3px;
    border-bottom: solid 1px #4694D1;
    border-right: solid 1px #4694D1;
    -webkit-transform: rotate(45deg);
    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: solid 1px #4694D1;
    border-radius: 50px;
    content: ""
}

.btn_arrow1::after {
    display: block;
    position: absolute;
    width: 3px;
    height: 3px;
    border-top: solid 1px #4694D1;
    border-right: solid 1px #4694D1;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    content: ""
}

.btn_arrow2::before {
    display: block;
    position: absolute;
    width: 13px;
    height: 13px;
    background: #dc5a8c;
    border-radius: 50px;
    content: ""
}

.btn_arrow2::after {
    display: block;
    position: absolute;
    width: 2px;
    height: 2px;
    border-top: solid 1px #fff;
    border-right: solid 1px #fff;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    content: ""
}

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

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

#sp_menu .inner {
    position: absolute;
    top: 0;
    right: 0;
    width: 84.5%;
    height: 100%;
    max-height: 100%;
    background: #fff;
    overflow: auto
}

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

#sp_menu .subject h2 {
    box-sizing: border-box;
    float: none;
    width: auto;
    height: auto;
    padding: 0 0 0 8px;
    border-left: solid 4px #4694D1;
    font-size: 1.8rem
}

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

#sp_menu .subject .list>li {
    padding: 0;
    flex-basis: 25%;
    border-top: solid 1px #dcdcdc
}

#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 0;
    margin: 0;
    transition: color .15s ease-out
}

#sp_menu .subject .list h3:hover {
    color: #4694D1
}

#sp_menu .subject .list h3::before,
#sp_menu .subject .list h3::after {
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    margin: auto;
    background: #4694D1;
    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 .15s ease-out
}

#sp_menu .subject li a:hover {
    color: #4694D1
}

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

#sp_menu .subject .list li li {
    margin: 0;
    padding: 0;
    border-top: solid 1px #dcdcdc
}

#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: 0;
    top: 0;
    bottom: 0;
    margin: auto;
    width: 13px;
    height: 13px;
    background: #4694D1;
    border-radius: 50px;
    content: ""
}

#sp_menu .subject .list li li a::after {
    display: block;
    position: absolute;
    left: 4px;
    top: 0;
    bottom: 0;
    margin: auto;
    width: 3px;
    height: 3px;
    border-top: solid 1px #fff;
    border-right: solid 1px #fff;
    -webkit-transform: rotate(45deg);
    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") no-repeat left/100% auto;
    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(odd) {
    padding-right: 1px
}

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

#sp_menu .gnav li a {
    display: block;
    background: #edece9;
    padding: 10px 30px 10px 10px;
    line-height: 1.4;
    transition: all .15s ease-out
}

#sp_menu .gnav li a:hover {
    background: #f2f2f0;
    color: #4694D1
}

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

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

#sp_menu .customer {
    margin: 20px 0
}

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

#sp_menu .customer li:nth-child(odd) {
    padding-right: 6px
}

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

#sp_menu .customer a {
    box-sizing: border-box;
    display: block;
    padding: 4px 0;
    border: solid 1px #4694D1;
    border-radius: 3px;
    color: #4694D1;
    font-size: 1.2rem;
    text-align: center;
    transition: all .15s ease-out
}

#sp_menu .customer a:hover {
    background: #4694D1;
    color: #fff
}

#sp_menu .info {
    display: flex;
    flex-wrap: wrap;
    margin: 20px -25px;
    border-bottom: solid 1px #dcdcdc
}

#sp_menu .info li {
    box-sizing: border-box;
    width: 50%;
    max-width: 50%;
    border-top: solid 1px #dcdcdc
}

#sp_menu .info li:nth-child(odd) {
    border-right: solid 1px #dcdcdc
}

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

#sp_menu .info li a:hover {
    color: #4694D1
}

#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: no-repeat 10px center/25px
}

#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: no-repeat center top/42px auto;
    transition: color .15s ease-out
}

#sp_menu .contact li a:hover {
    color: #4694D1
}

#sp_menu .contact li a::after {
    position: absolute;
    left: 0;
    top: 35px;
    width: 1px;
    height: 25px;
    background: #dcdcdc;
    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 0
}

#sp_menu .lang li a {
    display: block;
    padding: 3px;
    border: solid 1px #c0b581;
    border-radius: 3px;
    vertical-align: middle;
    line-height: 1;
    color: #4694D1;
    transition: all .15s ease-out
}

#sp_menu .lang li a:hover {
    background: #4694D1;
    color: #fff
}

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

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

#sp_menu .btn_close {
    position: absolute;
    top: 25px;
    right: 15px;
    border: none;
    padding: 0 0 0 45px;
    width: auto;
    min-width: 0;
    color: #4694D1;
    font-size: 1.1rem;
    transition: opacity .15s ease-out
}

#sp_menu .btn_close:hover {
    background: none;
    color: #4694D1 !important;
    opacity: .6
}

#sp_menu .btn_close::before,
#sp_menu .btn_close::after {
    display: block;
    position: absolute;
    top: 0;
    bottom: 1px;
    left: 0;
    margin: auto;
    width: 18px;
    height: 1px;
    background: #4694D1;
    content: ""
}

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

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

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

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

#sp_menu .inner {
    position: absolute;
    top: 0;
    right: 0;
    width: 84.5%;
    height: 100%;
    max-height: 100%;
    background: #fff;
    overflow: auto
}

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

#sp_menu .subject h2 {
    box-sizing: border-box;
    float: none;
    width: auto;
    height: auto;
    padding: 0 0 0 8px;
    border-left: solid 4px #4694D1;
    font-size: 1.8rem
}

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

#sp_menu .subject .list>li {
    padding: 0;
    flex-basis: 25%;
    border-top: solid 1px #dcdcdc
}

#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 0;
    margin: 0;
    transition: color .15s ease-out
}

#sp_menu .subject .list h3:hover {
    color: #4694D1
}

#sp_menu .subject .list h3::before,
#sp_menu .subject .list h3::after {
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    margin: auto;
    background: #4694D1;
    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 .15s ease-out
}

#sp_menu .subject li a:hover {
    color: #4694D1
}

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

#sp_menu .subject .list li li {
    margin: 0;
    padding: 0;
    border-top: solid 1px #dcdcdc
}

#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: 0;
    top: 0;
    bottom: 0;
    margin: auto;
    width: 13px;
    height: 13px;
    background: #4694D1;
    border-radius: 50px;
    content: ""
}

#sp_menu .subject .list li li a::after {
    display: block;
    position: absolute;
    left: 4px;
    top: 0;
    bottom: 0;
    margin: auto;
    width: 3px;
    height: 3px;
    border-top: solid 1px #fff;
    border-right: solid 1px #fff;
    -webkit-transform: rotate(45deg);
    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(odd) {
    padding-right: 1px
}

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

#sp_menu .gnav li a {
    display: block;
    background: #edece9;
    padding: 10px 30px 10px 10px;
    line-height: 1.4;
    transition: all .15s ease-out
}

#sp_menu .gnav li a:hover {
    background: #f2f2f0;
    color: #4694D1
}

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

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

#sp_menu .customer {
    margin: 20px 0
}

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

#sp_menu .customer li:nth-child(odd) {
    padding-right: 6px
}

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

#sp_menu .customer a {
    box-sizing: border-box;
    display: block;
    padding: 4px 0;
    border: solid 1px #4694D1;
    border-radius: 3px;
    color: #4694D1;
    font-size: 1.2rem;
    text-align: center;
    transition: all .15s ease-out
}

#sp_menu .customer a:hover {
    background: #4694D1;
    color: #fff
}

#sp_menu .info {
    display: flex;
    flex-wrap: wrap;
    margin: 20px -25px;
    border-bottom: solid 1px #dcdcdc
}

#sp_menu .info li {
    box-sizing: border-box;
    width: 50%;
    max-width: 50%;
    border-top: solid 1px #dcdcdc
}

#sp_menu .info li:nth-child(odd) {
    border-right: solid 1px #dcdcdc
}

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

#sp_menu .info li a:hover {
    color: #4694D1
}

#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: no-repeat 10px center/25px
}

#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: no-repeat center top/42px auto;
    transition: color .15s ease-out
}

#sp_menu .contact li a:hover {
    color: #4694D1
}

#sp_menu .contact li a::after {
    position: absolute;
    left: 0;
    top: 35px;
    width: 1px;
    height: 25px;
    background: #dcdcdc;
    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 0
}

#sp_menu .lang li a {
    display: block;
    padding: 3px;
    border: solid 1px #c0b581;
    border-radius: 3px;
    vertical-align: middle;
    line-height: 1;
    color: #4694D1;
    transition: all .15s ease-out
}

#sp_menu .lang li a:hover {
    background: #4694D1;
    color: #fff
}

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

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

#sp_menu .btn_close {
    position: absolute;
    top: 25px;
    right: 15px;
    border: none;
    padding: 0 0 0 45px;
    width: auto;
    min-width: 0;
    color: #4694D1;
    font-size: 1.1rem;
    transition: opacity .15s ease-out
}

#sp_menu .btn_close:hover {
    background: none;
    color: #4694D1 !important;
    opacity: .6
}

#sp_menu .btn_close::before,
#sp_menu .btn_close::after {
    display: block;
    position: absolute;
    top: 0;
    bottom: 1px;
    left: 0;
    margin: auto;
    width: 18px;
    height: 1px;
    background: #4694D1;
    content: ""
}

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

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

#info .topic2 {
    background: #edece9;
    padding: 25px;
    margin-top: 10px
}

#info .topic2 h4 {
    color: #b02b5a
}

#info .topic2 p {
    font-size: 1.4rem
}

#notice {
    margin: 40px 0
}

#notice .notice_box {
    text-align: center;
    border: 1px solid #f4f4f4;
    width: 70%;
    margin: 0 auto;
    padding: 30px
}

#notice .notice_box h2 {
    margin: 10px 0;
    font-weight: bold
}

#treatment {
    margin: 0 !important;
    padding: 85px 50px 60px 50px;
    background: #f9e7e3 url("../image/treatment_bg0.jpg") no-repeat right top/590px auto;
    overflow: hidden
}

#treatment .inner {
    max-width: 810px;
    margin: auto
}

#contents #treatment .inner {
    max-width: 810px;
    padding-left: 0;
    padding-right: 0
}

#treatment h2 {
    position: relative;
    margin-top: 5px;
    font-size: 2.8rem;
    color: #dc5a8c;
    z-index: 1
}

#treatment h3 {
    position: relative;
    display: inline-block;
    background-color: #dc5a8c;
    border-radius: 50px;
    padding: 2px 20px 3px 20px;
    font-size: 1.4rem;
    color: #fff;
    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: 0;
    top: -220px
}

#treatment nav>div {
    box-sizing: border-box;
    position: relative;
    width: 25%;
    padding: 3px
}

#treatment nav>div>div {
    height: 100%;
    background: #fff no-repeat center top/100% auto
}

#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: 0 0 3px #fff, 0 0 5px #fff, 0 0 5px #fff, 0 0 10px #fff, 0 0 10px #fff
}

#treatment nav ul {
    padding: 10px
}

#treatment nav li {
    border-top: solid 1px #dcdcdc
}

#treatment nav li:first-child {
    border: none
}

#treatment nav a {
    display: block;
    padding: 8px 0 8px 20px;
    font-size: 1.4rem;
    text-shadow: 0 0 3px #fff, 0 0 5px #fff, 0 0 5px #fff, 0 0 10px #fff, 0 0 10px #fff;
    transition: color .15s ease-out
}

#treatment nav a img {
    vertical-align: middle
}

#treatment nav a:hover {
    color: #dc5a8c
}

#treatment .btn_arrow2::before {
    top: 0;
    bottom: 0;
    left: 0;
    margin: auto
}

#treatment .btn_arrow2::after {
    top: 0;
    bottom: 0;
    left: 5px;
    margin: auto
}

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

#treatment nav .btn_more {
    box-sizing: border-box;
    display: inline-block;
    padding: 7px 20px;
    width: 100%;
    border: solid 1px #dc5a8c;
    border-radius: 3px;
    line-height: 1.4;
    font-size: 1.4rem;
    color: #dc5a8c;
    text-shadow: none;
    transition: all .15s ease-out
}

#treatment nav .btn_more:hover {
    background: #dc5a8c;
    color: #fff !important
}

#treatment .bnr {
    margin: 30px auto auto auto
}

#treatment .bnr a {
    display: block;
    background: #fff;
    max-width: 400px;
    margin: auto;
    padding: 10px;
    transition: all .2s ease-out
}

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

#treatment .bnr figure {
    float: left;
    background: no-repeat center center/cover;
    width: 90px
}

#treatment .bnr .txt {
    float: right;
    width: calc(100% - 100px)
}

#treatment .bnr h4 {
    padding: 0;
    margin-bottom: 10px;
    line-height: 1;
    font-size: 1.8rem;
    color: #dc5a8c
}

#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: #dc5a8c;
    top: 0;
    bottom: 0;
    right: 10px;
    margin: auto
}

#treatment .bnr .btn_arrow0::after {
    top: 0;
    bottom: 0;
    right: 17px;
    margin: auto
}

#start {
    padding: 60px 50px;
    text-align: center
}

#start.lazyloaded {
    background: url("../image/start_bg0.jpg") no-repeat center top/cover
}

#start h2 {
    font-size: 2.4rem;
    color: #dc5a8c
}

#start .read {
    margin-top: 10px
}

#start .inner {
    max-width: 720px;
    margin: auto
}

#start ul {
    display: flex
}

#start li {
    box-sizing: border-box;
    padding: 20px 6px
}

#start li:nth-child(1),
#start li:nth-child(2),
#start li:nth-child(3) {
    width: 16.9%
}

#start li:nth-child(4),
#start li:nth-child(5) {
    width: 25.3%
}

#start li a {
    box-sizing: border-box;
    display: block;
    height: 100%;
    background: #fff no-repeat center 15px/70px;
    border-radius: 3px;
    padding: 95px 15px 15px 15px;
    line-height: 1.6;
    font-size: 1.4rem;
    transition: all .2s ease-out
}

#start li a:hover {
    box-shadow: 0 0 20px 0 rgba(0, 0, 0, .1);
    -webkit-transform: scale(1.04);
    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: #dc5a8c;
    border-radius: 3px;
    text-align: center;
    line-height: 1.4;
    font-size: 1.8rem;
    color: #fff !important;
    transition: background .15s ease-out
}

#start .btn_link:hover {
    background: #b02b5a
}

#start .btn_link::before {
    display: block;
    position: absolute;
    top: 0;
    bottom: 0;
    right: 15px;
    margin: auto;
    width: 16px;
    height: 16px;
    border: solid 1px #fff;
    border-radius: 50px;
    content: ""
}

#start .btn_link::after {
    display: block;
    position: absolute;
    top: 0;
    bottom: 0;
    right: 23px;
    margin: auto;
    width: 3px;
    height: 3px;
    border-top: solid 1px #fff;
    border-right: solid 1px #fff;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    content: ""
}

#banner {
    border-top: solid 1px #dcdcdc;
    padding: 30px 0;
    text-align: center
}

#banner li {
    display: inline-block;
    vertical-align: middle;
    margin: 10px 20px
}

#banner li a {
    background: none;
    padding: 0;
    transition: opacity .15s ease-out
}

#banner li a:hover {
    opacity: .7
}

#supervision {
    border-top: solid 1px #dcdcdc;
    padding: 30px 50px;
    text-align: center
}

#supervision .inner {
    max-width: 800px;
    margin: auto
}

#supervision h2 {
    font-size: 1.8rem;
    color: #4694D1
}

#supervision p.read {
    margin-top: .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: solid 1px #4694D1;
    border-radius: 3px;
    line-height: 1.4;
    font-size: 1.4rem;
    color: #4694D1;
    transition: all .15s ease-out
}

#supervision .btns a::before,
#supervision .btns a::after {
    top: 0;
    bottom: 0;
    right: 10px;
    margin: auto
}

#supervision .btns a::after {
    right: 18px;
    transition: border .15s ease-out
}

#simple_sv {
    border-top: solid 1px #dcdcdc;
    padding: 30px 50px;
    text-align: center
}

#simple_sv .inner {
    max-width: 800px;
    margin: auto
}

#simple_sv h2 {
    font-size: 1.8rem;
    color: #4694D1
}

#simple_sv p.read {
    margin-top: .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: solid 1px #4694D1;
    border-radius: 3px;
    line-height: 1.4;
    font-size: 1.4rem;
    color: #4694D1;
    transition: all .15s ease-out
}

#simple_sv .btns a::before,
#simple_sv .btns a::after {
    top: 0;
    bottom: 0;
    right: 10px;
    margin: auto
}

#simple_sv .btns a::after {
    right: 18px;
    transition: border .15s ease-out
}

footer .block {
    border-top: solid 1px #dcdcdc;
    padding: 50px
}

#contact {
    box-sizing: border-box;
    float: left;
    width: 75%;
    border-right: solid 1px #dcdcdc;
    padding-right: 20px;
    margin: 0 !important
}

#contact h2 {
    float: left;
    font-size: 2rem;
    color: #4694D1
}

#contact .head .btns {
    float: left;
    margin: 0 !important;
    margin-left: 30px !important
}

#contact .head .btns a {
    box-sizing: border-box;
    position: relative;
    display: inline-block;
    padding: 7px 70px 7px 20px;
    border: solid 1px #4694D1;
    border-radius: 3px;
    line-height: 1.4;
    font-size: 1.4rem;
    color: #4694D1;
    transition: all .15s ease-out
}

#contact .head .btns a:hover {
    background: #4694D1;
    color: #fff
}

#contact .head .btns a::before,
#contact .head .btns a::after {
    top: 0;
    bottom: 0;
    right: 10px;
    margin: auto
}

#contact .head .btns a::after {
    right: 18px;
    transition: border .15s ease-out
}

#contact .head .btns a:hover::before,
#contact .head .btns a:hover::after {
    border-color: #fff
}

#contact h3 {
    margin-top: 30px;
    font-size: 1.4rem;
    color: #4694D1
}

#contact h4 {
    margin-top: 3px;
    font-size: 1.4rem
}

#contact strong {
    display: block;
    margin: 10px 0;
    line-height: 1;
    font-size: 2.4rem;
    color: #444 !important
}

#contact p {
    font-size: 1.2rem
}

#contact ul {
    display: flex;
    margin: 30px -3px 0 -3px
}

#contact li {
    padding: 3px
}

#contact li a {
    box-sizing: border-box;
    display: block;
    height: 100%;
    padding: 10px 20px;
    border: solid 1px #4694D1;
    border-radius: 3px;
    text-align: center;
    line-height: 1.4;
    font-size: 1.4rem;
    color: #4694D1;
    transition: all .15s ease-out
}

#contact li a:hover {
    background: #4694D1;
    color: #fff
}

#clinic {
    box-sizing: border-box;
    float: right;
    width: 25%;
    padding-left: 20px;
    margin: 0 !important
}

#clinic .inner {
    max-width: initial !important;
    max-width: auto !important;
    margin: 0 !important;
    padding: 0 !important
}

#clinic h2 {
    font-size: 2rem;
    color: #4694D1
}

#clinic ul {
    margin-top: 10px
}

#clinic li {
    float: left;
    width: 50%;
    margin: 5px 0 10px
}

#clinic ul+h2 {
    margin-top: 30px
}

#clinic .sns {
    max-width: 270px
}

#clinic .sns a[target=_blank] {
    display: block;
    padding-right: 0;
    background: none;
    transition: none
}

#clinic .sns li {
    width: 3.5vw;
    padding-left: 5px;
    padding-right: 1.5vw;
    margin: 15px 0 10px
}

#column_utilities li a {
    transition: color .15s ease-out
}

#column_utilities li a:hover {
    color: #fff;
    opacity: .7;
}

#subject nav {
    margin-top: 30px
}

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

#column_utilities nav li a {
    display: block;
    position: relative;
}


footer .box {
    background: #509cd3;
    padding: 40px;
    text-align: center;
    color: #fff
}

footer .box nav {
    margin: 30px 0
}

footer .box nav li {
    display: inline-block;
    padding: 0 10px;
    line-height: 1;
    font-size: 1.2rem
}

footer .box nav li:first-child {
    border: none
}

footer .box nav li a {
    color: #fff;
    transition: color .15s ease-out
}

footer .box nav li a:hover {
    color: #fff;
    opacity: .7;
}

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: solid 1px #dcdcdc;
    padding: 30px 15px 0;
    margin: 0 !important
}

#column_utilities {
    /* border-top: solid 1px #dcdcdc; */
    /* padding: 30px 15px 30px; */
}

.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: #4694D1
}

#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/ornament1.png")
}

#doctor h2::after {
    margin-top: 10px;
    background-image: url("../image/ornament1.png");
    -webkit-transform: rotate(180deg);
    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: #4694D1;
    background: #eae9e6;
    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") no-repeat center center/cover;
    text-align: center
}

#worry h2 {
    padding: 40px 0 5px 0;
    background: url("../image/ornament0.png") no-repeat center top/90px auto;
    font-size: 2.2rem;
    color: #4694D1
}

#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: 0;
    left: 0;
    width: 100%;
    height: 100%;
    line-height: 1.4;
    font-size: 1.8rem;
    transition: -webkit-transform .3s ease-out;
    transition: transform .3s ease-out;
    transition: transform .3s ease-out, -webkit-transform .3s ease-out
}

#worry li:hover {
    -webkit-transform: scale(1.04);
    transform: scale(1.04)
}

#worry li:hover span img {
    box-shadow: none
}

#worry li img {
    box-shadow: 0 0 5px 0 rgba(0, 0, 0, .2);
    box-shadow: transform .2s ease-out
}

#worry li:hover img {
    box-shadow: 0 0 20px 0 rgba(0, 0, 0, .2)
}

#worry li a {
    box-shadow: color .3s ease-out
}

#worry li:hover a {
    color: #4694D1
}

#worry li a span {
    position: absolute;
    display: block;
    width: 100%;
    top: 50%;
    -webkit-transform: translateY(-65%);
    transform: translateY(-65%)
}

#worry li a span img {
    box-shadow: none;
    width: 60%;
    height: auto
}

#worry .btn_arrow1::before {
    left: -1px;
    right: 0;
    bottom: 30px;
    margin: auto
}

#worry .btn_arrow1::after {
    left: -2px;
    right: 0;
    bottom: 37px;
    margin: auto
}

#clinics {
    position: relative;
    padding: 50px 50px 40px 50px;
    text-align: center
}

#clinics .bg {
    position: absolute;
    width: 100%;
    height: 480px;
    top: 0;
    left: 0;
    z-index: -1
}

#clinics .bg.lazyloaded {
    background: url("../image/access_bg0.jpg") no-repeat center center/cover
}

#clinics .bg::after {
    display: block;
    position: absolute;
    width: 100%;
    height: 30%;
    bottom: 0;
    left: 0;
    background: linear-gradient(to bottom, rgba(255, 255, 255, 0) 0%, white 95%);
    content: ""
}

#clinics h2 {
    padding: 40px 0 5px 0;
    font-size: 2.2rem;
    color: #4694D1
}

#clinics h2.lazyloaded {
    background: url("../image/ornament0.png") no-repeat center top/90px auto
}

#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 0 10px;
    width: 60%;
}

#clinics .inner a {
    display: block;
    transition: opacity .15s ease-out
}

#clinics .inner a:hover {
    opacity: .7
}

#clinics .inner figure {
    padding: 5px;
    margin-bottom: 6px
}

#clinics .inner span {
    display: block;
    overflow: hidden
}

#clinics .inner p {
    display: inline-block;
    position: relative;
    line-height: 1;
    color: #333;
    font-size: 17px
}

#clinics .inner p.btn_arrow1::before {
    top: 0;
    bottom: -1px;
    right: -25px;
    margin: auto
}

#clinics .inner p.btn_arrow1::after {
    top: 0;
    bottom: -1px;
    right: -17px;
    margin: auto
}

#clinics .inner p {
    font-size: 16px
}

#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 #f8c85a;
    padding: 10px 10px 8px;
    line-height: 1.5;
    margin: 3px auto 0;
    width: 90%;
}

#clinics .inner .address {
    display: block;
    box-sizing: border-box;
    padding: 10px 15px 0;
    text-align: left;
    font-size: 12px;
    line-height: 1.5
}

#pickup {
    padding: 60px 50px;
    background: url("../image/pickup_bg0.jpg") no-repeat left top
}

#pickup h2 {
    font-size: 2.6rem;
    color: #4694D1;
    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 auto
}

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

#pickup li:nth-child(odd) {
    clear: both
}

#pickup li a {
    display: flex;
    height: 100%;
    background: #fff;
    overflow: hidden;
    border: solid 1px #d2cba5;
    border-radius: 4px;
    transition: all .2s ease-out
}

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

#pickup li a:hover {
    box-shadow: 0 0 20px 0 rgba(0, 0, 0, .2);
    -webkit-transform: scale(1.02);
    transform: scale(1.02)
}

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

#pickup li a::after {
    right: 23px
}

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

#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: #4694D1
}


#info {
    padding: 60px 50px
}

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

#info h2 {
    text-align: center;
    font-size: 2.4rem;
    color: #4694D1
}

#news h3,
#activity h3 {
    border-bottom: solid 1px #4694D1;
    padding-bottom: 10px;
    margin-bottom: 30px;
    text-align: center;
    font-size: 1.8rem;
    color: #4694D1
}

#news h3+ol li:nth-of-type(1),
#activity h3+ol li:nth-of-type(1) {
    padding-top: 0
}

#info .tab_contents {
    margin: 30px 0
}

#info .tab_contents>div {
    box-sizing: border-box;
    float: left;
    width: 50%
}

#news {
    padding-right: 20px
}

#activity {
    padding-left: 20px
}

#info .topic {
    background: #edece9;
    padding: 25px
}

#info .topic h4 {
    color: #4694D1
}

#info .topic p {
    font-size: 1.4rem
}

#info .topic p {
    font-size: 1.4rem
}

#news li,
#activity li {
    padding: 30px 0;
    border-top: solid 1px #dcdcdc
}

#news li:first-child,
#activity li:first-child {
    border: none
}

#news li time,
#activity li time {
    font-size: 1.2rem;
    color: #4694D1
}

#news li .label,
#activity li .label {
    display: inline-block;
    margin-left: 10px;
    padding: 2px 5px;
    border: solid 1px #4694D1;
    font-size: 1.1rem;
    color: #4694D1
}

#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: #edece9;
    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: 0 5px
}

#info .box li.full-width .line {
    display: block;
    background: none;
    border: none;
    border-radius: 0;
    margin-top: 10px;
    height: auto
}

#info .box li:nth-child(odd) {
    clear: both
}

#info .box li a {
    display: flex;
    height: 100%;
    background: #fff;
    overflow: hidden;
    border: solid 1px #4694D1;
    border-radius: 4px;
    transition: all .2s ease-out
}

#info .box li a:hover {
    box-shadow: 0 0 20px 0 rgba(0, 0, 0, .2);
    -webkit-transform: scale(1.02);
    transform: scale(1.02)
}

#info .box li .lang_cn_box {
    display: flex;
    align-items: center;
    height: 100%;
    background: #fff;
    overflow: hidden;
    border: solid 1px #4694D1;
    border-radius: 4px;
    transition: all .2s ease-out
}

#info .box li .lang_cn_box a {
    display: flex;
    height: auto;
    background: transparent;
    overflow: hidden;
    border: none;
    border-radius: unset;
    transition: all .2s ease-out
}

#info .box li .lang_cn_box a:first-child {
    margin-bottom: 10px
}

#info .box li .lang_cn_box a:hover {
    box-shadow: none;
    -webkit-transform: scale(1.2);
    transform: scale(1.2)
}

#info .box li .lang_cn_box a figure {
    flex-basis: 25%;
    height: -webkit-fit-content;
    height: -moz-fit-content;
    height: fit-content
}

#info .box li .lang_cn_box figure {
    height: 100%
}

#info .box li figure {
    flex-basis: 50%;
    background: no-repeat center center/cover
}

#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: #4694D1
}

#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: #fff;
    overflow: hidden;
    border: solid 1px #4694D1;
    border-radius: 4px;
    transition: all .2s ease-out
}

#info .bnr li a:hover {
    box-shadow: 0 0 20px 0 rgba(0, 0, 0, .2);
    -webkit-transform: scale(1.02);
    transform: scale(1.02)
}

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

#info .bnr li a::after {
    right: 23px
}

#info .bnr li figure {
    flex-basis: 150px;
    height: 100px;
    background: no-repeat center center/cover
}

#info .bnr li .txt {
    box-sizing: border-box;
    margin-top: 5px;
    padding: 0 40px 0 10px
}

#info .bnr h3 {
    margin-top: -0.3em;
    font-size: 1.8rem;
    color: #4694D1
}

@font-face {
    font-family: "Noto Sans SC", serif !important;
    font-style: normal;
    font-weight: 400;
    src: url("../font/NotoSerifJP-Regular.otf") format("opentype")
}

@font-face {
    font-family: "Noto Sans SC", serif !important;
    font-style: normal;
    font-weight: 500;
    src: url("../font/NotoSerifJP-Medium.otf") format("opentype")
}

@media only screen and (max-width: 767px) {
    #beauty_info {
        padding: 0 5px;
        overflow: hidden
    }

    #beauty_info .inner {
        padding: 50px 0 15px 0
    }

    #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 0 0 0
    }

    #attention .box h2 {
        font-size: 1.5rem
    }

    .accordion_content .inner {
        padding: 0
    }

    .accordion .ba_block .inner {
        padding: 0 10px
    }

    .accordion_content p img {
        max-width: 160px
    }

    .accordion_content p .inline-figure {
        max-width: 160px;
        margin: 0 0 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: 0
    }

    .accordion_content .inner .texts>ul li span {
        display: inline-block;
        position: absolute;
        left: 0;
        margin-right: .3em
    }

    .accordion_h {
        padding: 10px 10px 5px
    }

    .accordion_h label::before {
        left: 90%
    }

    .accordion .center {
        text-align: center !important
    }

    #container .mt40_sp {
        margin-top: 40px
    }

    body {
        font-size: 1.4rem
    }

    .pc {
        display: none !important
    }

    .btn_link_l,
    .btn_anchor {
        width: 350px;
        min-width: 0;
        max-width: 100%;
        padding: 15px 35px 15px 35px
    }

    .btn_link_l_wimg {
        min-width: 0
    }

    .btn_anchor {
        text-align: left;
        padding-left: 15px
    }

    #gnav {
        display: none
    }

    #cnav {
        float: right;
        width: 71%;
        max-width: 295px
    }

    #cnav ul {
        margin-top: 0;
        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 0 5px;
        height: 65px;
        text-align: center;
        font-size: 1rem;
        border-left: solid 1px #e1e1e1
    }

    #cnav li a.reserve,
    #cnav li a.mail,
    #cnav li a.tel {
        background-position: center 10px
    }

    #mnav li:nth-child(odd) {
        border-right: solid 1px #dcdcdc
    }

    #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: solid 3px #b02b5a;
        margin-bottom: 5px
    }

    #mnav li .txt {
        width: 100%;
        padding-left: 0
    }

    #reason {
        padding: 20px 10px 20px 10px;
        background-size: 100% auto;
        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: 0 10px
    }

    header {
        padding: 0;
        margin: 0
    }

    header #pc_menu {
        display: none
    }

    header #sp_header {
        display: table;
        width: 100%;
        box-sizing: border-box;
        padding: 0;
        margin: 0;
        border-bottom: 1px solid #e1e1e1;
        position: static;
        z-index: 9999;
        transition: .5s;
        background-color: #fff
    }

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

    header #sp_header.show {
        position: fixed;
        top: 0
    }

    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: 0;
        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: .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 #e1e1e1;
        vertical-align: bottom
    }

    header #sp_header div.sp_header_items_row2 ul li a {
        flex-wrap: normal;
        padding: 10px 2px;
        display: block;
        color: #333;
        transition: color .15s ease-out
    }

    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") no-repeat;
        background-size: 100%;
        content: "";
        margin: 0 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") no-repeat;
        background-size: 100%;
        content: "";
        margin: 0 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") no-repeat;
        background-size: 100%;
        content: "";
        margin: 0 auto 2px
    }

    header #sp_header div.sp_header_items_row2 ul li a:hover {
        color: #b5ac6e
    }

    header #sp_header div.sp_header_items_row2 ul #btn_menu {
        background: #b02b5a;
        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: 0;
        border-radius: 0;
        background: #edece8;
        padding: 3px 6px;
        position: absolute;
        top: 14px;
        left: 15px;
        border: none;
        width: 60%
    }

    header .googlesearch_sp .gsc-input-box {
        padding: 0;
        border: none;
        background: transparent
    }

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

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

    header .googlesearch_sp .gsc-search-button {
        margin-left: 0
    }

    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;
        text-align: left;
		width: 100%;
        height: auto;
        max-height: 45px;
    }

    header #sp_header div.sp_header_items_row11 #logo img {
        width: auto;
        height: 100%;
        max-height: 45px;
        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 {
        padding-right: 0px
    }

    header #sp_header div.sp_header_items_row11 .sp_header_gmenu ul #sp_btn_cn {
        padding-right: 0 !important
    }

    header #sp_header div.sp_header_items_row11 .sp_header_gmenu ul #sp_btn_cn a[target=_blank] {
        background: none;
        padding-right: 12px
    }

    header #sp_header div.sp_header_items_row11 .sp_header_gmenu ul #sp_btn_en,
    header #sp_header div.sp_header_items_row11 .sp_header_gmenu ul #sp_btn_search {
        padding-right: 12px
    }

    header #sp_header div.sp_header_items_row12 {
        display: none;
        background: rgba(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 0 auto auto;
        border-radius: 0;
        padding: 0;
        position: relative;
        top: 9px;
        bottom: 0;
        left: auto;
        right: 25px;
        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: 0;
        width: 0px;
        height: 0px;
        margin: auto;
        border-style: solid;
        border-color: #fff transparent transparent transparent;
        border-width: 6px 6px 0 6px
    }

    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: #777;
        width: auto;
        margin: 0;
        border-radius: 0
    }

    header #sp_header div.sp_header_items_row12 .googlesearch_sp2 .gsc-search-box {
        border-radius: 30px;
        background: #fff;
        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 0;
        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 0
    }

    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: #777;
        line-height: 1
    }

    header #sp_header div.sp_header_items_row12 .googlesearch_sp2 .gsst_a .gscb_a {
        color: #777;
        line-height: 1;
        font-size: 2rem
    }

    #sp_foot_gmenu {
        position: fixed;
        display: block;
        bottom: 0;
        background: rgba(255, 255, 255, .7);
        border-radius: 5px;
        margin: auto;
        box-sizing: border-box;
        z-index: 1001;
        left: 0;
        right: 0
    }

    #sp_foot_gmenu ul {
        list-style-type: none;
        padding: 0;
        display: flex;
        align-items: center;
        margin: 0 auto
    }

    #sp_foot_gmenu ul li:first-child {
        margin: 0
    }

    #sp_foot_gmenu ul li:last-child {
        margin: 0
    }

    #sp_foot_gmenu ul li img {
        padding: 0;
        margin: 0;
        width: 100%;
        height: auto
    }

    footer #column_copy {
        padding-bottom: 40px;
    }

    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: 0 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 0;
        background: url("../image/top_pickup2_bg_sp.jpg") center top no-repeat;
        background-size: auto 100%;
        box-shadow: none
    }

    #pickup2 h2 {
        font-size: 2rem;
        color: #333;
        text-align: center;
        margin-bottom: 20px;
        padding: 0 15px
    }

    #pickup2 h2 span {
        color: #b02b5a
    }

    #pickup2 ul {
        margin-top: 10px
    }

    #pickup2 li {
        float: none;
        width: 100%;
        padding: 5px 0
    }

    #pickup2 .slick-slider {
        margin-bottom: 20px;
        line-height: 0
    }

    #worry2 {
        padding: 50px 0 10px;
        text-align: center
    }

    #worry2.mt40 {
        margin-top: 0
    }

    #worry2 h2 {
        padding: 0 15px 15px;
        font-size: 2rem;
        color: #333
    }

    #worry2 h2 span {
        color: #b02b5a
    }

    #worry2 .wy_tabmenu {
        border: 1px solid #fff;
        border-radius: 9px;
        max-width: 600px;
        margin: 0 auto;
        width: 96%;
        background: #fff;
        box-sizing: border-box
    }

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

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

    #worry2 .wy_tabmenu ul li span {
        display: block;
        padding: 10px;
        text-align: center;
        border-radius: 5px;
        background: #fff;
        color: #000;
        transition: background-color .5s
    }

    #worry2 .wy_tabmenu ul li span:hover {
        cursor: pointer;
        background: #eee
    }

    #worry2 .wy_tabmenu ul li span.wy_tabmenu_active {
        background: #dc5b8c;
        color: #fff
    }

    #worry2 .wy_tabmenu ul li span.wy_tabmenu_active:hover {
        color: #444;
        background: #eee
    }

    #worry2 .wy_figures {
        text-align: center;
        padding: 0
    }

    #worry2 .wy_figures figure {
        max-width: 600px;
        width: 100%;
        margin: 2% auto 2% auto;
        padding: 0;
        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: #333;
        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: #b02b5a;
        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: 50%;
        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: 0 0 50px
    }

    #worry2 .wy_btnline a {
        background: #dc5b8c;
        max-width: 300px;
        margin: 0 auto;
        padding: 12px;
        border-radius: 4px;
        transition: all .2s ease-out;
        display: block;
        color: #fff;
        position: relative;
        box-sizing: border-box
    }

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

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

    #treatment2 {
        padding: 45px 10px 35px 10px;
        background-size: 120% auto
    }

    #treatment2 nav {
        flex-wrap: wrap;
        margin-top: 35px
    }

    #treatment2 h2 {
        position: relative;
        margin: 25px auto 0;
        font-size: 2.5rem;
        color: #dc5a8c;
        z-index: 1
    }

    #treatment2 h3 {
        position: relative;
        display: inline-block;
        background-color: #db598c;
        border-radius: 50px;
        padding: 9px 20px 10px 20px;
        font-size: 1.3rem;
        color: #fff;
        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: 0 0 5px 0;
        margin: 0
    }

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

    #treatment2 h4 {
        padding: 30px 10px
    }

    #treatment2 li a {
        font-size: 1.2rem
    }

    #treatment2 .bnr {
        margin: 20px auto 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 0;
        justify-content: center;
        width: 100%;
        box-sizing: border-box
    }

    #treatment2 .shoureiphoto .shoureiphoto_tabmenu ul li span.shoureiphoto_tabmenu_active:hover {
        background: #b5ac6e;
        color: #fff
    }

    #mv2 {
        background: url("../image/top_mv2_bg_sp.jpg") center top no-repeat #efa8a8;
        background-size: 100% auto;
        overflow: hidden;
        margin: auto !important;
        padding: 0 0 40px;
        height: auto
    }

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

    #mv2 h2 {
        position: relative;
        margin: 0 auto 15px;
        font-size: 1.8rem;
        color: #333;
        text-align: center;
        z-index: 1;
        padding-top: 30px;
        padding-left: 20px;
        padding-right: 20px
    }

    #mv2 h2 span {
        font-size: 1.8rem;
        color: #b02b5a
    }

    #mv2 .inner #mvImg_sp {
        position: absolute;
        top: 0;
        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: #fff;
        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 auto
    }

    #mv2 .bnr a {
        display: block;
        background: #fff;
        border: 1px solid #4694D1;
        max-width: 100%;
        box-sizing: border-box;
        margin: auto;
        padding: 20px;
        border-radius: 4px;
        transition: all .2s ease-out
    }

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

    #mv2 .bnr h4 {
        padding: 0;
        line-height: 1;
        font-size: 1.7rem;
        color: #4694D1;
        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 #4694D1
    }

    #mv2 .bnr .btn_arrow0::before {
        background-color: #fff;
        border: 1px solid #4694D1;
        top: 0;
        bottom: 0;
        right: 11px;
        width: 18px;
        height: 18px;
        margin: auto
    }

    #mv2 .bnr .btn_arrow0::after {
        top: 0;
        bottom: 0;
        right: 19px;
        margin: auto;
        width: 4px;
        height: 4px;
        border-top: solid 1px #4694D1;
        border-right: solid 1px #4694D1
    }

    #mv3 h2::before {
        content: "";
        background: url("../image/top_mv3_icon_pc.png") center top no-repeat;
        background-size: 80px 80px;
        position: absolute;
        top: 0;
        bottom: initial;
        right: 10%;
        width: 80px;
        height: 80px;
        margin: auto
    }

    #mv3 .takasu_message p {
        padding: 0
    }

    #mv3 h2 {
        font-size: 2.5rem
    }

    #mv3 h2 span.sp_mgr {
        margin-right: 0em
    }

    #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: 0;
        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 0;
        background: url("../image/top_newmenu5_bg_sp.jpg") center top no-repeat;
        background-size: cover
    }

    #newmenu5 h2 {
        font-size: 2rem;
        color: #333;
        text-align: center;
        margin-bottom: 20px;
        padding: 0 15px
    }

    #newmenu5 h2 span {
        color: #b02b5a
    }

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

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

    #subject {
        padding: 30px 15px
    }

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

    #subject .list p.h_3 {
        position: relative;
        padding: 15px 0;
        margin: 0
    }

    #subject .list p.h_3::before,
    #subject .list p.h_3::after {
        position: absolute;
        top: 0;
        bottom: 0;
        right: 0;
        margin: auto;
        background: #4694D1;
        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: 0
    }

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

    #subject .list li li {
        margin: 8px 0
    }

    #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 0
    }

    #column_utilities nav li a,
    #subject nav li a {
        display: block;
        position: relative;
    }

    #subject nav li a::before {
        display: block;
        position: absolute;
        top: 0;
        bottom: 0;
        left: 0;
        margin: auto;
        width: 16px;
        height: 16px;
        border: solid 1px #4694D1;
        border-radius: 50px;
        content: ""
    }

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

    #operation {
        padding: 30px 15px
    }

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

    #operation .list p.h_3 {
        position: relative;
        padding: 15px 0;
        margin: 0
    }

    #operation .list p.h_3::before,
    #operation .list p.h_3::after {
        position: absolute;
        top: 0;
        bottom: 0;
        right: 0;
        margin: auto;
        background: #4694D1;
        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: 0
    }

    #operation .list li ul {
        margin: 15px 0 20px 0
    }

    #operation .list li li {
        margin: 8px 0
    }

    #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 0
    }

    #column_utilities nav li a,
    #operation nav li a {
        display: block;
        position: relative;
    }

    #operation nav li a::before {
        display: block;
        position: absolute;
        top: 0;
        bottom: 0;
        left: 0;
        margin: auto;
        width: 16px;
        height: 16px;
        border: solid 1px #4694D1;
        border-radius: 50px;
        content: ""
    }

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

    #fswords {
        padding: 3% 20px 3%;
        text-align: center;
        margin-top: 0 !important;
    }

    #fswords .fswords_wrap {
        padding: 25px 0 15px;
        text-align: center;
        margin: 0 auto;
        width: 100%;
        max-width: unset;
        min-width: unset;
        border-radius: unset;
        background: #fff;
        box-sizing: border-box;
        box-shadow: 0 10px 12px 0 #ededed
    }

    #fswords .fswords_wrap h2 {
        color: #b5ac6e;
        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") no-repeat center center;
        background-size: 100%;
        display: inline-block;
        vertical-align: middle;
        margin-right: 5px
    }

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

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

    #fswords .fswords_wrap ul li a {
        padding: 6px 12px;
        display: inline-block;
        border-radius: 5px;
        text-align: center;
        background: #f4f4f4;
        font-size: 1rem
    }

    #fswords .fswords_wrap ul li a:hover {
        box-shadow: unset;
        -webkit-transform: 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: 0;
        max-width: 100%;
        padding: 15px 35px 15px 35px
    }

    .btn_link_l_wimg {
        min-width: 0
    }

    .btn_anchor {
        text-align: left;
        padding-left: 15px
    }

    header #sp_menu .lang {
        display: block
    }

    #treatment {
        padding: 65px 10px 60px 10px;
        background-size: 120% auto
    }

    #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 0
    }

    #start li {
        padding: 6px
    }

    #start li:nth-child(1),
    #start li:nth-child(2),
    #start li:nth-child(3) {
        width: 33.333%
    }

    #start li:nth-child(4),
    #start li:nth-child(5) {
        width: 50%
    }

    #start .btn_link {
        width: 350px;
        min-width: 0;
        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: 0
    }

    #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-left: 0;
        padding: 25px 0
    }

    #clinic li {
        width: 33.33%
    }

    #column_utilities nav li {
        display: block;
        float: left;
        width: 46.33%;
        margin: 10px 0;
        text-align: left;
    }

    #column_utilities nav li a {
        display: block;
        position: relative;
    }


    footer .box {
        text-align: left
    }

    footer .box nav li {
        padding: 0 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%;
        -webkit-transform: translateY(-70%);
        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: 50px 50px 40px 50px;
    }

    #clinics .bg {
        height: 220px
    }

    #clinics .inner {
        margin-top: 10px
    }

    #clinics .inner>div {
        display: block;
        float: none;
        width: 95%;
        padding: 0;
        margin: 0 auto
    }

    #clinics .inner>div:nth-of-type(n+1) {}

    #clinics .inner figure {
        padding: 3px
    }

    #pickup {
        padding: 60px 10px
    }

    #pickup ul {
        margin-top: 10px
    }

    #pickup li {
        float: none;
        width: 100%;
        padding: 5px 0
    }


    #info {
        padding: 60px 10px
    }

    #info .tab {
        margin: 30px -10px 0 -10px
    }

    #info .tab li {
        box-sizing: border-box;
        float: left;
        width: 50%;
        padding: 10px 5px;
        background: #edece9;
        border-top: solid 1px #edece9;
        border-bottom: solid 1px #dcdcdc;
        text-align: center;
        color: #4694D1
    }

    #info .tab li:nth-child(odd) {
        border-right: solid 1px #dcdcdc
    }

    #info .tab li.act {
        background: #fff;
        border-top: solid 1px #dcdcdc;
        border-bottom: solid 1px #fff
    }

    #info .tab_contents>div.inact {
        display: none
    }

    #news h3,
    #activity h3 {
        display: none
    }

    #info .tab_contents {
        margin: 30px 0
    }

    #info .tab_contents>div {
        float: none;
        width: 100%
    }

    #news {
        padding-right: 0
    }

    #activity {
        padding-left: 0
    }

    #info .inner>.btns {
        margin-top: -30px
    }

    #info .box {
        margin: 40px -10px 0 -10px;
        padding: 20px 10px
    }

    #info .box img {
        width: 100%;
        height: auto
    }

    #info .box li a {
        display: block;
        border: solid 1px #e4dfc9
    }

    #info .box li figure {
        width: 100%;
        height: 110px
    }

    #info .box li .txt {
        padding: 10px;
        text-align: center
    }

    #info .box li .lang_cn_box {
        display: block;
        border: solid 1px #e4dfc9
    }

    #info .box li .lang_cn_box a {
        display: flex;
        height: auto;
        background: transparent;
        overflow: hidden;
        border: none;
        border-radius: unset;
        transition: all .2s ease-out
    }

    #info .box li .lang_cn_box a:first-child {
        margin-bottom: 10px
    }

    #info .box li .lang_cn_box a:hover {
        box-shadow: none;
        -webkit-transform: scale(1.2);
        transform: scale(1.2)
    }

    #info .box li .lang_cn_box figure {
        width: 100%;
        height: 110px
    }

    #info .box li .lang_cn_box a figure {
        width: -webkit-fit-content;
        width: -moz-fit-content;
        width: fit-content;
        display: inline-block;
        padding: 0 10px 0 0;
        height: auto
    }

    #info .box li .lang_cn_box a h3 {
        display: inline-block
    }

    #info .bnr li {
        width: 100%
    }

    #info .blog_bnr li a {
        display: flex;
        align-items: center;
        background: #fff;
        overflow: hidden;
        border: solid 1px #4694D1;
        border-radius: 4px;
        transition: all .2s ease-out
    }

    #info .blog_bnr li figure {
        flex-basis: 150px;
        height: 100px;
        background: no-repeat center center/cover
    }

    #info .blog_bnr li .txt {
        box-sizing: border-box;
        margin-top: 5px;
        padding: 0 40px 0 10px
    }

    #info .blog_bnr h3 {
        margin-top: -0.3em !important;
        font-size: 1.8rem;
        color: #4694D1
    }

    #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: 0
    }

    #operation .h_2 {
        font-size: 1.8rem
    }

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

    #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
    }

    #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: .9rem
    }

    #mv {
        height: 46vw;
        min-height: 0
    }

    #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: 0 auto
    }

    header #sp_header div.sp_header_items_row2 ul li a.line_reserve:before {
        width: 21.6px;
        height: 20.39px;
        margin: 0 auto 2px
    }

    header #sp_header div.sp_header_items_row2 ul li a.phone:before {
        width: 20.01px;
        height: 20px;
        margin: 0 auto 2px
    }

    header #sp_header div.sp_header_items_row2 ul #btn_menu {
        padding: 5px 0 10px
    }

    .menupanel .menupanelitem ul li a {
        font-size: 1rem
    }

    #cnav li a {
        padding-top: 33px;
        background-size: 26px auto;
        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: .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 auto;
        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: .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
    }


    #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 0
    }

    #pickup li h3 {
        font-size: 1.8rem
    }

    #pickup li p {
        font-size: 1.2rem
    }
}

@media only screen and (min-width: 768px) {
    .accordion_h:hover {
        opacity: .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 Sans SC", serif !important;
        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: 0;
        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: 0
    }

    #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: 0
    }

    #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") no-repeat center center, url("/top/img/topslide_11bg_2.jpg") no-repeat center center;
        background-size: auto 100%, auto auto
    }
}

@media only screen and (min-width: 1600px) {
    #topslide .slide11 {
        background: url("../image/topslide_11.png") no-repeat center center, url("/top/img/topslide_11bg_3.jpg") no-repeat center center;
        background-size: auto 100%, auto auto
    }
}

@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: 0 0 20px 0;
        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
    }
}


.index_yz .mv_items_container {
    margin-top: 60px
}

.index_yz .mv_items_container .mv_tabmenus {
    width: 100%;
    box-sizing: border-box
}

.index_yz .mv_items_container .mv_tabmenus ul {
    width: 100%;
    margin: 0 auto;
    list-style-type: none;
    padding: 0 30px;
    display: flex;
    box-sizing: border-box;
    gap: 0 2px
}

.index_yz .mv_items_container .mv_tabmenus ul li {
    width: 33.333%;
    padding: 15px 10px;
    text-align: center;
    background: #bab3a5;
    color: #fff;
    cursor: pointer
}

.index_yz .mv_items_container .mv_tabmenus ul li.act {
    background: #fff;
    color: #333
}

.index_yz .mv_items_container .mv_tabmenus ul.tab2btn li {
    width: 50%
}

.index_yz .mv_items_container .mv_tabmenus ul.tab3btn li {
    width: 33.333%
}

.index_yz .mv_items_container .mv_tabmenus ul.tab4btn li {
    width: 25%
}

.index_yz .mv_items_container .mv_tabmenus ul.tab5btn li {
    width: 20%
}

.index_yz .mv_items_container .mv_tabmenus .tabmenu {
    transition: all .3s
}

.index_yz .mv_items_container .mv_tabmenus .tabmenu:hover {
    font-weight: bold
}

.index_yz .mv_items_container .mv_itemslist {
    padding: 30px;
    background: #fff;
    height: 39vh;
    overflow-y: auto
}

.index_yz .mv_items_container .mv_itemslist.adjh1 {
    height: 30vh
}

.index_yz .mv_items_container .mv_itemslist::-webkit-scrollbar {
    width: 6px
}

.index_yz .mv_items_container .mv_itemslist::-webkit-scrollbar-track {
    background-color: #e6e6e6
}

.index_yz .mv_items_container .mv_itemslist::-webkit-scrollbar-thumb {
    background-color: #bab3a5
}

.index_yz .mv_items_container .mv_itemslist table {
    border-collapse: collapse;
    width: 100%;
    padding: 0;
    margin: 0 auto;
    box-sizing: border-box
}

.index_yz .mv_items_container .mv_itemslist table th {
    padding: 10px;
    width: 30%
}

.index_yz .mv_items_container .mv_itemslist table td {
    padding: 10px;
    width: 70%
}

.index_yz .mv_items_container .mv_itemslist table.itemborder th {
    padding: 10px;
    width: 30%;
    border-bottom: 1px solid #e9e9e9
}

.index_yz .mv_items_container .mv_itemslist table.itemborder td {
    padding: 10px;
    width: 70%;
    border-bottom: 1px solid #e9e9e9
}

.index_banner .swiper-slide>img {
    width: 100%;
}

#index_blogs {
    margin-bottom: 5%;
}

#index_blogs .inner {
    max-width: 1000px;
    width: 90%;
    margin: 0 auto;
}

#index_blogs .inner h2 {
    font-size: 25px;
    color: #509cd3;
    text-align: center;
    margin-bottom: 5%;
}

#index_blogs .inner h2:after {
    content: '';
    display: block;
    background-color: #509cd3;
    width: 90px;
    height: 2px;
    margin: 1% auto;
}

#index_blogs .inner .list {
    display: flex;
    flex-wrap: wrap;
}

#index_blogs .inner .list .item {
    width: calc(100% / 3 - 2%);
    margin-right: 2%;
}

#index_blogs .inner .list .item>a {
    display: block;
}

#index_blogs .inner .list .pic {}

#index_blogs .inner .list .pic>img {}

#index_blogs .inner .list .tit {
    margin-top: 5%;
    color: #333;
    font-size: 15px;
}

#index_blogs .inner .list .date {
    font-size: 15px;
    color: #333;
}

#index_blogs .inner .list .tag {
    border: 1px solid #509cd3;
    width: 100px;
    text-align: center;
    line-height: 27px;
    font-size: 15px;
    margin-top: 3%;
    padding-top: 2px;
    color: #509cd3;
}

#index_blogs .inner .list .item>a:hover img{
    opacity: .9;
}

#index_blogs .inner .list .item>a:hover .tit{
    color: #509cd3;
}

@media only screen and (max-width: 767px) {
    #column {
        padding: 0 5%;
    }

    #column .pic {
        width: 100%;
        position: static;
        margin-top: 10%;
    }

    #column .con {
        width: 100%;
        margin-left: 0;
        margin-top: 10%;
    }

    #index_blogs .inner .list .item {
        width: calc(100% / 2 - 3%);
        margin-right: 6%;
        margin-bottom: 10%;
    }

    #index_blogs .inner .list .item:nth-child(2n+2) {
        margin-right: 0;
    }

    #index_blogs .inner .list .tit,
    #index_blogs .inner .list .date {
        font-size: 14px;
        text-overflow: ellipsis;
        overflow: hidden;
        white-space: nowrap;
    }
    .foot_logo>a{
        display: block;
        text-align: center;
    }
}

.foot_logo{
    max-width: 260px;
    margin: 0 auto;
}
.foot_logo>a{
    display: block;
}