@charset 'UTF-8';

*,
*::before,
*::after
{
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
}

*
{
    margin: 0;
}

html,
body
{
    height: 100%;
}

body
{
    line-height: 1.5;

    -webkit-font-smoothing: antialiased;
}

img,
picture,
video,
canvas,
svg
{
    max-width: 100%;
}

input,
button,
textarea,
select
{
    font: inherit;
}

p,
h1,
h2,
h3,
h4,
h5,
h6
{
    overflow-wrap: break-word;
}

#root,
#__next
{
    isolation: isolate;
}

@font-face
{
    font-family: 'Slash';
    font-weight: 600;
    font-style: normal;

    font-display: swap;
    src: url(https://fonts.gstatic.com/s/mplus1p/v28/e3tmeuShHdiFyPFzBRrQDBcgfivGoOYmg_dUa_BuiDU9F33s7CtHVU4.109.woff2) format('woff2');
    unicode-range: U+ff0f-ff10;
}

html
{
    font-size: 2.6666666667vw;

    scroll-padding-top: 6rem;
}

:root,
html,
body
{
    width: 100%;
    height: auto;

    color: #121212;
    background: #fff;

    -webkit-print-color-adjust: exact;
}

body
{
    font-family: 'Noto Sans JP', 'Yu Gothic Medium', 'Yu Gothic', YuGothic, 游ゴシック体, メイリオ, Meiryo, 'ＭＳ Ｐゴシック', sans-serif;
    font-size: 1.4rem;
    font-size: max(1.4rem, 13px);
    font-weight: 400;
    line-height: 1.8;

    overflow-x: hidden;

    letter-spacing: .05em;
}

img
{
    max-width: 100%;
    height: auto;

    vertical-align: bottom;
}

ul,
ol
{
    padding: 0;
}

li
{
    list-style-type: none;
}

a
{
    text-decoration: none;

    color: #121212;
}

a:focus
{
    text-decoration: none;
}

.ua-ie a:hover
{
    text-decoration: none;
}

a:hover
{
    color: #121212;
}

table
{
    border-collapse: collapse;
}

input[type=submit],
input[type=button]
{
    -webkit-box-sizing: content-box;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;

    cursor: pointer;

    border: none;
    border-radius: 0;

    -webkit-appearance: button;
       -moz-appearance: button;
            appearance: button;
}

input[type=submit]::-webkit-search-decoration,
input[type=button]::-webkit-search-decoration
{
    display: none;
}

input[type=submit]:focus,
input[type=button]:focus
{
    outline-offset: -2px;
}

button
{
    padding: 0;

    cursor: pointer;

    border: none;
    background-color: transparent;

    -webkit-appearance: none;
       -moz-appearance: none;
            appearance: none;
}

fieldset
{
    min-width: 0;
    margin: 0;
    padding: 0;

    border: 0;
}

td,
th
{
    text-align: left;
}

/*splide*/
.splide__pagination{
  position:static;
margin:20px auto;
}
.splide__pagination__page.is-active{
  background: #000;
}
.splide__arrow--prev {
  left: 0;
  transform: translate(-50%, 0);
}
.splide__arrow--next{
  right: 0;
  transform: translate(50%, 0);
}


.sr-only
{
    position: absolute;
    z-index: 9999;

    display: block;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);

    width: 1px;
    height: 1px;
    margin: -1px;
    padding: 0;

    text-align: center;

    border: 0;
    background: #fff;
}

.sr-only-focusable:active,
.sr-only-focusable:focus
{
    position: relative;

    overflow: visible;
    clip: auto;

    width: auto;
    height: auto;
    margin: 0;
}

.sp-only
{
    display: block !important;
}

.sp-tab-only
{
    display: block !important;
}

.tab-pc-only
{
    display: none !important;
}

.pc-only
{
    display: none !important;
}

.header-observer
{
    position: absolute;
    top: 10rem;

    width: 1px;
    height: 1px;

    background: transparent;
}

.scroll-top-observer
{
    position: absolute;
    top: 20rem;

    width: 1px;
    height: 1px;

    background: transparent;
}

[data-scroll-base]
{
    -webkit-transform: translateY(10px);
            transform: translateY(10px);

    opacity: 0;
}

[data-scroll-base].is-fadein
{
    -webkit-transition: opacity 1.5s ease, -webkit-transform 1.5s ease;
            transition: opacity 1.5s ease, -webkit-transform 1.5s ease;
            transition: opacity 1.5s ease, transform 1.5s ease;
            transition: opacity 1.5s ease, transform 1.5s ease, -webkit-transform 1.5s ease;
    -webkit-transform: translateY(0);
            transform: translateY(0);

    opacity: 1;
}

@font-face
{
    font-family: 'swiper-icons';
    font-weight: 400;
    font-style: normal;

    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');
}

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

.swiper-container
{
    position: relative;
    /* Fix of Webkit flickering */
    z-index: 1;

    overflow: hidden;

    margin-right: auto;
    margin-left: auto;
    padding: 0;

    list-style: none;
}

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

    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
}

.swiper-wrapper
{
    position: relative;
    z-index: 1;

    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -webkit-box-sizing: content-box;
            box-sizing: content-box;
    width: 100%;
    height: 100%;

    -webkit-transition-property: -webkit-transform;
            transition-property: -webkit-transform;
            transition-property:         transform;
            transition-property:         transform, -webkit-transform;
}

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

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

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

    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
}

.swiper-container-free-mode > .swiper-wrapper
{
    margin: 0 auto;

    -webkit-transition-timing-function: ease-out;
            transition-timing-function: ease-out;
}

.swiper-container-pointer-events
{
    -ms-touch-action: pan-y;
        touch-action: pan-y;
}

.swiper-container-pointer-events.swiper-container-vertical
{
    -ms-touch-action: pan-x;
        touch-action: pan-x;
}

.swiper-slide
{
    position: relative;

    width: 100%;
    height: 100%;

    -webkit-transition-property: -webkit-transform;
            transition-property: -webkit-transform;
            transition-property:         transform;
            transition-property:         transform, -webkit-transform;

    -ms-flex-negative: 0;
    flex-shrink: 0;
}

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

/* Auto Height */

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

.swiper-container-autoheight .swiper-wrapper
{
    -webkit-transition-property: height, -webkit-transform;
            transition-property: height, -webkit-transform;
            transition-property: transform, height;
            transition-property: transform, height, -webkit-transform;

    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
}

/* 3D Effects */

.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;
    z-index: 10;
    top: 0;
    left: 0;

    width: 100%;
    height: 100%;

    pointer-events: none;
}

.swiper-container-3d .swiper-slide-shadow-left
{
    background-image: -webkit-gradient(linear, right top, left top, from(rgba(0, 0, 0, .5)), to(rgba(0, 0, 0, 0)));
    background-image: linear-gradient(to left, rgba(0, 0, 0, .5), rgba(0, 0, 0, 0));
}

.swiper-container-3d .swiper-slide-shadow-right
{
    background-image: -webkit-gradient(linear, left top, right top, from(rgba(0, 0, 0, .5)), to(rgba(0, 0, 0, 0)));
    background-image: linear-gradient(to right, rgba(0, 0, 0, .5), rgba(0, 0, 0, 0));
}

.swiper-container-3d .swiper-slide-shadow-top
{
    background-image: -webkit-gradient(linear, left bottom, left top, from(rgba(0, 0, 0, .5)), to(rgba(0, 0, 0, 0)));
    background-image: linear-gradient(to top, rgba(0, 0, 0, .5), rgba(0, 0, 0, 0));
}

.swiper-container-3d .swiper-slide-shadow-bottom
{
    background-image: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, .5)), to(rgba(0, 0, 0, 0)));
    background-image: linear-gradient(to bottom, rgba(0, 0, 0, .5), rgba(0, 0, 0, 0));
}

/* CSS Mode */

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

    scrollbar-width: none;
    /* For Firefox */
    -ms-overflow-style: none;
    /* For Internet Explorer and Edge */
}

.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;
}

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

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

.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;
}
.mb20 {
  margin-bottom: 20px;
}

.l-content
{
    padding: 4.6rem 0 8rem;
}

.l-footer
{
    padding: 5rem 0 3rem;
}

.l-footer__logo
{
    text-align: center;
}

.l-footer__logo a
{
    -webkit-transition: opacity .25s;
            transition: opacity .25s;
}

.l-footer__logo a:focus
{
    opacity: .7;
}

.ua-ie .l-footer__logo a:hover
{
    opacity: .7;
}

.l-footer__logo img
{
    width: auto;
    height: 6rem;
}

.l-footer__sns
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    margin-top: 1.6rem;

    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    gap: .8rem 1.2rem;
}

.l-footer__sns-item
{
    -webkit-transition: opacity .25s;
            transition: opacity .25s;
}

.l-footer__sns-item:focus
{
    opacity: .7;
}

.ua-ie .l-footer__sns-item:hover
{
    opacity: .7;
}

.l-footer__nav
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    margin-top: 2rem;

    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    gap: 1rem 1.6rem;
}

.l-footer__nav-item
{
    font-size: 1.3rem;
    font-size: max(1.3rem, 12px);
}

.l-footer__nav-item a
{
    -webkit-transition: opacity .25s;
            transition: opacity .25s;
}

.l-footer__nav-item a:focus
{
    opacity: .7;
}

.ua-ie .l-footer__nav-item a:hover
{
    opacity: .7;
}

.l-footer__btn
{
    font-size: 1.3rem;
    font-size: max(1.3rem, 12px);

    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    width: 14rem;
    height: 4rem;
    margin: 2.8rem auto 0;

    -webkit-transition: color .25s ease, background .25s ease;
            transition: color .25s ease, background .25s ease;

    color: #fff;
    border: 1px solid #121212;
    background: #121212;

    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.l-footer__btn:hover
{
    color: #fff;
}

.l-footer__btn:focus
{
    color: #121212;
    background: transparent;
}

.ua-ie .l-footer__btn:hover
{
    color: #121212;
    background: transparent;
}

.l-footer__link
{
    margin-top: 5rem;
}

.l-footer__link-item
{
    padding: 1.2rem 1.2rem 1rem;

    border: 1px solid #e3e3e3;
    border-radius: 6px;
}

.l-footer__link-item + .l-footer__link-item
{
    margin-top: 2rem;
}

.l-footer__link-item a
{
    -webkit-transition: opacity .25s;
            transition: opacity .25s;
}

.l-footer__link-item a:focus
{
    opacity: .8;
}

.ua-ie .l-footer__link-item a:hover
{
    opacity: .8;
}

.l-footer__link-image
{
    aspect-ratio: 370/113;
}

.l-footer__link-image img
{
    width: 100%;
    height: 100%;

    -o-object-fit: cover;
       object-fit: cover;
}

.l-footer__link-title
{
    font-size: 1.3rem;
    font-size: max(1.3rem, 12px);
    font-weight: 700;

    margin-top: .5em;

    text-align: center;
}

.l-footer__copylight
{
    font-size: 1.2rem;
    font-size: max(1.2rem, 11px);

    margin-top: 5rem;

    text-align: center;
}

.l-hamburger
{
    position: fixed;
    z-index: 1001;
    top: 0;
    right: 0;

    display: block;

    width: 6rem;
    height: 6rem;

    color: inherit;
}

.l-hamburger__icon
{
    position: absolute;
    top: 50%;
    left: 50%;

    width: 3rem;
    height: 1.8rem;

    -webkit-transition: left .35s ease;
            transition: left .35s ease;
    -webkit-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
}

.l-hamburger__icon span
{
    position: absolute;
    top: 0;
    left: 0;

    display: block;

    width: 100%;
    height: .2rem;
    min-height: 2px;

    -webkit-transition: .35s ease-in-out;
            transition: .35s ease-in-out;

    background: currentColor;
}

.is-change .l-hamburger__icon span
{
    background: #121212;
}

.is-open .l-hamburger__icon span
{
    background: #fff;
}

.l-hamburger__icon span:nth-child(1)
{
    z-index: 1002;
    top: 0;
}

.is-open .l-hamburger__icon span:nth-child(1)
{
    top: 50%;

    -webkit-transform: rotate(45deg);
            transform: rotate(45deg);
}

.l-hamburger__icon span:nth-child(2)
{
    z-index: 1004;
    top: 50%;
}

.is-open .l-hamburger__icon span:nth-child(2)
{
    opacity: 0;
}

.l-hamburger__icon span:nth-child(3)
{
    z-index: 1004;
    top: 100%;
}

.is-open .l-hamburger__icon span:nth-child(3)
{
    top: 50%;

    -webkit-transform: rotate(-45deg);
            transform: rotate(-45deg);
}

.l-header
{
    position: fixed;
    z-index: 1000;
    top: 0;
    left: 0;

    width: 100%;
}

.l-header__container
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    width: 100%;
    height: 6rem;
    padding: 0 1.2rem;

    -webkit-transition: background .35s;
            transition: background .35s;

    color: #fff;

    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.is-change .l-header__container
{
    color: #121212;
    background: #fff;
}

.l-header--opaque .l-header__container
{
    color: #121212;
    background: #fff;
}

.l-header__logo
{
    font-size: 0;

    -ms-flex-negative: 0;
    flex-shrink: 0;
}

.l-header__logo a
{
    position: relative;

    display: block;
    overflow: hidden;

    width: 11.2rem;
    height: 3.4rem;
    padding-top: 3.4rem;

    -webkit-transition: opacity .25s;
            transition: opacity .25s;
}

.l-header__logo a::before,
.l-header__logo a::after
{
    position: absolute;
    top: 0;
    left: 0;

    width: 100%;
    height: 100%;

    content: '';
}

.l-header__logo a::before
{
    background: url(../images/common/logo-white.svg) center center/contain no-repeat;
}

.l-header__logo a::after
{
    -webkit-transition: opacity .35s;
            transition: opacity .35s;

    opacity: 0;
    background: url(../images/common/logo.svg) center center/contain no-repeat;
}

.is-change .l-header__logo a::after
{
    opacity: 1;
}

.l-header--opaque .l-header__logo a::after
{
    opacity: 1;
}

.l-header__logo a:focus
{
    opacity: .7;
}

.ua-ie .l-header__logo a:hover
{
    opacity: .7;
}

.l-header__body
{
    position: fixed;
    top: 0;
    left: 0;

    display: none;
    overflow-y: auto;

    width: 100%;
    height: 100%;
    max-height: 100svh;

    background: #121212;
}

.l-info
{
    padding: 5rem 0;

    color: #fff;
    background: #121212;
}

.l-info-brown
{
  background:#48310E;

}

.l-info__map iframe
{
    width: 100%;
    height: 30rem;
}

.l-info__body
{
    padding-top: 3rem;
}

.l-info__logo
{
    height: 4.2rem;
}

.l-info__title-text
{
    font-size: 1.3rem;
    font-size: max(1.3rem, 12px);
    line-height: 1.2;

    display: block;

    margin-top: 1em;
}

.l-info__tel
{
    position: relative;

    margin-top: 3rem;
    padding-left: 2rem;
}

.l-info__tel::before
{
    position: absolute;
    top: .1em;
    left: 0;

    width: 1.2rem;
    height: 2.2rem;

    content: '';

    background: url(../images/common/icon_tel.svg) center center/contain no-repeat;
}

.l-info__tel-number
{
    font-family: 'Poppins', sans-serif;
    font-size: 2.5rem;
    font-size: max(2.5rem, 20px);
    font-weight: 600;
    line-height: 1;

    color: #fff;
}

.l-info__tel-number:hover
{
    color: #fff;
}

.l-info__tel-note
{
    font-size: 1.2rem;
    font-size: max(1.2rem, 11px);

    display: block;
}

.l-info__data
{
    font-size: 1.3rem;
    font-size: max(1.3rem, 12px);

    margin-top: 2rem;
}

.l-nav__list
{
    padding: 7rem 6.4vw 6rem;
}

.l-nav__item
{
    font-size: 1.5rem;
    font-size: max(1.5rem, 14px);

    border-bottom: 1px solid #444;
}

.l-nav__item a
{
    position: relative;

    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    height: 6.8rem;

    -webkit-transition: opacity .25s;
            transition: opacity .25s;

    color: #fff;

    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.l-nav__item a:focus
{
    opacity: .7;
}

.ua-ie .l-nav__item a:hover
{
    opacity: .7;
}

.l-nav__item--reserve
{
    margin-top: 2rem;

    border-bottom: none;
}

.l-nav__item--reserve a
{
    height: 8rem;

    color: #121212;
    background: #fff;
}

.l-nav__reserve
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
        flex-direction: column;

    max-width: 28rem;
    margin: 0 auto;

    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.l-nav__reserve-text-en
{
    font-family: 'Poppins', sans-serif;
    font-size: 2.3rem;
    font-size: max(2.3rem, 18px);
    font-weight: 600;
    line-height: 1.2;

    display: block;
}

.l-nav__reserve-text-ja
{
    font-size: 1.2rem;
    font-size: max(1.2rem, 12px);
    font-weight: 600;

    display: block;
}

.l-reserve
{
    position: relative;

    padding: 5rem 0;

    color: #fff;
    background: #121212 url(../images/common/reserve_bg.jpg) 10% center/cover no-repeat;
}

.l-reserve::before
{
    position: absolute;
    top: 0;
    left: 0;

    width: 100%;
    height: 100%;

    content: '';

    background: rgba(0, 0, 0, .5);
}

.l-reserve__body
{
    position: relative;
    z-index: 1;
}

.l-reserve__text
{
    font-weight: 700;
    line-height: 2;

    margin-top: 3rem;
}

.l-reserve__btn
{
    font-size: 1.6rem;
    font-size: max(1.6rem, 14px);
    font-weight: 700;

    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    max-width: 64rem;
    height: 6rem;
    margin: 3rem auto 0;

    -webkit-transition: background .25s ease;
            transition: background .25s ease;

    color: #fff;
    border: 2px solid #fff;

    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.l-reserve__btn:hover
{
    color: #fff;
}

.l-reserve__btn:focus
{
    background: rgba(255, 255, 255, .3);
}

.ua-ie .l-reserve__btn:hover
{
    background: rgba(255, 255, 255, .3);
}

.l-reserve__note
{
    display: block;

    margin-top: 1em;

    text-align: center;
}

.l-wrapper
{
    position: relative;

    overflow: hidden;

    width: 100%;
}

.c-breadcrumb
{
    position: relative;

    overflow: auto;
    overflow-x: auto;
    overflow-y: hidden;

    margin-top: 7rem;
    padding-left: 1.2rem;

    white-space: nowrap;

    color: #121212;

    -webkit-overflow-scrolling: touch;
}

.c-page-head .c-breadcrumb
{
    color: #fff;
}

.c-page-link{
  border:3px solid #121212;
  padding:10px;
  margin: 20px;
  /*max-width:900px;*/
  font-size: 120%;
}
.c-page-link-sub{
  padding-left: 20px;
}
.c-page-link__list{
  padding:5px 0;
}

.c-page-link__list a{
  text-decoration: underline;
  font-weight: bold;
}

.c-list-border{
  margin-bottom: 20px;
  border:3px solid #000;
  padding:20px;
  font-size: 120%;
  font-weight: bold;
}


.c-breadcrumb__list
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}

.c-breadcrumb__item
{
    font-size: 1.2rem;
    font-size: max(1.2rem, 11px);
}

.c-breadcrumb__item + .c-breadcrumb__item
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    margin-left: 1rem;

    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.c-breadcrumb__item + .c-breadcrumb__item::before
{
    display: inline-block;

    width: 1px;
    height: 1em;
    margin-right: 1rem;

    content: '';

    background: currentColor;
}

.c-breadcrumb__item a
{
    -webkit-transition: opacity .35s;
            transition: opacity .35s;

    color: inherit;
}

.c-breadcrumb__item a:focus
{
    opacity: .7;
}

.ua-ie .c-breadcrumb__item a:hover
{
    opacity: .7;
}

.c-btn
{
    font-family: 'Poppins', 'Noto Sans JP', 'Yu Gothic Medium', 'Yu Gothic', YuGothic, 游ゴシック体, メイリオ, Meiryo, 'ＭＳ Ｐゴシック', sans-serif;
    font-size: 1.3rem;
    font-size: max(1.3rem, 12px);

    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    max-width: 6rem;
    height: 2.6rem;

    -webkit-transition: color .25s ease, background .25s ease;
            transition: color .25s ease, background .25s ease;

    color: #fff;
    border: 1px solid #121212;
    background: #121212;

    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.c-btn__small{
  max-width: 6rem;
  height: 3rem;
}

.c-btn__open{
  cursol:pointer;
}

.c-btn[href$='.pdf']::after
{
    display: inline-block;

    width: 1.5rem;
    height: 1.7rem;
    margin-left: .5em;

    content: '';
    -webkit-transition: -webkit-filter .25s ease;
            transition: -webkit-filter .25s ease;
            transition:         filter .25s ease;
            transition:         filter .25s ease, -webkit-filter .25s ease;

    background: url(../images/common/icon_pdf.svg) center center/contain no-repeat;

    -webkit-filter: brightness(0) invert(1);
            filter: brightness(0) invert(1);
}

.c-btn[href$='.pdf']:focus::after
{
    -webkit-filter: none;
            filter: none;
}

.ua-ie .c-btn[href$='.pdf']:hover::after
{
    -webkit-filter: none;
            filter: none;
}

.c-btn:hover
{
    color: #fff;
}

.c-btn:focus
{
    color: #121212;
    background: transparent;
}

.ua-ie .c-btn:hover
{
    color: #121212;
    background: transparent;
}

.c-btn--white
{
    border-color: #fff;
}

.c-btn--white:focus
{
    color: #121212;
    background: #fff;
}

.ua-ie .c-btn--white:hover
{
    color: #121212;
    background: #fff;
}

.c-btn--black-l {
    width: fit-content;
    max-width: none;
    height: auto;
    min-height: 4.6rem;
    margin: 0 auto;
    padding: 8px 24px;
    text-decoration: none;
}

.c-column-list
{
    margin-top: 3rem;
}

.c-column-list__item + .c-column-list__item
{
    margin-top: 3rem;
}

.c-column-list__item a:focus .c-column-list__item-image img
{
    -webkit-transform: translate(-50%, -50%) scale(1.1);
            transform: translate(-50%, -50%) scale(1.1);
}

.ua-ie .c-column-list__item a:hover .c-column-list__item-image img
{
    -webkit-transform: translate(-50%, -50%) scale(1.1);
            transform: translate(-50%, -50%) scale(1.1);
}

.c-column-list__item-image
{
    position: relative;

    overflow: hidden;

    aspect-ratio: 30/17;
}

.c-column-list__item-image img
{
    position: absolute;
    top: 50%;
    left: 50%;

    width: 100%;
    height: 100%;

    -webkit-transition: -webkit-transform .7s;
            transition: -webkit-transform .7s;
            transition:         transform .7s;
            transition:         transform .7s, -webkit-transform .7s;
    -webkit-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);

    -o-object-fit: cover;
       object-fit: cover;
}

.c-column-list__item-date
{
    font-family: 'Poppins', sans-serif;
    font-size: 1.3rem;
    font-size: max(1.3rem, 12px);

    display: block;

    margin-top: 1.4rem;
}

.c-column-list__item-title
{
    display: -webkit-box;
    overflow: hidden;

    margin-top: .8rem;

    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
}

.c-container
{
    width: 100%;
    padding: 0 5vw;
}

.c-image-block
{
    width: 100%;
    height: 20rem;
    margin-top: 2rem;

    background: #eee;
}

.c-image-block img
{
    width: 100%;
    height: 100%;

    -o-object-fit: cover;
       object-fit: cover;
}

.c-image-block:first-child
{
    margin-top: 0;
}

.c-news-list
{
    margin-top: 3rem;
}

.c-news-list__item
{
    padding-bottom: 2rem;

    border-bottom: 1px solid #e3e3e3;
}

.c-news-list__item + .c-news-list__item
{
    padding-top: 2rem;
}

.c-news-list__item-head
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-column-gap: 1rem;
       -moz-column-gap: 1rem;
            column-gap: 1rem;
}

.c-news-list__item-date
{
    font-family: 'Poppins', sans-serif;
    font-size: 1.3rem;
    font-size: max(1.3rem, 12px);
}

.c-news-list__item-category
{
    font-size: 1.2rem;
    font-size: max(1.2rem, 11px);
    font-weight: 700;

    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    width: 9rem;
    height: 2rem;
    padding-bottom: .1em;

    border: 1px solid #121212;

    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.c-news-list__item-body
{
    padding-top: 1rem;
}

.c-news-list__item-title
{
    display: -webkit-box;
    overflow: hidden;

    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
}

.c-news-list__item-title a
{
    display: inline-block;
}

.c-page-head
{
    position: relative;

    height: 28rem;
}

.c-page-head__bg
{
    position: absolute;
    top: 0;
    left: 0;

    width: 100%;
    height: 100%;

    background: #121212;
}

.c-page-head__bg img
{
    width: 100%;
    height: 100%;

    -o-object-fit: cover;
       object-fit: cover;
}

.c-page-head__layer
{
    position: absolute;
    top: 0;
    left: 0;

    width: 100%;
    height: 100%;

    color: #fff;
}

.c-page-head__title
{
    font-size: 1.4rem;
    font-size: max(1.4rem, 12px);
    line-height: 1.6;

    margin-top: 8rem;
}

.c-page-head__title::after
{
    font-family: 'Slash', 'Poppins', sans-serif;
    font-size: 3.8rem;
    font-size: max(3.8rem, 30px);
    font-weight: 600;

    display: block;

    content: attr(data-title-en);
}

.c-pagination
{
    margin: 3rem auto 0;
}

.c-pagination ul
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    gap: .5rem .2rem;
}

.c-pagination li
{
    font-size: 1.3rem;
    font-size: max(1.3rem, 12px);

    text-align: center;
}

.c-pagination li.active
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    width: 4rem;
    height: 4rem;

    cursor: auto;
    pointer-events: none;

    color: #fff;
    background-color: #121212;

    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.c-pagination li.active a
{
    display: block;

    width: 100%;
    height: 100%;
}

.c-pagination li a
{
    line-height: 4rem;

    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    width: 4rem;
    height: 4rem;
    padding: 0 1.2rem;

    -webkit-transition: background .35s ease;
            transition: background .35s ease;

    color: inherit;

    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.c-pagination li a:focus
{
    background: #eee;
}

.ua-ie .c-pagination li a:hover
{
    background: #eee;
}

.c-pagination li a[href='']
{
    pointer-events: none;

    opacity: .7;
}

.c-post::after
{
    display: block;
    clear: both;

    content: '';
}

.c-post h2,
.c-post h3,
.c-post h4,
.c-post h5,
.c-post h6
{
    font-weight: 700;
    line-height: 1.666;
}

.c-post h2:first-child,
.c-post h3:first-child,
.c-post h4:first-child,
.c-post h5:first-child,
.c-post h6:first-child
{
    margin-top: 0;
}

.c-post h2
{
    font-size: 2rem;
    font-size: max(2rem, 18px);

    position: relative;

    margin-top: 4rem;
    padding-bottom: .3em;

    border-bottom: 1px solid #ccc;
}

.c-post h3
{
    font-size: 1.8rem;
    font-size: max(1.8rem, 16px);

    margin-top: 3rem;
}

.c-post h4
{
    font-size: 1.6rem;
    font-size: max(1.6rem, 14px);

    margin-top: 2rem;
}

.c-post h5
{
    font-size: 1.5rem;
    font-size: max(1.5rem, 14px);

    margin-top: 1.5rem;
}

.c-post h6
{
    font-size: 1.4rem;
    font-size: max(1.4rem, 13px);

    margin-top: 1.5rem;
}

.c-post h2 + h3
{
    margin-top: 2rem;
}

.c-post h2 + p,
.c-post h2 + ul,
.c-post h2 + ol
{
    margin-top: 1.2rem;
}

.c-post h3 + p,
.c-post h3 + ul,
.c-post h3 + ol,
.c-post h4 + p,
.c-post h4 + ul,
.c-post h4 + ol,
.c-post h5 + p,
.c-post h5 + ul,
.c-post h5 + ol,
.c-post h6 + p,
.c-post h6 + ul,
.c-post h6 + ol
{
    margin-top: .8rem;
}

.c-post p
{
    margin-top: 2rem;
}

.c-post p:first-child
{
    margin-top: 0;
}

.c-post a
{
    text-decoration: underline;
}

.c-post a img
{
    -webkit-transition: opacity .35s;
            transition: opacity .35s;
}

.c-post a:focus
{
    text-decoration: none;
}

.c-post a:focus img
{
    opacity: .9;
}

.ua-ie .c-post a:hover
{
    text-decoration: none;
}

.ua-ie .c-post a:hover img
{
    opacity: .9;
}

.c-post img
{
    margin: 1rem 1rem 0 0;
}

.c-post ul
{
    margin-top: 2rem;
}

.c-post ul:first-child
{
    margin-top: 0;
}

.c-post ul > li
{
    line-height: 1.666;

    position: relative;

    padding-left: .8em;
}

.c-post ul > li::before
{
    position: absolute;
    top: .65em;
    left: 0;

    width: 6px;
    height: 6px;

    content: '';

    border-radius: 50%;
    background: #121212;
}

.c-post ol
{
    margin-top: 2rem;

    counter-reset: number;
}

.c-post ol:first-child
{
    margin-top: 0;
}

.c-post ol > li
{
    line-height: 1.666;

    position: relative;

    padding-left: 2rem;
}

.c-post ol > li::before
{
    position: absolute;
    top: 0;
    left: 0;

    display: inline-block;

    margin-right: .4rem;

    content: counter(number) '.';
    counter-increment: number;
}

.c-post table
{
    width: 100%;
    margin-top: 2rem;

    background: #fff;
}

.c-post table tr:nth-child(odd)
{
    background: #f8f8f8;
}

.c-post table th,
.c-post table td
{
    line-height: 1.666;

    padding: 1rem;

    border-collapse: collapse;

    border: 1px solid #ccc;
}

.c-post table th
{
    font-weight: 500;

    color: #fff;
    background: #121212;
}

.c-paragraph{
  margin-bottom: 20px;
}

.c-section
{
    padding-bottom: 4rem;
}

.c-section + .c-section
{
    padding-top: 4rem;
}

.c-section:last-child
{
    padding-bottom: 0;
}

.c-section-bg
{
    padding: 4rem 0;

    color: #fff;
    background: #121212;
}

.c-section-bg + .c-section
{
    padding-top: 4rem;
}

.c-text
{
    max-width: 90rem;
    margin: 2rem auto 0;
}

.c-text:first-child
{
    margin-top: 0;
}

.c-title-index
{
    font-size: 1.2rem;
    font-size: max(1.2rem, 11px);
    line-height: 1.3;
}

.c-title-index::before
{
    font-family: 'Slash', 'Poppins', sans-serif;
    font-size: 2.8rem;
    font-size: max(2.8rem, 22px);
    font-weight: 600;

    display: block;

    content: attr(data-title-en);
}
.c-title-index__english{
  font-family: 'Slash', 'Poppins', sans-serif;
  font-size: 3.2rem;
  font-size: max(3.2rem, 28px);
  font-weight: 600;
  line-height: 1;
  display: block;
  text-align: center;
  margin-bottom: 0;
}
.c-title-index__line-text
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.c-title-index__line-text::before
{
    width: 1em;
    height: 1px;
    margin: .1em .5em 0 0;

    content: '';

    background: #121212;
}

.c-title-index--center
{
    text-align: center;
}

.c-title-index--white
{
    color: #fff;
}

.c-title-index--white .c-title-index__line-text::before
{
    background: #fff;
}

.c-title-primary__large{
  font-size: 2rem;
  font-size: max(2rem, 18px);
  line-height: 1.444;

  text-align: left;
}

.c-title-primary__mid{
  font-size: 1.8rem;
  font-size: max(1.8rem, 18px);
  line-height: 1.444;

  text-align: left;
}

.c-title-primary__sm{
  font-size: 1.6rem;
  font-size: max(1.6rem, 16px);
  line-height: 1.444;

  text-align: left;
}

.c-title-primary
{
    font-size: 1.8rem;
    font-size: max(1.8rem, 16px);
    line-height: 1.444;

    text-align: center;
}

.c-title-primary__navy{
  transform: rotate(-2deg);
}

.c-title-primary__navy span{
  width: 100%;
  background: #1f1f1f;
  color:#D5A7D2;
  display: block;
  margin-bottom: 10px;
}

.c-title-primary--sp__left{
  text-align: left;
}

.c-title-primary__margin{
  margin:25px 0;
}

.c-title-primary__left{
  text-align: left;
}


.c-title-primary-small
{
  font-size: 1.4rem;
  font-size: max(1.4rem, 14px);
}
.c-title-primary-small__black{
  background: #121212;
  color:#fffd00;
  padding:5px;
}

.c-title-secondary
{
    font-size: 1.8rem;
    font-size: max(1.8rem, 16px);
    line-height: 1.444;

    margin-top: 4rem;

    text-align: center;
}

.c-title-secondary:first-child
{
    margin-top: 0;
}

.c-title-secondary--left
{
    text-align: left;
}


.p-about-exercise
{
    margin-top: 2rem;
    padding: 1.4rem 1.4rem;

    border: 1px solid #e3e3e3;
}

.p-about-exercise + .p-about-exercise
{
    margin-top: 3rem;
}

.p-about-exercise__image
{
    width: 100%;
    height: 20rem;

    background: #eee;
}

.p-about-exercise__image img
{
    width: 100%;
    height: 100%;

    -o-object-fit: cover;
       object-fit: cover;
}

.p-about-exercise__body
{
    padding-top: 1.6rem;
}

.p-about-exercise__title
{
    font-size: 1.6rem;
    font-size: max(1.6rem, 14px);
    font-weight: 700;
    line-height: 1.6;

    padding: .6rem 1rem;

    color: #fff;
    background: #121212;
}

.p-about-exercise__text
{
    margin-top: 1.4rem;
}

.p-about-exercise__keyword
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    margin-top: 1.6rem;
    padding: 1rem 1.4rem;

    background: #f4f4f4;

    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    gap: .3rem 1.6rem;
}

.p-about-exercise__keyword > li
{
    font-size: 1.3rem;
    font-size: max(1.3rem, 12px);

    position: relative;

    padding-left: .8em;
}

.p-about-exercise__keyword > li::before
{
    position: absolute;
    top: .7em;
    left: 0;

    width: .5rem;
    height: .5rem;

    content: '';

    border-radius: 50%;
    background: #121212;
}

.p-about-feature
{
    margin-top: 4rem;
}

.p-about-feature__section
{
    padding-top: 4rem;
}

.p-about-feature__image
{
    background: #eee;

    aspect-ratio: 56/42;
}

.p-about-feature__image img
{
    width: 100%;
    height: 100%;

    -o-object-fit: cover;
       object-fit: cover;
}

.p-about-feature__body
{
    padding: .5rem 10px;
}

.p-about-feature__title
{
    font-size: 1.8rem;
    font-size: max(1.8rem, 16px);
    font-weight: 700;
    line-height: 1.6;
}

.p-about-feature__text
{
    margin-top: 2rem;
}

.p-detail__date
{
    font-family: 'Poppins', sans-serif;
    font-size: 1.3rem;
    font-size: max(1.3rem, 12px);
}

.p-detail__title
{
    font-size: 1.8rem;
    font-size: max(1.8rem, 16px);
    font-weight: 700;
    line-height: 1.6;

    margin-top: 1rem;
}

.p-detail__category
{
    font-size: 1.2rem;
    font-size: max(1.2rem, 11px);
    font-weight: 700;

    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    width: 9rem;
    height: 2rem;
    margin-top: 1.4rem;
    padding-bottom: .1em;

    border: 1px solid #121212;

    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.p-detail__body
{
    padding-top: 3rem;
}

.p-detail__foot
{
    margin-top: 8rem;
}

.p-detail__profile {
  display: flex;
  align-items: flex-start;
  gap: 20px;
  flex-direction: row; /* デフォルトは横並び */
  padding:10px;
  border:2px solid #666;
  margin-top: 20px;
}

.p-detail__profile-photo img {
  max-width: 250px;
  height: auto;
  margin:auto;
}

.p-detail__profile-text {
  flex: 1;
  line-height: 1.6;
}

/* 768px以下では縦並びに切り替え */
@media screen and (max-width: 768px) {
  .p-detail__profile {
    flex-direction: column;
    align-items: center; /* 画像とテキストを中央揃えにするなら */
    text-align: center;  /* テキストも中央にしたい場合 */
  }

  .p-detail__profile-text {
    text-align: left; /* 中央揃えが不要ならこれで左揃えに戻す */
  }
}

.p-facility__btn
{
    margin: 3rem auto 0;
  max-width:none;
  padding:10px 15px;
}

.p-facility__access
{
    max-width: 90rem;
    margin: 3rem auto 0;
}

.p-facility__map
{
    width: 100%;
    height: 30rem;
}

.p-facility__map iframe
{
    width: 100%;
    height: 100%;

    -o-object-fit: cover;
       object-fit: cover;
}

.p-facility__access-text
{
    margin-top: 2rem;
}

.p-facility__machine-image
{
    height: auto;
}

.p-facility__machine-image img
{
    height: auto;
}

.p-facility__machine-text
{
    max-width: initial;

    text-align: center;
}

.p-facility__machine-movie
{
    position: relative;

    max-width: 80rem;
    margin: 4rem auto 0;
}

.p-facility__machine-movie-player
{
    position: relative;

    height: 0;
    padding-bottom: 56.25%;
}

.p-facility__machine-movie-player iframe
{
    position: absolute;
    top: 0;
    left: 0;

    width: 100%;
    height: 100%;
}

.p-fitness-block
{
    padding-bottom: 3rem;

    border-bottom: 1px solid #e3e3e3;
}

.p-fitness-block + .p-fitness-block
{
    margin-top: 3rem;
}

.p-fitness-block__title
{
    font-size: 1.6rem;
    font-size: max(1.6rem, 14px);
    font-weight: 700;
}

.p-fitness-block__text
{
    margin-top: 1em;
}

.p-fitness-block__text ul
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    margin: .5em 0;

    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    gap: .3rem 1.2rem;
}

.p-fitness-block__text li
{
    position: relative;

    padding-left: .8em;
}

.p-fitness-block__text li::before
{
    position: absolute;
    top: .75em;
    left: 0;

    width: .5rem;
    height: .5rem;

    content: '';

    border-radius: 50%;
    background: #121212;
}

.p-fitness__description
{
    max-width: 90rem;
    margin: 2rem auto 0;
}

.p-fitness__link
{
    display: block;

    margin-top: 1em;

    text-align: right;
}

.p-fitness__link a
{
    text-decoration: underline;
}

.p-fitness__link a[target=_blank]
{
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;

    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.p-fitness__link a[target=_blank]::after
{
    display: inline-block;

    width: 1rem;
    height: 1rem;
    margin-left: .4em;

    content: '';

    background: url(../images/common/icon_external.svg) center center/contain no-repeat;
}

.p-flow
{
    margin-top: 3rem;
}

.p-flow__item + .p-flow__item
{
    margin-top: 4rem;
}

.p-flow__item-body
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    -webkit-column-gap: 1.8rem;
       -moz-column-gap: 1.8rem;
            column-gap: 1.8rem;
}

.p-flow__item-step
{
    font-family: 'Poppins', sans-serif;
    font-weight: 700;

    display: block;

    width: 5.4rem;
    padding: .6rem .6rem 2rem;

    text-align: center;

    color: #fff;
    background: #121212;

    -ms-flex-negative: 0;
    flex-shrink: 0;
    -webkit-clip-path: polygon(100% 0, 100% calc(100% - 1.8rem), 50% 100%, 0 calc(100% - 1.8rem), 0 0);
            clip-path: polygon(100% 0, 100% calc(100% - 1.8rem), 50% 100%, 0 calc(100% - 1.8rem), 0 0);
}

.p-flow__item-step-text
{
    font-size: 1.2rem;
    font-size: max(1.2rem, 11px);
}

.p-flow__item-step-num
{
    font-size: 1.6rem;
    font-size: max(1.6rem, 14px);
    line-height: 1.2;
}

.p-flow__item-content
{
    padding-top: .4rem;

    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
}

.p-flow__item-title
{
    font-size: 1.8rem;
    font-size: max(1.8rem, 14px);
    font-weight: 700;
    line-height: 1.666;
}

.p-flow__item-text
{
    margin-top: 1rem;
}

.p-flow__item-image
{
    margin: 2rem 0 0 7.2rem;
}

.p-flow__item-image img
{
    width: 100%;
    height: auto;
}

/**/

.p-index-content{

}

.p-index-about
{
    padding: 6rem 0 0;
}

.p-index-about__inner{
  max-width:980px;
  padding:20px 20px 0 20px;
  margin:0 auto;
}

.p-index-about__main
{
    position: relative;

    overflow: hidden;

    padding-bottom: 5rem;
}

.p-index-about__main::after
{
    font-family: 'Poppins', sans-serif;
    font-size: 5rem;
    font-size: max(5rem, 24px);
    font-weight: 500;
    line-height: 1;

    position: absolute;
    z-index: 0;
    bottom: -.5rem;
    left: 50%;

    content: 'MEDICAL FITNESS';
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
    white-space: nowrap;

    color: rgba(204, 204, 204, .2);
}

.p-index-about__main-bg
{
    display: none;
}

.p-index-about__container
{
    position: relative;
    z-index: 1;
}

.p-index-about__image
{
    aspect-ratio: 800/520;
}

.p-index-about__image img
{
    width: 100%;
    height: 100%;

    -o-object-fit: cover;
       object-fit: cover;
}

.p-index-about__body
{
    padding-top: 3rem;
}

.p-index-about__concept{
  margin-bottom: 40px;
}

.p-index-about__concept__title{
  font-weight: bold;
  text-align: center;
  font-size: 2rem;
  font-size: max(2rem, 24px);
}
.p-index-about__catch
{
    font-size: 1.8rem;
    font-size: max(1.8rem, 16px);
    font-weight: 700;

    margin-top: 2rem;
}

.p-index-about__text
{
    margin-top: 2rem;
}

.p-index-about__btn
{
    margin: 3rem auto 0;
}
.p-index-about__flow{

}
.p-index-about__flow__photo {
  text-align: right;
  max-width:900px;
  margin:0 auto 60px;
  max-width:900px;
}

.p-index-about__flow__list{
  padding:25px 0 45px;
}

.p-index-about__flow__title{
  background: #1f1f1f;
  padding:15px 10px;
color:#fff;
  margin: 25px 0 45px;
  font-weight: bold;
}

.p-index-about__flow__button{
  margin-left: auto;
margin:60px 0 60px auto;
}
.p-index-about__floor{
  padding-top: 5rem;
}
.p-index-about__floor__photo{
  display: none;
  margin:45px auto;
}

.p-index-about__floor__photo.c-trigger.is-open{
  display: flex;
  flex-flow: column;
  margin:45px auto;
}

.p-index-about__floor__photo__image + .p-index-about__floor__photo__image{
  margin-top:40px;
}

.p-index-about__machine{

}

.p-index-about__machine__bar{
  margin-bottom: 25px;
background: #1f1f1f;
  color:#fffd00;
  padding:10px;
}

.p-index-about__machine__text{
  font-size: 2.4rem;
  font-size: max(2.4rem, 20px);
  line-height: 1em;
  margin-bottom: 3rem;
  font-weight: 700;
}

.p-index-about__machine__photo{
max-width: 500px;
margin: 50px auto;
}
.p-index-about__machine__image{
  max-width: 100%;
  margin-bottom: 20px;
}


.p-index-about__medical-fitness__title{
  padding: 20px 0 0;
  font-family: 'Poppins', sans-serif;
  text-align:center;
  font-size: 3.4rem;
  font-size: max(3.4rem, 30px);
  font-weight:700;
}

.p-index-about__medical-fitness__text{
  margin:20px auto 20px;
  max-width:900px;
}
.p-index-about__medical-fitness__photo{
max-width:900px;
margin:45px auto;
}

.p-index-about__movie
{
    padding: 4rem 0;

    color: #fff;
    background: #121212;
}

.p-index-about__movie-white
{
  color: #1f1f1f;
  background: #fff;
}

.p-index-about__player
{
    position: relative;

    max-width: 80rem;
    margin: 0 auto;
}

.p-index-about__player-container
{
    position: relative;

    height: 0;
    padding-bottom: 56.25%;
}

.p-index-about__player-container iframe
{
    position: absolute;
    top: 0;
    left: 0;

    width: 100%;
    height: 100%;
}
.p-index-about__questionary{
display:flex;
  flex-wrap: wrap;
}
.p-index-about__questionary-title{
  margin-bottom: 15px;
  text-align: center;
}

.p-index-about__questionary-list{
  display:flex;
  position:relative;
  z-index:0;
  padding:10px 5px;
  justify-content: space-between;
  margin-bottom: 20px;
  width: 50%;
  flex-flow:column;
}
/*.p-index-about__questionary-list:before{*/
/*  content:"";  */
/*  height:100%;*/
/*  display: inline-block;*/
/*  position: absolute;*/
/*  top:0;*/
/*  left:0;*/
/*  background: #f4f4f4;*/
/*z-index:-1;*/
/*}*/
/*.p-index-about__questionary-list.is-85:before{*/
/*  width: 85%;*/
/*}*/
/*.p-index-about__questionary-list.is-71:before{*/
/*  width: 71%;*/
/*}*/
/*.p-index-about__questionary-list.is-64:before{*/
/*  width: 64%;*/
/*}*/
/*.p-index-about__questionary-list.is-921:before{*/
/*  width: 92.1%;*/
/*}*/
/*.p-index-about__questionary-list.is-98:before{*/
/*  width: 98%;*/
/*}*/

/*.p-index-about__questionary-number {*/
/*color:#1f1f1f;*/
/*  font-family: 'Poppins', sans-serif;*/
/*  font-size: 1.6rem;*/
/*  font-size: max(1.6rem, 14px);*/
/*  font-weight: 700;*/
/*}*/

.p-index-about__questionary-number__circle{
  display: flex;
  justify-content: center;
  align-items: center;
  margin-right: auto;
  margin-left: auto;
  width: 150px;
  height: 150px;
  font-weight: 700;
  background-image: radial-gradient(#f2f2f2 60%, transparent 61%), conic-gradient(#d5525f 0% 96%, #d9d9d9 96% 100%);
  border-radius: 50%;
  margin-top: auto;
    font-family: 'Poppins', sans-serif;
    font-size: 3.6rem;
    font-size: max(3.6rem, 30px);
}

.p-index-about__questionary-number__circle.is-100{
  background-image: radial-gradient(#f2f2f2 60%, transparent 61%), conic-gradient(#d5525f 0% 100%, #d9d9d9 100% 100%);
}
.p-index-about__questionary-number__circle.is-91-6{
  background-image: radial-gradient(#f2f2f2 60%, transparent 61%), conic-gradient(#d5525f 0% 100%, #d9d9d9 100% 100%);
}
.p-index-about__questionary-number__circle.is-87-5{
  background-image: radial-gradient(#f2f2f2 60%, transparent 61%), conic-gradient(#d5525f 0% 87.5%, #d9d9d9 87.5% 100%);
}

.p-index-about__questionary-number__circle.is-92{
  background-image: radial-gradient(#f2f2f2 60%, transparent 61%), conic-gradient(#d5525f 0% 92%, #d9d9d9 92% 100%);
}

.p-index-about__questionary-number__circle.is-87{
  background-image: radial-gradient(#f2f2f2 60%, transparent 61%), conic-gradient(#d5525f 0% 87%, #d9d9d9 87% 100%);
}

.p-index-about__questionary-number__circle.is-95{
  background-image: radial-gradient(#f2f2f2 60%, transparent 61%), conic-gradient(#d5525f 0% 95%, #d9d9d9 95% 100%);
}

.p-index-about__questionary-number__circle.is-99{
  background-image: radial-gradient(#f2f2f2 60%, transparent 61%), conic-gradient(#d5525f 0% 99%, #d9d9d9 99% 100%);
}

.p-index-about__questionary-number__small {
  font-size: 50%;
  transform: translate(0, 7%);
}

.p-index-about__questionary-attention{
  text-align: right;
  margin-bottom: 40px;
}

.p-index-about__questionary__spot-title{
  font-size: 1.8rem;
  font-size: max(1.8rem, 20px);
  font-weight: bold;
}

.p-index-about__questionary__spot-li{
  border:2px solid #1f1f1f;
 color:#1f1f1f;
 padding:5px;
  margin-bottom: 5px;
}

.p-index-about__questionary-voice {
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
}
.p-index-about__questionary-voice__list {
  display: flex;
  padding:20px;
border:2px solid #121212;
  margin-bottom: 15px;
  flex-wrap: wrap;
}


.p-index-about__questionary-voice__photo{
  flex-shrink: 0;
  text-align: center;
  font-weight: bold;
  margin:0 auto;

}
.p-index-about__re-birth__title {
  font-family: 'Poppins', sans-serif;
  font-weight: bold;
  font-size: 1.6rem;
  font-size: max(1.6rem, 18px);
}

.p-index-about__questionary-voice__text{
  padding:0 ;
  width:calc( 100% - 150px);
}
.p-index-about__questionary-voice__list.no2 .p-index-about__questionary-voice__photo{
order:2;
  margin-left: 10px;
  margin-right:0;
}

.p-index-about__Re-Birth-machida{
  margin-bottom: 1rem;
}

.p-index-about__re-birth__name{
  text-align: right;

}
.p-index-campaign{

}
.p-index-campaign__banner{
display:flex;
flex-wrap:wrap;
}
.p-index-campaign__banner .campaign{
  border: 1px solid #fff;
  border-radius: 12px;
  box-shadow: 0 5px 20px rgba(51, 51, 51, .1);

}

.p-index-column
{
    padding: 6rem 0;

    color: #fff;
    background: #121212;
}

.p-index-column__list
{
    margin-top: 2rem;
}

.p-index-column .c-column-list__item a
{
    color: #fff;
}

.p-index-column__btn
{
    margin: 3rem auto 0;
}
.p-index-concept{

}
.p-index-concept__loog{
max-width:450px;
margin:3rem auto;
}
.p-index-concept__text{

  margin:3rem auto 5rem;
}

.p-index-interview{
  max-width: 650px;
  padding: 80px  20px 0;
  margin:0 auto;
}

.p-index-interview-title{
  font-size: 3rem;
  font-weight: bold;
  line-height: 1.4;
}

.p-index-interview-caption{
  font-size: 2rem;
}

@media (max-width: 768px) {
  .p-index-interview{
    padding-top: 60px;
  }
  .p-index-interview-title{
    font-size: 1.6rem;
  }
  .p-index-interview-caption{
    font-size: 1.2rem;
  }
}


.p-index-consultation__ul{

}
.p-index-consultation__photo{

}
.p-index-consultation__list{
  background:#f4f4f4;
  margin-bottom: 10px;
  padding:5px;
}


.p-index-consultation__photo{
margin:20px auto;
  text-align: center;
}

.p-index-consultation__photo-square img{
  max-height:400px;
}
.p-index-features
{
  padding: 6rem 0 2rem;
}

.p-index-features__attention{
  text-align: right;
  margin-top: 10px;
}
.p-index-features__heading{

}
.p-index-features__heading-square{
  background: #B28006;
  color:#fff;
  transform: rotate(-2deg);
  padding:15px 5px;
position:relative;
  text-align: center;
  font-size: 2rem;
  font-size: max(2rem, 18px);
  line-height: 1;
}
.p-index-features__heading-square__small{
  color:#1f1f1f;
  background:#F9FF84;
  border:2px solid #DBCD38;
  position: absolute;
  top: 0;
  left: 15px;
  transform: translate(0, -75%) rotate(2deg);
  padding:5px;
  line-height: 1;
  font-size: 1.4rem;
  font-size: max(1.4rem, 16px);
}

.p-index-features__container {
  max-width: 110rem;
  margin: 3rem auto 0;
  border-top: 1px solid #bbb;
}
.p-index-features__conditions{
border:1px solid #1f1f1f;
  padding: 0 20px 20px 20px;
  font-size: 2rem;
  font-size: max(2rem, 18px);
  margin-bottom: 0;
}
.p-index-features__conditions-here{
  margin-top: 2rem;
  font-size: 2.6rem;
}
.p-index-features__conditions__title{
  font-size: 1.4rem;
  font-size: max(1.4rem, 16px);
  color:#fff;
background:#1f1f1f;
  display:inline-block;
  padding:.25em .5em .25em;
  line-height: 1;
  transform: translate(0, -75%);
}
.p-index-features__conditions__ul{
display: flex;
  flex-flow: column;
  margin-top: 10px;
}
.p-index-features__conditions__list{
  padding-left: 25px;
  width: 100%;
  position: relative;
  line-height: 1;
  margin-bottom: 15px;
  font-size: 1.4rem;
  font-size: max(1.44rem, 16px);
}
.p-index-features__conditions__list:before{
content:"";
width:20px;
  height:20px;
display:inline-block;
border: 3px solid #1f1f1f;
  position: absolute;
  top:0;
  left:0;
}

.p-index-features__conditions__list:after{
  content:"";
  width:7px;
  height:12px;
  display:inline-block;
  border-right: 3px solid #1f1f1f;
  border-bottom: 3px solid #1f1f1f;
  position: absolute;
  top:3px;
  left:7px;
  transform: rotate(45deg);
}


.p-index-features__block {
  padding-top: 1rem;
  padding-bottom: 2rem;

  border-bottom: 1px solid #bbb;
  position:relative;
}

.p-index-features__block__black {
  background:#1f1f1f;
color:#fffd00;
}
.p-index-features__block.is-new , .p-index-features__container.is-new{
  font-weight: bold;
  border:4px solid #1f1f1f;
  position:relative;
  padding-top:50px;
}

.p-index-features__block.is-new:before , .p-index-features__container.is-new:before{
  content: attr(data-title-ja);
  display:inline-block;
  background:#1f1f1f;
  color:#fff;
  position:absolute;
top:0;
  left:0;
  padding:5px 10px;
}


.p-index-features + .p-index-features
{
  margin-top: 4rem;
}

.p-index-features__title-en
{
  font-family: 'Poppins', sans-serif;
  font-weight: 600;
  line-height: 1.444;

  display: inline-block;

  color: #717171;
}

.p-index-features__head
{
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;

  padding-top: .4rem;

  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-column-gap: 1rem;
  -moz-column-gap: 1rem;
  column-gap: 1rem;
  justify-content: center;
  text-align:center;
}
.p-index-features__head.is-sp-column {
  flex-flow: column;
}
.p-index-features__title
{
  font-size: 2.2rem;
  font-size: max(2.2rem, 22px);
  font-weight: 700;
  line-height: 1.5;
}
.p-index-features__title-small
{
  font-size: 1.8rem;
  font-size: max(1.8rem, 16px);
}
.p-index-features__sub-icon {
  background: #fffd00;
  color: #121212;
  font-weight: bold;
  text-align: center;
  display: inline-block;
  padding: 0 10px;
  margin-right: 10px;
  width:100%;
}

.p-index-features__sub-icon-dark{
  background: #121212;
  color: #fffd00;
}

.p-index-features__sub-icon.is-width {
  width:95%;
margin:0 auto;
}

.p-index-features__sub-icon.is-gray {
  background: #f4f4f4;
}

.p-index-features__type
{
  font-size: 1.2rem;
  font-size: max(1.2rem, 11px);
  line-height: 1.4;

  display: inline-block;

  margin-left: auto;
  padding: .4rem 1.2rem;

  border: 1px solid #fff;

  -ms-flex-negative: 0;
  flex-shrink: 0;
}

.p-index-features__body
{
  padding-top: 2rem;
}

.p-index-features__banner {
  padding-top: 2rem;
  display: flex;
  margin-bottom: 45px;
}
.p-index-features__banner.single{
  display: block;
  text-align:center;
}
.p-index-features__banner .campaign{
border:1px solid #fff;
  border-radius: 12px;
  box-shadow: 0 5px 20px rgba(51, 51, 51, .1);
}

.p-index-fitness
{
    padding: 6rem 0;
}

.p-index-fitness__row
{
    margin-top: 3rem;
}

.p-index-fitness__image
{
    width: 100%;

    aspect-ratio: 550/383;
}

.p-index-fitness__image img
{
    width: 100%;
    height: 100%;

    -o-object-fit: cover;
       object-fit: cover;
}

.p-index-fitness__body
{
    padding-top: 2rem;
}

.p-index-fitness__catch
{
    font-size: 1.8rem;
    font-size: max(1.8rem, 16px);
    font-weight: 700;
}

.p-index-fitness__text
{
    margin-top: 2rem;
}

.p-index-fitness__link
{
    display: block;

    margin-top: .5em;

    text-align: right;
}

.p-index-fitness__link a
{
    text-decoration: underline;
}

.p-index-fitness__link a[target=_blank]
{
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;

    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.p-index-fitness__link a[target=_blank]::after
{
    display: inline-block;

    width: 1rem;
    height: 1rem;
    margin-left: .4em;

    content: '';

    background: url(../images/common/icon_external.svg) center center/contain no-repeat;
}

.p-index-fitness__btn
{
    margin: 3rem auto 0;
}

.p-index-image-section
{
    height: 24rem;

    background: #eee url(../images/top/image-section_02.jpg) center center/cover no-repeat;
}

.p-index-instagram
{
    padding: 6rem 0;
}

.p-index-instagram__title
{
    font-family: 'Poppins', sans-serif;
    font-size: 2.2rem;
    font-size: max(2.2rem, 20px);
    font-weight: 600;

    text-align: center;
    letter-spacing: .05em;
}

.p-index-instagram__list
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    margin-top: 2rem;

    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    gap: .5rem;
}

.p-index-instagram__list:empty::after
{
    display: block;

    width: calc(33.333% - .333rem);

    content: '';

    aspect-ratio: 1/1;
}

.p-index-instagram__item
{
    width: calc(33.333% - .333rem);

    background: #eee;
}

.p-index-instagram__item:nth-child(10)
{
    display: none;
}

.p-index-instagram__item a
{
    display: block;

    -webkit-transition: opacity .35s;
            transition: opacity .35s;

    aspect-ratio: 1/1;
}

.p-index-instagram__item a:focus
{
    opacity: .8;
}

.ua-ie .p-index-instagram__item a:hover
{
    opacity: .8;
}

.p-index-instagram__item img
{
    width: 100%;
    height: 100%;

    -o-object-fit: cover;
       object-fit: cover;
}

.p-index-instagram__btn
{
    font-family: 'Poppins', sans-serif;

    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    width: 21rem;
    height: 3.6rem;
    margin: 2rem auto 0;

    -webkit-transition: opacity .35s;
            transition: opacity .35s;
    letter-spacing: 0;

    color: #fff;
    border-radius: 4px;
    background: #121212;

    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.p-index-instagram__btn img
{
    width: 1.4rem;
    margin-right: .5em;

    -webkit-filter: brightness(0) invert(1);
            filter: brightness(0) invert(1);
}

.p-index-instagram__btn:hover
{
    color: #fff;
}

.p-index-instagram__btn:focus
{
    opacity: .8;
}

.ua-ie .p-index-instagram__btn:hover
{
    opacity: .8;
}

.p-index-koujo__content{
  display: none;
}

.p-index-koujo__content.is-open{
display:block;
}
.p-index-koujo__advice{
  background: #B17F05;
  color:#f4f4f4;
}
.p-index-koujo-tag{
  background: #f4f4f4;
  padding:10px;
  display: flex;
  margin:10px 0 40px;
  flex-wrap: wrap;
}

.p-index-koujo-tag__list + .p-index-koujo-tag__list{
  margin-left: 10px;
}

.p-index-koujo__qa{

}

.p-index-koujo__qa .queston{
  color:blue;
  font-weight: bold;
  margin-bottom: 1em;
}
.p-index-koujo__qa .answer{
  color:red;
  font-weight: bold;
  margin-bottom: 1em;
  font-size: 120%;
}
.p-index-koujo__qa .answer-title{
  font-weight: bold;
  margin-bottom: 1em;
  font-size: 120%;
}
.p-index-kv
{
    position: relative;
}

.p-index-kv__movie
{
    position: relative;

    overflow: hidden;

    height: 100svh;
}

.p-index-kv__movie::after
{
    position: absolute;
    top: 0;
    left: 0;

    width: 100%;
    height: 100%;

    content: '';

    background: rgba(0, 0, 0, .2);
}

.p-index-kv__movie video
{
    position: absolute;
    top: 50%;
    left: 50%;

    min-width: 100%;
    min-height: 100%;

    -webkit-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);

    -o-object-fit: cover;
       object-fit: cover;
}

.main-visual__video {
    display: none;
}

@media only screen and (min-width: 561px) {
    .main-visual__video-sp {
        display: none;
    }
    .main-visual__video {
        display: block;
    }
}

.p-index-kv__catch
{
    position: absolute;
    z-index: 1;
    top: 0;
    left: 0;

    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
        flex-direction: column;

    width: 100%;
    height: 100svh;

    color: #fff;

    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.p-index-kv__catch-main
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
        flex-direction: column;

    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    row-gap: 1rem;
}
.p-index-kv__catch-main.second{
  margin-bottom:  1.6em;
}
.p-index-kv__catch-en,
.p-index-kv__catch-jp
{
    font-family: 'Poppins', sans-serif;
    font-size: 5.4rem;
    font-size: max(5.4rem, 46px);
    font-weight: 600;
    line-height: 1;

    letter-spacing: .05em;

    -webkit-clip-path: polygon(0 0, 0 0, 0 100%, 0 100%);
            clip-path: polygon(0 0, 0 0, 0 100%, 0 100%);
}
.p-index-kv__catch-jp {
    font-family: "Noto Sans JP", "Yu Gothic Medium", "Yu Gothic", YuGothic, 游ゴシック体, メイリオ, Meiryo, "ＭＳ Ｐゴシック", sans-serif;
}

.p-index-kv__catch-jp__small{
  font-size: 3.6rem;
  font-size: max(3.6rem, 22px);
  text-align: center;
}

.p-index-kv__catch-jp__x-small{
  font-size: 1.6rem;
  font-size: max(1.6rem, 14px);
}

.p-index-kv__catch-en:nth-of-type(1),
.p-index-kv__catch-jp:nth-of-type(1)
{
    -webkit-clip-path: polygon(100% 0, 100% 0, 100% 100%, 100% 100%);
            clip-path: polygon(100% 0, 100% 0, 100% 100%, 100% 100%);
}

.is-move .p-index-kv__catch-en,
.is-move .p-index-kv__catch-jp
{
    -webkit-transition: -webkit-clip-path 1.3s ease;
            transition: -webkit-clip-path 1.3s ease;
            transition:         clip-path 1.3s ease;
            transition:         clip-path 1.3s ease, -webkit-clip-path 1.3s ease;

    -webkit-clip-path: polygon(0 0, 100% 0, 100% 100%, 0% 100%);
            clip-path: polygon(0 0, 100% 0, 100% 100%, 0% 100%);
}
.is-move .p-index-kv__catch-jp {
    transition-delay: 4.5s, 4.5s;
}


.p-index-kv__catch-mark
{
    position: relative;

    display: block;

    width: 4.6rem;
    height: 4.6rem;

    opacity: 0;
}

.p-index-kv__catch-mark::before,
.p-index-kv__catch-mark::after
{
    position: absolute;
    top: 50%;
    left: 50%;

    width: 4px;
    width: .4rem;
    height: 100%;

    content: '';

    background: #fff;
}

.p-index-kv__catch-mark::before
{
    -webkit-transform: translate(-50%, -50%) rotate(45deg);
            transform: translate(-50%, -50%) rotate(45deg);
}

.p-index-kv__catch-mark::after
{
    -webkit-transform: translate(-50%, -50%) rotate(-45deg);
            transform: translate(-50%, -50%) rotate(-45deg);
}

.is-move .p-index-kv__catch-mark
{
    -webkit-transition: opacity 1s ease;
            transition: opacity 1s ease;

    opacity: 1;
}

.p-index-kv__catch-sub
{
    font-size: 2.8rem;
    font-size: max(2.8rem, 26px);
    font-weight: 700;
  line-height: 1;
    /*margin-top: .6em;*/

    -webkit-transform: translateY(.8rem);
            transform: translateY(.8rem);
    text-align: center;
    letter-spacing: .2em;
  padding:5px;
    opacity: 0;
}
.p-index-kv__catch-sub__middle
{
  font-size: 2rem;
  font-size: max(2rem, 24px);
  color:#fffd00;
}
.p-index-kv__catch-sub__small{
  font-size: 1.4rem;
  font-size: max(1.4rem, 16px);
  /*margin-top: 2em;*/
}
.p-index-kv__catch-sub__x-small
{
  font-size: 1.2rem;
  font-size: max(1.2rem, 14px);
  color:#fffd00;
}

.p-index-kv__catch-sub__xsmall{
  background:rgba(0,0,0,.24);padding:10px;
  font-size: 1.2rem;
  font-size: max(1.2rem, 14px);
  margin-top: 2em;
  line-height: 1.4;
}


.is-move .p-index-kv__catch-sub
{
    -webkit-transition: opacity .75s ease-in-out 1.25s, -webkit-transform .75s ease-in-out 1.25s;
            transition: opacity .75s ease-in-out 1.25s, -webkit-transform .75s ease-in-out 1.25s;
            transition: opacity .75s ease-in-out 1.25s, transform .75s ease-in-out 1.25s;
            transition: opacity .75s ease-in-out 1.25s, transform .75s ease-in-out 1.25s, -webkit-transform .75s ease-in-out 1.25s;
    -webkit-transform: translateY(0);
            transform: translateY(0);

    opacity: 1;
}


.is-move .p-index-kv__catch.second {
    /*margin-top: -40px;*/
}
.is-move .p-index-kv__catch.second .p-index-kv__catch-main {
    color: #fffd00;
}
.is-move .p-index-kv__catch.second .p-index-kv__catch-jp {
    color: #fffd00;
}
.is-move .p-index-kv__catch.second .p-index-kv__catch-sub {
    transition-delay: 5s, 5s;
}

.p-index-kv__catch {
    animation: kv-fade 1s linear 5s 1 forwards;
}
@keyframes kv-fade {
    0% {
        opacity: 1;
    }
    100% {
        opacity: 0;
    }
}

.p-index-kv__catch.second {
    opacity: 0;
    animation: kv-show 1s linear 4.5s 1 forwards;
}
@keyframes kv-show {
    0% {
        opacity: 0;
    }
    100% {
        opacity: 1;
    }
}

.p-index-kv__banner
{
    display: block;
    padding: 3rem 0 1rem;

    text-align: center;
}
.p-index-kv__banner_column a {
    display: inline-block;
    margin-bottom: 16px;

}

.p-index-kv__banner > a
{
    display: inline-block;
    margin-bottom: 16px;

    -webkit-transition: opacity .35s;
            transition: opacity .35s;
}

.p-index-kv__banner > a:focus
{
    opacity: .8;
}

.ua-ie .p-index-kv__banner > a:hover
{
    opacity: .8;
}

.p-index-kv__banner img
{
    max-width: 34rem;
}

.p-index-kv__banner .campaign
{
    border: 1px solid #fff;
    border-radius: 12px;
    -webkit-box-shadow: 0 5px 20px rgba(51, 51, 51, .1);
            box-shadow: 0 5px 20px rgba(51, 51, 51, .1);
}
@media only screen and (min-width: 560px) {
    .p-index-kv__banner .campaign-l
    {
        height: 112px;
        margin-top: 2px;
    }

}
.p-index-kv__banner-ul{
display: flex;
  flex-wrap: wrap;
justify-content: center;
}
.p-index-kv__banner-list img{
  max-width: 34rem;

}
.p-index-link
{
    padding: 6rem 0;
}

.p-index-link__block
{
    position: relative;

    height: 26rem;

    background: #121212;
}

.p-index-link__block + .p-index-link__block
{
    margin-top: 3rem;
}

.p-index-link__block a
{
    position: relative;
    z-index: 1;

    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
        flex-direction: column;

    height: 100%;
    padding: 2rem;

    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
}

.p-index-link__block-title::before
{
    font-size: 2.5rem;
    font-size: max(2.5rem, 22px);
}

.p-index-link__block-btn
{
    font-family: 'Poppins', sans-serif;
    font-size: 1.2rem;
    font-size: max(1.2rem, 11px);
    font-weight: 600;

    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    width: 10rem;
    height: 3rem;
    margin: auto 0 0 auto;

    color: #fff;
    border: 1px solid #fff;
    background: rgba(255, 255, 255, .36);

    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.p-index-link__block-bg
{
    position: absolute;
    z-index: 0;
    top: 0;
    left: 0;

    overflow: hidden;

    width: 100%;
    height: 100%;
}

.p-index-link__block-bg::after
{
    position: absolute;
    top: 0;
    left: 0;

    width: 100%;
    height: 100%;

    content: '';
    -webkit-transition: background-color .7s;
            transition: background-color .7s;

    background-color: rgba(0, 0, 0, .5);
}

.p-index-link__block-bg img
{
    position: absolute;
    top: 50%;
    left: 50%;

    width: 100%;
    height: 100%;

    -webkit-transition: -webkit-transform .7s;
            transition: -webkit-transform .7s;
            transition:         transform .7s;
            transition:         transform .7s, -webkit-transform .7s;
    -webkit-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);

    -o-object-fit: cover;
       object-fit: cover;
}
.p-index-solve{
  margin: 40px 0;
}
.p-index-solve__cycle-title{
  background: #1f1f1f;
  color:#fffd00;
  font-size: 1.8rem;
  font-size: max(1.8rem, 16px);
  padding:5px 2px;
  text-align:center;
  font-weight: bold;
}
.p-index-solve__cycle-flow{
  margin:25px auto 25px 0;
  position:relative;
  max-width:calc(100% - 25px );
}

.p-index-solve__cycle-flow:before{
  content:"";
  width:50%;
  height:calc( 100% );
  position: absolute;
  right:-15px;
  border-right:2px solid #1f1f1f;
  border-bottom:2px solid #1f1f1f;
  bottom:65px;
}
.p-index-solve__cycle-flow:after{
  content: "";
  display: block;
  width: 0;
  height: 0;
  border-left: 10px solid transparent;
  border-right: 10px solid transparent;
  border-bottom: 10px solid #1f1f1f;
  position:absolute;
  top:0;
  right:35px;
  transform: translate(60px,-25px);
}
.p-index-solve__cycle-list{
  margin-bottom: 15px;
  position:relative;
}
.p-index-solve__cycle-list__title{
  line-height: 1;
  margin-bottom: 10px;
  background: #fff;
  padding:5px;
}
.p-index-solve__cycle-list + .p-index-solve__cycle-list:before{
  content:"";
  display: block;
  width: 0;
  height: 0;
  border-left: 15px solid transparent;
  border-right: 15px solid transparent;
  border-top: 15px solid #fffd00;
  margin:0 auto 15px;
}
.p-index-solve__title__block{
  margin-top: 40px;
  display: flex;
  flex-direction: column;
}

.p-index-solve__title{
 border:1px solid #1f1f1f;
color: #1f1f1f;
  padding:5px 10px;
display: inline-block;
  margin:0 auto 20px;
}

.p-index-solve__cycle-list{}
.p-index-solve__cycle-list__title {
  border: 3px solid #1f1f1f;
  padding: 15px;
  color: #1f1f1f;
  background: #fff;
  text-align: center;
}
.p-index-solve__cycle-list__text:before{
  content:"";
  margin-right: 10px;
  transform: rotate(45deg);
  width:10px;
  height:15px;
  display: inline-block;
  border-bottom: 2px solid #1f1f1f;
  border-right: 2px solid #1f1f1f;
}
.p-index-solve__cycle-list__text{
  text-align: center;
}

.p-index-news
{
    padding: 4rem 0 2rem;
}
.p-index-news__photo{
  margin-bottom: 3rem;
}
.p-index-medically{
  margin-bottom: 60px;
}
.p-index-medically__gray{
  width: 100%;
  position:relative;
  z-index:0;
  padding-top: 20px;

}
.p-index-medically__gray:before{
  content:"";
  width: 90%;
  height: 100%;
background:#f4f4f4;
  position: absolute;
  top:0;
left:0;
  z-index:-1;
}

.p-index-medically__ul{
  display: flex;
  margin-bottom: 20px;
  flex-flow: column;
}
.p-index-medically__ul-navy{
  display: flex;
  width: 100%;
 justify-content: space-between;
  margin-top: 40px;
  font-size: 1.4rem;
  font-size: max(1.4rem, 16px);
}
.p-index-medically__ul-navy + .p-index-medically__ul-navy{
  margin-top: -5px ;
}
.p-index-medically__list-navy{
  background: #1f1f1f;
  color:#fff;
  width:100%;
  text-align: center;
  padding:10px;
  font-size: 1.4rem;
  font-size: max(1.4rem, 16spx);
  font-weight: bold;
  margin-bottom: 10px;
}



.p-index-medically__title{
  font-size: 2rem;
  font-size: max(2rem, 20px);
}

.p-index-medically__inner{
  padding:0 20px;
}
.p-index-medically__list{
color:#1f1f1f;
background:#fff;
  padding:10px;
}

.p-index-medically__list + .p-index-medically__list{
  margin-left: 0px;
  margin-top: 10px;
}

.p-index-medically__inner{

}
.p-index-service{}
.p-index-service__detail{
  display: none;
}
.p-index-service__detail.is-open{
  display:block;
}

.p-index-service__photo{
  max-width:;
  text-align: center;
margin:40px auto;
}

.p-index-staff{
  margin-bottom: 75px;
}

.p-index-staff__row{
  margin:0 auto 60px;
  width:290px;
}
.p-index-staff__catch{
  font-size: 2.4rem;
  font-size: max(2.44rem, 22px);
  font-weight: bold;
}

.p-index-staff__detail{
  font-size: 1.5rem;
  font-size: max(1.5rem, 13px);
}
.p-index-staff__image {
  text-align: left;
}

.p-index-staff__image img{
  max-width:290px;
margin:0 auto;
  display: block;
}
.p-index-staff__title {
  font-size: 1.8rem;
  font-size: max(1.8rem, 16px);
  margin-top: 0.5em;
}

.p-index-staff__name{
  font-weight: bold;
  ont-size: 1.8rem;
  font-size: max(1.8rem, 16px);
  margin-top: 0.5em;
}

.p-index-staff__btn{
  margin: auto  auto  auto;
}

.p-index-staff__member{
  margin-bottom: 80px;
}

.p-index-news__btn
{
    margin: 3rem auto 0;
  max-width:12rem;
}
.p-index-word{
  margin-bottom: 25px;

}
.p-index-word__body{
  padding: 1.4rem;
  border: 1px solid #e3e3e3;
  margin-top: 20px;
}
.p-index-word__title{
  background:#B17F05;
  color:#fff;
  text-align: center;
  font-size: 2rem;
  font-size: max(2rem, 18px);
  font-weight: 700;
  padding: 5px;
  margin: 20px 0;
}

.p-index-word__tag{
 color:#121212;
 display:flex;
 flex-wrap: wrap;
 justify-content: space-between;
  margin-bottom: 10px;
  font-size: 1.2rem;
  font-size: max(1.2rem, 12px);
}

.p-index-word__tag__list {
  border:5px solid #B17F05;
  text-align: center;
  margin-bottom: 6px;
  width:100%;
  padding:10px 5px;
  font-weight: bold;
  font-size: 1.6rem;
  font-size: max(1.6rem, 14px);
}

.p-index-word__tag__list-small {
  width: calc((100% - 6px) / 2);
}

.p-machine-block
{
    margin-top: 4rem;
    padding: 2rem 2rem 1.4rem;

    border: 1px solid #e3e3e3;
}

.p-machine-block__image
{
    width: 24rem;
    height: 24rem;
    margin: 0 auto;

    background: #eee;
}

.p-machine-block__image img
{
    width: 100%;
    height: 100%;

    -o-object-fit: cover;
       object-fit: cover;
}

.p-machine-block__body
{
    padding-top: 2rem;
}

.p-machine-block__title
{
    font-size: 1.6rem;
    font-size: max(1.6rem, 14px);
    font-weight: 700;
    line-height: 1.5;

    text-align: center;
}

.p-machine-block__text
{
    margin-top: 2rem;
}

.p-message
{
    margin-top: 4rem;
    padding-bottom: 3rem;

    border-bottom: 1px solid #e3e3e3;
}

.p-message + .p-message
{
    margin-top: 3rem;
}

.p-message:last-child
{
    padding-bottom: 0;

    border-bottom: none;
}

.p-message__sub
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end;
    -webkit-column-gap: 2rem;
       -moz-column-gap: 2rem;
            column-gap: 2rem;
}

.p-message__image
{
    width: 14rem;

    background: #eee;

    -ms-flex-negative: 0;
    flex-shrink: 0;
    aspect-ratio: 29/36;
}

.p-message__image img
{
    width: 100%;
    height: 100%;

    -o-object-fit: cover;
       object-fit: cover;
}

.p-message__belong
{
    font-size: 1.3rem;
    font-size: max(1.3rem, 12px);
    line-height: 1.444;
}

.p-message__name
{
    font-size: 1.5rem;
    font-size: max(1.5rem, 14px);
    font-weight: 700;

    margin-top: .2em;
}

.p-message__main
{
    padding-top: 2.6rem;
}

.p-message__catch
{
    font-size: 1.6rem;
    font-size: max(1.6rem, 14px);
    font-weight: 700;
    line-height: 1.5;

    letter-spacing: .05em;
}

.p-message__headline
{
    font-size: 1.6rem;
    font-size: max(1.6rem, 14px);
    font-weight: 700;
    line-height: 1.5;

    margin-top: 2em;

    letter-spacing: .05em;
}

.p-message__catch + .p-message__headline
{
    margin-top: 1.5em;
}

.p-message__text
{
    margin-top: 1rem;
}

.p-price-table
{
    overflow-x: auto;
    overflow-y: hidden;

    margin: 2rem -5vw 0;
    padding-left: 5vw;
}

.p-price-table--noscroll
{
    overflow: visible;

    padding-right: 5vw;
}

.p-price-table--noscroll .p-price-table__content
{
    width: 100%;
}

.p-price-table__content
{
    width: 84rem;
    margin-right: 5vw;

    table-layout: fixed;
}

.p-price-table__content--100p
{
    width: 100%;
}

.p-price-table tr:nth-child(odd)
{
    background: #f4f4f4;
}

.p-price-table th,
.p-price-table td
{
    padding: 1rem 1.4rem;

    vertical-align: top;

    border: 1px solid #e3e3e3;
}

.p-price-table th:not([class]),
.p-price-table td:not([class])
{
    text-align: center;
}

.p-price-table th
{
    color: #fff;
    background: #121212;
}

.p-price-table th:nth-child(1)
{
    width: 9em;

    vertical-align: middle;
}

.p-service-block
{
    padding: 1.4rem;

    border: 1px solid #e3e3e3;
}

.p-service-block + .p-service-block
{
    margin-top: 3rem;
}

.p-service-block__title
{
    font-size: 1.6rem;
    font-size: max(1.6rem, 14px);
    font-weight: 700;
    line-height: 1.6;

    padding: .6rem 1rem;

    text-align: center;

    color: #fff;
    background: #B17F05;
}

.p-service-block__text
{
    margin-top: 1.4rem;
}

.p-service-list
{
    margin-top: 3rem;

    counter-reset: count 0;
}

.p-service-list__item
{
    position: relative;
}

.p-service-list__item::before
{
    font-family: 'Poppins', sans-serif;
    font-size: 2.8rem;
    font-size: max(2.8rem, 20px);
    font-weight: 600;

    position: absolute;
    top: 0;
    left: 1rem;

    content: '0' counter(count);
    counter-increment: count 1;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
}

.p-service-list__item + .p-service-list__item
{
    margin-top: 4.6rem;
}

.p-service-list__item-image
{
    background: #eee;

    aspect-ratio: 38/26;
}

.p-service-list__item-image img
{
    width: 100%;
    height: 100%;

    -o-object-fit: cover;
       object-fit: cover;
}

.p-service-list__item-title
{
    font-size: 1.6rem;
    font-size: max(1.6rem, 14px);
    font-weight: 700;

    margin-top: 1em;

    text-align: center;
}

.p-service-list__item-text
{
    margin-top: .6em;
}

.p-service__beginner
{
    margin-top: 3rem;
}

.p-service__price
{
    margin-top: 3rem;
}

.p-service__price-block
{
    max-width: 90rem;
    margin: 3rem auto 0;
    padding-bottom: 3rem;

    border-bottom: 1px solid #e3e3e3;
}

.p-service__price-block + .p-service__price-block
{
    margin-top: 3rem;
}

.p-service__price-block dt
{
    font-size: 1.6rem;
    font-size: max(1.6rem, 14px);
    font-weight: 700;
}

.p-service__price-block dd
{
    margin-top: .8em;
}

.p-service__price-image
{
    overflow-x: auto;
    overflow-y: hidden;

    margin: 0 -5vw;
    padding-left: 5vw;
}

.p-service__price-image-inner
{
    width: 84rem;
    margin-right: 5vw;
}

.p-service__price-btns
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    margin-top: 3rem;

    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-column-gap: 2rem;
       -moz-column-gap: 2rem;
            column-gap: 2rem;
}

.p-service__price-btns > a
{
    width: 100%;
}

.p-service__price-notes
{
    font-size: 1.3rem;
    font-size: max(1.3rem, 12px);

    margin-top: 2rem;

    counter-reset: count 0;
}

.p-service__price-notes > li
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -webkit-box-align: baseline;
    -ms-flex-align: baseline;
    align-items: baseline;
}

.p-service__price-notes > li::before
{
    display: inline-block;

    margin-right: .5em;

    content: '※' counter(count);
    counter-increment: count 1;

    color: #a00;
}

.p-service__price-notes > li + li
{
    margin-top: .4rem;
}

.p-service__pdf
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
        flex-direction: column;

    margin-top: 6rem;

    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 1rem;
}

.p-service__pdf-btn
{
    width: 100%;
    max-width: 25rem;
}

.p-staff
{
    margin-top: 3rem;
    padding: 0 2rem;
}

.p-staff__item + .p-staff__item
{
    margin-top: 4rem;
}

.p-staff__item-image
{
    background: #eee;

    aspect-ratio: 1;
}

.p-staff__item-body
{
    position: relative;

    padding-top: 2.6rem;
}

.p-staff__item-name
{
    line-height: 1.666;

    position: absolute;
    top: -3.4rem;
    right: 1rem;

    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
        flex-direction: column;

    min-width: 12.5rem;
    padding: .4rem 1.6rem;

    color: #fff;
    background: #121212;

    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.p-staff__item-name-en
{
    font-family: 'Poppins', sans-serif;
    font-size: 1.2rem;
    font-size: max(1.2rem, 11px);

    letter-spacing: 0;
}

.p-store-profile
{
    max-width: 90rem;
    margin: 3rem auto 0;

    border-left: 1px solid #e3e3e3;
}

.p-store-profile__title
{
    padding: 1rem 1.4rem;

    color: #fff;
    background: #121212;
}

.p-store-profile__body
{
    padding: 1rem 1.4rem;

    border-right: 1px solid #e3e3e3;
    border-bottom: 1px solid #e3e3e3;
}

.p-store-profile__body a
{
    text-decoration: underline;
}

.p-training
{
    margin-top: 3rem;
    padding-bottom: 4rem;

    border-bottom: 1px solid #bbb;
}

.p-training + .p-training
{
    margin-top: 4rem;
}

.p-training__title-en
{
    font-family: 'Poppins', sans-serif;
    font-weight: 600;
    line-height: 1.444;

    display: inline-block;

    color: #717171;
}

.p-training__head
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    padding-top: .4rem;

    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-column-gap: 1rem;
       -moz-column-gap: 1rem;
            column-gap: 1rem;
}

.p-training__title
{
    font-size: 1.6rem;
    font-size: max(1.6rem, 14px);
    font-weight: 700;
    line-height: 1.5;
}


.p-training__body
{
    padding-top: 2rem;
}

.u-text-xs
{
    font-size: 1rem;
}

.u-text-sm
{
    font-size: 1.2rem;
}

.u-text-base
{
    font-size: 1.4rem;
}

.u-text-lg
{
    font-size: 1.6rem;
}

.u-text-xl
{
    font-size: 1.8rem;
}

.u-text-2xl
{
    font-size: 2.2rem;
}

.u-text-3xl
{
    font-size: 2.8rem;
}

.u-text-4xl
{
    font-size: 3.4rem;
}

.u-text-5xl
{
    font-size: 4.6rem;
}

.u-text-6xl
{
    font-size: 6.2rem;
}

.u-italic
{
    font-style: italic;
}

.u-not-italic
{
    font-style: normal;
}

.u-font-light
{
    font-weight: 300;
}

.u-font-normal
{
    font-weight: 400;
}

.u-font-medium
{
    font-weight: 500;
}

.u-font-semibold
{
    font-weight: 600;
}

.u-font-bold
{
    font-weight: 700;
}

.u-text-left
{
    text-align: left;
}

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

.u-text-right
{
    text-align: right;
}

.u-text-justify
{
    text-align: justify;
}

.u-text-transparent
{
    color: transparent;
}

.u-text-current
{
    color: currentColor;
}

.u-text-black
{
    color: #222;
}

.u-text-white
{
    color: #fff;
}

.u-text-gray
{
    color: #888;
}

.u-text-red
{
    color: #c00;
}

.u-text-blue
{
    color: #00c;
}

.u-bg-black
{
    background-color: #222;
}

.u-bg-white
{
    background-color: #fff;
}

.u-bg-gray-100
{
    background-color: #f4f4f4;
}

.u-bg-gray-200
{
    background-color: #e8e8e8;
}

.u-bg-gray-300
{
    background-color: #d2d2d2;
}

.u-bg-gray-400
{
    background-color: #bcbcbc;
}

.u-bg-gray-500
{
    background-color: #a6a6a6;
}

.u-bg-gray-600
{
    background-color: #909090;
}

.u-bg-gray-700
{
    background-color: #7a7a7a;
}

.u-bg-gray-800
{
    background-color: #646464;
}

.u-bg-gray-900
{
    background-color: #383838;
}

.u-bg-red-100
{
    background-color: #fff5f5;
}

.u-bg-red-200
{
    background-color: #fed7d7;
}

.u-bg-red-300
{
    background-color: #feb2b2;
}

.u-bg-red-400
{
    background-color: #fc8181;
}

.u-bg-red-500
{
    background-color: #f56565;
}

.u-bg-red-600
{
    background-color: #e53e3e;
}

.u-bg-red-700
{
    background-color: #c53030;
}

.u-bg-red-800
{
    background-color: #9b2c2c;
}

.u-bg-red-900
{
    background-color: #742a2a;
}

.u-underline
{
    text-decoration: underline;
}

.u-line-through
{
    text-decoration: line-through;
}

.u-no-underline
{
    text-decoration: none;
}

.u-align-baseline
{
    vertical-align: baseline;
}

.u-align-top
{
    vertical-align: top;
}

.u-align-middle
{
    vertical-align: middle;
}

.u-align-bottom
{
    vertical-align: bottom;
}

.u-align-text-top
{
    vertical-align: text-top;
}

.u-align-text-bottom
{
    vertical-align: text-bottom;
}

.u-opacity-0
{
    opacity: 0;
}

.u-opacity-25
{
    opacity: .25;
}

.u-opacity-50
{
    opacity: .5;
}

.u-opacity-75
{
    opacity: .75;
}

.u-opacity-100
{
    opacity: 1;
}

@media only screen and (min-width: 560px)
{
  .splide__arrow--prev {
    left: 0;
    transform: translate(-100%, 0);
  }
  .splide__arrow--next{
    right: 0;
    transform: translate(100%, 0);
  }

    .sp-only
    {
        display: none !important;
    }

    .tab-pc-only
    {
        display: block !important;
    }

    .scroll-top-observer
    {
        top: 60rem;
    }

    .l-content
    {
        padding: 15rem 0 16rem;
    }

    .l-content--small-pt
    {
        padding-top: 11rem;
    }

    .l-footer
    {
        padding: 11rem 0 5rem;
    }

    .l-footer__logo img
    {
        height: 6.3rem;
    }

    .l-footer__sns
    {
        margin-top: 2.6rem;

        gap: 1rem 1.4rem;
    }

    .l-footer__nav
    {
        margin-top: 3.6rem;

        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        gap: 1rem 0;
    }

    .l-footer__nav-item
    {
        font-size: 1.4rem;
        font-size: max(1.4rem, 13px);

        padding: 0 2.6rem;
    }

    .l-footer__nav-item + .l-footer__nav-item
    {
        border-left: 1px solid #e3e3e3;
    }

    .l-footer__btn
    {
        font-size: 1.4rem;
        font-size: max(1.4rem, 13px);

        width: 16rem;
        margin-top: 3.6rem;
    }

    .l-footer__link
    {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;

        margin-top: 12rem;

        -webkit-column-gap: 3rem;
           -moz-column-gap: 3rem;
                column-gap: 3rem;
    }

    .l-footer__link-item
    {
        width: calc(33.333% - 2rem);
        padding: 1.8rem 1.8rem 1.6rem;
    }

    .l-footer__link-item + .l-footer__link-item
    {
        margin-top: 0;
    }

    .l-footer__link-title
    {
        font-size: 1.4rem;
        font-size: max(1.4rem, 13px);

        margin-top: .8em;
    }

    .l-footer__copylight
    {
        font-size: 1.3rem;
        font-size: max(1.3rem, 11px);

        margin-top: 7rem;
    }

    .l-info
    {
        padding: 12rem 0;
    }

    .l-info__row
    {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
            flex-direction: row-reverse;

        -webkit-box-orient: horizontal;
        -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
    }

    .l-info__map
    {
        width: 50%;

        -ms-flex-negative: 0;
        flex-shrink: 0;
    }

    .l-info__map iframe
    {
        height: 100%;
        min-height: 38rem;
    }

    .l-info__body
    {
        padding: 2.4rem 6rem 0 0;

        -webkit-box-flex: 1;
        -ms-flex-positive: 1;
        flex-grow: 1;
    }

    .l-info__logo
    {
        height: 6.3rem;
    }

    .l-info__title-text
    {
        font-size: 1.6rem;
        font-size: max(1.6rem, 14px);

        margin-top: 1.5em;
    }

    .l-info__tel-number
    {
        pointer-events: none;
    }

    .l-info__data
    {
        font-size: 1.4rem;
        font-size: max(1.4rem, 12px);
    }

    .l-nav__reserve-text-en
    {
        font-size: 2.4rem;
        font-size: max(2.4rem, 18px);
    }

    .l-reserve
    {
        padding: 12rem 0;
    }

    .l-reserve__btn
    {
        font-size: 2.2rem;
        font-size: max(2.2rem, 18px);

        height: 10.2rem;
        margin-top: 5rem;
    }

    .c-breadcrumb
    {
        margin-top: 110px;
        padding-left: 36px;
    }

    .c-breadcrumb__item
    {
        font-size: 1.3rem;
        font-size: max(1.3rem, 12px);
    }

    .c-breadcrumb__item + .c-breadcrumb__item
    {
        margin-left: 1.4rem;
    }

    .c-breadcrumb__item + .c-breadcrumb__item::before
    {
        margin-right: 1.4rem;
    }

    .c-btn
    {
        font-size: 1.5rem;
        font-size: max(1.5rem, 13px);

        max-width: 20rem;
        height: 5.6rem;
    }




    .c-btn--black-l {
        width: fit-content;
        max-width: none;
        height: 10.2rem;
        margin: 0 auto;
        padding: 0 24px;
        font-size: max(2.2rem, 18px);
        text-decoration: none;
    }

    .c-column-list
    {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;

        margin-top: 6rem;

        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
        gap: 6rem 4rem;
    }

    .c-column-list__item + .c-column-list__item
    {
        margin-top: 0;
    }

    .c-column-list__item-date
    {
        font-size: 1.4rem;
        font-size: max(1.4rem, 12px);

        margin-top: 1.6rem;
    }

    .c-column-list__item-title
    {
        margin-top: 1rem;
    }

    .c-image-block
    {
        height: 52rem;
        margin-top: 6rem;
    }

  .c-image-block-m0{
    margin-top:0 ;
  }

    .c-news-list
    {
        max-width: 110rem;
        margin: 6rem auto 0;
    }

    .c-news-list__item
    {
        padding-bottom: 3rem;
    }

    .c-news-list__item + .c-news-list__item
    {
        padding-top: 3rem;
    }

    .c-news-list__item-date
    {
        font-size: 1.4rem;
        font-size: max(1.4rem, 12px);
        line-height: 1;
    }

    .c-news-list__item-category
    {
        width: 10rem;
        height: 2.4rem;
    }

    .c-news-list__item-title a:focus span
    {
        background-position: left bottom;
        background-size: 100% 1px;
    }

    .ua-ie .c-news-list__item-title a:hover span
    {
        background-position: left bottom;
        background-size: 100% 1px;
    }

    .c-news-list__item-title span
    {
        padding-bottom: 2px;

        -webkit-transition: background-size .7s cubic-bezier(.23, 1, .32, 1) 0s;
                transition: background-size .7s cubic-bezier(.23, 1, .32, 1) 0s;

        background: url(../images/common/line_black.png) no-repeat left bottom;
        background-position: right bottom;
        background-size: 0 1px;

        will-change: background-size;
    }

  .c-page-head
    {
        height: 46rem;
    }

    .c-page-head__title
    {
        font-size: 2.4rem;
        font-size: max(2.4rem, 18px);

        margin-top: 12rem;
    }

    .c-page-head__title::after
    {
        font-size: 8.2rem;
        font-size: max(8.2rem, 56px);
        line-height: 1.222;
    }

    .c-pagination
    {
        margin-top: 6rem;
    }

    .c-pagination li
    {
        font-size: 1.5rem;
        font-size: max(1.5rem, 13px);
    }

    .c-post h2:first-child,
    .c-post h3:first-child,
    .c-post h4:first-child,
    .c-post h5:first-child,
    .c-post h6:first-child
    {
        margin-top: 0;
    }

    .c-post h2
    {
        font-size: 2.4rem;
        font-size: max(2.4rem, 20px);

        margin-top: 6rem;
    }

    .c-post h3
    {
        font-size: 2rem;
        font-size: max(2rem, 18px);

        margin-top: 4rem;
    }

    .c-post h4
    {
        font-size: 1.8rem;
        font-size: max(1.8rem, 16px);

        margin-top: 3rem;
    }

    .c-post h5
    {
        font-size: 1.6rem;
        font-size: max(1.6rem, 14px);

        margin-top: 2rem;
    }

    .c-post h6
    {
        font-size: 1.5rem;
        font-size: max(1.5rem, 14px);

        margin-top: 2rem;
    }

    .c-post h2 + h3
    {
        margin-top: 3rem;
    }

    .c-post h2 + p,
    .c-post h2 + ul,
    .c-post h2 + ol
    {
        margin-top: 2.4rem;
    }

    .c-post h3 + p,
    .c-post h3 + ul,
    .c-post h3 + ol,
    .c-post h4 + p,
    .c-post h4 + ul,
    .c-post h4 + ol,
    .c-post h5 + p,
    .c-post h5 + ul,
    .c-post h5 + ol,
    .c-post h6 + p,
    .c-post h6 + ul,
    .c-post h6 + ol
    {
        margin-top: 1.4rem;
    }

    .c-post p
    {
        margin-top: 2.4rem;
    }

    .c-post p:first-child
    {
        margin-top: 0;
    }

    .c-post ul
    {
        margin-top: 3rem;
    }

    .c-post ul:first-child
    {
        margin-top: 0;
    }

    .c-post ul > li + li
    {
        margin-top: .4rem;
    }

    .c-post ol
    {
        margin-top: 3rem;
    }

    .c-post ol > li + li
    {
        margin-top: .4rem;
    }

    .c-post table
    {
        margin-top: 3rem;
    }

    .c-post table th,
    .c-post table td
    {
        padding: 1.6rem 2.2rem;
    }

    .c-post table th
    {
        font-weight: 700;
    }

    .c-section
    {
        padding-bottom: 9.5rem;
    }

    .c-section + .c-section
    {
        padding-top: 9.5rem;
    }

    .c-section + .c-section-bg
    {
        margin-top: 4.5rem;
    }

    .c-section-bg
    {
        padding: 12rem 0;
    }

    .c-section-bg + .c-section
    {
        padding-top: 14rem;
    }

    .c-text
    {
        line-height: 2;

        margin-top: 5rem;
    }

    .c-text:first-child
    {
        margin-top: 0;
    }

    .c-title-index
    {
        font-size: 1.6rem;
        font-size: max(1.6rem, 13px);
        line-height: 1.2;

        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;

        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        -webkit-column-gap: 1.4rem;
           -moz-column-gap: 1.4rem;
                column-gap: 1.4rem;
    }

    .c-title-index::before
    {
        font-size: 5.2rem;
        font-size: max(5.2rem, 42px);
    }
  .c-title-index__english{
    font-family: 'Slash', 'Poppins', sans-serif;
    font-size: 5.2rem;
    font-size: max(5.2rem, 42px);
    font-weight: 600;

    display: block;
    text-align: center;
  }
    .c-title-index--center
    {
        display: block;
    }
  .c-title-primary__large
  {
    font-size: 4rem;
    font-size: max(4rem, 28px);
    padding-bottom: 20px;
  }
  .c-title-primary__mid
  {
    font-size: 3.8rem;
    font-size: max(3.8rem, 34px);
    padding:20px 0 40px;
  }
  .c-title-primary__sm
  {
    font-size: 3rem;
    font-size: max(3rem, 32px);
    padding:20px 0 20px;
  }
    .c-title-primary
    {
        font-size: 3.4rem;
        font-size: max(3.4rem, 26px);
    }
  .c-title-primary--sp__left{
    text-align: center;
  }

  .c-title-primary__margin{
    margin:45px 0;
  }


  .c-title-primary-small
  {
    font-size: 2rem;
    font-size: max(2rem, 20px);
  }
  .c-title-primary-small__center{
    text-align: center;
  }
  .c-title-primary-small__black{
    background: #121212;
    color:#fffd00;
    padding:2px 5px;
    margin-right: 10px;
  }
    .c-title-secondary
    {
        font-size: 2.8rem;
        font-size: max(2.8rem, 20px);

        margin-top: 10rem;
    }

    .c-title-secondary:first-child
    {
        margin-top: 0;
    }

    .p-about-exercise
    {
        margin-top: 5.4rem;
        padding: 5rem;
    }

    .p-about-exercise + .p-about-exercise
    {
        margin-top: 6rem;
    }

    .p-about-exercise__title
    {
        font-size: 2.6rem;
        font-size: max(2.6rem, 20px);

        padding: 1.2rem 2.2rem;
    }

    .p-about-exercise__text
    {
        line-height: 2;

        margin-top: 3rem;
    }

    .p-about-exercise__keyword
    {
        margin-top: 3rem;
        padding: 2.4rem 2.6rem;

        gap: .8rem 2.4rem;
    }

    .p-about-exercise__keyword > li
    {
        font-size: 1.6rem;
        font-size: max(1.6rem, 14px);

        padding-left: 1em;
    }

    .p-about-exercise__keyword > li::before
    {
        width: .8rem;
        height: .8rem;
    }

    .p-about-feature
    {
        margin-top: 12rem;
    }

    .p-about-feature__section
    {
        padding: 10rem 0;
    }

    .p-about-feature__section + .p-about-feature__section
    {
        padding-top: 10rem;
        padding-bottom: 0;
    }

    .p-about-feature__title
    {
        font-size: 2.6rem;
        font-size: max(2.6rem, 20px);
        line-height: 1.8;
    }

    .p-about-feature__text
    {
        line-height: 2;

        margin-top: 3rem;
    }

    .p-about__title
    {
        font-size: 4rem;
        font-size: max(4rem, 26px);
    }

    .p-detail__date
    {
        font-size: 1.4rem;
        font-size: max(1.4rem, 12px);
    }

    .p-detail__title
    {
        font-size: 2.8rem;
        font-size: max(2.8rem, 22px);
    }

    .p-detail__category
    {
        width: 10rem;
        height: 2.4rem;
        margin-top: 2rem;
    }

    .p-detail__body
    {
        padding-top: 5rem;
    }

    .p-detail__btn
    {
        max-width: 26rem;
        margin: 0 auto;
    }

    .p-facility__btn
    {
        margin-top: 4rem;
    }

    .p-facility__access
    {
        margin-top: 4rem;
    }

    .p-facility__map
    {
        height: 46rem;
    }

    .p-facility__access-text
    {
        margin-top: 4rem;
    }

    .p-facility__machine-image
    {
        height: auto;
    }

    .p-facility__machine-movie
    {
        margin-top: 8rem;
    }

    .p-fitness-block
    {
        padding-bottom: 8rem;
    }

    .p-fitness-block + .p-fitness-block
    {
        margin-top: 8rem;
    }

    .p-fitness-block__title
    {
        font-size: 2.6rem;
        font-size: max(2.6rem, 20px);
    }

    .p-fitness-block__text
    {
        line-height: 2;
    }

    .p-fitness-block__text ul
    {
        gap: .8rem 2rem;
    }

    .p-fitness-block__text li
    {
        padding-left: 1em;
    }

    .p-fitness-block__text li::before
    {
        width: .8rem;
        height: .8rem;
    }

    .p-fitness__description
    {
        margin-top: 8rem;
    }

    .p-fitness__link
    {
        margin-top: 2rem;
    }

    .p-flow
    {
        margin-top: 6rem;
    }

    .p-flow__item
    {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;

        -webkit-box-align: start;
        -ms-flex-align: start;
        align-items: flex-start;
        -webkit-column-gap: 4rem;
           -moz-column-gap: 4rem;
                column-gap: 4rem;
    }

    .p-flow__item + .p-flow__item
    {
        margin-top: 5rem;
    }

    .p-flow__item-body
    {
        -webkit-column-gap: 4rem;
           -moz-column-gap: 4rem;
                column-gap: 4rem;
    }

    .p-flow__item-step
    {
        width: 8rem;
        height: 10rem;
        padding: 1rem;

        -webkit-clip-path: polygon(100% 0, 100% calc(100% - 3rem), 50% 100%, 0 calc(100% - 3rem), 0 0);
                clip-path: polygon(100% 0, 100% calc(100% - 3rem), 50% 100%, 0 calc(100% - 3rem), 0 0);
    }

    .p-flow__item-step-text
    {
        font-size: 1.6rem;
        font-size: max(1.6rem, 14px);
    }

    .p-flow__item-step-num
    {
        font-size: 2.4rem;
        font-size: max(2.4rem, 20px);
    }

    .p-flow__item-content
    {
        padding-top: 0;
    }

    .p-flow__item-title
    {
        font-size: 2.6rem;
        font-size: max(2.6rem, 20px);
    }

    .p-flow__item-text
    {
        line-height: 2;

        margin-top: 2rem;
    }

    .p-flow__item-image
    {
        width: 24rem;
        margin: 0;

        -ms-flex-negative: 0;
        flex-shrink: 0;
    }

    .p-index-about
    {

    }
  .p-index-about__catch
  {
    font-size: 2.8rem;
    font-size: max(2.8rem, 22px);

    margin-top: 3.4rem;
  }
  .p-index-about__concept{
    padding-top: 10rem;
  }

  .p-index-about__concept__title{
    font-size: 4rem;
    font-size: max(4rem, 34px);
  }
  .p-index-about__flow{

  }
  .p-index-about__flow__title{
    margin: 45px 0 65px;
  }
  .p-index-about__flow__photo{

  }
  .p-index-about__flow__button{
    margin-left: auto;
    margin:80px auto;
  }
  .p-index-about__floor{
    padding-top: 10rem;
  }
  .p-index-about__floor__photo{
display:none;
  }

  .p-index-about__floor__photo.c-trigger.is-open{
    display: flex;
    flex-wrap: wrap;
    /*flex-flow:row;*/
    /*justify-content: space-between;*/
  }


  .p-index-about__floor__photo__image{
    text-align: center;
  }
  .p-index-about__floor__photo__image + .p-index-about__floor__photo__image{
    margin-left: 0;
    margin-top: 10px;
  }

    .p-index-about__main
    {
        padding: 12rem 0;
    }

    .p-index-about__main::after
    {
        font-size: 12.8rem;
        font-size: max(12.8rem, 90px);

        right: 0;
        bottom: -.15em;
        left: auto;

        -webkit-transform: translateX(0);
                transform: translateX(0);
    }
    .p-index-about__machine{

    }


  .p-index-about__medical-fitness{
    margin-top: 10rem;
  }
  .p-index-about__medical-fitness__title{
    font-size: 10rem;
    font-size: max(10rem, 66px);
  }
  .p-index-about__medical-fitness__photo{

  }

  .p-index-about__movie
  {
    padding: 12rem 0;
  }

  .p-index-about__image
  {
    -webkit-box-shadow: 0 5px 20px rgba(0, 0, 0, .1);
    box-shadow: 0 5px 20px rgba(0, 0, 0, .1);
  }


  .p-index-about__survey{

  }

  .p-index-about__questionary{

        font-size: 1.8rem;
        font-size: max(1.8rem, 15px);
        line-height: 2;

        margin-top: 4rem;

        letter-spacing: .05em;

    }



  .p-index-about__questionary-list{
    display:flex;
    position:relative;
    z-index:0;
    padding:10px;
    justify-content: space-between;
    margin-bottom: 25px;
    width:33%;
  }
  .p-index-about__questionary-list:before{
    content:"";
    height:100%;
    display: inline-block;
    position: absolute;
    top:0;
    left:0;
    background: #f4f4f4;
    z-index:-1;
  }
  .p-index-about__questionary-list.is-85:before{
    width: 85%;
  }
  .p-index-about__questionary-list.is-71:before{
    width: 71%;
  }
  .p-index-about__questionary-list.is-64:before{
    width: 64%;
  }
  .p-index-about__questionary-list.is-921:before{
    width: 92.1%;
  }
  .p-index-about__questionary-list.is-98:before{
    width: 98%;
  }
    .p-index-about__questionary-title
    {
      font-size: 1.8rem;
      font-size: max(1.8rem, 16px);
      line-height: 1;
    }
    .p-index-about__questionary-number {
      font-family: 'Poppins', sans-serif;
      font-size: 3.2rem;
      font-size: max(3.2rem, 28px);
      line-height: 1;
    }

  .p-index-about__questionary-number__circle{
    width: 300px;
    height: 300px;
    font-size: 4.6rem;
    font-size: max(4.6rem, 40px);
  }
  .p-index-about__questionary-voice {
    justify-content: space-between;
    flex-direction: row;
  }
  .p-index-about__questionary-voice__list {
    width: 49.5%;
  }
  .p-index-about__questionary-voice__list +   .p-index-about__questionary-voice__list{
    margin-top: 0;
  }

  .p-index-about__Re-Birth-machida{
    margin-top: 2em;
  }

  .p-index-about__re-birth__title {
    margin-bottom: 20px;
    font-family: 'Poppins', sans-serif;
    font-size: 3.2rem;
    font-size: max(3.2rem, 28px);
  }
  .p-index-about__re-birth__name{
    text-align: right;
    margin-bottom: 45px;
    padding-bottom: 5rem;
  }
  .p-index-campaign{
    padding:5rem 0;
  }
  .p-index-campaign__banner{
    display:flex;
    flex-wrap:wrap;
    align-items: center;
    justify-content: center;
    padding:40px 0;
  }
  .p-index-campaign__banner-list{
    width: 30%;
  }
    .p-index-column
    {
        padding: 12rem 0;
    }

    .p-index-column__list
    {
        margin-top: 4rem;
    }

    .p-index-column__btn
    {
        margin-top: 6rem;
    }
    .p-index-consultation__ul{
      margin-bottom: 60px;
    }
  .p-index-concept{}
  .p-index-consultation__photo{

  }
    .p-index-features
    {
    padding: 3rem 0;
    }
   .p-index-features__container{
     margin-bottom: 45px;
   }
  .p-index-features__conditions{

  }

  .p-index-features__conditions__title{
    font-size: 3rem;
    font-size: max(3rem, 26px);
  }
  .p-index-features__conditions__ul{
    display: flex;
    flex-flow: row;
    flex-wrap: wrap;
  }
  .p-index-features__conditions__list{
    width: 50%;
    font-size: 2rem;
    font-size: max(2rem, 16px);
  }
  .p-index-features__block
  {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    /*margin-top: 6rem;*/
    padding-top: 6rem;
    padding-bottom: 6rem;

    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    padding-left: 40px;

  }
  .p-index-features__heading-square{
    font-size: 4rem;
    font-size: max(4rem, 36px);
    padding:20px 10px;
  }

  .p-index-features__heading-square__small{
    font-size: 2rem;
    font-size: max(2rem, 18px);
  }
  .p-index-features__block.is-new{

  }

  .p-index-features__block + .p-index-features__block
  {
    /*margin-top: 6rem;*/
  }

  .p-index-features__sub {
    width: 22rem;
    padding: 1rem 4rem 0 0;
    -ms-flex-negative: 0;
    flex-shrink: 0;

  }
  .p-index-features__sub-icon.is-width {
    width:350px;
    margin:0;
  }

  .p-index-features__title-en
  {
    font-size: 1.8rem;
    font-size: max(1.8rem, 14px);
    line-height: 1.7;
  }

  .p-index-features__main
  {
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
  }

  .p-index-features__head
  {
    padding-top: 0;
    -webkit-column-gap: 3rem;
    -moz-column-gap: 3rem;
    column-gap: 3rem;
justify-content: left;
    text-align: left;
  }

  .p-index-features__head.is-center
  {
    justify-content: center;
    align-items: center;
    text-align: center;
  }

  .p-index-features__head.is-sp-column{
    display: flex;
    flex-flow: row;
  }

  .p-index-features__title
  {
    font-size: 4rem;
    font-size: max(4rem, 30px);
  }

  .p-index-features__title-small
  {
    font-size: 2.8rem;
    font-size: max(2.8rem, 24spx);
  }

  .p-index-features__type
  {
    font-size: 1.8rem;
    font-size: max(1.8rem, 14px);

    padding: .4rem 2rem;
  }

  .p-index-features__body
  {
    line-height: 2;

    padding-top: 3rem;
  }
    .p-index-fitness
    {
        padding: 14rem 0;
    }

    .p-index-fitness__catch
    {
        font-size: 2.8rem;
        font-size: max(2.8rem, 22px);
    }

    .p-index-fitness__text
    {
        line-height: 2;
    }

    .p-index-fitness__link
    {
        margin-top: 1.2rem;
    }


    .p-index-fitness__btn
    {
        margin: 3.8rem 0 0 0;
    }

    .p-index-image-section
    {
        height: 44rem;
    }

    .p-index-instagram
    {
        padding: 12rem 0 16rem;
    }

    .p-index-instagram__title
    {
        font-size: 2.8rem;
        font-size: max(2.8rem, 22px);
    }

    .p-index-instagram__list
    {
        margin-top: 3rem;
        gap: 1rem;
    }

    .p-index-instagram__list:empty::after
    {
        width: calc(20% - .8rem);
    }

    .p-index-instagram__item
    {
        width: calc(20% - .8rem);
    }

    .p-index-instagram__item:nth-child(10)
    {
        display: block;
    }

    .p-index-instagram__btn
    {
        font-size: 1.5rem;
        font-size: max(1.5rem, 12px);

        margin-top: 3rem;
    }
    .p-index-kv__banner
    {
        display: flex;
        gap: 4px;
        justify-content: center;
        position: absolute;
        z-index: 10;
        bottom: 3rem;
        padding: 0 16px;
        left: 4rem;
    }

    .p-index-kv__catch,
    .p-index-kv__catch.second {
        /*margin-top: -80px !important;*/
    }

    .p-index-kv__banner {
        display: flex;
        width: 100%;
        bottom: 8px !important;
        left: 0;
        justify-content: flex-end;
    }

    .p-index-kv__banner > a {
        height: 100%;
        margin-right: 8px;
    }
    .p-index-kv__banner > a img {
        max-width: 100% !important;
        max-height: 180px;
    }
    .p-index-kv__banner_column {
        float: right;
    }
    .p-index-kv__banner_column a {
        margin-bottom: 4px;
    }
    .p-index-kv__banner_column a img {
        height: 56px;
        width: auto;
    }


    .p-index-link
    {
        padding: 12rem 0;
    }

    .p-index-link__row
    {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;

        gap: 4rem;
    }

    .p-index-link__block
    {
        width: calc(50% - 2rem);
        height: 38rem;
    }

    .p-index-link__block:focus .p-index-link__block-bg::after
    {
        background-color: rgba(0, 0, 0, .7);
    }

    .p-index-link__block:focus .p-index-link__block-bg img
    {
        -webkit-transform: translate(-50%, -50%) scale(1.1);
                transform: translate(-50%, -50%) scale(1.1);
    }

    .ua-ie .p-index-link__block:hover .p-index-link__block-bg::after
    {
        background-color: rgba(0, 0, 0, .7);
    }

    .ua-ie .p-index-link__block:hover .p-index-link__block-bg img
    {
        -webkit-transform: translate(-50%, -50%) scale(1.1);
                transform: translate(-50%, -50%) scale(1.1);
    }

    .p-index-link__block + .p-index-link__block
    {
        margin-top: 0;
    }

    .p-index-link__block a
    {
        padding: 3rem 2.4rem 2.4rem 4rem;
    }

    .p-index-link__block-title
    {
        font-size: 1.4rem;
        font-size: max(1.4rem, 12px);

        display: block;
    }

    .p-index-link__block-title::before
    {
        font-size: 4.6rem;
        font-size: max(4.6rem, 30px);
    }

    .p-index-link__block-btn
    {
        font-size: 1.3rem;
        font-size: max(1.3rem, 11px);

        width: 12.8rem;
        height: 4rem;
    }
  .p-index-medically__gray{
    width: 100%;
    padding:20px;
  }
  .p-index-medically__ul{
flex-flow: row;
  }
  .p-index-medically__ul-navy{
    display: flex;
    width: 100%;
    justify-content: space-between;
    margin-top: 40px;
  }
  .p-index-medically__list + .p-index-medically__list{
    margin-left: 20px;
  }

  .p-index-medically__list-navy{
    background: #1f1f1f;
    color:#fff;
    width:49%;
    text-align: center;
    padding:10px;
    font-size: 2rem;
    font-size: max(2rem, 20px);
    font-weight: bold;
  }
  .p-index-medically__title{
    font-size: 2.4rem;
    font-size: max(2.4rem, 24px)
  }
  .p-index-medically__inner{
    width:900px;
    margin:0 auto;
  }
    .p-index-news
    {
        padding: 12rem 0;
    }

    .p-index-news__btn
    {
        margin-top: 5rem;
    }

    .p-index-news__photo{
      margin-bottom: 8rem;
    }
    .p-index-staff {

    }
  .p-index-service{

  }


  .p-index-service__photo{
    margin:80px auto;
  }
    .p-index-solve {
      margin: 60px 0;
    }
  .p-index-solve__title__block {
    margin-top: 65px;
  }
    .p-index-solve__title{
      font-size: 2.4rem;
      font-size: max(2.4rem, 24px)

    }
  .p-index-solve__cycle-title{
  background: #1f1f1f;
    color:#fffd00;
    font-size: 2.4rem;
    font-size: max(2.4rem, 24px);
    padding:15px 5px;
    text-align:center;
    font-weight: bold;
  }
    .p-index-solve__cycle-flow{
      max-width:90rem;
      margin:25px auto 25px 0;
      position:relative;
      max-width:calc(100% - 50px );
    }

  .p-index-solve__cycle-flow:before{
    content:"";
    width:50%;
    height:calc( 100% + 20px );
    position: absolute;
    right:-30px;
    border-right:2px solid #1f1f1f;
    border-bottom:2px solid #1f1f1f;
bottom:65px;
  }
  .p-index-solve__cycle-flow:after{
    content: "";
    display: block;
    width: 0;
    height: 0;
    border-left: 20px solid transparent;
    border-right: 20px solid transparent;
    border-bottom: 20px solid #1f1f1f;
    position:absolute;
    top:0;
    right:10px;
transform: translate(60px,-25px);
  }
    .p-index-solve__cycle-list{
      margin-bottom: 15px;
    position:relative;
    }
  .p-index-solve__cycle-list + .p-index-solve__cycle-list:before{
      content:"";
      display: block;
      width: 0;
      height: 0;
      border-left: 25px solid transparent;
      border-right: 25px solid transparent;
      border-top: 25px solid #fffd00;
      margin:0 auto 25px;
    }
/*  .p-index-solve__cycle-list.last-arrow{*/
/*position:relative;*/
/*    z-index:0;*/
/*  }*/
/*  .p-index-solve__cycle-list.last-arrow:after {*/
/*    content:"";*/
/*    width: 50%;*/
/*    height:100%;*/
/*    display:inline-block;*/
/*    border-bottom:4px #1f1f1f solid;*/
/*    border-right:4px #1f1f1f solid;*/
/*    position:absolute;*/
/*bottom:65px;*/
/*right:-20px;*/
/*    z-index:-1;*/
/*  }*/

    .p-index-solve__cycle-list__title{
      font-size: 2rem;
      font-size: max(2rem, 20px);
      line-height: 1;
      margin-bottom: 10px;
      background: #fff;

    }
    .p-index-solve__cycle-list__text{
      position: relative;
    }

  .p-index-staff{

  }
  .p-index-staff__btn{
  }

  .p-index-staff__catch{
    font-size: 4rem;
    font-size: max(4rem, 36px);
    font-weight: bold;
  }
  .p-index-staff__row{
       margin-left: auto;
     }
  .p-index-staff__image{
    margin-top: 6rem;
  }
    .p-index-word{
      margin-bottom: 10rem;
    }
    .p-index-word__body{
      max-width: 90rem;
      margin: 40px auto 0 auto;
      padding: 4rem 6rem;
    }
    .p-index-word__title{
      font-size: 2.8rem;
      font-size: max(2.8rem, 28px);
    }
    .p-index-word__tag{
      font-size: 2rem;
      font-size: max(2rem, 20px);
    }
    .p-index-word__tag__list{
      padding:10px 5px;
      font-weight: bold;
    }
    .p-machine-block
    {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;

        margin-top: 8rem;
        padding: 4rem 5rem;

        -webkit-box-align: start;
        -ms-flex-align: start;
        align-items: flex-start;
        -webkit-column-gap: 4rem;
           -moz-column-gap: 4rem;
                column-gap: 4rem;
    }

    .p-machine-block + .p-machine-block
    {
        margin-top: 5rem;
    }

    .p-machine-block__image
    {
        width: 21.4rem;
        height: 21.4rem;

        -ms-flex-negative: 0;
        flex-shrink: 0;
    }

    .p-machine-block__body
    {
        padding-top: 0;

        -webkit-box-flex: 1;
        -ms-flex-positive: 1;
        flex-grow: 1;
    }

    .p-machine-block__title
    {
        font-size: 2.6rem;
        font-size: max(2.6rem, 24px);

        text-align: left;
    }

    .p-machine-block__text
    {
        line-height: 2;
    }

    .p-message
    {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;

        margin-top: 8rem;
        padding-bottom: 10rem;

        -webkit-box-align: start;
        -ms-flex-align: start;
        align-items: flex-start;
        -webkit-column-gap: 6rem;
           -moz-column-gap: 6rem;
                column-gap: 6rem;
    }

    .p-message + .p-message
    {
        margin-top: 10rem;
    }

    .p-message__sub
    {
        display: block;

        width: 20rem;

        -ms-flex-negative: 0;
        flex-shrink: 0;
    }

    .p-message__image
    {
        width: 100%;
    }

    .p-message__info
    {
        margin-top: 2rem;
    }

    .p-message__belong
    {
        font-size: 1.5rem;
        font-size: max(1.5rem, 13px);
    }

    .p-message__name
    {
        font-size: 1.8rem;
        font-size: max(1.8rem, 16px);

        margin-top: .5em;
    }

    .p-message__main
    {
        padding-top: 0;

        -webkit-box-flex: 1;
        -ms-flex-positive: 1;
        flex-grow: 1;
    }

    .p-message__catch
    {
        font-size: 2.6rem;
        font-size: max(2.6rem, 22px);
    }

    .p-message__headline
    {
        font-size: 2.2rem;
        font-size: max(2.2rem, 18px);

        margin-top: 2.5em;
    }

    .p-message__catch + .p-message__headline
    {
        margin-top: 2em;
    }

    .p-message__text
    {
        line-height: 2;

        margin-top: 2em;
    }

    .p-message__headline + .p-message__text
    {
        margin-top: 1.5em;
    }

    .p-price-table__content
    {
        width: 100%;
        margin-right: 0;
    }

    .p-price-table th,
    .p-price-table td
    {
        padding: 1.8rem 2rem;
    }

    .p-price-table th:nth-child(1)
    {
        width: 11em;
    }

    .p-service-block
    {
        max-width: 90rem;
        margin: 0 auto;
        padding: 4rem 6rem;
    }

    .p-service-block + .p-service-block
    {
        margin-top: 5rem;
    }

    .p-service-block__title
    {
        font-size: 2.4rem;
        font-size: max(2.4rem, 20px);

        padding: 1.2rem 2.2rem;
    }

    .p-service-block__text
    {
        line-height: 2;

        margin-top: 3rem;
    }

    .p-service-list
    {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;

        margin-top: 8rem;

        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
        gap: 8rem 7rem;
    }

    .p-service-list__item::before
    {
        font-size: 3.4rem;
        font-size: max(3.4rem, 24px);
    }

    .p-service-list__item + .p-service-list__item
    {
        margin-top: 0;
    }

    .p-service-list__item-title
    {
        font-size: 2rem;
        font-size: max(2rem, 18px);
        line-height: 1.666;
    }

    .p-service-list__item-text
    {
        line-height: 2;
    }

    .p-service__beginner
    {
        margin-top: 5rem;
    }

    .p-service__price
    {
        margin-top: 5rem;
    }

    .p-service__price-block
    {
        margin-top: 6rem;
        padding-bottom: 5rem;
    }

    .p-service__price-block + .p-service__price-block
    {
        margin-top: 5rem;
    }

    .p-service__price-block dt
    {
        font-size: 2.2rem;
        font-size: max(2.2rem, 18px);
    }

    .p-service__price-block dd
    {
        line-height: 2;
    }

    .p-service__price-image
    {
        margin: 0 auto;
        padding: 0;
    }

    .p-service__price-image-inner
    {
        width: 100%;
        margin-right: 0;
    }

    .p-service__price-btns
    {
        margin-top: 6rem;

        -webkit-column-gap: 2.5rem;
           -moz-column-gap: 2.5rem;
                column-gap: 2.5rem;
    }

    .p-service__price-notes
    {
        font-size: 1.4rem;
        font-size: max(1.4rem, 12px);

        max-width: 90rem;
        margin: 3rem auto 0;
    }

    .p-service__pdf
    {
            flex-direction: row;

        margin-top: 10rem;

        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
        -ms-flex-direction: row;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        gap: 2rem;
    }

    .p-service__pdf-btn
    {
        max-width: 30rem;
    }

    .p-staff
    {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;

        margin-top: 6rem;
        padding: 0;

        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
        gap: 6rem 7rem;
    }

    .p-staff__item
    {
        width: calc(50% - 3.5rem);
    }

    .p-staff__item + .p-staff__item
    {
        margin-top: 0;
    }

    .p-staff__item-body
    {
        padding-top: 3.8rem;
    }

    .p-staff__item-name
    {
        top: -4.6rem;
        right: 1.8rem;

        min-width: 15.4rem;
        padding: .6rem 1.6rem;
    }

    .p-staff__item-name-ja
    {
        font-size: 2rem;
        font-size: max(2rem, 16px);
    }

    .p-store-profile
    {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;

        margin-top: 6rem;

        border-top: 1px solid #e3e3e3;

        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    }

    .p-store-profile__title
    {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;

        min-height: 9rem;
        padding: 1.8rem 2rem;

        border-bottom: 1px solid #e3e3e3;

        -ms-flex-preferred-size: 22%;
        flex-basis: 22%;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
    }

    .p-store-profile__body
    {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;

        padding: 1.8rem 3.6rem;

        -ms-flex-preferred-size: 78%;
        flex-basis: 78%;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
    }

    .p-training
    {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;

        margin-top: 10rem;
        padding-bottom: 6rem;

        -webkit-box-align: start;
        -ms-flex-align: start;
        align-items: flex-start;
    }

    .p-training + .p-training
    {
        margin-top: 6rem;
    }

    .p-training__sub
    {
        width: 22rem;
        padding: 1rem 4rem 0 0;

        -ms-flex-negative: 0;
        flex-shrink: 0;
    }

    .p-training__title-en
    {
        font-size: 1.8rem;
        font-size: max(1.8rem, 14px);
        line-height: 1.7;
    }

    .p-training__main
    {
        -webkit-box-flex: 1;
        -ms-flex-positive: 1;
        flex-grow: 1;
    }

    .p-training__head
    {
        padding-top: 0;

        -webkit-column-gap: 3rem;
           -moz-column-gap: 3rem;
                column-gap: 3rem;
    }

    .p-training__title
    {
        font-size: 3rem;
        font-size: max(3rem, 22px);
    }

    .p-training__body
    {
        line-height: 2;

        padding-top: 3rem;
    }
}

@media only screen and (min-width: 560px) and (hover: hover) and (pointer: fine)
{
    .c-news-list__item-title a:hover span
    {
        background-position: left bottom;
        background-size: 100% 1px;
    }

    .p-index-link__block:hover .p-index-link__block-bg::after
    {
        background-color: rgba(0, 0, 0, .7);
    }

    .p-index-link__block:hover .p-index-link__block-bg img
    {
        -webkit-transform: translate(-50%, -50%) scale(1.1);
                transform: translate(-50%, -50%) scale(1.1);
    }
}

@media only screen and (min-width: 960px)
{
    html
    {
        font-size: .7246376812vw;

        scroll-padding-top: 74px;
    }

    body
    {
        font-size: 1.6rem;
        font-size: max(1.6rem, 14px);
    }

    .sp-tab-only
    {
        display: none !important;
    }

    .pc-only
    {
        display: block !important;
    }

    .header-observer
    {
        top: 20rem;
    }

    .l-hamburger
    {
        display: none;
    }

    .l-header__container
    {
        position: relative;

        height: 88px;
        padding: 0 0 0 36px;

        -webkit-transition: background .3s ease, height .3s ease;
                transition: background .3s ease, height .3s ease;
    }

    .is-change .l-header__container
    {
        height: 74px;
    }

    .l-header__logo a
    {
        width: 186px;
        height: 57px;
        padding-top: 57px;

        -webkit-transition: opacity .25s, -webkit-transform .3s ease;
                transition: opacity .25s, -webkit-transform .3s ease;
                transition: transform .3s ease, opacity .25s;
                transition: transform .3s ease, opacity .25s, -webkit-transform .3s ease;
        -webkit-transform-origin: top left;
                transform-origin: top left;
    }

    .is-change .l-header__logo a
    {
        -webkit-transform: scale(.9);
                transform: scale(.9);
    }

    .l-header__body
    {
        position: static;

        display: block;

        width: auto;
        margin-left: auto;
        padding-left: 3rem;

        background: transparent;
    }

    .l-nav
    {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
    }

    .l-nav__list
    {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;

        padding: 0;

        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        -webkit-column-gap: clamp(3rem, (1200px - 100vw) * 1000 * -1, 4rem);
           -moz-column-gap: clamp(3rem, (1200px - 100vw) * 1000 * -1, 4rem);
                column-gap: clamp(3rem, (1200px - 100vw) * 1000 * -1, 4rem);
    }

    .l-nav__item
    {
        font-size: 1.4rem;
        font-size: max(1.4rem, 13px);
        font-weight: 700;

        border: none;
    }

    .l-nav__item a
    {
        line-height: 1.2;

        height: auto;

        color: inherit;
    }

    .l-nav__item--reserve
    {
        margin-top: 0;
    }

    .l-nav__item--reserve a
    {
        height: 88px;

        -webkit-transition: height .3s ease, opacity .25s;
                transition: height .3s ease, opacity .25s;

        color: #fff;
        background: #121212;
    }

    .is-change .l-nav__item--reserve a
    {
        height: 74px;

        color: #fff;
    }

    .l-nav__reserve
    {
        width: 20rem;
        max-width: 20rem;
    }

    .l-reserve::before
    {
        display: none;
    }

    .l-reserve__body
    {
        width: 50%;
        margin-left: auto;
    }

    .c-column-list
    {
        gap: 6rem 2.6rem;
    }

    .c-column-list__item
    {
        width: calc(25% - 1.95rem);
    }

    .c-container
    {
        max-width: calc(128rem + 16.666vw);
        margin: 0 auto;
        padding: 0 8.333vw;
    }

    .c-container--sm
    {
        max-width: calc(90rem + 16.666vw);
    }

    .c-news-list__item
    {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;

        -webkit-box-align: start;
        -ms-flex-align: start;
        align-items: flex-start;
        -webkit-column-gap: 4rem;
           -moz-column-gap: 4rem;
                column-gap: 4rem;
    }

    .c-news-list__item-head
    {
        padding-top: .2em;

        -webkit-column-gap: 4rem;
           -moz-column-gap: 4rem;
                column-gap: 4rem;
    }

    .c-news-list__item-body
    {
        padding-top: 0;
    }

    .c-post h2:first-child,
    .c-post h3:first-child,
    .c-post h4:first-child,
    .c-post h5:first-child,
    .c-post h6:first-child
    {
        margin-top: 0;
    }

    .c-post h2
    {
        margin-top: 8rem;
    }

    .c-post h3
    {
        margin-top: 5rem;
    }

    .c-post h4
    {
        margin-top: 4rem;
    }

    .c-post h5
    {
        margin-top: 3rem;
    }

    .c-post h6
    {
        margin-top: 3rem;
    }

    .p-about-exercise__row
    {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;

        -webkit-column-gap: 6rem;
           -moz-column-gap: 6rem;
                column-gap: 6rem;
    }

    .p-about-exercise__image
    {
        width: 49.8rem;
        height: 40rem;

        -ms-flex-negative: 0;
        flex-shrink: 0;
    }

    .p-about-exercise__body
    {
        padding-top: 0;

        -webkit-box-flex: 1;
        -ms-flex-positive: 1;
        flex-grow: 1;
    }

    .p-about-exercise__keyword
    {
        margin-top: 4rem;
    }

    .p-about-feature__block
    {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;

        -webkit-box-align: start;
        -ms-flex-align: start;
        align-items: flex-start;
        -webkit-column-gap: 8rem;
           -moz-column-gap: 8rem;
                column-gap: 8rem;
    }

    .p-about-feature__block--reverse
    {
            flex-direction: row-reverse;

        -webkit-box-orient: horizontal;
        -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
    }

    .p-about-feature__image
    {
        width: 56rem;

        -ms-flex-negative: 0;
        flex-shrink: 0;
    }

    .p-about-feature__body
    {
        padding-top: 0;

        -webkit-box-flex: 1;
        -ms-flex-positive: 1;
        flex-grow: 1;
    }

    .p-about-feature__text
    {
        margin-top: 4rem;
    }

    .p-flow__item
    {
        -webkit-column-gap: 6rem;
           -moz-column-gap: 6rem;
                column-gap: 6rem;
    }

    .p-flow__item-step
    {
        width: 9rem;
        height: 11rem;
        padding: 2rem;
    }

    .p-flow__item-image
    {
        width: 30rem;
    }

    .p-index-about__main
    {
        padding: 13rem 0 18rem;
    }

    .p-index-about__main-bg
    {
        position: absolute;
        top: 0;
        right: 65%;
        bottom: 0;
        left: 0;

        display: block;
        overflow: hidden;

        height: 100%;

        border-radius: 0 80px 0 0;
        background: #121212;
    }

    .p-index-about__main-bg img
    {
        width: 100%;
        height: 100%;

        -o-object-fit: cover;
           object-fit: cover;
    }

    .p-index-about__container
    {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;

        max-width: calc(50% + 64rem + 8.333vw);
        margin: 0 auto 0 0;
        padding-left: 0;

        -webkit-box-pack: end;
        -ms-flex-pack: end;
        justify-content: flex-end;
    }

    .p-index-about__image
    {
        width: 80.3rem;
    }

    .p-index-about__body
    {
        width: 65.4rem;
        padding: 6rem 0 0 11.4rem;

        -ms-flex-negative: 0;
        flex-shrink: 0;
    }


  .p-index-fitness__row
    {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
            flex-direction: row-reverse;

        margin-top: 5rem;

        -webkit-box-orient: horizontal;
        -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
        -webkit-box-align: start;
        -ms-flex-align: start;
        align-items: flex-start;
    }

    .p-index-fitness__image
    {
        width: 55rem;

        -ms-flex-negative: 0;
        flex-shrink: 0;
    }

    .p-index-fitness__body
    {
        padding: 0 5rem 0 0;

        -webkit-box-flex: 1;
        -ms-flex-positive: 1;
        flex-grow: 1;
    }

    .p-index-kv__catch-main
    {
            flex-direction: row;

        padding-top: 1em;

        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
        -ms-flex-direction: row;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        gap: 0 4.6rem;
    }

    .p-index-kv__catch-en
    {
        font-size: 10.8rem;
        font-size: max(10.8rem, 80px);

        width: 4.5em;
    }
    .p-index-kv__catch-jp
    {
        font-size: 8rem;
        font-size: max(8rem, 64px);
        width: auto;
        white-space: nowrap;
    }
  .p-index-kv__catch-jp__small
  {
    font-size: 6rem;
    font-size: max(6rem, 42px);
    width: auto;
    white-space: nowrap;
    text-align: left;
  }

    .p-index-kv__catch.second .p-index-kv__catch-jp
    {
        font-size: 100rem;
        font-size: max(12rem, 100px);
        width: auto;
        white-space: nowrap;
      line-height: 1;
    }

  .p-index-kv__catch.second .p-index-kv__catch-jp__small
  {
    font-size: 6rem;
    font-size: max(7rem, 42px);
    width: auto;
    white-space: nowrap;
    text-align: left;
  }

  .p-index-kv__catch.second .p-index-kv__catch-jp__x-small
  {
    font-size: 2rem;
    font-size: max(2rem, 20px);
    width: auto;
    white-space: nowrap;
  }
    .p-index-kv__catch-en:nth-of-type(1)
    {
        text-align: right;
    }

    .p-index-kv__catch-mark
    {
        width: 7rem;
        height: 7rem;
    }

    .p-index-kv__catch-mark::before,
    .p-index-kv__catch-mark::after
    {
        width: 3px;
        width: .3rem;
    }

    .p-index-kv__catch-sub
    {
        font-size: 3rem;
        font-size: max(3rem, 32px);
      margin-bottom: 1rem;
    }
  .p-index-kv__catch-sub.p-index-kv__catch-sub__small
  {
    font-size: 2.4rem;
    font-size: max(2.4rem, 24px);
    line-height: 1.4;
  }

  .p-index-kv__catch-sub.p-index-kv__catch-sub__small .is-small
  {;
    font-size: 40%;
  }
  .p-index-kv__catch-sub.p-index-kv__catch-sub__x-small
  {
    font-size: 2.2rem;
    font-size: max(2.2rem, 18px);
  }
    .p-index-kv__banner
    {
        right: 4rem;
        bottom: 4rem;
    }

    .p-index-kv__banner img
    {
        max-width: 36rem;
    }
  .p-index-kv__banner-ul{
    display: flex;
    flex-wrap: wrap;
    justify-content:end;
    width:710px;
  }
  .p-index-kv__banner-list{
    margin-right: 10px;
    margin-bottom: 10px;
  }
  .p-index-kv__banner-list a img{
    height: 56px;
    width: auto;

  }
  .p-index-solve__cycle-flow{

  }
    .p-message__sub
    {
        width: 29rem;
    }

    .p-price-table
    {
        margin: 3rem auto 0;
        padding: 0;
    }

    .p-price-table--noscroll
    {
        padding: 0;
    }

    .p-service-list__item
    {
        width: calc(33.333% - 4.666rem);
    }

    .p-staff__item
    {
        width: calc(33.333% - 4.666rem);
    }

    .p-training__sub
    {
        width: 27rem;
    }
}

@media only screen and (min-width: 1380px)
{
    html
    {
        font-size: 62.5%;
    }
}

@media only screen and (max-width: 959px) and (min-width: 560px)
{
    html
    {
        font-size: 1.0416666667vw;

        scroll-padding-top: 70px;
    }

    body
    {
        font-size: 1.5rem;
        font-size: max(1.5rem, 14px);
    }

    .l-hamburger
    {
        width: 70px;
        height: 70px;
    }

    .l-hamburger__icon
    {
        width: 32px;
        height: 22px;
    }

    .l-header__container
    {
        height: 70px;
        padding: 0 0 0 20px;
    }

    .l-header__logo a
    {
        width: 158px;
        height: 48px;
        padding-top: 48px;
    }

    .l-nav__list
    {
        padding: 80px 10vw 7rem;
    }

    .l-nav__item
    {
        font-size: 1.6rem;
        font-size: max(1.6rem, 14px);
    }

    .l-nav__item a
    {
        height: 7.8rem;
    }

    .l-nav__item--reserve
    {
        margin-top: 4rem;
    }

    .l-nav__reserve
    {
        max-width: 32rem;
    }

    .l-reserve__body
    {
        width: 80%;
        margin: 0 auto;
    }

    .c-column-list__item
    {
        width: calc(50% - 2rem);
    }

    .c-container
    {
        padding: 0 7.5vw;
    }

    .c-news-list__item-body
    {
        padding-top: 1.6rem;
    }

    .p-about-exercise__image
    {
        height: 40rem;
    }

    .p-about-exercise__body
    {
        padding-top: 2.6rem;
    }

    .p-about-feature__body
    {
        padding-top: 3rem;
    }

    .p-index-about__btn
    {
        margin: 6rem 0 0 0;
    }
  .p-index-about__questionary-number__circle{
    width:200px;
    height:200px;
  }
  .p-index-features__conditions{
    font-size: 2rem;
    font-size: max(2rem, 18px);
  }
  .p-index-features__conditions__list{
    font-size: 1.8rem;
    font-size: max(1.8rem, 16px);
  }

    .p-index-kv__catch-en
    {
        font-size: 8rem;
        font-size: max(8rem, 64px);
    }
  .p-index-kv__catch.second .p-index-kv__catch-jp__small{
    font-size: 4.5rem;
    font-size: max(4.5rem, 42px);
    line-height: 1;
  }

  .p-index-kv__catch.second .p-index-kv__catch-jp__x-small
  {
    font-size: 2rem;
    font-size: max(2rem, 20px);
    width: auto;
    white-space: nowrap;
  }
    .p-index-kv__catch-mark
    {
        width: 6rem;
        height: 6rem;
    }

    .p-index-kv__catch-sub
    {
        font-size: 3.8rem;
        font-size: max(3.8rem, 28px);
    }

  .p-index-kv__banner-ul{
    display: flex;
    flex-wrap: wrap;
    justify-content:end;
    width:530px;
  }
  .p-index-kv__banner-list img{
    max-width: 34rem;

  }

  .p-index-kv__banner-list a img{
    height: 56px;
    width: auto;

  }
  .p-index-staff__image img{
    width: 200px;
  }
    .p-price-table
    {
        margin: 3rem -7.5vw 0;
        padding-left: 7.5vw;
    }

    .p-price-table--noscroll
    {
        padding-right: 7.5vw;
    }

    .p-price-table__content
    {
        width: 100rem;
        margin-right: 7.5vw;
    }

    .p-price-table__content--100p
    {
        width: 100%;
    }

    .p-service-list__item
    {
        width: calc(50% - 3.5rem);
    }
}

@media (hover: hover) and (pointer: fine)
{
    a:hover
    {
        text-decoration: none;
    }

    .l-footer__logo a:hover
    {
        opacity: .7;
    }

    .l-footer__sns-item:hover
    {
        opacity: .7;
    }

    .l-footer__nav-item a:hover
    {
        opacity: .7;
    }

    .l-footer__btn:hover
    {
        color: #121212;
        background: transparent;
    }

    .l-footer__link-item a:hover
    {
        opacity: .8;
    }

    .l-header__logo a:hover
    {
        opacity: .7;
    }

    .l-nav__item a:hover
    {
        opacity: .7;
    }

    .l-reserve__btn:hover
    {
        background: rgba(255, 255, 255, .3);
    }

    .c-breadcrumb__item a:hover
    {
        opacity: .7;
    }

    .c-btn[href$='.pdf']:hover::after
    {
        -webkit-filter: none;
                filter: none;
    }

    .c-btn:hover
    {
        color: #121212;
        background: transparent;
    }

    .c-btn--white:hover
    {
        color: #121212;
        background: #fff;
    }

    .c-column-list__item a:hover .c-column-list__item-image img
    {
        -webkit-transform: translate(-50%, -50%) scale(1.1);
                transform: translate(-50%, -50%) scale(1.1);
    }

    .c-pagination li a:hover
    {
        background: #eee;
    }

    .c-post a:hover
    {
        text-decoration: none;
    }

    .c-post a:hover img
    {
        opacity: .9;
    }

    .p-index-instagram__item a:hover
    {
        opacity: .8;
    }

    .p-index-instagram__btn:hover
    {
        opacity: .8;
    }

    .p-index-kv__banner > a:hover
    {
        opacity: .8;
    }
}

@media print
{
    .c-container
    {
        padding: 0;
    }
}

@media(min-width: 589px){
  a[href^="tel:"]{
    pointer-events: none;
  }
}
@media only screen and (max-width: 959px) and (min-width: 560px) {
    .sp-only-mb10rem {
        margin-bottom: 10rem;
    }
}
@media only screen and (max-width: 559px) {
    .sp-only-mb10rem {
        margin-bottom: 4rem;
    }
}

@media (max-height: 650px) and (orientation: landscape) {
  .p-index-kv__catch.second .p-index-kv__catch-jp {
    font-size: 60rem;
    font-size: max(5rem, 60px);
    width: auto;
    white-space: nowrap;}
  .p-index-kv__catch-main {
    padding-top: 7em;
  }
  .p-index-kv__catch-main.second{
    margin-bottom: .5em;
    /*margin-top: -70px;*/
  }

  .p-index-kv__catch-sub{
    margin-top: 0;
  }
  .p-index-kv__catch-sub br{
    display: none;
  }
  .p-index-kv__catch-sub.p-index-kv__catch-sub__middle{
    font-size: 2.4rem;
    font-size: max(2.4rem, 22px);
    line-height: 1;
  }
  .p-index-kv__catch-sub.p-index-kv__catch-sub__small {
    font-size: 2rem;
    font-size: max(2rem, 18px);
  }
  .p-index-kv__catch.second .p-index-kv__catch-jp__small{
    font-size: 3.6rem;
    font-size: max(3.6rem, 34px);
    text-align: center;
    line-height: 1;
  }
  .p-index-kv__catch.second .p-index-kv__catch-jp__x-small
  {
    font-size: 2rem;
    font-size: max(2rem, 20px);
    width: auto;
    white-space: nowrap;
  }
}



