@charset "UTF-8";

/*!
 * ress.css • v1.2.2
 * MIT License
 * github.com/filipelinhares/ress
 */

*,
:after,
:before {
    background-repeat: no-repeat;
    -webkit-box-sizing: inherit;
    box-sizing: inherit
}

.lity *,
html {
    -webkit-box-sizing: border-box;
    box-sizing: border-box
}

:after,
:before {
    text-decoration: inherit;
    vertical-align: inherit
}

.c-editor ins,
.c-editor mark,
a,
abbr[title],
html:not(.sp) a.c-nounderline:focus,
html:not(.sp) a.c-nounderline:hover,
html:not(.sp) a:focus,
html:not(.sp) a:hover {
    text-decoration: none
}

* {
    padding: 0;
    margin: 0;
    border-collapse: collapse;
    list-style: none;
    border-spacing: 0;
    border: 0
}

audio:not([controls]) {
    display: none;
    height: 0
}

button,
hr {
    overflow: visible
}

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

summary {
    display: list-item
}

small {
    font-size: 80%
}

[hidden],
template {
    display: none
}

abbr[title] {
    border-bottom: 1px dotted
}

a {
    background-color: transparent;
    -webkit-text-decoration-skip: objects;
    outline-color: #333;
    outline: none
}

a:active,
a:hover {
    outline-width: 0
}

code,
kbd,
pre,
samp {
    font-family: monospace, monospace
}

b,
strong {
    font-weight: bolder
}

dfn {
    font-style: italic
}

mark {
    background-color: #ff0;
    color: #000
}

sub,
sup {
    font-size: 75%;
    line-height: 0
}

sub {
    bottom: -.25em
}

sup {
    top: -.5em
}

input {
    border-radius: 0
}

[aria-controls],
[role=button],
[type=button],
[type=reset],
[type=submit],
button {
    cursor: pointer
}

[aria-disabled],
[disabled] {
    cursor: default
}

[type=number] {
    width: auto
}

[type=search] {
    -webkit-appearance: textfield;
    outline-offset: -2px
}

[type=search]::-webkit-search-cancel-button,
[type=search]::-webkit-search-decoration {
    -webkit-appearance: none
}

textarea {
    overflow: auto;
    resize: vertical
}

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

[type=button]::-moz-focus-inner,
[type=reset]::-moz-focus-inner,
[type=submit]::-moz-focus-inner,
button::-moz-focus-inner {
    border-style: 0;
    padding: 0
}

[type=button]::-moz-focus-inner,
[type=reset]::-moz-focus-inner,
[type=submit]::-moz-focus-inner,
button:-moz-focusring {
    outline: 1px dotted ButtonText
}

[type=reset],
[type=submit],
button,
html [type=button] {
    -webkit-appearance: button
}

button,
select {
    text-transform: none
}

button,
input,
select,
textarea {
    background-color: transparent;
    border-style: none;
    color: inherit
}

select::-ms-expand {
    display: none
}

select::-ms-value {
    color: currentColor
}

legend {
    border: 0;
    display: table;
    white-space: normal
}

::-webkit-file-upload-button {
    -webkit-appearance: button;
    font: inherit
}

.lity-close,
select {
    -webkit-appearance: none
}

img {
    border-style: none;
    vertical-align: bottom;
    height: auto;
    display: block
}

audio,
canvas,
progress,
video {
    display: inline-block
}

[aria-busy=true] {
    cursor: progress
}

::-moz-selection {
    background-color: #b3d4fc;
    color: #000;
    text-shadow: none
}

::selection {
    background-color: #b3d4fc;
    color: #000;
    text-shadow: none
}

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

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

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

.font-genju {
    font-family: GenJyuuGothic-P, sans-serif;
    font-weight: 400;
    -webkit-font-feature-settings: "palt";
    font-feature-settings: "palt"
}

@font-face {
    font-family: AdobeBlank;
    src: url(data:application/font-woff;base64,d09GRk9UVE8AAATUAAkAAAAACkAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAABDRkYgAAAA4AAAAOcAAAEhIl9jq09TLzIAAAHIAAAARQAAAGBRQK3+Y21hcAAAAhAAAAAmAAAALAAMAFNoZWFkAAACOAAAADAAAAA2BZfPvmhoZWEAAAJoAAAAGgAAACQHWf+LaG10eAAAAoQAAAAIAAAACAPoAYhtYXhwAAACjAAAAAYAAAAGAAJQAG5hbWUAAAKUAAACKwAAB2b3USAEcG9zdAAABMAAAAATAAAAIP+4ADJ42mNkYGFmYGRkFHRMyU9KdcpJzMvWLS5ITE4FCZr8kP4h080j183D+EOW8Ycc0w955h8SLN2/eX7V/GJh7eVRkmF4xS/DyCcow/CeR1WG4TuPCgMbEwMjAxsDH0M4QzpDOUM72GDPlNS8ksySSuf8gsqizPSMEgUFIwNDYx0QaaoAVqIQXFlckppbrOCZl5xfVJBflFiSmqKgkVFSUmClr19eXq6XCFKml5yfq6+ph+5cQnwGBpCzGJhBBJjNyMj1Q4FHbYoMI6tQD4/grxqRHx2iDEwsQFlGsAoGBla+Px18AK/lT1cAeNpjYGZ+wTiBgZWBgamLKYKBgcEbQjPGMRgx3GFABYzIHEcXJ38GBwYFBgXmgv8dDAzMBQwVCfqM/5GUKDAwAAArbQs0AAAAeNpjYGBgZGAGYgYGHgYWBgUgzQKEIL7C//8Q8v9DMJ8BAEreBlwAAHjaY2BkYGAA4vc75S7F89t8ZWBmfgEUYbjo4/oZQf/vYH7BXADkMjMwgUQBcKYMvHjaY2BkYGAu+N/BAAXMLxgYGVABEwBNCALqAAAD6AGIAAAAAAAAUAAAAgAAeNrtkz9r20AYxp+zpZhSCEnpBzgolKQk5/8m2FOSJckUYgi0U2VZtlzbkpAVG2+dSukYQj5Bh36A0KFzpw6dOvXLpI/k1ynNYkq3UB8n/+798zx3JwTgufoOhcXvmHPBChtcLTiHAl4K5xl/LWyRI2EbTbwVXmP8i3CB/I2s8DjT/ylMffVMmPqqKkx91RSmvjoRpr56JUx9dSVMffVR+An5JuXbWzwlf6Wash7R91L9EFbQuZ5wDuu5d8J5xq+ELfKNsI0kt+xdg84fCRfIvvAG+b3wJtbznzLeTH3zn4Xpax0J09fyhelrTYXpa10L09da9tLXfiFMX/tEmL72G2H62h8Ow2geD/p+onWlVK7upM+63u+GHU+355PEG0/0ceCGcRTGTuJ19ZafJFGzWJzNZsZJy4wbjovbJms5GDnBcHcSOa535vUvRk58P3x/fe7Fk0EY6LIp1eqt07aAHyZuGEzTldmrtMbO0AuTnhkNOhVTN41qrdRYpfxwT7ZqjUOE/MrmiDFAHz4SaI4KSiijip07rpP20WV1Bx65zZ4Jqz2M+a/57QVwmY2plj6dLNdlZitTTRhvosgxy4ZhxVLNZJ1j5rbJv10OMGJVgCF26RGRXUbPOPu4yHLxyupV+XPOmOsBqwLutswdlFDjeVs45Sn/jPisSrLdBpje5Qz2eEstnsChupfV9BgdUbXDjGGvQYP3WWN145/3/Hc39P8NP/A3/AvEJ2JBAHjaY2BmAIP/WxmMGLAAACzCAeoA) format("woff")
}

@font-face {
    font-family: GenJyuuGothic-P;
    font-weight: 400;
    src: url(../../assets/fonts/GenJyuuGothic-P/GenJyuuGothic-P-Regular.woff2) format("woff2"), url(../../assets/fonts/GenJyuuGothic-P/GenJyuuGothic-P-Regular.woff) format("woff"), url(../../assets/fonts/GenJyuuGothic-P/GenJyuuGothic-P-Regular.ttf) format("TrueType")
}

@font-face {
    font-family: GenJyuuGothic-P;
    font-weight: 700;
    src: url(../../assets/fonts/GenJyuuGothic-P/GenJyuuGothic-P-Bold.woff2) format("woff2"), url(../../assets/fonts/GenJyuuGothic-P/GenJyuuGothic-P-Bold.woff) format("woff"), url(../../assets/fonts/GenJyuuGothic-P/GenJyuuGothic-P-Bold.ttf) format("TrueType")
}

@font-face {
    font-family: MuseoSans;
    font-weight: 900;
    src: url(../../assets/fonts/MuseoSans/MuseoSans-Black.woff2) format("woff2"), url(../../assets/fonts/MuseoSans/MuseoSans-Black.woff) format("woff"), url(../../assets/fonts/MuseoSans/MuseoSans-Black.ttf) format("TrueType")
}


/*! ==================================================
*  Web Fonts Title: Yaku Han JP
*  Version: 1.3.1
*  GitHub URL: https://github.com/qrac/yakuhanjp
*  Author: Qrac
*  Author URL: https://twitter.com/Qrac_jp
*  "Noto Sans CJK JP" licensed under the SIL Open Font License
*  https://www.google.com/get/noto/#/
=================================================== */

body,
html {
    min-height: 100%
}

html {
    -webkit-text-size-adjust: 100%;
    font-size: 62.5%;
    overflow-x: hidden
}

body {
    color: #333;
    font-family: YakuHanJP, Noto Sans JP, sans-serif;
    font-size: 1.6rem;
    -webkit-font-feature-settings: auto;
    font-feature-settings: auto;
    -webkit-font-smoothing: subpixel-antialiased;
    font-weight: 400;
    line-height: 1.75;
    -webkit-text-size-adjust: 100%;
    word-wrap: break-word;
    overflow-wrap: break-word;
    letter-spacing: .01em
}

button,
code,
input,
optgroup,
pre,
select,
textarea {
    color: #333;
    background-color: #fff;
    font-size: 1.6rem;
    font-family: YakuHanJP, Noto Sans JP, sans-serif;
    line-height: 1.75
}

.p-form,
input[type=email],
input[type=number],
input[type=password],
input[type=tel],
input[type=text],
input[type=url],
select,
textarea {
    font-family: YakuHanJP, Noto Sans JP, sans-serif
}

img[src$=".svg"]:not([width]),
img[src*=".svg?"]:not([width]) {
    width: 100%
}

img,
legend {
    max-width: 100%
}

progress,
sub,
sup {
    vertical-align: baseline
}

body,
svg:not(:root) {
    overflow: hidden
}

a,
legend {
    color: inherit
}

.pc a[href^="tel:"] {
    cursor: text;
    pointer-events: none;
    text-decoration: none
}

[type=submit],
a,
button,
label[for] {
    cursor: pointer
}

button:focus {
    outline: 0
}

input[type=email],
input[type=number],
input[type=password],
input[type=tel],
input[type=text],
input[type=url],
select,
textarea {
    border: 1px solid #aaa;
    background-color: #f5f5f5;
    outline: 0!important;
    width: 100%;
    border-radius: 4px;
    -webkit-transition: border-color .35s ease-in-out 0s, box-shadow .35s ease-in-out 0s;
    -webkit-transition: border-color .35s ease-in-out 0s, -webkit-box-shadow .35s ease-in-out 0s;
    transition: border-color .35s ease-in-out 0s, -webkit-box-shadow .35s ease-in-out 0s;
    transition: border-color .35s ease-in-out 0s, box-shadow .35s ease-in-out 0s;
    transition: border-color .35s ease-in-out 0s, box-shadow .35s ease-in-out 0s, -webkit-box-shadow .35s ease-in-out 0s
}

html.sp input[type=email],
html.sp input[type=number],
html.sp input[type=password],
html.sp input[type=tel],
html.sp input[type=text],
html.sp input[type=url],
html.sp select,
html.sp textarea {
    font-size: 16px!important;
    font-size: 1.6rem!important
}

select {
    -moz-appearance: none;
    background-color: #fff
}

input[type=email]::-webkit-input-placeholder,
input[type=number]::-webkit-input-placeholder,
input[type=password]::-webkit-input-placeholder,
input[type=tel]::-webkit-input-placeholder,
input[type=text]::-webkit-input-placeholder,
input[type=url]::-webkit-input-placeholder,
textarea::-webkit-input-placeholder {
    color: #cacaca;
    font-size: 1.5rem;
    font-weight: 400;
    letter-spacing: .03em
}

input[type=email]:-ms-input-placeholder,
input[type=number]:-ms-input-placeholder,
input[type=password]:-ms-input-placeholder,
input[type=tel]:-ms-input-placeholder,
input[type=text]:-ms-input-placeholder,
input[type=url]:-ms-input-placeholder,
textarea:-ms-input-placeholder {
    color: #cacaca;
    font-size: 1.5rem;
    font-weight: 400;
    letter-spacing: .03em
}

input[type=email]::-moz-placeholder,
input[type=number]::-moz-placeholder,
input[type=password]::-moz-placeholder,
input[type=tel]::-moz-placeholder,
input[type=text]::-moz-placeholder,
input[type=url]::-moz-placeholder,
textarea::-moz-placeholder {
    color: #cacaca;
    font-size: 1.5rem;
    font-weight: 400;
    letter-spacing: .03em
}

html body .db {
    display: block
}

html body .dib {
    display: inline-block
}

html body .dn {
    display: none
}

.c-container,
.l-wrapper {
    position: relative;
    z-index: 1
}

.c-container {
    max-width: 1210px;
    width: 100%;
    margin-right: auto;
    margin-left: auto;
    padding-right: 20px;
    padding-left: 20px
}

.p-btn {
    overflow: hidden;
    font-size: 1.6rem;
    display: block;
    margin: 0 auto;
    text-align: center;
    position: relative;
    background-color: #ed796c;
    color: #fff;
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
    -webkit-transition: .3s ease-in-out;
    transition: .3s ease-in-out
}

.p-btn .c-icon,
.p-btn i {
    fill: #fff
}

.p-btn__form {
    display: -webkit-box;
    display: -ms-flexbox
}

.p-btn-h45 {
    height: 45px
}

.p-btn-h46 {
    height: 46px
}

.p-btn-h50 {
    height: 50px
}

.p-btn-h55 {
    height: 55px
}

.p-btn-h60 {
    height: 60px
}

.p-btn-h90 {
    height: 90px
}

.p-btn-w150 {
    max-width: 150px;
    width: 100%
}

.p-btn-w170 {
    max-width: 170px;
    width: 100%
}

.p-btn-w190 {
    max-width: 190px;
    width: 100%
}

.p-btn-w200 {
    max-width: 200px;
    width: 100%
}

.p-btn-w210 {
    max-width: 210px;
    width: 100%
}

.p-btn-w230 {
    max-width: 230px;
    width: 100%
}

.p-btn-w240 {
    max-width: 240px;
    width: 100%
}

.p-btn-w260 {
    max-width: 260px;
    width: 100%
}

.p-btn-w300 {
    max-width: 300px;
    width: 100%
}

.p-btn-w310 {
    max-width: 310px;
    width: 100%
}

.p-btn-w350 {
    max-width: 350px;
    width: 100%
}

.p-btn-f15 {
    font-size: 1.5rem
}

.p-btn-f16 {
    font-size: 1.6rem
}

.p-btn-f17 {
    font-size: 1.7rem
}

.p-btn__white {
    color: #e47296;
    border-color: #fff;
    background-color: #fff
}

.p-btn__green {
    color: #fff;
    border-color: #74b263;
    background-color: #74b263;
    -webkit-box-shadow: inset 0 0 0 2px #74b263;
    box-shadow: inset 0 0 0 2px #74b263
}

.p-btn__green02 {
    color: #fff;
    border-color: #06c755;
    background-color: #06c755;
    -webkit-box-shadow: inset 0 0 0 2px #06c755;
    box-shadow: inset 0 0 0 2px #06c755;
    position: relative;
    z-index: 1
}

.p-btn__green02:before {
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0;
    z-index: -1;
    -webkit-transition: opacity .3s ease-in-out;
    transition: opacity .3s ease-in-out;
    background: hsla(0, 0%, 100%, .2)
}

.p-btn__brown {
    color: #57331d;
    border: 2px solid #57331d;
    background-color: #fff
}

.p-btn__brown .c-icon {
    fill: #57331d;
    -webkit-transition: .3s ease-in-out;
    transition: .3s ease-in-out
}

.p-btn__red {
    color: #fff;
    background-color: #ed796c;
    position: relative;
    z-index: 1
}

.p-btn__red:before {
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0;
    z-index: -1;
    -webkit-transition: opacity .3s ease-in-out;
    transition: opacity .3s ease-in-out;
    background: hsla(0, 0%, 100%, .2)
}

.p-btn__red .c-icon {
    fill: #fff
}

.p-btn--r5 {
    border-radius: 5px
}

.p-btn--r8 {
    border-radius: 8px
}

.p-btn--r10 {
    border-radius: 10px
}

.p-btn--r15 {
    border-radius: 15px
}

.p-btn--r20 {
    border-radius: 20px
}

.p-btn--r23 {
    border-radius: 23px
}

.p-btn--r25 {
    border-radius: 25px
}

.p-btn--r30 {
    border-radius: 30px
}

.p-btn--tlr30 {
    border-top-left-radius: 30px
}

.p-btn--trr30 {
    border-top-right-radius: 30px
}

.p-btn--blr30 {
    border-bottom-left-radius: 30px
}

.p-btn--brr30 {
    border-bottom-right-radius: 30px
}

.p-btn__base {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
}

.p-btn__base .c-icon-contact {
    margin-right: 10px
}

.p-btn__base .c-icon-arrow {
    position: absolute;
    top: 50%;
    right: 50px;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    margin-top: 1px
}

.p-btn__base .p-btn__inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    padding-bottom: 2px;
    font-weight: 500;
    margin: 0 13px
}

table[class*=c-form__table] select {
    line-height: normal;
    outline: none;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    font-size: 1.4rem;
    -webkit-font-smoothing: subpixel-antialiased;
    -moz-osx-font-smoothing: auto;
    border: 1px solid #bfbfbf;
    border-radius: 5px;
    padding: 5px 13px;
    background: url(../../assets/img/contact/select_arr.png) 100% no-repeat, #fff;
    background: url(../../assets/img/contact/select_arr.png) 100% no-repeat, -webkit-linear-gradient(top, #fff, #eaeaea 99%)
}

table[class*=c-form__table] select::-ms-expand {
    display: none
}

table[class*=c-form__table] option {
    padding: 0
}

table[class*=c-form__table] textarea {
    width: 100%;
    height: 100%;
    vertical-align: middle;
    padding: 15px;
    font-size: 1.5rem;
    line-height: 1.66;
    overflow: auto;
    border: 1px solid #999;
    border-radius: 8px;
    background: #fff
}

table[class*=c-form__table] tbody tr td.td-center,
table[class*=c-form__table] tbody tr th.th-center {
    text-align: center
}

table[class*=c-form__table].-table-wide {
    width: 100%
}

table[class*=c-form__table].-table-th290 tr th {
    width: 290px
}

input[type=email],
input[type=password],
input[type=submit],
input[type=tel],
input[type=text],
textarea {
    line-height: normal;
    outline: none;
    background: none;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    font-size: 1.6rem;
    border-radius: unset;
    color: #222;
    direction: ltr
}

input[type=email][disabled],
input[type=password][disabled],
input[type=submit][disabled],
input[type=tel][disabled],
input[type=text][disabled],
textarea[disabled] {
    background: #dcdcdc;
    cursor: not-allowed
}

.p-contact-sec {
    padding: 0 0 90px
}

.p-contact-sec .l-hero__ttl {
    padding-bottom: 0
}

.p-contact-sec .p-parts-tel {
    padding: 3px 0 0
}

.p-contact-sec p {
    max-height: 100%
}

.p-contact {
    padding: 45px 0 100px;
    background: #f1f7ef;
    position: relative
}

.p-contact .p-wrap {
    width: 100%;
    max-width: 970px;
    margin: 0 auto
}

.p-contact .p-parts__head--bottom {
    margin: 35px 0 40px
}

.p-contact .p-parts__text {
    font-size: 1.6rem;
    letter-spacing: .01em;
    margin-bottom: 2px;
    max-height: 100%
}

.p-contact .p-parts__text a {
    color: #013c85
}

.c-form {
    border-radius: 10px;
    background: #fff;
    padding: 35px 30px 60px
}

.c-form .c-text-input {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 13px 15px;
    border-radius: 7px!important;
    font-size: 1.5rem;
    background: #fff!important;
    font-weight: 400;
    letter-spacing: .03em
}

.c-form .c-text-input--fluid {
    display: block;
    width: 100%
}

.c-form input[type=checkbox][disabled]+span:before {
    background: #dcdcdc
}

.c-form label {
    line-height: 1
}

.c-form .radio {
    margin-bottom: 5px
}

.c-form .p-parts__check {
    margin: 15px auto 25px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    position: relative
}

.c-form .p-parts__check .wpcf7-list-item {
    margin-right: 0
}

.c-form .p-parts__check label {
    font-size: 1.6rem;
    line-height: 1;
    letter-spacing: 0
}

.c-form .others {
    float: left
}

.c-form .wpcf7-list-item {
    margin-left: 0;
    display: inline-block
}

.c-form .wpcf7-list-item:not(:first-child) {
    margin-top: 16px
}

.c-form .wpcf7-list-item [type=checkbox] {
    cursor: pointer;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    vertical-align: middle;
    -webkit-box-flex: 0;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    width: 1.6rem;
    height: 1.6rem;
    border: 1px solid #999;
    margin-right: .6rem;
    background-color: #fff;
    outline: 0;
    background-size: .8em;
    border-radius: .2rem;
    background-repeat: no-repeat;
    margin-bottom: 2px;
    background-position: 50%
}

.c-form .wpcf7-list-item [type=checkbox]:checked {
    background: url(../../assets/img/svg/check.svg) 50%/1.2rem no-repeat #fff
}

.c-form .wpcf7-list-item-label a {
    color: #74b263;
    text-decoration: underline
}

label {
    position: relative;
    display: block;
    word-break: break-all
}

label input[type=checkbox]+span {
    position: relative;
    cursor: pointer
}

label input[type=checkbox]+span:after {
    content: " "
}

label input[type=checkbox]:checked+span:before {
    background-color: #fff
}

label input[type=checkbox]+span:after,
label input[type=checkbox]+span:before {
    content: " "
}

.privacy_txt+.p-parts__check .check input[type=checkbox]+span {
    padding-left: 23px
}

.privacy_txt+.p-parts__check .check input[type=checkbox]+span:before {
    width: 15px;
    height: 15px;
    border: 2px solid #313131;
    border-radius: 2px;
    top: 9px
}

.privacy_txt+.p-parts__check .check input[type=checkbox]+span:after {
    margin: 0 3px;
    top: 9px;
    left: -3px
}

.privacy_txt+.p-parts__check .check input[type=checkbox]:checked+span:after {
    background: url(../../assets/img/contact/check-on.png) no-repeat;
    background-size: 19px 11px;
    width: 19px;
    height: 11px
}

.privacy {
    padding-top: 12px
}

.privacy_txt {
    padding: 5px 10px 10px;
    max-height: 100%
}

.privacy_txt .require {
    font-size: 1.2rem;
    height: 20px;
    line-height: 20px;
    bottom: 2px;
    width: 42px
}

.privacy_txt img {
    position: relative;
    bottom: 6px
}

.post_code {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
}

.post_code span {
    margin-right: 10px
}

.p-postal-code {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 5px 12px;
    border-radius: 5px!important;
    font-size: 1.5rem;
    background: #fff2f2!important
}

.require {
    background: #e8222d;
    color: #fff;
    display: inline-block;
    width: 46px;
    height: 22px;
    text-align: center;
    border-radius: 3px;
    font-size: 1.3rem;
    padding-left: 7px;
    padding-right: 5px;
    line-height: 22px;
    font-weight: 400;
    letter-spacing: .2em;
    position: relative;
    margin-left: 5px;
    bottom: 3px
}

.pref {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    padding: 15px 0
}

.pref select {
    width: 140px;
    margin-left: 15px
}

#mailoutput {
    font-size: 2.5rem;
    font-weight: 700;
    line-height: 1.3;
    margin-top: 8px;
    margin-bottom: 5px
}

.mail_att {
    padding-top: 4px
}

.txt-red {
    color: #e8222d;
    margin-top: 7px;
    margin-bottom: 4px
}

.reply {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column
}

label input[type=radio] {
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0;
    width: 1px
}

label input[type=radio]:checked+span:after {
    position: absolute;
    display: inline-block;
    content: "";
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    background-color: #fff;
    border-radius: 50%;
    z-index: 0;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    right: auto;
    left: 4px;
    width: 8px;
    height: 8px;
    margin-top: 1px
}

label input[type=radio]:checked+span:before {
    background: #74b263;
    border: 5px solid #74b263
}

label input[type=radio]+span {
    position: relative;
    padding-left: 22px;
    padding-right: 20px;
    cursor: pointer
}

label input[type=radio]+span:before {
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    right: auto;
    left: 0;
    background-color: transparent;
    width: 16px;
    height: 16px;
    border: 1px solid #999;
    position: absolute;
    display: inline-block;
    content: "";
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    border-radius: 50%;
    margin-top: 1px;
    -webkit-transition: .4s;
    transition: .4s
}

.p-parts__buttn {
    text-align: center;
    max-width: 260px;
    height: 50px;
    margin: 30px auto 0;
    border-radius: 25px
}

.p-parts__buttn,
.p-parts__buttn--inner {
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center
}

.p-parts__buttn--inner {
    position: relative;
    height: 100%;
    border-radius: 40px
}

.p-parts__buttn--inner:before {
    display: inline-block;
    content: "";
    background-image: url(../../assets/img/parts/i-arrow-right-white.png);
    background-position: 0;
    width: 6px;
    height: 10px;
    background-size: 6px 10px;
    position: absolute;
    left: 80px;
    top: 0;
    z-index: 2;
    top: 50%;
    margin-top: -5px;
    -webkit-transition: .3s ease-in-out;
    transition: .3s ease-in-out
}

.p-parts__buttn--inner input {
    font-size: 1.6rem;
    font-weight: 500;
    line-height: 1;
    color: #fff;
    width: 100%;
    height: 100%;
    background-color: #74b263;
    border-radius: 40px;
    -webkit-transition: background .3s ease-in-out, color .3s ease-in-out;
    transition: background .3s ease-in-out, color .3s ease-in-out;
    padding-left: 8px;
    font-weight: 400
}

.p-parts__buttn--inner.is-desabled {
    background-color: #d9d9d9
}

.p-parts__buttn--inner.is-desabled:before {
    background-image: url(../../assets/img/parts/i-arrow-right-gray.png);
    width: 6px;
    height: 10px;
    background-size: 6px 10px
}

.p-parts__buttn--inner.is-desabled input {
    background-color: #d9d9d9;
    pointer-events: none;
    border-color: #999;
    color: #999;
    opacity: 1
}

.c-form__tableA {
    width: 100%;
    background: #fff;
    border-radius: 10px;
    table-layout: fixed;
    border-collapse: separate
}

.c-form__tableA tr {
    width: 770px;
    overflow: hidden
}

.c-form__tableA tr td,
.c-form__tableA tr th {
    text-align: left
}

.c-form__tableA tr:first-child th {
    padding-top: 14px
}

.c-form__tableA tr:first-child .set-required:before {
    margin-top: 2px
}

.c-form__tableA tr:last-child th {
    padding-top: 28px
}

.c-form__tableA tr:last-child td {
    border-bottom: none
}

.c-form__tableA tr:last-child .set-required:before {
    margin-top: 2px
}

.c-form__tableA tr th {
    padding: 27px 15px 14px;
    font-size: 1.5rem;
    line-height: 1.8;
    max-height: 100%;
    font-weight: 400;
    vertical-align: top
}

.c-form__tableA tr td {
    padding: 14px 0;
    width: 67.79221%;
    font-size: 1.5rem
}

.set-required:before {
    content: "必須";
    background: #ed796c;
    color: #fff;
    display: inline-block;
    width: 40px;
    height: 22px;
    text-align: center;
    border-radius: 4px;
    font-size: 1.2rem;
    padding-left: 3px;
    padding-right: 3px;
    line-height: 22px;
    font-weight: 500;
    margin-top: 3px;
    margin-right: 9px;
    letter-spacing: .1em
}

.set-required span {
    margin-right: 11px
}

.set-any:before {
    content: "任意";
    background: #74b263;
    color: #fff;
    display: inline-block;
    width: 40px;
    height: 22px;
    text-align: center;
    border-radius: 4px;
    font-size: 1.2rem;
    padding-left: 3px;
    padding-right: 3px;
    line-height: 22px;
    font-weight: 500;
    margin-top: 3px;
    margin-right: 9px;
    letter-spacing: .1em
}

.set-any span {
    margin-right: 11px
}

.set-stack {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
}

.set-stack:nth-of-type(2) {
    margin-top: 15px
}

.set-stack-inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
}

.set-stack-inner:nth-of-type(2) {
    margin-top: 15px
}

.set-stack-col,
.set-stack-col__item,
.set-stack-inner__item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
}

.set-txt {
    padding-right: 1em
}

div.wpcf7 .ajax-loader {
    margin: -1em;
    display: block;
    position: absolute
}

.wpcf7-not-valid-tip {
    margin-top: 11px;
    letter-spacing: .03em;
    color: #e8222d!important;
    line-height: 1
}

.wpcf7 form.sent .wpcf7-response-output {
    width: 970px;
    margin: 35px auto 0;
    font-size: 1.6rem
}

.wpcf7 form.invalid .wpcf7-response-output {
    display: none
}

.p-heading {
    font-size: 0;
    line-height: 1;
    position: relative
}

.p-heading__type01 {
    text-align: center
}

.p-heading__type01.-type01-sm .p-heading--en {
    font-size: 3.9rem;
    letter-spacing: -.02rem;
    max-height: 100%
}

.p-heading__type01.-type01-sm .p-heading--en span {
    font-size: 3.6rem
}

.p-heading__type01.-type01-sm .p-heading--jp {
    font-size: 1.56rem;
    margin-top: 13px;
    max-height: 100%
}

.p-heading__type01 .p-heading--en {
    font-size: 4.8rem;
    color: #ed796c;
    letter-spacing: 0
}

.p-heading__type01 .p-heading--en,
.p-heading__type01 .p-heading--jp {
    font-family: GenJyuuGothic-P, sans-serif;
    font-weight: 700;
    display: block;
    max-height: 100%
}

.p-heading__type01 .p-heading--jp {
    font-size: 1.8rem;
    color: #57331d;
    margin-top: 15px;
    letter-spacing: .06em
}

.p-parts--heading {
    text-align: center;
    margin-bottom: 45px
}

.p-parts--heading .jp {
    font-size: 3.6rem;
    font-family: GenJyuuGothic-P, sans-serif;
    letter-spacing: .06em;
    color: #57331d;
    max-height: 100%
}

.p-parts--heading .jp:after {
    width: 60px;
    height: 5px;
    background-image: url(../../assets/img/svg/parts-title-line.svg);
    background-size: 60px 5px;
    display: block;
    content: "";
    background-position: 50%;
    background-repeat: no-repeat;
    margin: 6px auto 0
}

.p-parts--ttl {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    color: #57331d;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    font-family: GenJyuuGothic-P, sans-serif;
    margin-bottom: 10px
}

.p-parts--ttl .c-icon {
    margin-right: 13px
}

.p-parts--ttl span {
    display: block
}

.p-parts--ttl .ttl {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end
}

.p-parts--ttl .en {
    font-size: 2rem;
    letter-spacing: .03em;
    margin-top: 3px;
    line-height: 1
}

.p-parts--ttl .en02,
.p-parts--ttl .en03 {
    font-size: 2.3rem;
    letter-spacing: .02em;
    margin-left: 3px
}

.p-parts--ttl .en03 {
    line-height: 1;
    display: inline-block!important
}

.p-parts--ttl .jp {
    font-size: 3rem;
    letter-spacing: .06em;
    line-height: 1.3
}

.p-parts--ttl .jp.-color-red {
    color: #ed796c
}

.l-header {
    display: block;
    width: 100%;
    position: absolute;
    z-index: 5
}

.l-header,
.l-header__inner {
    -webkit-transition: .3s;
    transition: .3s
}

.l-header__inner {
    width: 100%;
    height: 65px;
    max-width: 100%;
    margin: 0 auto;
    position: relative;
    background-color: #fff;
    z-index: 1
}

.l-header__content {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start
}

.l-header__logo {
    -webkit-transition: .3s;
    transition: .3s
}

.l-header__logo a {
    display: block;
    width: 100%
}

.l-header-info,
.l-header__logo a h1 {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex
}

.l-header-info {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    height: 70px
}

.l-state-for {
    z-index: 15
}

.l-state-for .p-block-info {
    margin-right: 27px
}

.l-state-for .p-block-info__tel {
    margin-top: 17px
}

.l-state-for .p-block-info__tel a {
    font-size: 3rem;
    font-family: GenJyuuGothic-P, sans-serif;
    color: #ed796c;
    line-height: 1;
    letter-spacing: .02em
}

.l-state-for .p-block-info__tel a span {
    font-size: 2.2rem
}

.l-state-for .p-block-info__reception {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    margin-bottom: 8px;
    -webkit-transform: rotate(.03deg);
    transform: rotate(.03deg)
}

.l-state-for .p-block-info__reception p {
    font-size: 1.3rem;
    letter-spacing: .05em;
    font-weight: 500
}

.l-state-for .p-block-info__reception p:first-child {
    margin-right: 10px
}

.l-state-for .p-block-info__links.-time a,
.l-state-for .p-block-info__links.-time a .p-btn__inner {
    color: #ed796c
}

.l-state-for .p-block-info__links.-time a .c-icon {
    fill: #ed796c
}

.l-state-for .p-block-info__links.-access a,
.l-state-for .p-block-info__links.-access a .p-btn__inner {
    color: #74b263
}

.l-state-for .p-block-info__links.-access a .c-icon {
    fill: #74b263
}

.l-state-for .p-block-info__links a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    height: 52px;
    -webkit-transition: opacity .3s ease-in-out;
    transition: opacity .3s ease-in-out
}

.l-state-for .p-block-info__links a:hover {
    text-decoration: underline;
    -webkit-text-decoration-color: currentColor;
    text-decoration-color: currentColor;
    opacity: .7
}

.l-state-for .p-block-info__links a .p-btn__inner {
    text-align: center;
    font-size: 1.1rem;
    font-weight: 500;
    line-height: 1.3;
    margin-top: 4px;
    letter-spacing: .02em
}

.l-nav {
    width: 100%;
    padding-top: 18px
}

.l-nav__list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between
}

.l-nav__col {
    line-height: 1;
    width: 16.66667%;
    -webkit-transition: all .3s;
    transition: all .3s;
    padding-bottom: 21px
}

.l-nav__col,
.l-nav__link {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center
}

.l-nav__link {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    padding: 3px 5px;
    position: relative;
    width: 100%;
    -webkit-transition: color .3s;
    transition: color .3s;
    -webkit-transform: rotate(.03deg);
    transform: rotate(.03deg)
}

.l-nav__title--en,
.l-nav__title--jp {
    display: block
}

.l-nav__title--jp {
    font-size: 1.6rem;
    letter-spacing: .05em;
    white-space: nowrap;
    font-weight: 500
}

.l-nav__title--en {
    font-size: 1.1rem;
    padding-top: 7px;
    letter-spacing: .03em;
    position: relative;
    font-weight: 500
}

.l-nav__title--en:after {
    content: "";
    bottom: -11px;
    width: 0;
    height: 3px;
    margin: 0 auto;
    background-color: #74b263;
    -webkit-transition: .3s ease-in-out;
    transition: .3s ease-in-out
}

.-navcol-information .l-nav__link:after,
.l-nav__title--en:after {
    position: absolute;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%)
}

.-navcol-information .l-nav__link:after {
    content: " ";
    display: block;
    border: 10px solid transparent;
    border-bottom-color: #fff;
    bottom: -37px;
    opacity: 0;
    z-index: -50;
    visibility: hidden;
    -webkit-transition: bottom .35s cubic-bezier(1.1, 0, .175, 1) 0s, opacity .35s cubic-bezier(1.1, 0, .175, 1) 0s, visibility 0s linear .35s, z-index 0s linear .35s;
    transition: bottom .35s cubic-bezier(1.1, 0, .175, 1) 0s, opacity .35s cubic-bezier(1.1, 0, .175, 1) 0s, visibility 0s linear .35s, z-index 0s linear .35s
}

.-navcol-information:hover .p-medicalnav-list {
    opacity: 1;
    z-index: 50;
    visibility: visible;
    -webkit-transform: translateY(0);
    transform: translateY(0);
    -webkit-transition: all .5s;
    transition: all .5s
}

.-navcol-information:hover .l-nav__link:after {
    bottom: -37px;
    opacity: 1;
    z-index: 500;
    visibility: visible;
    -webkit-transition: bottom .35s cubic-bezier(.77, 0, .175, 1) .15s, opacity .35s cubic-bezier(.77, 0, .175, 1) .15s, visibility 0s linear 0s, z-index 0s linear 0s;
    transition: bottom .35s cubic-bezier(.77, 0, .175, 1) .15s, opacity .35s cubic-bezier(.77, 0, .175, 1) .15s, visibility 0s linear 0s, z-index 0s linear 0s
}

.l-header .p-medicalnav-content {
    -webkit-box-shadow: 1px 1px 3px rgba(0, 0, 0, .16);
    box-shadow: 1px 1px 3px rgba(0, 0, 0, .16)
}

.l-trigger {
    position: fixed;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    top: 0;
    right: 3px;
    width: 65px;
    height: 65px;
    line-height: 1;
    pointer-events: all;
    outline: none;
    z-index: 100;
    cursor: pointer;
    padding-top: 3px
}

.l-trigger-btn {
    position: relative;
    width: 30px;
    height: 18px;
    -webkit-transition: all .5s;
    transition: all .5s
}

.l-trigger-btn span {
    position: absolute;
    left: 0;
    width: 100%;
    height: 2px;
    background-color: #57331d;
    border-radius: 2px;
    display: inline-block;
    -webkit-transition: -webkit-transform .35s ease-in-out 0s;
    transition: -webkit-transform .35s ease-in-out 0s;
    transition: transform .35s ease-in-out 0s;
    transition: transform .35s ease-in-out 0s, -webkit-transform .35s ease-in-out 0s;
    transition: transform .35s ease-in-out 0s, -webkit-transform .35s ease-in-out 0s;
    -webkit-box-sizing: border-box;
    box-sizing: border-box
}

.l-trigger-btn span:first-of-type {
    top: 0
}

.l-trigger-btn span:nth-of-type(2) {
    top: 8px
}

.l-trigger-btn span:nth-of-type(3) {
    bottom: 0
}

.l-trigger__text {
    color: #57331d;
    font-size: 1.1rem;
    padding-top: 3px;
    letter-spacing: .02em
}

.js-fixed .l-header {
    position: fixed;
    top: 0
}

.js-fixed {
    z-index: -1;
    width: 100%;
    height: auto
}

.js-fixed .l-trigger-btn span:nth-of-type(3) {
    -webkit-transform: translateY(-8px) rotate(45deg);
    transform: translateY(-8px) rotate(45deg)
}

.js-fixed .l-trigger-btn span:nth-of-type(2) {
    left: 50%;
    opacity: 0;
    -webkit-animation: active-btn05-bar02 .8s forwards;
    animation: active-btn05-bar02 .8s forwards
}

.js-fixed .l-trigger-btn span:first-of-type {
    -webkit-transform: translateY(8px) rotate(-45deg);
    transform: translateY(8px) rotate(-45deg)
}

.l-state {
    display: none
}

.js-fixed {
    position: fixed
}

.js-fixed .l-drawer {
    visibility: visible;
    height: 100%;
    opacity: 1;
    pointer-events: auto!important
}

.js-fixed .l-drawer__inner {
    opacity: 1;
    background-color: white;
}

.l-drawer__inner::-webkit-scrollbar {
    display: none
}

.l-drawer {
    position: fixed;
    height: 0;
    padding-top: 65px;
    background: #fff;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    z-index: 15;
    -webkit-transition: opacity .25s ease-in .15s, height .4s ease-in-out .15s, width .4s ease-in-out .15s;
    transition: opacity .25s ease-in .15s, height .4s ease-in-out .15s, width .4s ease-in-out .15s
}

.l-drawer,
.l-drawer__inner {
    opacity: 0;
    overflow-x: hidden;
    overflow-y: auto;
    width: 100%
}

.l-drawer__inner {
    display: block;
    height: 100%;
    margin: 0 auto;
    padding: 0 15px 40px;
    -webkit-transition: opacity .3s ease-in 0s, display 0s linear 0s;
    transition: opacity .3s ease-in 0s, display 0s linear 0s;
    -ms-overflow-style: none;
    scrollbar-width: none
}

.l-drawer__list {
    width: 100%;
    list-style: none;
    margin: 0 auto;
    padding: 0;
    border-radius: 6px;
    overflow: hidden
}

.l-drawer__col {
    position: relative
}

.l-drawer__col:before {
    top: 0
}

.l-drawer__col:before,
.l-drawer__col:last-child:after {
    display: block;
    content: "";
    background: url(../../assets/img/parts/line-dotted01.png) repeat;
    background-size: auto 2px;
    width: 100%;
    height: 2px;
    position: absolute;
    left: 0
}

.l-drawer__col:last-child:after {
    bottom: 0
}

.l-drawer__col .l-drawer__dropnav.open-content {
    visibility: visible;
    max-height: 800px
}

.l-drawer__col .l-drawer__dropnav .l-drawer__col:last-child:after {
    display: none
}

.l-drawer__col.-col-information {
    background: #f1f7ef
}

.l-drawer__link {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    padding: 14px 0;
    position: relative;
    font-weight: 500
}

.l-drawer__link .c-icon {
    position: absolute;
    right: 20px;
    top: 50%;
    margin-top: -5px;
    fill: #333;
    -webkit-transition: all .3s;
    transition: all .3s
}

.l-drawer__link.open .c-icon {
    -webkit-transform: rotate(180deg);
    transform: rotate(180deg)
}

.l-drawer__title--en,
.l-drawer__title--jp {
    display: block
}

.l-drawer__title--jp {
    font-size: 1.6rem;
    letter-spacing: .04em;
    line-height: 1.56;
    text-align: center
}

.l-drawer__title--en {
    font-size: 1.1rem;
    padding-top: 2px;
    letter-spacing: .03em;
    line-height: 1
}

.l-drawer__dropnav {
    max-height: 0;
    overflow: hidden;
    visibility: hidden;
    -webkit-transition: max-height 1s;
    -webkit-transition: all .5s;
    transition: all .5s;
    padding: 0
}

.l-drawer__contact {
    text-align: center;
    margin-top: 27px;
    margin-bottom: 50px
}

.l-drawer__contact .p-mail-btn {
    margin: 29px auto 25px;
    max-width: 280px
}

.l-drawer__contact .p-mail-btn .c-icon-mail {
    fill: #fff;
    margin-right: 9px;
    margin-top: 2px
}

.l-drawer__contact__address {
    margin-top: 10px
}

.l-drawer__contact__address .u-size15 {
    font-size: 1.4rem;
    font-weight: 500
}

.l-drawer__contact__tel a {
    font-size: 3.1rem;
    font-family: GenJyuuGothic-P, sans-serif;
    color: #ed796c;
    line-height: 1
}

.l-drawer__contact__tel a span {
    font-size: 2rem
}

.header-clone {
    width: 100%;
    position: fixed;
    left: 0;
    top: 0;
    z-index: 20;
    -webkit-box-shadow: 0 1px 3px 0 rgba(0, 0, 0, .1);
    box-shadow: 0 1px 3px 0 rgba(0, 0, 0, .1);
    -webkit-transition: opacity .35s cubic-bezier(.445, .05, .55, .95) 0s, top .35s cubic-bezier(.445, .05, .55, .95) 0s;
    transition: opacity .35s cubic-bezier(.445, .05, .55, .95) 0s, top .35s cubic-bezier(.445, .05, .55, .95) 0s
}

.header-clone:not(.is-sticky) {
    opacity: 0;
    top: -130px
}

.header-clone .l-nav {
    padding-top: 16px
}

.header-clone .l-nav__listItem {
    height: 86px
}

.header-clone .l-nav__listItem--text {
    padding-top: 0!important;
    line-height: 1.48
}

.header-clone .l-nav__col {
    padding-bottom: 20px
}

.header-clone .-navcol-information .l-nav__link:after {
    bottom: -34px
}

.l-nav-fixed {
    position: fixed;
    right: 0;
    z-index: 100;
    opacity: 1;
    z-index: 1000
}

.l-nav-fixed,
.l-nav-fixed--btn {
    -webkit-transition: .3s;
    transition: .3s
}

.l-nav-fixed--btn {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    text-align: center;
    position: relative;
    z-index: 1;
    font-weight: 500
}

.l-nav-fixed--btn:before {
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0;
    z-index: -1;
    -webkit-transition: opacity .3s ease-in-out;
    transition: opacity .3s ease-in-out;
    background: hsla(0, 0%, 100%, .2);
    border-top-left-radius: 12px;
    border-bottom-left-radius: 12px
}

.l-nav-fixed--btn:hover:before {
    opacity: 1
}

.l-nav-fixed--btn.-red-btn {
    background-color: #ed796c
}
.l-nav-fixed--btn.-blue-btn{
	background-color: #1b719f
}
.l-nav-fixed--btn.-green-btn {
    background-color: #74b263
}

.l-nav-fixed--btn .c-icon {
    fill: #fff;
    width: 17px;
    height: 17px
}

.l-nav-fixed--btn__label {
    z-index: 1;
    text-align: center;
    color: #fff
}

.l-footer {
    background: #f1f7ef
}

.l-footer,
.l-footer__inner,
.l-footer__main {
    position: relative
}

.l-footer__inner {
    width: 1210px;
    max-width: 100%;
    margin: 0 auto;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    padding: 105px 20px 65px
}

.l-footer__content {
    width: 49.57265%
}

.l-footer__bottom {
    height: 40px;
    background: #74b263;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    padding: 0 20px
}

.l-footer__bottom .l-footer-copyright p {
    text-align: center;
    color: #fff;
    font-size: 1.1rem;
    letter-spacing: .064rem
}

.l-footer .l-nav {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap
}

.l-footer .l-nav,
.l-footer .l-nav__list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex
}

.l-footer .l-nav__list {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column
}

.l-footer .l-nav__list:not(:first-child) {
    margin-left: 35px
}

.l-footer .l-nav__list li:first-child {
    margin-bottom: 13px
}

.l-footer .l-nav__list li a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    font-size: 1.4rem;
    font-weight: 500;
    letter-spacing: .07em
}

.l-footer .l-nav .c-icon {
    margin-right: 5px;
    width: 12px;
    height: 12px;
    margin-top: 2px
}

.l-footer-logo {
    margin-top: 27px
}

.l-footer-address {
    margin: 7px 0 28px
}

.l-footer-address .c-phrase {
    font-size: 1.3rem;
    font-weight: 500
}

.l-footer-contact {
    width: 100%
}

.l-footer-contact .p-block-contact {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
}

.l-footer-contact .p-block-contact__btn {
    width: 100%;
    max-width: 180px
}

.l-footer-contact .p-block-contact__tel .u-heavy {
    font-size: 2.7rem;
    font-family: GenJyuuGothic-P, sans-serif;
    color: #ed796c;
    line-height: 1
}

.l-footer-contact .p-block-contact__tel .u-heavy span {
    font-size: 2.1rem
}

.l-footer-contact .p-block-contact__tel .p-parts-outside {
    margin-top: 4px
}

.l-footer-contact .p-block-contact__tel .p-parts-outside a {
    font-size: 1.3rem;
    color: #74b263
}

.l-footer-contact .p-block-contact__tel .p-parts-outside .c-icon {
    fill: #74b263
}

.l-footer-contact .p-block-contact__reception {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    margin-top: 1px
}

.l-footer-contact .p-block-contact__reception p {
    font-size: 1.3rem;
    font-weight: 500
}

.l-footer-map {
    border: 4px solid #fff;
    border-radius: 20px;
    overflow: hidden;
    width: 48.71795%
}

.l-footer-wave {
    position: relative;
    margin: 0 auto -50px;
    top: 0;
    z-index: 10
}

.l-footer-wave,
.l-footer-wave:before {
    left: 0;
    right: 0;
    height: 50px;
    width: 100%
}

.l-footer-wave:before {
    /* content: "";
    display: block;
    bottom: 0;
    position: absolute;
    background-size: 200% 50px;
    background-repeat: no-repeat;
    background: url(../../assets/img/common/bg-circle04.svg) no-repeat top;
    z-index: 2 */
}

.p-parts-pagetop {
    position: absolute;
    bottom: 36px;
    width: 50px
}

.p-parts-pagetop__link {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    height: 100%
}

.p-parts-pagetop__link:hover .ico-arrow {
    -webkit-animation: move-y .5s ease-in-out infinite alternate;
    animation: move-y .5s ease-in-out infinite alternate
}

.p-parts-pagetop__link .ico-arrow {
    position: relative;
    right: 2px;
    top: -8px
}

.p-parts-pagetop__link .ico-girl {
    width: 35px
}

@-webkit-keyframes move-y {
    0% {
        -webkit-transform: translateY(-2px);
        transform: translateY(-2px)
    }
    to {
        -webkit-transform: translateY(-11px);
        transform: translateY(-11px)
    }
}

@keyframes move-y {
    0% {
        -webkit-transform: translateY(-2px);
        transform: translateY(-2px)
    }
    to {
        -webkit-transform: translateY(-11px);
        transform: translateY(-11px)
    }
}

.p-textbox {
    margin: 0 auto
}

.p-textbox__normal {
    line-height: 1.8
}

.p-textbox__normal--lh200p {
    line-height: 2
}

.u-overflow,
.u-svg-n {
    overflow: hidden
}

.u-textright {
    text-align: right
}

.u-textcenter {
    text-align: center
}

.u-textleft {
    text-align: left
}

.u-text_r-lg-c,
.u-text_r-lg-l,
.u-text_r-md-c,
.u-text_r-md-l,
.u-text_r-sm-c,
.u-text_r-sm-l,
.u-text_r-xs-c,
.u-text_r-xs-l {
    text-align: right
}

.u-text_c-lg-l,
.u-text_c-lg-r,
.u-text_c-md-l,
.u-text_c-md-r,
.u-text_c-sm-l,
.u-text_c-sm-r,
.u-text_c-xs-l,
.u-text_c-xs-r {
    text-align: center
}

.u-text_l-lg-c,
.u-text_l-lg-r,
.u-text_l-md-c,
.u-text_l-md-r,
.u-text_l-sm-c,
.u-text_l-sm-r,
.u-text_l-xs-c,
.u-text_l-xs-r {
    text-align: left
}

.p-about-concept__main,
.p-com__title-banar--inner {
    text-align: center
}

.u-top {
    vertical-align: top
}

.u-middle {
    vertical-align: middle
}

.u-bottom {
    vertical-align: bottom
}

.u-baseline {
    vertical-align: baseline
}

.u-anchor {
    color: #d97500
}

.u-anchor,
html:not(.sp) .u-anchor:focus,
html:not(.sp) .u-anchor:hover {
    text-decoration: none
}

.u-border-n {
    border: none
}

.u-border-top-n {
    border-top: none
}

.u-border-right-n {
    border-right: none
}

.u-border-bottom-n {
    border-bottom: none
}

.u-border-left-n {
    border-left: none
}

.u-br-lg-b {
    display: none
}

.u-br-lg-n {
    display: block
}

.u-br-md-b {
    display: none
}

.u-br-md-n {
    display: block
}

.u-br-sm-b {
    display: none
}

.u-br-sm-n {
    display: block
}

.u-br-xs-b {
    display: none
}

.u-br-xs-n {
    display: block
}

.u-d {
    display: inherit
}

.u-ib {
    display: inline-block
}

.u-i {
    display: inline
}

.u-b {
    display: block
}

.u-n {
    display: none
}

.u-f {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex
}

.u-if {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex
}

.u-empty:empty {
    display: none
}

.no-js .u-nojs-d {
    display: inherit
}

.no-js .u-nojs-ib {
    display: inline-block
}

.no-js .u-nojs-i {
    display: inline
}

.no-js .u-nojs-b {
    display: block
}

.no-js .u-nojs-n {
    display: none
}

.u-flex-row {
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row
}

.u-flex-row-reverse {
    -webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse
}

.u-flex-column,
.u-flex-column-reverse {
    -webkit-box-orient: vertical
}

.u-flex-column {
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column
}

.u-flex-column-reverse {
    -webkit-box-direction: reverse;
    -ms-flex-direction: column-reverse;
    flex-direction: column-reverse
}

.p-about-goals .p-wrap,
.p-about__method .p-content--revers,
.p-com__flex--revers,
.p-event .p-section .p-wrap__revers {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse
}

.u-justify-start {
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start
}

.u-justify-end {
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end
}

.u-justify-center {
    -webkit-box-pack: flex-center;
    -ms-flex-pack: flex-center;
    justify-content: flex-center
}

.u-justify-between {
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between
}

.u-justify-around {
    -ms-flex-pack: distribute;
    justify-content: space-around
}

.u-flex-nowrap {
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap
}

.u-flex-wrap {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap
}

.u-flex-wrap-reverse {
    -ms-flex-wrap: wrap-reverse;
    flex-wrap: wrap-reverse
}

.u-align-start {
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start
}

.u-align-end {
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end
}

.u-align-center {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
}

.u-align-baseline {
    -webkit-box-align: baseline;
    -ms-flex-align: baseline;
    align-items: baseline
}

.u-align-stretch {
    -webkit-box-align: stretch;
    -ms-flex-align: stretch;
    align-items: stretch
}

.u-order-0 {
    -webkit-box-ordinal-group: 1;
    -ms-flex-order: 0;
    order: 0
}

.u-order-1 {
    -webkit-box-ordinal-group: 2;
    -ms-flex-order: 1;
    order: 1
}

.u-order-_1 {
    -webkit-box-ordinal-group: 0;
    -ms-flex-order: -1;
    order: -1
}

.u-flex-00auto {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto
}

.u-flex-01auto {
    -webkit-box-flex: 0;
    -ms-flex: 0 1 auto;
    flex: 0 1 auto
}

.u-flex-11auto {
    -webkit-box-flex: 1;
    -ms-flex: 1 1 auto;
    flex: 1 1 auto
}

.u-flex-10auto {
    -webkit-box-flex: 1;
    -ms-flex: 1 0 auto;
    flex: 1 0 auto
}

.u-align-self-auto {
    -ms-flex-item-align: auto;
    -ms-grid-row-align: auto;
    align-self: auto
}

.u-align-self-start {
    -ms-flex-item-align: start;
    align-self: flex-start
}

.u-align-self-end {
    -ms-flex-item-align: end;
    align-self: flex-end
}

.u-align-self-center {
    -ms-flex-item-align: center;
    -ms-grid-row-align: center;
    align-self: center
}

.u-align-self-baseline {
    -ms-flex-item-align: baseline;
    align-self: baseline
}

.u-align-self-stretch {
    -webkit-box-align: stretch;
    -ms-flex-align: stretch;
    align-items: stretch
}

.u-clear {
    clear: both
}

.u-clear-right {
    clear: right
}

.u-clear-left {
    clear: left
}

.u-right {
    float: right
}

.u-left {
    float: left
}

.u-feature-normal {
    -webkit-font-feature-settings: normal;
    font-feature-settings: normal
}

.u-feature-palt {
    -webkit-font-feature-settings: "palt" 1;
    font-feature-settings: "palt" 1
}

.u-font-smoothing,
.u-font-smoothing-n {
    -webkit-font-smoothing: subpixel-antialiased;
    -moz-osx-font-smoothing: unset
}

.u-thin {
    font-weight: 100
}

.u-light {
    font-weight: 200
}

.u-normal {
    font-weight: 300
}

.u-regular {
    font-weight: 400
}

.u-medium {
    font-weight: 500
}

.u-semibold {
    font-weight: 600
}

.u-bold {
    font-weight: 700
}

.u-heavy {
    font-weight: 900
}

.u-italic {
    font-style: italic
}

.u-size12 {
    font-size: 1.2rem
}

.u-size13 {
    font-size: 1.3rem
}

.u-size14 {
    font-size: 1.4rem
}

.u-size15 {
    font-size: 1.5rem
}

.u-size16 {
    font-size: 1.6rem
}

.u-size17 {
    font-size: 1.7rem
}

.u-size18 {
    font-size: 1.8rem
}

.u-size19 {
    font-size: 1.9rem
}

.u-size20 {
    font-size: 2rem
}

.u-size21 {
    font-size: 2.1rem
}

.u-size22 {
    font-size: 2.2rem
}

.u-size23 {
    font-size: 2.3rem
}

.u-size24 {
    font-size: 24px;
    font-size: 2.4rem
}

.u-family {
    font-family: GenJyuuGothic-P, sans-serif
}

.u-gothic {
    font-family: YakuHanJP, Yu Gothic, 游ゴシック, YuGothic, 游ゴシック体, Hiragino Kaku Gothic Pro, ヒラギノ角ゴシック Pro, Meiryo, メイリオ, Osaka, ＭＳ Ｐゴシック, MS PGothic, sans-serif
}

.u-gothic-n {
    font-family: YakuHanJP, Yu Gothic, 游ゴシック, YuGothic, 游ゴシック体, Hiragino Kaku Gothic ProN, ヒラギノ角ゴシック ProN, Meiryo, メイリオ, Osaka, ＭＳ Ｐゴシック, MS PGothic, sans-serif
}

.u-gothic-stdn {
    font-family: YakuHanJP, Yu Gothic, 游ゴシック, YuGothic, 游ゴシック体, Hiragino Kaku Gothic StdN, ヒラギノ角ゴシック StdN, Hiragino Kaku Gothic Pro, ヒラギノ角ゴシック Pro, Meiryo, メイリオ, Osaka, ＭＳ Ｐゴシック, MS PGothic, sans-serif
}

.u-yugo {
    font-family: _YuGothicM, _YuGothic, Hiragino Kaku Gothic Pro, ヒラギノ角ゴシック Pro, Meiryo, メイリオ, ＭＳ Ｐゴシック, MS PGothic, sans-serif
}

.u-mincho {
    font-family: Hiragino Mincho ProN, Hiragino Mincho Pro, YuMincho, Yu Mincho, 游明朝, HG明朝E, serif
}

.u-mincho-lm {
    font-family: Hiragino Mincho ProN, Hiragino Mincho Pro, YuMincho, Yu Mincho, 游明朝, HG明朝E, Meiryo, メイリオ, serif
}

.u-yumin {
    font-family: YuMinch, Yu Mincho, 游明朝, Hiragino Mincho ProN W3, ヒラギノ明朝 ProN W3, Hiragino Mincho ProN, HG明朝E, ＭＳ Ｐ明朝, ＭＳ 明朝, serif
}

.u-meiryo {
    font-family: YakuHanJP, Meiryo, メイリオ, sans-serif
}

.u-lato {
    font-family: Lato, sans-serif
}

.u-helvetica {
    font-family: helvetica, arial
}

.u-applesystem {
    font-family: -apple-system, BlinkMacSystemFont, sans-serif
}

.u-ab {
    font-family: AdobeBlank
}

.u-fontawesome {
    font-family: Font Awesome\ 5 Free
}

.u-roboto {
    font-family: Roboto, sans-serif
}

.u-oswald {
    font-family: Oswald, sans-serif
}

.u-genju-p-b,
.u-genju-p-r {
    font-family: GenJyuuGothic-P, sans-serif
}

.u-ime-active {
    ime-mode: active
}

.u-ime-inactive {
    ime-mode: inactive
}

.u-ime-disabled {
    ime-mode: disabled
}

.u-ls-normal {
    letter-spacing: normal
}

.u-ls-25 {
    letter-spacing: _ls(25)
}

.u-ls-30 {
    letter-spacing: _ls(30)
}

.u-ls-40 {
    letter-spacing: _ls(40)
}

.u-ls-50 {
    letter-spacing: _ls(50)
}

.u-ls-75 {
    letter-spacing: _ls(75)
}

.u-ls-100 {
    letter-spacing: _ls(100)
}

.u-ls-150 {
    letter-spacing: _ls(150)
}

.u-ls-200 {
    letter-spacing: _ls(200)
}

.u-ls-_10 {
    letter-spacing: _ls(-10)
}

.u-ls-_25 {
    letter-spacing: _ls(-25)
}

.u-ls-_30 {
    letter-spacing: _ls(-30)
}

.u-ls-_40 {
    letter-spacing: _ls(-40)
}

.u-ls-_50 {
    letter-spacing: _ls(-50)
}

.u-ls-_75 {
    letter-spacing: _ls(-75)
}

.u-ls-_100 {
    letter-spacing: _ls(-100)
}

.u-ls-_150 {
    letter-spacing: _ls(-150)
}

.u-ls-_200 {
    letter-spacing: _ls(-200)
}

.u-lh-default {
    line-height: 1.6
}

.u-lh-normal {
    line-height: normal
}

.u-lh-1 {
    line-height: 1
}

.u-mt-auto {
    margin-top: auto
}

.u-mb-auto {
    margin-bottom: auto
}

.u-mt0 {
    margin-top: 0
}

.u-mr0 {
    margin-right: 0
}

.u-mb0 {
    margin-bottom: 0
}

.u-ml0 {
    margin-left: 0
}

.u-pt0 {
    padding-top: 0
}

.u-pr0 {
    padding-right: 0
}

.u-pb0 {
    padding-bottom: 0
}

.u-pl0 {
    padding-left: 0
}

.u-mt5 {
    margin-top: 5px
}

.u-mr5 {
    margin-right: 5px
}

.u-mb5 {
    margin-bottom: 5px
}

.u-ml5 {
    margin-left: 5px
}

.u-pt5 {
    padding-top: 5px
}

.u-pt7 {
    padding-top: 7px
}

.u-pr5 {
    padding-right: 5px
}

.u-pb5 {
    padding-bottom: 5px
}

.u-pl5 {
    padding-left: 5px
}

.u-mt10 {
    margin-top: 10px
}

.u-mr10 {
    margin-right: 10px
}

.u-mb10 {
    margin-bottom: 10px
}

.u-ml10 {
    margin-left: 10px
}

.u-pt10 {
    padding-top: 10px
}

.u-pr10 {
    padding-right: 10px
}

.u-pb10 {
    padding-bottom: 10px
}

.u-pl10 {
    padding-left: 10px
}

.u-mt15 {
    margin-top: 15px
}

.u-mr15 {
    margin-right: 15px
}

.u-mb15 {
    margin-bottom: 15px
}

.u-ml15 {
    margin-left: 15px
}

.u-pt15 {
    padding-top: 15px
}

.u-pr15 {
    padding-right: 15px
}

.u-pb15 {
    padding-bottom: 15px
}

.u-pl15 {
    padding-left: 15px
}

.u-pl18 {
    padding-left: 18px
}

.u-mt20 {
    margin-top: 20px
}

.u-mr20 {
    margin-right: 20px
}

.u-mb20 {
    margin-bottom: 20px
}

.u-ml20 {
    margin-left: 20px
}

.u-pt20 {
    padding-top: 20px
}

.u-pr20 {
    padding-right: 20px
}

.u-pb20 {
    padding-bottom: 20px
}

.u-pl20 {
    padding-left: 20px
}

.u-mt25 {
    margin-top: 25px
}

.u-mr25 {
    margin-right: 25px
}

.u-mb25 {
    margin-bottom: 25px
}

.u-ml25 {
    margin-left: 25px
}

.u-pt25 {
    padding-top: 25px
}

.u-pr25 {
    padding-right: 25px
}

.u-pb25 {
    padding-bottom: 25px
}

.u-pl25 {
    padding-left: 25px
}

.u-mt30 {
    margin-top: 30px
}

.u-mr30 {
    margin-right: 30px
}

.u-mb30 {
    margin-bottom: 30px
}

.u-ml30 {
    margin-left: 30px
}

.u-pt30 {
    padding-top: 30px
}

.u-pr30 {
    padding-right: 30px
}

.u-pb30 {
    padding-bottom: 30px
}

.u-pl30 {
    padding-left: 30px
}

.u-mt35 {
    margin-top: 35px
}

.u-mr35 {
    margin-right: 35px
}

.u-mb35 {
    margin-bottom: 35px
}

.u-ml35 {
    margin-left: 35px
}

.u-pt35 {
    padding-top: 35px
}

.u-pr35 {
    padding-right: 35px
}

.u-pb35 {
    padding-bottom: 35px
}

.u-pl35 {
    padding-left: 35px
}

.u-mt40 {
    margin-top: 40px
}

.u-mr40 {
    margin-right: 40px
}

.u-mb40 {
    margin-bottom: 40px
}

.u-ml40 {
    margin-left: 40px
}

.u-pt40 {
    padding-top: 40px
}

.u-pr40 {
    padding-right: 40px
}

.u-pb40 {
    padding-bottom: 40px
}

.u-pl40 {
    padding-left: 40px
}

.u-mt45 {
    margin-top: 45px
}

.u-mr45 {
    margin-right: 45px
}

.u-mb45 {
    margin-bottom: 45px
}

.u-ml45 {
    margin-left: 45px
}

.u-pt45 {
    padding-top: 45px
}

.u-pr45 {
    padding-right: 45px
}

.u-pb45 {
    padding-bottom: 45px
}

.u-pl45 {
    padding-left: 45px
}

.u-mt50 {
    margin-top: 50px
}

.u-mr50 {
    margin-right: 50px
}

.u-mb50 {
    margin-bottom: 50px
}

.u-ml50 {
    margin-left: 50px
}

.u-pt50 {
    padding-top: 50px
}

.u-pr50 {
    padding-right: 50px
}

.u-pb50 {
    padding-bottom: 50px
}

.u-pl50 {
    padding-left: 50px
}

.u-mt55 {
    margin-top: 55px
}

.u-mr55 {
    margin-right: 55px
}

.u-mb55 {
    margin-bottom: 55px
}

.u-ml55 {
    margin-left: 55px
}

.u-pt55 {
    padding-top: 55px
}

.u-pr55 {
    padding-right: 55px
}

.u-pb55 {
    padding-bottom: 55px
}

.u-pl55 {
    padding-left: 55px
}

.u-mt60 {
    margin-top: 60px
}

.u-mr60 {
    margin-right: 60px
}

.u-mb60 {
    margin-bottom: 60px
}

.u-ml60 {
    margin-left: 60px
}

.u-pt60 {
    padding-top: 60px
}

.u-pr60 {
    padding-right: 60px
}

.u-pb60 {
    padding-bottom: 60px
}

.u-pl60 {
    padding-left: 60px
}

.u-mt65 {
    margin-top: 65px
}

.u-mr65 {
    margin-right: 65px
}

.u-mb65 {
    margin-bottom: 65px
}

.u-ml65 {
    margin-left: 65px
}

.u-pt65 {
    padding-top: 65px
}

.u-pr65 {
    padding-right: 65px
}

.u-pb65 {
    padding-bottom: 65px
}

.u-pl65 {
    padding-left: 65px
}

.u-mt70 {
    margin-top: 70px
}

.u-mr70 {
    margin-right: 70px
}

.u-mb70 {
    margin-bottom: 70px
}

.u-ml70 {
    margin-left: 70px
}

.u-pt70 {
    padding-top: 70px
}

.u-pr70 {
    padding-right: 70px
}

.u-pb70 {
    padding-bottom: 70px
}

.u-pl70 {
    padding-left: 70px
}

.u-mt75 {
    margin-top: 75px
}

.u-mr75 {
    margin-right: 75px
}

.u-mb75 {
    margin-bottom: 75px
}

.u-ml75 {
    margin-left: 75px
}

.u-pt75 {
    padding-top: 75px
}

.u-pr75 {
    padding-right: 75px
}

.u-pb75 {
    padding-bottom: 75px
}

.u-pl75 {
    padding-left: 75px
}

.u-mt80 {
    margin-top: 80px
}

.u-mr80 {
    margin-right: 80px
}

.u-mb80 {
    margin-bottom: 80px
}

.u-ml80 {
    margin-left: 80px
}

.u-pt80 {
    padding-top: 80px
}

.u-pr80 {
    padding-right: 80px
}

.u-pb80 {
    padding-bottom: 80px
}

.u-pl80 {
    padding-left: 80px
}

.u-mt85 {
    margin-top: 85px
}

.u-mr85 {
    margin-right: 85px
}

.u-mb85 {
    margin-bottom: 85px
}

.u-ml85 {
    margin-left: 85px
}

.u-pt85 {
    padding-top: 85px
}

.u-pr85 {
    padding-right: 85px
}

.u-pb85 {
    padding-bottom: 85px
}

.u-pl85 {
    padding-left: 85px
}

.u-mt90 {
    margin-top: 90px
}

.u-mr90 {
    margin-right: 90px
}

.u-mb90 {
    margin-bottom: 90px
}

.u-ml90 {
    margin-left: 90px
}

.u-pt90 {
    padding-top: 90px
}

.u-pr90 {
    padding-right: 90px
}

.u-pb90 {
    padding-bottom: 90px
}

.u-pl90 {
    padding-left: 90px
}

.u-mt95 {
    margin-top: 95px
}

.u-mr95 {
    margin-right: 95px
}

.u-mb95 {
    margin-bottom: 95px
}

.u-ml95 {
    margin-left: 95px
}

.u-pt95 {
    padding-top: 95px
}

.u-pr95 {
    padding-right: 95px
}

.u-pb95 {
    padding-bottom: 95px
}

.u-pl95 {
    padding-left: 95px
}

.u-mt100 {
    margin-top: 100px
}

.u-mr100 {
    margin-right: 100px
}

.u-mb100 {
    margin-bottom: 100px
}

.u-ml100 {
    margin-left: 100px
}

.u-pt100 {
    padding-top: 100px
}

.u-pr100 {
    padding-right: 100px
}

.u-pb100 {
    padding-bottom: 100px
}

.u-pl100 {
    padding-left: 100px
}

.u-mt105 {
    margin-top: 105px
}

.u-mr105 {
    margin-right: 105px
}

.u-mb105 {
    margin-bottom: 105px
}

.u-ml105 {
    margin-left: 105px
}

.u-pt105 {
    padding-top: 105px
}

.u-pr105 {
    padding-right: 105px
}

.u-pb105 {
    padding-bottom: 105px
}

.u-pl105 {
    padding-left: 105px
}

.u-mt110 {
    margin-top: 110px
}

.u-mr110 {
    margin-right: 110px
}

.u-mb110 {
    margin-bottom: 110px
}

.u-ml110 {
    margin-left: 110px
}

.u-pt110 {
    padding-top: 110px
}

.u-pr110 {
    padding-right: 110px
}

.u-pb110 {
    padding-bottom: 110px
}

.u-pl110 {
    padding-left: 110px
}

.u-mt115 {
    margin-top: 115px
}

.u-mr115 {
    margin-right: 115px
}

.u-mb115 {
    margin-bottom: 115px
}

.u-ml115 {
    margin-left: 115px
}

.u-pt115 {
    padding-top: 115px
}

.u-pr115 {
    padding-right: 115px
}

.u-pb115 {
    padding-bottom: 115px
}

.u-pl115 {
    padding-left: 115px
}

.u-mt120 {
    margin-top: 120px
}

.u-mr120 {
    margin-right: 120px
}

.u-mb120 {
    margin-bottom: 120px
}

.u-ml120 {
    margin-left: 120px
}

.u-pt120 {
    padding-top: 120px
}

.u-pr120 {
    padding-right: 120px
}

.u-pb120 {
    padding-bottom: 120px
}

.u-pl120 {
    padding-left: 120px
}

.u-mt125 {
    margin-top: 125px
}

.u-mr125 {
    margin-right: 125px
}

.u-mb125 {
    margin-bottom: 125px
}

.u-ml125 {
    margin-left: 125px
}

.u-pt125 {
    padding-top: 125px
}

.u-pr125 {
    padding-right: 125px
}

.u-pb125 {
    padding-bottom: 125px
}

.u-pl125 {
    padding-left: 125px
}

.u-mt130 {
    margin-top: 130px
}

.u-mr130 {
    margin-right: 130px
}

.u-mb130 {
    margin-bottom: 130px
}

.u-ml130 {
    margin-left: 130px
}

.u-pt130 {
    padding-top: 130px
}

.u-pr130 {
    padding-right: 130px
}

.u-pb130 {
    padding-bottom: 130px
}

.u-pl130 {
    padding-left: 130px
}

.u-gutter {
    padding-right: 15px;
    padding-left: 15px
}

.u-m {
    margin: 1.65em
}

.u-mt {
    margin-top: 1.65em
}

.u-mr {
    margin-right: 1.65em
}

.u-mb {
    margin-bottom: 1.65em
}

.u-ml {
    margin-left: 1.65em
}

.u-m-n {
    margin: 0
}

.u-mt-n {
    margin-top: 0
}

.u-mr-n {
    margin-right: 0
}

.u-mb-n {
    margin-bottom: 0
}

.u-ml-n {
    margin-left: 0
}

.u-m-auto,
.u-mr-auto {
    margin-right: auto
}

.u-m-auto,
.u-ml-auto {
    margin-left: auto
}

.u-m-p {
    margin: 1em
}

.u-mt-p {
    margin-top: 1em
}

.u-mr-p {
    margin-right: 1em
}

.u-mb-p {
    margin-bottom: 1em
}

.u-ml-p {
    margin-left: 1em
}

.u-m-xxs {
    margin: .25em
}

.u-mt-xxs {
    margin-top: .25em
}

.u-mr-xxs {
    margin-right: .25em
}

.u-mb-xxs {
    margin-bottom: .25em
}

.u-ml-xxs {
    margin-left: .25em
}

.u-m-xs {
    margin: .5em
}

.u-mt-xs {
    margin-top: .5em
}

.u-mr-xs {
    margin-right: .5em
}

.u-mb-xs {
    margin-bottom: .5em
}

.u-ml-xs {
    margin-left: .5em
}

.u-m-s {
    margin: .75em
}

.u-mt-s {
    margin-top: .75em
}

.u-mr-s {
    margin-right: .75em
}

.u-mb-s {
    margin-bottom: .75em
}

.u-ml-s {
    margin-left: .75em
}

.u-m-ms {
    margin: 2em
}

.u-mt-ms {
    margin-top: 2em
}

.u-mr-ms {
    margin-right: 2em
}

.u-mb-ms {
    margin-bottom: 2em
}

.u-ml-ms {
    margin-left: 2em
}

.u-m-m {
    margin: 2.25em
}

.u-mt-m {
    margin-top: 2.25em
}

.u-mr-m {
    margin-right: 2.25em
}

.u-mb-m {
    margin-bottom: 2.25em
}

.u-ml-m {
    margin-left: 2.25em
}

.u-m-ml {
    margin: 2.85em
}

.u-mt-ml {
    margin-top: 2.85em
}

.u-mr-ml {
    margin-right: 2.85em
}

.u-mb-ml {
    margin-bottom: 2.85em
}

.u-ml-ml {
    margin-left: 2.85em
}

.u-m-l {
    margin: 3.5em
}

.u-mt-l {
    margin-top: 3.5em
}

.u-mr-l {
    margin-right: 3.5em
}

.u-mb-l {
    margin-bottom: 3.5em
}

.u-ml-l {
    margin-left: 3.5em
}

.u-m-xl {
    margin: 4.5em
}

.u-mt-xl {
    margin-top: 4.5em
}

.u-mr-xl {
    margin-right: 4.5em
}

.u-mb-xl {
    margin-bottom: 4.5em
}

.u-ml-xl {
    margin-left: 4.5em
}

.u-m-xxl {
    margin: 5.5em
}

.u-mt-xxl {
    margin-top: 5.5em
}

.u-mr-xxl {
    margin-right: 5.5em
}

.u-mb-xxl {
    margin-bottom: 5.5em
}

.u-ml-xxl {
    margin-left: 5.5em
}

.u-m-gutter {
    margin: 15px
}

.u-mt-gutter {
    margin-top: 15px
}

.u-mr-gutter {
    margin-right: 15px
}

.u-mb-gutter {
    margin-bottom: 15px
}

.u-ml-gutter {
    margin-left: 15px
}

.u-p {
    padding: 1.65em
}

.u-pt {
    padding-top: 1.65em
}

.u-pr {
    padding-right: 1.65em
}

.u-pb {
    padding-bottom: 1.65em
}

.u-pl {
    padding-left: 1.65em
}

.u-p-n {
    padding: 0
}

.u-pt-n {
    padding-top: 0
}

.u-pr-n {
    padding-right: 0
}

.u-pb-n {
    padding-bottom: 0
}

.u-pl-n {
    padding-left: 0
}

.u-p-p {
    padding: 1em
}

.u-pt-p {
    padding-top: 1em
}

.u-pr-p {
    padding-right: 1em
}

.u-pb-p {
    padding-bottom: 1em
}

.u-pl-p {
    padding-left: 1em
}

.u-p-xxs {
    padding: .25em
}

.u-pt-xxs {
    padding-top: .25em
}

.u-pr-xxs {
    padding-right: .25em
}

.u-pb-xxs {
    padding-bottom: .25em
}

.u-pl-xxs {
    padding-left: .25em
}

.u-p-xs {
    padding: .5em
}

.u-pt-xs {
    padding-top: .5em
}

.u-pr-xs {
    padding-right: .5em
}

.u-pb-xs {
    padding-bottom: .5em
}

.u-pl-xs {
    padding-left: .5em
}

.u-p-s {
    padding: .75em
}

.u-pt-s {
    padding-top: .75em
}

.u-pr-s {
    padding-right: .75em
}

.u-pb-s {
    padding-bottom: .75em
}

.u-pl-s {
    padding-left: .75em
}

.u-p-ms {
    padding: 2em
}

.u-pt-ms {
    padding-top: 2em
}

.u-pr-ms {
    padding-right: 2em
}

.u-pb-ms {
    padding-bottom: 2em
}

.u-pl-ms {
    padding-left: 2em
}

.u-p-m {
    padding: 2.25em
}

.u-pt-m {
    padding-top: 2.25em
}

.u-pr-m {
    padding-right: 2.25em
}

.u-pb-m {
    padding-bottom: 2.25em
}

.u-pl-m {
    padding-left: 2.25em
}

.u-p-ml {
    padding: 2.85em
}

.u-pt-ml {
    padding-top: 2.85em
}

.u-pr-ml {
    padding-right: 2.85em
}

.u-pb-ml {
    padding-bottom: 2.85em
}

.u-pl-ml {
    padding-left: 2.85em
}

.u-p-l {
    padding: 3.5em
}

.u-pt-l {
    padding-top: 3.5em
}

.u-pr-l {
    padding-right: 3.5em
}

.u-pb-l {
    padding-bottom: 3.5em
}

.u-pl-l {
    padding-left: 3.5em
}

.u-p-xl {
    padding: 4.5em
}

.u-pt-xl {
    padding-top: 4.5em
}

.u-pr-xl {
    padding-right: 4.5em
}

.u-pb-xl {
    padding-bottom: 4.5em
}

.u-pl-xl {
    padding-left: 4.5em
}

.u-p-xxl {
    padding: 5.5em
}

.u-pt-xxl {
    padding-top: 5.5em
}

.u-pr-xxl {
    padding-right: 5.5em
}

.u-pb-xxl {
    padding-bottom: 5.5em
}

.u-pl-xxl {
    padding-left: 5.5em
}

.u-p-gutter {
    padding: 15px
}

.u-pt-gutter {
    padding-top: 15px
}

.u-pr-gutter {
    padding-right: 15px
}

.u-pb-gutter {
    padding-bottom: 15px
}

.u-pl-gutter {
    padding-left: 15px
}

.u-sizing-c {
    -webkit-box-sizing: content-box;
    box-sizing: content-box
}

.u-sizing-b {
    -webkit-box-sizing: border-box;
    box-sizing: border-box
}

.u-sizing-i {
    -webkit-box-sizing: inherit;
    box-sizing: inherit
}

.u-width-auto {
    width: auto
}

.u-width-half {
    width: 50%
}

.u-width-full {
    width: 100%
}

.u-lg {
    width: 1024px
}

.u-lg-wide {
    width: 1054px
}

.u-md {
    width: 768px
}

.u-md-wide {
    width: 798px
}

.u-sm {
    width: 568px
}

.u-sm-wide {
    width: 598px;
    max-width: 100%
}

.u-xs {
    width: 412px
}

.u-xs-wide {
    width: 442px
}

.u-base {
    width: 1170px
}

.u-base-wide {
    width: 1200px
}

.u-max {
    width: 1370px
}

.u-max-wide {
    width: 1400px
}

.u-height-auto {
    height: auto
}

.u-height-half {
    height: 50%
}

.u-height-full {
    height: 100%
}

.u-svg-n {
    height: 0;
    position: absolute;
    width: 0
}

.c-grid--flex>[class*=c-col],
.c-grid--ib>[class*=c-col],
.c-grid>[class*=c-col] {
    letter-spacing: normal;
    min-height: 1px;
    word-spacing: normal;
    vertical-align: top;
    position: relative;
    clear: both
}

.c-grid {
    clear: both;
    display: block;
    font-family: AdobeBlank;
    list-style: none;
    margin: -15px;
    padding: 0
}

.c-grid>[class*=c-col] {
    display: inline-block;
    font-family: GenJyuuGothic-P, sans-serif;
    margin: 15px 0;
    padding: 0 15px;
    max-width: 100%
}

.c-grid--flex {
    clear: both;
    display: block;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    font-family: AdobeBlank;
    list-style: none;
    margin: -15px;
    padding: 0
}

.c-grid--flex>[class*=c-col] {
    -webkit-box-flex: 0;
    -ms-flex: 0 1 auto;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    flex: 0 1 auto;
    font-family: GenJyuuGothic-P, sans-serif;
    margin: 15px 0;
    padding: 0 15px
}

.c-grid--ib {
    clear: both;
    display: block;
    display: inline-block;
    vertical-align: top;
    font-family: AdobeBlank;
    list-style: none;
    margin: -15px;
    padding: 0
}

.c-grid--ib>[class*=c-col] {
    display: inline-block;
    font-family: GenJyuuGothic-P, sans-serif;
    margin: 15px 0;
    padding: 0 15px
}

.c-col-12_ {
    width: 97%
}

.c-col-11_ {
    width: 88.66667%
}

.c-col-10_ {
    width: 80.33333%
}

.c-col-9_ {
    width: 72%
}

.c-col-8_ {
    width: 63.66667%
}

.c-col-7_ {
    width: 55.33333%
}

.c-col-6_ {
    width: 47%
}

.c-col-5_ {
    width: 38.66667%
}

.c-col-4_ {
    width: 30.33333%
}

.c-col-3_ {
    width: 22%
}

.c-col-2_ {
    width: 13.66667%
}

.c-col-1_ {
    width: 5.33333%
}

.c-col-12 {
    width: 100%
}

.c-col-11 {
    width: 91.66666667%
}

.c-col-10 {
    width: 83.33333333%
}

.c-col-9 {
    width: 75%
}

.c-col-8 {
    width: 66.66666667%
}

.c-col-7 {
    width: 58.33333333%
}

.c-col-6 {
    width: 50%
}

.c-col-5 {
    width: 41.66666667%
}

.c-col-4 {
    width: 33.33333333%
}

.c-col-3 {
    width: 25%
}

.c-col-2 {
    width: 16.66666667%
}

.c-col-1 {
    width: 8.33333333%
}

.c-col-auto {
    width: auto
}

.c-col-xs-12_ {
    width: 97%
}

.c-col-xs-11_ {
    width: 88.66667%
}

.c-col-xs-10_ {
    width: 80.33333%
}

.c-col-xs-9_ {
    width: 72%
}

.c-col-xs-8_ {
    width: 63.66667%
}

.c-col-xs-7_ {
    width: 55.33333%
}

.c-col-xs-6_ {
    width: 47%
}

.c-col-xs-5_ {
    width: 38.66667%
}

.c-col-xs-4_ {
    width: 30.33333%
}

.c-col-xs-3_ {
    width: 22%
}

.c-col-xs-2_ {
    width: 13.66667%
}

.c-col-xs-1_ {
    width: 5.33333%
}

.c-col-xs-12 {
    width: 100%
}

.c-col-xs-11 {
    width: 91.66666667%
}

.c-col-xs-10 {
    width: 83.33333333%
}

.c-col-xs-9 {
    width: 75%
}

.c-col-xs-8 {
    width: 66.66666667%
}

.c-col-xs-7 {
    width: 58.33333333%
}

.c-col-xs-6 {
    width: 50%
}

.c-col-xs-5 {
    width: 41.66666667%
}

.c-col-xs-4 {
    width: 33.33333333%
}

.c-col-xs-3 {
    width: 25%
}

.c-col-xs-2 {
    width: 16.66666667%
}

.c-col-xs-1 {
    width: 8.33333333%
}

.c-col-xs-auto {
    width: auto
}

.c-grid--top>[class*=c-col] {
    vertical-align: top
}

.c-grid--middle>[class*=c-col] {
    vertical-align: middle
}

.c-grid--bottom>[class*=c-col] {
    vertical-align: bottom
}

.c-grid--x0 {
    margin-right: 0;
    margin-left: 0
}

.c-grid--x0>[class*=c-col] {
    padding-right: 0;
    padding-left: 0
}

.c-grid--y0,
.c-grid--y0>[class*=c-col] {
    margin-top: 0;
    margin-bottom: 0
}

.c-grid--x {
    margin-right: -15px;
    margin-left: -15px
}

.c-grid--x>[class*=c-col] {
    padding-right: 15px;
    padding-left: 15px
}

.c-grid--x_ {
    margin-right: -7.5px;
    margin-left: -7.5px
}

.c-grid--x_>[class*=c-col] {
    padding-right: 7.5px;
    padding-left: 7.5px
}

.c-grid--y {
    margin-top: -15px;
    margin-bottom: -15px
}

.c-grid--y>[class*=c-col] {
    margin-top: 15px;
    margin-bottom: 15px
}

.c-grid--y_ {
    margin-top: -7.5px;
    margin-bottom: -7.5px
}

.c-grid--y_>[class*=c-col] {
    margin-top: 7.5px;
    margin-bottom: 7.5px
}

.c-grid--x5 {
    margin-right: -5px;
    margin-left: -5px
}

.c-grid--x5>[class*=c-col] {
    padding-right: 5px;
    padding-left: 5px
}

.c-grid--x5_ {
    margin-right: -2.5px;
    margin-left: -2.5px
}

.c-grid--x5_>[class*=c-col] {
    padding-right: 2.5px;
    padding-left: 2.5px
}

.c-grid--y5 {
    margin-top: -5px;
    margin-bottom: -5px
}

.c-grid--y5>[class*=c-col] {
    margin-top: 5px;
    margin-bottom: 5px
}

.c-grid--y5_ {
    margin-top: -2.5px;
    margin-bottom: -2.5px
}

.c-grid--y5_>[class*=c-col] {
    margin-top: 2.5px;
    margin-bottom: 2.5px
}

.c-grid--x10 {
    margin-right: -10px;
    margin-left: -10px
}

.c-grid--x10>[class*=c-col] {
    padding-right: 10px;
    padding-left: 10px
}

.c-grid--x10_ {
    margin-right: -5px;
    margin-left: -5px
}

.c-grid--x10_>[class*=c-col] {
    padding-right: 5px;
    padding-left: 5px
}

.c-grid--y10 {
    margin-top: -10px;
    margin-bottom: -10px
}

.c-grid--y10>[class*=c-col] {
    margin-top: 10px;
    margin-bottom: 10px
}

.c-grid--y10_ {
    margin-top: -5px;
    margin-bottom: -5px
}

.c-grid--y10_>[class*=c-col] {
    margin-top: 5px;
    margin-bottom: 5px
}

.c-grid--x15 {
    margin-right: -15px;
    margin-left: -15px
}

.c-grid--x15>[class*=c-col] {
    padding-right: 15px;
    padding-left: 15px
}

.c-grid--x15_ {
    margin-right: -7.5px;
    margin-left: -7.5px
}

.c-grid--x15_>[class*=c-col] {
    padding-right: 7.5px;
    padding-left: 7.5px
}

.c-grid--y15 {
    margin-top: -15px;
    margin-bottom: -15px
}

.c-grid--y15>[class*=c-col] {
    margin-top: 15px;
    margin-bottom: 15px
}

.c-grid--y15_ {
    margin-top: -7.5px;
    margin-bottom: -7.5px
}

.c-grid--y15_>[class*=c-col] {
    margin-top: 7.5px;
    margin-bottom: 7.5px
}

.c-grid--x20 {
    margin-right: -20px;
    margin-left: -20px
}

.c-grid--x20>[class*=c-col] {
    padding-right: 20px;
    padding-left: 20px
}

.c-grid--x20_ {
    margin-right: -10px;
    margin-left: -10px
}

.c-grid--x20_>[class*=c-col] {
    padding-right: 10px;
    padding-left: 10px
}

.c-grid--y20 {
    margin-top: -20px;
    margin-bottom: -20px
}

.c-grid--y20>[class*=c-col] {
    margin-top: 20px;
    margin-bottom: 20px
}

.c-grid--y20_ {
    margin-top: -10px;
    margin-bottom: -10px
}

.c-grid--y20_>[class*=c-col] {
    margin-top: 10px;
    margin-bottom: 10px
}

.c-grid--x25 {
    margin-right: -25px;
    margin-left: -25px
}

.c-grid--x25>[class*=c-col] {
    padding-right: 25px;
    padding-left: 25px
}

.c-grid--x25_ {
    margin-right: -12.5px;
    margin-left: -12.5px
}

.c-grid--x25_>[class*=c-col] {
    padding-right: 12.5px;
    padding-left: 12.5px
}

.c-grid--y25 {
    margin-top: -25px;
    margin-bottom: -25px
}

.c-grid--y25>[class*=c-col] {
    margin-top: 25px;
    margin-bottom: 25px
}

.c-grid--y25_ {
    margin-top: -12.5px;
    margin-bottom: -12.5px
}

.c-grid--y25_>[class*=c-col] {
    margin-top: 12.5px;
    margin-bottom: 12.5px
}

.c-icon {
    display: inline;
    stroke-width: 0;
    position: relative
}

.c-icon:not([width]) {
    width: 1em
}

.c-icon:not([height]) {
    height: 1em
}

.c-icon--left,
.c-icon--right {
    display: inline-block;
    position: relative
}

.c-icon--left:before,
.c-icon--right:before {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%)
}

.c-icon--left:before {
    left: 0
}

.c-icon--right:before {
    right: 0
}

.c-list,
.c-listsymbol {
    list-style: none;
    margin-top: 0;
    margin-bottom: 0;
    padding-left: 0
}

.c-list--icon li {
    position: relative;
    padding-left: 18px;
    list-style: none
}

.c-list--icon li i {
    position: absolute;
    top: 4px;
    left: 0
}

.c-list--check li {
    position: relative;
    padding-left: 18px;
    list-style: none
}

.c-list--check li:before {
    content: "";
    font-family: Font Awesome\ 5 Free;
    color: #e47296;
    position: absolute;
    top: 0;
    left: 0
}

.u-theme {
    color: #e47296
}

.u-theme-blue {
    color: #52a5c6
}

.u-theme-green {
    color: #90b664
}

.u-theme-yellow {
    color: #f7ef94
}

.u-accent-warning {
    color: #d97500
}

.u-accent-success {
    color: #1eca22
}

.u-accent-required {
    color: #f978a6
}

.u-accent-any {
    color: #555
}

.u-link {
    color: #ffdeea
}

.u-link-green {
    color: #44844a
}

.u-font {
    color: #630
}

.u-font-en {
    color: #c96
}

.u-black {
    color: #000
}

.u-white {
    color: #fff
}

.u-gray-1 {
    color: #f4f4f4
}

.u-gray-2 {
    color: #aaa
}

.u-gray-3 {
    color: #ccc
}

.u-gray-4 {
    color: #eee
}

.u-gray-5 {
    color: #999
}

.u-gray-6 {
    color: #333
}

.u-bg-1 {
    color: #fffef6
}

.u-bg-2 {
    color: #fef3f2
}

.u-icon-about {
    color: #e47296
}

.u-icon-day {
    color: #90b664
}

.u-icon-event {
    color: #80b9d0
}

.u-icon-information {
    color: #ec884c
}

.u-icon-news {
    color: #fbba23
}

.u-icon-access {
    color: #4e8ed7
}

.font--48 {
    font-size: 48px;
    font-size: 4.8rem
}

.font--40 {
    font-size: 40px;
    font-size: 4rem
}

.font--36 {
    font-size: 36px;
    font-size: 3.6rem
}

.font--30,
.font--32 {
    font-size: 30px;
    font-size: 3rem
}

.font--28 {
    font-size: 28px;
    font-size: 2.8rem
}

.font--26 {
    font-size: 26px;
    font-size: 2.6rem
}

.font--24,
.p-home-about__link__maintitle {
    font-size: 24px;
    font-size: 2.4rem
}

.font--18,
.p-getting-ready p {
    font-size: 18px;
    font-size: 1.8rem
}

.font--16 {
    font-size: 16px;
    font-size: 1.6rem
}

.font--15 {
    font-size: 18px;
    font-size: 1.8rem
}

.wc-nowrap {
    white-space: nowrap
}

.u-float {
    display: inline-block;
    -webkit-transition-duration: .3s;
    transition-duration: .3s;
    -webkit-transition-property: -webkit-transform;
    transition-property: -webkit-transform;
    transition-property: transform;
    transition-property: transform, -webkit-transform;
    transition-property: transform, -webkit-transform;
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
    -webkit-box-shadow: 0 0 1px transparent;
    box-shadow: 0 0 1px transparent
}

.u-float:hover {
    -webkit-transform: translateY(-5px);
    transform: translateY(-5px)
}

.c-dl,
.c-dl dd {
    margin: 0
}

.c-flex--direction-row {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row
}

.c-flex--direction-row-reverse {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse
}

.c-flex--direction-column,
.c-flex--direction-column-reverse {
    -webkit-box-orient: vertical
}

.c-flex--direction-column {
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column
}

.c-flex--direction-column-reverse {
    -webkit-box-direction: reverse;
    -ms-flex-direction: column-reverse;
    flex-direction: column-reverse
}

.c-row,
.l-drawer__listItem,
.l-sidenavi__link,
.p-article-list__contents,
.p-contact-01__info,
.swiper-container-vertical>.swiper-wrapper,
header .l-nav__listItem {
    -webkit-box-direction: normal
}

.c-flex--justify-content-normal {
    -webkit-box-pack: normal;
    -ms-flex-pack: normal;
    justify-content: normal
}

.c-flex--justify-content-center {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center
}

.c-flex--justify-content-start {
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: start
}

.c-flex--justify-content-end {
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: end
}

.c-flex--justify-content-flex-start {
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start
}

.c-flex--justify-content-flex-end {
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end
}

.c-flex--justify-content-space-between {
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between
}

.c-flex--justify-content-space-around {
    -ms-flex-pack: distribute;
    justify-content: space-around
}

.c-flex--align-content-normal {
    -ms-flex-line-pack: normal;
    align-content: normal
}

.c-flex--align-content-center {
    -ms-flex-line-pack: center;
    align-content: center
}

.c-flex--align-content-start {
    -ms-flex-line-pack: start;
    align-content: start
}

.c-flex--align-content-end {
    -ms-flex-line-pack: end;
    align-content: end
}

.c-flex--align-content-flex-start {
    -ms-flex-line-pack: start;
    align-content: flex-start
}

.c-flex--align-content-flex-end {
    -ms-flex-line-pack: end;
    align-content: flex-end
}

.c-flex--align-content-space-between {
    -ms-flex-line-pack: justify;
    align-content: space-between
}

.c-flex--align-content-space-around {
    -ms-flex-line-pack: distribute;
    align-content: space-around
}

.c-flex--align-items-normal {
    -webkit-box-align: normal;
    -ms-flex-align: normal;
    align-items: normal
}

.c-flex--align-items-center {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
}

.c-flex--align-items-start {
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: start
}

.c-flex--align-items-end {
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: end
}

.c-flex--align-items-flex-start {
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start
}

.c-flex--align-items-flex-end {
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end
}

.c-flex--nowrap {
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap
}

.c-flex--wrap {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap
}

.c-flex--wrap-reverse {
    -ms-flex-wrap: wrap-reverse;
    flex-wrap: wrap-reverse
}

.c-flex--order-1 {
    -webkit-box-ordinal-group: 2;
    -ms-flex-order: 1;
    order: 1
}

.c-flex--order-2 {
    -webkit-box-ordinal-group: 3;
    -ms-flex-order: 2;
    order: 2
}

.c-flex--order-3 {
    -webkit-box-ordinal-group: 4;
    -ms-flex-order: 3;
    order: 3
}

.c-flex--order-4 {
    -webkit-box-ordinal-group: 5;
    -ms-flex-order: 4;
    order: 4
}

.c-flex--order-5 {
    -webkit-box-ordinal-group: 6;
    -ms-flex-order: 5;
    order: 5
}

.c-flex--00auto {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto
}

.c-flex--01auto {
    -webkit-box-flex: 0;
    -ms-flex: 0 1 auto;
    flex: 0 1 auto
}

.c-flex--11auto {
    -webkit-box-flex: 1;
    -ms-flex: 1 1 auto;
    flex: 1 1 auto
}

.c-flex--10auto {
    -webkit-box-flex: 1;
    -ms-flex: 1 0 auto;
    flex: 1 0 auto
}

.c-flex--w10 {
    width: 10%
}

.c-flex--w20 {
    width: 20%
}

.c-flex--w30 {
    width: 30%
}

.c-flex--w40 {
    width: 40%
}

.c-flex--w50 {
    width: 50%
}

.c-flex--w60 {
    width: 60%
}

.c-flex--w70 {
    width: 70%
}

.c-flex--w80 {
    width: 80%
}

.c-flex--w90 {
    width: 90%
}

.c-flex--w100,
.c-grid--flex>[class*=c-col]>* {
    width: 100%
}

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

.c-flex>* {
    -webkit-box-flex: 0;
    -ms-flex: 0 1 auto;
    flex: 0 1 auto
}

.c-row {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -ms-flex-direction: row;
    flex-direction: row;
    margin-top: 100px;
    margin-bottom: 100px
}

.c-row>* {
    -webkit-box-flex: 0;
    -ms-flex: 0 1 auto;
    flex: 0 1 auto
}

.c-w-full {
    width: 100%
}

.c-w830 {
    max-width: 830px
}

.c-w830,
.c-w970 {
    margin: 0 auto;
    width: 100%
}

.c-w970 {
    max-width: 970px
}

.c-w940 {
    max-width: 940px
}

.c-w910,
.c-w940 {
    margin: 0 auto;
    width: 100%
}

.c-w910 {
    max-width: 910px
}

.c-w770 {
    max-width: 770px;
    margin: 0 auto;
    width: 100%
}

.c-w220 {
    max-width: 220px
}

.-col01,
.c-w220 {
    width: 100%
}

.-col02 {
    width: 50%
}

.-col03 {
    width: 33.333%
}

.c-cr-notallowed {
    cursor: not-allowed
}

.c-cr-none {
    cursor: none
}

.c-cr-default {
    cursor: default
}

.hero--top {
    position: relative;
    z-index: 0;
    width: 100%;
    max-width: 100%;
    height: 50vw;
    min-height: 780px;
    max-height: 80vh;
    margin-left: auto;
    margin-right: auto
}

.hero--img .slide_img {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 0;
    background-position: bottom;
    background-size: cover
}

.hero--img .slide01 .slide_img {
    background: url(../../assets/img/home/kv-a.jpg) no-repeat;
    background-size: cover
}
.hero--img .slide02 .slide_img {
    background: url(https://linkwin-client.pecori.jp/kashima-dc-test/wp-content/uploads/2026/07/clinic-img.jpg) no-repeat;
    background-size: cover
} 

.hero--img .slide03 .slide_img {
    background: url(../../assets/img/home/kv-c.jpg) no-repeat;
    background-size: cover
}

.hero--img .slide-copy .copy01 {
    display: block;
    opacity: 0;
    left: 50%;
    -webkit-transform: translate(-2%);
    transform: translate(-2%)
}

.hero--img .slide-copy .copy01.js-fadein-copy {
    opacity: 1;
    -webkit-transform: translate(0);
    transform: translate(0);
    -webkit-transition: all 1s;
    transition: all 1s
}

.hero--img .slide-copy .copy01.js-fadein-copy-sp01 {
    opacity: 1;
    -webkit-transform: translate(0);
    transform: translate(0);
    -webkit-transition: all 1.3s;
    transition: all 1.3s
}

.hero--img .slide-copy .copy02 {
    display: block;
    opacity: 0;
    left: 50%;
    -webkit-transform: translate(-2%);
    transform: translate(-2%)
}

.hero--img .slide-copy .copy02.js-fadein-copy {
    opacity: 1;
    -webkit-transform: translate(0);
    transform: translate(0);
    -webkit-transition: all 1.1s;
    transition: all 1.1s
}

.hero--img .slide-copy .copy02.js-fadein-copy-sp02 {
    opacity: 1;
    -webkit-transform: translate(0);
    transform: translate(0);
    -webkit-transition: all 1.4s;
    transition: all 1.4s
}

.hero--img .slide-copy {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 100%;
    margin-right: auto;
    z-index: 5;
    font-family: GenJyuuGothic-P, sans-serif;
    line-height: 1.7;
    color: #57331d;
    letter-spacing: .075em;
    text-shadow: #fff 2px 2px 6px, #fff -2px 2px 6px, #fff 2px -2px 6px, #fff -2px -2px 6px;
    font-size: 246%
}
.slide_img{
filter: opacity(0.4);	
}
.slide-hero {
    width: 100%;
    height: 100%
}

.slide-hero .slick-slide {
    position: relative;
    overflow: hidden
}

.slide-hero .slick-list>.slick-track {
    height: 100%
}

.slick-next,
.slick-prev {
    font-size: 0;
    line-height: 0;
    position: absolute;
    top: 50%;
    display: block;
    width: 32px;
    height: 32px;
    padding: 0;
    border: none;
    outline: none;
    background: none;
    margin-top: -10%
}

.slick-next:focus,
.slick-next:hover,
.slick-prev:focus,
.slick-prev:hover {
    color: transparent;
    outline: none;
    background: transparent
}

.slick-next:focus:before,
.slick-next:hover:before,
.slick-prev:focus:before,
.slick-prev:hover:before {
    opacity: 1
}

.slick-next.slick-disabled:before,
.slick-prev.slick-disabled:before {
    opacity: .25
}

.slick-next:before,
.slick-prev:before {
    line-height: 1;
    color: #fff
}

.slick-prev {
    left: 0
}

[dir=rtl] .slick-prev {
    right: 0;
    left: auto
}

[dir=rtl] .slick-prev:before {
    content: "→"
}

.slick-next {
    right: 0
}

[dir=rtl] .slick-next {
    right: auto;
    left: 0
}

[dir=rtl] .slick-next:before {
    content: "←"
}

.slick-list,
.slick-slider,
.slick-track {
    display: block;
    position: relative
}

.slick-dots {
    position: absolute;
    bottom: 15%;
    right: 30px;
    z-index: 10
}

.slick-dots li {
    position: relative;
    cursor: pointer;
    vertical-align: bottom
}

.slick-dots li button {
    font-size: 0;
    line-height: 0;
    display: block;
    width: 8px;
    height: 8px;
    cursor: pointer;
    color: transparent;
    border: 0;
    outline: 0;
    background: 0 0;
    margin: 12px 0 0
}

.slick-dots li button:focus,
.slick-dots li button:hover {
    outline: 0
}

.slick-dots li button:focus:before,
.slick-dots li button:hover:before {
    background-color: #57331d
}

.slick-dots li button:before {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    width: 10px;
    height: 10px;
    background-color: #fff;
    border-radius: 50%;
    -webkit-transition: .3s;
    transition: .3s
}

.slick-dots li.slick-active button:before {
    background-color: #57331d
}

.slick-slider {
    position: relative;
    display: block;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    -webkit-touch-callout: none;
    -khtml-user-select: none;
    -ms-touch-action: pan-y;
    touch-action: pan-y;
    -webkit-tap-highlight-color: transparent;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 0;
    background-position: 50%;
    background-size: cover
}

.slick-list {
    overflow: hidden;
    margin: 0;
    padding: 0;
    height: 100%
}

.slick-slide img,
.slick-track {
    margin-left: auto;
    margin-right: auto
}

.slick-list:focus {
    outline: 0
}

.slick-list.dragging {
    cursor: pointer;
    cursor: hand
}

.slick-slider .slick-list,
.slick-slider .slick-track {
    -webkit-transform: translateZ(0);
    transform: translateZ(0)
}

.slick-track {
    top: 0;
    left: 0
}

.slick-track:after,
.slick-track:before {
    display: table;
    content: ""
}

.slick-slide {
    display: none;
    float: left;
    height: 100%;
    min-height: 1px
}

[dir=rtl] .slick-slide {
    float: right
}

.slick-slide img {
    display: block
}

.slick-slide.slick-loading img {
    display: none
}

.slick-slide.dragging img {
    pointer-events: none
}

.slick-initialized .slick-slide {
    display: block
}

.slick-vertical .slick-slide {
    display: block;
    height: auto;
    border: 1px solid transparent
}

.slick-arrow.slick-hidden {
    display: none
}

[data-aos][data-aos][data-aos-delay="500"].aos-animate,
body[data-aos-delay="500"] [data-aos].aos-animate {
    -webkit-transition-delay: .15s;
    transition-delay: .15s
}

[data-aos][data-aos][data-aos-delay="500"],
body[data-aos-delay="500"] [data-aos] {
    -webkit-transition-delay: 0;
    transition-delay: 0
}

[data-aos][data-aos][data-aos-delay="1000"].aos-animate,
body[data-aos-delay="1000"] [data-aos].aos-animate {
    -webkit-transition-delay: .3s;
    transition-delay: .3s
}

[data-aos][data-aos][data-aos-delay="1000"],
body[data-aos-delay="1000"] [data-aos] {
    -webkit-transition-delay: 0;
    transition-delay: 0
}

[data-aos][data-aos][data-aos-delay="1500"].aos-animate,
body[data-aos-delay="1500"] [data-aos].aos-animate {
    -webkit-transition-delay: .4s;
    transition-delay: .4s
}

[data-aos][data-aos][data-aos-delay="1500"],
body[data-aos-delay="1500"] [data-aos] {
    -webkit-transition-delay: 0;
    transition-delay: 0
}

[data-aos][data-aos][data-aos-delay="2000"].aos-animate,
body[data-aos-delay="2000"] [data-aos].aos-animate {
    -webkit-transition-delay: .6s;
    transition-delay: .6s
}

[data-aos][data-aos][data-aos-delay="2000"],
body[data-aos-delay="2000"] [data-aos] {
    -webkit-transition-delay: 0;
    transition-delay: 0
}

[data-aos][data-aos][data-aos-delay="2500"].aos-animate,
body[data-aos-delay="2500"] [data-aos].aos-animate {
    -webkit-transition-delay: .8s;
    transition-delay: .8s
}

[data-aos][data-aos][data-aos-delay="2500"],
body[data-aos-delay="2500"] [data-aos] {
    -webkit-transition-delay: 0;
    transition-delay: 0
}

[data-aos][data-aos][data-aos-delay="3000"].aos-animate,
body[data-aos-delay="3000"] [data-aos].aos-animate {
    -webkit-transition-delay: .7s;
    transition-delay: .7s
}

[data-aos][data-aos][data-aos-delay="3000"],
body[data-aos-delay="3000"] [data-aos] {
    -webkit-transition-delay: 0;
    transition-delay: 0
}

[data-aos][data-aos][data-aos-delay="3500"].aos-animate,
body[data-aos-delay="3500"] [data-aos].aos-animate {
    -webkit-transition-delay: 1s;
    transition-delay: 1s
}

[data-aos][data-aos][data-aos-delay="3500"],
body[data-aos-delay="3500"] [data-aos] {
    -webkit-transition-delay: 0;
    transition-delay: 0
}

[data-aos^=fade][data-aos^=fade].aos-animate {
    opacity: 1;
    -webkit-transform: translateZ(0);
    transform: translateZ(0)
}

[data-aos^=fade][data-aos^=fade] {
    opacity: 0;
    -webkit-transition-property: opacity, -webkit-transform;
    transition-property: opacity, -webkit-transform;
    transition-property: opacity, transform;
    transition-property: opacity, transform, -webkit-transform
}

.js-fade-in,
[data-aos^=fade] {
    opacity: 0
}

[data-aos^=fade].aos-animate {
    opacity: 1;
    -webkit-transition-duration: .4s;
    transition-duration: .4s
}

.js-fade-in.fade {
    opacity: 1;
    -webkit-transition-duration: .8s;
    transition-duration: .8s
}

[data-aos^=fade-down] {
    opacity: 0;
    -webkit-transform: translateY(-10px);
    transform: translateY(-10px)
}

[data-aos^=fade-down].aos-animate {
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0);
    -webkit-transition: opacity .4s cubic-bezier(.47, 0, .745, .715), -webkit-transform .4s cubic-bezier(.47, 0, .745, .715);
    transition: opacity .4s cubic-bezier(.47, 0, .745, .715), -webkit-transform .4s cubic-bezier(.47, 0, .745, .715);
    transition: opacity .4s cubic-bezier(.47, 0, .745, .715), transform .4s cubic-bezier(.47, 0, .745, .715);
    transition: opacity .4s cubic-bezier(.47, 0, .745, .715), transform .4s cubic-bezier(.47, 0, .745, .715), -webkit-transform .4s cubic-bezier(.47, 0, .745, .715)
}

[data-aos^=fade-up] {
    opacity: 0;
    -webkit-transform: translateY(20px);
    transform: translateY(20px)
}

[data-aos^=fade-up].aos-animate {
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0);
    -webkit-transition: opacity .85s cubic-bezier(.47, 0, .745, .715), -webkit-transform .85s cubic-bezier(.47, 0, .745, .715);
    transition: opacity .85s cubic-bezier(.47, 0, .745, .715), -webkit-transform .85s cubic-bezier(.47, 0, .745, .715);
    transition: opacity .85s cubic-bezier(.47, 0, .745, .715), transform .85s cubic-bezier(.47, 0, .745, .715);
    transition: opacity .85s cubic-bezier(.47, 0, .745, .715), transform .85s cubic-bezier(.47, 0, .745, .715), -webkit-transform .85s cubic-bezier(.47, 0, .745, .715)
}

[data-aos^=zoom-in] {
    opacity: 0;
    -webkit-transform: scale(.7);
    transform: scale(.7)
}

[data-aos^=zoom-in].aos-animate {
    opacity: 1;
    -webkit-transform: translate(0) scale(1);
    transform: translate(0) scale(1);
    -webkit-transition: opacity .7s cubic-bezier(.175, .885, .32, 1.275), -webkit-transform .7s cubic-bezier(.175, .885, .32, 1.275);
    transition: opacity .7s cubic-bezier(.175, .885, .32, 1.275), -webkit-transform .7s cubic-bezier(.175, .885, .32, 1.275);
    transition: opacity .7s cubic-bezier(.175, .885, .32, 1.275), transform .7s cubic-bezier(.175, .885, .32, 1.275);
    transition: opacity .7s cubic-bezier(.175, .885, .32, 1.275), transform .7s cubic-bezier(.175, .885, .32, 1.275), -webkit-transform .7s cubic-bezier(.175, .885, .32, 1.275)
}

.js-fade-down,
.js-fade-down-lag {
    opacity: 0;
    -webkit-transform: translateY(-12px);
    transform: translateY(-12px)
}

.js-fade-down-lag.fade-down,
.js-fade-down.fade-down {
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0);
    -webkit-transition: opacity .46s cubic-bezier(.47, 0, .745, .715), -webkit-transform .46s cubic-bezier(.47, 0, .745, .715);
    transition: opacity .46s cubic-bezier(.47, 0, .745, .715), -webkit-transform .46s cubic-bezier(.47, 0, .745, .715);
    transition: opacity .46s cubic-bezier(.47, 0, .745, .715), transform .46s cubic-bezier(.47, 0, .745, .715);
    transition: opacity .46s cubic-bezier(.47, 0, .745, .715), transform .46s cubic-bezier(.47, 0, .745, .715), -webkit-transform .46s cubic-bezier(.47, 0, .745, .715)
}

.js-fade-up-lag,
.js-fade-up-lag2 {
    opacity: 0;
    -webkit-transform: translateY(10px);
    transform: translateY(10px)
}

.js-fade-up-lag2.fade-up,
.js-fade-up-lag.fade-up {
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0);
    -webkit-transition: opacity .37s cubic-bezier(.47, 0, .745, .715), -webkit-transform .37s cubic-bezier(.47, 0, .745, .715);
    transition: opacity .37s cubic-bezier(.47, 0, .745, .715), -webkit-transform .37s cubic-bezier(.47, 0, .745, .715);
    transition: opacity .37s cubic-bezier(.47, 0, .745, .715), transform .37s cubic-bezier(.47, 0, .745, .715);
    transition: opacity .37s cubic-bezier(.47, 0, .745, .715), transform .37s cubic-bezier(.47, 0, .745, .715), -webkit-transform .37s cubic-bezier(.47, 0, .745, .715)
}

.js-lag {
    opacity: 0;
    -webkit-transform: scale(.6);
    transform: scale(.6)
}

.js-lag.zoom-in {
    opacity: 1;
    -webkit-transform: translate(0) scale(1);
    transform: translate(0) scale(1);
    -webkit-transition: opacity .7s cubic-bezier(.175, .885, .32, 1.275), -webkit-transform .7s cubic-bezier(.175, .885, .32, 1.275);
    transition: opacity .7s cubic-bezier(.175, .885, .32, 1.275), -webkit-transform .7s cubic-bezier(.175, .885, .32, 1.275);
    transition: opacity .7s cubic-bezier(.175, .885, .32, 1.275), transform .7s cubic-bezier(.175, .885, .32, 1.275);
    transition: opacity .7s cubic-bezier(.175, .885, .32, 1.275), transform .7s cubic-bezier(.175, .885, .32, 1.275), -webkit-transform .7s cubic-bezier(.175, .885, .32, 1.275)
}

[data-aos] {
    -webkit-transition-duration: .4s;
    transition-duration: .4s
}

.p-about__lead {
    font-size: 3rem;
    font-family: GenJyuuGothic-P, sans-serif;
    color: #ed796c;
    line-height: 1.56;
    letter-spacing: .05em;
    max-height: 100%
}

.js-objectfit {
    position: relative
}

.js-objectfit:before {
    content: "";
    display: block
}

.js-objectfit>img {
    position: absolute;
    top: 0;
    right: 0;
    width: 100%;
    min-width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    font-family: "object-fit: cover;"
}

.p-about__principle__img .js-objectfit {
    max-height: 540px
}

.p-about__principle {
    padding: 30px 0 140px
}

.p-about__principle h2 {
    font-size: 2.1rem;
    color: #57331d;
    margin-bottom: 8px;
    max-height: 100%
}

.p-about__principle__inner {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse
}

.p-about__principle__content {
    width: 100%;
    max-width: 1170px;
    margin: 0 auto
}

.p-about__principle__content__inner {
    position: relative;
    width: 100%;
    max-width: 670px;
    padding: 35px 60px 40px 70px
}

.p-about__principle__img {
    overflow: hidden;
    width: 57.66667%;
    float: right
}

.p-about__principle__txt {
    margin: 10px 0 14px;
    line-height: 1.95;
    max-height: 100%
}

.p-about__greeting {
    position: relative;
    background: #f1f7ef;
    padding: 60px 0 25px
}

.p-about__greeting h4 {
    background: #74b263;
    font-size: 1.8rem;
    padding: 8px 10px 6px;
    border-radius: 5px;
    line-height: 1;
    display: inline-block;
    margin-bottom: 12px;
    color: #fff;
    font-weight: 700;
    font-family: GenJyuuGothic-P, sans-serif;
    letter-spacing: .1em;
    max-height: 100%
}

.p-about__greeting .u-mt50 {
    margin-top: 40px
}

.p-about__greeting__lead {
    margin-bottom: 50px;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-top: 60px;
    max-height: 100%
}

.p-about__greeting__photo {
    width: 37.23404%;
    position: relative
}

.p-about__greeting__photo img {
    border-radius: 20px;
    overflow: hidden;
    width: 100%;
    height: 100%;
    display: block
}

.p-about__greeting__photo__name {
    text-align: center;
    position: absolute;
    bottom: 21px;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    color: #fff;
    letter-spacing: .06em
}

.p-about__greeting__photo__name .en {
    font-size: 1.4rem;
    font-family: GenJyuuGothic-P, sans-serif;
    display: block;
    margin-bottom: 6px;
    font-weight: 700;
    letter-spacing: .03em
}

.p-about__greeting__photo__name .jp {
    font-size: 3rem;
    font-family: GenJyuuGothic-P, sans-serif;
    line-height: 1
}

.p-about__greeting__content {
    width: 58.51064%
}

.p-about__greeting__txt {
    line-height: 1.95;
    max-height: 100%
}

.timeline {
    margin-top: 12px;
    margin-left: 6px
}

.timeline>li {
    margin: 0;
    position: relative;
    clear: both
}

.timeline>li:last-child .timeline-content:after {
    display: none
}

.timeline-date {
    width: 84px;
    float: left;
    margin-bottom: 30px;
    line-height: 1
}

.timeline-content {
    width: 75%;
    float: left;
    padding-left: 29px;
    line-height: 1;
    position: relative
}

.timeline-content:after {
    display: block;
    content: "";
    width: 1px;
    height: 102%;
    background: #57331d;
    position: absolute;
    left: 0;
    top: 3px
}

.timeline-content p {
    margin-bottom: 27px
}

.timeline-content:before {
    content: "";
    width: 12px;
    height: 12px;
    background: #57331d;
    position: absolute;
    left: -6px;
    top: 3px;
    border-radius: 100%
}

.p-about__equipment {
    padding: 65px 0 55px
}

.p-about__equipment__list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    margin-left: -22px;
    margin-right: -22px;
    margin-top: 55px
}

.p-about__equipment__list li {
    width: 33.333%;
    padding: 0 22px 50px
}

.p-about__equipment__photo {
    border-radius: 20px;
    overflow: hidden;
    position: relative
}

.p-about__equipment__room {
    position: absolute;
    left: 50%;
    bottom: 21px;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    color: #fff;
    font-size: 2.1rem;
    line-height: 1;
    font-family: GenJyuuGothic-P, sans-serif;
    font-weight: 700;
    text-align: center;
    width: 90%;
    line-height: 1.42;
    letter-spacing: .05em;
    text-shadow: 0 5px 9.5px rgba(0, 0, 0, .2)
}

.p-about__equipment__room span {
    display: block;
    margin-top: 1px;
    font-size: 1.4rem
}

.p-about__equipment__txt {
    margin-top: 15px;
    max-height: 100%
}

.p-about__flow {
    background: #f1f7ef;
    position: relative;
    padding: 68px 0 30px
}

.p-about__flow:after {
    display: block;
    content: "";
    background: url(../../assets/img/svg/ico-girl.svg) no-repeat bottom;
    background-size: 35px 44px;
    width: 35px;
    height: 44px;
    position: absolute;
    bottom: -52px;
    left: 50%;
    -webkit-transform: translate(-50%);
    transform: translate(-50%);
    z-index: 5
}

.p-flow {
    position: relative;
    margin: 65px auto 0;
    max-width: 970px
}

.p-flow:before {
    content: "";
    position: absolute;
    top: 0;
    left: 50%;
    margin-left: -1px;
    height: 100%;
    width: 2px;
    background: #74b263
}

.p-flow-block {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    position: relative;
    z-index: 1;
    width: 100%;
    margin: 0 auto 85px
}

.p-flow-block:last-child {
    margin-bottom: 15px;
    padding-bottom: 25px
}

.p-flow-number {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    width: 60px;
    height: 104px;
    background: #f1f7ef;
    color: #74b263;
    font-size: 7.2rem;
    font-weight: 700;
    line-height: 1;
    font-family: GenJyuuGothic-P, sans-serif;
    -webkit-box-ordinal-group: 2;
    -ms-flex-order: 1;
    order: 1;
    margin-top: -27px
}

.p-flow-content {
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
    position: relative;
    width: 45%;
    -webkit-box-flex: 0;
    -ms-flex-positive: 0;
    flex-grow: 0;
    max-width: 420px
}

.p-flow-content h3 {
    color: #ed796c;
    margin-bottom: 16px;
    line-height: 1;
    font-family: GenJyuuGothic-P, sans-serif;
    font-size: 3rem;
    letter-spacing: .08em
}

.p-flow-photo {
    max-width: 420px;
    width: 45%;
    -webkit-box-ordinal-group: 2;
    -ms-flex-order: 1;
    order: 1
}

.p-flow-photo img {
    border-radius: 20px;
    overflow: hidden
}

.p-flow-txt {
    max-height: 100%
}

.p-flow-surgery {
    margin: 0 auto;
    max-width: 970px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between
}

.p-flow-surgery__photo {
    position: relative;
    padding-bottom: 60px;
    max-width: 300px;
    width: 100%
}

.p-flow-surgery__photo img {
    border-radius: 20px;
    overflow: hidden
}

.p-flow-surgery__ttl {
    position: absolute;
    left: 50%;
    bottom: 78px;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    color: #fff;
    font-size: 2.1rem;
    line-height: 1;
    font-family: GenJyuuGothic-P, sans-serif;
    font-weight: 700;
    text-align: center;
    width: 90%;
    letter-spacing: .05em
}

.p-flow-closing {
    text-align: center;
    padding: 30px 0 0
}

.p-flow-closing__lead {
    font-size: 2.4rem;
    letter-spacing: .09em;
    line-height: 1;
    margin-bottom: 5px
}

.p-flow-closing__lead,
.p-flow-closing__main {
    color: #74b263;
    font-family: GenJyuuGothic-P, sans-serif;
    font-weight: 700
}

.p-flow-closing__main {
    font-size: 4.2rem;
    position: relative;
    padding: 0 53px;
    display: inline-block;
    letter-spacing: .07em
}

.p-flow-closing__main:after,
.p-flow-closing__main:before {
    position: absolute;
    top: 50%;
    display: block;
    width: 40px;
    height: 4px;
    margin-top: -1px;
    content: "";
    border-radius: 2px;
    background: currentColor
}

.p-flow-closing__main:before {
    -webkit-transform: rotate(60deg);
    transform: rotate(60deg);
    left: 0
}

.p-flow-closing__main:after {
    -webkit-transform: rotate(-60deg);
    transform: rotate(-60deg);
    right: 0
}

.p-about__summary {
    padding: 115px 0 0
}

.p-about__summary__content {
    border: 1px solid #d3d3d3;
    border-radius: 10px;
    margin-top: 25px
}

.p-about__summary__tb {
    border-radius: 10px;
    width: 100%;
    border-collapse: collapse;
    border-spacing: 0;
    overflow: hidden
}

.p-about__summary__tb tr:first-child th {
    border-top-left-radius: 12px;
    overflow: hidden
}

.p-about__summary__tb tr:last-child th {
    border-bottom-left-radius: 10px;
    overflow: hidden
}

.p-about__summary__tb tr:last-child td {
    border-bottom: none
}

.p-about__summary__tb tr td,
.p-about__summary__tb tr th {
    padding: 14px 23px;
    font-weight: 400;
    max-height: 100%
}

.p-about__summary__tb tr th {
    background: #74b263;
    border-left: 1px solid #fff;
    border-top: 1px solid #fff;
    border-bottom: 1px solid #fff;
    color: #fff;
    width: 16.48352%
}

.p-about__summary__tb tr td {
    border-top: 1px solid #fff;
    border-bottom: 1px solid #d3d3d3;
    width: 83.51648%
}

.p-about__summary .google-map {
    width: 100%;
    height: 427px
}

.p-features--heading {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
    -ms-flex-direction: column-reverse;
    flex-direction: column-reverse;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
}

.p-features--heading .jp {
    font-family: GenJyuuGothic-P, sans-serif;
    font-size: 1.8rem;
    letter-spacing: .08rem;
    color: #57331d;
    margin-top: 10px;
    max-height: 100%
}

.p-features--heading .en {
    color: #74b263;
    font-size: 4.8rem;
    font-family: GenJyuuGothic-P, sans-serif;
    font-weight: 700;
    line-height: 1;
    letter-spacing: -.01em
}

.p-features__intro {
    position: relative;
    overflow: hidden;
    padding: 0 0 125px
}

.p-features__intro:after,
.p-features__intro:before {
    display: block;
    content: "";
    position: absolute;
    bottom: 0
}

.p-features__intro:before {
    background: url(../../assets/img/features/intro-bg01.png) no-repeat 0 100%;
    background-size: cover;
    width: 435px;
    height: 473px;
    left: -30px;
    bottom: -220px
}

.p-features__intro:after {
    background: url(../../assets/img/features/intro-bg02.png) no-repeat 0 100%;
    background-size: cover;
    width: 435px;
    height: 580px;
    right: -30px;
    bottom: -310px
}

.p-features__intro__inner {
    max-width: 600px;
    width: 56.41026%;
    margin: 0 auto
}

.p-features__intro__txt {
    line-height: 2.3;
    text-align: center;
    max-height: 100%
}

.p-features__plan {
    background: #f1f7ef;
    padding: 25px 0 25px;
    position: relative
}

.p-features__treatment {
    padding: 40px 0 100px;
    position: relative
}

.p-features__list {
    margin: 0 -35px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap
}

.p-features__list__wrap {
    max-width: 970px;
    margin: 60px auto 0
}

.p-features__list__item {
    padding-left: 35px;
    padding-right: 35px;
    width: 50%
}

.p-features__list__photo {
    position: relative
}

.p-features__list__label {
    position: absolute;
    left: 50%;
    top: -50px;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    color: #fff;
    line-height: 1;
    font-family: GenJyuuGothic-P, sans-serif;
    font-weight: 700;
    text-align: center;
    text-shadow: 0 5px 9.5px rgba(0, 0, 0, .2);
		filter: brightness(0.5);
}

.p-features__list__label .num {
    color: #fff;
    font-size: 2.4rem;
    font-family: GenJyuuGothic-P, sans-serif;
    margin-top: -12px;
    display: block
}

.p-features__list__img {
    border-radius: 20px;
    overflow: hidden
}

.p-features__list__ttl {
    position: absolute;
    left: 50%;
    bottom: 21px;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    color: #fff;
    font-size: 2.1rem;
    line-height: 1;
    font-family: GenJyuuGothic-P, sans-serif;
    font-weight: 700;
    text-align: center;
    width: 90%;
    line-height: 1.42;
    letter-spacing: .06em;
    max-height: 100%;
    text-shadow: 0 5px 9.5px rgba(0, 0, 0, .2);
	background: #333;
}

.p-features__list__txt {
    margin-top: 20px;
    max-height: 100%
}

.p-features__list__txt .color-red {
    color: #ed796c;
    font-weight: 700
}

.p-features__prevention {
    background: #f1f7ef;
    padding: 75px 0;
    position: relative;
    margin-bottom: 140px
}

.p-features__prevention .c-w970 {
    margin-top: 65px
}

.p-features__prevention__bg {
    background: #fff;
    border-radius: 20px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    padding: 30px 20px 35px
}

.p-features__prevention h4 {
    font-size: 2.4rem;
    font-family: GenJyuuGothic-P, sans-serif;
    color: #57331d;
    margin-bottom: 20px;
    line-height: 1.5;
    text-align: center
}

.p-features__prevention__txt {
    max-height: 100%
}

.p-features__prevention__txt+.p-features__prevention__txt {
    margin-top: 18px
}

.p-features__prevention__txt .color-red {
    color: #ed796c;
    font-weight: 700
}

.p-features__prevention__photo {
    border-radius: 20px;
    overflow: hidden
}

.p-recruit--heading--main {
    font-size: 3rem;
    color: #74b263;
    text-align: center;
    line-height: 1.4;
    font-family: GenJyuuGothic-P, sans-serif;
    letter-spacing: .07em;
    margin-top: 10px;
    max-height: 100%
}

.p-recruit--heading--main.-fz36 {
    font-size: 3.6rem
}

.p-recruit--heading--sub {
    font-size: 2.1rem;
    color: #57331d;
    text-align: center;
    margin-top: 13px;
    line-height: 1.64;
    font-family: GenJyuuGothic-P, sans-serif;
    font-weight: 700;
    letter-spacing: .04em;
    max-height: 100%
}

.p-recruit--heading--txt {
    margin-top: 22px;
    line-height: 2.1;
    text-align: center;
    max-height: 100%
}

.p-recruit__intro {
    max-width: 900px;
    margin: 0 auto;
/*     padding: 0 0 125px */
}

.p-recruit__intro__photo {
    border-radius: 20px;
    overflow: hidden
}

.p-recruit__sec {
    position: relative
}

.p-recruit__sec.-bg-green {
    background: #f1f7ef;
    padding: 20px 0 90px
}

.p-recruit__sec.-bg-white {
    padding: 50px 0 95px
}

.p-recruit__requirements {
    background: #f1f7ef;
    position: relative;
    padding: 50px 0
}

.p-recruit__requirements__box {
    max-width: 770px;
    background: #fff;
    border-radius: 10px;
    margin: 0 auto;
    padding: 35px
}

.p-recruit__requirements__box:nth-of-type(2) {
    margin-top: 50px
}

.p-recruit__requirements__box .p-parts--ttl {
    border-bottom: 3px solid #ab998e;
    padding-bottom: 10px;
    margin-bottom: 0
}

.p-recruit__requirements__box dl {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    background: url(../../assets/img/parts/line-dotted04.png) repeat-x 0 100%;
    background-size: 9px 3px
}

.p-recruit__requirements__box dl dt {
    padding: 15px 20px 18px 15px;
    color: #57331d;
    line-height: 1.6;
    font-weight: 500
}

.p-recruit__requirements__box dl dd {
    padding: 15px 0 18px;
    line-height: 1.6;
    font-weight: 500
}

.p-recruit__tel {
    padding: 140px 0 42px;
    position: relative
}

.p-recruit__tel__photo {
    border-radius: 20px;
    overflow: hidden
}

.p-recruit__tel__label {
    font-size: 2.1rem;
    color: #57331d;
    text-align: center;
    margin-top: 24px;
    font-weight: 700;
    font-family: GenJyuuGothic-P, sans-serif;
    letter-spacing: .11em
}

.p-recruit__tel__tel {
    text-align: center;
    margin-top: 13px
}

.p-recruit__tel__tel a {
    color: #74b263;
    font-size: 4.2rem;
    font-family: GenJyuuGothic-P, sans-serif;
    line-height: 1
}

.p-recruit__tel__tel a span {
    font-size: 3rem
}

.faq-wrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin: 20px 0
}

.faq-label {
    color: #74b263;
    background: #f1f7ef;
    font-weight: 700;
    white-space: nowrap;
    text-align: center;
    padding: 12px .5em;
    -webkit-box-ordinal-group: 0;
    -ms-flex-order: -1;
    order: -1;
    position: relative;
    z-index: 1;
    cursor: pointer;
    border-radius: 10px 10px 0 0;
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1
}

.faq-content {
    width: 100%;
    height: 0;
    overflow: hidden;
    opacity: 0
}

.faq-content .p-parts--ttl {
    padding: 28px 0 22px 10px;
    background: url(../../assets/img/parts/line-dotted04.png) repeat-x 0 100%;
    background-size: 9px 3px;
    margin-bottom: 0
}

.faq-switch {
    display: none
}

.faq-switch:checked+.faq-label {
    background: #74b263;
    color: #fff
}

.faq-switch:checked+.faq-label+.faq-content {
    height: auto;
    overflow: auto;
    padding: 15px 0 5px;
    opacity: 1;
    -webkit-transition: opacity .5s;
    transition: opacity .5s
}

.faq-item {
    background: url(../../assets/img/parts/line-dotted04.png) repeat-x 0 100%;
    background-size: 9px 3px;
    position: relative
}

.faq-btn {
    position: relative;
    padding: 21px 10px 24px;
    cursor: pointer;
    line-height: 1.7;
    max-height: 100%
}

.faq-btn:before {
    content: "Q";
    position: absolute;
    left: 18px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    font-size: 16px;
    font-size: 1.6rem;
    color: #57331d;
    font-family: GenJyuuGothic-P, sans-serif;
    font-weight: 500
}

.faq-btn.js-active .faq-icon:after {
    width: 0
}

.faq-ttl {
    padding: 0 0 0 38px;
    font-size: 1.6rem;
    font-weight: 500;
    letter-spacing: .02em;
    display: inline-block
}

.faq-icon {
    position: absolute;
    top: 50%;
    right: 27px;
    z-index: 30;
    width: 14px;
    height: 14px;
    margin-top: -7px
}

.faq-icon:after,
.faq-icon:before {
    position: absolute;
    display: block;
    content: "";
    background-color: #57331d;
    -webkit-transition: .3s ease-in-out;
    transition: .3s ease-in-out;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    width: 14px;
    height: 2px;
    left: 50%;
    top: 50%
}

.faq-icon:after {
    -webkit-transform: translate(-50%, -50%) rotate(90deg);
    transform: translate(-50%, -50%) rotate(90deg);
    z-index: -1
}

.faq-txt {
    position: relative;
    padding: 0 80px 0 48px;
    overflow: hidden;
    height: 0
}

.faq-txt:before {
    content: "A";
    position: absolute;
    left: 18px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    color: #fff;
    color: #ed796c;
    font-family: GenJyuuGothic-P, sans-serif
}

.faq-txt:before,
.faq-txt p {
    font-size: 1.6rem;
    font-weight: 500
}

.faq-txt p {
    padding-bottom: 30px;
    line-height: 1.85
}

.p-info--sec {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    position: relative
}

.p-info--sec.-bg-green {
    background: #f1f7ef;
    padding: 75px 0 90px
}

.p-info--sec.-bg-green+.p-info--sec {
    padding: 80px 0 100px
}

.p-info--sec.-bg-white {
    background: #fff;
    padding: 45px 0 85px
}

.p-info--sec .c-container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between
}

.p-info--sec .p-parts--ttl .jp {
    letter-spacing: .2rem
}

.p-info--photo img {
    border-radius: 20px;
    overflow: hidden
}

.p-info--txt p {
    max-height: 100%
}

.p-info--link {
    border: 1px solid #74b263;
    border-radius: 10px;
    color: #74b263;
    padding: 20px;
    height: 100px;
    display: block;
    width: 100%;
    -webkit-transition: .3s;
    transition: .3s
}

.p-info--link__list {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin: 13px -10px 0
}

.p-info--link__item,
.p-info--link__list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex
}

.p-info--link__item {
    width: 50%;
    padding: 10px;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    position: relative
}

.p-info--link__txt {
    line-height: 1.7;
    letter-spacing: .02em;
    font-weight: 500
}

.p-info--link__more {
    font-size: 1.5rem;
    position: absolute;
    right: 28px;
    bottom: 24px;
    letter-spacing: .01em
}

.p-info--link__more .c-icon {
    fill: #74b263;
    width: 6px;
    height: 10px;
    margin-left: 8px;
    position: relative;
    top: 1px;
    display: inline-block;
    -webkit-transition: .3s;
    transition: .3s
}

.p-info__medical {
    padding: 0 0 10px;
    position: relative;
    margin-bottom: 100px
}

.p-info__medical.-last-sec {
    padding-top: 90px
}

.p-info__medical .p-medicalnav-list {
    opacity: 1;
    visibility: visible;
    position: relative;
    border: 1px solid #74b263;
    border-radius: 20px
}

.p-info__medical .c-container {
    max-width: 1240px
}

.p-info--heading {
    color: #ed796c;
    text-align: center;
    padding: 0 20px;
    background: #fff;
    position: absolute;
    left: 50%;
    top: -17px;
    z-index: 3;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    letter-spacing: .12em;
    white-space: nowrap
}

.p-info--heading,
.p-line--heading {
    font-size: 3rem;
    font-family: GenJyuuGothic-P, sans-serif
}

.p-line--heading {
    color: #74b263;
    line-height: 1.4;
    letter-spacing: .08em;
    margin-bottom: 12px
}

.p-line__intro__right {
    max-width: 200px
}

.p-line__intro .c-flex {
    padding: 20px 0 115px
}

.p-line__qrcode {
    border: 1px solid #d2d2d2;
    border-radius: 20px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    overflow: hidden
}

.p-line__btn {
    margin-top: 27px
}

.p-line__how {
    background: #f1f7ef;
    position: relative;
    padding: 55px 0
}

.p-line__how .c-w970 {
    margin-top: 50px
}

.p-line__list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between
}

.p-line__item {
    position: relative;
    background: #fff;
    border-radius: 20px;
    -webkit-box-shadow: 1px 1px 3px rgba(0, 0, 0, .16);
    box-shadow: 1px 1px 3px rgba(0, 0, 0, .16);
    padding: 30px;
    max-width: 300px;
    width: 30.92784%
}

.p-line__item:not(:first-child):before {
    display: block;
    content: "";
    width: 18px;
    height: 32px;
    position: absolute;
    left: -5%;
    top: 50%;
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg aria-hidden='true' data-prefix='far' data-icon='chevron-right' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 256 512' class='svg-inline--fa fa-chevron-right fa-w-8 fa-lg'%3E%3Cpath fill='currentColor' d='M24.707 38.101L4.908 57.899c-4.686 4.686-4.686 12.284 0 16.971L185.607 256 4.908 437.13c-4.686 4.686-4.686 12.284 0 16.971L24.707 473.9c4.686 4.686 12.284 4.686 16.971 0l209.414-209.414c4.686-4.686 4.686-12.284 0-16.971L41.678 38.101c-4.687-4.687-12.285-4.687-16.971 0z' color='57331d'/%3E%3C/svg%3E")
}

.p-line__pic {
    border: 1px solid #d2d2d2
}

.p-line__txt {
    font-size: 1.4rem;
    line-height: 1.85
}

.p-line__ttl {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: baseline;
    -ms-flex-align: baseline;
    align-items: baseline;
    padding: 15px 0 11px
}

.p-line__ttl .num {
    color: #ed796c;
    font-size: 4.2rem;
    padding-right: 5px;
    position: relative;
    top: 3px
}

.p-line__ttl .num,
.p-line__ttl .ttl {
    font-family: GenJyuuGothic-P, sans-serif;
    font-weight: 700;
    line-height: 1
}

.p-line__ttl .ttl {
    color: #57331d;
    font-size: 2.4rem;
    letter-spacing: .05em
}

.l-hero {
    position: relative;
    z-index: 1;
    height: 400px;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: 50%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
}

/* .l-hero:after {
    display: block;
    content: "";
    background: url(../../assets/img/common/ico-girl.png) no-repeat bottom;
    background-size: 35px 44px;
    width: 35px;
    height: 44px;
    position: absolute;
    bottom: 48px;
    left: 50%;
    -webkit-transform: translate(-50%);
    transform: translate(-50%)
} */

.l-hero__ttl {
    text-align: center;
    padding: 4.5vw 0 25px
}

.l-hero__jp {
    font-size: 3.6rem;
    letter-spacing: .08em;
    color: #fff;
    padding: 0 20px 0 21px;
    font-family: GenJyuuGothic-P, sans-serif;
    color: #ed796c;
    line-height: 1;
    max-height: 100%
}

.l-hero__en {
    font-size: 1.4rem;
    margin-top: 11px
}

.l-hero__en,
.l-hero__lead {
    font-family: GenJyuuGothic-P, sans-serif;
    color: #57331d;
    font-weight: 700;
    max-height: 100%
}

.l-hero__lead {
    font-size: 1.8rem;
    letter-spacing: .12em
}

.l-hero__lead:before {
    display: block;
    content: "";
    padding-top: 30px
}

.l-hero__txt {
    max-width: 760px;
    width: 71.45299%;
    margin: 30px auto 0;
    line-height: 2.2;
    text-align: center;
    max-height: 100%
}

.l-hero {
    background-image: url(../../assets/img/common/bg-hero.jpg)
}

.p-wave {
    position: absolute;
    left: 0;
    width: 100%;
    overflow: hidden;
    line-height: 0;
    z-index: 1
}

.p-wave-bottom {
    bottom: 0;
    width: 100%
}

.p-wave-bottom.p-wave-circle-green {
    background: url(../../assets/img/common/bg-circle03.svg) no-repeat bottom;
    background-size: 100% 50px;
    bottom: -50px
}

.p-wave-top {
    width: 100%
}

.p-wave-top.p-wave-h20 {
    top: -20px
}

.p-wave-top.p-wave-h50 {
    top: -50px
}

.p-wave-h20 {
    height: 20px
}

.p-wave-h50 {
    height: 50px
}

.p-wave-circle-green {
    background: url(../../assets/img/common/bg-circle01.svg) no-repeat top;
    background-size: 100% 50px
}

.p-wave-circle-white {
    background: url(../../assets/img/common/bg-circle02.svg) no-repeat bottom;
    background-size: 100% 50px
}

.p-parts__list {
    margin-top: 2px;
    max-height: 100%
}

.p-parts__list li {
    margin-bottom: 6px
}

.p-parts__list li span {
    color: #57331d;
    font-size: 1rem;
    margin-right: 4px;
    position: relative;
    bottom: 2px
}

.p-parts__list.-list-half {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    padding-right: 30px;
    width: 100%
}

.p-parts-tel {
    text-align: center;
    position: relative;
    padding: 120px 0 40px
}

.p-parts-tel .p-block-contact__tel {
    padding: 28px 0 0
}

.p-parts-tel .p-block-contact__tel a {
    font-size: 3.6rem;
    font-family: GenJyuuGothic-P, sans-serif;
    color: #ed796c;
    line-height: 1;
    letter-spacing: .05em
}

.p-parts-tel .p-block-contact__tel a span {
    font-size: 2.4rem;
    letter-spacing: 0
}

.p-parts-tel .p-block-contact__reception {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    padding-top: 7px
}

.l-article__wrap {
    max-width: 1200px;
    width: 100%;
    margin-right: auto;
    margin-left: auto;
    position: relative;
    z-index: 1;
    padding: 35px 20px 0
}

.l-article__sub {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    max-width: 300px;
    width: 100%
}

.l-article__title {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    font-weight: 500;
    margin-bottom: 22px;
    line-height: 1;
    padding-bottom: 20px;
    position: relative;
    background: #74b263
}

.l-article__title .c-icon-news {
    margin-right: 18px;
    top: 2px
}

.l-article__title span {
    font-size: 3rem;
    font-weight: 700;
    letter-spacing: .05em
}

.l-article__title img {
    width: 45px
}

.p-article__wrap {
    position: relative
}

.p-article__contents {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start
}

.p-article__contents .title {
    margin-top: 10px;
    font-weight: 500;
    font-size: 1.5rem;
    line-height: 1.84;
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    -webkit-transition: color .3s ease-in-out;
    transition: color .3s ease-in-out
}

.p-article__contents .thumb {
    width: 100%;
    border-radius: 8px;
    position: relative;
    overflow: hidden;
    margin-right: 20px;
    width: 200px;
    height: 130px;
    border: 1px solid #f5f5f5;
    -webkit-box-flex: 0;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto
}

.p-article__contents .thumb img {
    width: 100%;
    transition: transform .5s ease, -webkit-transform .7s ease
}

.p-article__card {
    position: relative
}

.p-article__card:before {
    display: block;
    content: "";
    background: url(../../assets/img/parts/line-dotted03.png) repeat-x 0 100%;
    background-size: 8px 3px;
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 3px
}

.p-article__link {
    display: block;
    padding: 22px 0 25px;
    position: relative;
    z-index: 1
}

.p-article__link:before {
    background: #faf9f8;
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: calc(100% - 3px);
    display: block;
    content: "";
    z-index: -1;
    opacity: 0;
    -webkit-transition: .3s ease-in-out;
    transition: .3s ease-in-out
}

.p-article__block {
    background: #fff
}

.p-article__head {
    margin-bottom: 3.2rem
}

.p-article__head,
.p-article__head .time {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
}

.p-article__head .time {
    background: #ed796c;
    min-width: 120px;
    min-height: 120px;
    height: 120px;
    border-radius: 60px;
    margin-right: 17px;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column
}

.p-article__head .time .num-year {
    font-size: 1.8rem
}

.p-article__head .time .num-date {
    font-size: 2.7rem;
    padding: 5px 0 8px
}

.p-article__head .time .weak {
    font-size: 1.8rem
}

.p-article__head .time span {
    color: #fff;
    font-weight: 700;
    font-family: GenJyuuGothic-P, sans-serif;
    line-height: 1
}

.p-article__summary .category {
    line-height: 1;
    margin: 0 23px 12px 0
}

.p-article__summary .category,
.p-article__summary .category-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
}

.p-article__summary .category-list {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap
}

.p-article__summary .category span {
    font-size: 1.4rem;
    letter-spacing: .04em;
    color: #57331d;
    font-weight: 500
}

.p-article__summary .category .c-icon {
    width: 12px;
    height: 12px;
    fill: #57331d;
    margin-right: 5px
}

.p-article__summary .title {
    font-size: 3rem;
    line-height: 1.4;
    font-weight: 700;
    padding-top: 6px;
    position: relative;
    letter-spacing: .025em;
    max-height: 100%;
    font-family: GenJyuuGothic-P, sans-serif;
    color: #57331d
}

.p-article .c-editor hr {
    border-style: inset;
    border-width: 1px
}

.p-article .c-editor p,
.p-article .c-editor pre {
    margin: 0 0 20px;
    font-size: 1.6rem;
    max-height: 100%;
    line-height: 1.8
}

.p-article .c-editor b,
.p-article .c-editor strong {
    font-weight: 700
}

.p-article .c-editor h3 {
    font-size: 2.4rem;
    line-height: 1.5;
    font-family: GenJyuuGothic-P, sans-serif;
    letter-spacing: .05em;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    position: relative;
    max-height: 100%;
    margin: 45px 0 20px;
    color: #fff;
    background: #74b263;
    border-radius: 5px;
    padding: 13px 20px 13px 49px
}

.p-article .c-editor h3:before {
    position: absolute;
    left: 18px;
    top: 50%;
    margin-top: -12px;
    margin-right: 10px;
    display: inline-block;
    content: "";
    width: 19px;
    height: 24px;
    background-size: 19px 24px;
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 18.5 24.5'%3E%3Cpath d='M7.2 1.9A4.4 4.4 0 004.3.5 3.6 3.6 0 001 2.6c-2.5 5.3.1 15.5 2.7 20.5s3-3.3 4-5.7 1.2-1.7 1.7-1.6m-2.3-14c1.7 1.6 3.2.5 4.1-.4A4.7 4.7 0 0114.1 0h.1a3.5 3.5 0 013.2 2c2.6 5.4 0 15.6-2.6 20.5s-3-3.3-4-5.6a1.6 1.6 0 00-1.4-1.1m-.1-.4h.2z' fill='%23fff' fill-rule='evenodd'/%3E%3C/svg%3E")
}

.p-article .c-editor h4 {
    position: relative;
    padding: 3px 0 3px 20px;
    font-size: 2.2rem;
    line-height: 1.5;
    font-family: GenJyuuGothic-P, sans-serif;
    letter-spacing: .06em;
    color: #74b263;
    margin: 40px 0 19px
}

.p-article .c-editor h4:after {
    position: absolute;
    top: 0;
    left: 0;
    content: "";
    width: 6px;
    height: 50%;
    background-color: #bad9b1;
    border-top-left-radius: 4px;
    border-top-right-radius: 4px
}

.p-article .c-editor h4:before {
    position: absolute;
    bottom: 0;
    left: 0;
    content: "";
    width: 6px;
    height: 50%;
    background-color: #74b263;
    border-bottom-left-radius: 4px;
    border-bottom-right-radius: 4px
}

.p-article .c-editor .wp-block-image {
    margin: 2.5em auto
}

.p-home-box .p-article__card:last-child:before {
    background: none
}

.c-article-summary {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap
}

.c-article-summary,
.c-article-summary .time {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
}

.c-article-summary .time {
    line-height: 1;
    margin-top: 5px;
    margin-bottom: 7px;
    margin-right: 20px
}

.c-article-summary .time .c-icon {
    fill: #ed796c
}

.c-article-summary .time .icon {
    margin-right: 7px
}

.c-article-summary .time .num {
    font-size: 1.4rem;
    letter-spacing: .035em;
    font-weight: 500;
    -webkit-transition: color .3s ease-in-out;
    transition: color .3s ease-in-out
}

.c-article-summary .c-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap
}

.c-article-summary .c-list li {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    line-height: 1;
    margin: 5px 23px 7px 0;
    text-align: center;
    line-height: 1.2
}

.c-article-summary .c-list li:last-child {
    margin-right: 0
}

.c-article-summary .c-list li span {
    font-size: 1.4rem;
    font-weight: 500;
    color: #57331d;
    -webkit-transition: color .3s ease-in-out;
    transition: color .3s ease-in-out;
    letter-spacing: .01em
}

.c-article-summary .c-list li .c-icon {
    margin-right: 3px;
    fill: #57331d;
    -webkit-transition: all .4s;
    transition: all .4s
}

.p-related-post {
    padding: 40px 0 0
}

.p-related-post__wrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin: 0 -20px
}

.p-related-post .c-article-summary {
    display: block
}

.p-related-post .c-article-summary .c-list li {
    margin: 0 15px 7px 0
}

.p-related-post .p-article__contents .thumb {
    width: 100px;
    height: 100px;
    margin-right: 17px
}

.p-related-post .p-article__contents .thumb .js-objectfit {
    max-height: 100px;
    height: 100px
}

.p-related-post .p-article__contents .thumb .js-objectfit:before {
    padding-top: 100%
}

.p-related-post .p-article__contents .title {
    margin-top: 13px;
    font-size: 1.4rem;
    line-height: 1.64
}

.p-related-post .p-article__card {
    background: none
}

.p-related-post .p-article__link {
    padding: 20px 0
}

.l-news .p-article__wrap:before {
    display: block;
    content: "";
    background: url(../../assets/img/parts/line-dotted03.png) repeat-x 0 0;
    background-size: 8px 3px;
    position: absolute;
    left: 0;
    top: -3px;
    width: 100%;
    height: 3px
}

.l-news-single .p-article__wrap {
    padding-bottom: 75px
}

.l-news-single .p-article__wrap:after {
    background: url(../../assets/img/parts/line-dotted03.png) repeat-x 0 100%;
    background-size: 8px 3px;
    display: block;
    content: "";
    width: 100%;
    height: 3px;
    position: absolute;
    left: 0;
    bottom: 0
}

.l-news-single .p-article__card {
    width: 50%;
    padding: 0 20px
}

.l-news-single .p-article__card:not(:first-child) {
    background: none
}

.p-article-side .p-heading {
    background: #74b263;
    padding: 19px 20px
}

.p-article-side .p-heading h3 {
    text-align: left;
    color: #fff;
    font-size: 2rem;
    font-weight: 700;
    letter-spacing: .17em;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    font-family: GenJyuuGothic-P, sans-serif
}

.p-article-side .p-heading .c-icon {
    fill: #fff;
    margin-right: 9px
}

.p-article-side__wrap {
    border-left: 2px solid #74b263;
    border-right: 2px solid #74b263;
    border-bottom: 2px solid #74b263;
    border-radius: 10px;
    overflow: hidden
}

.p-article-side__wrap+* {
    margin-top: 30px
}

.p-article-side__list ul {
    padding: 0
}

.p-article-side__list ul li:not(:last-child) {
    background: url(../../assets/img/parts/line-dotted03.png) repeat-x 0 100%;
    background-size: 8px 3px
}

.p-article-side__list ul li a {
    padding: 15px 23px 15px 34px;
    line-height: 1.6;
    -webkit-transition: .2s;
    transition: .2s;
    width: 100%;
    display: block;
    position: relative;
    font-size: 1.5rem;
    font-weight: 500
}

.p-article-side__list ul li a:after {
    -webkit-transition: .2s;
    transition: .2s;
    display: block;
    content: "";
    background: #f1f7ef;
    background-size: 100% auto;
    width: 100%;
    height: calc(100% - 3px);
    position: absolute;
    z-index: -1;
    left: 0;
    top: 0;
    opacity: 0
}

.p-article-side__list ul li a:before {
    display: block;
    content: "";
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg class='c-icon' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 192 512'%3E%3Cpath fill='%23333' d='M166.9 264.5l-117.8 116c-4.7 4.7-12.3 4.7-17 0l-7.1-7.1c-4.7-4.7-4.7-12.3 0-17L127.3 256 25.1 155.6c-4.7-4.7-4.7-12.3 0-17l7.1-7.1c4.7-4.7 12.3-4.7 17 0l117.8 116c4.6 4.7 4.6 12.3-.1 17z'/%3E%3C/svg%3E");
    width: 12px;
    height: 18px;
    background-size: 12px 18px;
    position: absolute;
    top: 50%;
    margin-top: -9px;
    left: 16px;
    -webkit-transition: .3s;
    transition: .3s;
    z-index: 3
}

.p-article-side__list ul li a span {
    position: relative;
    z-index: 2;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    -webkit-transform: rotate(.03deg);
    transform: rotate(.03deg);
    font-weight: 500
}

.l-article .p-pager-wrap {
    margin: 35px auto 0
}

.p-pager-wrap {
    margin: 55px auto 0
}

.p-pager-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
}

.p-pager-list__arrow {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto
}

.p-pager-list__arrow.is-prev {
    margin-right: 10px
}

.p-pager-list__arrow.is-prev a {
    background: #013c85
}

.p-pager-list__arrow.is-next {
    margin-left: 10px
}

.p-pager-list__arrow.is-next a {
    background: #013c85
}

.p-pager-list__arrow .c-icon {
    fill: #fff
}

.p-pager-list__number {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap
}

.p-pager-list__number li {
    margin: 4px 8px
}

.p-pager-list__number li a {
    background: #fff
}

.p-pager-list__number li span.is-current {
    background: #57331d;
    color: #fff
}

.p-pager-list__number li a,
.p-pager-list__number li span {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    width: 50px;
    height: 50px;
    font-family: Lato, sans-serif;
    border-radius: 25px;
    font-size: 1.56rem;
    line-height: 1;
    -webkit-transition: .3s;
    transition: .3s;
    -webkit-box-shadow: inset 0 0 0 2px #57331d;
    box-shadow: inset 0 0 0 2px #57331d;
    color: #57331d;
    background: #fff
}

.p-pager-single {
    margin: 50px 0 0
}

.p-pager-single,
.p-pager-single__col {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center
}

.p-pager-single__col {
    width: 100%;
    text-align: center;
    max-width: 260px
}

.p-pager-single__col a,
.p-pager-single__col a .icon {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
}

.p-pager-single__col a .icon {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    width: 50px;
    height: 50px;
    font-family: Lato, sans-serif;
    border-radius: 50%;
    font-size: 1.56rem;
    line-height: 1;
    -webkit-transition: .3s;
    transition: .3s;
    background: #013c85
}

.p-pager-single__col a.c-pager-prev .icon {
    margin-right: 14px
}

.p-pager-single__col a.c-pager-next .icon {
    margin-left: 14px
}

.p-pager-single__col a .label {
    font-size: 1.6rem;
    letter-spacing: .06em;
    font-weight: 500;
    margin-bottom: 1px
}

.p-pager-single__col .c-icon {
    fill: #57331d;
    margin-right: 12px
}

.p-pager-single__col .c-icon-home {
    top: 3px
}

.c-nocontents {
    display: block;
    margin: 0 auto;
    max-width: 1150px;
    font-size: 1.6rem;
    padding: 10px 15px 45px;
    text-align: center
}

.c-nocontents__header {
    margin-bottom: 15px
}

.c-nocontents__heading {
    display: inline;
    font-size: 2.4rem
}

.u-marker {
    background: -webkit-gradient(linear, left top, left bottom, color-stop(65%, transparent), color-stop(0, #edeb6c));
    background: linear-gradient(transparent 65%, #edeb6c 0);
    display: inline
}

.p-medicalnav {
    width: 25%;
}

.p-medicalnav-list {
    padding-top: 15px;
    top: 100%;
    left: 0;
    position: absolute;
    width: 100%;
    min-height: 100%;
    visibility: hidden;
    opacity: 0;
    -webkit-transition: all .5s;
    transition: all .5s;
    -webkit-transform: translateY(10px);
    transform: translateY(10px)
}

.p-medicalnav-content {
    width: 100%;
    background-color: #fff;
    border-radius: 20px;
    padding: 32px 40px 35px;
    display: flex;
    justify-content: space-between;
}

.p-medicalnav li {
    margin: 0 0 25px;
}

.p-medicalnav li:last-child{
    margin: 0;
}

.p-medicalnav li a {
    display: flex;
    align-items: center;
    gap: 10px;
    transform: rotate(.03deg)
}

.p-medicalnav__icon {
    min-width: 50px;
    min-height: 50px;
    background: #f1f7ef;
    border-radius: 25px;
    transition: all .3s;
    position: relative
}

.p-medicalnav__icon .c-icon {
    fill: #74b263;
    -webkit-transition: all .3s;
    transition: all .3s;
    margin: auto;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    position: absolute;
    left: 50%;
    top: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%)
}

.p-medicalnav__label {
    font-size: 1.4rem;
    padding-left: 13px;
    line-height: 1.5;
    font-weight: 500;
    letter-spacing: .035em
}

.p-medicalnav02{
    display: flex;
    flex-wrap: wrap;
    gap: 25px 40px;
}

.p-medicalnav02 li{
    display: flex;
    flex-wrap: wrap;
}

.p-medicalnav02 li a{
    display: flex;
    flex-wrap: wrap;
    align-items: center;
}

.p-parts-bnr {
    max-width: 970px;
    height: 180px;
    margin: 90px auto 60px;
    width: 100%;
    position: relative;
    z-index: 3
}

.p-parts-bnr__wrap {
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    background: url(../../assets/img/parts/bnr-bg.png) no-repeat 50%;
    background-size: 100% 100%
}

.p-parts-bnr__staff,
.p-parts-bnr__wrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    height: 100%
}

.p-parts-bnr__staff {
    position: relative;
    width: 100%
}

.p-parts-bnr__staff__person {
    position: absolute;
    left: 25px;
    bottom: 0
}

.p-parts-bnr__staff__content {
    padding-left: 35.4%;
    padding-right: 35px
}

.p-parts-bnr__staff__label {
    color: #57331d;
    font-size: 1.54rem;
    margin-top: 5px;
    /* letter-spacing: .11em */
}

.p-parts-bnr__staff__label,
.p-parts-bnr__staff__ttl {
    font-weight: 700;
    font-family: GenJyuuGothic-P, sans-serif
}

.p-parts-bnr__staff__ttl {
    color: #ed796c;
    font-size: 4.5rem;
    /* letter-spacing: .13em; */
    margin: 8px 0 9px;
    line-height: 1
}

.p-parts-bnr__staff__txt {
    font-size: 1.42rem;
    font-weight: 500
}

.p-parts-bnr__occupation {
    text-align: center;
    position: relative;
    width: 36.08247%;
    height: 100%;
    background: #f4afa7;
    border-top-right-radius: 20px;
    border-bottom-right-radius: 20px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column
}

.p-parts-bnr__occupation__label {
    font-size: 1.7rem;
    font-weight: 700;
    font-family: GenJyuuGothic-P, sans-serif;
    color: #57331d;
    text-align: center;
    letter-spacing: .12em;
    position: relative;
    display: inline-block;
    padding: 0 27px 0 32px;
    margin-top: 21px
}

.p-parts-bnr__occupation__label:after,
.p-parts-bnr__occupation__label:before {
    position: absolute;
    top: 50%;
    display: block;
    width: 23px;
    height: 2px;
    margin-top: -1px;
    content: "";
    border-radius: 2px;
    background: currentColor
}

.p-parts-bnr__occupation__label:before {
    -webkit-transform: rotate(63deg);
    transform: rotate(63deg);
    left: 0
}

.p-parts-bnr__occupation__label:after {
    -webkit-transform: rotate(-63deg);
    transform: rotate(-63deg);
    right: 0
}

.p-parts-bnr__occupation__list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    max-width: 350px;
    padding: 14px 50px 10px 30px
}

.p-parts-bnr__occupation__list li {
    margin-right: 11px;
    margin-bottom: 11px;
    border-radius: 20px;
    overflow: hidden
}

.p-parts-bnr__occupation__list li span {
    background: #fff;
    color: #ed796c;
    font-size: 1.6rem;
    padding: 9px 15px 10px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    letter-spacing: .02em;
    line-height: 1;
    font-weight: 500;
    -webkit-transition: .3s ease-in-out;
    transition: .3s ease-in-out
}

.p-parts-bnr__occupation__icon {
    position: absolute;
    right: -16px;
    bottom: 5px;
    z-index: 1
}

.p-parts-bnr__link {
    display: block;
    width: 100%;
    height: 100%;
    -webkit-transition: .3s ease-in-out;
    transition: .3s ease-in-out
}

.p-parts-bnr__link:hover {
    opacity: .8
}

.p-parts-links {
    margin-top: 15px
}

.p-parts-links li:first-child {
    margin-bottom: 4px
}

.p-parts-links li a {
    color: #74b263;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    font-size: 1.5rem;
    font-weight: 500
}

.p-parts-links li a .c-icon {
    margin-right: 5px;
    width: 12px;
    height: 12px;
    margin-top: 2px
}

.p-mail-btn {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    height: 50px;
    border-radius: 10px;
    line-height: 1;
    -webkit-transition: .3s ease-in-out;
    transition: .3s ease-in-out
}

.p-mail-btn .c-icon {
    fill: #fff;
    margin-right: 5px;
    margin-left: 5px
}

.p-mail-btn .p-btn__inner {
    font-size: 1.5rem;
    letter-spacing: .06em;
    font-weight: 500
}

.p-parts-outside a {
    color: #ed796c;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    font-weight: 500
}

.p-parts-outside .c-icon {
    fill: #ed796c;
    margin-right: 6px;
    margin-top: 1px
}

.p-privacy {
    padding: 30px 0 50px
}

.p-privacy__inner {
    max-width: 100%;
    width: 770px;
    margin: 0 auto
}

.p-privacy-block {
    margin-top: 48px
}

.p-privacy-block:first-of-type {
    margin-top: 0
}

.p-privacy-block h2 {
    font-family: GenJyuuGothic-P, sans-serif;
    font-size: 2.1rem;
    line-height: 1.8;
    color: #74b263;
    letter-spacing: .05em
}

.p-privacy-block p {
    margin-top: 4px;
    letter-spacing: .05em;
    -webkit-font-feature-settings: "palt";
    font-feature-settings: "palt"
}

.p-privacy-block ul {
    margin-top: 9px
}

.p-privacy-block ul li {
    letter-spacing: .05em;
    -webkit-font-feature-settings: "palt";
    font-feature-settings: "palt";
    padding-left: 20px;
    position: relative
}

.p-privacy-block ul li:before {
    content: "●";
    display: block;
    font-size: 1.2rem;
    line-height: 1;
    color: #57331d;
    position: absolute;
    top: 9px;
    left: 0
}

.p-rsv {
    padding-bottom: 60px
}

.p-rsv__inner {
    width: 970px
}

.p-rsv .p-rsv-content>*,
.p-rsv__inner {
    max-width: 100%;
    margin-right: auto;
    margin-left: auto
}

.p-rsv .p-rsv-content>* {
    width: 890px
}

.p-rsv .p-rsv-content__ttl {
    font-size: 3.6rem;
    font-family: GenJyuuGothic-P, sans-serif;
    line-height: 1.6;
    font-weight: 700;
    color: #74b263;
    text-align: center;
    margin-top: 40px
}

.p-rsv .p-rsv-content__list>li {
    margin-bottom: 10px;
    padding-left: 1.2em;
    text-indent: -1.2em
}

.p-rsv .p-rsv-content__list>li .ten {
    color: #57331d;
    font-size: 1rem;
    margin-right: 4px;
    position: relative;
    bottom: 2px
}

.p-rsv .p-rsv-content__list>li .red {
    color: #ed796c
}

.p-rsv .p-rsv-content__list>li .link {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    font-size: 1.4rem;
    font-weight: 500;
    letter-spacing: .07em;
    text-indent: 0
}

.p-rsv .p-rsv-content__list>li .link .c-icon {
    margin-right: 5px;
    width: 12px;
    height: 12px;
    margin-top: 2px
}

.p-rsv .p-rsv-content__list>li .link p {
    font-size: 1.6rem;
    color: #74b263
}

.p-rsv .p-rsv-content__list>li ul {
    text-indent: 0
}

.p-rsv .p-rsv-content__list>li ul li {
    padding-left: 10px;
    position: relative
}

.p-rsv .p-rsv-content__list>li ul li:before {
    content: "・";
    display: block;
    position: absolute;
    top: 0;
    left: -2px
}

.p-rsv-contact {
    margin-top: 30px
}

.p-rsv-contact__ttl {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center
}

.p-rsv-contact__ttl p {
    font-size: 2.4rem;
    font-family: GenJyuuGothic-P, sans-serif;
    line-height: 1.6;
    font-weight: 700;
    letter-spacing: .1em;
    color: #74b263;
    padding: 0 38px;
    position: relative
}

.p-rsv-contact__ttl p:after,
.p-rsv-contact__ttl p:before {
    position: absolute;
    top: 50%;
    display: block;
    width: 24px;
    height: 3px;
    margin-top: -1px;
    content: "";
    border-radius: 1.5px;
    background: currentColor
}

.p-rsv-contact__ttl p:before {
    -webkit-transform: rotate(60deg);
    transform: rotate(60deg);
    left: 0
}

.p-rsv-contact__ttl p:after {
    -webkit-transform: rotate(-60deg);
    transform: rotate(-60deg);
    right: 0
}

.p-rsv-contact__wrap {
    margin-top: 10px;
    padding-top: 40px;
    position: relative
}

.p-rsv-contact__wrap:before {
    content: "";
    display: block;
    width: 35px;
    height: 44px;
    background: url(../../assets/img/svg/ico-girl.svg) no-repeat bottom;
    background-size: 35px 44px;
    position: absolute;
    top: 0;
    left: 50%;
    -webkit-transform: translate(-50%);
    transform: translate(-50%);
    z-index: 5
}

.p-rsv-contact__inner {
    border: 2px solid #74b263;
    border-radius: 10px;
    padding: 31px 20px 30px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center
}

.p-rsv-contact__inner>div {
    max-width: 100%;
    width: 350px;
    padding: 0 25px
}

.p-rsv-contact__tel .label {
    font-size: 1.8rem;
    border: 1px solid #57331d;
    border-radius: 15px
}

.p-rsv-contact__tel .label,
.p-rsv-contact__tel .link {
    font-family: GenJyuuGothic-P, sans-serif;
    line-height: 1.6;
    color: #57331d;
    font-weight: 700;
    text-align: center
}

.p-rsv-contact__tel .link {
    display: block;
    font-size: 3.6rem
}

.p-rsv-contact__tel .link span {
    font-size: 2.7rem
}

.p-rsv-contact__tel .small {
    font-size: 1.3rem;
    line-height: 1.6;
    text-align: center;
    margin-top: -8px
}

.p-rsv-contact__line .btn {
    width: 100%;
    padding: 21px 15px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    background: #74b263;
    border-radius: 40px;
    position: relative
}

.p-rsv-contact__line .btn:before {
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0;
    -webkit-transition: opacity .3s ease-in-out;
    transition: opacity .3s ease-in-out;
    background: hsla(0, 0%, 100%, .2)
}

.p-rsv-contact__line .btn:hover:before {
    opacity: 1
}

.p-rsv-contact__line .btn p {
    font-family: GenJyuuGothic-P, sans-serif;
    font-size: 2.1rem;
    line-height: 1.6;
    font-weight: 700;
    color: #fff;
    letter-spacing: .05em;
    margin-left: 18px
}

.p-rsv-flow {
    width: 100%!important;
    margin-top: 80px;
    background: #f1f7ef;
    border-radius: 20px
}

.p-rsv-flow__inner {
    padding: 22px 40px 60px
}

.p-rsv-flow .p-line__list {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    max-width: 100%;
    width: 860px;
    margin-right: auto;
    margin-left: auto
}

.p-rsv-flow .p-line__item {
    width: 30.3%;
    margin-bottom: 40px
}

.p-rsv-flow .p-line__item:not(:first-child):before {
    content: none
}

.p-rsv-flow .p-line__item:after {
    display: block;
    content: "";
    width: 18px;
    height: 32px;
    position: absolute;
    right: -15.5%;
    top: 50%;
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg aria-hidden='true' data-prefix='far' data-icon='chevron-right' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 256 512' class='svg-inline--fa fa-chevron-right fa-w-8 fa-lg'%3E%3Cpath fill='currentColor' d='M24.707 38.101L4.908 57.899c-4.686 4.686-4.686 12.284 0 16.971L185.607 256 4.908 437.13c-4.686 4.686-4.686 12.284 0 16.971L24.707 473.9c4.686 4.686 12.284 4.686 16.971 0l209.414-209.414c4.686-4.686 4.686-12.284 0-16.971L41.678 38.101c-4.687-4.687-12.285-4.687-16.971 0z' color='57331d'/%3E%3C/svg%3E")
}

.p-rsv-flow .p-line__item:last-of-type:after {
    content: none
}

.p-rsv-flow .p-line__ttl .ttl {
    white-space: nowrap
}

.p-rsv-flow .p-line__txt {
    -webkit-font-feature-settings: "palt";
    font-feature-settings: "palt";
    text-align: justify
}

.p-rsv-flow .link {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    font-size: 1.4rem;
    color: #74b263
}

.p-rsv-flow .link .c-icon {
    margin-right: 5px;
    width: 12px;
    height: 12px;
    margin-top: 2px
}

.p-rsv-flow__textBox {
    max-width: 100%;
    width: 860px;
    margin-right: auto;
    margin-left: auto;
    padding: 30px;
    background: #fff;
    border-radius: 20px;
    -webkit-box-shadow: 0 3px 5px 0 rgba(51, 51, 51, .1);
    box-shadow: 0 3px 5px 0 rgba(51, 51, 51, .1)
}

.p-rsv-flow__textBox h3 {
    font-family: GenJyuuGothic-P, sans-serif;
    font-size: 3rem;
    line-height: 1.8;
    color: #74b263
}

.p-rsv-flow__textBox p {
    margin-top: 5px
}

.p-rsv-flow__textBox p .red {
    color: #ed796c
}

.tab-wrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin: 20px 0
}

.tab-label {
    color: #74b263;
    background: #f1f7ef;
    font-weight: 700;
    white-space: nowrap;
    text-align: center;
    padding: 12px .5em;
    -webkit-box-ordinal-group: 0;
    -ms-flex-order: -1;
    order: -1;
    position: relative;
    z-index: 1;
    cursor: pointer;
    border-radius: 10px 10px 0 0;
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1
}

.tab-content {
    width: 100%;
    height: 0;
    overflow: hidden;
    opacity: 0
}

.tab-content .p-parts--ttl {
    padding: 28px 0 22px 10px;
    margin-bottom: 0
}

.tab-switch {
    display: none
}

.tab-switch:checked+.tab-label {
    background: #74b263;
    color: #fff
}

.tab-switch:checked+.tab-label+.tab-content {
    height: auto;
    overflow: auto;
    opacity: 1;
    -webkit-transition: opacity .5s;
    transition: opacity .5s
}

@media screen and (max-width:767px) {
    body {
        font-size: 1.5rem
    }
    .h-sp,
    .v-pc {
        display: none!important
    }
    .p-btn-h46,
    .p-btn-h50 {
        height: 56px
    }
    .p-btn-h55 {
        height: 52px
    }
    .p-btn-h60 {
        height: 56px
    }
    .p-btn-w210 {
        max-width: 260px
    }
    .p-btn-w300,
    .p-btn-w310 {
        max-width: 270px
    }
    .p-btn-w350 {
        max-width: 350px
    }
    .p-btn-f17,
    table[class*=c-form__table] textarea {
        font-size: 1.6rem
    }
    table[class*=c-form__table] tbody tr th.u-pt45 {
        padding-top: 20px!important
    }
    .p-contact-sec {
        padding: 0 0 65px
    }
    .p-contact {
        padding: 30px 0 60px
    }
    .p-contact .p-parts__head--bottom {
        margin: 28px 0 25px
    }
    .p-contact .p-parts__text {
        font-size: 1.5rem
    }
    .c-form {
        padding: 10px 5px 50px
    }
    .c-form .c-text-input {
        font-size: 1.6rem
    }
    .c-form .radio {
        margin-bottom: 10px
    }
    .c-form .p-parts__check {
        margin: 20px auto
    }
    .c-form .p-parts__check label {
        font-size: 1.5rem
    }
    .c-form .wpcf7-list-item [type=checkbox] {
        margin-right: .3rem
    }
    label input[type=checkbox]+span {
        font-size: 1.4rem;
        line-height: 1.6
    }
    .privacy_txt+.p-parts__check .check input[type=checkbox]+span:before {
        top: 7px
    }
    .privacy_txt {
        padding: 15px 5px 0
    }
    .p-parts__buttn {
        margin: 25px auto 0;
        height: 64px
    }
    .p-parts__buttn--inner:before {
        width: 10px;
        height: 14px;
        background-size: 10px 14px;
        left: 26%;
        margin-top: -7px
    }
    .p-parts__buttn--inner input {
        font-size: 1.8rem
    }
    .p-parts__buttn--inner.is-desabled:before {
        width: 10px;
        height: 14px;
        background-size: 10px 14px
    }
    .c-form__tableA tr {
        margin-bottom: 20px
    }
    .c-form__tableA tr td,
    .c-form__tableA tr th {
        display: block;
        width: 100%
    }
    .c-form__tableA tr:first-child th {
        padding-top: 20px
    }
    .c-form__tableA tr th {
        padding: 20px 15px 10px;
        margin: 0 auto;
        width: 100%
    }
    .c-form__tableA tr td {
        padding: 5px 15px;
        margin: 0 auto;
        width: 100%
    }
    .p-heading__type01.-type01-sm .p-heading--en {
        font-size: 2.9rem
    }
    .p-heading__type01.-type01-sm .p-heading--en span {
        font-size: 2.4rem
    }
    .p-heading__type01.-type01-sm .p-heading--jp {
        margin-top: 10px
    }
    .p-heading__type01 .p-heading--en {
        letter-spacing: .01em
    }
    .p-heading__type01 .p-heading--jp {
        font-size: 1.4rem;
        margin-top: 9px
    }
    .p-parts--heading {
        margin-bottom: 25px
    }
    .p-parts--ttl {
        margin-bottom: 0
    }
    .p-parts--ttl .en {
        font-size: 1.5rem;
        margin-top: 3px
    }
    .p-parts--ttl .en02,
    .p-parts--ttl .en03 {
        margin-bottom: 6px
    }
    .p-parts--ttl .jp {
        letter-spacing: .04em;
        line-height: 1.2
    }
    .l-drawer__contact__tel a {
        font-size: 3rem;
        letter-spacing: .05rem
    }
    .l-drawer__contact__tel a span {
        font-size: 2.2rem
    }
    .l-nav-fixed--btn {
        height: 50px
    }
    .l-footer__content {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column
    }
    .l-footer__bottom {
        height: 60px
    }
    .l-footer .l-nav {
        display: none
    }
    .l-footer-logo {
        max-width: 350px
    }
    .l-footer-contact .p-block-contact {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column
    }
    .l-footer-contact .p-block-contact__btn {
        max-width: 280px
    }
    .l-footer-contact .p-block-contact__tel {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        margin-top: 24px
    }
    .l-footer-contact .p-block-contact__tel .u-heavy {
        font-size: 3rem;
        letter-spacing: .05rem
    }
    .l-footer-contact .p-block-contact__tel .u-heavy span {
        font-size: 2.2rem
    }
    .l-footer-contact .p-block-contact__tel .p-parts-outside {
        margin-top: 8px
    }
    .l-footer-contact .p-block-contact__reception p {
        margin-top: 6px;
        font-size: 1.4rem
    }
    .l-footer-map {
        border-radius: 12px;
        border: 3px solid #fff
    }
    .l-footer-wave {
        margin: 0 auto -20px;
        height: 20px
    }
    .l-footer-wave:before {
        height: 20px;
        background-size: 100% 20px
    }
    .p-parts-pagetop {
        left: 50%;
        transform: translate(-50%);
        -webkit-transform: translate(-50%);
        -ms-transform: translate(-50%);
        bottom: 56px
    }
    .p-parts-pagetop__link .ico-arrow {
        width: 45px
    }
    .c-m0--over-sm {
        margin: 0!important
    }
    .c-mt0--over-sm {
        margin-top: 0!important
    }
    .c-mr0--over-sm {
        margin-right: 0!important
    }
    .c-mb0--over-sm {
        margin-bottom: 0!important
    }
    .c-ml0--over-sm {
        margin-left: 0!important
    }
    .c-p0--over-sm {
        padding: 0!important
    }
    .c-pt0--over-sm {
        padding-top: 0!important
    }
    .c-pr0--over-sm {
        padding-right: 0!important
    }
    .c-pb0--over-sm {
        padding-bottom: 0!important
    }
    .c-pl0--over-sm {
        padding-left: 0!important
    }
    .c-m1--over-sm {
        margin: 1px!important
    }
    .c-mt1--over-sm {
        margin-top: 1px!important
    }
    .c-mr1--over-sm {
        margin-right: 1px!important
    }
    .c-mb1--over-sm {
        margin-bottom: 1px!important
    }
    .c-ml1--over-sm {
        margin-left: 1px!important
    }
    .c-p1--over-sm {
        padding: 1px!important
    }
    .c-pt1--over-sm {
        padding-top: 1px!important
    }
    .c-pr1--over-sm {
        padding-right: 1px!important
    }
    .c-pb1--over-sm {
        padding-bottom: 1px!important
    }
    .c-pl1--over-sm {
        padding-left: 1px!important
    }
    .c-m2--over-sm {
        margin: 2px!important
    }
    .c-mt2--over-sm {
        margin-top: 2px!important
    }
    .c-mr2--over-sm {
        margin-right: 2px!important
    }
    .c-mb2--over-sm {
        margin-bottom: 2px!important
    }
    .c-ml2--over-sm {
        margin-left: 2px!important
    }
    .c-p2--over-sm {
        padding: 2px!important
    }
    .c-pt2--over-sm {
        padding-top: 2px!important
    }
    .c-pr2--over-sm {
        padding-right: 2px!important
    }
    .c-pb2--over-sm {
        padding-bottom: 2px!important
    }
    .c-pl2--over-sm {
        padding-left: 2px!important
    }
    .c-m3--over-sm {
        margin: 3px!important
    }
    .c-mt3--over-sm {
        margin-top: 3px!important
    }
    .c-mr3--over-sm {
        margin-right: 3px!important
    }
    .c-mb3--over-sm {
        margin-bottom: 3px!important
    }
    .c-ml3--over-sm {
        margin-left: 3px!important
    }
    .c-p3--over-sm {
        padding: 3px!important
    }
    .c-pt3--over-sm {
        padding-top: 3px!important
    }
    .c-pr3--over-sm {
        padding-right: 3px!important
    }
    .c-pb3--over-sm {
        padding-bottom: 3px!important
    }
    .c-pl3--over-sm {
        padding-left: 3px!important
    }
    .c-m4--over-sm {
        margin: 4px!important
    }
    .c-mt4--over-sm {
        margin-top: 4px!important
    }
    .c-mr4--over-sm {
        margin-right: 4px!important
    }
    .c-mb4--over-sm {
        margin-bottom: 4px!important
    }
    .c-ml4--over-sm {
        margin-left: 4px!important
    }
    .c-p4--over-sm {
        padding: 4px!important
    }
    .c-pt4--over-sm {
        padding-top: 4px!important
    }
    .c-pr4--over-sm {
        padding-right: 4px!important
    }
    .c-pb4--over-sm {
        padding-bottom: 4px!important
    }
    .c-pl4--over-sm {
        padding-left: 4px!important
    }
    .c-m5--over-sm {
        margin: 5px!important
    }
    .c-mt5--over-sm {
        margin-top: 5px!important
    }
    .c-mr5--over-sm {
        margin-right: 5px!important
    }
    .c-mb5--over-sm {
        margin-bottom: 5px!important
    }
    .c-ml5--over-sm {
        margin-left: 5px!important
    }
    .c-p5--over-sm {
        padding: 5px!important
    }
    .c-pt5--over-sm {
        padding-top: 5px!important
    }
    .c-pr5--over-sm {
        padding-right: 5px!important
    }
    .c-pb5--over-sm {
        padding-bottom: 5px!important
    }
    .c-pl5--over-sm {
        padding-left: 5px!important
    }
    .c-m6--over-sm {
        margin: 6px!important
    }
    .c-mt6--over-sm {
        margin-top: 6px!important
    }
    .c-mr6--over-sm {
        margin-right: 6px!important
    }
    .c-mb6--over-sm {
        margin-bottom: 6px!important
    }
    .c-ml6--over-sm {
        margin-left: 6px!important
    }
    .c-p6--over-sm {
        padding: 6px!important
    }
    .c-pt6--over-sm {
        padding-top: 6px!important
    }
    .c-pr6--over-sm {
        padding-right: 6px!important
    }
    .c-pb6--over-sm {
        padding-bottom: 6px!important
    }
    .c-pl6--over-sm {
        padding-left: 6px!important
    }
    .c-m7--over-sm {
        margin: 7px!important
    }
    .c-mt7--over-sm {
        margin-top: 7px!important
    }
    .c-mr7--over-sm {
        margin-right: 7px!important
    }
    .c-mb7--over-sm {
        margin-bottom: 7px!important
    }
    .c-ml7--over-sm {
        margin-left: 7px!important
    }
    .c-p7--over-sm {
        padding: 7px!important
    }
    .c-pt7--over-sm {
        padding-top: 7px!important
    }
    .c-pr7--over-sm {
        padding-right: 7px!important
    }
    .c-pb7--over-sm {
        padding-bottom: 7px!important
    }
    .c-pl7--over-sm {
        padding-left: 7px!important
    }
    .c-m8--over-sm {
        margin: 8px!important
    }
    .c-mt8--over-sm {
        margin-top: 8px!important
    }
    .c-mr8--over-sm {
        margin-right: 8px!important
    }
    .c-mb8--over-sm {
        margin-bottom: 8px!important
    }
    .c-ml8--over-sm {
        margin-left: 8px!important
    }
    .c-p8--over-sm {
        padding: 8px!important
    }
    .c-pt8--over-sm {
        padding-top: 8px!important
    }
    .c-pr8--over-sm {
        padding-right: 8px!important
    }
    .c-pb8--over-sm {
        padding-bottom: 8px!important
    }
    .c-pl8--over-sm {
        padding-left: 8px!important
    }
    .c-m9--over-sm {
        margin: 9px!important
    }
    .c-mt9--over-sm {
        margin-top: 9px!important
    }
    .c-mr9--over-sm {
        margin-right: 9px!important
    }
    .c-mb9--over-sm {
        margin-bottom: 9px!important
    }
    .c-ml9--over-sm {
        margin-left: 9px!important
    }
    .c-p9--over-sm {
        padding: 9px!important
    }
    .c-pt9--over-sm {
        padding-top: 9px!important
    }
    .c-pr9--over-sm {
        padding-right: 9px!important
    }
    .c-pb9--over-sm {
        padding-bottom: 9px!important
    }
    .c-pl9--over-sm {
        padding-left: 9px!important
    }
    .c-m10--over-sm {
        margin: 10px!important
    }
    .c-mt10--over-sm {
        margin-top: 10px!important
    }
    .c-mr10--over-sm {
        margin-right: 10px!important
    }
    .c-mb10--over-sm {
        margin-bottom: 10px!important
    }
    .c-ml10--over-sm {
        margin-left: 10px!important
    }
    .c-p10--over-sm {
        padding: 10px!important
    }
    .c-pt10--over-sm {
        padding-top: 10px!important
    }
    .c-pr10--over-sm {
        padding-right: 10px!important
    }
    .c-pb10--over-sm {
        padding-bottom: 10px!important
    }
    .c-pl10--over-sm {
        padding-left: 10px!important
    }
    .c-m15--over-sm {
        margin: 15px!important
    }
    .c-mt15--over-sm {
        margin-top: 15px!important
    }
    .c-mr15--over-sm {
        margin-right: 15px!important
    }
    .c-mb15--over-sm {
        margin-bottom: 15px!important
    }
    .c-ml15--over-sm {
        margin-left: 15px!important
    }
    .c-p15--over-sm {
        padding: 15px!important
    }
    .c-pt15--over-sm {
        padding-top: 15px!important
    }
    .c-pr15--over-sm {
        padding-right: 15px!important
    }
    .c-pb15--over-sm {
        padding-bottom: 15px!important
    }
    .c-pl15--over-sm {
        padding-left: 15px!important
    }
    .c-m20--over-sm {
        margin: 20px!important
    }
    .c-mt20--over-sm {
        margin-top: 20px!important
    }
    .c-mr20--over-sm {
        margin-right: 20px!important
    }
    .c-mb20--over-sm {
        margin-bottom: 20px!important
    }
    .c-ml20--over-sm {
        margin-left: 20px!important
    }
    .c-p20--over-sm {
        padding: 20px!important
    }
    .c-pt20--over-sm {
        padding-top: 20px!important
    }
    .c-pr20--over-sm {
        padding-right: 20px!important
    }
    .c-pb20--over-sm {
        padding-bottom: 20px!important
    }
    .c-pl20--over-sm {
        padding-left: 20px!important
    }
    .c-m25--over-sm {
        margin: 25px!important
    }
    .c-mt25--over-sm {
        margin-top: 25px!important
    }
    .c-mr25--over-sm {
        margin-right: 25px!important
    }
    .c-mb25--over-sm {
        margin-bottom: 25px!important
    }
    .c-ml25--over-sm {
        margin-left: 25px!important
    }
    .c-p25--over-sm {
        padding: 25px!important
    }
    .c-pt25--over-sm {
        padding-top: 25px!important
    }
    .c-pr25--over-sm {
        padding-right: 25px!important
    }
    .c-pb25--over-sm {
        padding-bottom: 25px!important
    }
    .c-pl25--over-sm {
        padding-left: 25px!important
    }
    .c-m30--over-sm {
        margin: 30px!important
    }
    .c-mt30--over-sm {
        margin-top: 30px!important
    }
    .c-mr30--over-sm {
        margin-right: 30px!important
    }
    .c-mb30--over-sm {
        margin-bottom: 30px!important
    }
    .c-ml30--over-sm {
        margin-left: 30px!important
    }
    .c-p30--over-sm {
        padding: 30px!important
    }
    .c-pt30--over-sm {
        padding-top: 30px!important
    }
    .c-pr30--over-sm {
        padding-right: 30px!important
    }
    .c-pb30--over-sm {
        padding-bottom: 30px!important
    }
    .c-pl30--over-sm {
        padding-left: 30px!important
    }
    .c-m35--over-sm {
        margin: 35px!important
    }
    .c-mt35--over-sm {
        margin-top: 35px!important
    }
    .c-mr35--over-sm {
        margin-right: 35px!important
    }
    .c-mb35--over-sm {
        margin-bottom: 35px!important
    }
    .c-ml35--over-sm {
        margin-left: 35px!important
    }
    .c-p35--over-sm {
        padding: 35px!important
    }
    .c-pt35--over-sm {
        padding-top: 35px!important
    }
    .c-pr35--over-sm {
        padding-right: 35px!important
    }
    .c-pb35--over-sm {
        padding-bottom: 35px!important
    }
    .c-pl35--over-sm {
        padding-left: 35px!important
    }
    .c-m40--over-sm {
        margin: 40px!important
    }
    .c-mt40--over-sm {
        margin-top: 40px!important
    }
    .c-mr40--over-sm {
        margin-right: 40px!important
    }
    .c-mb40--over-sm {
        margin-bottom: 40px!important
    }
    .c-ml40--over-sm {
        margin-left: 40px!important
    }
    .c-p40--over-sm {
        padding: 40px!important
    }
    .c-pt40--over-sm {
        padding-top: 40px!important
    }
    .c-pr40--over-sm {
        padding-right: 40px!important
    }
    .c-pb40--over-sm {
        padding-bottom: 40px!important
    }
    .c-pl40--over-sm {
        padding-left: 40px!important
    }
    .c-m45--over-sm {
        margin: 45px!important
    }
    .c-mt45--over-sm {
        margin-top: 45px!important
    }
    .c-mr45--over-sm {
        margin-right: 45px!important
    }
    .c-mb45--over-sm {
        margin-bottom: 45px!important
    }
    .c-ml45--over-sm {
        margin-left: 45px!important
    }
    .c-p45--over-sm {
        padding: 45px!important
    }
    .c-pt45--over-sm {
        padding-top: 45px!important
    }
    .c-pr45--over-sm {
        padding-right: 45px!important
    }
    .c-pb45--over-sm {
        padding-bottom: 45px!important
    }
    .c-pl45--over-sm {
        padding-left: 45px!important
    }
    .c-m50--over-sm {
        margin: 50px!important
    }
    .c-mt50--over-sm {
        margin-top: 50px!important
    }
    .c-mr50--over-sm {
        margin-right: 50px!important
    }
    .c-mb50--over-sm {
        margin-bottom: 50px!important
    }
    .c-ml50--over-sm {
        margin-left: 50px!important
    }
    .c-p50--over-sm {
        padding: 50px!important
    }
    .c-pt50--over-sm {
        padding-top: 50px!important
    }
    .c-pr50--over-sm {
        padding-right: 50px!important
    }
    .c-pb50--over-sm {
        padding-bottom: 50px!important
    }
    .c-pl50--over-sm {
        padding-left: 50px!important
    }
    .c-m55--over-sm {
        margin: 55px!important
    }
    .c-mt55--over-sm {
        margin-top: 55px!important
    }
    .c-mr55--over-sm {
        margin-right: 55px!important
    }
    .c-mb55--over-sm {
        margin-bottom: 55px!important
    }
    .c-ml55--over-sm {
        margin-left: 55px!important
    }
    .c-p55--over-sm {
        padding: 55px!important
    }
    .c-pt55--over-sm {
        padding-top: 55px!important
    }
    .c-pr55--over-sm {
        padding-right: 55px!important
    }
    .c-pb55--over-sm {
        padding-bottom: 55px!important
    }
    .c-pl55--over-sm {
        padding-left: 55px!important
    }
    .c-m60--over-sm {
        margin: 60px!important
    }
    .c-mt60--over-sm {
        margin-top: 60px!important
    }
    .c-mr60--over-sm {
        margin-right: 60px!important
    }
    .c-mb60--over-sm {
        margin-bottom: 60px!important
    }
    .c-ml60--over-sm {
        margin-left: 60px!important
    }
    .c-p60--over-sm {
        padding: 60px!important
    }
    .c-pt60--over-sm {
        padding-top: 60px!important
    }
    .c-pr60--over-sm {
        padding-right: 60px!important
    }
    .c-pb60--over-sm {
        padding-bottom: 60px!important
    }
    .c-pl60--over-sm {
        padding-left: 60px!important
    }
    .c-m65--over-sm {
        margin: 65px!important
    }
    .c-mt65--over-sm {
        margin-top: 65px!important
    }
    .c-mr65--over-sm {
        margin-right: 65px!important
    }
    .c-mb65--over-sm {
        margin-bottom: 65px!important
    }
    .c-ml65--over-sm {
        margin-left: 65px!important
    }
    .c-p65--over-sm {
        padding: 65px!important
    }
    .c-pt65--over-sm {
        padding-top: 65px!important
    }
    .c-pr65--over-sm {
        padding-right: 65px!important
    }
    .c-pb65--over-sm {
        padding-bottom: 65px!important
    }
    .c-pl65--over-sm {
        padding-left: 65px!important
    }
    .c-m70--over-sm {
        margin: 70px!important
    }
    .c-mt70--over-sm {
        margin-top: 70px!important
    }
    .c-mr70--over-sm {
        margin-right: 70px!important
    }
    .c-mb70--over-sm {
        margin-bottom: 70px!important
    }
    .c-ml70--over-sm {
        margin-left: 70px!important
    }
    .c-p70--over-sm {
        padding: 70px!important
    }
    .c-pt70--over-sm {
        padding-top: 70px!important
    }
    .c-pr70--over-sm {
        padding-right: 70px!important
    }
    .c-pb70--over-sm {
        padding-bottom: 70px!important
    }
    .c-pl70--over-sm {
        padding-left: 70px!important
    }
    .c-m75--over-sm {
        margin: 75px!important
    }
    .c-mt75--over-sm {
        margin-top: 75px!important
    }
    .c-mr75--over-sm {
        margin-right: 75px!important
    }
    .c-mb75--over-sm {
        margin-bottom: 75px!important
    }
    .c-ml75--over-sm {
        margin-left: 75px!important
    }
    .c-p75--over-sm {
        padding: 75px!important
    }
    .c-pt75--over-sm {
        padding-top: 75px!important
    }
    .c-pr75--over-sm {
        padding-right: 75px!important
    }
    .c-pb75--over-sm {
        padding-bottom: 75px!important
    }
    .c-pl75--over-sm {
        padding-left: 75px!important
    }
    .c-m80--over-sm {
        margin: 80px!important
    }
    .c-mt80--over-sm {
        margin-top: 80px!important
    }
    .c-mr80--over-sm {
        margin-right: 80px!important
    }
    .c-mb80--over-sm {
        margin-bottom: 80px!important
    }
    .c-ml80--over-sm {
        margin-left: 80px!important
    }
    .c-p80--over-sm {
        padding: 80px!important
    }
    .c-pt80--over-sm {
        padding-top: 80px!important
    }
    .c-pr80--over-sm {
        padding-right: 80px!important
    }
    .c-pb80--over-sm {
        padding-bottom: 80px!important
    }
    .c-pl80--over-sm {
        padding-left: 80px!important
    }
    .c-m85--over-sm {
        margin: 85px!important
    }
    .c-mt85--over-sm {
        margin-top: 85px!important
    }
    .c-mr85--over-sm {
        margin-right: 85px!important
    }
    .c-mb85--over-sm {
        margin-bottom: 85px!important
    }
    .c-ml85--over-sm {
        margin-left: 85px!important
    }
    .c-p85--over-sm {
        padding: 85px!important
    }
    .c-pt85--over-sm {
        padding-top: 85px!important
    }
    .c-pr85--over-sm {
        padding-right: 85px!important
    }
    .c-pb85--over-sm {
        padding-bottom: 85px!important
    }
    .c-pl85--over-sm {
        padding-left: 85px!important
    }
    .c-m90--over-sm {
        margin: 90px!important
    }
    .c-mt90--over-sm {
        margin-top: 90px!important
    }
    .c-mr90--over-sm {
        margin-right: 90px!important
    }
    .c-mb90--over-sm {
        margin-bottom: 90px!important
    }
    .c-ml90--over-sm {
        margin-left: 90px!important
    }
    .c-p90--over-sm {
        padding: 90px!important
    }
    .c-pt90--over-sm {
        padding-top: 90px!important
    }
    .c-pr90--over-sm {
        padding-right: 90px!important
    }
    .c-pb90--over-sm {
        padding-bottom: 90px!important
    }
    .c-pl90--over-sm {
        padding-left: 90px!important
    }
    .c-m95--over-sm {
        margin: 95px!important
    }
    .c-mt95--over-sm {
        margin-top: 95px!important
    }
    .c-mr95--over-sm {
        margin-right: 95px!important
    }
    .c-mb95--over-sm {
        margin-bottom: 95px!important
    }
    .c-ml95--over-sm {
        margin-left: 95px!important
    }
    .c-p95--over-sm {
        padding: 95px!important
    }
    .c-pt95--over-sm {
        padding-top: 95px!important
    }
    .c-pr95--over-sm {
        padding-right: 95px!important
    }
    .c-pb95--over-sm {
        padding-bottom: 95px!important
    }
    .c-pl95--over-sm {
        padding-left: 95px!important
    }
    .c-m100--over-sm {
        margin: 100px!important
    }
    .c-mt100--over-sm {
        margin-top: 100px!important
    }
    .c-mr100--over-sm {
        margin-right: 100px!important
    }
    .c-mb100--over-sm {
        margin-bottom: 100px!important
    }
    .c-ml100--over-sm {
        margin-left: 100px!important
    }
    .c-p100--over-sm {
        padding: 100px!important
    }
    .c-pt100--over-sm {
        padding-top: 100px!important
    }
    .c-pr100--over-sm {
        padding-right: 100px!important
    }
    .c-pb100--over-sm {
        padding-bottom: 100px!important
    }
    .c-pl100--over-sm {
        padding-left: 100px!important
    }
    .hero--top {
        min-height: 500px
    }
    .hero--img .slide-copy {
        width: 91%;
        left: 9%;
        text-shadow: #fff 2px 2px 3px, #fff -2px 2px 3px, #fff 2px -2px 3px, #fff -2px -2px 3px
    }
    .slick-dots {
        left: auto;
        right: 15px
    }
    .slick-dots li button {
        display: none
    }
    .slick-dots li button:before {
        width: 6px;
        height: 6px
    }
    [data-aos] {
        -webkit-transition-duration: .4s;
        transition-duration: .4s
    }
    .p-about__lead {
        font-size: 2.5rem;
        letter-spacing: .04em
    }
    .p-about__principle__img .js-objectfit:before {
        padding-top: 59.52381%
    }
    .p-about__principle {
        padding: 10px 0 65px
    }
    .p-about__principle h2 {
        font-size: 1.7rem
    }
    .p-about__principle__inner {
        -webkit-box-orient: vertical;
        -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
        flex-direction: column-reverse
    }
    .p-about__principle__content__inner {
        max-width: 470px;
        margin: 0 auto;
        padding: 30px 15px 0
    }
    .p-about__principle__img {
        width: 100%
    }
    .p-about__principle__txt {
        margin: 12px 0 16px;
        line-height: 1.9
    }
    .p-about__greeting h4 {
        padding: 7px 10px;
        font-size: 1.7rem
    }
    .p-about__greeting .c-flex {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center
    }
    .p-about__greeting .c-flex .c-col-6 {
        width: 100%;
        max-width: 550px
    }
    .p-about__greeting__lead {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        margin-top: 40px;
        margin-bottom: 50px
    }
    .p-about__greeting__photo img {
        border-radius: 12px
    }
    .p-about__greeting__photo {
        width: 90%;
        max-width: 310px;
        margin-bottom: 20px
    }
    .p-about__greeting__photo.u-ml45 {
        margin-left: 0;
        margin-bottom: 40px
    }
    .p-about__greeting__photo.u-mr45 {
        margin-right: 0
    }
    .p-about__greeting__photo__name {
        bottom: 17px
    }
    .p-about__greeting__content {
        width: 100%;
        max-width: 550px
    }
    .p-about__greeting__txt {
        line-height: 1.8
    }
    .p-about__greeting__txt.u-mt15 {
        margin-top: 7px
    }
    .timeline {
        margin-top: 5px;
        margin-left: 5px
    }
    .timeline-date {
        font-size: 1.4rem;
        width: 68px;
        margin-bottom: 20px;
        line-height: 1.56;
        margin-top: -3px
    }
    .timeline-content {
        padding-left: 25px;
        width: 100%
    }
    .timeline-content p {
        font-size: 1.4rem;
        line-height: 1.56;
        margin-top: -3px;
        margin-bottom: 20px
    }
    .timeline-content:before {
        width: 10px;
        height: 10px;
        top: 2px;
        left: -5px
    }
    .p-about__equipment__list {
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        margin-top: 35px
    }
    .p-about__equipment__list li {
        padding: 0 10px 40px
    }
    .p-about__equipment__photo {
        border-radius: 12px
    }
    .p-about__equipment__room {
        text-shadow: 0 2px 5px rgba(0, 0, 0, .2)
    }
    .p-about__equipment__room span {
        font-size: 1.3rem
    }
    .p-about__flow {
        padding: 40px 0
    }
    .p-about__flow:after {
        bottom: -22px;
        width: 28px;
        height: 35px;
        background-size: 28px 35px
    }
    .p-flow {
        margin-top: 20px
    }
    .p-flow:before {
        left: 15px
    }
    .p-flow-block {
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        margin-bottom: 40px
    }
    .p-flow-block:last-child {
        padding-bottom: 10px
    }
    .p-flow-number {
        -webkit-box-ordinal-group: 1;
        -ms-flex-order: 0;
        order: 0;
        font-size: 4rem;
        width: 30px;
        height: 70px;
        margin-top: -18px
    }
    .p-flow-content {
        width: 90%;
        max-width: calc(100% - 45px);
        margin-left: 15px
    }
    .p-flow-content h3 {
        font-size: 2.8rem;
        margin-bottom: 12px;
        margin-top: 4px
    }
    .p-flow-photo {
        width: 90%;
        max-width: calc(100% - 45px);
        margin: 21px 0 0 45px
    }
    .p-flow-photo img {
        border-radius: 10px
    }
    .p-flow-txt {
        line-height: 1.85
    }
    .p-flow-surgery__photo img {
        border-radius: 10px
    }
    .p-flow-surgery__photo02:after {
        height: 40px
    }
    .p-flow-surgery__ttl {
        font-size: 1.5rem
    }
    .p-flow-closing__lead {
        font-size: 1.8rem
    }
    .p-flow-closing__main {
        font-size: 2.8rem;
        padding: 0 34px;
        letter-spacing: .05em;
        white-space: nowrap
    }
    .p-flow-closing__main:after,
    .p-flow-closing__main:before {
        width: 27px;
        height: 3px
    }
    .p-flow-closing__main:before {
        -webkit-transform: rotate(68deg);
        transform: rotate(68deg)
    }
    .p-flow-closing__main:after {
        -webkit-transform: rotate(-68deg);
        transform: rotate(-68deg)
    }
    .p-about__summary {
        padding: 55px 0 0
    }
    .p-features__intro__inner {
        width: 100%
    }
    .p-features__intro__txt {
        line-height: 2
    }
    .p-features__plan {
        padding-bottom: 25px
    }
    .p-features__treatment {
        padding-top: 30px;
        padding-bottom: 20px
    }
    .p-features__list {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center
    }
    .p-features__list__wrap {
        max-width: 450px;
        margin: 50px auto 0
    }
    .p-features__list__item {
        width: 100%;
        margin-bottom: 45px;
		padding-top: 3rem;
    }
    .p-features__list__label .num {
        font-size: 2.1rem;
        margin-top: -10px
    }
    .p-features__list__label img {
        width: 46px
    }
    .p-features__list__img {
        border-radius: 12px
    }
    .p-features__list__ttl {
        letter-spacing: .05em
    }
    .p-features__list__txt {
        margin-top: 15px
    }
    .p-features__prevention {
        padding: 40px 0 55px;
        margin-bottom: 40px
    }
    .p-features__prevention .c-w970 {
        max-width: 550px;
        margin-top: 25px
    }
    .p-features__prevention__bg {
        padding: 25px 20px 30px;
        border-radius: 12px
    }
    .p-features__prevention h4 {
        font-size: 2.1rem;
        margin-bottom: 17px
    }
    .p-features__prevention__txt+.p-features__prevention__txt {
        margin-top: 18px
    }
    .p-features__prevention__txt.u-mt15 {
        margin-top: 12px
    }
    .p-features__prevention__photo {
        margin-left: auto;
        margin-right: auto;
        border-radius: 12px
    }
    .p-features__prevention .c-flex {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column
    }
    .p-recruit--heading--main,
    .p-recruit--heading--main.-fz36 {
        letter-spacing: .02em
    }
    .p-recruit--heading--sub {
        font-size: 1.6rem;
        margin-top: 13px
    }
    .p-recruit--heading--txt {
        line-height: 1.9;
        margin-top: 18px
    }
    .p-recruit__intro {
        padding-bottom: 65px
    }
    .p-recruit__intro__photo {
        border-radius: 10px
    }
    .p-recruit__intro .c-flex {
        -webkit-box-orient: vertical;
        -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
        flex-direction: column-reverse;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center
    }
    .p-recruit__intro .c-col-md-6 {
        width: 100%;
        max-width: 430px
    }
    .p-recruit__requirements__box {
        padding: 25px 15px
    }
    .p-recruit__requirements__box:nth-of-type(2) {
        margin-top: 30px
    }
    .p-recruit__tel__tel {
        margin-top: 12px
    }
    .faq-wrap {
        margin: 10px 0
    }
    .faq-label {
        min-width: 49.5%;
        border-radius: 6px;
        margin-bottom: 1%
    }
    .faq-label:nth-of-type(2n) {
        margin-left: 1%
    }
    .faq-content .p-parts--ttl {
        padding: 15px 0 13px 5px;
        background-size: 6px 2px
    }
    .faq-item {
        background-size: 6px 2px
    }
    .faq-btn {
        line-height: 1.6;
        padding: 14px 35px 16px 5px
    }
    .faq-btn:before {
        font-size: 1.5rem;
        left: 9px
    }
    .faq-ttl {
        font-size: 1.5rem;
        padding: 0 0 0 27px
    }
    .faq-icon {
        right: 8px
    }
    .faq-icon:after,
    .faq-icon:before {
        width: 11px
    }
    .faq-txt {
        padding: 0 20px 0 32px
    }
    .faq-txt:before {
        left: 9px;
        font-size: 1.5rem
    }
    .faq-txt p {
        font-size: 1.5rem;
        line-height: 1.7;
        padding-bottom: 27px
    }
    .p-info--sec.-bg-green .c-container {
        -webkit-box-orient: vertical;
        -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
        flex-direction: column-reverse
    }
    .p-info--sec.-bg-white {
        padding: 25px 0 65px
    }
    .p-info--sec.-bg-white .c-container {
        -webkit-box-orient: vertical;
        -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
        flex-direction: column-reverse
    }
    .p-info--sec .c-container {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        max-width: 500px;
        margin: 0 auto
    }
    .p-info--sec .p-parts--ttl .jp {
        letter-spacing: .07rem
    }
    .p-info--content {
        margin-top: 24px
    }
    .p-info--content .p-parts--ttl {
        margin-bottom: 8px
    }
    .p-info--photo img {
        border-radius: 10px
    }
    .p-info__medical {
        margin-bottom: 0
    }
    .p-info__medical.-last-sec {
        padding-top: 50px
    }
    .p-info__medical .p-medicalnav {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        -webkit-box-align: start;
        -ms-flex-align: start;
        align-items: flex-start
    }
    .p-info__medical .p-medicalnav:not(:first-child) {
        margin-left: 0
    }
    .p-info__medical .p-medicalnav-content {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column
    }
    .p-info__medical .p-medicalnav-list {
        border-radius: 10px;
        max-width: 500px;
        margin: 0 auto
    }
    .p-info__medical .p-medicalnav li {
        width: 100%
    }
    .p-info__medical .p-medicalnav li a {
        -webkit-box-pack: start;
        -ms-flex-pack: start;
        justify-content: flex-start
    }
    .p-info--heading {
        letter-spacing: .07em
    }
    .p-line__intro__right {
        margin-top: 35px
    }
    .p-line__intro .c-flex {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        padding: 5px 0 70px
    }
    .p-line__how .c-w970 {
        margin-top: 30px
    }
    .p-line__list {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center
    }
    .p-line__item {
        width: 100%;
        border-radius: 10px
    }
    .p-line__item:not(:first-child):before {
        left: 50%;
        top: -6%;
        margin-left: -9px;
        -webkit-transform: rotate(90deg);
        transform: rotate(90deg)
    }
    .p-line__item:not(:first-child) {
        margin-top: 44px
    }
    .p-line__txt {
        line-height: 1.8
    }
    .p-line__ttl {
        padding: 15px 0 10px
    }
    .p-line__ttl .num {
        font-size: 3.2rem
    }
    .p-line__ttl .ttl {
        font-size: 2rem
    }
    .l-hero__en {
        font-size: 1.5rem
    }
    .l-hero__en.u-mr20 {
        margin-right: 0
    }
    .l-hero__txt {
        max-width: 96%;
        width: 100%;
        line-height: 1.9
    }
    .p-wave-bottom.p-wave-circle-green {
        bottom: -20px!important;
        height: 20px;
        background-size: 100% 20px
    }
    .p-wave-top.p-wave-circle-green {
        top: -20px
    }
    .p-wave-circle-green {
        height: 20px;
        background-size: 100% 20px
    }
    .p-wave-white {
        background: url(../../assets/img/common/bg-wave02.svg) repeat-x bottom;
        background-size: 750px 20px
    }
    .p-wave-green {
        background: url(../../assets/img/common/bg-wave04.svg) repeat-x bottom;
        background-size: 750px 20px
    }
    .p-wave-green02 {
        background: url(../../assets/img/common/bg-wave06.svg) repeat-x bottom;
        background-size: 750px 20px
    }
    .p-parts__list.u-pt5 {
        padding-top: 2px
    }
    .p-parts__list li {
        margin-bottom: 7px;
        width: 100%;
        line-height: 1.42
    }
    .p-parts-tel {
        padding: 60px 0 40px
    }
    .p-parts-tel .p-block-contact__reception {
        font-size: 1.4rem
    }
    .l-article {
        padding-top: 10px
    }
    .l-article__wrap {
        padding-top: 0
    }
    .l-article__title {
        margin-bottom: 10px;
        margin-left: 3px
    }
    .l-article__title .c-icon-news {
        margin-right: 12px;
        width: 26px;
        height: 23px;
        top: 2px
    }
    .l-article__title span {
        font-size: 2.2rem
    }
    .l-article__title img {
        width: 34px
    }
    .p-article__contents .title {
        margin-top: 10px;
        line-height: 1.64
    }
    .p-article__contents .thumb {
        margin-right: 15px;
        width: 90px;
        height: 90px;
        border-radius: 5px
    }
    .p-article__link {
        padding: 20px 0
    }
    .p-article__head {
        margin-bottom: 2rem;
        -webkit-box-align: start;
        -ms-flex-align: start;
        align-items: flex-start
    }
    .p-article__head .time {
        min-width: 72px;
        min-height: 72px;
        height: 72px;
        margin-right: 15px
    }
    .p-article__head .time .num-year {
        font-size: 1.1rem
    }
    .p-article__head .time .num-date {
        font-size: 1.6rem;
        padding: 2px 0 5px
    }
    .p-article__head .time .weak {
        font-size: 1.2rem
    }
    .p-article__summary .category {
        margin-right: 18px;
        margin-bottom: 12px
    }
    .p-article__summary .category-list {
        -ms-flex-wrap: wrap;
        flex-wrap: wrap
    }
    .p-article__summary .category span {
        font-size: 1.3rem
    }
    .p-article__summary .title {
        padding: 0;
        text-align: left;
        line-height: 1.5
    }
    .p-article .c-editor p,
    .p-article .c-editor pre {
        font-size: 1.5rem;
        margin: 0 0 13px;
        line-height: 1.75
    }
    .p-article .c-editor h3 {
        font-size: 1.9rem;
        margin-top: 30px
    }
    .p-article .c-editor h4 {
        font-size: 1.8rem;
        padding-left: 19px;
        letter-spacing: .06em;
        margin: 28px 0 15px
    }
    .p-article .c-editor .wp-block-image {
        margin: 2em auto
    }
    .c-article-summary .time {
        margin-bottom: 3px
    }
    .c-article-summary .time .c-icon {
        width: 12px;
        height: 12px;
        top: 1px
    }
    .c-article-summary .time .icon {
        margin-right: 7px
    }
    .c-article-summary .time .num {
        font-size: 1.3rem;
        letter-spacing: .03em
    }
    .c-article-summary .c-list li {
        margin: 5px 18px 3px 0
    }
    .c-article-summary .c-list li span {
        font-size: 1.3rem
    }
    .c-article-summary .c-list li .c-icon {
        width: 9px;
        height: 9px;
        margin-right: 3px;
        margin-top: 1px
    }
    .p-related-post__wrap {
        margin: 0
    }
    .p-related-post .no-acticle {
        margin: 20px 0 10px
    }
    .p-related-post .p-article__contents .title {
        margin-top: 10px
    }
    .p-related-post .p-article__card:last-child:before {
        background: none
    }
    .l-news-single .p-article__card {
        width: 100%;
        padding: 0
    }
    .p-article-side .p-heading h3 {
        font-size: 1.8rem
    }
    .p-article-side__wrap+* {
        margin-top: 25px
    }
    .p-article-side__list ul li a,
    .p-article-side__list ul li a span {
        max-height: 100%
    }
    .p-pager-list__number li a,
    .p-pager-list__number li span {
        width: 48px;
        height: 48px;
        font-size: 1.7rem
    }
    .p-pager-single {
        -ms-flex-wrap: wrap;
        flex-wrap: wrap
    }
    .p-pager-single__col {
        width: 90%
    }
    .p-pager-single__col--next,
    .p-pager-single__col--prev {
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center
    }
    .p-pager-single__col a .icon {
        width: 48px;
        height: 48px
    }
    .c-nocontents {
        padding-top: 25px
    }
    .p-parts-bnr {
        margin: 30px auto 35px;
        height: auto;
        max-width: 580px;
        padding: 0 20px
    }
    .p-parts-links li:first-child {
        margin-bottom: 6px
    }
    .p-mail-btn {
        height: 58px
    }
    .p-mail-btn .c-icon {
        width: 28px;
        height: 22px;
        margin-left: 0;
        margin-right: 6px
    }
    .p-mail-btn .p-btn__inner {
        font-size: 1.7rem
    }
    .l-footer-contact .p-mail-btn .c-icon {
        width: 27px;
        height: 20px;
        margin-top: 1px;
        margin-right: 5px
    }
    .p-rsv .p-rsv-content__ttl {
        font-size: 2.7rem;
        margin-bottom: 15px
    }
    .p-rsv-contact__ttl p {
        font-size: 1.8rem;
        padding: 0 28px
    }
    .p-rsv-contact__inner {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column
    }
    .p-rsv-contact__inner>div {
        padding: 0
    }
    .p-rsv-contact__tel {
        margin-bottom: 20px
    }
    .p-rsv-flow__inner {
        padding: 22px 20px 30px
    }
    .p-rsv-flow .p-parts--ttl {
        padding: 15px 0 30px!important;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center
    }
    .p-rsv-flow .p-line__item {
        width: 100%;
        margin-bottom: 0
    }
    .p-rsv-flow .p-line__item:after {
        top: auto;
        left: 50%;
        bottom: -8%;
        margin-left: -9px;
        -webkit-transform: rotate(90deg);
        transform: rotate(90deg)
    }
    .p-rsv-flow__textBox {
        margin-top: 40px
    }
    .p-rsv-flow__textBox h3 {
        font-size: 2rem
    }
    .tab-wrap {
        margin: 10px 0
    }
    .tab-label {
        min-width: 49.5%;
        border-radius: 6px;
        margin-bottom: 1%
    }
    .tab-label:nth-of-type(2n) {
        margin-left: 1%
    }
    .tab-content .p-parts--ttl {
        padding: 15px 0 13px 5px;
        background-size: 6px 2px
    }
}

@media screen and (min-width:768px) {
    .h-pc,
    .v-sp {
        display: none!important
    }
    .fade {
        -webkit-transition: opacity .3s ease;
        transition: opacity .3s ease;
        -webkit-backface-visibility: hidden;
        backface-visibility: hidden
    }
    .fade:hover {
        opacity: .7;
        cursor: pointer
    }
    .fade02 {
        -webkit-transition: opacity .3s ease;
        transition: opacity .3s ease;
        -webkit-backface-visibility: hidden;
        backface-visibility: hidden
    }
    .fade02:hover {
        opacity: .5;
        cursor: pointer
    }
    .p-btn:focus .c-icon-arrow,
    .p-btn:focus .c-icon-btmarrow,
    .p-btn:hover .c-icon-arrow,
    .p-btn:hover .c-icon-btmarrow {
        margin-right: -4px
    }
    .p-btn__white:focus,
    .p-btn__white:hover {
        color: #fff;
        background-color: #e47296
    }
    .p-btn__white:focus .c-icon,
    .p-btn__white:focus i,
    .p-btn__white:hover .c-icon,
    .p-btn__white:hover i {
        color: #fff
    }
    .p-btn__green:focus,
    .p-btn__green:hover {
        color: #74b263;
        background-color: #fff
    }
    .p-btn__green02:focus:before,
    .p-btn__green02:hover:before {
        opacity: 1
    }
    .p-btn__brown:focus,
    .p-btn__brown:hover {
        color: #fff;
        background-color: #57331d
    }
    .p-btn__brown:focus .c-icon,
    .p-btn__brown:hover .c-icon {
        fill: #fff
    }
    .p-btn__red:hover:before {
        opacity: 1
    }
    table[class*=c-form__table] tbody tr td {
        padding-left: 15px;
        padding-right: 15px
    }
    .c-form__tableA tr:last-child th {
        border-bottom: none
    }
    .p-parts--ttl .jp {
        padding-top: 3px
    }
    .l-nav__link:hover .l-nav__title--en:after {
        width: 30px
    }
    .l-footer .l-nav__list li a:hover {
        text-decoration: underline
    }
    .l-footer-contact .p-block-contact__tel {
        padding-left: 22px
    }
    .p-parts-pagetop {
        right: 50px
    }
    .p-about__principle__content {
        position: absolute;
        z-index: 1;
        top: 50%;
        left: 0;
        right: 0;
        -webkit-transform: translateY(-50%);
        transform: translateY(-50%)
    }
    .p-about__principle__content__inner {
        margin-right: auto;
        background-color: #fff;
        border-radius: 20px
    }
    .p-about__principle__img {
        border-radius: 20px 0 0 20px
    }
    .timeline-content p {
        white-space: nowrap
    }
    .p-flow-block {
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between
    }
    .p-flow-block:nth-of-type(2n) {
        -webkit-box-orient: horizontal;
        -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
        flex-direction: row-reverse
    }
    .p-flow-txt {
        line-height: 1.9
    }
    .p-features__list__item:nth-of-type(2n) {
        margin-top: 100px
    }
    .p-features__list__txt {
        line-height: 1.85
    }
    .p-features__prevention__txt {
        line-height: 1.9
    }
    .p-recruit__requirements__box dl dd {
        max-width: 480px
    }
    .faq-wrap:after {
        content: "";
        width: 100%;
        height: 3px;
        background: #74b263;
        display: block;
        -webkit-box-ordinal-group: 0;
        -ms-flex-order: -1;
        order: -1
    }
    .faq-label:not(:last-of-type) {
        margin-right: 5px
    }
    .p-info--sec.-bg-green .c-container {
        -webkit-box-orient: horizontal;
        -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
        flex-direction: row-reverse
    }
    .p-info--content {
        width: 53.84615%
    }
    .p-info--photo {
        width: 42.73504%
    }
    .p-info--txt p {
        line-height: 1.9
    }
    .p-info--link:hover {
        background: #74b263;
        color: #fff
    }
    .p-info--link:hover .c-icon {
        fill: #fff
    }
    .p-line__intro__left {
        width: 66.26506%
    }
    .p-line__intro__right {
        width: 24.09639%
    }
    .p-line__item:not(:first-child):before {
        -webkit-transform: translate(-50%, -50%);
        transform: translate(-50%, -50%)
    }
    .p-wave-white {
        background: url(../../assets/img/common/bg-wave01.svg) repeat-x bottom;
        background-size: 1500px 20px
    }
    .p-wave-green {
        background: url(../../assets/img/common/bg-wave03.svg) repeat-x bottom;
        background-size: 1500px 20px
    }
    .p-wave-green02 {
        background: url(../../assets/img/common/bg-wave05.svg) repeat-x bottom;
        background-size: 1500px 20px
    }
    .p-parts__list.-list-half li:nth-of-type(odd) {
        width: 40%;
        margin-right: 5%
    }
    .p-parts__list.-list-half li:nth-of-type(2n) {
        width: 55%
    }
    .p-article__link:hover:before {
        opacity: 1
    }
    .p-related-post .no-acticle {
        margin: 20px 20px 0
    }
    .p-related-post .p-article__card:before {
        display: none
    }
    .l-news .p-article__contents .title {
        font-size: 1.6rem
    }
    .p-article-side__list ul li a:hover:after {
        opacity: 1
    }
    .p-pager-list__number li a:hover,
    .p-pager-list__number li span:hover {
        background: #57331d;
        color: #fff
    }
    .p-pager-single__col--next {
        -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
        order: 1
    }
    .p-pager-single__col--next:hover .icon,
    .p-pager-single__col--prev:hover .icon {
        background: #ed796c
    }
    .p-pager-single__col--next:hover .label,
    .p-pager-single__col--prev:hover .label {
        text-decoration: underline
    }
    .p-pager-single__col a .icon:hover {
        background: #ed796c;
        color: #fff
    }
    .p-medicalnav li a:hover .p-medicalnav__icon {
        background: #74b263
    }
    .p-medicalnav li a:hover .p-medicalnav__icon .c-icon {
        fill: #fff
    }
    .p-medicalnav li a:hover .p-medicalnav__label {
        color: #74b263
    }
    .p-parts-bnr__occupation__list li span:hover {
        background: hsla(0, 0%, 100%, .8)
    }
    .p-parts-links li a:hover {
        text-decoration: underline
    }
    .p-parts-outside a {
        letter-spacing: .035em
    }
    .p-parts-outside a:hover {
        text-decoration: underline!important
    }
    .p-rsv-flow .p-line__item:after {
        -webkit-transform: translate(-50%, -50%);
        transform: translate(-50%, -50%)
    }
    .tab-wrap:after {
        content: "";
        width: 100%;
        height: 3px;
        background: #74b263;
        display: block;
        -webkit-box-ordinal-group: 0;
        -ms-flex-order: -1;
        order: -1
    }
    .tab-label:not(:last-of-type) {
        margin-right: 5px
    }
}

@media screen and (max-width:1200px) {
    .h-sp1200 {
        display: block!important
    }
    .h-pc1200 {
        display: none!important
    }
}

@media screen and (min-width:1024px) {
    .h-md {
        display: none!important
    }
    .l-header {
        /* padding-left: 15px;
        padding-right: 15px */
    }
    .l-header__inner {
        /* border-bottom-left-radius: 20px;
        border-bottom-right-radius: 20px; */
        height: 100%;
        padding-left: 20px;
        padding-right: 20px;
        -webkit-box-shadow: 0 0 8px 0 rgba(0, 0, 0, .15);
        box-shadow: 0 0 8px 0 rgba(0, 0, 0, .15)
    }
    .l-header__content {
        /* max-width: 1140px; */
        margin: 0 auto
    }
    .l-header__logo {
        padding: 0;
        width: 400px;
        margin-top: 17px;
        margin-left: 5px
    }
    .l-state-for .p-block-info__links.-time {
        margin-right: 18px
    }
    .l-state-for .p-block-info__links.-access {
        margin-right: 22px
    }
    .l-state-for .p-block-info__links a {
        margin-top: 3px
    }
    .l-state-for .p-block-info__btn a {
        position: relative;
        z-index: 1;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        width: 186px;
        height: 70px;
        font-size: 1.6rem;
        color: #fff;
        background: #ed796c;
        border-bottom-left-radius: 10px;
        border-bottom-right-radius: 10px;
        line-height: 1;
        padding-bottom: 2px;
        letter-spacing: .05em;
        font-weight: 500;
        -webkit-transform: rotate(.03deg);
        transform: rotate(.03deg);
        text-shadow: 0 0 0 1px hsla(0, 0%, 100%, .3)
    }
    .l-state-for .p-block-info__btn a:before {
        content: "";
        display: block;
        width: 100%;
        height: 100%;
        position: absolute;
        top: 0;
        left: 0;
        opacity: 0;
        z-index: -1;
        -webkit-transition: opacity .3s ease-in-out;
        transition: opacity .3s ease-in-out;
        background: hsla(0, 0%, 100%, .2)
    }
    .l-state-for .p-block-info__btn a:hover:before {
        opacity: 1
    }
    .l-state-for .p-block-info__btn a:hover .c-icon {
        fill: #ed796c
    }
    .l-state-for .p-block-info__btn a .c-icon {
        fill: #fff;
        margin-right: 6px;
        margin-top: 1px
    }
    .l-state-for .p-block-info__btn a .p-btn__inner {
        line-height: 1.2
    }
    .l-nav {
        max-width: 1140px;
        margin: 0 auto
    }
    .l-nav__list {
        margin-right: -1px
    }
    .l-nav__col:not(:first-child) .l-nav__link:before {
        display: block;
        content: "";
        background: url(../../assets/img/parts/line-dotted02.png) repeat-y 0 0;
        background-size: 2px auto;
        position: absolute;
        left: 0;
        top: 0;
        width: 2px;
        height: 100%
    }
    .l-drawer {
        display: none;
        -webkit-transition: opacity .5s ease-in .4s, height .65s ease-in-out .4s, width .65s ease-in-out .4s;
        transition: opacity .5s ease-in .4s, height .65s ease-in-out .4s, width .65s ease-in-out .4s
    }
    .l-drawer__title--jp {
        white-space: nowrap
    }
    .l-nav-fixed {
        top: 165px
    }
    .l-nav-fixed--btn {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        border-top-left-radius: 12px;
        border-bottom-left-radius: 12px;
        width: 58px;
        height: 188px;
        line-height: 1
    }
    .l-nav-fixed--btn.-red-btn {
        margin-bottom: 6px
    }
    .l-nav-fixed--btn.-red-btn .l-nav-fixed--btn__label {
        margin-bottom: 7px
    }
    .l-nav-fixed--btn.-red-btn .c-icon02 {
        margin-bottom: 4px
    }
    .l-nav-fixed--btn .c-icon {
        margin-left: 2px
    }
    .l-nav-fixed--btn__label {
        margin-top: 5px;
        -ms-writing-mode: tb-rl;
        -webkit-writing-mode: vertical-rl;
        writing-mode: vertical-rl;
        text-orientation: upright;
        -webkit-font-feature-settings: normal;
        font-feature-settings: normal;
        letter-spacing: .15em;
        margin-bottom: 8px
    }
    .l-nav-fixed--btn__label span {
        display: inline!important
    }
    .hero--img .slide-copy {
        max-width: 1200px;
        margin-top: 65px;
        margin-left: 60px;
        -webkit-transform: translate(-51%, -60%);
        transform: translate(-51%, -60%)
    }
    .p-flow-surgery__photo02 {
        margin: 0 35px
    }
    .p-info--sec.-bg-green .p-info--content {
        margin-left: 49px;
    }
    .p-info--sec.-bg-white .p-info--content {
        margin-right: 65px
    }
    .l-article__inner {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between
    }
    .l-article__main {
        max-width: 800px;
        width: 68.37607%;
        margin-top: 3px
    }
    .l-article__sub {
        margin-left: 70px
    }
    .p-parts-bnr__staff {
        width: 63.91753%
    }
}

@media screen and (max-width:1023px) {
    .v-md {
        display: none!important
    }
    .p-btn-h90 {
        height: 70px
    }
    .p-parts--ttl .ttl {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        -webkit-box-align: start;
        -ms-flex-align: start;
        align-items: flex-start
    }
    .p-parts--ttl .en02,
    .p-parts--ttl .en03 {
        font-size: 1.8rem;
        line-height: 1;
        margin-left: 0;
        display: block
    }
    .l-header {
        position: fixed;
        z-index: 15
    }
    .l-header__content {
        height: 65px;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center
    }
    .l-header__logo {
        margin-right: auto;
        width: 264px;
        margin-left: 1.6rem
    }
    .l-header-info,
    .l-header__nav {
        display: none
    }
    .l-state-for {
        position: fixed;
        top: 0;
        left: 0
    }
    .l-state-for .p-block-info__links__wrap {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center
    }
    .l-state-for .p-block-info__links.-time a .c-icon {
        width: 27px;
        height: 100%
    }
    .l-state-for .p-block-info__links.-access a .c-icon {
        width: 22px;
        height: 100%
    }
    .l-state-for .p-block-info__links a {
        height: 71px;
        margin: 0 10px
    }
    .l-state-for .p-block-info__links a .p-btn__inner {
        font-size: 1.4rem;
        margin-top: 5px
    }
    .header-clone {
        display: none
    }
    .l-nav-fixed {
        left: 50%;
        bottom: -200px;
        z-index: 100;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        -webkit-transform: translateX(-50%);
        transform: translateX(-50%);
        width: 100%;
        -webkit-transition: .3s;
        transition: .3s
    }
    .l-nav-fixed.appear {
        bottom: 0
    }
    .l-nav-fixed--btn {
        width: 50%;
        -webkit-box-orient: horizontal;
        -webkit-box-direction: reverse;
        -ms-flex-flow: row-reverse;
        flex-flow: row-reverse
    }
    .l-nav-fixed--btn .c-icon02 {
        width: 16px;
        height: 100%
    }
    .l-nav-fixed--btn__label {
        font-size: 1.66rem;
        line-height: 1.6;
        letter-spacing: .07em;
        margin: 0 6px 0 9px
    }
    .l-nav-fixed .u-mb5 {
        margin-bottom: 0
    }
    .l-state-for.is-hidden .l-header__inner {
        background: transparent
    }
    .l-state-for.is-hidden .l-header__logo {
        opacity: 0
    }
    .l-state-for.is-hidden #drawer {
        background: none;
        padding-top: 0
    }
    .l-footer__inner {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center
    }
    .l-footer-map,
    .l-footer__content {
        width: 100%;
        max-width: 540px
    }
    .u-text_r-lg-c {
        text-align: center
    }
    .u-text_r-lg-l {
        text-align: left
    }
    .u-text_c-lg-r {
        text-align: right
    }
    .u-text_c-lg-l {
        text-align: left
    }
    .u-text_l-lg-c {
        text-align: center
    }
    .u-text_l-lg-r {
        text-align: right
    }
    .u-br-lg-b {
        display: block
    }
    .u-br-lg-n {
        display: none
    }
    .u-break-lg-d {
        display: inherit
    }
    .u-break-lg-n {
        display: none
    }
    .c-flex--direction-row-lg {
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
        -ms-flex-direction: row;
        flex-direction: row
    }
    .c-flex--direction-row-reverse-lg {
        -webkit-box-orient: horizontal;
        -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
        flex-direction: row-reverse
    }
    .c-flex--direction-column-lg,
    .c-row--lg,
    .p-article {
        -webkit-box-orient: vertical
    }
    .c-flex--direction-column-lg {
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column
    }
    .c-flex--direction-column-reverse-lg {
        -webkit-box-orient: vertical;
        -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
        flex-direction: column-reverse
    }
    .c-row--lg,
    .l-sidenavi__link,
    .p-article {
        -webkit-box-direction: normal
    }
    .c-flex--justify-content-normal-lg {
        -webkit-box-pack: normal;
        -ms-flex-pack: normal;
        justify-content: normal
    }
    .c-flex--justify-content-center-lg {
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center
    }
    .c-flex--justify-content-start-lg {
        -webkit-box-pack: start;
        -ms-flex-pack: start;
        justify-content: start
    }
    .c-flex--justify-content-end-lg {
        -webkit-box-pack: end;
        -ms-flex-pack: end;
        justify-content: end
    }
    .c-flex--justify-content-flex-start-lg {
        -webkit-box-pack: start;
        -ms-flex-pack: start;
        justify-content: flex-start
    }
    .c-flex--justify-content-flex-end-lg {
        -webkit-box-pack: end;
        -ms-flex-pack: end;
        justify-content: flex-end
    }
    .c-flex--justify-content-space-between-lg {
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between
    }
    .c-flex--justify-content-space-around-lg {
        -ms-flex-pack: distribute;
        justify-content: space-around
    }
    .c-flex--align-content-normal-lg {
        -ms-flex-line-pack: normal;
        align-content: normal
    }
    .c-flex--align-content-center-lg {
        -ms-flex-line-pack: center;
        align-content: center
    }
    .c-flex--align-content-start-lg {
        -ms-flex-line-pack: start;
        align-content: start
    }
    .c-flex--align-content-end-lg {
        -ms-flex-line-pack: end;
        align-content: end
    }
    .c-flex--align-content-flex-start-lg {
        -ms-flex-line-pack: start;
        align-content: flex-start
    }
    .c-flex--align-content-flex-end-lg {
        -ms-flex-line-pack: end;
        align-content: flex-end
    }
    .c-flex--align-content-space-between-lg {
        -ms-flex-line-pack: justify;
        align-content: space-between
    }
    .c-flex--align-content-space-around-lg {
        -ms-flex-line-pack: distribute;
        align-content: space-around
    }
    .c-flex--align-items-normal-lg {
        -webkit-box-align: normal;
        -ms-flex-align: normal;
        align-items: normal
    }
    .c-flex--align-items-center-lg {
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center
    }
    .c-flex--align-items-start-lg {
        -webkit-box-align: start;
        -ms-flex-align: start;
        align-items: start
    }
    .c-flex--align-items-end-lg {
        -webkit-box-align: end;
        -ms-flex-align: end;
        align-items: end
    }
    .c-flex--align-items-flex-start-lg {
        -webkit-box-align: start;
        -ms-flex-align: start;
        align-items: flex-start
    }
    .c-flex--align-items-flex-end-lg {
        -webkit-box-align: end;
        -ms-flex-align: end;
        align-items: flex-end
    }
    .c-flex--nowrap-lg {
        -ms-flex-wrap: nowrap;
        flex-wrap: nowrap
    }
    .c-flex--wrap-lg {
        -ms-flex-wrap: wrap;
        flex-wrap: wrap
    }
    .c-flex--wrap-reverse-lg {
        -ms-flex-wrap: wrap-reverse;
        flex-wrap: wrap-reverse
    }
    .c-flex--order-1-lg {
        -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
        order: 1
    }
    .c-flex--order-2-lg {
        -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
        order: 2
    }
    .c-flex--order-3-lg {
        -webkit-box-ordinal-group: 4;
        -ms-flex-order: 3;
        order: 3
    }
    .c-flex--order-4-lg {
        -webkit-box-ordinal-group: 5;
        -ms-flex-order: 4;
        order: 4
    }
    .c-flex--order-5-lg {
        -webkit-box-ordinal-group: 6;
        -ms-flex-order: 5;
        order: 5
    }
    .c-flex--00auto-lg {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto
    }
    .c-flex--01auto-lg {
        -webkit-box-flex: 0;
        -ms-flex: 0 1 auto;
        flex: 0 1 auto
    }
    .c-flex--11auto-lg {
        -webkit-box-flex: 1;
        -ms-flex: 1 1 auto;
        flex: 1 1 auto
    }
    .c-flex--10auto-lg {
        -webkit-box-flex: 1;
        -ms-flex: 1 0 auto;
        flex: 1 0 auto
    }
    .hero--img .slide-copy .copy01,
    .hero--img .slide-copy .copy02 {
        -webkit-transform: translate(-4%);
        transform: translate(-4%)
    }
    .p-about__principle__inner {
        padding: 0
    }
    .p-about__greeting__photo__name {
        letter-spacing: .05em
    }
    .p-about__greeting__photo__name .en {
        margin-bottom: 5px;
        font-size: 1.2rem
    }
    .p-about__greeting__photo__name .jp {
        font-size: 2.8rem
    }
    .p-about__equipment__list li {
        padding: 0 10px 45px
    }
    .p-about__equipment__room {
        font-size: 2rem;
        bottom: 17px
    }
    .p-features__intro__inner {
        width: 84%;
        max-width: auto
    }
    .p-features__list__ttl {
        font-size: 2rem;
        bottom: 17px
    }
    .faq-label {
        font-size: 1.4rem
    }
    .p-info--link {
        border-radius: 7px;
        height: 72px;
        padding: 0 20px;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center
    }
    .p-info--link__list {
        margin: 23px 0 0
    }
    .p-info--link__item {
        width: 100%;
        padding: 0 0 10px
    }
    .p-info--link__txt {
        line-height: 1.52;
        font-size: 1.5rem
    }
    .p-info--link__more {
        right: 15px;
        font-size: 1.4rem
    }
    .l-hero {
        margin-top: 30px
    }
    .l-hero__jp {
        line-height: 1.4
    }
    .l-article__wrap {
        max-width: 860px;
        margin: 0 auto
    }
    .l-article__sub {
        max-width: 100%;
        padding-left: 0;
        margin-top: 25px
    }
    .p-article .c-editor {
        margin: 0 auto
    }
    .p-related-post {
        padding: 35px 0 0
    }
    .l-news {
        margin-bottom: 45px
    }
    .l-news-single .p-article__wrap {
        padding-bottom: 60px
    }
    .p-article-side .p-heading {
        padding: 17px
    }
    .p-article-side__list ul li:not(:last-child) {
        background-size: 6px 2px
    }
    .p-article-side__list ul li a {
        font-size: 1.4rem;
        padding: 13px 20px 13px 29px
    }
    .p-article-side__list ul li a:before {
        left: 13px;
        width: 10px;
        height: 16px;
        background-size: 10px 16px;
        margin-top: -8px
    }
    .l-article .p-pager-wrap {
        margin: 25px auto 0
    }
    .p-pager-wrap {
        margin: 26px auto 0
    }
    .p-pager-list__arrow.is-prev {
        margin-right: 6px
    }
    .p-pager-list__arrow.is-next {
        margin-left: 6px
    }
    .p-pager-list__number li {
        margin: 4px 6px
    }
    .p-pager-single {
        margin-top: 35px
    }
    .p-parts-bnr__staff__content {
        padding-right: 40px;
        padding-left: 33%
    }
    .p-parts-bnr__occupation,
    .p-parts-bnr__staff__txt {
        display: none
    }
    .p-mail-btn .p-btn__inner {
        letter-spacing: .09em;
        margin-right: 6px
    }
    .tab-label {
        font-size: 1.4rem
    }
}

@media screen and (min-width:568px) {
    .v-se {
        display: none!important
    }
    .p-flow-surgery__photo02:after {
        display: block;
        content: "";
        border: 1px dashed #74b263;
        width: 1px;
        height: 60px;
        position: absolute;
        left: 50%;
        -webkit-transform: translateX(-50%);
        transform: translateX(-50%);
        bottom: 0;
        z-index: 300
    }
}

@media screen and (max-width:567px) {
    .p-btn-h45 {
        height: 40px
    }
    .p-btn-f15 {
        font-size: 1.2rem
    }
    .p-contact-sec .p-parts-tel {
        padding-top: 0
    }
    .privacy {
        padding: 0 20px
    }
    .p-parts__buttn {
        max-width: 90%
    }
    .p-heading__type01 .p-heading--en {
        font-size: 3.3rem
    }
    .p-parts--heading .jp {
        font-size: 2.7rem;
        letter-spacing: .04em
    }
    .p-parts--heading .jp:after {
        width: 53px;
        height: 3px;
        background-size: 53px 3px;
        margin-top: 2px
    }
    .p-parts--ttl .c-icon {
        width: 18px;
        margin-right: 10px
    }
    .p-parts--ttl .jp {
        font-size: 2.4rem
    }
    .l-footer__inner {
        padding: 60px 20px 125px
    }
    .l-footer__bottom .l-footer-copyright p {
        font-size: 1rem;
        line-height: 1.5
    }
    .l-footer-logo {
        margin-top: 28px
    }
    .l-footer-address {
        margin-bottom: 25px
    }
    .font--30,
    .font--32 {
        font-size: 24px;
        font-size: 2.4rem
    }
    .hero--img .slide-copy {
        line-height: 1.64;
        letter-spacing: .06em
    }
    .slick-next,
    .slick-prev {
        margin-top: -30%
    }
    .p-about__greeting {
        padding: 40px 0 1px
    }
    .p-about__equipment {
        padding: 30px 0 40px
    }
    .p-about__equipment__list {
        max-width: 360px;
        margin-left: auto;
        margin-right: auto
    }
    .p-about__equipment__list li {
        width: 100%
    }
    .p-flow-surgery {
        -ms-flex-wrap: wrap;
        flex-wrap: wrap
    }
    .p-flow-surgery__photo {
        padding-bottom: 20px;
        max-width: 48%
    }
    .p-flow-surgery__photo03 {
        position: relative;
        left: 50%;
        -webkit-transform: translateX(-50%);
        transform: translateX(-50%)
    }
    .p-flow-surgery__ttl {
        bottom: 35px
    }
    .p-flow-closing {
        padding: 18px 0 0
    }
    .p-about__summary__content {
        margin-top: 18px;
        border-radius: 6px
    }
    .p-about__summary__tb tr:first-child th {
        border-top-left-radius: 6px
    }
    .p-about__summary__tb tr:last-child th {
        border-bottom-left-radius: 6px
    }
    .p-about__summary__tb tr td,
    .p-about__summary__tb tr th {
        font-size: 1.4rem
    }
    .p-about__summary__tb tr th {
        white-space: nowrap;
        padding: 12px 10px
    }
    .p-about__summary__tb tr td {
        padding: 12px 15px
    }
    .p-about__summary .google-map {
        margin-top: 5px;
        height: 250px
    }
    .p-features--heading .jp {
        font-size: 1.5rem;
        margin-top: 6px;
        letter-spacing: .04rem
    }
    .p-features--heading .en {
        font-size: 3.7rem
    }
    .p-features__intro {
        padding: 0 0 80px
    }
    .p-features__intro:before {
        width: 183px;
        height: 199px;
        bottom: -95px;
        left: -60px
    }
    .p-features__intro:after {
        width: 183px;
        height: 244px;
        bottom: -130px;
        right: -45px
    }
    .p-features__intro__inner {
        max-width: 370px
    }
    .p-features__list__label {
        top: -40px
    }
    .p-recruit--heading--main.-fz36 {
        font-size: 2.3rem
    }
    .p-recruit--heading--main {
        font-size: 2.2rem
    }
    .p-recruit__sec.-bg-green {
        padding: 20px 0 60px
    }
    .p-recruit__sec.-bg-white {
        padding: 25px 0 60px
    }
    .p-recruit__requirements {
        padding: 20px 0 50px
    }
    .p-recruit__requirements__box dl {
        background-size: 6px 2px
    }
    .p-recruit__requirements__box dl dt {
        font-size: 1.4rem;
        padding: 13px 10px 15px 0
    }
    .p-recruit__requirements__box dl dd {
        padding: 13px 0 15px;
        font-size: 1.4rem
    }
    .p-recruit__requirements__box .c-w220 {
        max-width: 90px
    }
    .p-recruit__tel {
        padding: 65px 0 35px
    }
    .p-recruit__tel__photo {
        border-radius: 10px
    }
    .p-recruit__tel__label {
        font-size: 1.4rem;
        margin-top: 18px
    }
    .p-recruit__tel__tel a {
        font-size: 3rem
    }
    .p-recruit__tel__tel a span {
        font-size: 2.3rem
    }
    .faq-txt {
        padding: 0 15px 0 32px
    }
    .p-info--sec.-bg-green {
        padding: 40px 0 60px
    }
    .p-info--sec.-bg-green+.p-info--sec {
        padding: 40px 0 65px
    }
    .p-info__medical .p-medicalnav:not(:first-child) {
        margin-top: 17px
    }
    .p-info__medical .p-medicalnav-content {
        padding: 25px 15px 30px
    }
    .p-info__medical .p-medicalnav li:not(:first-child) {
        margin-top: 17px
    }
    .p-info--heading {
        font-size: 2.2rem;
        white-space: inherit;
        width: 70%;
        max-width: 240px;
        top: -22px;
        line-height: 1.5;
        padding: 0 5px
    }
    .p-line--heading {
        font-size: 2rem;
        letter-spacing: .05em
    }
    .p-line__how {
        padding: 25px 0 35px
    }
    .l-hero {
        height: 150px
    }
    .l-hero:after {
        bottom: 18px;
        background-size: 28px 35px;
        width: 28px;
        height: 35px
    }
    .l-hero__ttl {
        padding: 20px 0 15px
    }
    .l-hero__jp {
        padding: 0 14px 0 15px;
        letter-spacing: .05em;
        line-height: 1.34
    }
    .l-hero__en {
        margin-top: 1px;
        letter-spacing: 0
    }
    .l-hero__lead {
        font-size: 1.7rem
    }
    .l-hero__lead:before {
        padding-top: 21px
    }
    .l-hero__txt {
        margin: 15px auto 0
    }
    .p-wave-top.p-wave-circle-white {
        top: -20px
    }
    .p-wave-circle-white {
        height: 20px;
        background-size: 100% 20px
    }
    .p-parts-tel .p-block-contact__tel {
        padding-top: 24px
    }
    .p-parts-tel .p-block-contact__tel a {
        font-size: 3rem
    }
    .p-parts-tel .p-block-contact__tel a span {
        font-size: 2rem
    }
    .p-parts-tel .p-block-contact__reception {
        padding-top: 5px;
        font-size: 1.3rem
    }
    .p-article__summary .title {
        font-size: 1.8rem
    }
    .p-privacy {
        padding-top: 0
    }
}

@media screen and (max-width:1280px) and (min-width:1024px) {
    .p-btn-h90 {
        height: 80px
    }
    .l-nav__title--jp {
        font-size: 1.46rem;
        letter-spacing: .05em
    }
    .l-nav__title--en {
        font-size: 1.12rem
    }
}

@media screen and (min-width:1024px) and (max-width:1180px) {
    .p-btn-w150 {
        max-width: 112px
    }
    .p-btn-w210 {
        max-width: 174px
    }
    .l-header__logo {
        width: 330px
    }
    .l-footer .l-nav__list:not(:first-child) {
        margin-left: 28px
    }
}

@media screen and (max-width:1280px) and (min-width:768px) {
    .p-btn-w300,
    .p-btn-w310 {
        max-width: 290px
    }
}

@media screen and (min-width:568px) and (max-width:1100px) {
    .p-btn-f15 {
        font-size: 1.4rem
    }
    .p-btn-f16 {
        font-size: 1.5rem
    }
}

@media screen and (max-width:1280px) {
    .p-btn__base .c-icon-contact {
        width: 28px
    }
}

@media screen and (min-width:568px) and (max-width:767px) {
    .privacy {
        padding: 10px 20px 0
    }
    .p-heading__type01 .p-heading--en {
        font-size: 3.5rem
    }
    .p-parts--ttl .c-icon {
        width: 20px;
        margin-right: 12px
    }
    .p-parts--ttl .jp {
        font-size: 2.5rem
    }
    .l-footer__inner {
        padding: 65px 20px 125px
    }
    .l-footer-logo {
        margin-top: 34px
    }
    .font--30,
    .font--32 {
        font-size: 26px;
        font-size: 2.6rem
    }
    .hero--img .slide-copy {
        margin-top: 60px;
        line-height: 1.6;
        letter-spacing: .07em;
        font-size: 220%
    }
    .p-about__equipment {
        padding: 30px 0 35px
    }
    .p-about__equipment__list:after {
        display: block;
        content: "";
        width: 50%
    }
    .p-about__equipment__list {
        margin-left: -15px;
        margin-right: -15px
    }
    .p-about__equipment__list li {
        width: 50%
    }
    .p-flow-surgery__photo {
        padding-bottom: 40px
    }
    .p-flow-surgery__ttl {
        bottom: 58px
    }
    .p-flow-closing {
        padding: 25px 0 0
    }
    .p-about__summary .google-map {
        margin-top: 15px;
        height: 300px
    }
    .p-features__intro:before {
        left: -90px
    }
    .p-features__intro:after {
        right: -55px
    }
    .p-features__intro__inner {
        max-width: 450px
    }
    .p-features__list__label {
        top: 25px
    }
    .p-recruit--heading--main.-fz36 {
        font-size: 3.1rem
    }
    .p-recruit--heading--main {
        font-size: 2.5rem
    }
    .p-recruit__requirements__box .c-w220 {
        max-width: 170px
    }
    .p-info--sec.-bg-green {
        padding: 55px 0 70px
    }
    .p-info--sec.-bg-green+.p-info--sec {
        padding: 55px 0
    }
    .p-info__medical {
        padding: 0 0 20px
    }
    .p-info__medical .p-medicalnav:not(:first-child) {
        margin-top: 22px
    }
    .p-info__medical .p-medicalnav-content {
        padding: 25px 25px 30px
    }
    .p-info--heading {
        font-size: 2.5rem;
        top: -10px;
        padding: 0 15px
    }
    .p-line__how {
        padding: 35px 0
    }
    .p-article__summary .title {
        font-size: 2.2rem
    }
    .p-rsv .p-rsv-content__ttl {
        font-size: 3.2rem
    }
    .p-rsv-contact__inner {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        padding: 20px 15px
    }
    .p-rsv-contact__inner>div {
        padding: 0
    }
    .p-rsv-contact__tel {
        margin-bottom: 20px
    }
    .p-rsv-flow__textBox h3 {
        font-size: 2.2rem
    }
}

@media screen and (min-width:768px) and (max-width:1180px) {
    .p-heading__type01.-type01-sm .p-heading--en {
        font-size: 3.4rem
    }
    .p-heading__type01.-type01-sm .p-heading--en span {
        font-size: 3rem
    }
    .p-medicalnav:not(:first-child) {
        padding-left: 35px
    }
}

@media screen and (max-width:1180px) {
    .p-heading__type01.-type01-sm .p-heading--jp {
        font-size: 1.5rem
    }
}

@media screen and (min-width:768px) and (max-width:1023px) {
    .p-heading__type01 .p-heading--en {
        font-size: 4.4rem
    }
    .p-heading__type01 .p-heading--jp {
        font-size: 1.7rem;
        margin-top: 10px
    }
    .l-nav-fixed--btn {
        height: 54px
    }
    .l-nav-fixed--btn .c-icon {
        margin-top: 1px;
        width: 16px;
        width: 17px;
        height: 100%
    }
    .l-footer__inner {
        padding-top: 60px
    }
    .l-footer-map {
        margin-top: 45px
    }
    .l-footer-wave {
        margin: 0 auto -26px;
        height: 26px
    }
    .l-footer-wave:before {
        height: 26px;
        background-size: 100% 26px
    }
    .font--30,
    .font--32 {
        font-size: 28px;
        font-size: 2.8rem
    }
    .hero--top {
        min-height: 680px
    }
    .hero--img .slide-copy {
        width: calc(100% - 45px);
        left: 45px;
        font-size: 220%;
        line-height: 1.62
    }
    .p-about__principle {
        padding: 15px 0 110px
    }
    .p-about__equipment__list {
        margin-left: -10px;
        margin-right: -10px
    }
    .p-about__equipment__room {
        text-shadow: 0 2px 5px rgba(0, 0, 0, .2)
    }
    .p-about__flow:after {
        bottom: -26px
    }
    .p-flow-block {
        margin-bottom: 60px
    }
    .p-flow-number {
        font-size: 6.8rem;
        height: 96px
    }
    .p-flow-content,
    .p-flow-photo {
        width: 42.5%
    }
    .p-about__summary {
        padding: 85px 0 0
    }
    .p-features__plan,
    .p-features__treatment {
        padding-bottom: 100px
    }
    .p-features__list {
        margin: 0 -20px
    }
    .p-features__list__item {
        padding-left: 20px;
        padding-right: 20px
    }
    .p-features__prevention {
        padding: 50px 0 60px;
        margin-bottom: 100px
    }
    .p-recruit__intro {
        padding-bottom: 80px
    }
    .p-recruit__sec.-bg-green {
        padding: 40px 0 80px
    }
    .p-info--sec.-bg-green {
        padding: 65px 0 70px
    }
    .p-info--sec.-bg-green .p-info--content {
        margin-left: 40px
    }
    .p-info--sec.-bg-green+.p-info--sec {
        padding: 65px 0 75px
    }
    .p-info--sec.-bg-white {
        padding: 35px 0 65px
    }
    .p-info--sec.-bg-white .p-info--content {
        margin-right: 40px
    }
    .p-info__medical {
        margin-bottom: 70px
    }
    .p-info__medical.-last-sec {
        padding-top: 80px
    }
    .p-info__medical .p-medicalnav:not(:first-child) {
        margin-left: 30px
    }
    .p-info__medical .p-medicalnav-list {
        margin-bottom: 15px
    }
    .p-line__how {
        padding-top: 40px
    }
    .p-line__item {
        padding: 20px
    }
    .p-line__ttl .num {
        font-size: 2.7rem
    }
    .p-line__ttl .ttl {
        font-size: 1.8rem
    }
    .p-wave-bottom.p-wave-circle-green {
        bottom: -26px!important;
        height: 26px;
        background-size: 100% 26px
    }
    .p-wave-top.p-wave-circle-green {
        top: -26px
    }
    .p-wave-circle-green {
        height: 26px;
        background-size: 100% 26px
    }
    .p-parts-tel {
        padding: 80px 0 40px
    }
    .l-article__wrap {
        padding: 20px 5% 0
    }
    .p-article__contents .title {
        margin-top: 5px
    }
    .p-article__contents .thumb {
        width: 145px;
        height: 92px
    }
    .p-parts-bnr {
        margin: 55px auto 65px;
        max-width: 630px
    }
}

@media screen and (min-width:568px) and (max-width:1023px) {
    .p-parts--heading .jp {
        font-size: 3.2rem;
        letter-spacing: .05em
    }
    .p-parts--heading .jp:after {
        width: 54px;
        height: 4px;
        background-size: 54px 4px;
        margin-top: 5px
    }
    .p-flow-surgery__photo02 {
        margin-left: 20px;
        margin-right: 20px
    }
    .p-features--heading .jp {
        font-size: 1.6rem;
        margin-top: 7px
    }
    .p-features--heading .en {
        font-size: 4.4rem
    }
    .p-recruit__sec.-bg-white {
        padding: 40px 0 80px
    }
    .p-recruit__requirements {
        padding: 50px 0 80px
    }
    .p-recruit__requirements__box:first-of-type {
        margin-top: 40px
    }
    .p-recruit__tel {
        padding: 100px 0 50px
    }
    .l-hero {
        height: 200px
    }
    .l-hero:after {
        bottom: 24px
    }
    .l-hero__ttl {
        padding-top: 4%;
        padding-bottom: 22px
    }
    .l-hero__jp {
        padding: 0 18px 0 19px;
        font-size: 3.3rem;
        max-width: 85%;
        margin: 0 auto
    }
    .l-hero__en {
        margin-top: 6px
    }
    .p-wave-top.p-wave-circle-white {
        top: -26px
    }
    .p-wave-circle-white {
        height: 26px;
        background-size: 100% 26px
    }
}

@media screen and (max-width:330px) {
    .l-header__logo {
        width: 220px!important
    }
    .hero--img .slide-copy {
        font-size: 160%;
        margin-top: 90px
    }
    .p-info--heading {
        font-size: 2rem!important
    }
    .l-hero__jp {
        font-size: 2.5rem
    }
    .p-parts-tel .p-block-contact__reception {
        font-size: 1.1rem
    }
}

@media print,
screen and (min-width:412px) {
    html {
        width: auto
    }
    .c-row--xs .c-row__content {
        margin-top: 0
    }
    .u-over-xs-d {
        display: inherit
    }
    .u-over-xs-n {
        display: none
    }
    .no-js .u-nojs-over-xs-d {
        display: inherit
    }
    .no-js .u-nojs-over-xs-n {
        display: none
    }
}

@media print,
screen and (min-width:568px) {
    html {
        width: auto
    }
    .c-row--sm .c-row__content {
        margin-top: 0
    }
    .c-col-sm-12_ {
        width: 97%
    }
    .c-col-sm-11_ {
        width: 88.66667%
    }
    .c-col-sm-10_ {
        width: 80.33333%
    }
    .c-col-sm-9_ {
        width: 72%
    }
    .c-col-sm-8_ {
        width: 63.66667%
    }
    .c-col-sm-7_ {
        width: 55.33333%
    }
    .c-col-sm-6_ {
        width: 47%
    }
    .c-col-sm-5_ {
        width: 38.66667%
    }
    .c-col-sm-4_ {
        width: 30.33333%
    }
    .c-col-sm-3_ {
        width: 22%
    }
    .c-col-sm-2_ {
        width: 13.66667%
    }
    .c-col-sm-1_ {
        width: 5.33333%
    }
    .c-col-sm-12 {
        width: 100%
    }
    .c-col-sm-11 {
        width: 91.66666667%
    }
    .c-col-sm-10 {
        width: 83.33333333%
    }
    .c-col-sm-9 {
        width: 75%
    }
    .c-col-sm-8 {
        width: 66.66666667%
    }
    .c-col-sm-7 {
        width: 58.33333333%
    }
    .c-col-sm-6 {
        width: 50%
    }
    .c-col-sm-5 {
        width: 41.66666667%
    }
    .c-col-sm-4 {
        width: 33.33333333%
    }
    .c-col-sm-3 {
        width: 25%
    }
    .c-col-sm-2 {
        width: 16.66666667%
    }
    .c-col-sm-1 {
        width: 8.33333333%
    }
    .c-col-sm-auto {
        width: auto
    }
    .p-swiper__single01 .swiper-pagination {
        display: none
    }
    .u-over-sm-d {
        display: inherit
    }
    .u-over-sm-n {
        display: none
    }
    .no-js .u-nojs-over-sm-d {
        display: inherit
    }
    .no-js .u-nojs-over-sm-n {
        display: none
    }
}

@media print,
screen and (min-width:768px) {
    html {
        width: auto
    }
    .u-text_r-sm-c {
        text-align: center
    }
    .u-text_r-sm-l {
        text-align: left
    }
    .u-text_c-sm-r {
        text-align: right
    }
    .u-text_c-sm-l {
        text-align: left
    }
    .u-text_l-sm-c {
        text-align: center
    }
    .u-text_l-sm-r {
        text-align: right
    }
    .u-br-sm-b {
        display: block
    }
    .u-br-sm-n {
        display: none
    }
    .u-break-sm-d {
        display: inherit
    }
    .u-break-sm-n {
        display: none
    }
    .no-js .u-nojs-break-sm-d {
        display: inherit
    }
    .no-js .u-nojs-break-sm-n {
        display: none
    }
    .u-break-sm-size10 {
        font-size: 1rem
    }
    .u-break-sm-size11 {
        font-size: 1.1rem
    }
    .u-break-sm-size12 {
        font-size: 1.2rem
    }
    .u-break-sm-size13 {
        font-size: 1.3rem
    }
    .u-break-sm-size14 {
        font-size: 1.4rem
    }
    .u-break-sm-size16 {
        font-size: 1.6rem
    }
    .u-break-sm-size18 {
        font-size: 1.8rem
    }
    .u-break-sm-size20 {
        font-size: 2rem
    }
    .u-break-sm-ls-normal {
        letter-spacing: normal
    }
    .u-break-sm-lh-default {
        line-height: 1.6
    }
    .u-break-sm-lh-small {
        line-height: 1.35
    }
    .u-break-sm-lh-medium {
        line-height: 1.75
    }
    .u-break-sm-lh-large {
        line-height: 1.9
    }
    .u-break-sm-mt0 {
        margin-top: 0
    }
    .u-break-sm-mr0 {
        margin-right: 0
    }
    .u-break-sm-mb0 {
        margin-bottom: 0
    }
    .u-break-sm-ml0 {
        margin-left: 0
    }
    .u-break-sm-pt0 {
        padding-top: 0
    }
    .u-break-sm-pr0 {
        padding-right: 0
    }
    .u-break-sm-pb0 {
        padding-bottom: 0
    }
    .u-break-sm-pl0 {
        padding-left: 0
    }
    .u-break-sm-mt5 {
        margin-top: 5px
    }
    .u-break-sm-mr5 {
        margin-right: 5px
    }
    .u-break-sm-mb5 {
        margin-bottom: 5px
    }
    .u-break-sm-ml5 {
        margin-left: 5px
    }
    .u-break-sm-pt5 {
        padding-top: 5px
    }
    .u-break-sm-pr5 {
        padding-right: 5px
    }
    .u-break-sm-pb5 {
        padding-bottom: 5px
    }
    .u-break-sm-pl5 {
        padding-left: 5px
    }
    .u-break-sm-mt10 {
        margin-top: 10px
    }
    .u-break-sm-mr10 {
        margin-right: 10px
    }
    .u-break-sm-mb10 {
        margin-bottom: 10px
    }
    .u-break-sm-ml10 {
        margin-left: 10px
    }
    .u-break-sm-pt10 {
        padding-top: 10px
    }
    .u-break-sm-pr10 {
        padding-right: 10px
    }
    .u-break-sm-pb10 {
        padding-bottom: 10px
    }
    .u-break-sm-pl10 {
        padding-left: 10px
    }
    .u-break-sm-mt15 {
        margin-top: 15px
    }
    .u-break-sm-mr15 {
        margin-right: 15px
    }
    .u-break-sm-mb15 {
        margin-bottom: 15px
    }
    .u-break-sm-ml15 {
        margin-left: 15px
    }
    .u-break-sm-pt15 {
        padding-top: 15px
    }
    .u-break-sm-pr15 {
        padding-right: 15px
    }
    .u-break-sm-pb15 {
        padding-bottom: 15px
    }
    .u-break-sm-pl15 {
        padding-left: 15px
    }
    .u-break-sm-mt20 {
        margin-top: 20px
    }
    .u-break-sm-mr20 {
        margin-right: 20px
    }
    .u-break-sm-mb20 {
        margin-bottom: 20px
    }
    .u-break-sm-ml20 {
        margin-left: 20px
    }
    .u-break-sm-pt20 {
        padding-top: 20px
    }
    .u-break-sm-pr20 {
        padding-right: 20px
    }
    .u-break-sm-pb20 {
        padding-bottom: 20px
    }
    .u-break-sm-pl20 {
        padding-left: 20px
    }
    .u-break-sm-mt25 {
        margin-top: 25px
    }
    .u-break-sm-mr25 {
        margin-right: 25px
    }
    .u-break-sm-mb25 {
        margin-bottom: 25px
    }
    .u-break-sm-ml25 {
        margin-left: 25px
    }
    .u-break-sm-pt25 {
        padding-top: 25px
    }
    .u-break-sm-pr25 {
        padding-right: 25px
    }
    .u-break-sm-pb25 {
        padding-bottom: 25px
    }
    .u-break-sm-pl25 {
        padding-left: 25px
    }
    .u-break-sm-mt30 {
        margin-top: 30px
    }
    .u-break-sm-mr30 {
        margin-right: 30px
    }
    .u-break-sm-mb30 {
        margin-bottom: 30px
    }
    .u-break-sm-ml30 {
        margin-left: 30px
    }
    .u-break-sm-pt30 {
        padding-top: 30px
    }
    .u-break-sm-pr30 {
        padding-right: 30px
    }
    .u-break-sm-pb30 {
        padding-bottom: 30px
    }
    .u-break-sm-pl30 {
        padding-left: 30px
    }
    .u-break-sm-mt35 {
        margin-top: 35px
    }
    .u-break-sm-mr35 {
        margin-right: 35px
    }
    .u-break-sm-mb35 {
        margin-bottom: 35px
    }
    .u-break-sm-ml35 {
        margin-left: 35px
    }
    .u-break-sm-pt35 {
        padding-top: 35px
    }
    .u-break-sm-pr35 {
        padding-right: 35px
    }
    .u-break-sm-pb35 {
        padding-bottom: 35px
    }
    .u-break-sm-pl35 {
        padding-left: 35px
    }
    .u-break-sm-mt40 {
        margin-top: 40px
    }
    .u-break-sm-mr40 {
        margin-right: 40px
    }
    .u-break-sm-mb40 {
        margin-bottom: 40px
    }
    .u-break-sm-ml40 {
        margin-left: 40px
    }
    .u-break-sm-pt40 {
        padding-top: 40px
    }
    .u-break-sm-pr40 {
        padding-right: 40px
    }
    .u-break-sm-pb40 {
        padding-bottom: 40px
    }
    .u-break-sm-pl40 {
        padding-left: 40px
    }
    .u-break-sm-mt45 {
        margin-top: 45px
    }
    .u-break-sm-mr45 {
        margin-right: 45px
    }
    .u-break-sm-mb45 {
        margin-bottom: 45px
    }
    .u-break-sm-ml45 {
        margin-left: 45px
    }
    .u-break-sm-pt45 {
        padding-top: 45px
    }
    .u-break-sm-pr45 {
        padding-right: 45px
    }
    .u-break-sm-pb45 {
        padding-bottom: 45px
    }
    .u-break-sm-pl45 {
        padding-left: 45px
    }
    .u-break-sm-mt50 {
        margin-top: 50px
    }
    .u-break-sm-mr50 {
        margin-right: 50px
    }
    .u-break-sm-mb50 {
        margin-bottom: 50px
    }
    .u-break-sm-ml50 {
        margin-left: 50px
    }
    .u-break-sm-pt50 {
        padding-top: 50px
    }
    .u-break-sm-pr50 {
        padding-right: 50px
    }
    .u-break-sm-pb50 {
        padding-bottom: 50px
    }
    .u-break-sm-pl50 {
        padding-left: 50px
    }
    .u-break-sm-mt55 {
        margin-top: 55px
    }
    .u-break-sm-mr55 {
        margin-right: 55px
    }
    .u-break-sm-mb55 {
        margin-bottom: 55px
    }
    .u-break-sm-ml55 {
        margin-left: 55px
    }
    .u-break-sm-pt55 {
        padding-top: 55px
    }
    .u-break-sm-pr55 {
        padding-right: 55px
    }
    .u-break-sm-pb55 {
        padding-bottom: 55px
    }
    .u-break-sm-pl55 {
        padding-left: 55px
    }
    .u-break-sm-mt60 {
        margin-top: 60px
    }
    .u-break-sm-mr60 {
        margin-right: 60px
    }
    .u-break-sm-mb60 {
        margin-bottom: 60px
    }
    .u-break-sm-ml60 {
        margin-left: 60px
    }
    .u-break-sm-pt60 {
        padding-top: 60px
    }
    .u-break-sm-pr60 {
        padding-right: 60px
    }
    .u-break-sm-pb60 {
        padding-bottom: 60px
    }
    .u-break-sm-pl60 {
        padding-left: 60px
    }
    .u-break-sm-mt65 {
        margin-top: 65px
    }
    .u-break-sm-mr65 {
        margin-right: 65px
    }
    .u-break-sm-mb65 {
        margin-bottom: 65px
    }
    .u-break-sm-ml65 {
        margin-left: 65px
    }
    .u-break-sm-pt65 {
        padding-top: 65px
    }
    .u-break-sm-pr65 {
        padding-right: 65px
    }
    .u-break-sm-pb65 {
        padding-bottom: 65px
    }
    .u-break-sm-pl65 {
        padding-left: 65px
    }
    .u-break-sm-mt70 {
        margin-top: 70px
    }
    .u-break-sm-mr70 {
        margin-right: 70px
    }
    .u-break-sm-mb70 {
        margin-bottom: 70px
    }
    .u-break-sm-ml70 {
        margin-left: 70px
    }
    .u-break-sm-pt70 {
        padding-top: 70px
    }
    .u-break-sm-pr70 {
        padding-right: 70px
    }
    .u-break-sm-pb70 {
        padding-bottom: 70px
    }
    .u-break-sm-pl70 {
        padding-left: 70px
    }
    .u-break-sm-mt75 {
        margin-top: 75px
    }
    .u-break-sm-mr75 {
        margin-right: 75px
    }
    .u-break-sm-mb75 {
        margin-bottom: 75px
    }
    .u-break-sm-ml75 {
        margin-left: 75px
    }
    .u-break-sm-pt75 {
        padding-top: 75px
    }
    .u-break-sm-pr75 {
        padding-right: 75px
    }
    .u-break-sm-pb75 {
        padding-bottom: 75px
    }
    .u-break-sm-pl75 {
        padding-left: 75px
    }
    .u-break-sm-mt80 {
        margin-top: 80px
    }
    .u-break-sm-mr80 {
        margin-right: 80px
    }
    .u-break-sm-mb80 {
        margin-bottom: 80px
    }
    .u-break-sm-ml80 {
        margin-left: 80px
    }
    .u-break-sm-pt80 {
        padding-top: 80px
    }
    .u-break-sm-pr80 {
        padding-right: 80px
    }
    .u-break-sm-pb80 {
        padding-bottom: 80px
    }
    .u-break-sm-pl80 {
        padding-left: 80px
    }
    .u-break-sm-mt85 {
        margin-top: 85px
    }
    .u-break-sm-mr85 {
        margin-right: 85px
    }
    .u-break-sm-mb85 {
        margin-bottom: 85px
    }
    .u-break-sm-ml85 {
        margin-left: 85px
    }
    .u-break-sm-pt85 {
        padding-top: 85px
    }
    .u-break-sm-pr85 {
        padding-right: 85px
    }
    .u-break-sm-pb85 {
        padding-bottom: 85px
    }
    .u-break-sm-pl85 {
        padding-left: 85px
    }
    .u-break-sm-mt90 {
        margin-top: 90px
    }
    .u-break-sm-mr90 {
        margin-right: 90px
    }
    .u-break-sm-mb90 {
        margin-bottom: 90px
    }
    .u-break-sm-ml90 {
        margin-left: 90px
    }
    .u-break-sm-pt90 {
        padding-top: 90px
    }
    .u-break-sm-pr90 {
        padding-right: 90px
    }
    .u-break-sm-pb90 {
        padding-bottom: 90px
    }
    .u-break-sm-pl90 {
        padding-left: 90px
    }
    .u-break-sm-mt95 {
        margin-top: 95px
    }
    .u-break-sm-mr95 {
        margin-right: 95px
    }
    .u-break-sm-mb95 {
        margin-bottom: 95px
    }
    .u-break-sm-ml95 {
        margin-left: 95px
    }
    .u-break-sm-pt95 {
        padding-top: 95px
    }
    .u-break-sm-pr95 {
        padding-right: 95px
    }
    .u-break-sm-pb95 {
        padding-bottom: 95px
    }
    .u-break-sm-pl95 {
        padding-left: 95px
    }
    .u-break-sm-mt100 {
        margin-top: 100px
    }
    .u-break-sm-mr100 {
        margin-right: 100px
    }
    .u-break-sm-mb100 {
        margin-bottom: 100px
    }
    .u-break-sm-ml100 {
        margin-left: 100px
    }
    .u-break-sm-pt100 {
        padding-top: 100px
    }
    .u-break-sm-pr100 {
        padding-right: 100px
    }
    .u-break-sm-pb100 {
        padding-bottom: 100px
    }
    .u-break-sm-pl100 {
        padding-left: 100px
    }
    .u-break-sm-mt105 {
        margin-top: 105px
    }
    .u-break-sm-mr105 {
        margin-right: 105px
    }
    .u-break-sm-mb105 {
        margin-bottom: 105px
    }
    .u-break-sm-ml105 {
        margin-left: 105px
    }
    .u-break-sm-pt105 {
        padding-top: 105px
    }
    .u-break-sm-pr105 {
        padding-right: 105px
    }
    .u-break-sm-pb105 {
        padding-bottom: 105px
    }
    .u-break-sm-pl105 {
        padding-left: 105px
    }
    .u-break-sm-mt110 {
        margin-top: 110px
    }
    .u-break-sm-mr110 {
        margin-right: 110px
    }
    .u-break-sm-mb110 {
        margin-bottom: 110px
    }
    .u-break-sm-ml110 {
        margin-left: 110px
    }
    .u-break-sm-pt110 {
        padding-top: 110px
    }
    .u-break-sm-pr110 {
        padding-right: 110px
    }
    .u-break-sm-pb110 {
        padding-bottom: 110px
    }
    .u-break-sm-pl110 {
        padding-left: 110px
    }
    .u-break-sm-mt115 {
        margin-top: 115px
    }
    .u-break-sm-mr115 {
        margin-right: 115px
    }
    .u-break-sm-mb115 {
        margin-bottom: 115px
    }
    .u-break-sm-ml115 {
        margin-left: 115px
    }
    .u-break-sm-pt115 {
        padding-top: 115px
    }
    .u-break-sm-pr115 {
        padding-right: 115px
    }
    .u-break-sm-pb115 {
        padding-bottom: 115px
    }
    .u-break-sm-pl115 {
        padding-left: 115px
    }
    .u-break-sm-mt120 {
        margin-top: 120px
    }
    .u-break-sm-mr120 {
        margin-right: 120px
    }
    .u-break-sm-mb120 {
        margin-bottom: 120px
    }
    .u-break-sm-ml120 {
        margin-left: 120px
    }
    .u-break-sm-pt120 {
        padding-top: 120px
    }
    .u-break-sm-pr120 {
        padding-right: 120px
    }
    .u-break-sm-pb120 {
        padding-bottom: 120px
    }
    .u-break-sm-pl120 {
        padding-left: 120px
    }
    .u-break-sm-mt125 {
        margin-top: 125px
    }
    .u-break-sm-mr125 {
        margin-right: 125px
    }
    .u-break-sm-mb125 {
        margin-bottom: 125px
    }
    .u-break-sm-ml125 {
        margin-left: 125px
    }
    .u-break-sm-pt125 {
        padding-top: 125px
    }
    .u-break-sm-pr125 {
        padding-right: 125px
    }
    .u-break-sm-pb125 {
        padding-bottom: 125px
    }
    .u-break-sm-pl125 {
        padding-left: 125px
    }
    .u-break-sm-m-auto {
        margin-right: auto;
        margin-left: auto
    }
    .u-break-sm-mt-auto {
        margin-top: auto
    }
    .u-break-sm-mb-auto {
        margin-bottom: auto
    }
    .u-break-sm-mt130 {
        margin-top: 130px
    }
    .u-break-sm-mr130 {
        margin-right: 130px
    }
    .u-break-sm-mb130 {
        margin-bottom: 130px
    }
    .u-break-sm-ml130 {
        margin-left: 130px
    }
    .u-break-sm-pt130 {
        padding-top: 130px
    }
    .u-break-sm-pr130 {
        padding-right: 130px
    }
    .u-break-sm-pb130 {
        padding-bottom: 130px
    }
    .u-break-sm-pl130 {
        padding-left: 130px
    }
    .u-break-sm-p {
        padding: 1.65em
    }
    .u-break-sm-pt {
        padding-top: 1.65em
    }
    .u-break-sm-pr {
        padding-right: 1.65em
    }
    .u-break-sm-pb {
        padding-bottom: 1.65em
    }
    .u-break-sm-pl {
        padding-left: 1.65em
    }
    .u-break-sm-m {
        margin: 1.65em
    }
    .u-break-sm-mt {
        margin-top: 1.65em
    }
    .u-break-sm-mr {
        margin-right: 1.65em
    }
    .u-break-sm-mb {
        margin-bottom: 1.65em
    }
    .u-break-sm-ml {
        margin-left: 1.65em
    }
    .u-break-sm-p-n {
        padding: 0
    }
    .u-break-sm-pt-n {
        padding-top: 0
    }
    .u-break-sm-pr-n {
        padding-right: 0
    }
    .u-break-sm-pb-n {
        padding-bottom: 0
    }
    .u-break-sm-pl-n {
        padding-left: 0
    }
    .u-break-sm-m-n {
        margin: 0
    }
    .u-break-sm-mt-n {
        margin-top: 0
    }
    .u-break-sm-mr-n {
        margin-right: 0
    }
    .u-break-sm-mb-n {
        margin-bottom: 0
    }
    .u-break-sm-ml-n {
        margin-left: 0
    }
    .u-break-sm-p-p {
        padding: 1em
    }
    .u-break-sm-pt-p {
        padding-top: 1em
    }
    .u-break-sm-pr-p {
        padding-right: 1em
    }
    .u-break-sm-pb-p {
        padding-bottom: 1em
    }
    .u-break-sm-pl-p {
        padding-left: 1em
    }
    .u-break-sm-m-p {
        margin: 1em
    }
    .u-break-sm-mt-p {
        margin-top: 1em
    }
    .u-break-sm-mr-p {
        margin-right: 1em
    }
    .u-break-sm-mb-p {
        margin-bottom: 1em
    }
    .u-break-sm-ml-p {
        margin-left: 1em
    }
    .u-break-sm-p-xxs {
        padding: .25em
    }
    .u-break-sm-pt-xxs {
        padding-top: .25em
    }
    .u-break-sm-pr-xxs {
        padding-right: .25em
    }
    .u-break-sm-pb-xxs {
        padding-bottom: .25em
    }
    .u-break-sm-pl-xxs {
        padding-left: .25em
    }
    .u-break-sm-m-xxs {
        margin: .25em
    }
    .u-break-sm-mt-xxs {
        margin-top: .25em
    }
    .u-break-sm-mr-xxs {
        margin-right: .25em
    }
    .u-break-sm-mb-xxs {
        margin-bottom: .25em
    }
    .u-break-sm-ml-xxs {
        margin-left: .25em
    }
    .u-break-sm-p-xs {
        padding: .5em
    }
    .u-break-sm-pt-xs {
        padding-top: .5em
    }
    .u-break-sm-pr-xs {
        padding-right: .5em
    }
    .u-break-sm-pb-xs {
        padding-bottom: .5em
    }
    .u-break-sm-pl-xs {
        padding-left: .5em
    }
    .u-break-sm-m-xs {
        margin: .5em
    }
    .u-break-sm-mt-xs {
        margin-top: .5em
    }
    .u-break-sm-mr-xs {
        margin-right: .5em
    }
    .u-break-sm-mb-xs {
        margin-bottom: .5em
    }
    .u-break-sm-ml-xs {
        margin-left: .5em
    }
    .u-break-sm-p-s {
        padding: .75em
    }
    .u-break-sm-pt-s {
        padding-top: .75em
    }
    .u-break-sm-pr-s {
        padding-right: .75em
    }
    .u-break-sm-pb-s {
        padding-bottom: .75em
    }
    .u-break-sm-pl-s {
        padding-left: .75em
    }
    .u-break-sm-m-s {
        margin: .75em
    }
    .u-break-sm-mt-s {
        margin-top: .75em
    }
    .u-break-sm-mr-s {
        margin-right: .75em
    }
    .u-break-sm-mb-s {
        margin-bottom: .75em
    }
    .u-break-sm-ml-s {
        margin-left: .75em
    }
    .u-break-sm-p-ms {
        padding: 2em
    }
    .u-break-sm-pt-ms {
        padding-top: 2em
    }
    .u-break-sm-pr-ms {
        padding-right: 2em
    }
    .u-break-sm-pb-ms {
        padding-bottom: 2em
    }
    .u-break-sm-pl-ms {
        padding-left: 2em
    }
    .u-break-sm-m-ms {
        margin: 2em
    }
    .u-break-sm-mt-ms {
        margin-top: 2em
    }
    .u-break-sm-mr-ms {
        margin-right: 2em
    }
    .u-break-sm-mb-ms {
        margin-bottom: 2em
    }
    .u-break-sm-ml-ms {
        margin-left: 2em
    }
    .u-break-sm-p-m {
        padding: 2.25em
    }
    .u-break-sm-pt-m {
        padding-top: 2.25em
    }
    .u-break-sm-pr-m {
        padding-right: 2.25em
    }
    .u-break-sm-pb-m {
        padding-bottom: 2.25em
    }
    .u-break-sm-pl-m {
        padding-left: 2.25em
    }
    .u-break-sm-m-m {
        margin: 2.25em
    }
    .u-break-sm-mt-m {
        margin-top: 2.25em
    }
    .u-break-sm-mr-m {
        margin-right: 2.25em
    }
    .u-break-sm-mb-m {
        margin-bottom: 2.25em
    }
    .u-break-sm-ml-m {
        margin-left: 2.25em
    }
    .u-break-sm-p-ml {
        padding: 2.85em
    }
    .u-break-sm-pt-ml {
        padding-top: 2.85em
    }
    .u-break-sm-pr-ml {
        padding-right: 2.85em
    }
    .u-break-sm-pb-ml {
        padding-bottom: 2.85em
    }
    .u-break-sm-pl-ml {
        padding-left: 2.85em
    }
    .u-break-sm-m-ml {
        margin: 2.85em
    }
    .u-break-sm-mt-ml {
        margin-top: 2.85em
    }
    .u-break-sm-mr-ml {
        margin-right: 2.85em
    }
    .u-break-sm-mb-ml {
        margin-bottom: 2.85em
    }
    .u-break-sm-ml-ml {
        margin-left: 2.85em
    }
    .u-break-sm-p-l {
        padding: 3.5em
    }
    .u-break-sm-pt-l {
        padding-top: 3.5em
    }
    .u-break-sm-pr-l {
        padding-right: 3.5em
    }
    .u-break-sm-pb-l {
        padding-bottom: 3.5em
    }
    .u-break-sm-pl-l {
        padding-left: 3.5em
    }
    .u-break-sm-m-l {
        margin: 3.5em
    }
    .u-break-sm-mt-l {
        margin-top: 3.5em
    }
    .u-break-sm-mr-l {
        margin-right: 3.5em
    }
    .u-break-sm-mb-l {
        margin-bottom: 3.5em
    }
    .u-break-sm-ml-l {
        margin-left: 3.5em
    }
    .u-break-sm-p-xl {
        padding: 4.5em
    }
    .u-break-sm-pt-xl {
        padding-top: 4.5em
    }
    .u-break-sm-pr-xl {
        padding-right: 4.5em
    }
    .u-break-sm-pb-xl {
        padding-bottom: 4.5em
    }
    .u-break-sm-pl-xl {
        padding-left: 4.5em
    }
    .u-break-sm-m-xl {
        margin: 4.5em
    }
    .u-break-sm-mt-xl {
        margin-top: 4.5em
    }
    .u-break-sm-mr-xl {
        margin-right: 4.5em
    }
    .u-break-sm-mb-xl {
        margin-bottom: 4.5em
    }
    .u-break-sm-ml-xl {
        margin-left: 4.5em
    }
    .u-break-sm-p-xxl {
        padding: 5.5em
    }
    .u-break-sm-pt-xxl {
        padding-top: 5.5em
    }
    .u-break-sm-pr-xxl {
        padding-right: 5.5em
    }
    .u-break-sm-pb-xxl {
        padding-bottom: 5.5em
    }
    .u-break-sm-pl-xxl {
        padding-left: 5.5em
    }
    .u-break-sm-m-xxl {
        margin: 5.5em
    }
    .u-break-sm-mt-xxl {
        margin-top: 5.5em
    }
    .u-break-sm-mr-xxl {
        margin-right: 5.5em
    }
    .u-break-sm-mb-xxl {
        margin-bottom: 5.5em
    }
    .u-break-sm-ml-xxl {
        margin-left: 5.5em
    }
    .u-break-sm-p-gutter {
        padding: 15px
    }
    .u-break-sm-pt-gutter {
        padding-top: 15px
    }
    .u-break-sm-pr-gutter {
        padding-right: 15px
    }
    .u-break-sm-pb-gutter {
        padding-bottom: 15px
    }
    .u-break-sm-pl-gutter {
        padding-left: 15px
    }
    .u-break-sm-m-gutter {
        margin: 15px
    }
    .u-break-sm-mt-gutter {
        margin-top: 15px
    }
    .u-break-sm-mr-gutter {
        margin-right: 15px
    }
    .u-break-sm-mb-gutter {
        margin-bottom: 15px
    }
    .u-break-sm-ml-gutter {
        margin-left: 15px
    }
    .u-break-sm-ml-auto {
        margin-left: auto
    }
    .u-break-sm-mr-auto {
        margin-right: auto
    }
    .c-row--md .c-row__content {
        margin-top: 0
    }
    .c-col-md-12_ {
        width: 97%
    }
    .c-col-md-11_ {
        width: 88.66667%
    }
    .c-col-md-10_ {
        width: 80.33333%
    }
    .c-col-md-9_ {
        width: 72%
    }
    .c-col-md-8_ {
        width: 63.66667%
    }
    .c-col-md-7_ {
        width: 55.33333%
    }
    .c-col-md-6_ {
        width: 47%
    }
    .c-col-md-5_ {
        width: 38.66667%
    }
    .c-col-md-4_ {
        width: 30.33333%
    }
    .c-col-md-3_ {
        width: 22%
    }
    .c-col-md-2_ {
        width: 13.66667%
    }
    .c-col-md-1_ {
        width: 5.33333%
    }
    .c-col-md-12 {
        width: 100%
    }
    .c-col-md-11 {
        width: 91.66666667%
    }
    .c-col-md-10 {
        width: 83.33333333%
    }
    .c-col-md-9 {
        width: 75%
    }
    .c-col-md-8 {
        width: 66.66666667%
    }
    .c-col-md-7 {
        width: 58.33333333%
    }
    .c-col-md-6 {
        width: 50%
    }
    .c-col-md-5 {
        width: 41.66666667%
    }
    .c-col-md-4 {
        width: 33.33333333%
    }
    .c-col-md-3 {
        width: 25%
    }
    .c-col-md-2 {
        width: 16.66666667%
    }
    .c-col-md-1 {
        width: 8.33333333%
    }
    .c-col-md-auto {
        width: auto
    }
    .p-home-about .p-textbox__normal--lh200p:after,
    .p-home-about .p-textbox__normal--lh200p:before {
        content: ""
    }
    .p-home-about__contents .c-flex--11auto:nth-child(2) {
        padding-top: 40px
    }
    .p-mailform-table.is-error tbody tr td {
        padding-right: 20px
    }
    .p-mailform-table__input--address .p-mailform-table__item:nth-child(2) {
        margin-top: 0
    }
    .p-mailform-table__item [name=mailform_name] {
        width: 370px
    }
    .p-mailform-table__item [name^=mailform_email] {
        width: 100%
    }
    .p-mailform-table__item [name=mailform_fax],
    .p-mailform-table__item [name=mailform_tel] {
        width: 370px
    }
    .p-mailform-table__item [name=mailform_region] {
        width: 195px;
        height: 30px
    }
    .p-mailform-table__item [name=mailform_address],
    .p-mailform-table__item [name=mailform_locality] {
        width: 100%
    }
    .p-mailform-table__item [name=mailform_contact] {
        height: 200px;
        width: 100%
    }
    .p-mailform-table tbody th {
        border-right-color: #fff;
        width: 200px;
        vertical-align: top
    }
    .u-over-md-d {
        display: inherit
    }
    .u-over-md-n {
        display: none
    }
    .no-js .u-nojs-over-md-d {
        display: inherit
    }
    .no-js .u-nojs-over-md-n {
        display: none
    }
}

@media print,
screen and (min-width:1024px) {
    html {
        width: auto
    }
    .c-row--lg .c-row__content {
        margin-top: 0
    }
    .c-col-lg-12_ {
        width: 97%
    }
    .c-col-lg-11_ {
        width: 88.66667%
    }
    .c-col-lg-10_ {
        width: 80.33333%
    }
    .c-col-lg-9_ {
        width: 72%
    }
    .c-col-lg-8_ {
        width: 63.66667%
    }
    .c-col-lg-7_ {
        width: 55.33333%
    }
    .c-col-lg-6_ {
        width: 47%
    }
    .c-col-lg-5_ {
        width: 38.66667%
    }
    .c-col-lg-4_ {
        width: 30.33333%
    }
    .c-col-lg-3_ {
        width: 22%
    }
    .c-col-lg-2_ {
        width: 13.66667%
    }
    .c-col-lg-1_ {
        width: 5.33333%
    }
    .c-col-lg-12 {
        width: 100%
    }
    .c-col-lg-11 {
        width: 91.66666667%
    }
    .c-col-lg-10 {
        width: 83.33333333%
    }
    .c-col-lg-9 {
        width: 75%
    }
    .c-col-lg-8 {
        width: 66.66666667%
    }
    .c-col-lg-7 {
        width: 58.33333333%
    }
    .c-col-lg-6 {
        width: 50%
    }
    .c-col-lg-5 {
        width: 41.66666667%
    }
    .c-col-lg-4 {
        width: 33.33333333%
    }
    .c-col-lg-3 {
        width: 25%
    }
    .c-col-lg-2 {
        width: 16.66666667%
    }
    .c-col-lg-1 {
        width: 8.33333333%
    }
    .c-col-lg-auto {
        width: auto
    }
    .p-article-sub {
        border-radius: 8px;
        background-color: #fff;
        -webkit-box-shadow: 0 0 10px hsla(0, 0%, 80%, .3);
        box-shadow: 0 0 10px hsla(0, 0%, 80%, .3);
        padding: 20px 10px 40px
    }
    .u-over-lg-d {
        display: inherit
    }
    .u-over-lg-n {
        display: none
    }
    .no-js .u-nojs-over-lg-d {
        display: inherit
    }
    .no-js .u-nojs-over-lg-n {
        display: none
    }
}

@media print,
screen and (min-width:1170px) {
    html {
        width: auto
    }
    .c-row--base .c-row__content {
        margin-top: 0
    }
    .c-col-base-12_ {
        width: 97%
    }
    .c-col-base-11_ {
        width: 88.66667%
    }
    .c-col-base-10_ {
        width: 80.33333%
    }
    .c-col-base-9_ {
        width: 72%
    }
    .c-col-base-8_ {
        width: 63.66667%
    }
    .c-col-base-7_ {
        width: 55.33333%
    }
    .c-col-base-6_ {
        width: 47%
    }
    .c-col-base-5_ {
        width: 38.66667%
    }
    .c-col-base-4_ {
        width: 30.33333%
    }
    .c-col-base-3_ {
        width: 22%
    }
    .c-col-base-2_ {
        width: 13.66667%
    }
    .c-col-base-1_ {
        width: 5.33333%
    }
    .c-col-base-12 {
        width: 100%
    }
    .c-col-base-11 {
        width: 91.66666667%
    }
    .c-col-base-10 {
        width: 83.33333333%
    }
    .c-col-base-9 {
        width: 75%
    }
    .c-col-base-8 {
        width: 66.66666667%
    }
    .c-col-base-7 {
        width: 58.33333333%
    }
    .c-col-base-6 {
        width: 50%
    }
    .c-col-base-5 {
        width: 41.66666667%
    }
    .c-col-base-4 {
        width: 33.33333333%
    }
    .c-col-base-3 {
        width: 25%
    }
    .c-col-base-2 {
        width: 16.66666667%
    }
    .c-col-base-1 {
        width: 8.33333333%
    }
    .c-col-base-auto {
        width: auto
    }
    .u-over-base-d {
        display: inherit
    }
    .u-over-base-n {
        display: none
    }
    .no-js .u-nojs-over-base-d {
        display: inherit
    }
    .no-js .u-nojs-over-base-n {
        display: none
    }
}

@media (min-width:768px) {
    a[href*="tel:"] {
        pointer-events: none;
        cursor: default;
        text-decoration: none
    }
}

@media screen and (min-width:331px) and (max-width:567px) {
    .hero--img .slide-copy {
        font-size: 170%;
        margin-top: 65px
    }
    .l-hero__jp {
        font-size: 2.7rem
    }
}

@media only screen and (-webkit-min-device-pixel-ratio:2) and (min-width:768px) {
    .hero--img .slide01 .slide_img {
        background: url(../../assets/img/home/kv-a@2x.jpg) no-repeat
    }
    .hero--img .slide02 .slide_img {
        background: url(https://linkwin-client.pecori.jp/kashima-dc-test/wp-content/uploads/2026/07/clinic-img.jpg) no-repeat
    }
    .hero--img .slide03 .slide_img {
        background: url(../../assets/img/home/kv-c@2x.jpg) no-repeat
    }
    .slide-hero .slide01 .slide_img,
    .slide-hero .slide02 .slide_img,
    .slide-hero .slide03 .slide_img {
        background-position: 50%
    }
}

@media only screen and (-webkit-min-device-pixel-ratio:2) and (max-width:767px) {
    .hero--img .slide01 .slide_img {
        background: url(../../assets/img/home/kv-a-sp@2x.jpg) no-repeat;
        background-position: 45% 100%
    }
    .hero--img .slide02 .slide_img {
        background: url(https://linkwin-client.pecori.jp/kashima-dc-test/wp-content/uploads/2026/07/clinic-img.jpg) no-repeat;
        background-position: 92% 100%
    }
    .hero--img .slide03 .slide_img {
        background: url(../../assets/img/home/kv-c-sp@2x.jpg) no-repeat;
        background-position: 13% 100%
    }
}

@media only screen and (-webkit-min-device-pixel-ratio:2) and (max-width:567px) {
    .hero--img .slide03 .slide_img {
        background-position: 23% 100%
    }
}

@media only screen and (-webkit-min-device-pixel-ratio:2) {
    .slide-hero .slide01 .slide_img,
    .slide-hero .slide02 .slide_img,
    .slide-hero .slide03 .slide_img {
        background-size: cover
    }
    .p-features__intro:before {
        background: url(../../assets/img/features/intro-bg01@2x.png) no-repeat 0 100%;
        background-size: cover
    }
    .p-features__intro:after {
        background: url(../../assets/img/features/intro-bg02@2x.png) no-repeat 0 100%;
        background-size: cover
    }
    .l-hero {
        background-image: url(../../assets/img/common/bg-hero@2x.jpg)
    }
    .p-parts-bnr__wrap {
        background: url(../../assets/img/parts/bnr-bg@2x.png) no-repeat 50%;
        background-size: 100% 100%
    }
}

@media screen and (min-width:768px) and (max-width:1350px) {
    .p-about__principle__img .js-objectfit {
        height: 500px
    }
    .p-about__principle__content__inner {
        padding: 35px 50px 40px 60px
    }
}

@media screen and (min-width:1350px) {
    .p-about__principle__img .js-objectfit:before {
        padding-top: 71.42857%
    }
}

@media screen and (min-width:1700px) {
    .p-about__principle__img .js-objectfit:before {
        padding-top: 59.52381%
    }
}

@media screen and (min-width:568px) and (max-width:1180px) {
    .p-features__intro {
        padding: 0 0 110px
    }
    .p-features__intro:before {
        width: 261px;
        height: 284px;
        bottom: -130px
    }
    .p-features__intro:after {
        width: 261px;
        height: 348px;
        bottom: -175px
    }
}

@media screen and (min-width:1400px) {
    .l-hero__ttl {
        padding-top: 35px
    }
}

@media screen and (min-width:1181px) {
    .p-medicalnav:first-child {
        //width: 20.51282%
    }
    .p-medicalnav:nth-of-type(2) {
        //width: 26.49573%
    }
    .p-medicalnav:last-child {
        width: 35.89744%
    }
    .p-medicalnav__label {
        white-space: nowrap
    }
}

@media(max-width: 767px) {
    .l-footer__inner {
        flex-direction: column-reverse;
    }
    .l-footer-map iframe {
        height: 300px;
    }
}

.p-features__list__ttl {
    position: absolute;
    left: 50%;
    bottom: 21px;
    transform: translateX(-50%);
    width: 90%;

    color: #333;
    text-align: center;
    font-size: 2.1rem;
    font-weight: 700;
    line-height: 1.4;
    padding: 14px 20px;

    background: linear-gradient(
        90deg,
        rgba(255,255,255,0) 0%,
        rgba(255,255,255,.92) 10%,
        rgba(255,255,255,.92) 90%,
        rgba(255,255,255,0) 100%
    );

    backdrop-filter: blur(4px);
    -webkit-backdrop-filter: blur(4px);

    text-shadow: none;
    overflow: hidden;
}

.p-features__list__ttl::before,
.p-features__list__ttl::after {
    content: "";
    position: absolute;
    left: 20px;      /* 左右を内側に */
    right: 20px;
    height: 1px;
    background: rgba(120,120,120,.5);
}

.p-features__list__ttl::before {
    top: 6px;        /* 上の線 */
}

.p-features__list__ttl::after {
    bottom: 6px;     /* 下の線 */
}