@charset "utf-8";
@import url(https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@300;400;500&family=Noto+Serif+JP:wght@300;400;600;700&family=Bodoni+Moda:wght@400;500;600;700&family=Oswald:wght@200;300;400;500;600;700&family=Shippori+Mincho:wght@400;500;600&display=swap);
@import url(https://fonts.googleapis.com/css2?family=Playfair+Display:wght@400;500;600;700&display=swap);

@font-face {
    font-family: cYuGothicM;
    font-weight: 100;
    src: local("YuGothic-Light"), local("Yu Gothic Light")
}

@font-face {
    font-family: cYuGothicM;
    font-weight: 200;
    src: local("YuGothic-Light"), local("Yu Gothic Light")
}

@font-face {
    font-family: cYuGothicM;
    font-weight: 300;
    src: local("YuGothic-Regular"), local("Yu Gothic")
}

@font-face {
    font-family: cYuGothicM;
    font-weight: 500;
    src: local("YuGothic-Medium"), local("Yu Gothic Medium"), local("YuGothic-Regular")
}

@font-face {
    font-family: cYuGothicM;
    font-weight: 400;
    src: local("YuGothic-Medium"), local("Yu Gothic Medium"), local("YuGothic-Regular")
}

@font-face {
    font-family: Roboto Condensed;
    font-style: normal;
    font-weight: 400;
    src: local("Roboto Condensed"), local("RobotoCondensed-Regular"), url(https://fonts.gstatic.com/s/robotocondensed/v13/Zd2E9abXLFGSr9G3YK2MsDrvev4WAjW489CRDHIkJ90.woff2) format("woff2");
    unicode-range: u+0460-052f, u+20b4, u+2de0-2dff, u+a640-a69f
}

@font-face {
    font-family: Roboto Condensed;
    font-style: normal;
    font-weight: 400;
    src: local("Roboto Condensed"), local("RobotoCondensed-Regular"), url(https://fonts.gstatic.com/s/robotocondensed/v13/Zd2E9abXLFGSr9G3YK2MsCGXDOnx9ptx3UTSPTrfsgk.woff2) format("woff2");
    unicode-range: u+0400-045f, u+0490-0491, u+04b0-04b1, u+2116
}

@font-face {
    font-family: Roboto Condensed;
    font-style: normal;
    font-weight: 400;
    src: local("Roboto Condensed"), local("RobotoCondensed-Regular"), url(https://fonts.gstatic.com/s/robotocondensed/v13/Zd2E9abXLFGSr9G3YK2MsAZ98xO_Wnt-JIem4AuLGfs.woff2) format("woff2");
    unicode-range: u+1f??
}

@font-face {
    font-family: Roboto Condensed;
    font-style: normal;
    font-weight: 400;
    src: local("Roboto Condensed"), local("RobotoCondensed-Regular"), url(https://fonts.gstatic.com/s/robotocondensed/v13/Zd2E9abXLFGSr9G3YK2MsE1G989qbVg6RT5ly5jB8V8.woff2) format("woff2");
    unicode-range: u+0370-03ff
}

@font-face {
    font-family: Roboto Condensed;
    font-style: normal;
    font-weight: 400;
    src: local("Roboto Condensed"), local("RobotoCondensed-Regular"), url(https://fonts.gstatic.com/s/robotocondensed/v13/Zd2E9abXLFGSr9G3YK2MsJ84zb0nVte6liF9gGtpo1Y.woff2) format("woff2");
    unicode-range: u+0102-0103, u+1ea0-1ef9, u+20ab
}

@font-face {
    font-family: Roboto Condensed;
    font-style: normal;
    font-weight: 400;
    src: local("Roboto Condensed"), local("RobotoCondensed-Regular"), url(https://fonts.gstatic.com/s/robotocondensed/v13/Zd2E9abXLFGSr9G3YK2MsD86pq2NkPzVgw_9lpT6RGI.woff2) format("woff2");
    unicode-range: u+0100-024f, u+1e??, u+20a0-20ab, u+20ad-20cf, u+2c60-2c7f, u+a720-a7ff
}

@font-face {
    font-family: Roboto Condensed;
    font-style: normal;
    font-weight: 400;
    src: local("Roboto Condensed"), local("RobotoCondensed-Regular"), url(https://fonts.gstatic.com/s/robotocondensed/v13/Zd2E9abXLFGSr9G3YK2MsDAdhzWOYhqHvOZMRGaEyPo.woff2) format("woff2");
    unicode-range: u+00??, u+0131, u+0152-0153, u+02c6, u+02da, u+02dc, u+2000-206f, u+2074, u+20ac, u+2212, u+2215
}

@font-face {
    font-family: Old Standard TT;
    font-style: normal;
    font-weight: 400;
    src: local("Old Standard TT Regular"), local("OldStandardTT-Regular"), url(https://fonts.gstatic.com/s/oldstandardtt/v8/n6RTCDcIPWSE8UNBa4k-DNfpymPPb9zLZSC2SzI6Gas.woff2) format("woff2");
    unicode-range: u+0460-052f, u+20b4, u+2de0-2dff, u+a640-a69f
}

@font-face {
    font-family: Old Standard TT;
    font-style: normal;
    font-weight: 400;
    src: local("Old Standard TT Regular"), local("OldStandardTT-Regular"), url(https://fonts.gstatic.com/s/oldstandardtt/v8/n6RTCDcIPWSE8UNBa4k-DAMmvcNMumFIXbYli0LIspQ.woff2) format("woff2");
    unicode-range: u+0400-045f, u+0490-0491, u+04b0-04b1, u+2116
}

@font-face {
    font-family: Old Standard TT;
    font-style: normal;
    font-weight: 400;
    src: local("Old Standard TT Regular"), local("OldStandardTT-Regular"), url(https://fonts.gstatic.com/s/oldstandardtt/v8/n6RTCDcIPWSE8UNBa4k-DGeTsEkOZa5HBB5JEDzRDgE.woff2) format("woff2");
    unicode-range: u+0102-0103, u+1ea0-1ef9, u+20ab
}

@font-face {
    font-family: Old Standard TT;
    font-style: normal;
    font-weight: 400;
    src: local("Old Standard TT Regular"), local("OldStandardTT-Regular"), url(https://fonts.gstatic.com/s/oldstandardtt/v8/n6RTCDcIPWSE8UNBa4k-DAWzrwVEjhpk9QfBGM28Oks.woff2) format("woff2");
    unicode-range: u+0100-024f, u+1e??, u+20a0-20ab, u+20ad-20cf, u+2c60-2c7f, u+a720-a7ff
}

@font-face {
    font-family: Old Standard TT;
    font-style: normal;
    font-weight: 400;
    src: local("Old Standard TT Regular"), local("OldStandardTT-Regular"), url(https://fonts.gstatic.com/s/oldstandardtt/v8/n6RTCDcIPWSE8UNBa4k-DG75SyxP8F_Nt1CRRMel2UU.woff2) format("woff2");
    unicode-range: u+00??, u+0131, u+0152-0153, u+02c6, u+02da, u+02dc, u+2000-206f, u+2074, u+20ac, u+2212, u+2215
}

@font-face {
    font-family: Old Standard TT;
    font-style: normal;
    font-weight: 700;
    src: local("Old Standard TT Bold"), local("OldStandardTT-Bold"), url(https://fonts.gstatic.com/s/oldstandardtt/v8/5Ywdce7XEbTSbxs__4X1_EoF_GGlGlGw9uib-tOAyGQ.woff2) format("woff2");
    unicode-range: u+0460-052f, u+20b4, u+2de0-2dff, u+a640-a69f
}

@font-face {
    font-family: Old Standard TT;
    font-style: normal;
    font-weight: 700;
    src: local("Old Standard TT Bold"), local("OldStandardTT-Bold"), url(https://fonts.gstatic.com/s/oldstandardtt/v8/5Ywdce7XEbTSbxs__4X1_M2bTsyIypEFKfIkuNtkUu4.woff2) format("woff2");
    unicode-range: u+0400-045f, u+0490-0491, u+04b0-04b1, u+2116
}

@font-face {
    font-family: Old Standard TT;
    font-style: normal;
    font-weight: 700;
    src: local("Old Standard TT Bold"), local("OldStandardTT-Bold"), url(https://fonts.gstatic.com/s/oldstandardtt/v8/5Ywdce7XEbTSbxs__4X1_HwQqmbWK2qlB9UkHqXH08c.woff2) format("woff2");
    unicode-range: u+0102-0103, u+1ea0-1ef9, u+20ab
}

@font-face {
    font-family: Old Standard TT;
    font-style: normal;
    font-weight: 700;
    src: local("Old Standard TT Bold"), local("OldStandardTT-Bold"), url(https://fonts.gstatic.com/s/oldstandardtt/v8/5Ywdce7XEbTSbxs__4X1_I7Afe0kkO8QAMRnHYxIsdc.woff2) format("woff2");
    unicode-range: u+0100-024f, u+1e??, u+20a0-20ab, u+20ad-20cf, u+2c60-2c7f, u+a720-a7ff
}

@font-face {
    font-family: Old Standard TT;
    font-style: normal;
    font-weight: 700;
    src: local("Old Standard TT Bold"), local("OldStandardTT-Bold"), url(https://fonts.gstatic.com/s/oldstandardtt/v8/5Ywdce7XEbTSbxs__4X1_C0jGk3ScAiZpxLRtv3VAEU.woff2) format("woff2");
    unicode-range: u+00??, u+0131, u+0152-0153, u+02c6, u+02da, u+02dc, u+2000-206f, u+2074, u+20ac, u+2212, u+2215
}

@font-face {
    font-family: Old Standard TT;
    font-style: italic;
    font-weight: 400;
    src: local("Old Standard TT Italic"), local("OldStandardTT-Italic"), url(https://fonts.gstatic.com/s/oldstandardtt/v8/QQT_AUSp4AV4dpJfIN7U5JlX7oknSkwAUcMBkodIJQA.woff2) format("woff2");
    unicode-range: u+0460-052f, u+20b4, u+2de0-2dff, u+a640-a69f
}

@font-face {
    font-family: Old Standard TT;
    font-style: italic;
    font-weight: 400;
    src: local("Old Standard TT Italic"), local("OldStandardTT-Italic"), url(https://fonts.gstatic.com/s/oldstandardtt/v8/QQT_AUSp4AV4dpJfIN7U5HyE3vcQihyGAl-U-mZ3PaA.woff2) format("woff2");
    unicode-range: u+0400-045f, u+0490-0491, u+04b0-04b1, u+2116
}

@font-face {
    font-family: Old Standard TT;
    font-style: italic;
    font-weight: 400;
    src: local("Old Standard TT Italic"), local("OldStandardTT-Italic"), url(https://fonts.gstatic.com/s/oldstandardtt/v8/QQT_AUSp4AV4dpJfIN7U5K8dxd-OqlT9nWAju7-gwEM.woff2) format("woff2");
    unicode-range: u+0102-0103, u+1ea0-1ef9, u+20ab
}

@font-face {
    font-family: Old Standard TT;
    font-style: italic;
    font-weight: 400;
    src: local("Old Standard TT Italic"), local("OldStandardTT-Italic"), url(https://fonts.gstatic.com/s/oldstandardtt/v8/QQT_AUSp4AV4dpJfIN7U5MVAj6uMzoRPLeA1vfihjw4.woff2) format("woff2");
    unicode-range: u+0100-024f, u+1e??, u+20a0-20ab, u+20ad-20cf, u+2c60-2c7f, u+a720-a7ff
}

@font-face {
    font-family: Old Standard TT;
    font-style: italic;
    font-weight: 400;
    src: local("Old Standard TT Italic"), local("OldStandardTT-Italic"), url(https://fonts.gstatic.com/s/oldstandardtt/v8/QQT_AUSp4AV4dpJfIN7U5FQ6NBT6gvjJm6dP1MVY-i0.woff2) format("woff2");
    unicode-range: u+00??, u+0131, u+0152-0153, u+02c6, u+02da, u+02dc, u+2000-206f, u+2074, u+20ac, u+2212, u+2215
}

@font-face {
    font-family: Sawarabi Mincho;
    font-style: normal;
    font-weight: 400;
    src: url(https://fonts.gstatic.com/ea/sawarabimincho/v1/SawarabiMincho-Regular.eot);
    src: url(https://fonts.gstatic.com/ea/sawarabimincho/v1/SawarabiMincho-Regular.eot?#iefix) format("embedded-opentype"), url(https://fonts.gstatic.com/ea/sawarabimincho/v1/SawarabiMincho-Regular.woff2) format("woff2"), url(https://fonts.gstatic.com/ea/sawarabimincho/v1/SawarabiMincho-Regular.woff) format("woff"), url(https://fonts.gstatic.com/ea/sawarabimincho/v1/SawarabiMincho-Regular.ttf) format("truetype")
}

@font-face {
    font-family: Sawarabi Gothic;
    font-style: normal;
    font-weight: 400;
    src: url(https://fonts.gstatic.com/ea/sawarabigothic/v1/SawarabiGothic-Regular.eot);
    src: url(https://fonts.gstatic.com/ea/sawarabigothic/v1/SawarabiGothic-Regular.eot?#iefix) format("embedded-opentype"), url(https://fonts.gstatic.com/ea/sawarabigothic/v1/SawarabiGothic-Regular.woff2) format("woff2"), url(https://fonts.gstatic.com/ea/sawarabigothic/v1/SawarabiGothic-Regular.woff) format("woff"), url(https://fonts.gstatic.com/ea/sawarabigothic/v1/SawarabiGothic-Regular.ttf) format("truetype")
}

@font-face {
    font-family: Hannari;
    font-style: normal;
    font-weight: 400;
    src: url(https://fonts.gstatic.com/ea/hannari/v1/Hannari-Regular.eot);
    src: url(https://fonts.gstatic.com/ea/hannari/v1/Hannari-Regular.eot?#iefix) format("embedded-opentype"), url(https://fonts.gstatic.com/ea/hannari/v1/Hannari-Regular.woff2) format("woff2"), url(https://fonts.gstatic.com/ea/hannari/v1/Hannari-Regular.woff) format("woff"), url(https://fonts.gstatic.com/ea/hannari/v1/Hannari-Regular.ttf) format("truetype")
}

@font-face {
    font-display: swap;
    font-family: Oswald;
    font-style: normal;
    font-weight: 400;
    src: url(../../assets/font/oswald-v30-latin-regular.eot);
    src: local(""), url(../../assets/font/oswald-v30-latin-regular.eot?#iefix) format("embedded-opentype"), url(../../assets/font/oswald-v30-latin-regular.woff2) format("woff2"), url(../../assets/font/oswald-v30-latin-regular.woff) format("woff"), url(../../assets/font/oswald-v30-latin-regular.ttf) format("truetype"), url(../../assets/font/oswald-v30-latin-regular.svg#Oswald) format("svg")
}

@font-face {
    font-family: FontAwesome;
    font-style: normal;
    font-weight: 400;
    src: url(../../assets/font/fontawesome-webfont.eot);
    src: url(../../assets/font/fontawesome-webfont.eot) format("embedded-opentype"), url(../../assets/font/fontawesome-webfont.woff2) format("woff2"), url(../../assets/font/fontawesome-webfont.woff) format("woff"), url(../../assets/font/fontawesome-webfont.ttf) format("truetype"), url(../../assets/font/fontawesome-webfont.svg) format("svg")
}

.fa {
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    display: inline-block;
    font: normal normal normal 14px/1 FontAwesome;
    font-size: inherit;
    text-rendering: auto
}

.fa-lg {
    font-size: 1.33333em;
    line-height: .75em;
    vertical-align: -15%
}

.fa-2x {
    font-size: 2em
}

.fa-3x {
    font-size: 3em
}

.fa-4x {
    font-size: 4em
}

.fa-5x {
    font-size: 5em
}

.fa-fw {
    text-align: center;
    width: 1.28571em
}

.fa-ul {
    list-style-type: none;
    margin-left: 2.14286em;
    padding-left: 0
}

.fa-ul>li {
    position: relative
}

.fa-li {
    left: -2.14286em;
    position: absolute;
    text-align: center;
    top: .14286em;
    width: 2.14286em
}

.fa-li.fa-lg {
    left: -1.85714em
}

.fa-border {
    border: .08em solid #eee;
    border-radius: .1em;
    padding: .2em .25em .15em
}

.fa-pull-left {
    float: left
}

.fa-pull-right {
    float: right
}

.fa.fa-pull-left {
    margin-right: .3em
}

.fa.fa-pull-right {
    margin-left: .3em
}

.pull-right {
    float: right
}

.pull-left {
    float: left
}

.fa.pull-left {
    margin-right: .3em
}

.fa.pull-right {
    margin-left: .3em
}

.fa-spin {
    -webkit-animation: fa-spin 2s linear infinite;
    animation: fa-spin 2s linear infinite
}

.fa-pulse {
    -webkit-animation: fa-spin 1s steps(8) infinite;
    animation: fa-spin 1s steps(8) infinite
}

.fa-rotate-90 {
    -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=1)";
    -webkit-transform: rotate(90deg);
    -ms-transform: rotate(90deg);
    transform: rotate(90deg)
}

.fa-rotate-180 {
    -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=2)";
    -webkit-transform: rotate(180deg);
    -ms-transform: rotate(180deg);
    transform: rotate(180deg)
}

.fa-rotate-270 {
    -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=3)";
    -webkit-transform: rotate(270deg);
    -ms-transform: rotate(270deg);
    transform: rotate(270deg)
}

.fa-flip-horizontal {
    -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=0, mirror=1)";
    -webkit-transform: scaleX(-1);
    -ms-transform: scaleX(-1);
    transform: scaleX(-1)
}

.fa-flip-vertical {
    -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)";
    -webkit-transform: scaleY(-1);
    -ms-transform: scaleY(-1);
    transform: scaleY(-1)
}

:root .fa-flip-horizontal,
:root .fa-flip-vertical,
:root .fa-rotate-180,
:root .fa-rotate-270,
:root .fa-rotate-90 {
    filter: none
}

.fa-stack {
    display: inline-block;
    height: 2em;
    line-height: 2em;
    position: relative;
    vertical-align: middle;
    width: 2em
}

.fa-stack-1x,
.fa-stack-2x {
    left: 0;
    position: absolute;
    text-align: center;
    width: 100%
}

.fa-stack-1x {
    line-height: inherit
}

.fa-stack-2x {
    font-size: 2em
}

.fa-inverse {
    color: #fff
}

.fa-chevron-left:before {
    content: "\f053"
}

.fa-chevron-right:before {
    content: "\f054"
}

.fa-chevron-up:before {
    content: "\f077"
}

.fa-chevron-down:before {
    content: "\f078"
}

.fa-angle-left:before {
    content: "\f104"
}

.fa-angle-right:before {
    content: "\f105"
}

.fa-angle-up:before {
    content: "\f106"
}

.fa-angle-down:before {
    content: "\f107"
}

.sr-only {
    clip: rect(0, 0, 0, 0);
    border: 0;
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px
}

.sr-only-focusable:active,
.sr-only-focusable:focus {
    clip: auto;
    height: auto;
    margin: 0;
    overflow: visible;
    position: static;
    width: auto
}

@font-face {
    font-family: icomoon;
    font-style: normal;
    font-weight: 400;
    src: url(../../assets/font/icomoon.eot);
    src: url(../../assets/font/icomoon.eot) format("embedded-opentype"), url(../../assets/font/icomoon.ttf) format("truetype"), url(../../assets/font/icomoon.woff) format("woff"), url(../../assets/font/icomoon.svg) format("svg")
}

[class*=" icon-"],
[class^=icon-] {
    speak: none;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    font-family: icomoon !important;
    font-style: normal;
    font-variant: normal;
    font-weight: 400;
    line-height: 1;
    text-transform: none
}

.icon-pencil:before {
    content: "\e905"
}

.icon-file-text2:before {
    content: "\e926"
}

.icon-folder-plus:before {
    content: "\e931"
}

.icon-folder-minus:before {
    content: "\e932"
}

.icon-phone:before {
    content: "\e942"
}

.icon-location:before {
    content: "\e947"
}

.icon-clock:before {
    content: "\e94e"
}

.icon-bubbles2:before {
    content: "\e96d"
}

.icon-user:before {
    content: "\e971"
}

.icon-clipboard:before {
    content: "\e9b8"
}

.icon-flag:before {
    content: "\e9cc"
}

.icon-bookmark:before {
    content: "\e9d2"
}

.icon-checkmark:before {
    content: "\ea10"
}

.icon-play3:before {
    content: "\ea1c"
}

.icon-table2:before {
    content: "\ea71"
}

.icon-new-tab:before {
    content: "\ea7e"
}

.icon-arrow-left2:before {
    content: "\ea40"
}

.icon-arrow-right2:before {
    content: "\ea3c"
}

@-moz-keyframes fa-spin {
    0% {
        -webkit-transform: rotate(0);
        transform: rotate(0)
    }

    to {
        -webkit-transform: rotate(359deg);
        transform: rotate(359deg)
    }
}

@-webkit-keyframes fa-spin {
    0% {
        -webkit-transform: rotate(0);
        transform: rotate(0)
    }

    to {
        -webkit-transform: rotate(359deg);
        transform: rotate(359deg)
    }
}

@-o-keyframes fa-spin {
    0% {
        -webkit-transform: rotate(0);
        transform: rotate(0)
    }

    to {
        -webkit-transform: rotate(359deg);
        transform: rotate(359deg)
    }
}

@keyframes fa-spin {
    0% {
        -webkit-transform: rotate(0);
        transform: rotate(0)
    }

    to {
        -webkit-transform: rotate(359deg);
        transform: rotate(359deg)
    }
}

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

html {
    line-height: 1
}

ol,
ul {
    list-style: none
}

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

caption,
td,
th {
    font-weight: 400;
    text-align: left;
    vertical-align: middle
}

blockquote,
q {
    quotes: none
}

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

a img {
    border: none
}

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

html {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    font-size: 10px;
    height: 100%
}

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

body {
    -webkit-text-size-adjust: 100%;
    font-feature-settings: "palt";
    word-wrap: break-word;
    background-color: #fff;
    color: #262626;
    font-family: Noto Sans JP, Roboto, -apple-system, BlinkMacSystemFont, Hiragino Kaku Gothic ProN, Hiragino Kaku Gothic Pro, Meiryo UI, Meiryo, sans-serif;
    font-size: 16px;
    font-size: 1.6rem;
    height: 100%;
    line-height: 1;
    overflow-wrap: break-word
}

.smooth {
    scroll-behavior: smooth
}

a {
    -webkit-tap-highlight-color: transparent;
    color: #5294ce;
    cursor: pointer;
    line-height: 1.5;
    text-decoration: none
}

a:hover {
    opacity: .7
}

p {
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 1.5
}

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

dd,
dt,
li {
    line-height: 1.6
}

picture {
    display: block
}

input[type=number],
input[type=text],
select,
textarea {
    font-size: 16px;
    font-size: 1.6rem
}

.pcnone {
    display: none !important
}

.spnone {
    display: block !important
}

@media only screen and (max-width:767px) {
    .pcnone {
        display: block !important
    }

    .spnone {
        display: none !important
    }
}

button,
input,
select,
textarea {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background: none;
    border: none;
    border-radius: 0;
    font-family: cYuGothicM, 游ゴシック Medium, Yu Gothic Medium, YuGothic, Sawarabi Gothic, Roboto, -apple-system, BlinkMacSystemFont, Hiragino Kaku Gothic ProN, Hiragino Kaku Gothic Pro, Meiryo UI, Meiryo, sans-serif;
    margin: 0;
    outline: none;
    padding: 0
}

input::-ms-clear,
input::-ms-reveal {
    visibility: hidden
}

textarea {
    resize: vertical
}

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

@media (min-width:768px) {
    .sp {
        display: none
    }

    .tab {
        display: block
    }

    #top .inner {
        margin: 0 auto
    }
}

@media (min-width:1031px) {
    .pc {
        display: block
    }

    .pc-none {
        display: none
    }
}

.contact-select {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background: none;
    background-color: transparent;
    border: none;
    border-radius: 0;
    font-family: cYuGothicM, 游ゴシック Medium, Yu Gothic Medium, YuGothic, Sawarabi Gothic, Roboto, -apple-system, BlinkMacSystemFont, Hiragino Kaku Gothic ProN, Hiragino Kaku Gothic Pro, Meiryo UI, Meiryo, sans-serif;
    margin: 0;
    outline: none;
    padding: 0
}

.contact-select-wrap {
    background-color: #fff;
    position: relative;
    z-index: 0
}

.contact-select-wrap:before {
    color: #646464;
    content: "\f078";
    font-family: FontAwesome;
    pointer-events: none;
    position: absolute;
    right: 10px;
    top: 50%;
    -webkit-transform: translateX(0) translateY(-50%);
    -moz-transform: translateX(0) translateY(-50%);
    -ms-transform: translateX(0) translateY(-50%);
    -o-transform: translateX(0) translateY(-50%);
    transform: translateX(0) translateY(-50%);
    z-index: 1
}

/* .clearfix {
    *zoom: 1
} */

.clearfix:after {
    clear: both;
    content: "";
    display: block
}

.wrapper {
    height: 100%;
    left: 0;
    padding-top: 113px;
    position: relative
}

@media screen and (max-width:1320px) {
    .wrapper {
        padding-top: 113px
    }
}

@media screen and (max-width:1230px) {
    .wrapper {
        padding-top: 108.5px
    }
}

@media screen and (max-width:1130px) {
    .wrapper {
        padding-top: 149.5px
    }
}

@media screen and (max-width:1125px) {
    .wrapper {
        padding-top: 149.5px
    }
}

@media screen and (max-width:899px) {
    .wrapper {
        padding-top: 89px
    }
}

.wrapper.is-lp-header,
.wrapper.is-short-header {
    padding-top: 108.5px
}

@media screen and (max-width:1320px) {

    .wrapper.is-lp-header,
    .wrapper.is-short-header {
        padding-top: 132.5px
    }
}

@media screen and (max-width:1230px) {

    .wrapper.is-lp-header,
    .wrapper.is-short-header {
        padding-top: 104px
    }
}

@media screen and (max-width:1130px) {

    .wrapper.is-lp-header,
    .wrapper.is-short-header {
        padding-top: 129.5px
    }
}

@media screen and (max-width:1030px) {

    .wrapper.is-lp-header,
    .wrapper.is-short-header {
        padding-top: 104px
    }
}

@media screen and (max-width:899px) {

    .wrapper.is-lp-header,
    .wrapper.is-short-header {
        padding-top: 65.5px
    }
}

.footer,
.header {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto
}

.container {
    -webkit-box-flex: 1;
    -ms-flex: 1 0 auto;
    flex: 1 0 auto;
    min-height: 0
}

.inner {
    margin: 0 auto;
    max-width: 980px;
    padding: 78px 10px 0
}

.inner.renewal-inner {
    max-width: 900px
}

.catalog-single .inner {
    max-width: 980px
}

@media screen and (max-width:767px) {
    .inner {
        padding: 55px 10px 0
    }
}

.single .main {
    padding-bottom: 100px;
    padding-top: 0
}

.single .salon .main {
    padding-bottom: 0
}

.side {
    padding-bottom: 100px;
    padding-top: 0
}

@media screen and (max-width:768px) {
    .single .main {
        padding: 0 0 60px
    }

    .single .salon .main {
        padding: 0
    }

    .side {
        padding: 40px 20px 0
    }
}

@media screen and (max-width:480px) {
    .single .main {
        padding: 0 0 30px
    }
}

#line-reserve.wrapper {
    padding-top: 88.8px
}

@media screen and (max-width:1024px) {
    #line-reserve.wrapper {
        padding-top: 90.4px
    }
}

@media screen and (max-width:899px) {
    #line-reserve.wrapper {
        padding-top: 73.5px
    }
}

.mfp-bg {
    background: #0b0b0b;
    opacity: .8;
    overflow: hidden;
    z-index: 1042
}

.mfp-bg,
.mfp-wrap {
    height: 100%;
    left: 0;
    position: fixed;
    top: 0;
    width: 100%
}

.mfp-wrap {
    -webkit-backface-visibility: hidden;
    outline: none !important;
    z-index: 1043
}

.mfp-container {
    box-sizing: border-box;
    height: 100%;
    left: 0;
    padding: 0 8px;
    position: absolute;
    text-align: center;
    top: 0;
    width: 100%
}

.mfp-container:before {
    content: "";
    display: inline-block;
    height: 100%;
    vertical-align: middle
}

.mfp-align-top .mfp-container:before {
    display: none
}

.mfp-content {
    display: inline-block;
    margin: 0 auto;
    position: relative;
    text-align: left;
    vertical-align: middle;
    z-index: 1045
}

.mfp-ajax-holder .mfp-content,
.mfp-inline-holder .mfp-content {
    cursor: auto;
    width: 100%
}

.mfp-ajax-cur {
    cursor: progress
}

.mfp-zoom-out-cur,
.mfp-zoom-out-cur .mfp-image-holder .mfp-close {
    cursor: -moz-zoom-out;
    cursor: -webkit-zoom-out;
    cursor: zoom-out
}

.mfp-zoom {
    cursor: pointer;
    cursor: -webkit-zoom-in;
    cursor: -moz-zoom-in;
    cursor: zoom-in
}

.mfp-auto-cursor .mfp-content {
    cursor: auto
}

.mfp-arrow,
.mfp-close,
.mfp-counter,
.mfp-preloader {
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none
}

.mfp-hide,
.mfp-loading.mfp-figure {
    display: none
}

.mfp-preloader {
    color: #ccc;
    left: 8px;
    margin-top: -.8em;
    position: absolute;
    right: 8px;
    text-align: center;
    top: 50%;
    width: auto;
    z-index: 1044
}

.mfp-preloader a {
    color: #ccc
}

.mfp-preloader a:hover {
    color: #fff
}

.mfp-s-error .mfp-content,
.mfp-s-ready .mfp-preloader {
    display: none
}

button.mfp-arrow,
button.mfp-close {
    -webkit-appearance: none;
    background: transparent;
    border: 0;
    box-shadow: none;
    cursor: pointer;
    display: block;
    outline: none;
    overflow: visible;
    padding: 0;
    touch-action: manipulation;
    z-index: 1046
}

button::-moz-focus-inner {
    border: 0;
    padding: 0
}

.mfp-close {
    color: #fff;
    font-family: Arial, Baskerville, monospace;
    font-size: 28px;
    font-style: normal;
    height: 44px;
    line-height: 44px;
    opacity: .65;
    padding: 0 0 18px 10px;
    position: absolute;
    right: 0;
    text-align: center;
    text-decoration: none;
    top: 0;
    width: 44px
}

.mfp-close:focus,
.mfp-close:hover {
    opacity: 1
}

.mfp-close:active {
    top: 1px
}

.mfp-close-btn-in .mfp-close {
    color: #333
}

.mfp-iframe-holder .mfp-close,
.mfp-image-holder .mfp-close {
    color: #fff;
    padding-right: 6px;
    right: -6px;
    text-align: right;
    width: 100%
}

.mfp-counter {
    color: #ccc;
    font-size: 12px;
    line-height: 18px;
    position: absolute;
    right: 0;
    top: 0;
    white-space: nowrap
}

.mfp-arrow {
    -webkit-tap-highlight-color: transparent;
    height: 110px;
    margin: -55px 0 0;
    opacity: .65;
    padding: 0;
    position: absolute;
    top: 50%;
    width: 90px
}

.mfp-arrow:active {
    margin-top: -54px
}

.mfp-arrow:focus,
.mfp-arrow:hover {
    opacity: 1
}

.mfp-arrow:after,
.mfp-arrow:before {
    border: inset transparent;
    content: "";
    display: block;
    height: 0;
    left: 0;
    margin-left: 35px;
    margin-top: 35px;
    position: absolute;
    top: 0;
    width: 0
}

.mfp-arrow:after {
    border-bottom-width: 13px;
    border-top-width: 13px;
    top: 8px
}

.mfp-arrow:before {
    border-bottom-width: 21px;
    border-top-width: 21px;
    opacity: .7
}

.mfp-arrow-left {
    left: 0
}

.mfp-arrow-left:after {
    border-right: 17px solid #fff;
    margin-left: 31px
}

.mfp-arrow-left:before {
    border-right: 27px solid #3f3f3f;
    margin-left: 25px
}

.mfp-arrow-right {
    right: 0
}

.mfp-arrow-right:after {
    border-left: 17px solid #fff;
    margin-left: 39px
}

.mfp-arrow-right:before {
    border-left: 27px solid #3f3f3f
}

.mfp-iframe-holder {
    padding-bottom: 40px;
    padding-top: 40px
}

.mfp-iframe-holder .mfp-content {
    line-height: 0;
    max-width: 900px;
    width: 100%
}

.mfp-iframe-holder .mfp-close {
    top: -40px
}

.mfp-iframe-scaler {
    height: 0;
    overflow: hidden;
    padding-top: 56.25%;
    width: 100%
}

.mfp-iframe-scaler iframe {
    background: #000;
    box-shadow: 0 0 8px rgba(0, 0, 0, .6);
    display: block;
    height: 100%;
    left: 0;
    position: absolute;
    top: 0;
    width: 100%
}

img.mfp-img {
    box-sizing: border-box;
    display: block;
    height: auto;
    margin: 0 auto;
    max-width: 100%;
    padding: 40px 0;
    width: auto
}

.mfp-figure,
img.mfp-img {
    line-height: 0
}

.mfp-figure:after {
    background: #444;
    bottom: 40px;
    box-shadow: 0 0 8px rgba(0, 0, 0, .6);
    content: "";
    display: block;
    height: auto;
    left: 0;
    position: absolute;
    right: 0;
    top: 40px;
    width: auto;
    z-index: -1
}

.mfp-figure small {
    color: #bdbdbd;
    display: block;
    font-size: 12px;
    line-height: 14px
}

.mfp-figure figure {
    margin: 0
}

.mfp-bottom-bar {
    cursor: auto;
    left: 0;
    margin-top: -36px;
    position: absolute;
    top: 100%;
    width: 100%
}

.mfp-title {
    word-wrap: break-word;
    color: #f3f3f3;
    line-height: 18px;
    padding-right: 36px;
    text-align: left
}

.mfp-image-holder .mfp-content {
    max-width: 100%
}

.mfp-gallery .mfp-image-holder .mfp-figure {
    cursor: pointer
}

@media screen and (max-height:300px),
screen and (max-width:800px) and (orientation:landscape) {
    .mfp-img-mobile .mfp-image-holder {
        padding-left: 0;
        padding-right: 0
    }

    .mfp-img-mobile img.mfp-img {
        padding: 0
    }

    .mfp-img-mobile .mfp-figure:after {
        bottom: 0;
        top: 0
    }

    .mfp-img-mobile .mfp-figure small {
        display: inline;
        margin-left: 5px
    }

    .mfp-img-mobile .mfp-bottom-bar {
        background: rgba(0, 0, 0, .6);
        bottom: 0;
        box-sizing: border-box;
        margin: 0;
        padding: 3px 5px;
        position: fixed;
        top: auto
    }

    .mfp-img-mobile .mfp-bottom-bar:empty {
        padding: 0
    }

    .mfp-img-mobile .mfp-counter {
        right: 5px;
        top: 3px
    }

    .mfp-img-mobile .mfp-close {
        background: rgba(0, 0, 0, .6);
        height: 35px;
        line-height: 35px;
        padding: 0;
        position: fixed;
        right: 0;
        text-align: center;
        top: 0;
        width: 35px
    }
}

@media (max-width:900px) {
    .mfp-arrow {
        -webkit-transform: scale(.75);
        transform: scale(.75)
    }

    .mfp-arrow-left {
        -webkit-transform-origin: 0;
        transform-origin: 0
    }

    .mfp-arrow-right {
        -webkit-transform-origin: 100%;
        transform-origin: 100%
    }

    .mfp-container {
        padding-left: 6px;
        padding-right: 6px
    }
}

.mfp-zoom-in .mfp-with-anim {
    opacity: 0;
    transform: scale(.8);
    transition: all .3s ease-in-out
}

.mfp-zoom-in .mfp-content {
    transform: scale(.9)
}

.mfp-zoom-in .mfp-arrow,
.mfp-zoom-in .mfp-content {
    opacity: 0;
    transition: all .3s ease-in-out
}

.mfp-zoom-in.mfp-bg {
    opacity: 0;
    transition: all .5s ease-out
}

.mfp-zoom-in.mfp-ready .mfp-content,
.mfp-zoom-in.mfp-ready .mfp-with-anim {
    opacity: 1;
    transform: scale(1)
}

.mfp-zoom-in.mfp-ready .mfp-arrow {
    opacity: 1
}

.mfp-zoom-in.mfp-ready.mfp-bg {
    opacity: .8
}

.mfp-zoom-in.mfp-removing .mfp-with-anim {
    opacity: 0;
    transform: scale(.8)
}

.mfp-zoom-in.mfp-removing .mfp-content {
    opacity: 0;
    transform: scale(.9)
}

.mfp-zoom-in.mfp-removing .mfp-arrow,
.mfp-zoom-in.mfp-removing.mfp-bg {
    opacity: 0
}

.mfp-newspaper .mfp-with-anim {
    opacity: 0;
    transform: scale(0) rotate(500deg);
    -webkit-transition: all .2s ease-in-out;
    transition: all .5s
}

.mfp-newspaper.mfp-bg {
    opacity: 0;
    transition: all .5s
}

.mfp-newspaper.mfp-ready .mfp-with-anim {
    opacity: 1;
    transform: scale(1) rotate(0)
}

.mfp-newspaper.mfp-ready.mfp-bg {
    opacity: .8
}

.mfp-newspaper.mfp-removing .mfp-with-anim {
    opacity: 0;
    transform: scale(0) rotate(500deg)
}

.mfp-newspaper.mfp-removing.mfp-bg {
    opacity: 0
}

.mfp-move-horizontal .mfp-with-anim {
    opacity: 0;
    transform: translateX(-50px);
    transition: all .3s
}

.mfp-move-horizontal.mfp-bg {
    opacity: 0;
    transition: all .3s
}

.mfp-move-horizontal.mfp-ready .mfp-with-anim {
    opacity: 1;
    transform: translateX(0)
}

.mfp-move-horizontal.mfp-ready.mfp-bg {
    opacity: .8
}

.mfp-move-horizontal.mfp-removing .mfp-with-anim {
    opacity: 0;
    transform: translateX(50px)
}

.mfp-move-horizontal.mfp-removing.mfp-bg {
    opacity: 0
}

.mfp-move-from-top .mfp-content {
    vertical-align: top
}

.mfp-move-from-top .mfp-with-anim {
    opacity: 0;
    transform: translateY(-100px);
    transition: all .2s
}

.mfp-move-from-top.mfp-bg {
    opacity: 0;
    transition: all .2s
}

.mfp-move-from-top.mfp-ready .mfp-with-anim {
    opacity: 1;
    transform: translateY(0)
}

.mfp-move-from-top.mfp-ready.mfp-bg {
    opacity: .8
}

.mfp-move-from-top.mfp-removing .mfp-with-anim {
    opacity: 0;
    transform: translateY(-50px)
}

.mfp-move-from-top.mfp-removing.mfp-bg {
    opacity: 0
}

.mfp-3d-unfold .mfp-content {
    perspective: 2000px
}

.mfp-3d-unfold .mfp-with-anim {
    opacity: 0;
    transform: rotateY(-60deg);
    transform-style: preserve-3d;
    transition: all .3s ease-in-out
}

.mfp-3d-unfold.mfp-bg {
    opacity: 0;
    transition: all .5s
}

.mfp-3d-unfold.mfp-ready .mfp-with-anim {
    opacity: 1;
    transform: rotateY(0)
}

.mfp-3d-unfold.mfp-ready.mfp-bg {
    opacity: .8
}

.mfp-3d-unfold.mfp-removing .mfp-with-anim {
    opacity: 0;
    transform: rotateY(60deg)
}

.mfp-3d-unfold.mfp-removing.mfp-bg {
    opacity: 0
}

.mfp-zoom-out .mfp-with-anim {
    opacity: 0;
    transform: scale(1.3);
    transition: all .3s ease-in-out
}

.mfp-zoom-out.mfp-bg {
    opacity: 0;
    transition: all .3s ease-out
}

.mfp-zoom-out.mfp-ready .mfp-with-anim {
    opacity: 1;
    transform: scale(1)
}

.mfp-zoom-out.mfp-ready.mfp-bg {
    opacity: .8
}

.mfp-zoom-out.mfp-removing .mfp-with-anim {
    opacity: 0;
    transform: scale(1.3)
}

.mfp-zoom-out.mfp-removing.mfp-bg {
    opacity: 0
}

.modal-inline-wrap {
    display: none
}

.my-mfp-zoom-in .zoom-anim-dialog {
    opacity: 0;
    -webkit-transform: scale(.8);
    -moz-transform: scale(.8);
    -ms-transform: scale(.8);
    -o-transform: scale(.8);
    transform: scale(.8);
    -webkit-transition: all .2s ease-in-out;
    -moz-transition: all .2s ease-in-out;
    -o-transition: all .2s ease-in-out;
    transition: all .2s ease-in-out
}

.my-mfp-zoom-in.mfp-ready .zoom-anim-dialog {
    opacity: 1;
    -webkit-transform: scale(1);
    -moz-transform: scale(1);
    -ms-transform: scale(1);
    -o-transform: scale(1);
    transform: scale(1)
}

.my-mfp-zoom-in.mfp-removing .zoom-anim-dialog {
    opacity: 0;
    -webkit-transform: scale(.8);
    -moz-transform: scale(.8);
    -ms-transform: scale(.8);
    -o-transform: scale(.8);
    transform: scale(.8)
}

.my-mfp-zoom-in.mfp-bg {
    opacity: 0;
    -webkit-transition: opacity .3s ease-out;
    -moz-transition: opacity .3s ease-out;
    -o-transition: opacity .3s ease-out;
    transition: opacity .3s ease-out
}

.my-mfp-zoom-in.mfp-ready.mfp-bg {
    opacity: .8
}

.my-mfp-zoom-in.mfp-removing.mfp-bg {
    opacity: 0
}

.my-mfp-slide-bottom .zoom-anim-dialog {
    opacity: 0;
    -webkit-transform: translateY(-20px) perspective(600px) rotateX(10deg);
    -moz-transform: translateY(-20px) perspective(600px) rotateX(10deg);
    -ms-transform: translateY(-20px) perspective(600px) rotateX(10deg);
    -o-transform: translateY(-20px) perspective(600px) rotateX(10deg);
    transform: translateY(-20px) perspective(600px) rotateX(10deg);
    -webkit-transition: all .2s ease-out;
    -moz-transition: all .2s ease-out;
    -o-transition: all .2s ease-out;
    transition: all .2s ease-out
}

.my-mfp-slide-bottom.mfp-ready .zoom-anim-dialog {
    opacity: 1;
    -webkit-transform: translateY(0) perspective(600px) rotateX(0);
    -moz-transform: translateY(0) perspective(600px) rotateX(0);
    -ms-transform: translateY(0) perspective(600px) rotateX(0);
    -o-transform: translateY(0) perspective(600px) rotateX(0);
    transform: translateY(0) perspective(600px) rotateX(0)
}

.my-mfp-slide-bottom.mfp-removing .zoom-anim-dialog {
    opacity: 0;
    -webkit-transform: translateY(-10px) perspective(600px) rotateX(10deg);
    -moz-transform: translateY(-10px) perspective(600px) rotateX(10deg);
    -ms-transform: translateY(-10px) perspective(600px) rotateX(10deg);
    -o-transform: translateY(-10px) perspective(600px) rotateX(10deg);
    transform: translateY(-10px) perspective(600px) rotateX(10deg)
}

.my-mfp-slide-bottom.mfp-bg {
    opacity: 0;
    -webkit-transition: opacity .3s ease-out;
    -moz-transition: opacity .3s ease-out;
    -o-transition: opacity .3s ease-out;
    transition: opacity .3s ease-out
}

.my-mfp-slide-bottom.mfp-ready.mfp-bg {
    opacity: .8
}

.my-mfp-slide-bottom.mfp-removing.mfp-bg {
    opacity: 0
}

button.mfp-arrow {
    -webkit-box-align: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    -webkit-align-items: center;
    align-items: center;
    background-color: rgba(82, 149, 206, .5);
    border-radius: 100%;
    cursor: pointer;
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    height: 40px;
    justify-content: center;
    margin-top: 0;
    outline: none;
    overflow: hidden;
    position: absolute;
    text-align: center;
    top: 50%;
    -webkit-transform: translateX(0) translateY(-50%);
    -moz-transform: translateX(0) translateY(-50%);
    -ms-transform: translateX(0) translateY(-50%);
    -o-transform: translateX(0) translateY(-50%);
    transform: translateX(0) translateY(-50%);
    -moz-transition: .4s;
    -o-transition: .4s;
    -webkit-transition: .4s;
    transition: .4s;
    width: 40px;
    z-index: 2000
}

button.mfp-arrow:after {
    content: none
}

button.mfp-arrow:active {
    margin-top: 0
}

button.mfp-arrow:focus,
button.mfp-arrow:hover {
    background-color: #5295ce
}

button.mfp-arrow-left {
    left: 25%
}

button.mfp-arrow-left:before {
    border: none;
    color: #fff;
    content: "\f104";
    font-family: FontAwesome;
    font-size: 34px;
    height: auto;
    margin: 0;
    padding-right: 3px;
    position: static;
    -moz-transition: .4s;
    -o-transition: .4s;
    -webkit-transition: .4s;
    transition: .4s;
    width: 100%
}

button.mfp-arrow-right {
    right: 25%
}

button.mfp-arrow-right:before {
    border: none;
    color: #fff;
    content: "\f105";
    font-family: FontAwesome;
    font-size: 34px;
    height: auto;
    margin: 0;
    padding-left: 3px;
    position: static;
    -moz-transition: .4s;
    -o-transition: .4s;
    -webkit-transition: .4s;
    transition: .4s;
    width: 100%
}

@media screen and (max-width:1000px) {
    button.mfp-arrow-left {
        left: 10%
    }

    button.mfp-arrow-right {
        right: 10%
    }
}

@media screen and (max-width:900px) {
    button.mfp-arrow-left {
        left: 30px
    }

    button.mfp-arrow-right {
        right: 30px
    }
}

@media screen and (max-width:480px) {
    button.mfp-arrow-left {
        left: 15px
    }

    button.mfp-arrow-right {
        right: 15px
    }
}

.slick-slider {
    -webkit-touch-callout: none;
    -webkit-tap-highlight-color: transparent;
    box-sizing: border-box;
    -ms-touch-action: pan-y;
    touch-action: pan-y;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none
}

.slick-list,
.slick-slider {
    display: block;
    position: relative
}

.slick-list {
    margin: 0;
    overflow: hidden;
    padding: 0
}

.slick-list:focus {
    outline: none
}

.slick-list.dragging {
    cursor: pointer;
    cursor: hand
}

.slick-slider .slick-list,
.slick-slider .slick-track {
    -webkit-transform: translateZ(0);
    -moz-transform: translateZ(0);
    -ms-transform: translateZ(0);
    -o-transform: translateZ(0);
    transform: translateZ(0)
}

.slick-track {
    display: block;
    left: 0;
    position: relative;
    top: 0
}

.slick-track:after,
.slick-track:before {
    content: "";
    display: table
}

.slick-track:after {
    clear: both
}

.slick-loading .slick-track {
    visibility: hidden
}

.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-loading .slick-slide {
    visibility: hidden
}

.slick-vertical .slick-slide {
    border: 1px solid transparent;
    display: block;
    height: auto
}

.slick-arrow.slick-hidden {
    display: none
}

.slick-loading .slick-list {
    background: #fff url(../../assets/img/common/ajax-loader.gif) 50% no-repeat
}

@font-face {
    font-family: slick;
    font-style: normal;
    font-weight: 400;
    src: url(../../assets/font/slick.eot);
    src: url(../../assets/font/slick.eot?#iefix) format("embedded-opentype"), url(../../assets/font/slick.woff) format("woff"), url(../../assets/font/slick.ttf) format("truetype"), url(../../assets/font/slick.svg#slick) format("svg")
}

.slick-next,
.slick-prev {
    background: transparent;
    border: none;
    color: transparent;
    display: block;
    font-size: 0;
    height: 20px;
    line-height: 0;
    padding: 0;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    width: 20px
}

.slick-next:focus,
.slick-next:hover,
.slick-prev:focus,
.slick-prev:hover {
    background: transparent;
    color: transparent;
    outline: none
}

.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 {
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    color: #fff;
    font-family: slick;
    font-size: 20px;
    line-height: 1;
    opacity: .75
}

.slick-prev {
    left: -25px
}

[dir=rtl] .slick-prev {
    left: auto;
    right: -25px
}

.slick-prev:before {
    content: "←"
}

[dir=rtl] .slick-prev:before {
    content: "→"
}

.slick-next {
    right: -25px
}

[dir=rtl] .slick-next {
    left: -25px;
    right: auto
}

.slick-next:before {
    content: "→"
}

[dir=rtl] .slick-next:before {
    content: "←"
}

.slick-dotted.slick-slider {
    margin-bottom: 30px
}

.slick-dots {
    bottom: -25px;
    display: block;
    list-style: none;
    margin: 0;
    padding: 0
}

.slick-dots li {
    display: inline-block;
    margin: 0 5px;
    padding: 0;
    position: relative
}

.slick-dots li,
.slick-dots li button {
    cursor: pointer;
    height: 20px;
    width: 20px
}

.slick-dots li button {
    background: transparent;
    border: 0;
    color: transparent;
    display: block;
    font-size: 0;
    line-height: 0;
    outline: none;
    padding: 5px
}

.slick-dots li button:focus,
.slick-dots li button:hover {
    outline: none
}

.slick-dots li button:focus:before,
.slick-dots li button:hover:before {
    opacity: 1
}

.slick-dots li button:before {
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    color: #000;
    content: "?";
    font-family: slick;
    font-size: 6px;
    height: 20px;
    left: 0;
    line-height: 20px;
    opacity: .25;
    position: absolute;
    text-align: center;
    top: 0;
    width: 20px
}

.slick-dots li.slick-active button:before {
    color: #000;
    opacity: .75
}

.js-alliance-slider.slick-initialized .slick-slide,
.js-client-slider.slick-initialized .slick-slide {
    margin: 0 25px
}

.slick-dotted.slick-slider {
    margin-bottom: 0;
    padding-bottom: 30px
}

.slick-next,
.slick-prev {
    background-color: rgba(82, 149, 206, .5);
    border-radius: 100%;
    cursor: pointer;
    height: 40px;
    outline: none;
    overflow: hidden;
    position: absolute;
    text-align: center;
    top: 50%;
    -webkit-transform: translateX(0) translateY(-50%);
    -moz-transform: translateX(0) translateY(-50%);
    -ms-transform: translateX(0) translateY(-50%);
    -o-transform: translateX(0) translateY(-50%);
    transform: translateX(0) translateY(-50%);
    -moz-transition: .4s;
    -o-transition: .4s;
    -webkit-transition: .4s;
    transition: .4s;
    width: 40px;
    z-index: 90
}

.slick-next:focus,
.slick-next:hover,
.slick-prev:focus,
.slick-prev:hover {
    background-color: #5295ce
}

.slick-prev {
    left: -50px
}

.slick-prev:before {
    content: "\f104";
    display: block;
    font-family: FontAwesome;
    font-size: 34px;
    text-align: center
}

.slick-next-icon,
.slick-prev-icon,
.slick-prev:before {
    color: #fff;
    -moz-transition: .4s;
    -o-transition: .4s;
    -webkit-transition: .4s;
    transition: .4s
}

.slick-next-icon,
.slick-prev-icon {
    font-size: 18px;
    line-height: 46px
}

.slick-next {
    right: -50px
}

.slick-next:before {
    color: #fff;
    content: "\f105";
    display: block;
    font-family: FontAwesome;
    font-size: 34px;
    text-align: center;
    -moz-transition: .4s;
    -o-transition: .4s;
    -webkit-transition: .4s;
    transition: .4s
}

.slick-next.slick-disabled,
.slick-prev.slick-disabled {
    background-color: #ccc;
    border-color: #ccc;
    cursor: default
}

.slick-next.slick-disabled:before,
.slick-prev.slick-disabled:before {
    opacity: 1
}

.slick-next.slick-disabled:hover:after,
.slick-prev.slick-disabled:hover:after {
    background-color: transparent;
    -webkit-transform: scale(.5);
    transform: scale(.5)
}

.slick-dots {
    bottom: 0;
    height: 15px;
    left: 0;
    position: absolute;
    text-align: center;
    width: 100%;
    z-index: 90
}

.slick-dots li {
    height: 12px;
    margin: 0 7px;
    width: 12px
}

.slick-dots li button {
    background: #e7e1e1;
    border-radius: 100%;
    display: inline-block;
    height: 12px;
    left: 50%;
    overflow: hidden;
    position: absolute;
    top: 0;
    -webkit-transform: translateX(-50%) translateY(0);
    -moz-transform: translateX(-50%) translateY(0);
    -ms-transform: translateX(-50%) translateY(0);
    -o-transform: translateX(-50%) translateY(0);
    transform: translateX(-50%) translateY(0);
    width: 12px
}

.slick-dots li button:before {
    content: none
}

.slick-dots li.slick-active button {
    background-color: #dc0250
}

@media screen and (max-width:767px) {

    .slick-next,
    .slick-prev {
        display: none
    }
}

.fade-slider {
    margin: 0 auto;
    overflow: hidden
}

.fade-slider,
.fade-slider-list {
    position: relative;
    width: 100%
}

.fade-slider-item {
    left: 0;
    position: absolute;
    top: 0;
    width: 100%
}

.fade-slider .btnNext,
.fade-slider .btnPrev {
    height: 50px;
    margin-top: -25px;
    position: absolute;
    top: 50%;
    width: 50px;
    z-index: 101
}

.fade-slider .btnPrev {
    left: 10px
}

.fade-slider .btnNext {
    right: 10px
}

.fade-slider-list:after {
    clear: both;
    content: ".";
    display: block;
    height: 0;
    visibility: hidden
}

.fade-slider-list {
    display: inline-block;
    overflow: hidden
}

.wslider {
    box-sizing: content-box;
    margin-bottom: 10px;
    overflow: hidden;
    position: relative;
    text-align: left;
    width: 100%
}

.wslider ul,
.wslider ul li {
    display: inline;
    float: left;
    overflow: hidden
}

.wslider ul {
    display: inline-block;
    overflow: hidden
}

.wslider ul:after {
    clear: both;
    content: ".";
    display: block;
    height: 0;
    visibility: hidden
}

.wslider a {
    display: block;
    -webkit-transition: all .25s ease-in-out;
    -ms-transition: all .25s ease-in-out;
    transition: all .25s ease-in-out
}

.wslider a:hover {
    opacity: .7
}

.wslider ul li a {
    box-sizing: border-box;
    display: none;
    max-width: 990px;
    padding: 0 5px;
    width: 100%
}

.wslider-base {
    position: relative;
    top: 0
}

.wslider-wrap {
    top: 0
}

.wslider-btn,
.wslider-wrap {
    overflow: hidden;
    position: absolute
}

.wslider-btn {
    -webkit-box-align: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    -webkit-align-items: center;
    align-items: center;
    background-color: rgba(82, 149, 206, .5);
    border-radius: 100%;
    cursor: pointer;
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    height: 40px;
    justify-content: center;
    text-align: center;
    top: 50%;
    -webkit-transform: translateX(0) translateY(-50%);
    -moz-transform: translateX(0) translateY(-50%);
    -ms-transform: translateX(0) translateY(-50%);
    -o-transform: translateX(0) translateY(-50%);
    transform: translateX(0) translateY(-50%);
    -moz-transition: .4s;
    -o-transition: .4s;
    -webkit-transition: .4s;
    transition: .4s;
    width: 40px;
    z-index: 90
}

.wslider-btn:hover {
    background-color: #5295ce
}

.wslider-btn-icon {
    color: #fff;
    font-size: 34px;
    -moz-transition: .4s;
    -o-transition: .4s;
    -webkit-transition: .4s;
    transition: .4s
}

.wslider-prev {
    left: -20px
}

.wslider-next {
    right: -10px
}

.wslider-next-icon {
    padding-left: 5px
}

.pagination {
    bottom: 0;
    display: none;
    height: 15px;
    left: 0;
    position: absolute;
    text-align: center;
    width: 100%;
    z-index: 90
}

.pagination a {
    background: #c8c9c9;
    display: inline-block;
    height: 14px;
    margin: 0 10px;
    overflow: hidden;
    width: 14px
}

.pagination a.active {
    background-color: #e71f18
}

@media screen and (max-width:860px) {
    .wslider-prev {
        left: 5px
    }

    .wslider-next {
        right: 15px
    }
}

@media screen and (max-width:767px) {
    .wslider ul li img {
        padding: 0
    }

    .wslider-btn {
        display: none
    }

    .wslider ul li a {
        padding: 0 20px
    }
}

@media screen and (max-width:480px) {
    .wslider ul li a {
        padding: 0 10px
    }
}

.grid-row {
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -ms-flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-left: -10px;
    margin-right: -10px
}

.grid-col-1,
.grid-col-10,
.grid-col-11,
.grid-col-12,
.grid-col-2,
.grid-col-3,
.grid-col-4,
.grid-col-5,
.grid-col-6,
.grid-col-7,
.grid-col-8,
.grid-col-9,
.grid-col-l-1,
.grid-col-l-10,
.grid-col-l-11,
.grid-col-l-12,
.grid-col-l-2,
.grid-col-l-3,
.grid-col-l-4,
.grid-col-l-5,
.grid-col-l-6,
.grid-col-l-7,
.grid-col-l-8,
.grid-col-l-9,
.grid-col-m-1 .grid-col-t-1,
.grid-col-m-10 .grid-col-t-10,
.grid-col-m-11 .grid-col-t-11,
.grid-col-m-12 .grid-col-t-12,
.grid-col-m-2 .grid-col-t-2,
.grid-col-m-3 .grid-col-t-3,
.grid-col-m-4 .grid-col-t-4,
.grid-col-m-5 .grid-col-t-5,
.grid-col-m-6 .grid-col-t-6,
.grid-col-m-7 .grid-col-t-7,
.grid-col-m-8 .grid-col-t-8,
.grid-col-m-9 .grid-col-t-9,
.grid-col-s-1,
.grid-col-s-10,
.grid-col-s-11,
.grid-col-s-12,
.grid-col-s-2,
.grid-col-s-3,
.grid-col-s-4,
.grid-col-s-5,
.grid-col-s-6,
.grid-col-s-7,
.grid-col-s-8,
.grid-col-s-9,
.grid-col-xs-1,
.grid-col-xs-10,
.grid-col-xs-11,
.grid-col-xs-12,
.grid-col-xs-2,
.grid-col-xs-3,
.grid-col-xs-4,
.grid-col-xs-5,
.grid-col-xs-6,
.grid-col-xs-7,
.grid-col-xs-8,
.grid-col-xs-9 {
    min-height: 1px;
    padding: 10px;
    position: relative
}

.grid-col-12 {
    width: 100%
}

.grid-col-11 {
    width: 91.66666667%
}

.grid-col-10 {
    width: 83.33333333%
}

.grid-col-9 {
    width: 75%
}

.grid-col-8 {
    width: 66.66666667%
}

.grid-col-7 {
    width: 58.33333333%
}

.grid-col-6 {
    width: 50%
}

.grid-col-5 {
    width: 41.66666667%
}

.grid-col-4 {
    width: 33.33333333%
}

.grid-col-3 {
    width: 25%
}

.grid-col-2 {
    width: 16.66666667%
}

.grid-col-1 {
    width: 8.33333333%
}

.grid-pull-12 {
    right: 100%
}

.grid-pull-11 {
    right: 91.66666667%
}

.grid-pull-10 {
    right: 83.33333333%
}

.grid-pull-9 {
    right: 75%
}

.grid-pull-8 {
    right: 66.66666667%
}

.grid-pull-7 {
    right: 58.33333333%
}

.grid-pull-6 {
    right: 50%
}

.grid-pull-5 {
    right: 41.66666667%
}

.grid-pull-4 {
    right: 33.33333333%
}

.grid-pull-3 {
    right: 25%
}

.grid-pull-2 {
    right: 16.66666667%
}

.grid-pull-1 {
    right: 8.33333333%
}

.grid-pull-0 {
    right: auto
}

.grid-push-12 {
    left: 100%
}

.grid-push-11 {
    left: 91.66666667%
}

.grid-push-10 {
    left: 83.33333333%
}

.grid-push-9 {
    left: 75%
}

.grid-push-8 {
    left: 66.66666667%
}

.grid-push-7 {
    left: 58.33333333%
}

.grid-push-6 {
    left: 50%
}

.grid-push-5 {
    left: 41.66666667%
}

.grid-push-4 {
    left: 33.33333333%
}

.grid-push-3 {
    left: 25%
}

.grid-push-2 {
    left: 16.66666667%
}

.grid-push-1 {
    left: 8.33333333%
}

.grid-push-0 {
    left: auto
}

.grid-offset-12 {
    margin-left: 100%
}

.grid-offset-11 {
    margin-left: 91.66666667%
}

.grid-offset-10 {
    margin-left: 83.33333333%
}

.grid-offset-9 {
    margin-left: 75%
}

.grid-offset-8 {
    margin-left: 66.66666667%
}

.grid-offset-7 {
    margin-left: 58.33333333%
}

.grid-offset-6 {
    margin-left: 50%
}

.grid-offset-5 {
    margin-left: 41.66666667%
}

.grid-offset-4 {
    margin-left: 33.33333333%
}

.grid-offset-3 {
    margin-left: 25%
}

.grid-offset-2 {
    margin-left: 16.66666667%
}

.grid-offset-1 {
    margin-left: 8.33333333%
}

.grid-offset-0 {
    margin-left: 0
}

@media screen and (min-width:1041px) {

    .grid-col-l-1,
    .grid-col-l-10,
    .grid-col-l-11,
    .grid-col-l-12,
    .grid-col-l-2,
    .grid-col-l-3,
    .grid-col-l-4,
    .grid-col-l-5,
    .grid-col-l-6,
    .grid-col-l-7,
    .grid-col-l-8,
    .grid-col-l-9 {
        float: left
    }

    .grid-col-l-12 {
        width: 100%
    }

    .grid-col-l-11 {
        width: 91.66666667%
    }

    .grid-col-l-10 {
        width: 83.33333333%
    }

    .grid-col-l-9 {
        width: 75%
    }

    .grid-col-l-8 {
        width: 66.66666667%
    }

    .grid-col-l-7 {
        width: 58.33333333%
    }

    .grid-col-l-6 {
        width: 50%
    }

    .grid-col-l-5 {
        width: 41.66666667%
    }

    .grid-col-l-4 {
        width: 33.33333333%
    }

    .grid-col-l-3 {
        width: 25%
    }

    .grid-col-l-2 {
        width: 16.66666667%
    }

    .grid-col-l-1 {
        width: 8.33333333%
    }

    .grid-l-pull-12 {
        right: 100%
    }

    .grid-l-pull-11 {
        right: 91.66666667%
    }

    .grid-l-pull-10 {
        right: 83.33333333%
    }

    .grid-l-pull-9 {
        right: 75%
    }

    .grid-l-pull-8 {
        right: 66.66666667%
    }

    .grid-l-pull-7 {
        right: 58.33333333%
    }

    .grid-l-pull-6 {
        right: 50%
    }

    .grid-l-pull-5 {
        right: 41.66666667%
    }

    .grid-l-pull-4 {
        right: 33.33333333%
    }

    .grid-l-pull-3 {
        right: 25%
    }

    .grid-l-pull-2 {
        right: 16.66666667%
    }

    .grid-l-pull-1 {
        right: 8.33333333%
    }

    .grid-l-pull-0 {
        right: auto
    }

    .grid-l-push-12 {
        left: 100%
    }

    .grid-l-push-11 {
        left: 91.66666667%
    }

    .grid-l-push-10 {
        left: 83.33333333%
    }

    .grid-l-push-9 {
        left: 75%
    }

    .grid-l-push-8 {
        left: 66.66666667%
    }

    .grid-l-push-7 {
        left: 58.33333333%
    }

    .grid-l-push-6 {
        left: 50%
    }

    .grid-l-push-5 {
        left: 41.66666667%
    }

    .grid-l-push-4 {
        left: 33.33333333%
    }

    .grid-l-push-3 {
        left: 25%
    }

    .grid-l-push-2 {
        left: 16.66666667%
    }

    .grid-l-push-1 {
        left: 8.33333333%
    }

    .grid-l-push-0 {
        left: auto
    }

    .grid-l-offset-12 {
        margin-left: 100%
    }

    .grid-l-offset-11 {
        margin-left: 91.66666667%
    }

    .grid-l-offset-10 {
        margin-left: 83.33333333%
    }

    .grid-l-offset-9 {
        margin-left: 75%
    }

    .grid-l-offset-8 {
        margin-left: 66.66666667%
    }

    .grid-l-offset-7 {
        margin-left: 58.33333333%
    }

    .grid-l-offset-6 {
        margin-left: 50%
    }

    .grid-l-offset-5 {
        margin-left: 41.66666667%
    }

    .grid-l-offset-4 {
        margin-left: 33.33333333%
    }

    .grid-l-offset-3 {
        margin-left: 25%
    }

    .grid-l-offset-2 {
        margin-left: 16.66666667%
    }

    .grid-l-offset-1 {
        margin-left: 8.33333333%
    }

    .grid-l-offset-0 {
        margin-left: 0
    }
}

@media screen and (min-width:768px) and (max-width:900px) {

    .grid-col-t-1,
    .grid-col-t-10,
    .grid-col-t-11,
    .grid-col-t-12,
    .grid-col-t-2,
    .grid-col-t-3,
    .grid-col-t-4,
    .grid-col-t-5,
    .grid-col-t-6,
    .grid-col-t-7,
    .grid-col-t-8,
    .grid-col-t-9 {
        float: left
    }

    .grid-col-t-12 {
        width: 100%
    }

    .grid-col-t-11 {
        width: 91.66666667%
    }

    .grid-col-t-10 {
        width: 83.33333333%
    }

    .grid-col-t-9 {
        width: 75%
    }

    .grid-col-t-8 {
        width: 66.66666667%
    }

    .grid-col-t-7 {
        width: 58.33333333%
    }

    .grid-col-t-6 {
        width: 50%
    }

    .grid-col-t-5 {
        width: 41.66666667%
    }

    .grid-col-t-4 {
        width: 33.33333333%
    }

    .grid-col-t-3 {
        width: 25%
    }

    .grid-col-t-2 {
        width: 16.66666667%
    }

    .grid-col-t-1 {
        width: 8.33333333%
    }

    .grid-t-pull-12 {
        right: 100%
    }

    .grid-t-pull-11 {
        right: 91.66666667%
    }

    .grid-t-pull-10 {
        right: 83.33333333%
    }

    .grid-t-pull-9 {
        right: 75%
    }

    .grid-t-pull-8 {
        right: 66.66666667%
    }

    .grid-t-pull-7 {
        right: 58.33333333%
    }

    .grid-t-pull-6 {
        right: 50%
    }

    .grid-t-pull-5 {
        right: 41.66666667%
    }

    .grid-t-pull-4 {
        right: 33.33333333%
    }

    .grid-t-pull-3 {
        right: 25%
    }

    .grid-t-pull-2 {
        right: 16.66666667%
    }

    .grid-t-pull-1 {
        right: 8.33333333%
    }

    .grid-t-pull-0 {
        right: auto
    }

    .grid-t-push-12 {
        left: 100%
    }

    .grid-t-push-11 {
        left: 91.66666667%
    }

    .grid-t-push-10 {
        left: 83.33333333%
    }

    .grid-t-push-9 {
        left: 75%
    }

    .grid-t-push-8 {
        left: 66.66666667%
    }

    .grid-t-push-7 {
        left: 58.33333333%
    }

    .grid-t-push-6 {
        left: 50%
    }

    .grid-t-push-5 {
        left: 41.66666667%
    }

    .grid-t-push-4 {
        left: 33.33333333%
    }

    .grid-t-push-3 {
        left: 25%
    }

    .grid-t-push-2 {
        left: 16.66666667%
    }

    .grid-t-push-1 {
        left: 8.33333333%
    }

    .grid-t-push-0 {
        left: auto
    }

    .grid-t-offset-12 {
        margin-left: 100%
    }

    .grid-t-offset-11 {
        margin-left: 91.66666667%
    }

    .grid-t-offset-10 {
        margin-left: 83.33333333%
    }

    .grid-t-offset-9 {
        margin-left: 75%
    }

    .grid-t-offset-8 {
        margin-left: 66.66666667%
    }

    .grid-t-offset-7 {
        margin-left: 58.33333333%
    }

    .grid-t-offset-6 {
        margin-left: 50%
    }

    .grid-t-offset-5 {
        margin-left: 41.66666667%
    }

    .grid-t-offset-4 {
        margin-left: 33.33333333%
    }

    .grid-t-offset-3 {
        margin-left: 25%
    }

    .grid-t-offset-2 {
        margin-left: 16.66666667%
    }

    .grid-t-offset-1 {
        margin-left: 8.33333333%
    }

    .grid-t-offset-0 {
        margin-left: 0
    }
}

@media screen and (max-width:767px) {

    .grid-col-m-1,
    .grid-col-m-10,
    .grid-col-m-11,
    .grid-col-m-12,
    .grid-col-m-2,
    .grid-col-m-3,
    .grid-col-m-4,
    .grid-col-m-5,
    .grid-col-m-6,
    .grid-col-m-7,
    .grid-col-m-8,
    .grid-col-m-9 {
        float: left
    }

    .grid-col-m-12 {
        width: 100%
    }

    .grid-col-m-11 {
        width: 91.66666667%
    }

    .grid-col-m-10 {
        width: 83.33333333%
    }

    .grid-col-m-9 {
        width: 75%
    }

    .grid-col-m-8 {
        width: 66.66666667%
    }

    .grid-col-m-7 {
        width: 58.33333333%
    }

    .grid-col-m-6 {
        width: 50%
    }

    .grid-col-m-5 {
        width: 41.66666667%
    }

    .grid-col-m-4 {
        width: 33.33333333%
    }

    .grid-col-m-3 {
        width: 25%
    }

    .grid-col-m-2 {
        width: 16.66666667%
    }

    .grid-col-m-1 {
        width: 8.33333333%
    }

    .grid-m-pull-12 {
        right: 100%
    }

    .grid-m-pull-11 {
        right: 91.66666667%
    }

    .grid-m-pull-10 {
        right: 83.33333333%
    }

    .grid-m-pull-9 {
        right: 75%
    }

    .grid-m-pull-8 {
        right: 66.66666667%
    }

    .grid-m-pull-7 {
        right: 58.33333333%
    }

    .grid-m-pull-6 {
        right: 50%
    }

    .grid-m-pull-5 {
        right: 41.66666667%
    }

    .grid-m-pull-4 {
        right: 33.33333333%
    }

    .grid-m-pull-3 {
        right: 25%
    }

    .grid-m-pull-2 {
        right: 16.66666667%
    }

    .grid-m-pull-1 {
        right: 8.33333333%
    }

    .grid-m-pull-0 {
        right: auto
    }

    .grid-m-push-12 {
        left: 100%
    }

    .grid-m-push-11 {
        left: 91.66666667%
    }

    .grid-m-push-10 {
        left: 83.33333333%
    }

    .grid-m-push-9 {
        left: 75%
    }

    .grid-m-push-8 {
        left: 66.66666667%
    }

    .grid-m-push-7 {
        left: 58.33333333%
    }

    .grid-m-push-6 {
        left: 50%
    }

    .grid-m-push-5 {
        left: 41.66666667%
    }

    .grid-m-push-4 {
        left: 33.33333333%
    }

    .grid-m-push-3 {
        left: 25%
    }

    .grid-m-push-2 {
        left: 16.66666667%
    }

    .grid-m-push-1 {
        left: 8.33333333%
    }

    .grid-m-push-0 {
        left: auto
    }

    .grid-m-offset-12 {
        margin-left: 100%
    }

    .grid-m-offset-11 {
        margin-left: 91.66666667%
    }

    .grid-m-offset-10 {
        margin-left: 83.33333333%
    }

    .grid-m-offset-9 {
        margin-left: 75%
    }

    .grid-m-offset-8 {
        margin-left: 66.66666667%
    }

    .grid-m-offset-7 {
        margin-left: 58.33333333%
    }

    .grid-m-offset-6 {
        margin-left: 50%
    }

    .grid-m-offset-5 {
        margin-left: 41.66666667%
    }

    .grid-m-offset-4 {
        margin-left: 33.33333333%
    }

    .grid-m-offset-3 {
        margin-left: 25%
    }

    .grid-m-offset-2 {
        margin-left: 16.66666667%
    }

    .grid-m-offset-1 {
        margin-left: 8.33333333%
    }

    .grid-m-offset-0 {
        margin-left: 0
    }
}

@media screen and (max-width:640px) {

    .grid-col-s-1,
    .grid-col-s-10,
    .grid-col-s-11,
    .grid-col-s-12,
    .grid-col-s-2,
    .grid-col-s-3,
    .grid-col-s-4,
    .grid-col-s-5,
    .grid-col-s-6,
    .grid-col-s-7,
    .grid-col-s-8,
    .grid-col-s-9 {
        float: left
    }

    .grid-col-s-12 {
        width: 100%
    }

    .grid-col-s-11 {
        width: 91.66666667%
    }

    .grid-col-s-10 {
        width: 83.33333333%
    }

    .grid-col-s-9 {
        width: 75%
    }

    .grid-col-s-8 {
        width: 66.66666667%
    }

    .grid-col-s-7 {
        width: 58.33333333%
    }

    .grid-col-s-6 {
        width: 50%
    }

    .grid-col-s-5 {
        width: 41.66666667%
    }

    .grid-col-s-4 {
        width: 33.33333333%
    }

    .grid-col-s-3 {
        width: 25%
    }

    .grid-col-s-2 {
        width: 16.66666667%
    }

    .grid-col-s-1 {
        width: 8.33333333%
    }

    .grid-s-pull-12 {
        right: 100%
    }

    .grid-s-pull-11 {
        right: 91.66666667%
    }

    .grid-s-pull-10 {
        right: 83.33333333%
    }

    .grid-s-pull-9 {
        right: 75%
    }

    .grid-s-pull-8 {
        right: 66.66666667%
    }

    .grid-s-pull-7 {
        right: 58.33333333%
    }

    .grid-s-pull-6 {
        right: 50%
    }

    .grid-s-pull-5 {
        right: 41.66666667%
    }

    .grid-s-pull-4 {
        right: 33.33333333%
    }

    .grid-s-pull-3 {
        right: 25%
    }

    .grid-s-pull-2 {
        right: 16.66666667%
    }

    .grid-s-pull-1 {
        right: 8.33333333%
    }

    .grid-s-pull-0 {
        right: auto
    }

    .grid-s-push-12 {
        left: 100%
    }

    .grid-s-push-11 {
        left: 91.66666667%
    }

    .grid-s-push-10 {
        left: 83.33333333%
    }

    .grid-s-push-9 {
        left: 75%
    }

    .grid-s-push-8 {
        left: 66.66666667%
    }

    .grid-s-push-7 {
        left: 58.33333333%
    }

    .grid-s-push-6 {
        left: 50%
    }

    .grid-s-push-5 {
        left: 41.66666667%
    }

    .grid-s-push-4 {
        left: 33.33333333%
    }

    .grid-s-push-3 {
        left: 25%
    }

    .grid-s-push-2 {
        left: 16.66666667%
    }

    .grid-s-push-1 {
        left: 8.33333333%
    }

    .grid-s-push-0 {
        left: auto
    }

    .grid-s-offset-12 {
        margin-left: 100%
    }

    .grid-s-offset-11 {
        margin-left: 91.66666667%
    }

    .grid-s-offset-10 {
        margin-left: 83.33333333%
    }

    .grid-s-offset-9 {
        margin-left: 75%
    }

    .grid-s-offset-8 {
        margin-left: 66.66666667%
    }

    .grid-s-offset-7 {
        margin-left: 58.33333333%
    }

    .grid-s-offset-6 {
        margin-left: 50%
    }

    .grid-s-offset-5 {
        margin-left: 41.66666667%
    }

    .grid-s-offset-4 {
        margin-left: 33.33333333%
    }

    .grid-s-offset-3 {
        margin-left: 25%
    }

    .grid-s-offset-2 {
        margin-left: 16.66666667%
    }

    .grid-s-offset-1 {
        margin-left: 8.33333333%
    }

    .grid-s-offset-0 {
        margin-left: 0
    }
}

@media screen and (max-width:320px) {

    .grid-col-xs-1,
    .grid-col-xs-10,
    .grid-col-xs-11,
    .grid-col-xs-12,
    .grid-col-xs-2,
    .grid-col-xs-3,
    .grid-col-xs-4,
    .grid-col-xs-5,
    .grid-col-xs-6,
    .grid-col-xs-7,
    .grid-col-xs-8,
    .grid-col-xs-9 {
        float: left
    }

    .grid-col-xs-12 {
        width: 100%
    }

    .grid-col-xs-11 {
        width: 91.66666667%
    }

    .grid-col-xs-10 {
        width: 83.33333333%
    }

    .grid-col-xs-9 {
        width: 75%
    }

    .grid-col-xs-8 {
        width: 66.66666667%
    }

    .grid-col-xs-7 {
        width: 58.33333333%
    }

    .grid-col-xs-6 {
        width: 50%
    }

    .grid-col-xs-5 {
        width: 41.66666667%
    }

    .grid-col-xs-4 {
        width: 33.33333333%
    }

    .grid-col-xs-3 {
        width: 25%
    }

    .grid-col-xs-2 {
        width: 16.66666667%
    }

    .grid-col-xs-1 {
        width: 8.33333333%
    }

    .grid-xs-pull-12 {
        right: 100%
    }

    .grid-xs-pull-11 {
        right: 91.66666667%
    }

    .grid-xs-pull-10 {
        right: 83.33333333%
    }

    .grid-xs-pull-9 {
        right: 75%
    }

    .grid-xs-pull-8 {
        right: 66.66666667%
    }

    .grid-xs-pull-7 {
        right: 58.33333333%
    }

    .grid-xs-pull-6 {
        right: 50%
    }

    .grid-xs-pull-5 {
        right: 41.66666667%
    }

    .grid-xs-pull-4 {
        right: 33.33333333%
    }

    .grid-xs-pull-3 {
        right: 25%
    }

    .grid-xs-pull-2 {
        right: 16.66666667%
    }

    .grid-xs-pull-1 {
        right: 8.33333333%
    }

    .grid-xs-pull-0 {
        right: auto
    }

    .grid-xs-push-12 {
        left: 100%
    }

    .grid-xs-push-11 {
        left: 91.66666667%
    }

    .grid-xs-push-10 {
        left: 83.33333333%
    }

    .grid-xs-push-9 {
        left: 75%
    }

    .grid-xs-push-8 {
        left: 66.66666667%
    }

    .grid-xs-push-7 {
        left: 58.33333333%
    }

    .grid-xs-push-6 {
        left: 50%
    }

    .grid-xs-push-5 {
        left: 41.66666667%
    }

    .grid-xs-push-4 {
        left: 33.33333333%
    }

    .grid-xs-push-3 {
        left: 25%
    }

    .grid-xs-push-2 {
        left: 16.66666667%
    }

    .grid-xs-push-1 {
        left: 8.33333333%
    }

    .grid-xs-push-0 {
        left: auto
    }

    .grid-xs-offset-12 {
        margin-left: 100%
    }

    .grid-xs-offset-11 {
        margin-left: 91.66666667%
    }

    .grid-xs-offset-10 {
        margin-left: 83.33333333%
    }

    .grid-xs-offset-9 {
        margin-left: 75%
    }

    .grid-xs-offset-8 {
        margin-left: 66.66666667%
    }

    .grid-xs-offset-7 {
        margin-left: 58.33333333%
    }

    .grid-xs-offset-6 {
        margin-left: 50%
    }

    .grid-xs-offset-5 {
        margin-left: 41.66666667%
    }

    .grid-xs-offset-4 {
        margin-left: 33.33333333%
    }

    .grid-xs-offset-3 {
        margin-left: 25%
    }

    .grid-xs-offset-2 {
        margin-left: 16.66666667%
    }

    .grid-xs-offset-1 {
        margin-left: 8.33333333%
    }

    .grid-xs-offset-0 {
        margin-left: 0
    }
}

@media print {

    .breadcrumb,
    .fnav,
    .footer-contact,
    .footer-mega,
    .footer-salon,
    .header-contact-btn-wrap,
    .menu-wrap {
        display: none
    }

    .cta-container,
    .cta-open {
        display: none !important
    }

    .wrapper {
        display: block;
        min-width: 1100px;
        padding-top: 0
    }

    .header {
        border-bottom: none;
        position: static
    }

    .catalogBox,
    .catalogBox_link {
        opacity: 1 !important;
        transform: matrix(1, 0, 0, 1, 0, 0) !important
    }

    .catalog .c-section-inner {
        position: relative;
        z-index: 1
    }

    .catalogContent-hairpiece:before,
    .catalogContent-long:before,
    .catalogContent-short:before {
        height: 1300px;
        width: 100%;
        z-index: 0
    }

    .catalogContent-hairpiece:before {
        z-index: -1
    }

    .catalogContent-container-semiOrder {
        position: relative;
        z-index: 1
    }

    .catalogContent-hairpiece,
    .catalogContent-long,
    .catalogContent-medium,
    .catalogContent-mrsshort,
    .catalogContent-short {
        padding-top: 50px;
        page-break-before: always
    }

    .catalogContent-hairpiece {
        z-index: 0
    }

    .catalogContent-readymade {
        padding-top: 50px;
        page-break-before: always
    }

    .readymadeImg {
        opacity: 1 !important;
        transform: matrix(1, 0, 0, 1, 0, 0) !important
    }

    .pickup-slider {
        margin: 0
    }

    .slick-track {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        width: 100% !important
    }

    .pickup-item {
        float: none;
        max-width: calc(25% - 10px) !important;
        width: calc(25% - 10px) !important
    }

    .single .main {
        width: 100%
    }

    .single .side {
        display: none
    }

    .single .c-post {
        margin-bottom: 0
    }

    .single .c-post-content img {
        width: 100%
    }

    .single .c-tag-wrap,
    .single .single-btn-wrap {
        display: none
    }

    .c-post-content h2,
    .c-post-content h3,
    .c-post-content h4 {
        font-size: 2.4rem
    }

    .c-post-content p {
        font-size: 2rem
    }

    .c-post-content .small {
        font-size: 1.8rem
    }

    .c-post-content .extra-small {
        font-size: 1.6rem
    }
}

.c-bg,
.c-bg-img-wrap {
    position: relative
}

.c-bg-img-wrap {
    overflow: hidden
}

.c-bg-img-wrap:before {
    content: "";
    display: block;
    left: 0;
    position: absolute;
    top: 0;
    width: 100%;
    z-index: 1
}

.c-bg-img {
    left: 50%;
    margin: 0 auto;
    position: absolute;
    top: 0;
    -webkit-transform: translateX(-50%) translateY(0);
    -moz-transform: translateX(-50%) translateY(0);
    -ms-transform: translateX(-50%) translateY(0);
    -o-transform: translateX(-50%) translateY(0);
    transform: translateX(-50%) translateY(0)
}

.c-btn-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -ms-flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    justify-content: center;
    margin: 0 auto;
    max-width: 1080px
}

.c-btn-item {
    padding: 5px
}

.variable .c-btn-item {
    margin: 0 10px 10px 0;
    padding: 0;
    width: calc(25% - 8px)
}

.variable .c-btn-item:last-child,
.variable .c-btn-item:nth-of-type(4n+4) {
    margin-right: 0
}

.c-btn-list--three {
    padding: 0 10%
}

.c-btn-list--three.variable .c-btn-item {
    width: calc(33.33333% - 8px)
}

.c-btn-list--three.variable .c-btn-item:nth-of-type(4n+4) {
    margin-right: 10px
}

.c-btn-list--three.variable .c-btn-item:last-child,
.c-btn-list--three.variable .c-btn-item:nth-of-type(3n+3) {
    margin-right: 0
}

.c-btn-list--five.variable .c-btn-item {
    width: calc(20% - 8px)
}

.c-btn-list--five.variable .c-btn-item:nth-of-type(4n+4) {
    margin-right: 10px
}

.c-btn-list--five.variable .c-btn-item:last-child,
.c-btn-list--five.variable .c-btn-item:nth-of-type(5n+5) {
    margin-right: 0
}

@media screen and (max-width:1200px) {
    .c-btn-list--five.variable .c-btn-item {
        width: calc(25% - 8px)
    }

    .c-btn-list--five.variable .c-btn-item:nth-of-type(4n+4) {
        margin-right: 0
    }

    .c-btn-list--five.variable .c-btn-item:nth-of-type(3n+3) {
        margin-right: 10px
    }
}

@media screen and (max-width:900px) {
    .c-btn-list--three {
        padding: 0
    }

    .c-btn-list--five.variable .c-btn-item {
        width: calc(33.33333% - 8px)
    }

    .c-btn-list--five.variable .c-btn-item:nth-of-type(4n+4) {
        margin-right: 10px
    }

    .c-btn-list--five.variable .c-btn-item:nth-of-type(3n+3) {
        margin-right: 0
    }
}

@media screen and (max-width:767px) {

    .c-btn-list--five.variable .c-btn-item,
    .c-btn-list--three.variable .c-btn-item {
        width: calc(50% - 5px)
    }

    .c-btn-list--five.variable .c-btn-item:nth-of-type(odd),
    .c-btn-list--three.variable .c-btn-item:nth-of-type(odd) {
        margin-right: 10px
    }

    .c-btn-list--five.variable .c-btn-item:nth-of-type(2n),
    .c-btn-list--three.variable .c-btn-item:nth-of-type(2n) {
        margin-right: 0
    }
}

.c-btn-circle {
    background-color: #fff;
    border: 1px solid #ddd;
    border-radius: 10px;
    color: #333;
    display: inline-flex;
    flex-direction: column;
    font-size: 16px;
    height: auto;
    justify-content: center;
    letter-spacing: .1em;
    line-height: 26px;
    padding: 11px 25px 11px 10px;
    position: relative;
    text-align: center;
    text-decoration: none;
    -webkit-transition: all .3s ease;
    transition: all .3s ease;
    width: 100%
}

.c-btn-circle span {
    display: block;
    font-size: inherit;
    line-height: 11px
}

.c-btn-circle:after {
    background-image: url(../../assets/img/common/renewal/icon_arrow.png);
    background-position: 0 0;
    background-repeat: no-repeat;
    background-size: 100% 100%;
    content: " ";
    height: 15px;
    position: absolute;
    right: 5%;
    top: 37%;
    width: 9px;
    z-index: 0
}

.c-btn-list--faq .c-btn-circle:after {
    background-image: url(../../assets/img/common/renewal/icon_arrow_down.png);
    height: 9px;
    right: 9%;
    top: 42%;
    width: 15px
}

.c-btn-list--salon {
    margin: 5px 0 0 2px
}

.c-btn-list--salon .c-btn-item {
    margin: 0 10px 14px 0;
    padding: 0;
    width: calc(50% - 5px)
}

.c-btn-list--salon .c-btn-item:last-child,
.c-btn-list--salon .c-btn-item:nth-of-type(2n+2) {
    margin-right: 0
}

.c-btn-list--salon .c-btn-circle {
    border: 2px solid #dc0250;
    border-radius: 10px;
    box-shadow: 0 4px 2px rgba(0, 0, 0, .2);
    color: #dc0250;
    font-weight: 700
}

.c-btn-list--salon .c-btn-circle:after {
    background-image: url(../../assets/img/salon/salon_icon_arrow.svg);
    height: 16px;
    right: 9%;
    top: 33%;
    width: 20px
}

.c-btn-circle:hover {
    background-color: #fdeff4;
    opacity: 1
}

.variable .c-btn-circle {
    padding: 0 15px
}

.c-btn-border {
    border: 1px solid #eb6aa7
}

.c-btn-circle.current {
    background-color: #fdeff4;
    opacity: 1
}

@media screen and (max-width:900px) {
    .c-btn-item {
        width: 25%
    }

    .variable .c-btn-item {
        margin-bottom: 8px;
        width: calc(33.33333% - 8px)
    }

    .variable .c-btn-item:nth-of-type(3n+3) {
        margin-right: 0
    }

    .variable .c-btn-item:nth-of-type(4n+4) {
        margin-right: 10px
    }
}

@media screen and (max-width:767px) {
    .c-btn-list {
        justify-content: flex-start
    }

    .c-btn-item {
        width: 50%
    }

    .variable .c-btn-item {
        margin-bottom: 13px;
        width: calc(50% - 5px)
    }

    .variable .c-btn-item:nth-of-type(2n+2),
    .variable .c-btn-item:nth-of-type(3n+3),
    .variable .c-btn-item:nth-of-type(4n+4) {
        margin-right: 0
    }

    .variable .c-btn-item:nth-of-type(odd) {
        margin-right: 10px
    }

    .variable .c-btn-circle {
        padding: 0 15px 0 9px
    }

    .c-btn-circle {
        height: 55px
    }

    .c-btn-circle:after {
        right: 3%
    }
}

@media screen and (max-width:480px) {
    .c-btn-circle {
        border-radius: 5px
    }
}

@media screen and (max-width:360px) {
    .variable .c-btn-circle {
        padding: 0 20px 0 9px
    }

    .c-btn-circle {
        font-size: 14px;
        line-height: 20px
    }

    .c-btn-circle span {
        font-size: 10px
    }
}

.c-btn-wrap {
    display: flex;
    text-align: center
}

.c-btn,
.c-btn-wrap {
    display: -webkit-box;
    display: -ms-flexbox
}

.c-btn {
    -webkit-align-items: center;
    align-items: center;
    -webkit-appearance: none;
    border: 1px solid #ddd;
    border-radius: 10px;
    color: #333;
    cursor: pointer;
    display: -webkit-flex;
    display: flex;
    font-size: 16px;
    font-weight: 400;
    height: 50px;
    justify-content: normal;
    letter-spacing: .05em;
    line-height: 20px;
    margin: 0 auto;
    max-width: 360px;
    outline: none;
    padding: 0 21px;
    position: relative;
    text-decoration: none;
    width: 100%
}

.c-btn--price {
    border: 1px solid #d2ae00;
    border-radius: 0;
    height: 24px;
    justify-content: center;
    margin-top: 30px;
    max-width: 306px
}

.c-btn--price a,
.c-btn--price span {
    color: #d2ae00;
    font-size: 14px;
    text-align: center
}

.c-btn--price span {
    cursor: default
}

.c-btn--price--blue {
    border: 1px solid #0a999a
}

.c-btn--price--blue a,
.c-btn--price--blue span {
    color: #0a999a
}

.c-btn:hover {
    opacity: 1
}

.c-btn.c-btn-icon:after {
    background-image: url(../../assets/img/common/renewal/icon_arrow.png);
    background-position: 0 0;
    background-repeat: no-repeat;
    background-size: 100% 100%;
    content: "";
    height: 15px;
    margin-top: -20px;
    position: absolute;
    right: 5%;
    top: 77%;
    width: 9px;
    z-index: 0
}

.c-btn.c-btn-icon--red {
    background: #dc0250;
    border: 1px solid #dc0250;
    color: #fff
}

.c-btn.c-btn-icon--red:after {
    background-image: url(../../assets/img/common/renewal/white_arrow_icon.png)
}

@media screen and (max-width:767px) {
    .c-btn.c-btn-icon--red {
        border-radius: 5px;
        margin-top: 11px
    }
}

@media screen and (max-width:600px) {
    .about-section--salon .c-btn {
        max-width: 100%
    }
}

.c-btn {
    background-color: #fff
}

.c-btn:hover {
    opacity: .7
}

.c-btn--price:hover {
    opacity: 1
}

.c-btn.c-btn-variable {
    min-width: 300px;
    padding: 15px 45px;
    width: auto
}

.c-btn-hover:hover {
    opacity: .7
}

.c-btn-scale {
    outline: none;
    overflow: hidden
}

.c-btn-scale:after,
.c-btn-scale:before {
    content: "";
    position: absolute;
    -webkit-transition: all .25s ease-in-out;
    transition: all .25s ease-in-out;
    z-index: -1
}

.c-btn-scale:after {
    border-radius: 50px;
    height: 100%;
    left: 0;
    top: 0;
    -webkit-transform: scale(.5);
    transform: scale(.5);
    width: 100%
}

.c-btn-scale:hover:after {
    background: #5294ce;
    -webkit-transform: scale(1);
    transform: scale(1)
}

.c-btn-scale[data-status=is-current] {
    color: #fff
}

.c-btn-scale[data-status=is-current]:after {
    background: #5294ce;
    -webkit-transform: scale(1);
    transform: scale(1)
}

.c-btn-grad {
    background-color: #e595bb;
    background-image: -moz-linear-gradient(left, #e595bb 0, #b0afdc 51%, #e595bb 100%);
    background-image: -webkit-linear-gradient(left, #e595bb, #b0afdc 51%, #e595bb);
    background-image: linear-gradient(90deg, #e595bb 0, #b0afdc 51%, #e595bb);
    background-size: 200% auto
}

.c-btn-grad:hover {
    background-position: 100%
}

.raised {
    -webkit-tap-highlight-color: transparent;
    background-color: #26a69b;
    border-radius: 2px;
    -webkit-box-shadow: 0 2px 2px 0 rgba(0, 0, 0, .14), 0 1px 5px 0 rgba(0, 0, 0, .12), 0 3px 1px -2px rgba(0, 0, 0, .2);
    box-shadow: 0 2px 2px 0 rgba(0, 0, 0, .14), 0 1px 5px 0 rgba(0, 0, 0, .12), 0 3px 1px -2px rgba(0, 0, 0, .2);
    color: #fff;
    cursor: pointer;
    display: inline-block;
    font-family: Quicksand, sans-serif;
    font-size: 1em;
    letter-spacing: .05em;
    padding: .6em 1.3em;
    text-decoration: none;
    -webkit-transition: .3s;
    transition: .3s
}

.ripple {
    overflow: hidden;
    position: relative
}

.rp-effect {
    -webkit-animation: ripple .7s;
    animation: ripple .7s;
    background: #fff;
    border-radius: 50%;
    opacity: .35;
    position: absolute;
    -webkit-transform: scale(0);
    transform: scale(0)
}

@media screen and (max-width:480px) {
    .c-btn {
        font-size: 16px;
        font-size: 1.6rem;
        padding: 12px 13px
    }

    .c-btn.c-btn-variable {
        min-width: 280px;
        padding: 12px 30px
    }

    .c-btn.c-btn-icon:after {
        right: 10px
    }
}

@media screen and (max-width:340px) {
    .c-btn {
        font-size: 15px;
        font-size: 1.5rem;
        padding: 12px 18px
    }
}

.c-btn .sp {
    display: none
}

@media screen and (max-width:640px) {
    .c-btn .sp {
        display: block
    }
}

.c-btn .pc {
    display: block
}

@media screen and (max-width:640px) {
    .c-btn .pc {
        display: none
    }
}

.c-btn-column-wrap {
    display: flex;
    justify-content: center;
    margin-top: 31px;
    text-align: center
}

@media screen and (max-width:767px) {
    .c-btn-column-wrap {
        display: block;
        margin-top: 9px
    }
}

.c-btn-column-wrap>* {
    margin: 0
}

@media screen and (max-width:767px) {
    .c-btn-column-wrap>* {
        border-radius: 5px;
        margin: 0 auto
    }
}

.c-btn-column-wrap>*+* {
    background-color: #dc0250;
    border: 1px solid #dc0250;
    color: #fff;
    margin-left: 10px
}

@media screen and (max-width:767px) {
    .c-btn-column-wrap>*+* {
        border-radius: 5px;
        margin-left: auto;
        margin-top: 11px
    }
}

.c-btn-column-wrap>*+.c-btn.c-btn-icon:after {
    background-image: url(../../assets/img/common/renewal/white_arrow_icon.png)
}

ul.c-btn-list.variable.c-btn-list--five.c-btn-list--sub .c-btn-circle {
    text-align: center
}

ul.c-btn-list.variable.c-btn-list--five.c-btn-list--sub .c-btn-circle:after {
    display: none
}

.about .about__support .first-section .about-bnr-inner-renewal .c-btn-renewal.c-btn-renewal--about-support a:after,
.about .about__support .third-section .c-btn-renewal.c-btn-renewal--about-support a:after {
    background-image: url(../../assets/img/about/icon_new_tab.png);
    width: 15px
}

@media screen and (max-width:360px) {
    .about .about__support .first-section .about-bnr-inner-renewal .c-btn-renewal.c-btn-renewal--about-support a {
        padding: 0 25px 0 15px
    }

    .about .about__support .first-section .about-bnr-inner-renewal .c-btn-renewal.c-btn-renewal--about-support a:after,
    .about .about__support .third-section .c-btn-renewal.c-btn-renewal--about-support a:after {
        height: 13px;
        top: 80%;
        width: 13px
    }
}

.event .c-btn-circle {
    border-radius: 30px
}

.event .c-btn-circle span {
    display: inline-block
}

.event .c-btn-circle:after {
    background: none
}

.salon.s-salon a.c-btn-circle:after {
    display: none
}

.salon .page-heading-body a.c-btn-circle {
    padding: 11px 25px 11px 19px
}

.page-heading a.c-btn-circle,
.page-heading-body a.c-btn-circle,
.page-sub-heading a.c-btn-circle {
    height: 50px;
    padding: 11px 10px;
    text-align: left
}

.page-heading a.c-btn-circle span,
.page-heading-body a.c-btn-circle span,
.page-sub-heading a.c-btn-circle span {
    font-size: 13px
}

.page-sub-heading a.c-btn-circle,
.salon .page-heading a.c-btn-circle {
    height: 54px
}

@media screen and (max-width:767px) {

    .page-heading a.c-btn-circle,
    .page-heading-body a.c-btn-circle,
    .page-sub-heading a.c-btn-circle {
        padding: 0 15px 0 9px
    }
}

@media screen and (max-width:360px) {

    .page-heading a.c-btn-circle,
    .page-heading-body a.c-btn-circle,
    .page-sub-heading a.c-btn-circle {
        padding: 0 20px 0 9px
    }
}

.about .about__service .about-contents .c-btn-column-wrap {
    display: block;
    margin-bottom: -6px;
    margin-top: 23px;
    padding: 0
}

.about .about__service .about-contents .c-btn-column-wrap>* {
    max-width: 100%
}

.about .about__service .about-contents .c-btn-column-wrap>*+* {
    letter-spacing: 0;
    margin-left: 0;
    margin-top: 10px
}

.about .about__service .about-contents .c-section-inner>section.about-section:nth-child(3n) .c-btn-column-wrap.inner {
    display: flex;
    margin-top: 30px;
    padding-top: 0
}

.about .about__service .about-contents .c-section-inner>section.about-section:nth-child(3n) .c-btn-column-wrap>*+* {
    margin-left: 10px;
    margin-top: 0
}

.about .about__service .about-contents .c-section-inner>section.about-section:nth-child(3n) .c-btn-renewal-about__service {
    margin-top: 21px
}

.about .about__service .about-contents .c-btn.c-btn-icon:after {
    right: 4%
}

.about .about__service .about-contents .c-btn-renewal.c-btn-renewal--about-service {
    margin-top: 49px
}

@-moz-keyframes ripple {
    to {
        opacity: 0;
        -webkit-transform: scale(2);
        transform: scale(2)
    }
}

@-webkit-keyframes ripple {
    to {
        opacity: 0;
        -webkit-transform: scale(2);
        transform: scale(2)
    }
}

@-o-keyframes ripple {
    to {
        opacity: 0;
        -webkit-transform: scale(2);
        transform: scale(2)
    }
}

@keyframes ripple {
    to {
        opacity: 0;
        -webkit-transform: scale(2);
        transform: scale(2)
    }
}

.c-heading {
    background-color: #c2d4ed;
    background-image: -moz-linear-gradient(left, #e2f3fc 0, #c2d4ed 100%);
    background-image: -webkit-linear-gradient(left, #e2f3fc, #c2d4ed);
    background-image: linear-gradient(90deg, #e2f3fc 0, #c2d4ed);
    position: relative
}

.special+.c-heading {
    margin-top: 20px
}

.c-heading-inner {
    margin: 0 auto;
    max-width: 1020px;
    padding: 30px 0 40px;
    position: relative
}

.c-heading-ttl {
    color: #5294ce;
    display: inline-block;
    margin-bottom: 20px;
    padding: 0 10px
}

.c-heading-ttl .mod-en {
    font-family: Old Standard TT;
    font-size: 50px;
    font-size: 5rem;
    font-style: italic;
    padding-right: 15px
}

.c-heading-ttl .mod-ja {
    color: #616262;
    font-size: 20px;
    font-size: 2rem;
    letter-spacing: .1em;
    padding-left: 25px;
    position: relative
}

.c-heading-ttl .mod-ja:after {
    bottom: 3px;
    content: "|";
    font-size: 20px;
    font-size: 2rem;
    left: 0;
    position: absolute;
    -webkit-transform: rotate(25deg);
    -ms-transform: rotate(25deg);
    transform: rotate(25deg)
}

.c-heading-note {
    color: #04477d;
    display: inline-block;
    font-family: Times New Roman, YuMincho, Yu Mincho, Hiragino Mincho ProN, Sawarabi Mincho, HGMinchoE, MS PMincho, MS Mincho, serif;
    font-size: 30px;
    font-size: 3rem;
    font-weight: 700;
    letter-spacing: .1em;
    padding-left: 40px
}

@media screen and (max-width:767px) {
    .pickup+.c-heading {
        margin-top: 20px
    }

    .c-heading-inner {
        padding: 40px 0
    }

    .c-heading-ttl {
        padding: 0 20px
    }

    .c-heading-note {
        display: block;
        margin-bottom: 20px;
        padding-left: 20px
    }
}

@media screen and (max-width:480px) {
    .special+.c-heading {
        margin-top: 10px
    }

    .c-heading-inner {
        padding: 30px 0
    }

    .c-heading-ttl {
        padding: 0 10px
    }

    .c-heading-ttl .mod-en {
        font-size: 30px;
        font-size: 3rem;
        padding-right: 10px
    }

    .c-heading-ttl .mod-ja {
        padding-left: 15px
    }

    .c-heading-ttl .mod-ja,
    .c-heading-ttl .mod-ja:after {
        font-size: 13px;
        font-size: 1.3rem
    }

    .c-heading-note {
        display: block;
        font-size: 17px;
        font-size: 1.7rem;
        margin-bottom: 10px;
        padding-left: 10px
    }
}

.c-list-wrap {
    overflow: hidden
}

.c-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -ms-flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    margin: 0 -.3%
}

@media screen and (max-width:900px) {
    .c-list {
        margin: 0;
        padding: 0
    }
}

@media screen and (max-width:640px) {
    .c-list {
        display: block;
        padding: 0
    }
}

.c-list-item {
    padding: 0 1.2%;
    width: 33.33333%
}

@media screen and (max-width:900px) {
    .c-list-item {
        padding: 0 1.5%;
        width: 50%
    }
}

@media screen and (max-width:640px) {
    .c-list-item {
        padding: 0;
        width: 100%
    }
}

@media screen and (max-width:900px) {
    .c-list-item:first-child {
        margin-top: 0
    }

    .c-list-item:last-child {
        margin-bottom: 0
    }
}

.c-list-link {
    border: 5px solid #e595bb;
    display: block;
    height: 100%;
    position: relative
}

.c-list-img-wrap {
    overflow: hidden;
    padding-top: 60%;
    position: relative;
    width: 100%
}

.c-list-img {
    height: auto;
    left: 50%;
    max-width: inherit;
    position: absolute;
    top: 0;
    transform: translateX(-50%);
    width: 100%
}

@media screen and (max-width:480px) {
    .c-list-category {
        font-size: 12px;
        font-size: 1.2rem
    }
}

.c-list-category span {
    background: #e595bb;
    color: #fff;
    display: inline-block;
    font-size: 12px;
    font-size: 1.2rem;
    line-height: 1;
    margin-bottom: 5px;
    padding: 5px 12px
}

.c-list-category span+span {
    margin-left: 5px
}

.c-list-contents {
    padding: 20px
}

@media screen and (max-width:480px) {
    .c-list-contents {
        padding: 15px 10px
    }
}

.c-list-ttl {
    border-bottom: 2px solid #e595bb;
    color: #e8529a;
    font-size: 18px;
    font-size: 1.8rem;
    line-height: 1.33;
    margin-bottom: 15px;
    padding-bottom: 10px
}

@media screen and (max-width:480px) {
    .c-list-ttl {
        font-size: 15px;
        font-size: 1.5rem
    }
}

.c-list-date {
    color: #675961;
    display: block;
    font-size: 15px;
    font-size: 1.5rem;
    padding-top: 20px
}

@media screen and (max-width:480px) {
    .c-list-date {
        font-size: 15px;
        font-size: 1.5rem;
        padding-top: 10px
    }
}

.c-list-btn-wrap {
    margin: 0 20px 20px;
    text-align: center
}

.c-list-btn {
    background-image: -moz-linear-gradient(left, #e595bb 0, #b0afdc 51%, #e595bb 100%);
    background-image: -webkit-linear-gradient(left, #e595bb, #b0afdc 51%, #e595bb);
    background-image: linear-gradient(90deg, #e595bb 0, #b0afdc 51%, #e595bb);
    background-size: 200% auto;
    border-radius: 25px;
    color: #fff;
    display: block;
    font-size: 18px;
    font-size: 1.8rem;
    line-height: 50px;
    position: relative;
    -webkit-transition: all .25s ease-in-out;
    -ms-transition: all .25s ease-in-out;
    transition: all .25s ease-in-out
}

@media screen and (max-width:480px) {
    .c-list-btn {
        font-size: 16px;
        font-size: 1.6rem
    }
}

.c-list-btn:after {
    content: "\f105";
    font-family: FontAwesome;
    position: absolute;
    right: 15px;
    top: 50%;
    -webkit-transform: translateX(0) translateY(-50%);
    -moz-transform: translateX(0) translateY(-50%);
    -ms-transform: translateX(0) translateY(-50%);
    -o-transform: translateX(0) translateY(-50%);
    transform: translateX(0) translateY(-50%)
}

.c-list-link:hover .c-list-btn {
    background-position: 100%
}

@media (-ms-high-contrast:none) and (max-width:767px) {

    .c-list,
    ::-ms-backdrop {
        display: block
    }
}

.trivia .c-list-item {
    padding: 0 .5%;
    width: 25%
}

.trivia .c-list-link {
    border: 1px solid #ddd;
    border-radius: 10px
}

.trivia .c-list-img-wrap {
    padding-top: 56%
}

.trivia .c-list-img {
    border-radius: 10px
}

.trivia .c-list-ttl {
    border-bottom: none;
    color: #000;
    font-size: 16px;
    line-height: 32px;
    margin-bottom: 14px;
    padding-bottom: 0
}

.trivia .c-list-contents {
    border-bottom: 1px solid #ddd;
    padding: 17px 20px 17px 17px
}

.trivia .c-list-category span {
    background: transparent;
    border: 1px solid #dc0250;
    border-radius: 5px;
    color: #dc0250;
    letter-spacing: .2em;
    min-width: 104px;
    padding: 6px 5px 5px 6px;
    text-align: center
}

.trivia .c-list-btn-wrap {
    margin: 12px 17px;
    text-align: left
}

.trivia .c-list-btn.renewal-btn {
    background-image: none;
    border-radius: 25px;
    color: #333;
    font-size: 16px;
    letter-spacing: .2em;
    line-height: 24px
}

.trivia .c-list-btn.renewal-btn:after {
    background-image: url(../../assets/img/common/renewal/icon_arrow.png);
    background-position: 0 0;
    background-repeat: no-repeat;
    background-size: 100% 100%;
    font-size: 0;
    height: 15px;
    right: 0;
    width: 9px;
    z-index: 0
}

@media screen and (max-width:1200px) {
    .trivia .c-list-item {
        width: 33.333%
    }
}

@media screen and (max-width:900px) {
    .trivia .c-list-item {
        width: 50%
    }
}

@media screen and (max-width:640px) {
    .trivia .c-list-item {
        padding: 0 0 15px;
        width: 100%
    }
}

@media screen and (max-width:360px) {
    .trivia .c-list-ttl {
        font-size: 15px;
        line-height: 25px
    }
}

.lp-single__cont .c-lp-cta .inner {
    margin: 0 auto
}

.c-lp-cta {
    background-color: #6ed0d7;
    background-image: url(../../assets/img/common/lp-cta-bg-pc.png);
    background-position: bottom;
    background-repeat: no-repeat;
    background-size: 1000px;
    padding-bottom: 35px;
    text-align: center
}

@media screen and (max-width:1020px) {
    .c-lp-cta {
        background-size: 98%
    }
}

@media screen and (max-width:768px) {
    .c-lp-cta {
        background-color: #71cdd5;
        background-image: url(../../assets/img/common/lp-cta-bg-sp.png);
        background-position: 0 100%;
        background-size: 130px;
        height: auto;
        min-height: auto;
        padding-bottom: 12px;
        text-align: center
    }
}

.c-lp-cta .inner {
    max-width: 1020px !important;
    padding: 0 10px !important
}

@media screen and (max-width:768px) {
    .c-lp-cta .inner {
        margin: inherit !important
    }
}

.c-lp-cta__lead {
    align-items: center;
    display: flex;
    margin: 0 auto;
    max-width: 807px;
    min-height: 220px;
    padding: 50px 0;
    position: relative;
    text-align: left
}

@media screen and (max-width:768px) {
    .c-lp-cta__lead {
        display: block;
        padding: 30px 0;
        position: relative;
        text-align: center
    }
}

@media only screen and (max-width:480px) {
    .c-lp-cta__lead {
        padding: 23px 0;
        text-align: center
    }
}

.c-lp-cta__lead .txt {
    flex: 1 1 100%;
    margin-right: 5%;
    margin-top: 61px
}

@media screen and (max-width:840px) {
    .c-lp-cta__lead .txt {
        margin-top: 0
    }
}

@media screen and (max-width:768px) {
    .c-lp-cta__lead .txt {
        margin: 0;
        padding: 0 !important
    }
}

.c-lp-cta__lead .txt p {
    color: #fff;
    display: block;
    font-family: Noto Sans JP, sans-serif;
    font-size: 3.1em;
    font-weight: 600;
    letter-spacing: .09em;
    line-height: 1.16;
    text-align: center
}

@media screen and (max-width:900px) {
    .c-lp-cta__lead .txt p {
        font-size: 2.8rem
    }
}

@media screen and (max-width:768px) {
    .c-lp-cta__lead .txt p {
        font-size: 5.4vw;
        line-height: 1.3;
        text-align: center
    }

    .c-lp-cta__lead .img {
        margin-top: 15px;
        padding: 0 30px;
        position: static;
        transform: none
    }
}

.c-lp-cta__btn {
    -webkit-box-align: center;
    -webkit-box-pack: center;
    align-items: center;
    border-radius: 6px;
    color: #fff;
    flex: 1 1 470px;
    flex-direction: column;
    font-weight: 700;
    justify-content: center;
    letter-spacing: .05em;
    line-height: 1;
    max-width: 100%;
    min-height: 54px;
    padding: 12px;
    position: relative;
    transition-delay: 0s;
    transition-duration: .25s;
    transition-property: all;
    transition-timing-function: ease-in-out
}

@media screen and (max-width:1020px) {
    .c-lp-cta__btn {
        font-size: 28px
    }
}

@media screen and (max-width:768px) {
    .c-lp-cta__btn {
        font-size: 19px;
        letter-spacing: 0 !important;
        min-height: 50px;
        padding: 6px
    }
}

.c-lp-cta__btn:hover {
    opacity: .7
}

.c-lp-cta__btn span.label {
    background-color: #fff;
    border-radius: 30px;
    display: block;
    font-weight: 500;
    line-height: 1;
    margin-bottom: 8px;
    padding: 4px 20px 2px;
    text-align: center
}

@media screen and (max-width:1000px) {
    .c-lp-cta__btn span.label {
        font-size: 16px
    }
}

@media screen and (max-width:840px) {
    .c-lp-cta__btn span.label {
        font-size: 13px
    }
}

@media screen and (max-width:768px) {
    .c-lp-cta__btn span.label {
        font-size: 9px;
        letter-spacing: .03em;
        margin-bottom: 5px
    }
}

.c-lp-cta__btn.single {
    flex: 1 1 100%;
    max-width: 100%;
    min-width: 100%
}

@media screen and (max-width:768px) {
    .c-lp-cta__btn.single {
        max-width: 100%;
        min-width: 100%
    }
}

.c-lp-cta__btn.double {
    margin-top: 22px;
    max-width: 49%;
    min-width: 49%
}

@media screen and (max-width:768px) {
    .c-lp-cta__btn.double {
        max-width: 100%;
        min-width: 100%
    }
}

.c-lp-cta__btn.mod-catalog {
    background-color: #6dbf76
}

.c-lp-cta__btn.mod-catalog span.label {
    color: #6dbf76
}

.c-lp-cta__btn:nth-of-type(3) {
    margin-top: 20px
}

@media screen and (max-width:768px) {
    .c-lp-cta__btn:nth-of-type(3) {
        margin-top: 10px
    }
}

.c-lp-cta__btn.mod-request span.label {
    color: #f4a900
}

.c-lp-cta__btn.mod-request:after {
    background-image: url(../../assets/img/common/icon_cta_btn_p.png);
    background-repeat: no-repeat;
    background-size: 100%;
    content: "";
    height: 16px;
    position: absolute;
    right: 5%;
    top: 38%;
    width: 8px
}

@media screen and (max-width:360px) {
    .c-lp-cta__btn.mod-request:after {
        height: 14px;
        width: 6px
    }
}

.c-lp-cta__btn.mod-reserve span.label {
    color: #ec719e
}

.c-lp-cta__btn.mod-reserve:after {
    background-image: url(../../assets/img/common/icon_cta_btn_b.png);
    background-repeat: no-repeat;
    background-size: 100%;
    content: "";
    height: 16px;
    position: absolute;
    right: 5%;
    top: 38%;
    width: 8px
}

@media screen and (max-width:360px) {
    .c-lp-cta__btn.mod-reserve:after {
        height: 14px;
        width: 6px
    }
}

.c-lp-cta__btn:first-child {
    margin-left: 10px
}

.c-lp-cta__btn-wrap {
    background: #fff;
    border-radius: 8px;
    display: flex;
    flex-direction: row-reverse;
    flex-wrap: wrap;
    justify-content: center;
    margin: 0 auto;
    max-width: 807px;
    padding: 24px 0
}

@media screen and (max-width:768px) {
    .c-lp-cta__btn-wrap {
        margin: 0 auto;
        padding: 14px 0
    }
}

.c-lp-cta__lead .img {
    max-width: 233px;
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%)
}

.c-lp-cta__btn {
    border-radius: 27px;
    display: flex;
    font-family: Noto Sans JP, sans-serif;
    font-size: 20px;
    max-width: 36.6%
}

.c-lp-cta__btn span.label {
    border-radius: 3px;
    font-size: 16px;
    margin: 10px 0 0;
    padding: 4px 20px
}

.c-lp-cta__btn:first-child {
    margin-left: 8%
}

.c-lp-cta__btn:only-child {
    margin-left: 0
}

.c-lp-cta__btn.mod-reserve {
    background-color: #5cd5e8
}

.c-lp-cta__btn.mod-reserve span.label {
    color: #c030a4;
    font-size: 13px
}

.c-lp-cta__btn.mod-request {
    background-color: #fff;
    border: 2px solid #ed80a7;
    color: #ed80a7
}

.c-lp-cta__btn.mod-request span.label {
    color: #d00c6c;
    font-size: 13px
}

@media only screen and (max-width:768px) {
    .c-lp-cta__lead .img {
        margin: 15px auto 0;
        max-width: 70%;
        padding: 0 30px;
        position: static;
        transform: translateY(0)
    }

    .c-lp-cta__btn {
        font-size: 16px;
        max-width: 45.1%
    }

    .c-lp-cta__btn:first-child {
        margin-left: 3%
    }
}

@media only screen and (max-width:480px) {
    .c-lp-cta__btn {
        font-size: 3.2vw;
        min-height: 50px;
        padding: 10px 5px
    }

    .c-lp-cta__btn.mod-request span.label,
    .c-lp-cta__btn.mod-reserve span.label {
        font-size: 2vw;
        padding: 4px 10px
    }
}

@media only screen and (max-width:360px) {
    .c-lp-cta__btn {
        min-height: 40px
    }

    .c-lp-cta__lead .img {
        max-width: 200px
    }
}

.c-lp-cta__btn-wrap--mini {
    background: none;
    flex-direction: row;
    justify-content: space-between;
    margin: 0 auto;
    max-width: 100%
}

.c-lp-cta__btn-wrap--mini .c-lp-cta__btn {
    max-width: 49%
}

.c-lp-cta__btn-wrap--mini .c-lp-cta__btn:first-child {
    margin-left: 0
}

.c-lp-cta-renewal {
    background-color: #f5f9fd;
    margin: 0 0 35px
}

.c-lp-cta-renewal .inner {
    background-image: url(../../assets/img/common/lp_cta_bg_pc_renewal.png);
    background-position: 0 100%;
    background-repeat: no-repeat;
    background-size: 100%;
    display: flex;
    justify-content: flex-end;
    margin: 0 auto;
    max-width: 1000px;
    padding: 30px 24px 25px !important;
    position: relative
}

.c-lp-cta-renewal .img-box {
    bottom: 6px;
    left: 19px;
    max-width: 21%;
    position: absolute
}

.c-lp-cta-renewal .img-box img {
    width: 100%
}

.c-lp-cta-renewal .img-box img.pc {
    display: block !important
}

.c-lp-cta-renewal .txt-box {
    max-width: 76.051%
}

.c-lp-cta-renewal .txt-box .title {
    padding-bottom: 20px
}

.c-lp-cta-renewal .txt-box .title img {
    width: 100%
}

.c-lp-cta-renewal .txt-box .title img.pc {
    display: block !important
}

.c-lp-cta-renewal .txt-box .btn-wrap {
    display: flex;
    justify-content: flex-end;
    margin: 0 18px
}

.c-lp-cta-renewal .txt-box .btn-wrap .cta-btn {
    align-items: center;
    border-radius: 15px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    letter-spacing: .1em;
    margin-right: 15px;
    padding: 10px 20px 10px 8px;
    position: relative;
    text-decoration: none;
    width: 46%
}

.c-lp-cta-renewal .txt-box .btn-wrap .cta-btn:after {
    background-image: url(../../assets/img/common/icon_cta_btn_b.png);
    background-repeat: no-repeat;
    background-size: 100%;
    content: "";
    height: 16px;
    position: absolute;
    right: 5%;
    top: 40%;
    width: 8px
}

.c-lp-cta-renewal .txt-box .btn-wrap .cta-btn:last-child {
    margin-right: 0
}

.c-lp-cta-renewal .txt-box .btn-wrap .cta-btn:last-child:after {
    background-image: url(../../assets/img/common/icon_cta_btn_p.png);
    background-repeat: no-repeat;
    background-size: 100%;
    content: "";
    position: absolute
}

.c-lp-cta-renewal .txt-box .btn-wrap .cta-btn span {
    font-weight: 700;
    text-align: center;
    width: 86%
}

.c-lp-cta-renewal .txt-box .btn-wrap .cta-btn span.txt01 {
    border-radius: 50px;
    font-size: 10px;
    line-height: 1.2;
    margin-bottom: 2px;
    padding: 2px
}

.c-lp-cta-renewal .txt-box .btn-wrap .cta-btn.mod-reserve {
    background-color: #5cd5e8
}

.c-lp-cta-renewal .txt-box .btn-wrap .cta-btn.mod-reserve .txt01 {
    background-color: #fff;
    color: #5cd5e8
}

.c-lp-cta-renewal .txt-box .btn-wrap .cta-btn.mod-reserve .txt02 {
    color: #fff;
    font-size: 16px;
    letter-spacing: .2rem;
    line-height: 20px
}

.c-lp-cta-renewal .txt-box .btn-wrap .cta-btn.mod-reserve .txt02--s {
    font-size: 14px
}

.c-lp-cta-renewal .txt-box .btn-wrap .cta-btn.mod-request {
    background-color: #fff;
    border: 2px solid #ed80a7
}

.c-lp-cta-renewal .txt-box .btn-wrap .cta-btn.mod-request .txt01 {
    background-color: #ed80a7;
    color: #fff
}

.c-lp-cta-renewal .txt-box .btn-wrap .cta-btn.mod-request .txt02 {
    color: #ed80a7;
    font-size: 16px;
    letter-spacing: .1em;
    line-height: 20px
}

.c-lp-cta-renewal--02 {
    background-color: transparent
}

.c-lp-cta-renewal--02 .inner {
    background-image: url(../../assets/img/common/lp_cta_bg02_pc_renewal.png)
}

.c-lp-cta-renewal--02 .img-box {
    max-width: 28%
}

.c-lp-cta-renewal--02 .txt-box {
    max-width: 65%
}

.c-lp-cta-renewal--02 .txt-box .title {
    margin: 0 auto;
    padding: 20px 0;
    width: 100%
}

.c-lp-cta-renewal--02 .txt-box .btn-wrap {
    justify-content: center;
    margin: 0
}

.c-lp-cta-renewal--02 .txt-box .btn-wrap .cta-btn {
    display: inline-flex;
    width: 75%
}

.c-lp-cta-renewal--02 .txt-box .btn-wrap .cta-btn span {
    width: 80%
}

.c-lp-cta-renewal--02 .txt-box .btn-wrap .cta-btn span.txt01 {
    font-size: 16px;
    line-height: 1.2;
    margin-bottom: 6px;
    padding: 3px 2px
}

.c-lp-cta-renewal--02 .txt-box .btn-wrap .cta-btn.mod-request .txt02 {
    font-size: 24px;
    line-height: 26px
}

.c-lp-cta-renewal--common .txt-box .title {
    padding-bottom: 23px
}

.c-lp-cta-renewal--common .txt-box .btn-wrap .cta-btn {
    margin-right: 20px;
    padding: 10px 24px 26px 8px
}

.c-lp-cta-renewal--common .txt-box .btn-wrap .cta-btn:after {
    height: 21px;
    top: 39%;
    width: 12px
}

.c-lp-cta-renewal--common .txt-box .btn-wrap .cta-btn span.txt01 {
    font-size: 18px;
    letter-spacing: .08em;
    line-height: 24px;
    margin-bottom: 13px;
    padding: 2px
}

.c-lp-cta-renewal--common .txt-box .btn-wrap .cta-btn.mod-reserve .txt02 {
    font-size: 31px
}

.c-lp-cta-renewal--common .txt-box .btn-wrap .cta-btn.mod-reserve .txt02--s {
    font-size: 28px
}

.c-lp-cta-renewal--common .txt-box .btn-wrap .cta-btn.mod-request .txt02 {
    font-size: 29px
}

@media screen and (max-width:1024px) {
    .c-lp-cta-renewal .txt-box .btn-wrap .cta-btn {
        padding: 8px 15px 10px
    }

    .c-lp-cta-renewal .txt-box .btn-wrap .cta-btn.mod-reserve .txt02 {
        font-size: 14px;
        line-height: 18px
    }

    .c-lp-cta-renewal .txt-box .btn-wrap .cta-btn.mod-reserve .txt02--s {
        font-size: 12px
    }

    .c-lp-cta-renewal .txt-box .btn-wrap .cta-btn.mod-request .txt02 {
        font-size: 14px;
        line-height: 18px
    }

    .c-lp-cta-renewal--02 .txt-box .btn-wrap .cta-btn {
        width: 80%
    }

    .c-lp-cta-renewal--02 .txt-box .btn-wrap .cta-btn.mod-request .txt02 {
        font-size: 22px;
        line-height: 18px
    }

    .c-lp-cta-renewal--common .txt-box .title {
        padding-bottom: 42px
    }

    .c-lp-cta-renewal--common .txt-box .btn-wrap .cta-btn.mod-reserve .txt02 {
        font-size: 25px
    }

    .c-lp-cta-renewal--common .txt-box .btn-wrap .cta-btn.mod-reserve .txt02--s {
        font-size: 22px
    }

    .c-lp-cta-renewal--common .txt-box .btn-wrap .cta-btn.mod-request .txt02 {
        font-size: 26px
    }
}

@media screen and (max-width:899px) {
    .c-lp-cta-renewal .inner {
        background-image: url(../../assets/img/common/lp_cta_bg_sp_renewal.png);
        background-position: 0 100%;
        display: block;
        padding: 20px !important
    }

    .c-lp-cta-renewal .img-box {
        max-width: 22.47%
    }

    .c-lp-cta-renewal .img-box img.pc {
        display: none !important
    }

    .c-lp-cta-renewal .img-box img.sp {
        display: block !important
    }

    .c-lp-cta-renewal .txt-box {
        max-width: 100%
    }

    .c-lp-cta-renewal .txt-box .title {
        margin: 0 auto;
        padding-bottom: 70px;
        width: 80%
    }

    .c-lp-cta-renewal .txt-box .title img.pc {
        display: none !important
    }

    .c-lp-cta-renewal .txt-box .title img.sp {
        display: block !important
    }

    .c-lp-cta-renewal .txt-box .btn-wrap {
        align-items: flex-end;
        flex-direction: column;
        margin: 0
    }

    .c-lp-cta-renewal .txt-box .btn-wrap .cta-btn {
        align-items: center;
        border-radius: 10px;
        margin: 0 0 11px;
        padding: 12px 14px 14px;
        text-align: center;
        width: 45%
    }

    .c-lp-cta-renewal .txt-box .btn-wrap .cta-btn:last-child {
        margin-bottom: 0
    }

    .c-lp-cta-renewal .txt-box .btn-wrap .cta-btn span {
        max-width: 140px;
        width: 85%
    }

    .c-lp-cta-renewal--02 .inner {
        background-image: url(../../assets/img/common/lp_cta_bg02_sp_renewal.png);
        display: flex;
        padding: 4% 3.5% 3.5% !important
    }

    .c-lp-cta-renewal--02 .img-box {
        max-width: 28%
    }

    .c-lp-cta-renewal--02 .txt-box {
        max-width: 60%
    }

    .c-lp-cta-renewal--02 .txt-box .title {
        padding: 3% 0;
        width: 80%
    }

    .c-lp-cta-renewal--02 .txt-box .btn-wrap {
        align-items: center
    }

    .c-lp-cta-renewal--02 .txt-box .btn-wrap .cta-btn {
        padding: 5px;
        width: 95%
    }

    .c-lp-cta-renewal--02 .txt-box .btn-wrap .cta-btn span {
        width: 70%
    }

    .c-lp-cta-renewal--02 .txt-box .btn-wrap .cta-btn span.txt01 {
        font-size: 15px;
        margin-bottom: 0;
        max-width: 75%;
        padding: 3px 2px
    }

    .c-lp-cta-renewal--02 .txt-box .btn-wrap .cta-btn.mod-request .txt02 {
        font-size: 18px;
        line-height: 1.3;
        max-width: 100%;
        width: 100%
    }

    .c-lp-cta-renewal--common .inner {
        padding: 30px 24px 25px !important
    }

    .c-lp-cta-renewal--common .txt-box .title {
        padding-bottom: 110px;
        width: 75%
    }

    .c-lp-cta-renewal--common .txt-box .btn-wrap .cta-btn {
        border-radius: 15px;
        padding: 12px 14px 15px;
        width: 53%
    }

    .c-lp-cta-renewal--common .txt-box .btn-wrap .cta-btn span {
        max-width: 100%
    }

    .c-lp-cta-renewal--common .txt-box .btn-wrap .cta-btn span.txt01 {
        font-size: 24px;
        letter-spacing: .08em;
        line-height: 21px;
        margin-bottom: 13px;
        padding: 9px
    }

    .c-lp-cta-renewal--common .txt-box .btn-wrap .cta-btn.mod-reserve .txt02 {
        font-size: 37px;
        line-height: 41px
    }

    .c-lp-cta-renewal--common .txt-box .btn-wrap .cta-btn.mod-reserve .txt02--s {
        font-size: 32px
    }

    .c-lp-cta-renewal--common .txt-box .btn-wrap .cta-btn.mod-request .txt02 {
        font-size: 35px
    }
}

@media screen and (max-width:768px) {
    .c-lp-cta-renewal .img-box {
        max-width: 20%
    }

    .c-lp-cta-renewal .txt-box .btn-wrap .cta-btn {
        padding: 19px 20px
    }

    .c-lp-cta-renewal .txt-box .btn-wrap .cta-btn span {
        max-width: 220px
    }

    .c-lp-cta-renewal .txt-box .btn-wrap .cta-btn span.txt01 {
        font-size: 16px
    }

    .c-lp-cta-renewal .txt-box .btn-wrap .cta-btn.mod-reserve .txt02 {
        font-size: 20px;
        line-height: 30px
    }

    .c-lp-cta-renewal .txt-box .btn-wrap .cta-btn.mod-reserve .txt02--s {
        font-size: 18px
    }

    .c-lp-cta-renewal .txt-box .btn-wrap .cta-btn.mod-request .txt02 {
        font-size: 20px;
        line-height: 30px
    }

    .c-lp-cta-renewal--02 .inner {
        padding: 6% 3.5% 5% !important
    }

    .c-lp-cta-renewal--02 .img-box {
        max-width: 20%
    }

    .c-lp-cta-renewal--02 .txt-box {
        max-width: 58%
    }

    .c-lp-cta-renewal--02 .txt-box .btn-wrap .cta-btn {
        padding: 5px;
        width: 90%
    }

    .c-lp-cta-renewal--02 .txt-box .btn-wrap .cta-btn span.txt01 {
        font-size: 15px
    }

    .c-lp-cta-renewal--02 .txt-box .btn-wrap .cta-btn.mod-request .txt02 {
        font-size: 20px;
        line-height: 1.3
    }

    .c-lp-cta-renewal--common .txt-box .title {
        padding-bottom: 100px;
        width: 80%
    }

    .c-lp-cta-renewal--common .txt-box .btn-wrap .cta-btn {
        padding: 12px 14px 15px
    }

    .c-lp-cta-renewal--common .txt-box .btn-wrap .cta-btn span.txt01 {
        line-height: 21px;
        margin-bottom: 2px;
        padding: 4px
    }

    .c-lp-cta-renewal--common .txt-box .btn-wrap .cta-btn.mod-request .txt02,
    .c-lp-cta-renewal--common .txt-box .btn-wrap .cta-btn.mod-reserve .txt02 {
        font-size: 20px;
        line-height: 26px
    }
}

@media screen and (max-width:600px) {
    .c-lp-cta-renewal .inner {
        padding: 24px 20px !important
    }

    .c-lp-cta-renewal .txt-box .title {
        padding-bottom: 37px
    }

    .c-lp-cta-renewal .txt-box .btn-wrap .cta-btn {
        padding: 15px;
        width: 55%
    }

    .c-lp-cta-renewal .txt-box .btn-wrap .cta-btn span {
        width: 90%
    }

    .c-lp-cta-renewal .txt-box .btn-wrap .cta-btn span.txt01 {
        font-size: 12px;
        line-height: 1.2;
        max-width: 160px;
        padding: 3px
    }

    .c-lp-cta-renewal .txt-box .btn-wrap .cta-btn.mod-reserve .txt02 {
        font-size: 16px;
        line-height: 18px
    }

    .c-lp-cta-renewal .txt-box .btn-wrap .cta-btn.mod-reserve .txt02--s {
        font-size: 14px
    }

    .c-lp-cta-renewal .txt-box .btn-wrap .cta-btn.mod-request .txt02 {
        font-size: 16px;
        letter-spacing: .2rem;
        line-height: 18px
    }

    .c-lp-cta-renewal--02 .inner {
        padding: 9% 3.5% 4% !important
    }

    .c-lp-cta-renewal--02 .txt-box {
        max-width: 52%
    }

    .c-lp-cta-renewal--02 .txt-box .title {
        padding: 2.5% 0
    }

    .c-lp-cta-renewal--02 .txt-box .btn-wrap .cta-btn {
        padding: 5px;
        width: 100%
    }

    .c-lp-cta-renewal--02 .txt-box .btn-wrap .cta-btn.mod-request .txt01 {
        max-width: 78%
    }

    .c-lp-cta-renewal--common .txt-box .title {
        padding-bottom: 65px
    }

    .c-lp-cta-renewal--common .txt-box .btn-wrap .cta-btn {
        width: 55%
    }

    .c-lp-cta-renewal--common .txt-box .btn-wrap .cta-btn span.txt01 {
        max-width: 200px
    }

    .c-lp-cta-renewal--common .txt-box .btn-wrap .cta-btn:after {
        height: 16px;
        width: 8px
    }
}

@media screen and (max-width:420px) {
    .c-lp-cta-renewal .inner {
        padding: 15px 22px !important
    }

    .c-lp-cta-renewal .img-box {
        bottom: 8px;
        left: 10px;
        max-width: 27%
    }

    .c-lp-cta-renewal .txt-box .title {
        padding-bottom: 15px
    }

    .c-lp-cta-renewal .txt-box .btn-wrap .cta-btn {
        margin: 0 0 5px;
        padding: 10px 12px;
        width: 60%
    }

    .c-lp-cta-renewal .txt-box .btn-wrap .cta-btn:after {
        height: 18px;
        top: 38%;
        width: 7px
    }

    .c-lp-cta-renewal .txt-box .btn-wrap .cta-btn span.txt01 {
        margin-bottom: 3px;
        padding: 2px 3px
    }

    .c-lp-cta-renewal .txt-box .btn-wrap .cta-btn.mod-reserve .txt02 {
        font-size: 14px;
        line-height: 16px
    }

    .c-lp-cta-renewal .txt-box .btn-wrap .cta-btn.mod-reserve .txt02--s {
        font-size: 12px
    }

    .c-lp-cta-renewal .txt-box .btn-wrap .cta-btn.mod-request .txt02 {
        font-size: 14px;
        line-height: 18px
    }

    .c-lp-cta-renewal--02 .inner {
        padding: 9% 3.5% 4% !important
    }

    .c-lp-cta-renewal--02 .img-box {
        max-width: 20%
    }

    .c-lp-cta-renewal--02 .txt-box .title {
        padding: 2.5% 0
    }

    .c-lp-cta-renewal--02 .txt-box .btn-wrap .cta-btn {
        padding: 4px;
        width: 100%
    }

    .c-lp-cta-renewal--02 .txt-box .btn-wrap .cta-btn.mod-request .txt01 {
        font-size: 11px;
        max-width: 78%
    }

    .c-lp-cta-renewal--02 .txt-box .btn-wrap .cta-btn.mod-request .txt02 {
        font-size: 13px;
        line-height: 16px
    }

    .c-lp-cta-renewal--common .txt-box .title {
        padding-bottom: 30px
    }
}

@media screen and (max-width:360px) {
    .c-lp-cta-renewal .inner {
        padding: 12px 20px !important
    }

    .c-lp-cta-renewal .txt-box .btn-wrap .cta-btn {
        padding: 8px 10px
    }

    .c-lp-cta-renewal .txt-box .btn-wrap .cta-btn:after {
        right: 3%
    }

    .c-lp-cta-renewal .txt-box .btn-wrap .cta-btn span.txt01 {
        font-size: 10px;
        max-width: 160px
    }

    .c-lp-cta-renewal .txt-box .btn-wrap .cta-btn.mod-reserve .txt02 {
        font-size: 12px;
        line-height: 14px
    }

    .c-lp-cta-renewal .txt-box .btn-wrap .cta-btn.mod-reserve .txt02--s {
        font-size: 11px
    }

    .c-lp-cta-renewal .txt-box .btn-wrap .cta-btn.mod-request .txt02 {
        font-size: 12px;
        line-height: 14px
    }

    .c-lp-cta-renewal--02 .inner {
        padding: 9% 3.5% 2% !important
    }

    .c-lp-cta-renewal--02 .txt-box {
        max-width: 58%
    }

    .c-lp-cta-renewal--02 .txt-box .btn-wrap .cta-btn {
        padding: 3px
    }

    .c-lp-cta-renewal--02 .txt-box .btn-wrap .cta-btn.mod-request .txt01 {
        font-size: 10px
    }

    .c-lp-cta-renewal--02 .txt-box .btn-wrap .cta-btn.mod-request .txt02 {
        font-size: 11px;
        line-height: 12px
    }
}

.c-page-ttl,
.c-page-ttl-wrap {
    text-align: center
}

.c-page-ttl {
    color: #333;
    font-family: Shippori Mincho, serif;
    font-size: 45px;
    font-weight: 600;
    letter-spacing: .03em;
    line-height: 1.5;
    margin: 0 auto 4px
}

.c-page-subttl,
.c-page-ttl .mod-txt-small {
    font-size: 20px;
    font-size: 2rem
}

.c-page-body {
    color: #333;
    font-size: 18px;
    letter-spacing: .08em;
    line-height: 34px;
    text-align: center
}

.c-page-body span {
    display: block
}

.c-page-txt {
    font-size: 22px;
    font-size: 2.2rem;
    margin-bottom: 1em
}

.c-page-txt:last-child {
    margin-bottom: 0
}

@media screen and (max-width:900px) {
    .c-page-ttl {
        font-size: 44px;
        font-size: 4.4rem
    }

    .c-page-subttl,
    .c-page-ttl .mod-txt-small {
        font-size: 18px;
        font-size: 1.8rem
    }

    .c-page-body,
    .c-page-txt {
        font-size: 20px;
        font-size: 2rem
    }
}

@media screen and (max-width:640px) {
    .c-page-ttl {
        font-size: 36px;
        font-size: 3.6rem
    }

    .c-page-subttl,
    .c-page-ttl .mod-txt-small {
        font-size: 16px;
        font-size: 1.6rem
    }
}

@media screen and (max-width:480px) {
    .c-page-ttl {
        font-size: 30px;
        font-size: 3rem;
        line-height: 1.4;
        margin-bottom: 10px
    }

    .c-page-subttl,
    .c-page-ttl .mod-txt-small {
        font-size: 14px;
        font-size: 1.4rem
    }

    .c-page-body {
        font-size: 16px;
        line-height: 28px;
        text-align: left
    }

    .c-page-body span {
        display: inline
    }

    .c-page-txt {
        font-size: 18px;
        font-size: 1.8rem
    }
}

#about-semiorder #cospa h2 {
    color: #e595bb;
    font-family: "Noto Serif JP", serif;
    font-size: 4.2rem;
    font-weight: 600;
    line-height: 1.5;
    margin: 0 auto 30px;
    text-align: center
}

.c-page-trivia {
    display: flex;
    flex-wrap: wrap
}

@media screen and (max-width:640px) {
    .c-page-trivia {
        display: block
    }
}

.c-page-trivia:after {
    clear: both;
    content: "";
    display: block
}

.c-page-trivia .item {
    flex: 1 1 23.4375%;
    max-width: 23.4375%;
    min-width: 23.4375%
}

@media screen and (max-width:960px) {
    .c-page-trivia .item {
        flex: 1 1 49%;
        max-width: 49%;
        min-width: 49%
    }
}

@media screen and (max-width:640px) {
    .c-page-trivia .item {
        float: none;
        max-width: 100%;
        min-width: 0
    }
}

@media screen and (min-width:961px) {
    .c-page-trivia .item:not(:nth-child(4n+1)) {
        margin-left: 2.08333%
    }

    .c-page-trivia .item:not(:nth-child(-n+4)) {
        margin-top: 2.08333%
    }
}

@media screen and (max-width:960px) {
    .c-page-trivia .item:nth-child(2n) {
        margin-left: 2%
    }
}

@media screen and (max-width:640px) {
    .c-page-trivia .item:nth-child(2n) {
        margin-left: 0
    }

    .c-page-trivia .item+.item {
        margin-top: 20px
    }
}

.c-page-trivia .item:not(:nth-child(-n+4)) {
    margin-top: 20px
}

.c-page-voice {
    margin-bottom: 51px
}

@media screen and (max-width:767px) {
    .c-page-voice {
        margin-bottom: 28px
    }
}

.c-page-voice li {
    border-top: 1px solid #ddd;
    padding: 30px 0 50px
}

.c-page-voice li:last-child {
    border-bottom: 1px solid #ddd
}

@media screen and (max-width:767px) {
    .c-page-voice li {
        padding: 30px 0 44px
    }
}

.c-page-voice .head {
    font-family: Shippori Mincho, sans-serif
}

@media screen and (max-width:767px) {
    .c-page-voice .head {
        border-bottom: none;
        display: block;
        margin-bottom: 10px;
        padding-bottom: 0
    }
}

.c-page-voice .head-title {
    color: #333;
    display: inline;
    font-size: 28px;
    font-weight: 600;
    letter-spacing: .03em;
    line-height: 50px;
    position: relative
}

@media screen and (max-width:767px) {
    .c-page-voice .head-title {
        font-size: 22px;
        line-height: 29px;
        margin-bottom: 0;
        padding-bottom: 5px
    }
}

.c-page-voice .head-title:after,
.c-page-voice .head-title:before {
    color: #dc0250;
    content: "“";
    display: inline-block;
    font-size: 50px
}

@media screen and (max-width:767px) {

    .c-page-voice .head-title:after,
    .c-page-voice .head-title:before {
        font-size: 40px
    }
}

.c-page-voice .head-title:after {
    content: "”"
}

.c-page-voice .head-personal {
    color: #333;
    display: inline-block;
    font-family: Shippori Mincho, sans-serif;
    font-size: 20px;
    letter-spacing: .05em;
    margin-left: 22px
}

@media screen and (max-width:767px) {
    .c-page-voice .head-personal {
        font-size: 16px;
        margin: 15px 0 0 8px
    }
}

.c-page-voice .content {
    color: #333;
    font-size: 16px;
    letter-spacing: .095em;
    line-height: 32px
}

@media screen and (max-width:767px) {
    .c-page-voice .content {
        line-height: 27px
    }
}

@media screen and (max-width:360px) {
    .c-page-voice .content {
        font-size: 14px
    }
}

.c-planList {
    display: flex;
    margin: 0 auto;
    max-width: 960px;
    width: 100%
}

@media screen and (max-width:769px) {
    .c-planList {
        display: block
    }
}

.c-planList li {
    flex: 1 1 100%;
    font-family: "Noto Serif JP", serif
}

.c-planList li a {
    color: #fff !important;
    display: block;
    height: 100%;
    padding: 24px 62px 24px 109px;
    position: relative;
    text-align: center;
    text-decoration: none !important
}

@media screen and (max-width:769px) {
    .c-planList li a {
        padding: 17px 49px 17px 78px
    }
}

.c-planList li a:after,
.c-planList li a:before {
    background-repeat: no-repeat;
    background-size: contain;
    content: "";
    display: block;
    position: absolute;
    top: 50%
}

.c-planList li a:before {
    height: 81px;
    left: 30px;
    margin-top: -40px;
    width: 81px
}

@media screen and (max-width:769px) {
    .c-planList li a:before {
        height: 60px;
        left: 23px;
        margin-top: -30px;
        width: 60px
    }
}

.c-planList li a:after {
    background-image: url(../../assets/img/about/semiorder-reason6-arrow@2x.png);
    height: 36px;
    margin-top: -18px;
    right: 30px;
    width: 19px
}

@media screen and (max-width:769px) {
    .c-planList li a:after {
        height: 24px;
        margin-top: -12px;
        right: 20px;
        width: 13px
    }
}

.c-planList li:first-child a {
    background: #e695bc
}

.c-planList li:first-child a:before {
    background-image: url(../../assets/img/about/semiorder-reason6-01-icon@2x.png)
}

.c-planList li:nth-child(2) a {
    background: #92b9ec
}

.c-planList li:nth-child(2) a:before {
    background-image: url(../../assets/img/about/semiorder-reason6-02-icon@2x.png)
}

.c-planList li p {
    font-size: 20px
}

@media screen and (max-width:769px) {
    .c-planList li p {
        font-size: 15px
    }
}

.c-planList li p.title,
.c-planList li span.title {
    font-size: 44px;
    font-weight: 700;
    line-height: 1.2;
    margin-top: 10px
}

@media screen and (max-width:769px) {

    .c-planList li p.title,
    .c-planList li span.title {
        font-size: 33px
    }
}

.c-planList li p.small,
.c-planList li span.small {
    font-size: 18px;
    line-height: 1.2;
    margin-top: 20px
}

@media screen and (max-width:769px) {

    .c-planList li p.small,
    .c-planList li span.small {
        font-size: 14px
    }
}

.c-planList li+li {
    margin-left: 30px
}

@media screen and (max-width:769px) {
    .c-planList li+li {
        margin-left: 0;
        margin-top: 15px
    }
}

.c-post-grid {
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -ms-flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    margin: 0 auto;
    max-width: 980px;
    padding: 0 10px
}

@media screen and (max-width:768px) {
    .c-post-grid {
        display: block;
        padding: 0
    }
}

.c-post-grid-main {
    max-width: 66.6%;
    min-height: 1px;
    min-width: 66.6%;
    padding-right: 20px;
    position: relative
}

@media screen and (max-width:768px) {
    .c-post-grid-main {
        max-width: 100%;
        min-width: 0;
        padding: 0;
        width: 100%
    }
}

.c-post-grid-side {
    max-width: 33.3%;
    min-width: 33.3%
}

@media screen and (max-width:768px) {
    .c-post-grid-side {
        max-width: 100%;
        min-width: 0;
        width: 100%
    }
}

.c-section {
    padding: 40px 0
}

.c-section:last-child {
    padding-bottom: 100px
}

.top .c-section {
    border-bottom: 1px solid #edb9d2;
    padding: 30px 0
}

.c-section-inner {
    margin: 0 auto;
    max-width: 1100px;
    padding: 0 10px
}

.salon .c-section-inner {
    max-width: 1000px;
    padding: 0
}

.c-section-ttl {
    color: #e595bb;
    font-family: "Noto Serif JP", serif;
    font-size: 42px;
    font-size: 4.2rem
}

.c-section-lead,
.c-section-ttl {
    margin-bottom: 20px;
    text-align: center
}

.c-section-img {
    margin-bottom: 30px
}

.c-section-ttl-wrap {
    position: relative
}

.c-section-ttl .mod-en {
    color: #5294ce;
    font-family: Old Standard TT;
    font-size: 50px;
    font-size: 5rem;
    font-style: italic;
    padding-right: 15px
}

.c-section-ttl .mod-ja {
    color: #616262;
    display: inline-block;
    font-size: 18px;
    font-size: 1.8rem;
    letter-spacing: .1em;
    padding-left: 25px;
    position: relative
}

.c-section-ttl .mod-ja:after {
    bottom: 0;
    content: "|";
    font-size: 20px;
    font-size: 2rem;
    left: 0;
    position: absolute;
    -webkit-transform: rotate(25deg);
    -ms-transform: rotate(25deg);
    transform: rotate(25deg)
}

.c-section-subttl {
    color: #04477d;
    font-family: Times New Roman, YuMincho, Yu Mincho, Hiragino Mincho ProN, Sawarabi Mincho, HGMinchoE, MS PMincho, MS Mincho, serif;
    font-size: 39px;
    font-size: 3.9rem;
    letter-spacing: 0;
    line-height: 1.2
}

.c-section-sublead {
    color: #616262;
    font-size: 16px;
    font-size: 1.6rem;
    letter-spacing: .06em;
    line-height: 1.5;
    margin: 20px auto 0;
    max-width: 376px;
    padding: 15px 0;
    position: relative
}

.c-section-sublead:before {
    background-position: 0 0;
    left: 0;
    top: 0
}

.c-section-sublead:after,
.c-section-sublead:before {
    background-repeat: no-repeat;
    background-size: contain;
    content: "";
    height: 34px;
    position: absolute;
    width: 34px
}

.c-section-sublead:after {
    background-position: 0 100%;
    bottom: 0;
    right: 0
}

.catalog .c-section-body:nth-child(n+2) {
    margin-top: 60px
}

@media screen and (min-width:768px) and (max-width:1040px) {
    .c-section-subttl {
        font-size: 46px;
        font-size: 4.42308vw
    }
}

@media screen and (max-width:767px) {
    .top .c-section {
        padding: 30px 0
    }

    .c-section-inner {
        padding: 0 20px
    }

    .catalog .c-section-body:nth-child(n+2) {
        margin-top: 40px
    }

    .c-section:last-child {
        padding-bottom: 99px
    }
}

@media screen and (max-width:640px) {
    .c-section-subttl {
        font-size: 40px;
        font-size: 4rem
    }
}

@media screen and (max-width:480px) {
    .c-section {
        padding-bottom: 35px;
        padding-top: 15px
    }

    .top .c-section {
        padding: 30px 0
    }

    .c-section-inner {
        padding: 0 10px
    }

    .c-section-ttl {
        font-size: 30px;
        font-size: 3rem;
        margin-bottom: 15px
    }

    .c-section-lead {
        text-align: left
    }

    .c-section-lead br {
        display: none
    }

    .c-section-img {
        margin-bottom: 15px
    }

    .c-section-subttl {
        font-size: 28px;
        font-size: 2.8rem;
        margin-bottom: 10px
    }

    .c-section-sublead {
        font-size: 16px;
        font-size: 1.6rem;
        max-width: 300px
    }

    .c-section-sublead:after,
    .c-section-sublead:before {
        height: 17px;
        width: 17px
    }
}

@media screen and (max-width:340px) {
    .c-section-ttl {
        font-size: 26px;
        font-size: 2.6rem
    }
}

.salon .c-section {
    padding: 26px 0 73px
}

@media screen and (max-width:767px) {
    .salon .c-section {
        padding-top: 50px
    }
}

@media screen and (max-width:480px) {
    .salon .c-section {
        padding: 14px 0 65px
    }
}

.s-salon .c-section {
    padding-top: 0
}

@media screen and (max-width:767px) {
    .s-salon .c-section {
        padding-top: 0
    }
}

@media screen and (max-width:480px) {
    .s-salon .c-section {
        padding: 0 0 60px
    }
}

.faq .c-section {
    padding: 62px 0 98px
}

.faq .c-section .page-inner {
    padding: 110px 0 0
}

.faq .c-section .page-inner .c-section-inner {
    max-width: 900px;
    padding-top: 80px
}

@media screen and (max-width:767px) {
    .faq .c-section {
        padding: 20px 0 98px
    }

    .faq .c-section .page-inner {
        padding: 50px 0 0
    }

    .faq .c-section .page-inner .c-section-inner {
        padding-top: 50px
    }
}

.trivia .c-section {
    padding: 62px 0 91px
}

.trivia .c-section-inner {
    margin-top: 50px
}

@media screen and (max-width:767px) {
    .trivia .c-section-inner {
        padding: 0 10px
    }
}

.voice .c-section {
    padding: 62px 0 91px
}

.voice .c-section-inner {
    margin-top: 50px
}

@media screen and (max-width:800px) {
    .voice .c-section {
        padding-top: 25px
    }
}

@media screen and (max-width:480px) {
    .about .about__top .c-section {
        padding-top: 0
    }
}

.about .about__service .c-section-inner {
    margin: 0 auto;
    max-width: 100%;
    padding: 0
}

.faq--line-reserve .c-section,
.faq--line-reserve .c-section .page-inner {
    padding: 0
}

.faq--line-reserve .c-section .page-inner .c-section-inner {
    padding-bottom: 80px
}

@media screen and (max-width:767px) {
    .faq--line-reserve .c-section .page-inner .c-section-inner {
        padding-bottom: 50px
    }
}

.c-split-list .c-section-ttl {
    margin-bottom: 40px
}

.c-split-list {
    -webkit-box-align: center;
    -webkit-align-items: center;
    align-items: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    padding: 0
}

.top .c-split-list {
    padding: 0
}

.c-split-item {
    height: 560px;
    overflow: hidden;
    position: relative;
    width: 50%
}

.c-split-img-wrap,
.c-split-img-wrap2 {
    background-position: 100% 0;
    background-repeat: no-repeat;
    background-size: cover
}

.c-split-bg-wrap,
.mod-reverse .c-split-img-wrap,
.mod-reverse .c-split-img-wrap2 {
    background-position: 0 0
}

.c-split-bg-wrap {
    -webkit-box-align: start;
    -webkit-box-direction: normal;
    -webkit-align-items: start;
    align-items: flex-start;
    background-repeat: no-repeat;
    background-size: cover;
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    flex-direction: column;
    padding: 70px 40px 0
}

.mod-reverse .c-split-bg-wrap {
    -webkit-box-align: end;
    -webkit-align-items: end;
    align-items: flex-end;
    background-position: 100% 0
}

.c-split-bg-inner {
    max-width: 430px;
    text-align: center;
    width: 100%
}

@media screen and (max-width:1040px) {
    .c-split-bg-wrap {
        padding: 6.73077vw 3.84615vw 0
    }
}

@media screen and (max-width:900px) {
    .c-split-item {
        height: 500px
    }
}

@media screen and (max-width:767px) {
    .mod-reverse .c-split-bg-wrap {
        -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
        order: 2
    }

    .mod-reverse .c-split-img-wrap {
        -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
        order: 1
    }

    .c-split-list {
        -webkit-box-direction: normal;
        -webkit-flex-direction: column;
        flex-direction: column
    }

    .c-split-item {
        height: auto;
        width: 100%
    }

    .c-split-list .c-section-ttl {
        margin-bottom: 30px
    }

    .c-split-img-wrap,
    .c-split-img-wrap2 {
        height: 71.875vw
    }

    .c-split-bg-wrap {
        padding: 50px 40px
    }

    .c-split-bg-inner {
        margin: 0 auto
    }
}

@media screen and (max-width:480px) {
    .c-split-list .c-section-ttl {
        margin-bottom: 20px
    }

    .c-split-bg-wrap {
        padding: 30px 10px 40px
    }
}

.c-tag-wrap {
    margin-bottom: 30px;
    padding: 30px 0 10px
}

.c-tag-wrap:last-child {
    margin-bottom: 0
}

.c-tag-ttl {
    border-bottom: 2px solid #edb9d2;
    color: #e8529a;
    font-size: 20px;
    font-size: 2rem;
    line-height: 1.4;
    margin-bottom: 10px;
    padding-bottom: 3px
}

h3.c-tag-ttl {
    border-left: none;
    margin-top: 0;
    padding-left: 0
}

.c-tag-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -ms-flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    margin: 0 -10px
}

.c-tag-item {
    padding: 10px
}

.c-tag-list .c-tag-item a {
    background-color: #fff;
    border: 1px solid #edb9d2;
    border-radius: 50px;
    color: #292427;
    display: block;
    font-size: 18px;
    font-size: 1.8rem;
    line-height: 1;
    min-width: 160px;
    padding: 10px;
    text-align: center;
    text-decoration: none;
    -webkit-transition: all .25s ease;
    -ms-transition: all .25s ease;
    transition: all .25s ease
}

.c-tag-list .c-tag-item a:hover {
    background: #e595bb;
    color: #fff;
    opacity: 1
}

@media screen and (max-width:767px) {
    .c-tag-wrap {
        padding-bottom: 15px
    }

    .c-tag-ttl {
        font-size: 18px;
        font-size: 1.8rem;
        margin-bottom: 20px
    }
}

@media screen and (max-width:480px) {
    .c-tag-wrap {
        margin-bottom: 15px;
        padding: 15px 0
    }

    .c-tag-ttl {
        border-bottom: 2px solid #e595bb;
        color: #e8529a;
        font-size: 18px;
        font-size: 1.8rem;
        font-weight: 400;
        margin-bottom: 5px;
        padding-bottom: 5px
    }

    .c-tag-list {
        margin: 0 -5px
    }

    .c-tag-item {
        padding: 5px
    }

    .c-tag-list .c-tag-item a {
        display: block;
        font-size: 14px;
        font-size: 1.4rem;
        min-width: 120px;
        padding: 10px 20px
    }
}

.recipe {
    border-radius: 8px;
    box-shadow: 1px 1px 4px 1px #ddd;
    margin-top: 30px;
    overflow: hidden
}

.recipe-inner {
    border-top: 10px solid #ec6c6a;
    padding: 40px 20px 20px
}

.recipe-ttl {
    font-size: 30px;
    font-size: 3rem;
    font-weight: 700;
    line-height: 1.5;
    padding: 0 20px;
    text-align: center
}

.recipe-body,
.recipe-main {
    margin-top: 20px
}

.recipe-main {
    margin-bottom: 30px
}

.recipe [class^=icon-],
[class*=" icon-"] {
    color: #ec6c6a;
    padding-right: 5px
}

.recipe-time {
    padding-left: 1em;
    text-indent: -1.3em
}

.recipe-material {
    border-bottom: 2px solid #ec6c6a;
    font-size: 18px;
    font-size: 1.8rem;
    font-weight: 700;
    letter-spacing: .01em;
    line-height: 1.4;
    margin-top: 20px;
    padding-bottom: 5px
}

.recipe-process-list {
    margin-top: 30px
}

.recipe-process-item {
    border-top: 1px dotted #ccc;
    margin-bottom: 20px;
    min-height: 4.5em;
    padding-left: 50px;
    padding-top: 20px;
    position: relative
}

.recipe-process-item:first-child {
    border-top: none
}

.recipe-process-item .num {
    color: #ec6c6a;
    content: "1";
    font-family: Old Standard TT;
    font-size: 50px;
    font-size: 5rem;
    font-style: italic;
    left: 0;
    line-height: 1;
    position: absolute;
    top: 20px
}

@media screen and (max-width:767px) {
    .recipe-inner {
        padding: 30px 0 20px
    }

    .recipe-ttl {
        font-size: 24px;
        font-size: 2.4rem
    }

    .recipe-main {
        margin-top: 10px
    }

    .recipe-detail p {
        margin: 0 20px
    }

    .recipe-body {
        padding: 0 20px
    }

    .recipe-material {
        font-size: 18px;
        font-size: 1.8rem
    }

    .recipe-process-item {
        padding-left: 40px
    }

    .recipe-process-item .num {
        font-size: 40px;
        font-size: 4rem
    }
}

.event .tag-list {
    max-height: 100%
}

.single a.c-btn.c-btn-icon.c-btn-grad {
    border-radius: 30px;
    color: #fff;
    height: auto;
    justify-content: center;
    line-height: 1.4;
    padding: 15px
}

.single a.c-btn.c-btn-icon.c-btn-grad:after {
    background-image: none;
    content: "\f105";
    font-family: FontAwesome;
    height: auto;
    margin-top: 1px;
    position: absolute;
    right: 15px;
    top: 50%;
    transform: translateX(0) translateY(-50%);
    width: auto
}

.mlink {
    width: 100%
}

.mlink-contents {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    position: relative
}

.mlink-ttl {
    color: #5294ce;
    line-height: 1.3;
    margin-bottom: 15px;
    padding: 0 10px;
    text-align: left
}

.mlink-ttl .mod-en {
    font-family: Old Standard TT;
    font-size: 50px;
    font-size: 5rem;
    font-style: italic;
    padding-right: 15px
}

.mlink-ttl .mod-ja {
    color: #616262;
    font-size: 20px;
    font-size: 2rem;
    letter-spacing: .1em;
    padding-left: 25px;
    position: relative
}

.mlink-ttl .mod-ja:after {
    bottom: 1px;
    content: "|";
    font-size: 20px;
    font-size: 2rem;
    left: 0;
    position: absolute;
    -webkit-transform: rotate(25deg);
    -ms-transform: rotate(25deg);
    transform: rotate(25deg)
}

.mlink-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -ms-flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    max-width: 1020px
}

.mlink-item {
    min-width: 150px;
    padding: 10px
}

.mlink-btn {
    background-color: #fff;
    border-radius: 30px;
    color: #616262;
    display: block;
    font-size: 18px;
    font-size: 1.8rem;
    letter-spacing: .1em;
    line-height: 1.2;
    padding: 11px 15px;
    text-align: center;
    text-decoration: none;
    text-indent: .1em;
    -ms-transition: all .3s ease;
    -webkit-transition: all .3s ease;
    transition: all .3s ease
}

.mlink-btn:hover {
    background-color: #e8529a;
    color: #fff;
    opacity: 1
}

@media screen and (min-width:768px) and (max-width:900px) {
    .mlink-ttl .mod-en {
        font-size: 40px;
        font-size: 4rem;
        padding-right: 5px
    }

    .mlink-ttl .mod-ja {
        letter-spacing: .05em;
        padding-left: 15px
    }

    .mlink-ttl .mod-ja,
    .mlink-ttl .mod-ja:after {
        font-size: 15px;
        font-size: 1.5rem
    }
}

@media screen and (max-width:767px) {
    .mlink-ttl {
        padding: 0 20px
    }

    .mlink-ttl .mod-en {
        font-size: 46px;
        font-size: 4.6rem
    }

    .mlink-list {
        padding: 0 10px
    }

    .mlink-btn,
    .mlink-item {
        min-width: 33.33333%
    }
}

@media screen and (max-width:480px) {
    .mlink-ttl {
        padding: 0 10px
    }

    .mlink-ttl .mod-en {
        font-size: 30px;
        font-size: 3rem;
        padding-right: 10px
    }

    .mlink-ttl .mod-ja {
        padding-left: 15px
    }

    .mlink-ttl .mod-ja,
    .mlink-ttl .mod-ja:after {
        font-size: 13px;
        font-size: 1.3rem
    }

    .mlink-list {
        padding: 0 5px
    }

    .mlink-item {
        padding: 5px
    }

    .mlink-btn {
        border-radius: 30px;
        font-size: 12px;
        font-size: 1.2rem;
        padding: 10px 15px
    }
}

.mlink-fixed {
    width: 100%
}

.mlink-fixed-contents {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    position: relative
}

.mlink-fixed-ttl {
    color: #5294ce;
    line-height: 1.3;
    margin-bottom: 15px;
    padding: 0 10px;
    text-align: left
}

.mlink-fixed-ttl .mod-en {
    font-family: Old Standard TT;
    font-size: 50px;
    font-size: 5rem;
    font-style: italic;
    padding-right: 15px
}

.mlink-fixed-ttl .mod-ja {
    color: #616262;
    font-size: 20px;
    font-size: 2rem;
    letter-spacing: .1em;
    padding-left: 25px;
    position: relative
}

.mlink-fixed-ttl .mod-ja:after {
    bottom: 1px;
    content: "|";
    font-size: 20px;
    font-size: 2rem;
    left: 0;
    position: absolute;
    -webkit-transform: rotate(25deg);
    -ms-transform: rotate(25deg);
    transform: rotate(25deg)
}

.mlink-fixed-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -ms-flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    margin: 0 -6px;
    max-width: 1020px
}

.mlink-fixed-item {
    max-width: 253px;
    padding: 6px;
    width: 100%
}

.mlink-fixed-btn {
    background-color: #fff;
    border-radius: 30px;
    color: #616262;
    display: block;
    font-size: 18px;
    font-size: 1.8rem;
    letter-spacing: .1em;
    line-height: 1.2;
    padding: 11px 15px;
    text-align: center;
    text-decoration: none;
    text-indent: .1em;
    -ms-transition: all .3s ease;
    -webkit-transition: all .3s ease;
    transition: all .3s ease
}

.mlink-fixed-btn:not(span):hover {
    background-color: #5294ce;
    color: #fff;
    font-weight: 700;
    opacity: 1
}

@media screen and (min-width:768px) and (max-width:900px) {
    .mlink-fixed-ttl .mod-en {
        font-size: 40px;
        font-size: 4rem;
        padding-right: 5px
    }

    .mlink-fixed-ttl .mod-ja {
        letter-spacing: .05em;
        padding-left: 15px
    }

    .mlink-fixed-ttl .mod-ja,
    .mlink-fixed-ttl .mod-ja:after {
        font-size: 15px;
        font-size: 1.5rem
    }
}

@media screen and (max-width:767px) {
    .mlink-fixed-ttl {
        padding: 0 20px
    }

    .mlink-fixed-ttl .mod-en {
        font-size: 46px;
        font-size: 4.6rem
    }

    .mlink-fixed-list {
        padding: 0
    }

    .mlink-fixed-item {
        max-width: 50%
    }

    .mlink-fixed-btn {
        font-size: 15px;
        font-size: 1.5rem
    }
}

@media screen and (max-width:480px) {
    .mlink-fixed-ttl {
        padding: 0 10px
    }

    .mlink-fixed-ttl .mod-en {
        font-size: 30px;
        font-size: 3rem;
        padding-right: 10px
    }

    .mlink-fixed-ttl .mod-ja {
        padding-left: 15px
    }

    .mlink-fixed-ttl .mod-ja,
    .mlink-fixed-ttl .mod-ja:after {
        font-size: 13px;
        font-size: 1.3rem
    }

    .mlink-fixed-btn {
        border-radius: 30px;
        font-size: 12px;
        font-size: 1.2rem;
        padding: 10px 15px
    }
}

.modal-inline {
    background-color: #fff;
    border: 10px solid #b2c9e7;
    margin: 0 auto;
    max-width: 600px;
    padding: 50px 70px 60px;
    position: relative;
    width: 100%
}

.modal-img-wrap {
    margin: 0 auto 20px;
    max-width: 320px
}

.modal-content {
    color: #616262;
    font-size: 20px;
    font-size: 2rem;
    letter-spacing: .16em;
    line-height: 1.8;
    margin-bottom: 25px
}

.modal-close-wrap {
    cursor: pointer;
    display: block;
    height: 68px;
    line-height: 1;
    padding: 19px;
    position: absolute;
    right: 0;
    text-align: center;
    top: 0;
    width: 68px
}

.modal-close-icon,
.modal-close-icon span,
.modal-close-wrap {
    -webkit-transition: all .2s;
    transition: all .2s;
    vertical-align: top
}

.modal-close-icon,
.modal-close-icon span {
    display: inline-block
}

.modal-close-icon {
    height: 30px;
    position: relative;
    width: 30px
}

.modal-close-icon span {
    background-color: #5294ce;
    height: 2px;
    left: 0;
    position: absolute;
    width: 100%
}

.modal-close-icon span:first-of-type {
    top: 50%;
    -webkit-transform: translateX(0) translateY(-50%) rotate(-45deg);
    -moz-transform: translateX(0) translateY(-50%) rotate(-45deg);
    -ms-transform: translateX(0) translateY(-50%) rotate(-45deg);
    -o-transform: translateX(0) translateY(-50%) rotate(-45deg);
    transform: translateX(0) translateY(-50%) rotate(-45deg)
}

.modal-close-wrap:hover .modal-close-icon span:first-of-type {
    -webkit-transform: translateX(0) translateY(-50%) rotate(-45deg) scale(1.5);
    -moz-transform: translateX(0) translateY(-50%) rotate(-45deg) scale(1.5);
    -ms-transform: translateX(0) translateY(-50%) rotate(-45deg) scale(1.5);
    -o-transform: translateX(0) translateY(-50%) rotate(-45deg) scale(1.5);
    transform: translateX(0) translateY(-50%) rotate(-45deg) scale(1.5)
}

.modal-close-icon span:nth-of-type(2) {
    bottom: auto;
    top: 50%;
    -webkit-transform: translateX(0) translateY(-50%) rotate(45deg);
    -moz-transform: translateX(0) translateY(-50%) rotate(45deg);
    -ms-transform: translateX(0) translateY(-50%) rotate(45deg);
    -o-transform: translateX(0) translateY(-50%) rotate(45deg);
    transform: translateX(0) translateY(-50%) rotate(45deg)
}

.modal-close-wrap:hover .modal-close-icon span:nth-of-type(2) {
    -webkit-transform: translateX(0) translateY(-50%) rotate(45deg) scale(1.5);
    -moz-transform: translateX(0) translateY(-50%) rotate(45deg) scale(1.5);
    -ms-transform: translateX(0) translateY(-50%) rotate(45deg) scale(1.5);
    -o-transform: translateX(0) translateY(-50%) rotate(45deg) scale(1.5);
    transform: translateX(0) translateY(-50%) rotate(45deg) scale(1.5)
}

.modal-inline button.mfp-close {
    display: none
}

.modal-photo {
    margin: 0 auto;
    max-width: 700px;
    position: relative
}

.modal-photo button.mfp-close {
    display: none
}

.modal-photo .modal-close-wrap {
    height: 61px;
    padding: 15px;
    width: 61px
}

.modal-photo .modal-close-icon span {
    background-color: #fff
}

@media screen and (max-width:767px) {
    .modal-photo {
        max-width: 450px
    }
}

@media screen and (max-width:640px) {
    .modal-inline {
        border-width: 5px;
        padding: 50px
    }
}

@media screen and (max-width:480px) {
    .modal-content {
        font-size: 13px;
        font-size: 1.3rem
    }

    .modal-photo .modal-close-wrap {
        height: 12.5vw;
        padding: 3.125vw;
        width: 12.5vw
    }

    .modal-photo .modal-close-icon {
        height: 6.25vw;
        width: 6.25vw
    }
}

.page-heading-ttl {
    color: #e595bb;
    font-family: "Noto Serif JP", serif;
    font-size: 42px;
    font-size: 4.2rem;
    line-height: 1.5;
    padding: 10px;
    text-align: center
}

.page-eyecatch {
    background-position: top;
    background-repeat: no-repeat;
    background-size: 1280px auto;
    height: 480px;
    margin: 0 auto;
    max-width: 1280px;
    width: 100%
}

.voice .page-eyecatch {
    background-image: url(../../assets/img/eyecatch/eyecatch_voice.jpg)
}

.faq .page-eyecatch {
    background-image: url(../../assets/img/eyecatch/eyecatch_faq.jpg)
}

.trivia .page-eyecatch {
    background-image: url(../../assets/img/eyecatch/eyecatch_trivia.jpg)
}

.event .page-eyecatch {
    background-image: url(../../assets/img/eyecatch/eyecatch_event.jpg)
}

.introduction .page-eyecatch {
    background-image: url(../../assets/img/eyecatch/eyecatch_introduction.jpg)
}

.news .page-eyecatch {
    background-image: url(../../assets/img/eyecatch/eyecatch_news.jpg)
}

.about .page-eyecatch {
    background-image: url(../../assets/img/eyecatch/eyecatch_about.jpg)
}

.salon .page-eyecatch {
    background-image: url(../../assets/img/eyecatch/eyecatch_salon.jpg);
    background-position: 84% 46%;
    background-size: 1000px auto;
    height: 250px;
    max-width: auto;
    width: auto
}

.catalog .page-eyecatch {
    background-image: url(../../assets/img/eyecatch/eyecatch_catalog.jpg)
}

.p-pflecare__wrap .page-eyecatch {
    background-image: url(../../assets/img/pflecare/eyecatch_pflecare_pc.jpg)
}

@media screen and (max-width:767px) {
    .p-pflecare__wrap .page-eyecatch {
        background-image: url(../../assets/img/pflecare/eyecatch_pflecare_sp.jpg)
    }
}

@media only screen and (-webkit-min-device-pixel-ratio:2) and (min-width:641px) {
    .voice .page-eyecatch {
        background-image: url(../../assets/img/eyecatch/eyecatch_voice@2x.jpg)
    }

    .faq .page-eyecatch {
        background-image: url(../../assets/img/eyecatch/eyecatch_faq@2x.jpg)
    }

    .trivia .page-eyecatch {
        background-image: url(../../assets/img/eyecatch/eyecatch_trivia@2x.jpg)
    }

    .event .page-eyecatch {
        background-image: url(../../assets/img/eyecatch/eyecatch_event@2x.jpg)
    }

    .introduction .page-eyecatch {
        background-image: url(../../assets/img/eyecatch/eyecatch_introduction@2x.jpg)
    }

    .news .page-eyecatch {
        background-image: url(../../assets/img/eyecatch/eyecatch_news@2x.jpg)
    }

    .about .page-eyecatch {
        background-image: url(../../assets/img/eyecatch/eyecatch_about@2x.jpg)
    }

    .salon .page-eyecatch {
        background-image: url(../../assets/img/eyecatch/eyecatch_salon@2x.jpg)
    }

    .catalog .page-eyecatch {
        background-image: url(../../assets/img/eyecatch/eyecatch_catalog@2x.jpg)
    }
}

@media only screen and (max-width:640px) {
    .voice .page-eyecatch {
        background-image: url(../../assets/img/eyecatch/eyecatch_voice.jpg)
    }

    .faq .page-eyecatch {
        background-image: url(../../assets/img/eyecatch/eyecatch_faq.jpg)
    }

    .trivia .page-eyecatch {
        background-image: url(../../assets/img/eyecatch/eyecatch_trivia.jpg)
    }

    .event .page-eyecatch {
        background-image: url(../../assets/img/eyecatch/eyecatch_event.jpg)
    }

    .introduction .page-eyecatch {
        background-image: url(../../assets/img/eyecatch/eyecatch_introduction.jpg)
    }

    .news .page-eyecatch {
        background-image: url(../../assets/img/eyecatch/eyecatch_news.jpg)
    }

    .about .page-eyecatch {
        background-image: url(../../assets/img/eyecatch/eyecatch_about.jpg)
    }

    .salon .page-eyecatch {
        background-image: url(../../assets/img/eyecatch/eyecatch_salon.jpg);
        background-position: 43% 19%
    }

    .catalog .page-eyecatch {
        background-image: url(../../assets/img/eyecatch/eyecatch_catalog.jpg)
    }
}

.page-lead {
    margin: 0 auto;
    max-width: 1000px;
    padding: 25px 20px;
    text-align: left
}

.salon .page-lead {
    font-size: 1.8rem;
    line-height: 31px;
    padding: 25px 0
}

.salon .page-heading-ttl {
    background: #ed80a7;
    color: #fff;
    font-family: Noto Sans JP, sans-serif;
    font-size: 30px;
    letter-spacing: .01em;
    line-height: 1.3;
    margin-bottom: 50px
}

.page-heading-body {
    background: #fff;
    padding: 24px 10px 29px
}

@media screen and (max-width:767px) {
    .page-heading-body {
        padding: 20px 10px
    }
}

.salon .page-heading-body {
    background-color: initial
}

@media screen and (max-width:960px) {
    .page-eyecatch {
        background-position: top;
        background-repeat: no-repeat;
        background-size: 1280px auto;
        height: 480px;
        margin: 0 auto;
        max-width: 1280px;
        width: 100%
    }

    .salon .page-heading-ttl {
        font-size: 3rem
    }
}

@media screen and (max-width:767px) {
    .page-eyecatch {
        background-size: auto 100%;
        height: auto;
        padding-top: 75%
    }

    .salon .page-heading-ttl {
        font-size: 25px;
        font-size: 2.5rem;
        line-height: 1.3
    }

    .salon .page-lead {
        padding: 13px 0
    }

    .salon .page-heading-body {
        padding: 8px 0
    }
}

@media screen and (max-width:600px) {

    .salon .page-eyecatch,
    .salon .page-heading-ttl {
        margin: 0 -35px 30px
    }
}

@media screen and (max-width:480px) {
    .page-heading-ttl {
        font-size: 24px;
        font-size: 2.4rem
    }

    .page-lead {
        padding: 15px
    }

    .salon .page-lead {
        font-size: 16px;
        font-size: 1.6rem;
        letter-spacing: .06em;
        line-height: 25px
    }

    .salon .page-eyecatch,
    .salon .page-heading-ttl {
        margin: 0 -20px 20px
    }

    .salon .page-eyecatch {
        background-position: 86% 46%;
        background-size: 500px 212px;
        height: 212px;
        padding-top: 63%
    }
}

@media screen and (max-width:360px) {
    .salon .page-eyecatch {
        background-position: 59% 46%
    }
}

.page-bg {
    background: #fdeff4;
    background: -moz-linear-gradient(top, #fdeff4 0, #fff 100%);
    background: -webkit-linear-gradient(top, #fdeff4, #fff);
    background: linear-gradient(180deg, #fdeff4 0, #fff);
    height: 250px;
    position: absolute;
    width: 100%;
    z-index: -99
}

@media screen and (max-width:800px) {
    .page-bg {
        height: 125px
    }
}

.page-inner {
    padding: 70px 0 0
}

.faq .page-heading-body {
    padding: 25px 10px 28px
}

.trivia .page-inner,
.voice .page-inner {
    padding: 54px 0 0
}

@media screen and (max-width:800px) {
    .about .about--support .page-inner {
        padding-top: 30px
    }
}

.event .page-heading-body {
    background: #edb9d2;
    padding: 10px 0
}

.catalog-single.single .about-section .inner {
    max-width: 980px;
    padding: 40px 10px 0
}

.catalog-single.single ul.top-trivia-list {
    display: flex;
    flex-wrap: wrap
}

.catalog-single.single ul.top-trivia-list li.item {
    flex: 1 1 23.4375%;
    max-width: 23.4375%;
    min-width: 23.4375%
}

.catalog-single.single ul.top-trivia-list li.item .c-list-img-wrap {
    background-position: 50%;
    background-size: cover;
    flex: 1 1 50%;
    padding-top: 0
}

.catalog-single.single ul.top-trivia-list li.item .c-list-img-wrap:before {
    content: "";
    display: block;
    padding-top: 67.90698%
}

.catalog-single.single ul.top-trivia-list li.item .c-list-contents {
    flex: 1 1 50%
}

@media screen and (min-width:961px) {
    .catalog-single.single ul.top-trivia-list .item:not(:nth-child(4n+1)) {
        margin-left: 2.08333%
    }
}

@media screen and (max-width:960px) {
    .catalog-single.single .about-section .inner .top-trivia-list .item {
        flex: 1 1 49%;
        max-width: 49%;
        min-width: 49%
    }

    .catalog-single.single .about-section .inner .top-trivia-list .item:nth-child(2n) {
        margin-left: 2%
    }

    .catalog-single.single .about-section .inner .top-trivia-list .item+.item {
        margin-top: 20px
    }
}

@media screen and (max-width:640px) {
    .catalog-single.single .about-section .inner .top-trivia-list {
        display: block
    }

    .catalog-single.single .about-section .inner .top-trivia-list .item {
        float: none;
        max-width: 100%;
        min-width: 0
    }

    .catalog-single.single .about-section .inner .top-trivia-list .item:nth-child(2n) {
        margin-left: 0
    }

    .catalog-single.single .about-section .inner .top-trivia-list .item+.item {
        margin-top: 20px
    }
}

.about__top .page-inner {
    padding: 87px 0 0
}

.about .about__service .page-inner {
    padding-top: 37px
}

.about .about__service .c-page-ttl {
    letter-spacing: .05em
}

.about .about__service .c-page-body {
    font-size: 16px;
    letter-spacing: .07em;
    line-height: 32px
}

.about .about__service .c-page-voice .head-title {
    letter-spacing: .05em
}

.about .about__service .c-page-voice li:last-child .content {
    margin-top: 5px
}

.p-pagetitle {
    align-items: flex-start;
    display: flex;
    flex-flow: column;
    justify-content: center;
    padding-bottom: 27px
}

.p-pagetitle .p-page-title__inner {
    margin: 0 auto;
    max-width: 880px
}

.p-pagetitle--support {
    padding-bottom: 0
}

.p-pagetitle--support .p-page-title__inner {
    max-width: 980px
}

.p-pagetitle--support .p-page-title__inner--support {
    margin-left: 52px;
    width: 100%
}

.p-pagetitle--support p {
    max-width: 880px
}

.p-pagetitle .p-pagetitle__bg {
    position: relative;
    width: 100%;
    z-index: 0
}

.p-pagetitle dl {
    padding: 0 0 26px;
    position: relative;
    text-align: left;
    z-index: 1
}

.p-pagetitle dl:after {
    border: 2px solid #dc0250;
    bottom: 0;
    content: "";
    display: block;
    height: 2px;
    position: absolute;
    width: 50px
}

.p-pagetitle dl dt {
    font-size: 18px;
    line-height: 1;
    margin-right: .1em
}

.p-pagetitle dl dd,
.p-pagetitle dl dt {
    font-family: Shippori Mincho, serif;
    font-weight: 600
}

.p-pagetitle dl dd {
    font-size: 28px;
    letter-spacing: .05em;
    line-height: 38px;
    padding-top: 27px
}

.p-pagetitle dl dd span {
    font-size: 45px;
    margin-right: 21px
}

.p-pagetitle p {
    font-family: Shippori Mincho, serif;
    font-size: 18px;
    font-weight: 500;
    letter-spacing: .05em;
    line-height: 33px;
    padding: 15px 0 0;
    text-align: left
}

.p-pagetitle p span {
    display: inline-block
}

.p-pagetitle--about,
.p-pagetitle--faq,
.p-pagetitle--line-reserve,
.p-pagetitle--support {
    background-image: url(../../assets/img/ate_img/pagetitle_bg_about.png);
    background-position: 50%;
    background-repeat: no-repeat;
    background-size: cover;
    height: 350px
}

.p-pagetitle--about .p-pagetitle__bg,
.p-pagetitle--faq .p-pagetitle__bg,
.p-pagetitle--line-reserve .p-pagetitle__bg,
.p-pagetitle--support .p-pagetitle__bg {
    background-size: 0
}

.p-pagetitle--faq {
    background-image: url(../../assets/img/ate_img/pagetitle_bg_faq.jpg)
}

.p-pagetitle--support {
    background-image: url(../../assets/img/ate_img/pagetitle_bg_support.jpg)
}

.p-pagetitle--about .p-pagetitle__bg,
.p-pagetitle--faq .p-pagetitle__bg,
.p-pagetitle--support .p-pagetitle__bg {
    background-image: url(../../assets/img/ate_img/pagetitle_bg_about_sp.png)
}

.p-pagetitle--line-reserve {
    background-image: url(../../assets/img/ate_img/pagetitle_bg_line_reserve.png);
    background-position: top
}

.p-pagetitle--line-reserve .p-pagetitle__bg {
    background-image: none
}

.p-pagetitle--line-reserve dl {
    text-align: center
}

.p-pagetitle--line-reserve dl dt {
    font-size: 42px;
    font-weight: 400;
    letter-spacing: .2em;
    line-height: 1
}

.p-pagetitle--line-reserve dl dd {
    font-size: 18px;
    line-height: 26px;
    padding-top: 6px
}

.p-pagetitle--line-reserve dl:after {
    display: none
}

.p-pagetitle--line-reserve p {
    text-align: center
}

@media screen and (max-width:800px) {
    .p-pagetitle dl dd {
        font-size: 26px
    }

    .p-pagetitle dl dd span {
        margin-right: 0
    }

    .p-pagetitle dl dd span small {
        display: block;
        font-size: 26px;
        line-height: 28px;
        margin-bottom: 10px
    }

    .p-pagetitle p {
        font-size: 16px;
        letter-spacing: .07em;
        line-height: 27px
    }

    .p-pagetitle--about,
    .p-pagetitle--faq {
        height: 300px
    }

    .p-pagetitle--support {
        height: 450px
    }

    .p-pagetitle--support .p-page-title__inner--support {
        margin-left: 0
    }
}

@media screen and (max-width:600px) {
    .p-pagetitle {
        padding-bottom: 0
    }

    .p-pagetitle dl {
        padding-bottom: 24px
    }

    .p-pagetitle dl:after {
        border: 1px solid #dc0250;
        height: 1px;
        width: 43px
    }

    .p-pagetitle dl dd {
        font-size: 22px;
        letter-spacing: .05em;
        line-height: 32px;
        padding-top: 22px
    }

    .p-pagetitle dl dd span {
        display: block;
        margin-bottom: 13px
    }

    .p-pagetitle p {
        padding: 15px 0 40px
    }

    .p-pagetitle--about,
    .p-pagetitle--faq,
    .p-pagetitle--support {
        background-image: none !important;
        display: block;
        height: auto
    }

    .p-pagetitle--about .p-pagetitle__bg,
    .p-pagetitle--faq .p-pagetitle__bg,
    .p-pagetitle--support .p-pagetitle__bg {
        background-repeat: no-repeat;
        background-size: cover;
        height: 431px
    }

    .p-pagetitle--about .p-pagetitle__bg .p-page-title__inner,
    .p-pagetitle--faq .p-pagetitle__bg .p-page-title__inner,
    .p-pagetitle--support .p-pagetitle__bg .p-page-title__inner {
        align-items: normal;
        bottom: 0;
        display: flex;
        flex-flow: column;
        justify-content: center;
        left: 0;
        padding: 0 28px 0 40px;
        position: absolute;
        right: 0;
        top: 0
    }

    .p-pagetitle--about p br,
    .p-pagetitle--faq p br,
    .p-pagetitle--support p br {
        display: none
    }

    .p-pagetitle--support dl dd {
        padding-top: 24px
    }

    .p-pagetitle--support p {
        padding: 9px 0
    }
}

@media screen and (max-width:360px) {
    .p-pagetitle dl {
        padding-bottom: 20px
    }

    .p-pagetitle dl dd {
        font-size: 20px
    }

    .p-pagetitle dl dd span {
        font-size: 35px
    }
}

@media screen and (max-width:325px) {
    .p-pagetitle dl {
        padding-bottom: 10px
    }

    .p-pagetitle dl dd {
        font-size: 20px;
        font-size: 18px;
        padding-top: 10px
    }

    .p-pagetitle dl dd span {
        font-size: 30px
    }

    .p-pagetitle p {
        font-size: 14px
    }
}

.page-sub-title {
    margin-bottom: 51px;
    text-align: center
}

.page-sub-title h3 {
    font-family: Shippori Mincho, sans-serif;
    font-size: 45px;
    font-weight: 600;
    letter-spacing: .04em;
    line-height: 1.5;
    margin-bottom: 3px
}

.page-sub-title p {
    font-size: 16px;
    letter-spacing: .1em;
    line-height: 32px
}

.page-sub-title p span {
    display: block
}

@media screen and (max-width:1200px) {
    .page-sub-title h3 {
        font-size: 38px
    }
}

@media screen and (max-width:800px) {
    .page-sub-title {
        margin-bottom: 28px
    }

    .page-sub-title h3 {
        font-size: 30px;
        line-height: 42px;
        margin-bottom: 5px
    }

    .page-sub-title p {
        line-height: 27px
    }
}

@media screen and (max-width:400px) {
    .page-sub-title h3 span {
        display: block
    }

    .page-sub-title p {
        text-align: left
    }

    .page-sub-title p span {
        display: inline
    }
}

.c-modal-popup {
    bottom: 30px;
    opacity: 0;
    position: fixed;
    right: 0;
    visibility: hidden;
    z-index: 99
}

.c-modal-popup.animate {
    transition: visibility .2s ease-in-out, opacity .2s ease-in-out
}

.c-modal-popup.is-show {
    opacity: 1;
    visibility: visible
}

.c-modal-popup .pc {
    display: block
}

.c-modal-popup .smp {
    display: none
}

.c-modal-popup a {
    display: block
}

.c-modal-popup__bloc {
    max-width: 300px;
    position: relative;
    width: 100%;
    z-index: 1
}

.c-modal-popup .close {
    left: -6%;
    position: absolute;
    top: -6%;
    z-index: 999
}

@media screen and (max-width:940px) {
    .c-modal-popup {
        bottom: 0;
        transition: all .3s ease-out;
        width: 70%
    }

    .c-modal-popup.scr {
        bottom: 69px
    }

    .c-modal-popup .pc {
        display: none
    }

    .c-modal-popup .smp {
        display: block
    }

    .c-modal-popup__bloc {
        margin-bottom: 20px;
        max-width: 100%
    }

    .c-modal-popup .close {
        left: -4%;
        top: -7%
    }
}

@media screen and (max-width:600px) {
    .c-modal-popup .close {
        left: -5%;
        top: -10%
    }
}

@media screen and (max-width:400px) {
    .c-modal-popup .close {
        left: -6%;
        top: -12%
    }
}

.pc {
    display: block
}

.smp {
    display: none
}

@media screen and (max-width:800px) {
    .pc {
        display: none
    }

    .smp {
        display: block
    }
}

.l-wrap__outer {
    padding: 0 60px
}

.l-wrap__inner {
    max-width: 1128px
}

@media screen and (max-width:800px) {
    .l-wrap__outer {
        padding: 0 40px
    }
}

@media screen and (max-width:600px) {
    .l-wrap__outer {
        padding: 0 35px
    }
}

@media screen and (max-width:400px) {
    .l-wrap__outer {
        padding: 0 20px
    }
}

.l-wrap__inner {
    margin: 0 auto;
    max-width: 1080px;
    width: 100%
}

.breadcrumb,
.page-sub-heading {
    padding: 0 10px
}

.breadcrumb-inner {
    margin: 13px auto;
    max-width: 1000px
}

.breadcrumb-nav {
    color: #262626;
    font-size: 14px;
    line-height: 1.5
}

.breadcrumb-nav ul li {
    display: initial;
    letter-spacing: .08em
}

.breadcrumb-nav ul li+li {
    margin-left: 25px;
    position: relative
}

.breadcrumb-nav ul li+li:before {
    border-left: 1px solid #333;
    content: "";
    display: inline-block;
    height: 9px;
    left: -12px;
    margin-right: 1rem;
    position: absolute;
    top: 7px;
    width: 1px
}

.breadcrumb-nav ul li a,
.breadcrumb-nav ul li a[href]:not([class]) {
    color: #333;
    font-weight: 400;
    text-decoration: none
}

.breadcrumb-nav ul li a:hover,
.breadcrumb-nav ul li a[href]:not([class]):hover {
    text-decoration: underline
}

.breadcrumb i {
    color: #898989
}

@media screen and (max-width:480px) {
    .breadcrumb-nav {
        font-size: 10px;
        font-size: 1rem
    }

    .breadcrumb-nav ul li+li:before {
        top: 4px
    }
}

@media screen and (max-width:380px) {
    .breadcrumb-inner {
        margin: 10px auto
    }
}

#cl_btn {
    margin-left: 5px
}

.mycal table {
    border-collapse: collapse;
    float: left;
    margin: 10px 0 10px 22px
}

.mycal caption {
    padding-bottom: 5px
}

.mycal caption,
.mycal td,
.mycal th {
    text-align: center
}

.mycal th {
    background: #e9e9e9 !important;
    font-size: 18px;
    padding: 2px 5px
}

.mycal td,
.mycal th {
    border: 1px solid #ccc
}

.mycal td {
    cursor: pointer;
    padding: 7px 5px
}

.mycal th.holiday {
    color: #c00
}

.mycal div {
    background: #555;
    border-bottom: 1px solid #75736f;
    padding: 10px
}

.mycal .inner {
    background: #fff;
    border: none;
    height: 290px
}

.mycal .holiday {
    background: #ffe1e1
}

.mycal .saturday {
    background: #ddebff
}

.mycal td.nextmonth {
    color: #fff;
    cursor: default;
    font-size: 80%
}

.mycal td.pastday {
    color: #ccc;
    cursor: default;
    font-size: 80%
}

.calendar {
    float: left;
    width: 240px
}

.cl_head {
    color: #fff
}

.mycal {
    background: #fff;
    border: 2px solid #555;
    display: none;
    left: 0;
    position: fixed;
    top: 34px;
    width: 720px;
    z-index: 1000
}

#mycal01,
#mycal02 {
    left: 50%;
    top: 50%;
    -webkit-transform: translateX(-50%) translateY(-50%);
    -moz-transform: translateX(-50%) translateY(-50%);
    -ms-transform: translateX(-50%) translateY(-50%);
    -o-transform: translateX(-50%) translateY(-50%);
    transform: translateX(-50%) translateY(-50%)
}

.mycal li {
    float: left;
    margin-right: 15px
}

.mycal select {
    vertical-align: top
}

.mycal .cal-pager {
    background: none;
    border: none;
    clear: left;
    padding-bottom: 15px
}

.mycal .cal-pager .left {
    float: left
}

.mycal .cal-pager .right {
    float: right
}

.mycal .cal-pager a {
    text-decoration: none
}

.mycal .close {
    float: right;
    height: 20px;
    line-height: 19px;
    text-align: right;
    width: 80px
}

.mycal .close a {
    color: #fff;
    margin-left: 6px;
    text-decoration: none
}

.mycal .close img {
    margin-left: 5px;
    vertical-align: sub
}

#mycal01.open,
#mycal02.open {
    display: block
}

.parenttd {
    position: relative
}

#prev3month01,
#prev3month02 {
    display: none
}

.contact.complete .c-section {
    padding-top: 60px
}

.complete-section {
    background-color: #fce7ef;
    background-image: -moz-linear-gradient(left, #fce7ef 0, #fef5e6 51%, #fce7ef 100%);
    background-image: -webkit-linear-gradient(left, #fce7ef, #fef5e6 51%, #fce7ef);
    background-image: linear-gradient(90deg, #fce7ef 0, #fef5e6 51%, #fce7ef);
    background-size: 200% auto;
    padding: 115px 0 120px;
    text-align: center
}

.complete-ttl-en {
    color: #d84c8b;
    font-family: Old Standard TT;
    font-size: 50px;
    font-size: 5rem;
    font-style: italic;
    margin-bottom: 35px
}

.complete-ttl-ja {
    color: #04477d;
    font-size: 32px;
    font-size: 3.2rem;
    font-weight: 700;
    letter-spacing: .1em;
    line-height: 1.4;
    margin-bottom: 30px
}

.complete-lead {
    font-size: 18px;
    font-size: 1.8rem;
    letter-spacing: .1em;
    line-height: 1.6
}

.complete-btn-wrap {
    padding-top: 60px
}

.complete-btn {
    cursor: pointer
}

@media screen and (max-width:480px) {
    .contact.complete .c-section {
        padding-top: 30px
    }

    .complete-section {
        padding: 55px 0 60px
    }

    .complete-ttl-en {
        font-size: 34px;
        font-size: 3.4rem;
        margin-bottom: 20px
    }

    .complete-ttl-ja {
        font-size: 22px;
        font-size: 2.2rem;
        letter-spacing: .05em;
        margin-bottom: 15px
    }

    .complete-lead {
        font-size: 16px;
        font-size: 1.6rem
    }

    .complete-btn-wrap {
        padding-top: 40px
    }
}

.catalog .page-heading-body {
    background: #fdf0f6;
    padding: 20px 0
}

.catalog-tag-wrap {
    margin: 0 auto;
    max-width: 960px
}

.catalog-tag-wrap dd {
    display: flex;
    justify-content: center
}

.catalog-tag-wrap dd select {
    background: #fff;
    border: 1px solid #dbdcdd;
    border-radius: 5px;
    height: 50px;
    margin: 0 10px;
    padding: 0 15px;
    width: 230px
}

.catalog-tag-wrap dd select.activeselect {
    background: #e595bb
}

.catalog-list {
    display: flex;
    flex-flow: wrap;
    justify-content: flex-start;
    min-height: 200px;
    width: 100%
}

.catalog-nomatch {
    text-align: center;
    width: 100%
}

.catalog-list-item {
    padding: 0 15px 3.5%;
    width: 33.33%
}

.catalog-list-link {
    color: inherit;
    text-decoration: none
}

.catalog-list-img-wrap {
    height: auto;
    overflow: hidden;
    padding-top: 83%;
    position: relative
}

.catalog-list-img-wrap img {
    left: 50%;
    position: absolute;
    top: 0;
    transform: translateX(-50%)
}

.catalog-list-category {
    background: #b044ad;
    bottom: 0;
    color: #fff;
    font-size: 17px;
    font-size: 1.7rem;
    left: 0;
    line-height: 30px;
    min-width: 130px;
    padding: 0 15px;
    position: absolute;
    text-align: center;
    z-index: 10
}

.catalog-list-ttl {
    font-family: "Noto Serif JP", serif;
    font-size: 16px;
    font-size: 1.6rem;
    margin-top: .5em;
    min-height: 48px
}

#refine_reset {
    background: #e595bb;
    border-radius: 15px;
    color: #fff;
    display: inline-block;
    line-height: 30px;
    margin-top: 15px;
    padding: 0 20px
}

.catalog-single.inner {
    max-width: 100%;
    padding: 0;
    width: 100%
}

.catalog-color,
.catalog-contents,
.catalog-post-ttl,
.catalog-priceBlock,
.catalog-relation,
.catalog-search,
.catalog-spec {
    margin: 0 auto;
    max-width: 1000px;
    padding: 0 20px
}

.catalog-single h2.catalog-single-h2 {
    color: #333;
    font-family: Shippori Mincho, sans-serif;
    font-size: 45px;
    font-weight: 500;
    letter-spacing: .05em;
    line-height: 1.5;
    margin-bottom: 30px;
    padding: 10px 20px;
    text-align: center
}

.catalog-single h3:not(.catalog-list-ttl):not(.head-title):not(.c-list-ttl) {
    border-bottom: 2px solid #edb9d2;
    color: #e595bb;
    font-size: 20px;
    font-size: 2rem;
    line-height: 1.5;
    margin: 30px 0 15px;
    padding-bottom: 5px
}

.catalog-ttl-img {
    margin: 10px auto;
    width: 100%
}

.catalog-ttl-img img {
    height: auto;
    width: auto
}

.catalog-contents {
    margin-bottom: 40px;
    width: 100%
}

.catalog-contents-upper {
    display: flex;
    justify-content: space-between
}

.catalog-img-wrap {
    margin-right: 3%;
    position: relative;
    width: 58%
}

.catalog-img-slide-wrap {
    position: relative
}

.catalog-img-slide,
.catalog-img-thumb {
    display: flex;
    overflow: visible
}

.catalog-img-slide .catalog-img-main-item,
.catalog-img-thumb .catalog-img-main-item {
    flex-shrink: 0;
    width: 100%
}

.catalog-img-slide.slick-initialized,
.catalog-img-thumb.slick-initialized {
    display: block
}

.catalog-img-thumb .catalog-img-thumb-item {
    width: 25%
}

.catalog-category {
    background: #67a862;
    bottom: 0;
    color: #fff;
    font-size: 17px;
    font-size: 1.7rem;
    left: 0;
    line-height: 44px;
    min-width: 190px;
    padding: 0 15px;
    position: absolute;
    text-align: center;
    z-index: 10
}

.color-short {
    background: #e33573
}

.color-medium {
    background: #c64358
}

.color-long {
    background: #9047ad
}

.color-hairpiece {
    background: #c6b538
}

.catalog-content {
    width: 49%
}

.catalog-content .catalog-price-note a,
.catalog-content a {
    color: inherit
}

.catalog-name {
    border-bottom: 2px solid #bd6dc4;
    display: block;
    margin-bottom: 15px;
    padding-bottom: 8px
}

.catalog-product-name h2 {
    color: #bd6dc4;
    display: inline;
    font-size: 22px;
    font-size: 2.2rem;
    line-height: 1.3;
    vertical-align: middle
}

.catalog-product-name-icon {
    background-color: #bd6dc4;
    color: #fff;
    display: inline-block;
    padding: 5px;
    vertical-align: middle
}

.catalog-number {
    color: #675961;
    font-size: 18px;
    font-size: 1.8rem;
    margin-bottom: 15px
}

.catalog-caption {
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 1.75
}

.product-note {
    border: 3px solid #bd6dc4;
    color: #bd6dc4;
    margin-top: 15px;
    padding: 10px 12px
}

.product-note p {
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 1.5
}

.catalog-price {
    background: #f0f5fd;
    border: 2px solid #92b9ec;
    border-radius: 5px;
    margin: 25px 0 10px;
    padding: 10px 15px
}

.catalog-price dl dt {
    color: #3866ce;
    font-size: 18px;
    margin-bottom: 10px
}

.catalog-price dl dt span {
    color: #323333;
    font-size: 14px
}

.catalog-price2 {
    background: #fdf0f6;
    border: 2px solid #e8529a;
    border-radius: 5px;
    margin: 25px 0 10px;
    padding: 10px 15px
}

.catalog-price2 dl dt {
    color: #e8529a;
    font-size: 18px
}

.catalog-price2 dl dd span {
    color: #e8529a
}

.catalog-price2 dl dd span,
.medical-price span {
    display: inline-block;
    font-family: Oswald;
    font-size: 1.625em;
    padding: 0 .15em 0 .25em
}

.medical-price span {
    color: #3866ce
}

.normal-price span {
    font-family: Oswald;
    font-weight: 700
}

.catalog-price-anchor {
    text-align: center
}

.catalog-price-anchor a[href]:not([class]) {
    color: #e8529a
}

.catalog-price-note {
    margin: 10px 0
}

.catalog-price-note-detail {
    display: none;
    max-width: 80%
}

.catalog-price-note-detail dl {
    border: 5px solid #e595bb;
    border-top: none;
    max-width: 345px
}

.catalog-price-note-detail dt {
    background: #e595bb;
    color: #fff;
    font-size: 18px;
    font-size: 1.8rem;
    padding: 5px 20px
}

.catalog-price-note-detail dd {
    background: #fff;
    font-size: 16px;
    font-size: 1.6rem;
    padding: 15px 20px
}

.catalog-price-note-detail dd span {
    color: #e8529a;
    font-size: 1.5em
}

.catalog-favorites-btn {
    text-align: center
}

.catalog-favorites-btn p {
    margin-top: 10px
}

.catalog-favorites-btn .sf-icon-star-empty:before {
    content: "\f004";
    font-family: FontAwesome
}

.catalog-favorites-btn .sf-icon-star-full:before {
    color: #e8529a;
    content: "\f004";
    font-family: FontAwesome
}

.catalog-favorites-btn a.c-btn {
    color: #333;
    margin-top: 20px;
    text-decoration: none
}

@media screen and (max-width:768px) {
    .catalog-favorites-btn a.c-btn {
        margin-top: 13px
    }
}

.catalog-favorites-btn a {
    text-decoration: underline
}

.catalog-favorites-btn a:hover {
    opacity: .7
}

.catalog-favorites-btn a.anchorlink:before {
    color: #e8529a;
    content: "\f004";
    font-family: FontAwesome
}

.catalog-img-plus {
    align-items: flex-start;
    display: flex;
    justify-content: space-between;
    margin-top: 30px;
    width: 100%
}

.catalog-img-plus img {
    max-width: inherit;
    width: 48.5%
}

.catalog-color-note {
    line-height: 1.5
}

.catalog-spec-tbl,
.catalog-spec2-tbl {
    border: 1px solid #707070;
    border-collapse: collapse;
    margin-top: 15px;
    width: 100%
}

.catalog-spec-tbl td,
.catalog-spec-tbl th,
.catalog-spec2-tbl td,
.catalog-spec2-tbl th {
    border: 1px solid #707070;
    line-height: 1.5
}

.catalog-spec-tbl th,
.catalog-spec2-tbl th {
    padding: 10px 5px;
    width: 30%
}

.catalog-spec-tbl td,
.catalog-spec2-tbl td {
    padding: 10px 15px
}

.catalog-spec-tbl th {
    background: #ddd6ca;
    text-align: center
}

.catalog-spec-tbl td {
    background: #fff
}

.catalog-spec-medical-price td,
.catalog-spec-medical-price th {
    background: #fdf0f6;
    color: #e8529a
}

.catalog-spec-medical-price td span,
.catalog-spec-normal-price td span {
    display: inline-block;
    font-family: Oswald;
    font-size: 1.625em;
    line-height: 1;
    padding: 0 .15em 0 0;
    vertical-align: -.1em
}

.catalog-spec2-tbl th {
    color: #fff;
    text-align: center
}

.catalog-spec2-tbl th.spec2-s {
    background: #67a862;
    border-color: #67a862
}

.catalog-spec2-tbl th.spec2-m {
    background: #c64358;
    border-color: #c64358
}

.catalog-spec2-tbl th.spec2-l {
    background: #9047ad;
    border-color: #9047ad
}

.catalog-spec2-tbl tr td:nth-child(2) {
    white-space: nowrap;
    width: 35%
}

.catalog-spec2-tbl tr td:last-child {
    text-align: center;
    width: 35%
}

.catalog-spec2-tbl tr.bgcol0 td {
    background: #ffeaec
}

.catalog-spec2-tbl tr.bgcol1 td {
    background: #fff7e8
}

.catalog-spec2-tbl tr.bgcol2 td {
    background: #e4f0fc
}

.catalog-spec2-tbl tr.bgcol3 td {
    background: #fdffeb
}

.catalog-spec2-note {
    margin-top: 20px;
    text-align: right
}

.catalog-search dl {
    margin-bottom: 30px
}

.catalog-spec2-tbl a.icon-table2 {
    color: inherit;
    float: right
}

#lean_overlay {
    background: #000;
    box-sizing: border-box;
    display: none;
    height: 100%;
    left: 0;
    position: fixed;
    top: 0;
    width: 100%;
    z-index: 10010
}

#lean_overlay:before {
    background: url(../../assets/img/common/modal-close.svg) no-repeat top/40px 40px;
    color: #fff;
    content: "閉じる";
    cursor: pointer;
    display: block;
    font-size: 14px;
    font-size: 1.4rem;
    padding-top: 50px;
    position: absolute;
    right: 50%;
    text-align: center;
    top: 20px;
    width: 60px
}

.spec2-detail-wrap {
    display: none;
    max-width: 80%
}

.spec2-detail {
    border: 1px solid #707070;
    border-collapse: collapse;
    margin: 0 auto;
    max-width: 900px;
    min-width: 260px;
    width: 100%
}

.spec2-detail th {
    border: 1px solid #707070;
    text-align: center
}

#l-low th,
#m-low th,
#s-low th {
    background: #fdffeb
}

#l-mid th,
#m-mid th,
#s-mid th {
    background: #e4f0fc
}

#l-hi th,
#m-hi th,
#s-hi th {
    background: #fff7e8
}

#l-his th {
    background: #ffeaec
}

.spec2-detail td,
.spec2-detail th {
    padding: 10px 20px;
    width: 50%
}

.spec2-detail td {
    background: #fff;
    border: 1px solid #707070
}

.catalog-color-list {
    display: flex;
    flex-wrap: wrap
}

.catalog-color-item {
    margin: 0 20px 10px 0
}

.catalog-color-item span {
    border-radius: 43px;
    display: block;
    margin-bottom: 5px;
    overflow: hidden;
    width: 86px
}

.catalog-color-item span img {
    height: auto;
    width: 100%
}

.catalog-color-name {
    font-size: 14px;
    font-size: 1.4rem;
    text-align: center
}

.catalog-search {
    margin-top: 40px
}

.catalog-search-ttl {
    background: #e595bb;
    color: #fff;
    font-size: 24px;
    font-size: 2.4rem;
    line-height: 1.75;
    margin-bottom: 20px;
    text-align: center
}

.catalog-search dl {
    padding: 0 15px
}

.catalog-search dt {
    border-bottom: 2px solid #edb9d2;
    color: #e8529a;
    font-size: 22px;
    font-size: 2.2rem;
    margin-bottom: 15px;
    padding-bottom: 3px
}

.catalog-search dd ul {
    display: flex;
    flex-flow: wrap;
    justify-content: flex-start;
    padding-bottom: 25px
}

.catalog-search dd ul li {
    padding: 5px
}

.catalog-search dd ul li a {
    border: 2px solid #707070;
    border-radius: 44px;
    color: #675961;
    display: block;
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 40px;
    min-width: 120px;
    text-align: center;
    text-decoration: none
}

.catalog-search dd ul li a span {
    color: #292427;
    font-family: Oswald;
    font-size: 24px;
    font-size: 2.4rem;
    vertical-align: -.1em
}

.catalog-search dd ul.style-btn li a {
    font-size: 20px;
    font-size: 2.2rem;
    width: 160px
}

.catalog-search dd ul li a.short {
    border-color: #67a862;
    color: #67a862
}

.catalog-search dd ul li a.medium {
    border-color: #c64358;
    color: #c64358
}

.catalog-search dd ul li a.long {
    border-color: #9047ad;
    color: #9047ad
}

.catalog-search dd ul li a.hairpiece {
    border-color: #c6b538;
    color: #c6b538
}

.catalog-priceBlock .catalog-plans .catatog-plan {
    padding: 20px
}

.catalog-priceBlock .catalog-plans .catatog-plan .catatog-plan-title {
    font-family: "Noto Serif JP", serif;
    position: relative;
    text-align: center
}

.catalog-priceBlock .catalog-plans .catatog-plan .catatog-plan-title dt {
    color: #fff;
    font-size: 18px
}

@media screen and (max-width:768px) {
    .catalog-priceBlock .catalog-plans .catatog-plan .catatog-plan-title dt {
        font-size: 14px
    }
}

.catalog-priceBlock .catalog-plans .catatog-plan .catatog-plan-title dt span {
    position: relative
}

.catalog-priceBlock .catalog-plans .catatog-plan .catatog-plan-title dt span:before {
    background: #fff;
    content: "";
    height: 1px;
    position: absolute;
    right: -45px;
    top: 15px;
    transform: rotate(-45deg);
    width: 25px
}

.catalog-priceBlock .catalog-plans .catatog-plan .catatog-plan-title dt span:after {
    background: #fff;
    content: "";
    height: 1px;
    left: -45px;
    position: absolute;
    top: 15px;
    transform: rotate(45deg);
    width: 25px
}

@media screen and (max-width:768px) {

    .catalog-priceBlock .catalog-plans .catatog-plan .catatog-plan-title dt span:after,
    .catalog-priceBlock .catalog-plans .catatog-plan .catatog-plan-title dt span:before {
        content: none
    }
}

.catalog-priceBlock .catalog-plans .catatog-plan .catatog-plan-title dd {
    color: #fff;
    font-size: 36px;
    position: relative;
    top: -5px
}

.catalog-priceBlock .catalog-plans .catatog-plan .catatog-plan-cont {
    background: #fff;
    padding: 20px;
    text-align: center
}

.catalog-priceBlock .catalog-plans .catatog-plan .catatog-plan-cont.sp-b {
    display: none
}

@media screen and (max-width:768px) {
    .catalog-priceBlock .catalog-plans .catatog-plan .catatog-plan-cont.sp-b {
        display: block
    }

    .catalog-priceBlock .catalog-plans .catatog-plan .catatog-plan-cont.pc-b {
        display: none
    }
}

.catalog-priceBlock .catalog-plans .catatog-plan.-subscription {
    background: #e595bb;
    margin-bottom: 30px
}

.catalog-priceBlock .catalog-plans .catatog-plan.-buy {
    background: #92b9ec
}

.faq-term .mod-num-q.-catalog:before {
    content: "Q"
}

.faq-desc-inner .mod-num-a.-catalog:before {
    content: "A"
}

@media screen and (min-width:960px) {
    .catalog-img-wrap {
        flex-shrink: 0;
        width: 550px
    }

    #lean_overlay:before {
        margin-right: -440px
    }
}

@media screen and (max-width:959px) {
    #lean_overlay:before {
        margin-right: 0;
        right: 15px
    }
}

@media screen and (max-width:768px) {
    .catalog-contents-upper {
        display: block
    }

    .catalog-img-wrap {
        margin: 0;
        width: 100%
    }

    .catalog-list-item {
        padding: 0 15px 3.5%;
        width: 50%
    }

    .catalog-content {
        margin-top: 30px;
        width: 100%
    }

    .medical-price {
        display: inline-block
    }

    .catalog-img-plus {
        display: block
    }

    .catalog-img-plus img {
        display: block;
        width: 100%
    }

    .catalog-img-plus img+img {
        margin-top: 15px
    }

    .catalog-color-item {
        border-radius: 100%;
        margin: 0 2% 3%;
        width: 21%
    }

    .catalog-color-item span {
        border-radius: 100%;
        width: 100%
    }

    .catalog-spec-tbl td,
    .catalog-spec-tbl th,
    .catalog-spec2-tbl td,
    .catalog-spec2-tbl th {
        font-size: 14px;
        font-size: 1.4rem
    }

    .catalog-search dd ul {
        width: 100%
    }

    .catalog-search dd ul li {
        width: 25%
    }

    .catalog-search dd ul li a {
        font-size: 14px;
        font-size: 1.4rem;
        min-width: 100%
    }

    .catalog-search dd ul.style-btn li a {
        width: 100%
    }
}

@media screen and (max-width:640px) {
    .catalog-ttl-img img {
        height: auto;
        width: 100%
    }

    .catalog-spec-tbl td,
    .catalog-spec-tbl th,
    .catalog-spec2-tbl td,
    .catalog-spec2-tbl th {
        font-size: 12px;
        font-size: 1.2rem
    }

    .catalog-spec-tbl th,
    .catalog-spec2-tbl th {
        width: 140px
    }

    .catalog-spec2-tbl th {
        white-space: nowrap;
        width: auto
    }

    .catalog-spec2-tbl tr td:nth-last-child(2) {
        padding: 10px 5px;
        white-space: nowrap;
        width: auto
    }

    .catalog-spec2-tbl tr td:last-child {
        padding: 10px 5px;
        text-align: center;
        width: auto
    }

    .catalog-search dd ul li {
        margin: 0;
        width: 33.3%
    }

    .catalog-search dd ul.style-btn {
        flex-flow: wrap
    }

    .catalog-search dd ul.style-btn li {
        width: 50%
    }

    .catalog-search dd ul li a {
        font-size: 12px;
        font-size: 1.2rem
    }

    .catalog-search dd ul li a span {
        font-size: 22px;
        font-size: 2.2rem
    }

    .catalog-search dd ul.style-btn li a {
        font-size: 20px;
        font-size: 2rem
    }
}

@media screen and (max-width:480px) {
    .catalog-single h2.catalog-single-h2 {
        font-size: 20px;
        font-size: 2rem
    }

    .catalog-single h3:not(.catalog-list-ttl) {
        font-size: 18px;
        font-size: 1.8rem;
        margin: 30px 0 15px;
        padding-bottom: 5px
    }

    .catalog-img-wrap {
        margin: 0 0 20px
    }

    .catalog-category {
        font-size: 12px;
        font-size: 1.2rem;
        line-height: 30px;
        min-width: 120px;
        padding: 0 10px
    }

    .catalog-product-name h2 {
        font-size: 20px;
        font-size: 2rem
    }

    .catalog-number {
        color: #675961;
        font-size: 17.5px;
        font-size: 1.75rem
    }

    .catalog-caption {
        font-size: 14px;
        font-size: 1.4rem;
        line-height: 1.57
    }

    .product-note {
        padding: 10px
    }

    .product-note p {
        font-size: 14px;
        font-size: 1.4rem
    }

    .catalog-price {
        margin: 15px 0 10px
    }

    .medical-price {
        font-size: 14px;
        font-size: 1.4rem;
        padding: 5px 10px;
        width: 100%
    }

    .medical-price span {
        font-size: 1.7em;
        vertical-align: -.15em
    }

    .catalog-price-note {
        margin: 15px 0 10px
    }

    .catalog-price-note-detail {
        display: none;
        max-width: 80%
    }

    .catalog-price-note-detail dl {
        border: 5px solid #e595bb;
        border-top: none;
        max-width: 345px
    }

    .catalog-price-note-detail dt {
        background: #e595bb;
        color: #fff;
        font-size: 18px;
        font-size: 1.8rem;
        padding: 5px 20px
    }

    .catalog-price-note-detail dd {
        background: #fff;
        font-size: 16px;
        font-size: 1.6rem;
        padding: 15px 20px
    }

    .catalog-price-note-detail dd span {
        color: #e8529a;
        font-size: 1.5em
    }

    .catalog-archive .c-section-inner {
        padding: 0
    }

    .catalog-tag-wrap dd {
        box-sizing: border-box;
        display: block;
        padding: 0 10px
    }

    .catalog-tag-wrap dd select {
        background: #fff;
        border: 1px solid #dbdcdd;
        border-radius: 5px;
        box-sizing: border-box;
        height: 50px;
        margin: 0;
        padding: 0 15px;
        width: 100%
    }

    .catalog-tag-wrap dd select+select {
        margin-top: 10px
    }

    .catalog-list-item {
        padding: 0 10px 20px;
        width: 50%
    }

    .catalog-list-img-wrap {
        height: auto;
        overflow: hidden;
        padding-top: 140%;
        width: 100%
    }

    .catalog-list-img-wrap img {
        height: 100%;
        left: 50%;
        max-width: inherit;
        position: absolute;
        top: 0;
        transform: translateX(-50%);
        width: auto
    }

    .catalog-list-category {
        line-height: 24px;
        min-width: 100px
    }

    .catalog-search {
        padding: 0
    }

    .catalog-search dt {
        font-size: 20px;
        font-size: 2rem
    }

    #lean_overlay:before {
        background-size: 30px 30px;
        font-size: 12px;
        font-size: 1.2rem;
        padding-top: 40px;
        right: 10px;
        width: 40px
    }
}

@media screen and (max-width:360px) {
    .catalog-price-note-detail dt {
        padding: 5px
    }

    .spec2-detail td,
    .spec2-detail th {
        font-size: 14px;
        font-size: 1.4rem;
        padding: 10px
    }

    .catalog-color,
    .catalog-contents,
    .catalog-post-ttl,
    .catalog-relation,
    .catalog-spec {
        padding: 0 15px
    }

    .catalog-search dd ul li a span {
        font-size: 21px;
        font-size: 2.1rem;
        letter-spacing: -.025em
    }
}

.catalog-sub-ttl {
    color: #e8529a;
    font-family: "Noto Serif JP", serif;
    font-size: 30px;
    font-size: 3rem;
    margin-bottom: 15px;
    text-align: center
}

@media screen and (max-width:480px) {
    .catalog-sub-ttl .catalog-tag-wrap dt {
        font-size: 24px;
        font-size: 2.4rem
    }
}

.catalog-plan-list {
    margin: 0 0 30px;
    padding: 0 20px
}

@media screen and (min-width:768px) {
    .catalog-plan-list {
        margin: 5px 0 40px;
        padding: 0
    }
}

.catalog-price-subscription {
    align-items: center;
    display: flex;
    margin-top: 15px
}

.catalog-price-subscription .label {
    background-color: #db5272;
    color: #fff;
    font-size: 16px;
    line-height: 1;
    padding: 10px 17px
}

.catalog-price-subscription .link {
    font-size: 16px;
    line-height: 1;
    margin-left: 16px;
    text-decoration: underline
}

.catalog-price-salon {
    color: #333;
    margin: 25px 0 20px
}

@media screen and (max-width:768px) {
    .catalog-price-salon {
        margin: 40px 0 13px
    }
}

.catalog-arrange {
    margin: 60px 0
}

.catalog-arrange-h2 {
    color: #e595bb;
    font-family: "Noto Serif JP", serif;
    font-size: 36px;
    font-weight: 700;
    margin-bottom: 40px;
    position: relative;
    text-align: center
}

@media screen and (max-width:768px) {
    .catalog-arrange-h2 {
        font-size: 23px
    }
}

.catalog-arrange-h2 span {
    background-color: #fff;
    display: inline-block;
    min-width: 260px;
    padding: 0 15px
}

@media screen and (max-width:768px) {
    .catalog-arrange-h2 span {
        min-width: 175px
    }
}

.catalog-arrange-h2:before {
    background-color: #edb8d2;
    content: "";
    height: 1px;
    left: 0;
    margin-top: -1px;
    position: absolute;
    top: 50%;
    width: 100%;
    z-index: -1
}

.catalog-arrange-img {
    margin: 0 auto;
    max-width: 477px;
    width: 100%
}

.catalog-arrange-img img {
    width: 100%
}

.catalog-ec-btn {
    margin-bottom: 40px
}

.catalog-ec-btn a {
    align-items: center;
    background-color: #ed8fb3;
    border-bottom: 4px solid #d188aa;
    border-radius: 4px;
    display: flex;
    font-size: 2.2rem;
    justify-content: center;
    padding: 17px 15px;
    text-align: center;
    transition: all .25s ease-in-out
}

@media screen and (max-width:768px) {
    .catalog-ec-btn a {
        display: block;
        font-size: 1.7rem;
        padding: 12px 15px
    }
}

.catalog-ec-btn a:hover {
    opacity: .75
}

.catalog-ec-btn a>* {
    color: #fff;
    text-decoration: none
}

.catalog-ec-btn a>:first-child {
    display: block
}

@media screen and (max-width:768px) {
    .catalog-ec-btn a>:first-child {
        margin-bottom: 10px
    }
}

.catalog-ec-btn a>:nth-child(2),
.catalog-ec-btn a>:nth-child(3) {
    display: inline-block;
    vertical-align: middle
}

.catalog-ec-btn a img {
    margin: 0 9px;
    max-width: 260px
}

@media screen and (max-width:768px) {
    .catalog-ec-btn a img {
        margin: 0 9px 0 0;
        max-width: 180px
    }
}

.is-bgc[data-category=care] {
    background-color: #acd598
}

.is-border[data-category=care] {
    border-color: #acd598
}

.is-color[data-category=care] {
    color: #acd598
}

.is-bgc[data-category=community-cafe] {
    background-color: #ec6c6a
}

.is-border[data-category=community-cafe] {
    border-color: #ec6c6a
}

.is-color[data-category=community-cafe] {
    color: #ec6c6a
}

.is-bgc[data-category=event] {
    background-color: #84cbc3
}

.is-border[data-category=event] {
    border-color: #84cbc3
}

.is-color[data-category=event] {
    color: #84cbc3
}

.is-bgc[data-category=first-time] {
    background-color: #f1a0bb
}

.is-border[data-category=first-time] {
    border-color: #f1a0bb
}

.is-color[data-category=first-time] {
    color: #f1a0bb
}

.is-bgc[data-category=hair-care] {
    background-color: #7dc5ee
}

.is-border[data-category=hair-care] {
    border-color: #7dc5ee
}

.is-color[data-category=hair-care] {
    color: #7dc5ee
}

.is-bgc[data-category=massel] {
    background-color: #ec6c6a
}

.is-border[data-category=massel] {
    border-color: #ec6c6a
}

.is-color[data-category=massel] {
    color: #ec6c6a
}

.is-bgc[data-category=salon] {
    background-color: #508cc1
}

.is-border[data-category=salon] {
    border-color: #508cc1
}

.is-color[data-category=salon] {
    color: #508cc1
}

.is-bgc[data-category=seminar] {
    background-color: #cadc60
}

.is-border[data-category=seminar] {
    border-color: #cadc60
}

.is-color[data-category=seminar] {
    color: #616262
}

.footer-secom {
    padding: 0 10px
}

.footer-secom-inner {
    -webkit-box-align: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    -webkit-align-items: center;
    align-items: center;
    border-top: 1px dotted #898989;
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    justify-content: center;
    margin: 0 auto;
    max-width: 900px;
    padding: 20px 0
}

.secom-privacy {
    margin-left: 20px
}

.secom-privacy-lead {
    font-size: 12px;
    font-size: 1.2rem;
    padding-bottom: 5px
}

.secom-privacy-link {
    color: #5294ce;
    font-size: 12px;
    font-size: 1.2rem;
    font-weight: 700
}

.inner.contact-dlist-wrap {
    max-width: 920px
}

.contact .c-section {
    padding-top: 30px
}

.contact .c-section-ttl {
    margin-bottom: 30px
}

.contact .c-section-ttl .mod-en {
    color: #f6b94f
}

.contact.mod-reserve .c-section-ttl .mod-en {
    color: #d84c8b
}

.announce-box {
    border: 1px solid #d84c8b;
    margin: 0 auto 30px;
    max-width: 900px;
    padding: 20px;
    text-align: center
}

.announce-ttl {
    color: #d84c8b;
    font-size: 16px;
    font-size: 1.6rem;
    font-weight: 700;
    letter-spacing: .16em;
    margin-bottom: 15px
}

.announce-body {
    font-size: 14px;
    font-size: 1.4rem;
    letter-spacing: .16em;
    line-height: 1.6
}

.privilege {
    background-color: #fce7ef;
    background-image: -moz-linear-gradient(left, #fce7ef 0, #fef5e6 51%, #fce7ef 100%);
    background-image: -webkit-linear-gradient(left, #fce7ef, #fef5e6 51%, #fce7ef);
    background-image: linear-gradient(90deg, #fce7ef 0, #fef5e6 51%, #fce7ef);
    background-size: 200% auto;
    overflow: hidden;
    padding: 45px 0 70px
}

.privilege-contents {
    margin-bottom: 45px
}

.privilege-ttl {
    color: #04477d;
    font-size: 32px;
    font-size: 3.2rem;
    font-weight: 700;
    letter-spacing: .16em;
    margin-bottom: 10px
}

.privilege-link {
    color: #d84c8b;
    font-size: 16px;
    font-size: 1.6rem;
    font-weight: 700;
    letter-spacing: .1em;
    -webkit-transition: all .25s ease-in-out;
    -ms-transition: all .25s ease-in-out;
    transition: all .25s ease-in-out
}

.privilege-link:hover {
    opacity: .7
}

.privilege-link:after {
    content: "\f054";
    font-family: FontAwesome;
    font-size: 14px;
    font-size: 1.4rem;
    margin-left: 10px
}

.privilege-lead {
    font-size: 18px;
    font-size: 1.8rem;
    letter-spacing: .1em;
    line-height: 1.6;
    padding: 10px 0 5px
}

.privilege-lead .icon-checkmark {
    color: #ec719e
}

.privilege-note {
    color: #616262;
    font-size: 14px;
    font-size: 1.4rem;
    letter-spacing: .1em;
    line-height: 1.6;
    padding-left: 1em;
    text-indent: -1em
}

.present-check-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -ms-flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    margin: 0 -10px
}

.present-check-item {
    cursor: pointer;
    padding: 0 10px;
    width: 33.33333%
}

.present-check-item-inner {
    -webkit-transition: all .25s ease-in-out;
    -ms-transition: all .25s ease-in-out;
    transition: all .25s ease-in-out
}

.present-check-item-inner:hover {
    border-radius: 8px;
    box-shadow: 0 0 0 1px #d84c8b
}

.present-check-img-wrap {
    border-radius: 8px 8px 0 0;
    overflow: hidden
}

.present-check-wrap {
    background-color: #d84c8b;
    border-radius: 0 0 8px 8px;
    color: #fff;
    overflow: hidden
}

.present-check-label {
    font-size: 18px;
    font-size: 1.8rem;
    font-weight: 700;
    letter-spacing: .1em
}

@media screen and (min-width:641px) {
    .privilege-contents {
        display: -webkit-box;
        display: -ms-flexbox;
        display: -webkit-flex;
        display: flex
    }

    .privilege-ttl-wrap {
        -ms-flex-negative: 0;
        flex-shrink: 0;
        width: 180px
    }

    .privilege-body {
        -webkit-box-flex: 0;
        -ms-flex: 0 1 100%;
        flex: 0 1 100%;
        max-width: 100%
    }
}

@media screen and (min-width:768px) and (max-width:900px) {
    .contact .c-section {
        padding-top: 25px
    }
}

@media screen and (max-width:767px) {
    .footer-secom {
        padding: 0 20px
    }

    .secom-privacy-lead,
    .secom-privacy-link {
        font-size: 16px;
        font-size: 1.6rem
    }

    .contact .c-section {
        padding-top: 45px
    }

    .contact .c-section-ttl {
        margin-bottom: 60px
    }

    .contact .c-section-ttl .mod-ja:after {
        bottom: 0
    }

    .guide-img-wrap {
        left: auto;
        margin-left: 0;
        right: -80px;
        top: 50px
    }

    .privilege {
        padding: 50px 0
    }

    .privilege-contents,
    .privilege-note {
        margin-bottom: 20px
    }

    .present-check-label {
        font-size: 16px;
        font-size: 1.6rem;
        letter-spacing: .05em
    }
}

@media screen and (min-width:481px) and (max-width:767px) {
    .contact .inner {
        padding: 0 20px
    }
}

@media screen and (max-width:640px) {

    .secom-privacy-lead,
    .secom-privacy-link {
        font-size: 14px;
        font-size: 1.4rem
    }

    .contact .c-section-ttl .mod-ja {
        display: block;
        margin-top: 5px
    }

    .guide {
        display: block
    }

    .guide-img-wrap {
        right: 0;
        top: 60px;
        width: 217px
    }

    .guide-img {
        width: 100%
    }

    .privilege {
        padding: 60px 0 30px
    }

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

    .privilege-ttl {
        margin-bottom: 0
    }

    .privilege-link {
        font-size: 22px;
        font-size: 2.2rem;
        line-height: 1;
        margin-left: 25px
    }

    .present-check-item {
        padding: 10px;
        width: 100%
    }
}

@media screen and (max-width:480px) {
    .footer-secom {
        padding: 0 10px
    }

    .secom-privacy-lead,
    .secom-privacy-link {
        font-size: 12px;
        font-size: 1.2rem
    }

    .contact .c-section {
        padding-top: 25px
    }

    .contact .c-section-ttl {
        margin-bottom: 35px
    }

    .contact.confirm .c-section-ttl {
        margin-bottom: 15px
    }

    .guide {
        display: inline-block
    }

    .guide-img-wrap {
        right: -10.9375vw;
        top: 35px;
        width: 120px
    }

    .privilege {
        padding: 30px 0
    }

    .privilege-ttl {
        font-size: 24px;
        font-size: 2.4rem
    }

    .privilege-link {
        font-size: 16px;
        font-size: 1.6rem;
        margin-left: 15px
    }

    .privilege-lead {
        font-size: 15px;
        font-size: 1.5rem
    }

    .privilege-note {
        font-size: 13px;
        font-size: 1.3rem;
        margin-bottom: 10px
    }
}

input[type=checkbox] {
    display: none
}

.checkbox-label {
    cursor: pointer;
    display: inline-block;
    padding: 5px 5px 5px 50px;
    position: relative;
    -webkit-transition: all .1s;
    transition: all .1s
}

.checkbox-label:after,
.checkbox-label:before {
    content: "";
    position: absolute;
    -webkit-transition: all .1s;
    transition: all .1s
}

.checkbox-label:before {
    background: #fff;
    border-radius: 4px;
    height: 20px;
    left: 15px;
    width: 20px
}

.checkbox-label:after,
.checkbox-label:before {
    top: 50%;
    -webkit-transform: translateX(0) translateY(-50%);
    -moz-transform: translateX(0) translateY(-50%);
    -ms-transform: translateX(0) translateY(-50%);
    -o-transform: translateX(0) translateY(-50%);
    transform: translateX(0) translateY(-50%)
}

.checkbox-label:after {
    color: #ec719e;
    content: "\ea10";
    font-family: icomoon;
    font-weight: 400;
    left: 16px;
    opacity: 0
}

.checkbox-label:hover:before {
    background: #fff
}

input[type=checkbox]:checked+.checkbox-label:after {
    opacity: 1
}

.contact-input,
.contact-select,
.contact-textarea {
    background-color: #f8f8f8;
    border: 1px solid #e5e5e4;
    border-radius: 4px;
    color: #646464;
    padding: 10px 20px;
    width: 100%
}

.contact-input.bg-required,
.contact-select.bg-required,
.contact-textarea.bg-required {
    -webkit-box-shadow: inset 0 0 0 1000px #ffdfdf
}

.contact-input.entered,
.contact-select.entered,
.contact-textarea.entered {
    background-color: #fff;
    border: 1px solid #898989
}

.contact-input:focus,
.contact-select:focus,
.contact-textarea:focus {
    background-color: #fff;
    border-color: #5294ce;
    box-shadow: 0 0 0 1px #5294ce
}

.contact-input:-webkit-autofill,
.contact-select:-webkit-autofill,
.contact-textarea:-webkit-autofill {
    -webkit-box-shadow: inset 0 0 0 1000px #f8f8f8
}

.contact-input:-webkit-autofill.entered,
.contact-input:-webkit-autofill:focus,
.contact-select:-webkit-autofill.entered,
.contact-select:-webkit-autofill:focus,
.contact-textarea:-webkit-autofill.entered,
.contact-textarea:-webkit-autofill:focus {
    -webkit-box-shadow: inset 0 0 0 1000px #fff
}

:placeholder-shown {
    color: #898989;
    letter-spacing: .16em
}

::-webkit-input-placeholder {
    color: #898989;
    letter-spacing: .16em
}

:-moz-placeholder,
::-moz-placeholder {
    color: #898989;
    letter-spacing: .16em;
    opacity: 1
}

:-ms-input-placeholder {
    color: #898989;
    letter-spacing: .16em
}

.contact-select-wrap {
    display: inline-block
}

.mod-md-sel .contact-select-wrap {
    width: 120px
}

.contact-select {
    letter-spacing: .1em;
    max-width: 100%;
    width: 275px
}

.contact-textarea {
    height: 200px
}

@media screen and (max-width:480px) {

    .contact-input,
    .contact-select,
    .contact-textarea {
        padding: 6px 10px
    }

    .contact-textarea {
        height: 150px
    }

    :placeholder-shown {
        font-size: 16px;
        font-size: 1.6rem
    }

    ::-webkit-input-placeholder {
        font-size: 16px;
        font-size: 1.6rem
    }

    :-moz-placeholder,
    ::-moz-placeholder {
        font-size: 16px;
        font-size: 1.6rem;
        opacity: 1
    }

    :-ms-input-placeholder {
        font-size: 16px;
        font-size: 1.6rem
    }

    .contact-select,
    .contact-select-wrap,
    .mod-md-sel .contact-select-wrap {
        width: 100%
    }
}

.contact-dlist {
    border-bottom: 1px dotted #898989;
    padding: 40px 0
}

.contact-dlist.mod-no-border {
    border-bottom: none
}

.contact-dlist.mod-pb {
    padding-bottom: 20px
}

.contact-dlist:last-of-type {
    margin-bottom: 40px
}

.confirm .contact-dlist {
    padding: 35px 0
}

.contact-heading {
    -ms-flex-negative: 0;
    color: #04477d;
    flex-shrink: 0;
    font-size: 20px;
    font-size: 2rem;
    font-weight: 700;
    letter-spacing: .16em
}

.contact-heading .must {
    background-color: #d84c8b;
    color: #fff;
    display: inline-block;
    font-size: 14px;
    font-size: 1.4rem;
    letter-spacing: .1em;
    padding: 0 10px;
    vertical-align: text-top
}

.contact-heading.mod-ttl {
    font-size: 32px;
    font-size: 3.2rem
}

.confirm .contact-heading {
    line-height: 1.8
}

.contact-data {
    -webkit-box-flex: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -ms-flex: 0 1 100%;
    flex: 0 1 100%;
    max-width: 100%
}

.confirm .contact-data {
    display: block;
    font-size: 20px;
    font-size: 2rem;
    line-height: 1.8
}

.contact-data.mod-body {
    font-size: 18px;
    font-size: 1.8rem
}

.block-item {
    -webkit-box-direction: normal;
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    flex-direction: column;
    margin-bottom: 25px;
    width: 100%
}

.block-item:last-child {
    margin-bottom: 0
}

@media (-ms-high-contrast:none) {

    .block-item.mod-addr1,
    .block-item.mod-pref {
        height: 104px
    }

    .block-item.mod-ans {
        height: 54px
    }
}

@media (-ms-high-contrast:none) and (max-width:767px) {

    .block-item.mod-addr1,
    .block-item.mod-pref {
        height: 104px
    }

    .block-item.mod-ans {
        height: 54px
    }
}

.data-label {
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    font-size: 18px;
    font-size: 1.8rem;
    letter-spacing: .16em;
    min-width: 50px
}

.block-item .data-label,
.data-label-note {
    margin-bottom: 15px
}

.data-label-note {
    font-size: 14px;
    font-size: 1.4rem;
    letter-spacing: .1em
}

.data-input-wrap.hyphen {
    padding: 0 20px
}

.mod-calendar .data-input-wrap.mod-md-label {
    padding: 10px 0
}

.data-input {
    -webkit-box-flex: 0;
    -ms-flex: 0 1 100%;
    flex: 0 1 100%;
    max-width: 100%;
    position: relative
}

.data-input.mod-number {
    max-width: 110px
}

.mod-calendar .inline-item {
    -webkit-box-align: center;
    -webkit-align-items: center;
    align-items: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -ms-flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    margin: 0 -10px
}

.tooltip-relative {
    position: relative
}

.tooltip {
    bottom: 62px;
    display: none;
    left: 0;
    position: absolute;
    z-index: 50
}

.tooltip.tel_input02,
.tooltip.zip_input02 {
    left: 165px
}

.tooltip.mei_input {
    left: auto;
    right: 0
}

.tooltip.tel_input03 {
    left: auto
}

.tooltip span {
    background: #5294ce;
    border-radius: 4px;
    box-shadow: 1px 2px 10px 0 rgba(0, 0, 0, .2);
    color: #fff;
    display: inline-block;
    font-size: 18px;
    font-size: 1.8rem;
    padding: 8px 15px;
    position: relative;
    text-align: center;
    width: 290px
}

.tooltip span:after {
    border-color: #5294ce transparent transparent;
    border-style: solid;
    border-width: 10px 7.5px 0;
    bottom: -8px;
    content: "";
    height: 0;
    left: 20px;
    position: absolute;
    width: 0
}

.mod-name .tooltip span:after {
    left: 60px
}

.tooltip.err span {
    background-color: #d84c8b
}

.tooltip.err span:after {
    border-color: #d84c8b transparent transparent
}

.tooltip.mail_input01 {
    max-width: 500px;
    width: 100%
}

.tooltip.mail_input01 span {
    width: 100%
}

.contact-btn-autozip-wrap {
    margin-left: 40px
}

.contact-btn-autozip {
    background-color: #04477d;
    border: 1px solid #04477d;
    color: #fff;
    font-size: 16px;
    font-size: 1.6rem;
    font-weight: 700;
    padding: 11px 40px
}

.contact-btn-autozip:hover {
    background-color: #fff;
    color: #04477d
}

.button {
    cursor: pointer
}

.contact-policy {
    margin-top: 15px
}

.contact-policy-ttl {
    color: #04477d;
    font-size: 20px;
    font-size: 2rem;
    font-weight: 700;
    letter-spacing: .16em;
    margin-bottom: 20px;
    text-align: center
}

.contact-policy-textarea {
    background-color: #fff;
    border-radius: 0;
    padding: 40px
}

.contact-policy-textarea:focus {
    border-color: #e5e5e4;
    box-shadow: none
}

.submit {
    padding-top: 60px
}

.confirm-btn-off {
    background-color: #c4c4c4
}

.confirm-btn-off,
.confirm-btn-on {
    font-size: 30px;
    font-size: 3rem;
    font-weight: 700;
    height: 100px;
    letter-spacing: .1em;
    width: 100%
}

.confirm-btn-on {
    background-color: #f6b94f;
    cursor: pointer;
    display: none;
    -webkit-transition: all .25s ease-in-out;
    -ms-transition: all .25s ease-in-out;
    transition: all .25s ease-in-out
}

.confirm-btn-on:hover {
    opacity: .7
}

.send-btn-wrap {
    width: 67%
}

.send-btn {
    background-color: #f6b94f;
    cursor: pointer;
    display: block;
    font-size: 30px;
    font-size: 3rem;
    font-weight: 700;
    height: 100px;
    letter-spacing: .1em;
    -webkit-transition: all .25s ease-in-out;
    -ms-transition: all .25s ease-in-out;
    transition: all .25s ease-in-out;
    width: 600px
}

.send-btn:hover {
    opacity: .7
}

.rewrite-btn-wrap {
    width: 31%
}

.rewrite-btn {
    background-color: #c4c4c4;
    cursor: pointer;
    font-size: 30px;
    font-size: 3rem;
    font-weight: 700;
    height: 100px;
    letter-spacing: .1em;
    width: 277px
}

.rewrite-btn:hover {
    opacity: .7
}

.block-item.mod-calendar {
    margin-bottom: 25px
}

.block-item.mod-calendar:first-child {
    margin-bottom: 35px
}

.block-item.mod-calendar:last-child {
    margin-bottom: 0
}

.block-item.mod-calendar .data-label {
    margin-bottom: 5px
}

.mod-calendar .data-input-wrap {
    padding: 10px
}

.contact-btn-autoselect-wrap {
    margin-left: 20px
}

.contact-btn-autoselect {
    background-color: #04477d;
    border: 1px solid #04477d;
    color: #fff;
    font-size: 16px;
    font-size: 1.6rem;
    font-weight: 700;
    padding: 11px 34px;
    width: 275px
}

.contact-btn-autoselect:hover {
    background-color: #fff;
    color: #04477d
}

@media screen and (max-width:1040px) {
    .tooltip.mei_input span:after {
        left: auto;
        right: 50px
    }
}

@media screen and (max-width:900px) {
    .tooltip.tel_input03 {
        right: 0
    }

    .tooltip.tel_input03 span:after {
        left: 15%
    }

    .data-input-wrap.hyphen {
        padding: 0 10px
    }

    .contact-btn-autozip-wrap {
        margin-left: 20px
    }

    .contact-btn-autoselect-wrap {
        margin: 10px 50px 10px 10px
    }
}

@media screen and (max-width:800px) {
    .tooltip.tel_input03 span:after {
        left: 35%
    }
}

@media screen and (max-width:767px) {
    .inline-item.zip-wrap {
        display: block;
        font-size: 0
    }

    .zip-wrap .tooltip {
        bottom: auto;
        top: -54px
    }

    .tooltip.tel_input02,
    .tooltip.tel_input02 span:after,
    .tooltip.zip_input02,
    .tooltip.zip_input02 span:after {
        left: 80px
    }

    .zip-wrap .data-input-wrap.hyphen {
        font-size: 16px;
        font-size: 1.6rem
    }

    .zip-wrap .data-input-wrap {
        display: inline-block
    }

    .contact-btn-autozip-wrap {
        margin-left: 0;
        margin-top: 30px
    }

    .contact-btn-autoselect-wrap {
        display: none
    }
}

@media screen and (min-width:641px) and (max-width:767px) {
    .confirm .contact-data span {
        display: block;
        margin-top: 10px
    }

    .confirm .contact-data span:first-child {
        margin-top: 0
    }
}

@media screen and (max-width:640px) {
    .contact-heading {
        margin-bottom: 20px
    }

    .contact-heading .must {
        margin-left: 20px;
        vertical-align: text-bottom
    }

    .contact-heading.mod-ttl {
        font-size: 26px;
        font-size: 2.6rem;
        line-height: 1.4;
        margin-bottom: 0
    }

    .contact-data.mod-body {
        margin-top: 10px
    }

    .inline-item.mod-tel {
        -webkit-box-align: center;
        -webkit-align-items: center;
        align-items: center;
        display: -webkit-box;
        display: -ms-flexbox;
        display: -webkit-flex;
        display: flex
    }

    .inline-item.mod-name {
        width: 48.5%
    }

    .block-item .data-label,
    .inline-item .data-label {
        margin-bottom: 10px
    }

    .data-label {
        font-weight: 400
    }

    .contact-policy-textarea {
        padding: 20px
    }

    .send-wrap {
        padding-top: 30px
    }

    .send-btn-wrap {
        width: 100%
    }

    .rewrite-btn-wrap {
        margin-top: 20px;
        width: 100%
    }

    .rewrite-btn {
        width: 100%
    }
}

@media screen and (max-width:480px) {
    .contact-dlist {
        padding: 20px 0 30px
    }

    .contact-dlist:last-of-type {
        margin-bottom: 30px
    }

    .confirm .contact-dlist {
        padding: 20px 0
    }

    .contact-heading {
        margin-bottom: 10px
    }

    .contact-heading .must {
        margin-left: 10px
    }

    .confirm .contact-data span {
        display: block;
        margin-top: 10px
    }

    .confirm .contact-data span:first-child {
        margin-top: 0
    }

    .tooltip {
        bottom: 50px
    }

    .tooltip,
    .tooltip span {
        width: 100%
    }

    .tooltip.tel_input02,
    .tooltip.zip_input02 {
        left: 0
    }

    .tooltip.tel_input02 span:after,
    .tooltip.zip_input02 span:after {
        left: 150px
    }

    .tooltip.tel_input03 span:after {
        left: auto;
        right: 15%
    }

    .data-input-wrap.hyphen,
    .zip-wrap .data-input-wrap.hyphen {
        font-size: 12px;
        font-size: 1.2rem;
        padding: 0 8px
    }

    .data-input-wrap.mod-h-sel {
        -ms-flex-preferred-size: 100%;
        flex-basis: 100%
    }

    .data-input-wrap.mod-md-sel {
        -ms-flex-preferred-size: 42%;
        flex-basis: 42%
    }

    .data-input-wrap.mod-md-label {
        -ms-flex-preferred-size: 8%;
        flex-basis: 8%
    }

    .contact-policy-textarea {
        font-size: 14px;
        font-size: 1.4rem
    }

    .submit {
        padding-top: 20px
    }

    .confirm-btn-off,
    .confirm-btn-on,
    .rewrite-btn,
    .send-btn {
        font-size: 20px;
        font-size: 2rem;
        height: 60px
    }
}

@media screen and (min-width:641px) {
    .contact-dlist {
        display: -webkit-box;
        display: -ms-flexbox;
        display: -webkit-flex;
        display: flex
    }

    .contact-heading {
        width: 200px
    }

    .contact-heading label {
        display: block
    }

    .mod-reserve:not(.confirm) .contact-heading.mod-ttl {
        width: 100%
    }

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

    .inline-item.mod-name {
        width: 47%
    }

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

@media screen and (min-width:768px) {

    input[type=number],
    input[type=text],
    select,
    textarea {
        font-size: 18px;
        font-size: 1.8rem
    }

    .contact-heading {
        width: 230px
    }
}

.validation-advice {
    color: #d84c8b;
    font-weight: 700;
    left: 0;
    position: absolute;
    top: 50px;
    white-space: nowrap
}

.mail_input01 .validation-advice {
    top: 100%
}

@media screen and (max-width:767px) {
    .validation-advice {
        font-size: 14px;
        font-size: 1.4rem
    }
}

@media screen and (max-width:480px) {
    .validation-advice {
        top: 40px
    }
}

.dropmenu {
    background-color: #fff;
    border-top: 1px solid #ddd;
    display: none;
    left: 0;
    position: absolute;
    top: 62px;
    width: 100%
}

@media screen and (max-width:959px) {
    .dropmenu {
        border-top: none;
        box-shadow: none;
        display: none;
        position: static
    }
}

.dropmenu-inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    margin: 0 auto;
    max-width: 1080px;
    padding: 30px 0 36px
}

@media screen and (max-width:1200px) {
    .dropmenu-inner {
        padding: 20px 0 26px
    }
}

@media screen and (max-width:959px) {
    .dropmenu-inner {
        padding: 0
    }
}

.dropmenu-contents {
    -webkit-box-flex: 1;
    align-items: center;
    display: flex;
    -ms-flex: 1;
    flex: 1;
    padding: 15px 0;
    position: relative
}

.dropmenu-bnr-wrap {
    position: absolute;
    right: 0;
    top: 0;
    width: 320px
}

@media screen and (max-width:959px) {
    .dropmenu-bnr-wrap {
        display: none;
        width: 31.11111vw
    }
}

.dropmenu-bnr {
    border: 6px solid #bad4eb;
    display: block;
    line-height: 1;
    padding: 13px 20px 5px;
    text-align: left;
    -ms-transition: all .25s ease;
    -webkit-transition: all .25s ease;
    transition: all .25s ease
}

.dropmenu-bnr:hover {
    opacity: .7
}

.dropmenu-bnr:after {
    background-image: url(../../assets/img/common/icon-arrow-03.svg);
    background-position: 0 0;
    background-repeat: no-repeat;
    background-size: 100%;
    content: "";
    height: 8px;
    position: absolute;
    right: 30px;
    top: 50%;
    -webkit-transform: translateX(0) translateY(-50%);
    -moz-transform: translateX(0) translateY(-50%);
    -ms-transform: translateX(0) translateY(-50%);
    -o-transform: translateX(0) translateY(-50%);
    transform: translateX(0) translateY(-50%);
    width: 20px
}

.dropmenu-bnr .mod-en {
    font-family: Old Standard TT;
    font-size: 34px;
    font-size: 3.4rem;
    font-style: italic;
    padding-right: 15px;
    vertical-align: middle
}

[data-page=faq] .dropmenu-bnr .mod-en span {
    font-size: 38px;
    font-size: 3.8rem
}

.dropmenu-bnr .mod-ja {
    color: #616262;
    font-size: 16px;
    font-size: 1.6rem;
    letter-spacing: .1em;
    position: relative;
    vertical-align: middle
}

@media screen and (min-width:768px) and (max-width:900px) {
    .dropmenu-bnr img {
        height: 52px
    }
}

.dropmenu-ttl {
    color: #fff;
    font-family: ":Noto Serif JP", serif;
    font-size: 30px;
    font-size: 3rem;
    font-weight: 600;
    line-height: 1.25;
    margin-bottom: 5px;
    text-align: left
}

@media screen and (max-width:959px) {
    .dropmenu-ttl {
        display: none
    }
}

@media screen and (min-width:768px) and (max-width:900px) {
    .dropmenu-ttl .mod-en {
        font-size: 40px;
        font-size: 4rem;
        padding-right: 5px
    }

    .dropmenu-ttl .mod-ja {
        letter-spacing: .05em;
        padding-left: 15px
    }

    .dropmenu-ttl .mod-ja,
    .dropmenu-ttl .mod-ja:after {
        font-size: 15px;
        font-size: 1.5rem
    }
}

.dropmenu-thumbnail {
    margin-right: 20px;
    padding: 20px 0;
    position: relative;
    width: 88px
}

.dropmenu-thumbnail:before {
    content: "";
    display: block;
    padding-top: 100%
}

.dropmenu-thumbnail img {
    left: 0;
    margin-top: -44px;
    position: absolute;
    top: 50%
}

.dropmenu-sp-all {
    display: none
}

.dropmenu-list {
    flex: 1 1 100%;
    margin: 0 auto;
    max-width: 1080px;
    padding-left: 20px
}

@media screen and (max-width:959px) {
    .dropmenu-list {
        background-color: inherit;
        margin: 0;
        padding: 0
    }
}

.dropmenu-item {
    float: left;
    max-width: 25%;
    padding: 3px 3px 5px 4px;
    text-align: left;
    width: 100%
}

.dropmenu-item.about-up-column {
    max-width: 32.6%
}

@media screen and (max-width:959px) {
    .dropmenu-item.about-up-column {
        max-width: 100%
    }
}

.dropmenu-item.about-up-column-big {
    max-width: 32.6%
}

@media screen and (max-width:959px) {
    .dropmenu-item.about-up-column-big {
        max-width: 100%
    }
}

.dropmenu-item.feature-up-column {
    max-width: 24.6%
}

@media screen and (max-width:959px) {
    .dropmenu-item.feature-up-column {
        max-width: 100%
    }
}

.dropmenu-item.feature-up-column-big {
    max-width: 36.6%
}

@media screen and (max-width:959px) {
    .dropmenu-item.feature-up-column-big {
        max-width: 100%
    }
}

.dropmenu-item.event,
.dropmenu-item.salon-up-column {
    max-width: 20%
}

@media screen and (max-width:959px) {

    .dropmenu-item.event,
    .dropmenu-item.salon-up-column {
        max-width: 100%
    }

    .dropmenu-item {
        max-width: 100%;
        padding: 0;
        width: 100%
    }

    .dropmenu-item:last-child .dropmenu-btn {
        border-bottom: none
    }

    .fixed .dropmenu-item {
        padding: 0;
        width: 50%
    }
}

.dropmenu-btn {
    background-color: #fff;
    border-radius: 30px;
    color: #333;
    display: inline-block;
    font-family: Noto Sans JP, sans-serif;
    font-size: 16px;
    letter-spacing: .11em;
    line-height: 1;
    padding: 11px 15px;
    position: relative;
    text-align: center;
    text-align: left;
    text-decoration: none;
    -ms-transition: all .3s ease;
    -webkit-transition: all .3s ease;
    transition: all .3s ease
}

@media not all and (min-resolution:.001dpcm) {
    @supports (-webkit-appearance:none) {
        .dropmenu-btn {
            font-size: 13px
        }
    }
}

.dropmenu-btn:after {
    background-image: url(../../assets/img/common/renewal/header/menu_arrow_white.png);
    background-repeat: no-repeat;
    background-size: 100%;
    content: "";
    display: block;
    height: 15px;
    position: absolute;
    right: -4%;
    top: 40%;
    width: 9px
}

@media not all and (min-resolution:.001dpcm) {
    @supports (-webkit-appearance:none) {
        .dropmenu-btn:after {
            top: 35%;
            width: 8px
        }
    }
}

@media screen and (max-width:959px) {
    .dropmenu-btn:after {
        background-image: none
    }
}

@media screen and (min-width:959px) {
    .dropmenu-btn:hover {
        color: #dc0250;
        opacity: 1
    }
}

.dropmenu-btn:hover:after {
    background-image: url(../../assets/img/common/renewal/header/menu_arrow_red.png)
}

@media screen and (max-width:959px) {

    .catalog-category-link,
    .dropmenu-btn {
        -webkit-box-align: center;
        -webkit-align-items: center;
        align-items: center;
        background-color: #fff;
        border: none;
        border-bottom: 1px solid #ddd;
        border-radius: 0;
        color: #333;
        display: -webkit-box;
        display: -ms-flexbox;
        display: -webkit-flex;
        display: flex;
        font-size: 1.55rem;
        font-weight: 300;
        height: 80px;
        line-height: 36px;
        margin: 0 20px 0 30px;
        padding: 0;
        text-align: left
    }
}

@media screen and (max-width:640px) {

    .catalog-category-link,
    .dropmenu-btn {
        border-bottom: 1px solid #ddd;
        color: #333;
        font-size: 18px;
        font-size: 1.55rem;
        height: 56px;
        margin: 0 20px 0 30px
    }
}

@media screen and (max-width:340px) {

    .catalog-category-link,
    .dropmenu-btn {
        font-size: 15px;
        font-size: 1.5rem
    }
}

@media screen and (max-width:959px) {
    [data-page=salon] .dropmenu-btn {
        letter-spacing: .16em
    }

    [data-page=salon] .dropmenu-item:nth-child(9) .dropmenu-btn {
        border-bottom: none
    }

    .dropmenu-contents {
        background: #fff;
        display: block;
        padding: 0
    }

    .dropmenu-thumbnail {
        display: none
    }

    .dropmenu-sp-all {
        background-color: inherit;
        display: block;
        padding: 0;
        width: 100%
    }

    .dropmenu-sp-all+.dropmenu-list {
        padding-top: 0
    }
}

.emergency-news {
    border-bottom: 1px solid #e5e5e4;
    margin-bottom: 30px;
    padding: 30px 20px;
    text-align: center
}

.emergency-news a {
    background: red !important;
    color: #fff !important;
    line-height: 2.3;
    padding: 8px 15px
}

.emergency-news a span {
    color: #fff
}

@media screen and (max-width:640px) {
    .emergency-news a span {
        font-size: 11.5px
    }
}

@media screen and (max-width:767px) {
    .faq-section {
        padding: 30px 0
    }

    .faq-term {
        padding: 19px 53px 5px 66px
    }

    .faq-ttl {
        font-size: 30px;
        margin-bottom: 25px
    }

    .faq-desc-inner p,
    .faq-term {
        font-size: 16px;
        line-height: 25px
    }

    .faq-term:after {
        right: 12px;
        top: 53%
    }

    .faq-desc-inner {
        align-items: center;
        padding: 22px 50px 30px 0
    }

    .faq-desc-inner .mod-num-a {
        margin-right: 0;
        margin-top: 0
    }
}

@media screen and (max-width:480px) {
    .faq .c-heading-ttl .mod-en span {
        font-size: 36px
    }

    .faq-term {
        padding: 19px 57px 30px 53px
    }

    .faq-desc-inner .mod-num-a,
    .faq-term .mod-num-q {
        width: 14%
    }

    .faq-desc-inner,
    .faq-term .mod-num-q {
        align-items: top;
        padding: 17px 0 10px
    }
}

@media screen and (max-width:360px) {
    .faq-ttl {
        font-size: 26px
    }

    .faq-desc-inner {
        padding: 20px 20px 20px 0
    }

    .faq-desc-inner p,
    .faq-term {
        font-size: 14px
    }

    .faq-term .mod-num-a,
    .faq-term .mod-num-q {
        font-size: 30px
    }
}

.faq .c-heading-ttl .mod-en span {
    font-size: 38px;
    font-size: 3.8rem
}

.faq-section {
    counter-reset: faq_num;
    padding: 45px 0
}

.faq-section:first-child {
    padding-top: 0
}

.faq-section:last-child {
    padding-bottom: 0
}

.faq-ttl {
    color: #333;
    font-family: Shippori Mincho;
    font-size: 37px;
    font-weight: 700;
    line-height: 54px;
    margin-bottom: 23px;
    position: relative;
    text-align: center
}

.faq-dlist {
    background: #e0dae5;
    counter-increment: faq_num;
    margin: 0 0 13px
}

.faq-term {
    color: #333;
    cursor: pointer;
    font-size: 16px;
    font-weight: 700;
    letter-spacing: .04em;
    line-height: 24px;
    padding: 22px 60px 28px 71px;
    position: relative;
    -ms-transition: all .5s ease;
    -webkit-transition: all .5s ease;
    transition: all .5s ease
}

.faq-term:after {
    background-image: url(../../assets/img/faq/faq_toggle_on.png);
    background-position: 0 0;
    background-repeat: no-repeat;
    background-size: 100% 100%;
    content: "";
    display: block;
    height: 25px;
    margin-top: -15px;
    position: absolute;
    right: 20px;
    top: 55%;
    transform: rotate(-90deg);
    transition: all .2s;
    width: 25px
}

.open .faq-term:after {
    background-image: url(../../assets/img/faq/faq_toggle_off.png);
    transform: rotate(0)
}

.faq-term .mod-num-q {
    align-items: center;
    color: #dc0250;
    display: flex;
    flex-shrink: 0;
    font-family: ヒラギノ明朝 Pro, sans-serif;
    font-size: 30px;
    height: 100%;
    justify-content: center;
    left: 0;
    line-height: 1;
    padding: 3px 0 10px;
    position: absolute;
    top: 0;
    width: 77px
}

.faq-term .mod-num-q:before {
    content: "Q"
}

.faq-desc {
    display: none
}

.faq-desc-inner {
    align-items: flex-start;
    color: #333;
    display: flex;
    font-size: 16px;
    letter-spacing: .095em;
    line-height: 1.5;
    padding: 0 52px 31px 0;
    position: relative
}

.faq-desc-inner .mod-num-a {
    color: #262626;
    display: inline-block;
    flex-shrink: 0;
    font-family: ヒラギノ明朝 Pro, sans-serif;
    font-size: 30px;
    line-height: 1;
    margin-right: 2px;
    text-align: center;
    width: 70px
}

.faq-desc-inner .mod-num-a:before {
    content: "A"
}

.faq-desc-inner p {
    color: #262626;
    font-size: 15px;
    line-height: 26px
}

@media screen and (max-width:767px) {
    .faq-section {
        padding: 30px 0
    }

    .faq-term {
        padding: 19px 51px 19px 66px
    }

    .faq-ttl {
        font-size: 30px;
        margin-bottom: 25px
    }

    .faq-desc-inner p,
    .faq-term {
        font-size: 16px;
        line-height: 25px
    }

    .faq-term:after {
        right: 12px;
        top: 53%
    }

    .faq-desc-inner {
        align-items: top;
        padding: 9px 52px 30px 0
    }

    .faq-desc-inner .mod-num-a {
        margin-right: 0;
        margin-top: 0
    }
}

@media screen and (max-width:480px) {
    .faq .c-heading-ttl .mod-en span {
        font-size: 36px
    }

    .faq-dlist {
        margin: 0 0 7px
    }

    .faq-term {
        padding: 19px 51px 19px 46px
    }

    .faq-desc-inner .mod-num-a,
    .faq-term .mod-num-q {
        align-items: flex-start;
        line-height: 25px;
        width: 14%
    }

    .faq-term .mod-num-q {
        padding: 24px 0 10px
    }

    .faq-desc-inner .mod-num-a {
        margin-right: 3%
    }
}

@media screen and (max-width:360px) {
    .faq-ttl {
        font-size: 26px
    }

    .faq-term {
        padding: 20px 45px 20px 40px
    }

    .faq-desc-inner {
        padding: 9px 45px 20px 0
    }

    .faq-desc-inner p,
    .faq-term {
        font-size: 14px
    }

    .faq-term .mod-num-a,
    .faq-term .mod-num-q {
        font-size: 30px
    }

    .faq-desc-inner .mod-num-a {
        margin-right: 2%
    }
}

.btn-faq {
    margin: 48px 0 0 10px
}

@media screen and (max-width:767px) {
    .btn-faq {
        margin: 35px 0 0
    }
}

.faq--line-reserve .faq-desc-inner p,
.faq--line-reserve .faq-desc-inner p img {
    width: 100%
}

.faq--line-reserve .line-reserve-btn ul {
    align-items: center;
    display: flex;
    flex-direction: row;
    justify-content: space-between
}

.faq--line-reserve .line-reserve-btn ul li {
    align-items: center;
    background-color: #000;
    border-radius: 10px;
    display: flex;
    height: 93px;
    justify-content: center;
    width: 45%
}

.faq--line-reserve .line-reserve-btn ul li a {
    color: #fff;
    display: block;
    font-size: 20px;
    font-weight: 300;
    line-height: 34px;
    text-align: center
}

@media only screen and (max-width:600px) {
    .faq--line-reserve .line-reserve-btn ul li {
        height: 70px
    }

    .faq--line-reserve .line-reserve-btn ul li a {
        font-size: 16px;
        line-height: 26px
    }
}

@media only screen and (max-width:400px) {
    .faq--line-reserve .line-reserve-btn ul li {
        height: 65px
    }

    .faq--line-reserve .line-reserve-btn ul li a {
        font-size: 13px;
        line-height: 21px
    }
}

footer .footer-copyright {
    background: #be0019;
    color: #fff;
    display: block;
    text-align: center
}

footer .footer-info-inner {
    padding: 30px 10px 20px
}

.f_bn_area {
    margin: 60px auto;
    max-width: 1030px;
    padding: 0 15px
}

.f_bn_area_one div {
    margin-bottom: 30px
}

.f_bn_area_one div img {
    display: block;
    width: 100%
}

.f_bn_area_in {
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin: 0 0 0 -30px
}

.f_bn_area_in div {
    padding: 0 0 30px 30px;
    width: 50%
}

.f_bn_area_in2 {
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin: 0 0 0 -15px
}

.f_bn_area_in2 div {
    padding: 0 0 15px 15px;
    width: 25%
}

@media only screen and (max-width:767px) {
    .f_bn_area {
        margin: 40px auto 10px;
        max-width: 500px
    }

    .f_bn_area_in {
        display: block;
        margin: 0
    }

    .f_bn_area_in div {
        padding: 0 0 30px;
        width: 100%
    }

    .f_bn_area_in2 div {
        width: 50%
    }
}

@media screen and (max-width:480px) {
    .footer-contact {
        padding: 39px 0 247px
    }

    .footer-contact-lead {
        font-size: 22px;
        letter-spacing: .05em;
        line-height: 28px;
        margin-left: 94px;
        padding: 0 5px 0 20px
    }

    .footer-contact-btn-wrap {
        padding: 15px 10px 0
    }

    .footer-contact-btn {
        font-size: 16px;
        height: 67px;
        margin: 5px auto;
        width: 290px
    }

    .footer-contact-btn-icon {
        margin-right: 10px
    }

    .mod-request .footer-contact-btn-icon {
        height: auto;
        width: 20px
    }

    .mod-reserve .footer-contact-btn-icon {
        width: 19px
    }
}

.footer-info {
    background-color: #dc0250
}

@media only screen and (max-width:899px) {
    .footer-info {
        padding-bottom: 77.66px
    }
}

.footer-info-inner {
    margin: 0 auto;
    max-width: 1080px;
    padding: 30px 10px;
    text-align: center
}

.footer-logo-wrap {
    margin-bottom: 10px
}

.footer-logo-link {
    display: block;
    margin: 0 auto;
    -webkit-transition: all .25s ease-in-out;
    -ms-transition: all .25s ease-in-out;
    transition: all .25s ease-in-out;
    width: 214px
}

.footer-logo-link:hover {
    opacity: .7
}

.footer-lead {
    font-size: 14px;
    letter-spacing: .09em;
    line-height: 32px
}

.footer-copyright,
.footer-lead {
    color: #fff;
    font-family: Noto Sans JP, sans-serif
}

.footer-copyright {
    font-size: 12px;
    letter-spacing: .01em;
    line-height: 28px
}

@media only screen and (max-width:767px) {
    .footer-info-inner {
        -webkit-box-direction: normal;
        -webkit-flex-direction: column;
        flex-direction: column;
        padding: 50px 20px 60px;
        text-align: center
    }

    .footer-logo-img {
        width: 214px
    }

    .footer-copyright,
    .footer-lead {
        font-size: 13px;
        font-size: 1.3rem
    }
}

.footer-contact {
    background-color: #00a8ad;
    background: url(../../assets/img/top/renewal/footer-contact-bg.png) 50% no-repeat, #eefbf9;
    background-size: auto 100%;
    border-bottom: 1px solid #dc0250;
    height: 350px;
    letter-spacing: .04em;
    padding: 57px 0;
    text-align: center
}

.footer-contact-inner {
    margin: 0 auto;
    max-width: 1080px
}

.footer-contact-lead {
    color: #333;
    font-family: Shippori Mincho, serif;
    font-size: 30px;
    font-weight: 600;
    letter-spacing: .18em;
    line-height: 44px;
    margin-left: 235px;
    text-align: left
}

.footer-contact-btn-wrap {
    justify-content: center;
    margin-left: -7px;
    padding: 48px 0
}

.footer-contact-btn,
.footer-contact-btn-wrap {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex
}

.footer-contact-btn {
    -webkit-box-align: center;
    -webkit-align-items: center;
    align-items: center;
    border-radius: 10px;
    color: #fff;
    font-family: Noto Sans JP, Roboto, -apple-system, BlinkMacSystemFont, Hiragino Kaku Gothic ProN, Hiragino Kaku Gothic Pro, Meiryo UI, Meiryo, sans-serif;
    font-size: 16px;
    font-weight: 300;
    height: 70px;
    justify-content: left;
    letter-spacing: .07em;
    line-height: 24px;
    margin: 0 11px 0 0;
    max-width: 100%;
    padding: 0 17px;
    position: relative;
    text-align: left;
    -webkit-transition: all .25s ease-in-out;
    -ms-transition: all .25s ease-in-out;
    transition: all .25s ease-in-out;
    width: 285.33333px
}

.footer-contact-btn:last-child {
    margin-right: 0
}

.footer-contact-btn:after {
    border-right: 2px solid #fff;
    border-top: 2px solid #fff;
    content: "";
    height: 10px;
    position: absolute;
    right: 24px;
    top: 46%;
    -webkit-transform: rotate(45deg) translateY(-50%);
    transform: rotate(45deg) translateY(-50%);
    width: 10px
}

.footer-contact-btn span {
    text-align: left
}

.footer-contact-btn.mod-catalog,
.footer-contact-btn.mod-request {
    background-color: #00a8ad
}

.footer-contact-btn.mod-reserve {
    background-color: #dc0250
}

.footer-contact-btn:hover {
    opacity: .7
}

.footer-contact-btn-icon {
    height: 32px;
    margin-right: 20px
}

@media screen and (max-width:959px) {
    .footer-contact {
        background-position: top;
        background-size: cover;
        display: flex;
        flex-flow: column;
        height: auto;
        justify-content: center;
        padding: 65px 0 250px;
        text-align: center
    }

    .footer-contact-lead {
        font-size: 25px;
        letter-spacing: .17em;
        margin-left: 50px;
        padding: 0 20px
    }

    .footer-contact-btn-wrap {
        -webkit-box-direction: normal;
        -webkit-flex-direction: column;
        flex-direction: column;
        padding: 20px 20px 0
    }

    .footer-contact-btn {
        margin: 10px auto;
        width: 400px
    }

    .footer-contact-btn:last-child {
        margin-bottom: 0;
        margin-right: auto
    }
}

@media screen and (max-width:600px) {
    .footer-contact-lead {
        margin-left: 130px
    }
}

@media screen and (max-width:480px) {
    .footer-info-inner {
        padding: 20px 10px 32px
    }

    .footer-logo-wrap {
        margin-bottom: 12px
    }

    .footer-logo-img {
        width: 145px
    }

    .footer-lead {
        letter-spacing: .1em;
        margin-bottom: 2px
    }

    .footer-copyright,
    .footer-lead {
        font-size: 10px;
        line-height: 20px
    }

    .footer-copyright {
        letter-spacing: .02em
    }

    .footer-contact {
        padding: 39px 0 247px
    }

    .footer-contact-lead {
        font-size: 22px;
        letter-spacing: .05em;
        line-height: 28px;
        margin-left: 94px;
        padding: 0 5px 0 20px
    }

    .footer-contact-btn-wrap {
        padding: 15px 10px 0
    }

    .footer-contact-btn {
        font-size: 16px;
        height: 67px;
        margin: 5px auto;
        width: 290px
    }

    .footer-contact-btn-icon {
        margin-right: 10px
    }

    .mod-request .footer-contact-btn-icon {
        height: auto;
        width: 20px
    }

    .mod-reserve .footer-contact-btn-icon {
        width: 19px
    }
}

@media screen and (max-width:400px) {
    .footer-contact {
        padding: 39px 0 207px
    }
}

@media screen and (max-width:360px) {
    .footer-contact-lead {
        margin-left: 80px;
        padding: 0 10px
    }
}

@media only screen and (-webkit-min-device-pixel-ratio:2) and (min-width:960px) {
    .footer-contact {
        background: url(../../assets/img/top/renewal/footer-contact-bg.png) 50% no-repeat, #eefbf9
    }
}

@media only screen and (max-width:959px) {
    .footer-contact {
        background: url(../../assets/img/common/footer-contact-bg-tab.png) 40% no-repeat, #eefbf9;
        background-size: auto 100%
    }
}

@media only screen and (max-width:600px) {
    .footer-contact {
        background: url(../../assets/img/top/renewal/footer-contact-bg-sp.png) 50% no-repeat, #eefbf9;
        background-size: auto 100%
    }
}

@media only screen and (max-width:320px) {
    .footer-contact {
        background: url(../../assets/img/top/renewal/footer-contact-bg-sp.png) 35% no-repeat, #eefbf9;
        background-size: auto 100%
    }
}

.footer-mega {
    background-color: #fff;
    padding: 0 10px;
    text-align: left
}

.footer-mega-nav {
    border-bottom: 1px solid #ddd;
    margin: 0 auto;
    max-width: 1080px;
    overflow: hidden;
    padding: 47px 0 44px
}

.footer-mega-col {
    display: inline-block;
    overflow: hidden;
    vertical-align: top
}

.footer-mega-subcol {
    float: left;
    padding: 0 39px 0 10px;
    vertical-align: top
}

.footer-mega-group+.footer-mega-group {
    padding-top: 36px
}

.footer-mega-ttl {
    color: #333;
    display: inline-block;
    font-family: Noto Sans JP, sans-serif;
    font-size: 18px;
    font-weight: 400;
    letter-spacing: .09em;
    line-height: 34px;
    padding-left: 0;
    text-align: left;
    -webkit-transition: all .25s ease-in-out;
    -ms-transition: all .25s ease-in-out;
    transition: all .25s ease-in-out
}

.footer-mega-list {
    padding-top: 4px
}

.footer-mega-list.flex {
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex
}

.footer-mega-list.flex+.footer-mega-list.flex {
    padding-top: 0
}

.flex .footer-mega-item:first-child {
    padding-right: 24px
}

.footer-mega-link {
    color: #333;
    font-size: 14px;
    font-weight: 300;
    letter-spacing: .07em;
    line-height: 32px;
    -webkit-transition: all .25s ease-in-out;
    -ms-transition: all .25s ease-in-out;
    transition: all .25s ease-in-out
}

.footer-mega-link span:after {
    content: attr(data-txt-pc)
}

.flex .footer-mega-item:first-child .footer-mega-link {
    padding-right: 1.1em
}

.flex:first-child .footer-mega-item:first-child .footer-mega-link {
    padding-right: 0
}

@media screen and (max-width:1045px) {
    .footer-mega-subcol {
        padding: 0 20px 0 10px
    }
}

@media screen and (max-width:959px) {
    .footer-mega {
        padding: 0 11px
    }

    .footer-mega-nav {
        display: flex;
        justify-content: space-between;
        padding: 30px 0
    }

    .footer-mega-col {
        display: flex;
        flex-direction: column;
        float: none;
        width: 49%
    }

    .footer-mega-subcol {
        margin-bottom: 30px;
        padding: 0 20px;
        width: 100%
    }

    .footer-mega-ttl {
        font-size: 16px;
        line-height: 1.5;
        padding-left: 0
    }

    .footer-mega-ttl:before {
        font-size: 14px;
        font-size: 1.4rem
    }

    .footer-mega-ttl[target=_blank]:not(.contact):before {
        font-size: 16px;
        font-size: 1.6rem
    }

    .footer-mega-list {
        padding-top: 0
    }

    .footer-mega-item {
        padding-left: 0;
        padding-top: 10px
    }

    .flex .footer-mega-item {
        padding: 10px 0 0 15px
    }

    .footer-mega-link {
        display: inline-block;
        font-size: 14px;
        font-size: 1.4rem;
        line-height: 1.6
    }
}

@media (-ms-high-contrast:none) and (max-width:767px) {

    .footer-meag-group,
    ::-ms-backdrop {
        display: block
    }
}

@media screen and (max-width:560px) {
    .footer-mega-ttl {
        font-size: 14px;
        font-size: 1.4rem
    }

    .footer-mega-link {
        font-size: 13px;
        font-size: 1.3rem
    }
}

@media screen and (max-width:480px) {
    .footer-mega-nav {
        padding: 44px 0 0
    }

    .footer-mega-col {
        padding: 0;
        width: 50%
    }

    .footer-mega-col+.footer-mega-col {
        margin: 0 0 0 23px
    }

    .footer-mega-group+.footer-mega-group {
        margin: 0 0 15px;
        padding-top: 21px
    }

    .footer-mega-group {
        margin-bottom: 15px
    }

    .footer-mega-subcol {
        margin-bottom: 22px;
        padding: 0
    }

    .footer-mega-subcol:nth-child(2n),
    .footer-mega-subcol:nth-child(odd) {
        width: 100%
    }

    .footer-mega-subcol:nth-child(n+2) {
        padding: 0
    }

    .footer-mega-ttl {
        font-size: 13px;
        letter-spacing: 0;
        margin-bottom: 11px;
        padding-left: 0
    }

    .footer-mega-ttl:before {
        font-size: 10px;
        font-size: 1rem;
        left: -3px;
        top: 1em
    }

    .footer-mega-ttl[target=_blank]:not(.contact):before {
        font-size: 12px;
        font-size: 1.2rem;
        left: -3px;
        top: 1em
    }

    .footer-mega-item {
        margin-bottom: 6px;
        padding: 0
    }

    .footer-mega-item:last-child {
        padding-bottom: 0
    }

    .flex .footer-mega-item {
        margin-bottom: 4px;
        padding: 0 0 0 3px
    }

    .flex .footer-mega-item:first-child {
        padding-right: 36px
    }

    .footer-mega-link {
        font-size: 12px;
        letter-spacing: .12em;
        line-height: 18px
    }
}

@media screen and (max-width:320px) {
    .footer-mega-ttl {
        font-size: 12px;
        font-size: 1.2rem
    }

    .footer-mega-link {
        font-size: 11px;
        font-size: 1.1rem
    }
}

@media screen and (min-width:768px) {

    .footer-mega-link:hover,
    .footer-mega-ttl:hover {
        opacity: .7
    }
}

.bnr {
    background: #fff;
    padding: 38px 10px 14px
}

@media screen and (max-width:480px) {
    .bnr {
        padding: 13px 0
    }
}

.bnr .c-section-body {
    display: flex;
    justify-content: center;
    overflow: hidden;
    width: 100%
}

.bnr-ttl {
    color: #fff;
    display: flex;
    margin: 0 auto;
    padding: 6px 0
}

@media screen and (max-width:767px) {
    .bnr-ttl {
        padding: 6px 10px
    }
}

.bnr-ttl li {
    margin-right: 27px
}

@media screen and (max-width:767px) {
    .bnr-ttl li {
        margin-right: 24px
    }
}

.bnr-ttl li a[href]:not([class]) {
    color: #333;
    font-family: Noto Sans JP, sans-serif;
    font-size: 14px;
    font-weight: 300;
    line-height: 28px;
    text-decoration: none
}

@media screen and (max-width:767px) {
    .bnr-ttl li a[href]:not([class]) {
        font-size: 12px
    }
}

.bnr-list {
    display: flex;
    flex-wrap: wrap;
    margin: 0 auto;
    max-width: 1080px;
    padding: 36px 0;
    width: 100%
}

@media screen and (max-width:767px) {
    .bnr-list {
        padding: 10px 10px 5px
    }
}

.bnr-item {
    flex-shrink: 0;
    margin-right: 1%;
    max-width: calc(20% - 9px);
    min-width: calc(20% - 9px)
}

.bnr-item:last-child {
    margin-right: 0
}

@media screen and (max-width:767px) {
    .bnr-item {
        margin-bottom: 10px;
        margin-right: 3%;
        max-width: 48.5%;
        min-width: 48.5%
    }

    .bnr-item:nth-of-type(2n+2) {
        margin-right: 0
    }
}

.bnr-item img {
    -webkit-backface-visibility: hidden;
    width: 100%
}

.footer-contact--catalog {
    background: url(../../assets/img/common/footer-contact-bg-catalog.png) 50% no-repeat, #eefbf9
}

.footer-contact--catalog .footer-contact-btn-wrap {
    justify-content: flex-start;
    margin-left: 84px;
    padding: 194px 0 27px
}

.footer-contact--catalog .footer-contact-btn {
    border-radius: 10px;
    color: #fff;
    font-size: 18px;
    font-weight: 400;
    height: 70px;
    letter-spacing: 0;
    line-height: 28px;
    margin: 0 11px 0 0;
    max-width: 100%;
    padding: 0 17px 0 48px;
    width: 320px
}

.footer-contact--catalog .foot-consider {
    background-color: #fff;
    border-radius: 10px;
    color: #dc0250;
    display: block;
    font-size: 15px;
    letter-spacing: 0;
    line-height: 24px;
    padding: 0 12px 0 3px;
    text-align: center;
    width: 229px
}

.footer-contact--catalog .foot-store {
    padding-left: 6px
}

.footer-contact--catalog .footer-contact-btn.mod-catalog .foot-consider {
    color: #009a9f
}

.footer-contact--catalog .footer-contact-btn.mod-catalog .foot-store {
    letter-spacing: -.09em;
    padding-left: 19px
}

@media screen and (max-width:959px) {
    .footer-contact--catalog {
        background: url(../../assets/img/common/footer-contact-bg-catalog-tab.png) 50% no-repeat, #eefbf9;
        background-size: contain;
        padding-bottom: 180px
    }

    .footer-contact--catalog .footer-contact-btn-wrap {
        margin-left: 0;
        padding: 284px 0 0
    }

    .footer-contact--catalog .footer-contact-btn {
        margin: 10px auto
    }
}

@media screen and (max-width:400px) {
    .footer-contact--catalog {
        background: url(../../assets/img/common/footer-contact-bg-catalog-sp.png) 50% no-repeat, #eefbf9;
        background-size: cover;
        padding: 53px 0 160px
    }

    .footer-contact--catalog .footer-contact-btn-wrap {
        padding: 240px 0 0
    }

    .footer-contact--catalog .footer-contact-btn {
        border-radius: 5px;
        font-size: 16px;
        height: 63px;
        line-height: 25px;
        margin: 10px auto 0;
        padding: 0 17px 0 39px;
        width: 288px
    }

    .footer-contact--catalog .foot-consider {
        font-size: 13px;
        line-height: 21px;
        padding: 0 12px 0 3px;
        width: 206px
    }
}

.footer-detail {
    border-bottom: 1px solid #ddd;
    padding: 0 10px
}

.footer-detail-list {
    margin: 0 auto;
    max-width: 880px;
    padding: 43px 30px
}

.footer-detail-item:first-child {
    margin-bottom: 38px;
    padding-right: 30px;
    text-align: center;
    width: 100%
}

.footer-detail-ttl {
    color: #333;
    display: block;
    font-family: Shippori Mincho;
    font-size: 30px;
    letter-spacing: .18em;
    line-height: 44px;
    padding-bottom: 8px
}

.footer-tel-wrap {
    background: #fff;
    border: 1px solid #ddd;
    border-radius: 10px;
    margin: 0 auto 10px;
    max-width: 566px;
    padding: 14px;
    vertical-align: top
}

.footer-tel-wrap img {
    height: 34px;
    width: 53px
}

.footer-tel {
    color: #dc0250;
    font-family: Shippori Mincho;
    font-size: 46px;
    letter-spacing: .05em;
    line-height: 41px;
    margin-left: 7px;
    vertical-align: middle
}

.footer-desc-item {
    color: #333;
    font-family: Noto Sans JP, sans-serif;
    font-size: 16px;
    letter-spacing: .12em;
    line-height: 34px;
    text-align: center
}

@media screen and (max-width:959px) {
    .footer-tel {
        font-size: 36px;
        letter-spacing: .09em
    }

    .footer-tel-wrap {
        padding: 8px 0
    }

    .footer-tel-wrap img {
        height: 24px;
        width: 37px
    }

    .footer-desc-item {
        font-size: 16px;
        line-height: 32px
    }
}

@media screen and (max-width:767px) {
    .footer-detail-list {
        -webkit-box-direction: normal;
        -webkit-flex-direction: column;
        flex-direction: column;
        padding: 40px 20px
    }

    .footer-detail-item:first-child {
        margin-bottom: 30px;
        padding-right: 0;
        text-align: center;
        width: 100%
    }

    .footer-detail-ttl {
        display: block;
        font-size: 18px;
        letter-spacing: .05em;
        line-height: 28px;
        margin-bottom: 4px
    }
}

@media (-ms-high-contrast:none) and (max-width:767px) {

    .footer-detail-list,
    ::-ms-backdrop {
        display: block
    }
}

@media screen and (max-width:480px) {
    .footer-detail-list {
        padding: 43px 0 51px
    }

    .footer-detail-item:first-child {
        margin-bottom: 18px
    }
}

@media screen and (max-width:340px) {
    .footer-tel {
        font-size: 30px
    }
}

.footer-line-reserve .footer-info {
    background-color: #f9f4ee
}

.footer-line-reserve .footer-info .footer-logo-wrap {
    margin-bottom: 0
}

.footer-line-reserve .footer-copyright {
    background-color: #f9f4ee;
    color: #000
}

@media screen and (max-width:899px) {
    .footer-line-reserve .footer-info {
        padding-bottom: 0
    }
}

.c-form-area {
    padding-top: 80px
}

.c-term {
    border: 1px solid #ccc;
    border-radius: 6px;
    clear: both;
    height: 300px;
    overflow-x: hidden;
    overflow-y: scroll;
    padding: 50px 25px 25px;
    width: 100%
}

.c-term-section:nth-child(n+2) {
    padding-top: 60px
}

.c-term-name {
    margin-bottom: 40px
}

.c-term-txt {
    margin: 15px 0
}

.c-term-emphasis,
.c-term-ttl {
    font-weight: 700
}

.c-term-ttl {
    color: #5294ce;
    font-size: 1.8rem;
    margin-bottom: 40px;
    text-align: center
}

.c-term-lead {
    padding: 0 10px 15px
}

.c-term-box,
.c-term-lead {
    line-height: 1.6;
    margin-bottom: 20px
}

.c-term-box {
    border: 1px solid #5294ce;
    border-radius: 6px;
    padding: 25px 20px
}

.c-term-box-ttl,
.c-term-head {
    font-weight: 700;
    margin-bottom: 10px
}

.c-term-head {
    border-bottom: 1px solid #5294ce;
    color: #5294ce;
    padding-left: 10px;
    padding-top: 20px
}

.c-term-desc {
    margin-bottom: 10px;
    padding: 0 10px
}

.c-term-item {
    padding-left: 1em;
    position: relative
}

.c-term-item:before {
    color: #666;
    content: "●";
    font-size: 10px;
    font-size: 1rem;
    left: 2px;
    line-height: 2.4;
    position: absolute;
    top: 0
}

.c-form {
    padding-top: 35px
}

.c-form-txt {
    margin: 15px 0
}

.c-form-list {
    font-size: 0;
    text-align: center
}

.c-form-item {
    display: inline-block;
    font-size: 16px;
    font-size: 1.6rem;
    padding: 10px
}

.c-form-radio {
    -webkit-appearance: radio;
    -moz-appearance: radio;
    appearance: radio
}

.c-form-btn-wrap {
    padding-top: 30px
}

.c-form-btn {
    cursor: pointer;
    -webkit-transition: all .25s ease-in-out;
    transition: all .25s ease-in-out
}

.c-form-btn:hover {
    opacity: .7
}

.c-form-btn[disabled] {
    cursor: default
}

.c-form-btn[disabled]:hover {
    opacity: 1
}

.c-form-thanks {
    margin: 0 auto;
    max-width: 820px;
    padding: 30px 0;
    position: relative
}

.c-form-thanks:before {
    background-color: #d84c8b;
    content: "";
    height: 3px;
    left: 50%;
    position: absolute;
    top: -20px;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    width: 60px
}

.c-form-thank-lead {
    font-size: 18px;
    font-size: 1.8rem;
    line-height: 2
}

.c-form-sign {
    border-top: 1px dotted #898989;
    margin: 50px auto 0;
    max-width: 820px;
    padding-top: 20px
}

.c-form-sign-lead {
    margin-bottom: 20px
}

.c-form-sign-ttl {
    font-weight: 700;
    line-height: 1.6;
    margin-bottom: 5px
}

.c-form-sign-tel,
.c-form-sign-time {
    line-height: 1.6
}

.layout-tal {
    text-align: left
}

.layout-tac {
    text-align: center
}

.layout-tar {
    text-align: right
}

@media screen and (max-width:767px) {
    .c-form-area {
        padding-top: 40px
    }

    .c-term {
        height: 250px;
        padding: 30px 15px 15px
    }

    .c-term-section:nth-child(n+2) {
        padding-top: 40px
    }

    .c-term-name {
        margin-bottom: 20px
    }

    .c-term-name,
    .c-term-txt {
        font-size: 14px;
        font-size: 1.4rem
    }

    .c-term-txt {
        margin: 10px 0
    }

    .c-term-emphasis {
        font-size: 14px;
        font-size: 1.4rem
    }

    .c-term-ttl {
        font-size: 1.6rem;
        margin-bottom: 20px
    }

    .c-term-lead {
        padding: 0 5px 10px
    }

    .c-term-box,
    .c-term-lead {
        font-size: 14px;
        font-size: 1.4rem;
        margin-bottom: 10px
    }

    .c-term-box {
        padding: 15px
    }

    .c-term-head {
        padding-left: 5px;
        padding-top: 10px
    }

    .c-term-desc,
    .c-term-head {
        font-size: 14px;
        font-size: 1.4rem;
        margin-bottom: 5px
    }

    .c-term-desc {
        padding: 0 5px
    }

    .c-term-item {
        font-size: 14px;
        font-size: 1.4rem
    }

    .c-term-item:before {
        font-size: 10px;
        font-size: 1rem;
        line-height: 2.2
    }

    .c-form {
        padding-top: 10px;
        text-align: center
    }

    .c-form-txt {
        font-size: 14px;
        font-size: 1.4rem
    }

    .c-form-list {
        display: inline-block;
        text-align: left
    }

    .c-form-item {
        font-size: 14px;
        font-size: 1.4rem
    }

    .c-form-btn-wrap {
        padding-top: 15px
    }

    .layout-m-tal {
        text-align: left
    }

    .layout-m-tac {
        text-align: center
    }

    .layout-m-tar {
        text-align: right
    }
}

.gnav {
    height: 100%;
    margin: 0 auto;
    max-width: 1366px;
    width: 100%
}

@media screen and (max-width:959px) {
    .gnav {
        background-color: #fff;
        height: auto;
        padding-bottom: 60px
    }
}

@media screen and (max-width:640px) {
    .gnav {
        min-height: calc(100% + 60px);
        padding-top: 0
    }
}

.gnav-list {
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    -webkit-box-align: center;
    -webkit-align-items: center;
    align-items: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    height: 100%;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    margin: -30px 0 0 33.4%;
    max-width: 100%;
    padding: 0;
    width: 895px
}

@media screen and (max-width:1400px) {
    .gnav-list {
        width: 840px
    }
}

@media screen and (max-width:1200px) {
    .gnav-list {
        margin: 20px auto;
        padding: 0 10px;
        width: 100%
    }
}

@media screen and (max-width:959px) {
    .gnav-list {
        -webkit-box-direction: normal;
        -webkit-box-pack: start;
        -ms-flex-pack: start;
        -webkit-flex-direction: column;
        flex-direction: column;
        justify-content: flex-start;
        margin: 0;
        padding: 0;
        width: 100%
    }
}

.gnav-item {
    display: inline-block;
    text-align: center;
    vertical-align: middle
}

@media screen and (max-width:959px) {
    .gnav-item {
        border-bottom: 1px solid #ddd;
        position: relative;
        width: 100%
    }

    .gnav-item:first-child {
        border-top: 1px solid #ddd
    }
}

@media screen and (min-width:960px) {
    .gnav-item:hover .gnav-link:after {
        border-bottom: 2px solid #dc0250;
        bottom: 0;
        content: "";
        height: 0;
        left: 0;
        position: absolute;
        width: 100%
    }
}

.gnav-item span {
    display: block;
    font-size: 11px;
    height: auto;
    left: -9px;
    letter-spacing: .08em;
    line-height: 13px;
    position: absolute;
    top: 11px;
    width: 140%
}

@media screen and (max-width:959px) {
    .gnav-item span {
        display: inline-block;
        font-size: 16px;
        position: static;
        width: auto
    }

    .gnav-item[data-page=company] {
        padding-top: 20px
    }

    .gnav-item[data-page=privacy] {
        border-bottom: 1px solid #ddd;
        padding: 2px 0 27px
    }

    .gnav-item[data-page=company],
    .gnav-item[data-page=privacy] {
        border-bottom: none
    }
}

@media screen and (max-width:640px) {

    .gnav-item[data-page=company],
    .gnav-item[data-page=privacy] {
        margin-top: 6px
    }

    .gnav-item[data-page=company] .gnav-link,
    .gnav-item[data-page=privacy] .gnav-link {
        font-size: 16px;
        font-size: 1.6rem;
        line-height: 20px
    }
}

@media screen and (max-width:340px) {

    .gnav-item[data-page=company] .gnav-link,
    .gnav-item[data-page=privacy] .gnav-link {
        font-size: 14px;
        font-size: 1.4rem
    }
}

.gnav-link {
    color: #333;
    display: inline-block;
    font-family: Noto Sans JP, sans-serif;
    font-size: 16px;
    height: 100%;
    line-height: 28px;
    margin: 0 5px;
    padding: 23px 0;
    position: relative;
    -ms-transition: all .25s ease;
    -webkit-transition: all .25s ease;
    transition: all .25s ease
}

@media screen and (max-width:959px) {
    .gnav-link {
        align-items: center;
        color: #333;
        display: flex;
        font-weight: 300;
        justify-content: flex-start;
        line-height: 43px;
        padding: 10px 20px;
        text-align: left
    }
}

@media screen and (max-width:640px) {
    .gnav-link {
        font-size: 18px;
        font-size: 1.7rem;
        letter-spacing: -.09em;
        padding: 5px 7px
    }
}

@media screen and (max-width:340px) {
    .gnav-link {
        font-size: 16px;
        font-size: 1.6rem
    }
}

@media screen and (min-width:960px) {
    .gnav-link:hover {
        color: #dc0250;
        opacity: 1
    }
}

@media screen and (max-width:959px) {
    .gnav-link:not(.no-submenu):after {
        border-right: 2px solid #333;
        border-top: 2px solid #333;
        content: "";
        display: block;
        height: 20px;
        margin-top: -10px;
        position: absolute;
        right: 30px;
        top: 40%;
        -webkit-transform: rotate(135deg);
        transform: rotate(135deg);
        -ms-transition: all .5s ease;
        -webkit-transition: all .5s ease;
        transition: all .5s ease;
        width: 20px
    }
}

@media screen and (max-width:640px) {
    .gnav-link:not(.no-submenu):after {
        height: 10px;
        margin-top: -5px;
        position: absolute;
        right: 20px;
        top: 50%;
        width: 10px
    }
}

@media screen and (min-width:960px) {
    .gnav-link:hover:not(.no-submenu):after {
        display: block;
        opacity: .7
    }
}

@media screen and (max-width:959px) {
    .gnav-link:hover:not(.no-submenu):after {
        display: block;
        top: 50%;
        -webkit-transform: rotate(-45deg);
        transform: rotate(-45deg)
    }

    .gnav-target-icon {
        color: #fff;
        font-size: 14px;
        font-size: 1.4rem;
        padding-left: 10px
    }
}

.gnav-tel-mail {
    display: flex;
    margin: 0 0 0 -10px;
    padding: 10px 5px
}

.gnav-tel-mail .gnav-tel-mail_in {
    padding: 0 0 0 10px;
    width: 50%
}

.gnav-tel-mail .gnav-tel-mail_in a {
    align-items: center;
    background: #fdeff4;
    border-radius: 5px;
    color: #dc0250;
    display: flex;
    padding: 10px;
    text-decoration: none
}

.gnav-tel-mail .gnav-tel-mail_in a div {
    padding: 0 10px 0 0;
    width: 30px
}

@media screen and (min-width:960px) {
    .gnav-tel-mail {
        display: none
    }
}

.gnav-item .gnav-cart a {
    align-items: center;
    display: flex;
    padding: 10px !important;
    text-decoration: none
}

.gnav-item .gnav-cart a div {
    padding: 0 10px 0 0;
    width: 32px
}

.header .h_in {
    align-items: center;
    background-color: #fff;
    border-bottom: 1px solid #f8ccdc;
    display: flex;
    position: relative;
    width: 100%
}

.header .h_in .h_menuarea {
    width: 100%
}

.header .h_in .h_sbmenu {
    align-items: center;
    background: #e0dae5;
    display: flex
}

.header .h_in .h_sbmenu .h_sbmenu_in1 {
    display: flex;
    margin: 0 0 0 auto;
    padding: 5px 10px
}

.header .h_in .h_sbmenu .h_sbmenu_in1 li {
    padding: 0 0 0 10px
}

.header .h_in .h_sbmenu .h_sbmenu_in1 a {
    border: 1.5px solid #262626;
    border-radius: 5px;
    color: #262626;
    display: block;
    font-size: 14px;
    padding: 2px 5px;
    text-decoration: none
}

.header .h_in .h_sbmenu .h_sbmenu_in2 {
    display: flex
}

.header .h_in .h_sbmenu .h_sbmenu_in2 .h_sbmenu_in2_mail {
    background: #fff
}

.header .h_in .h_sbmenu .h_sbmenu_in2 .h_sbmenu_in2_mail a {
    background: url(../../assets/img/common/h_mail_ico_header.svg) left 15px top 16px no-repeat;
    background-size: 20px;
    color: #ea6796;
    display: block;
    font-size: 15px;
    padding: 11px 20px 0 45px;
    text-decoration: none
}

.header .h_in .h_sbmenu .h_sbmenu_in2 .h_sbmenu_in2_tel {
    background: #ed80a7;
    color: #fff;
    line-height: 1.1;
    text-align: center
}

.header .h_in .h_sbmenu .h_sbmenu_in2 .h_sbmenu_in2_tel a {
    background: url(../../assets/img/common/h_tel_ico_header.svg) left 10px center no-repeat;
    background-size: 13px 17px;
    color: #ffff87;
    display: block;
    font-family: Times New Roman, serif;
    font-size: 20px;
    font-weight: 700;
    padding: 2px 20px 0 28px;
    text-decoration: none
}

.header .h_in .h_sbmenu .h_sbmenu_in2 .h_sbmenu_in2_tel span {
    display: block;
    font-size: 10px;
    padding: 0 20px 5px
}

.header .h_in .h_menu {
    background: #f8ccdc;
    width: 100%
}

.header .h_in .h_menu ul.menu {
    display: flex;
    justify-content: flex-start;
    max-width: 1200px;
    padding: 0 10px
}

.header .h_in .h_menu ul.menu li.menu__mega a {
    color: #262626;
    display: block;
    font-size: 16px;
    padding: 20px 25px;
    text-decoration: none
}

.header .h_in .h_menu ul.menu li.menu__mega:hover a {
    color: #dc0250;
    opacity: 1
}

.h_in .logo {
    margin: 0;
    max-width: fit-content;
    padding: 11px 40px;
    width: 100%
}

.h_in .logo a {
    width: 220px
}

.h_in .logo a img,
.menu {
    width: 100%
}

.menu {
    margin: 0 auto;
    max-width: 1000px
}

.menu>li {
    float: left
}

.menu>li a {
    display: block
}

.menu__second-level {
    z-index: 1
}

.menu__fourth-level,
.menu__second-level,
.menu__third-level {
    opacity: 0;
    visibility: hidden
}

/* .menu {
    *zoom: 1
} */

.menu>li:hover {
    -webkit-transition: all .5s;
    transition: all .5s
}

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

.menu:after {
    clear: both
}

li.menu__mega .menu__second-level {
    background: #adadad;
    box-sizing: border-box;
    left: 0;
    position: absolute;
    top: 97px;
    -webkit-transition: all .7s ease;
    transition: all .7s ease;
    width: 100%
}

li.menu__mega .menu__second-level ul {
    margin: 0 auto;
    width: 100%
}

.header .h_in .h_menu ul.menu li.menu__mega:hover .menu__second-level {
    opacity: 1;
    top: 97px;
    visibility: visible
}

.header .h_in .h_menu ul.menu li.menu__mega .menu__second-level ul>li {
    border: none
}

.header .h_in .h_menu ul.menu li.menu__mega .menu__second-level ul>li a {
    color: #fff
}

.header .h_in .h_menu ul.menu li.menu__mega .menu__second-level ul>li a:hover {
    color: #000
}

.header .h_in .h_menu ul.menu li.menu__mega .menu__second-level.menu_2 ul {
    display: flex;
    justify-content: center
}

.header .h_in .h_menu ul.menu li.menu__mega .menu__second-level.menu_2 ul a {
    font-size: 16px;
    padding: 30px
}

.header .h_in .h_menu ul.menu li.menu__mega .menu__second-level.menu_3 ul {
    display: flex;
    justify-content: center
}

.header .h_in .h_menu ul.menu li.menu__mega .menu__second-level.menu_3 ul a {
    font-size: 16px;
    padding: 30px
}

.header .h_in .h_menu ul.menu li.menu__mega .menu__second-level.menu_4 ul {
    display: flex;
    justify-content: center
}

.header .h_in .h_menu ul.menu li.menu__mega .menu__second-level.menu_4 ul a {
    font-size: 16px;
    padding: 30px
}

.header .h_in .h_menu ul.menu li.menu__mega .menu__second-level.menu_5 ul {
    display: flex;
    justify-content: center
}

.header .h_in .h_menu ul.menu li.menu__mega .menu__second-level.menu_5 ul a {
    font-size: 16px;
    padding: 30px
}

.header .h_in .h_menu ul.menu li.menu__mega .menu__second-level.menu_6 ul {
    display: flex;
    justify-content: center;
    padding: 20px 0
}

.header .h_in .h_menu ul.menu li.menu__mega .menu__second-level.menu_6 ul a {
    background: #fff;
    border-radius: 5px;
    color: #262626;
    font-size: 16px;
    margin: 0 0 0 20px;
    max-width: 300px;
    padding: 15px
}

.header .h_in .h_menu ul.menu li.menu__mega .menu__second-level.menu_6 ul a p {
    font-size: 12px
}

.header .h_in .h_menu ul.menu li.menu__mega .menu__second-level.menu_6 ul a:hover {
    color: #dc0250
}

.header .h_in .h_menu ul.menu li.menu__mega .menu__second-level.menu_6 ul .menu_6_ttl {
    padding: 0 0 5px;
    text-align: center
}

.header .h_in .h_menu ul.menu li.menu__mega .menu__second-level.menu_7 ul {
    display: flex;
    justify-content: center
}

.header .h_in .h_menu ul.menu li.menu__mega .menu__second-level.menu_7 ul a {
    font-size: 16px;
    padding: 30px
}

.h_contact,
.menu_sp,
.sp_sbbtnarea {
    display: none
}

@media only screen and (max-width:1322px) {

    .header .h_in .h_menu ul.menu li.menu__mega:hover .menu__second-level,
    li.menu__mega .menu__second-level {
        top: 130px
    }
}

@media only screen and (max-width:1230px) {
    .h_in .logo {
        padding: 9px 20px
    }

    .h_in .logo a.pc {
        display: block
    }

    .header .h_in .h_menu ul.menu li.menu__mega a {
        font-size: 13px;
        padding: 20px 15px
    }

    .header .h_in .h_menu ul.menu li.menu__mega:hover .menu__second-level,
    li.menu__mega .menu__second-level {
        top: 103px
    }
}

@media only screen and (max-width:1126px) {

    .header .h_in .h_menu ul.menu li.menu__mega:hover .menu__second-level,
    li.menu__mega .menu__second-level {
        top: 127px
    }
}

@media only screen and (max-width:1100px) {

    .header .h_in .h_menu ul.menu li.menu__mega:hover .menu__second-level,
    li.menu__mega .menu__second-level {
        top: 139px
    }
}

@media only screen and (max-width:1030px) {
    .header {
        padding: 0 !important
    }

    .h_in .logo {
        padding: 17px 15px 20px
    }

    .header .h_in .h_menu ul.menu li.menu__mega a {
        padding: 20px 10px
    }
}

.navicon {
    text-align: center
}

.navicon small {
    display: none
}

@media only screen and (max-width:899px) {
    .h_menuarea {
        display: none
    }

    .header {
        background: #fff !important
    }

    .header .h_in {
        border: none;
        justify-content: space-between
    }

    .header .h_in .logo {
        padding: 18px 15px 17px 20px
    }

    .header .h_in .logo a {
        width: 140px
    }

    .header .h_in .logo a.pc {
        display: none
    }

    .header .h_in .logo a.sp {
        display: block
    }

    .header .h_in .toggle {
        display: none
    }

    .header .h_in .Label {
        cursor: pointer;
        display: block;
        font-weight: 700;
        padding: 0 15px 15px
    }

    .header .h_in .Label:before {
        border-right: 2px solid #dc0250;
        border-top: 2px solid #dc0250;
        content: "";
        height: 12px;
        position: absolute;
        right: 20px;
        top: calc(50% - 15px);
        -webkit-transform: rotate(45deg);
        transform: rotate(135deg);
        width: 12px
    }

    .header .h_in .toggle:checked+.Label+.content {
        background: #fbe6ed;
        height: auto;
        padding: 20px 0;
        transition: all .1s
    }

    .header .h_in .toggle:checked+.Label:before {
        top: calc(50% - 10px);
        transform: rotate(-45deg) !important
    }

    .header .h_in .Label,
    .header .h_in .content {
        -webkit-backface-visibility: hidden;
        backface-visibility: hidden;
        background: #fff;
        transform: translateZ(0);
        transition: all .1s
    }

    .header .h_in .content {
        height: 0;
        overflow: hidden
    }

    .footer {
        padding: 0 !important
    }

    :root {
        --background-navbar: #fff
    }

    .menu_sp {
        background: var(--background-navbar);
        background: #e0dae5;
        clear: both;
        display: block;
        height: 100vh;
        list-style: none;
        margin-top: 88px;
        overflow-y: auto;
        padding: 0 0 82px;
        position: absolute;
        top: 0;
        transform: scaleY(0);
        transform-origin: top;
        width: 100%
    }

    .menu-btn:checked~.menu_sp,
    .menu_sp {
        transition: .3192s cubic-bezier(.04, .04, .12, .96) .1008s
    }

    .menu-btn:checked~.menu_sp {
        transform: scale(1);
        transform-origin: top
    }

    .menu_sp a {
        display: block;
        font-size: 16px;
        font-weight: 500;
        letter-spacing: 2px;
        text-decoration: none;
        text-transform: capitalize
    }

    .menu_sp a,
    .menu_sp>li {
        opacity: 0;
        transition: .5s
    }

    .menu_sp>li {
        background: #fff;
        border-top: 2px solid #dc0250;
        padding: 15px 0 0
    }

    .menu_sp .menu_sp_bnarea {
        background: #e0dae5
    }

    .menu-btn {
        display: none
    }

    .menu-btn:checked~.menu_sp a,
    .menu-btn:checked~.menu_sp li {
        opacity: 1;
        transition: .3192s cubic-bezier(.04, .04, .12, .96) .2s
    }

    .sp-menu-wrap {
        display: flex;
        justify-content: flex-end
    }

    .h_contact {
        align-items: center;
        background-color: #ed80a7;
        border-radius: 21px;
        display: flex;
        justify-content: center;
        width: 160px
    }

    .h_contact__tel {
        padding-left: 14px;
        position: relative
    }

    .h_contact__tel a {
        color: #ffff87;
        font-family: Times New Roman, serif;
        font-size: 17px;
        font-weight: 700;
        line-height: 20px
    }

    .h_contact__tel:before {
        background-image: url(../../assets/img/common/h_tel_ico_header.svg);
        background-repeat: no-repeat;
        background-size: 100%;
        content: "";
        height: 20px;
        left: -4%;
        position: absolute;
        top: 28%;
        width: 15px
    }

    .h_contact__tel span {
        color: #fff;
        display: block;
        font-family: Noto Sans JP, sans-serif;
        font-size: 12px;
        font-weight: 400;
        line-height: 16px
    }

    .menu-icon {
        -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
        border-radius: 5px;
        cursor: pointer;
        display: inline-block;
        margin: 0 5px 0 0;
        padding: 20px 14px;
        position: relative
    }

    .navicon {
        height: 2px;
        position: relative;
        width: 26px
    }

    .navicon,
    .navicon:after,
    .navicon:before {
        background: #dc0250;
        display: block;
        transition: .3192s cubic-bezier(.04, .04, .12, .96) .1008s
    }

    .navicon:after,
    .navicon:before {
        content: "";
        height: 100%;
        position: absolute;
        width: 100%
    }

    .navicon:before {
        top: -6.5px
    }

    .navicon:after {
        bottom: 13px
    }

    .navicon span {
        color: #dc0250;
        font-family: Noto Sans JP, sans-serif;
        font-size: 9px
    }

    .navicon span small {
        display: inline
    }

    .menu-btn:checked~.menu-icon .navicon:before {
        transform: rotate(-45deg)
    }

    .menu-btn:checked~.menu-icon .navicon:after {
        transform: rotate(45deg)
    }

    .menu-btn:checked~.menu-icon:not(.steps) .navicon:before {
        top: -6.5px
    }

    .menu-btn:checked~.menu-icon:not(.steps) .navicon:after {
        bottom: 6px
    }

    .menu-btn:checked~.menu-icon .navicon {
        background: transparent;
        transition: .2192s cubic-bezier(.04, .04, .12, .96) .1008s
    }

    .navtext-container {
        align-items: center;
        box-sizing: border-box;
        display: flex;
        height: 52px;
        justify-content: center;
        position: absolute;
        width: 100%
    }

    .navtext {
        color: #ddd;
        font-size: 20px;
        letter-spacing: 4px;
        position: absolute;
        text-transform: uppercase
    }

    .menu_sp_sblink1 {
        display: flex;
        justify-content: center;
        margin: -15px 0 0 -3.3%;
        padding: 0 15px
    }

    .menu_sp_sblink1 li {
        background: #fff;
        border-radius: 10px;
        margin: 15px 0 0 3.3%;
        text-align: center;
        width: 47.7%
    }

    .menu_sp_sblink1 li a {
        color: #dc0250 !important;
        font-size: 13px !important;
        padding: 10px 5px;
        text-decoration: none !important
    }

    .menu_sp_sblink3 {
        display: flex;
        -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        margin: -15px 0 0 -3.3%;
        padding: 0 15px
    }

    .menu_sp_sblink3 li {
        align-items: center;
        background: #fff;
        border-radius: 10px;
        display: flex;
        justify-content: center;
        margin: 15px 0 0 3.3%;
        text-align: center;
        width: 30%
    }

    .menu_sp_sblink3 li a {
        color: #dc0250 !important;
        display: block;
        font-size: 13px !important;
        padding: 10px 5px;
        text-decoration: none !important;
        width: 100%
    }

    .menu_sp_sblink4 {
        display: flex;
        -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        justify-content: center;
        margin: -15px 0 0 -3.3%;
        padding: 0 15px
    }

    .menu_sp_sblink4 li {
        align-items: center;
        background: #fff;
        border-radius: 10px;
        display: flex;
        justify-content: center;
        margin: 15px 0 0 3.3%;
        text-align: center;
        width: 30%
    }

    .menu_sp_sblink4 li img {
        display: block;
        padding: 0 0 3px
    }

    .menu_sp_sblink4 li a {
        color: #262626 !important;
        font-size: 13px !important;
        padding: 5px;
        text-decoration: none !important
    }

    .menu_sp_sblink4 li:last-child a {
        padding: 15px 5px
    }

    .menu_sp_bn {
        padding: 0 15px
    }

    .menu_sp_bn div {
        margin: 0 auto;
        max-width: 400px;
        padding: 10px 0;
        text-align: center
    }

    .menu_sp_link {
        display: flex;
        justify-content: center;
        padding: 20px 0
    }

    .menu_sp_link a {
        color: #dc0250 !important;
        font-size: 14px !important;
        margin: 0;
        padding: 0 10px;
        text-decoration: none !important
    }

    .nolower {
        position: relative;
        width: 100%
    }

    .nolower a {
        color: #262626 !important;
        font-weight: 700;
        padding: 0 15px 15px;
        text-decoration: none !important
    }

    .nolower a:after {
        color: #dc0250;
        content: "→";
        position: absolute;
        right: 15px;
        top: calc(50% - 12px)
    }

    .header .h_in .h_sbmenu_in2_sp {
        margin: 0 auto;
        max-width: 430px
    }

    .header .h_in .h_sbmenu_in2_sp_tel {
        padding: 15px 15px 0
    }

    .header .h_in .h_sbmenu_in2_sp_tel a {
        background: #761593 url(../../assets/img/common/h_tel_ico.svg) left 25px center no-repeat;
        background-size: 22px;
        border-radius: 50px;
        color: #fff;
        display: block;
        font-size: 19px;
        font-weight: 700;
        line-height: 1.1;
        padding: 10px 20px 0 28px;
        text-align: center;
        text-decoration: none
    }

    .header .h_in .h_sbmenu_in2_sp_tel span {
        display: block;
        font-size: 10px;
        padding: 4px 20px 15px
    }

    .header .h_in .h_sbmenu_in2_sp_mail {
        padding: 25px 15px 0
    }

    .header .h_in .h_sbmenu_in2_sp_mail a {
        background: #00ca75 url(../../assets/img/common/h_mail_ico.svg) left 25px center no-repeat;
        background-size: 30px;
        border-radius: 50px;
        color: #fff;
        display: block;
        font-size: 19px;
        padding: 15px 20px 15px 45px;
        text-align: center;
        text-decoration: none
    }

    .sp_sbbtnarea {
        background: #f5f9fd;
        bottom: 0;
        box-shadow: 0 -7px 10px -5px rgba(0, 0, 0, .2);
        display: block;
        left: 0;
        opacity: 0;
        padding: 10px 11px;
        position: fixed;
        transition: .5s ease;
        visibility: hidden;
        width: 100%;
        z-index: 5
    }

    .sp_sbbtnarea.is-active {
        opacity: 1;
        visibility: visible
    }

    .sp_sbbtnarea ul {
        display: flex;
        justify-content: center;
        margin: 0 auto;
        max-width: 400px
    }

    .sp_sbbtnarea ul li {
        padding: 0 10px 0 0
    }

    .sp_sbbtnarea ul li a {
        border-radius: 10px;
        box-shadow: 0 2px 3px rgba(0, 0, 0, .1);
        display: block
    }

    .sp_sbbtnarea ul li:last-child {
        padding: 0
    }
}

@media only screen and (max-width:480px) {
    .menu-icon {
        padding: 20px 11px
    }

    .menu_sp a {
        font-size: 3.5vw
    }

    .navtext {
        font-size: 4vw
    }

    .navicon span {
        font-size: 8.5px
    }

    .menu_sp_sblink1 li a,
    .menu_sp_sblink3 li a,
    .menu_sp_sblink4 li a {
        font-size: 3vw !important
    }

    .menu_sp_link a {
        font-size: 3.3vw !important
    }

    .header .h_in .h_sbmenu_in2_sp_tel a {
        font-size: 4vw
    }

    .header .h_in .h_sbmenu_in2_sp_tel span {
        font-size: 2.5vw
    }

    .header .h_in .h_sbmenu_in2_sp_mail a {
        font-size: 4vw
    }

    .header .h_in .Label {
        font-size: 3.5vw
    }
}

@media only screen and (max-width:400px) {
    .header .h_in .logo a {
        width: 110px
    }

    .menu_sp {
        margin-top: 77.4px
    }
}

@media only screen and (max-width:340px) {
    .header .h_in .logo {
        padding: 20px 10px
    }

    .h_contact {
        width: 130px
    }

    .h_contact__tel:before {
        left: -8%
    }

    .h_contact__tel span {
        font-size: 10px;
        line-height: 14px
    }

    .h_contact__tel a {
        font-size: 12px;
        line-height: 20px
    }
}

.header {
    background: hsla(0, 0%, 100%, .85);
    left: 0;
    position: fixed;
    top: 0;
    width: 100%;
    z-index: 99
}

@media screen and (max-width:959px) {
    .header {
        border-bottom: none;
        padding: 0 10px 10px;
        z-index: 99
    }

    .header.open {
        background: #fff
    }
}

.header--line-reserve .h_in {
    border-bottom: none;
    justify-content: center
}

.header--line-reserve .h_in .logo {
    margin: 0 auto;
    max-width: 300px
}

.header--line-reserve .h_in .menu_sp {
    background: var(--background-navbar);
    background: #e0dae5;
    clear: both;
    display: block;
    height: 100vh;
    list-style: none;
    margin-top: 73.8px;
    overflow-y: auto;
    padding: 0 0 82px;
    position: absolute;
    top: 0;
    transform: scaleY(0);
    transform-origin: top;
    transition: .3192s cubic-bezier(.04, .04, .12, .96) .1008s;
    width: 100%
}

.header--line-reserve .h_in .menu-btn:checked~.menu_sp {
    transform: scale(1);
    transform-origin: top;
    transition: .3192s cubic-bezier(.04, .04, .12, .96) .1008s
}

.header--line-reserve .h_in .menu_sp a {
    display: block;
    font-size: 16px;
    font-weight: 500;
    letter-spacing: 2px;
    opacity: 0;
    text-decoration: none;
    text-transform: capitalize;
    transition: .5s
}

.header--line-reserve .h_in .menu_sp>li {
    background: #fff;
    border-top: 2px solid #dc0250;
    opacity: 0;
    padding: 15px 0 0;
    transition: .5s
}

.header--line-reserve .h_in .menu_sp .menu_sp_bnarea {
    background: #e0dae5
}

.header--line-reserve .h_in .menu-btn:checked~.menu_sp a,
.header--line-reserve .h_in .menu-btn:checked~.menu_sp li {
    opacity: 1;
    transition: .3192s cubic-bezier(.04, .04, .12, .96) .2s
}

.header--line-reserve .h_in .sp-menu-wrap {
    display: flex;
    justify-content: flex-end
}

.header--line-reserve .h_in .menu-icon {
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
    border-radius: 5px;
    cursor: pointer;
    display: inline-block;
    margin: 0 5px 0 0;
    padding: 20px 14px;
    position: relative
}

.header--line-reserve .h_in .navicon {
    background: #dc0250;
    display: block;
    height: 2px;
    position: relative;
    transition: .3192s cubic-bezier(.04, .04, .12, .96) .1008s;
    width: 26px
}

.header--line-reserve .h_in .navicon:after,
.header--line-reserve .h_in .navicon:before {
    background: #dc0250;
    content: "";
    display: block;
    height: 100%;
    position: absolute;
    transition: .3192s cubic-bezier(.04, .04, .12, .96) .1008s;
    width: 100%
}

.header--line-reserve .h_in .navicon:before {
    top: -6.5px
}

.header--line-reserve .h_in .navicon:after {
    bottom: 13px
}

.header--line-reserve .h_in .navicon span {
    color: #dc0250;
    font-family: Noto Sans JP, sans-serif;
    font-size: 9px
}

.header--line-reserve .h_in .navicon span small {
    display: inline
}

.header--line-reserve .h_in .menu-btn:checked~.menu-icon .navicon:before {
    transform: rotate(-45deg)
}

.header--line-reserve .h_in .menu-btn:checked~.menu-icon .navicon:after {
    transform: rotate(45deg)
}

.header--line-reserve .h_in .menu-btn:checked~.menu-icon:not(.steps) .navicon:before {
    top: -6.5px
}

.header--line-reserve .h_in .menu-btn:checked~.menu-icon:not(.steps) .navicon:after {
    bottom: 6px
}

.header--line-reserve .h_in .menu-btn:checked~.menu-icon .navicon {
    background: transparent;
    transition: .2192s cubic-bezier(.04, .04, .12, .96) .1008s
}

.header--line-reserve .h_in .nolower {
    position: relative;
    width: 100%
}

.header--line-reserve .h_in .nolower a {
    color: #262626 !important;
    font-weight: 700;
    padding: 0 15px 15px;
    text-decoration: none !important
}

.header--line-reserve .h_in .nolower a:after {
    color: #dc0250;
    content: "→";
    position: absolute;
    right: 15px;
    top: calc(50% - 12px)
}

@media screen and (max-width:1230px) {
    .header--line-reserve .h_in .menu_sp {
        margin-top: 69.8px
    }
}

@media screen and (max-width:1024px) {
    .header--line-reserve .h_in .menu_sp {
        margin-top: 88.8px
    }
}

@media screen and (max-width:899px) {
    .header--line-reserve .h_in {
        justify-content: space-between
    }

    .header--line-reserve .h_in .logo {
        margin: 0;
        max-width: 200px
    }

    .header--line-reserve .h_in .menu_sp {
        margin-top: 67.96px
    }
}

.menu-btn-wrap {
    display: none
}

@media screen and (max-width:959px) {
    .menu-btn-wrap {
        color: #fff;
        cursor: pointer;
        display: block;
        height: 70px;
        position: absolute;
        right: 0;
        text-align: center;
        top: 0;
        -ms-transition: all .25s ease;
        -webkit-transition: all .25s ease;
        transition: all .25s ease;
        width: 80px;
        z-index: 250
    }
}

@media screen and (max-width:640px) {
    .menu-btn-wrap {
        height: 50px;
        padding: 0;
        width: 60px
    }
}

@media screen and (max-width:959px) {
    .menu-btn-wrap:hover {
        opacity: .7
    }

    .menu-btn-icon,
    .menu-btn-icon span {
        display: inline-block;
        -webkit-transition: all .4s;
        transition: all .4s;
        vertical-align: top
    }

    .menu-btn-icon {
        height: 36px;
        left: 68%;
        margin: -18px 0 0 -25px;
        position: absolute;
        top: 56%;
        width: 50px
    }
}

@media screen and (max-width:640px) {
    .menu-btn-icon {
        height: 28px;
        margin: -15px 0 0 -60px;
        position: relative;
        width: 40px
    }
}

@media screen and (max-width:959px) {
    .menu-btn-icon span {
        background: #dc0250;
        height: 4px;
        left: 0;
        position: absolute;
        width: 100%
    }
}

@media screen and (max-width:640px) {
    .menu-btn-icon span {
        height: 3px
    }
}

@media screen and (max-width:959px) {
    .menu-btn-icon span:first-of-type {
        top: 0
    }

    .menu-btn-icon span:nth-of-type(2) {
        top: 50%;
        -webkit-transform: translateX(0) translateY(-50%);
        -moz-transform: translateX(0) translateY(-50%);
        -ms-transform: translateX(0) translateY(-50%);
        -o-transform: translateX(0) translateY(-50%);
        transform: translateX(0) translateY(-50%)
    }

    .menu-btn-icon span:nth-of-type(3) {
        bottom: 0
    }

    .open .menu-btn-icon span {
        background-color: #dc0250;
        left: 0;
        width: 100%
    }

    .open .menu-btn-icon span:first-of-type {
        top: 50%;
        -webkit-transform: translateX(0) translateY(-50%) rotate(-45deg);
        transform: translateX(0) translateY(-50%) rotate(-45deg)
    }

    .open .menu-btn-icon span:nth-of-type(2) {
        opacity: 0
    }

    .open .menu-btn-icon span:nth-of-type(3) {
        bottom: auto;
        top: 50%;
        -webkit-transform: translateX(0) translateY(-50%) rotate(45deg);
        transform: translateX(0) translateY(-50%) rotate(45deg)
    }
}

.menu-wrap {
    height: 50px;
    position: relative
}

@media screen and (max-width:959px) {
    .menu-wrap {
        -webkit-backface-visibility: hidden;
        backface-visibility: hidden;
        border: none;
        height: 100%;
        left: 100%;
        padding: 0;
        position: fixed;
        top: 68px;
        -webkit-transition: all .4s ease-in-out;
        transition: all .4s ease-in-out;
        visibility: hidden;
        width: 100%;
        z-index: 200
    }
}

@media screen and (max-width:640px) {
    .menu-wrap {
        top: 58px
    }
}

.menu-wrap.is-lp-header,
.menu-wrap.is-short-header {
    display: none
}

@media screen and (max-width:959px) {

    .menu-wrap.is-lp-header,
    .menu-wrap.is-short-header {
        display: block
    }

    .open .menu-wrap {
        background: #fff;
        left: 0;
        overflow: auto;
        text-align: left;
        -webkit-transition: all .4s ease-in-out;
        transition: all .4s ease-in-out;
        visibility: visible;
        z-index: 200
    }

    .menu-btn-txt {
        color: #fff;
        display: inline-block;
        font-size: 18px;
        font-size: 1.8rem;
        letter-spacing: .1em;
        text-indent: .1em;
        vertical-align: top
    }
}

@media screen and (max-width:640px) {
    .menu-btn-txt {
        font-size: 14px;
        font-size: 1.4rem
    }
}

@media screen and (max-width:959px) {
    .menu-btn-txt-wrap {
        padding-top: 17px;
        -webkit-transition: all .4s;
        transition: all .4s
    }
}

@media screen and (max-width:640px) {
    .menu-btn-txt-wrap {
        padding-top: 14px
    }
}

@media screen and (max-width:959px) {
    .menu-btn-txt-wrap span:after {
        content: attr(data-txt-menu)
    }

    .open .menu-btn-txt-wrap span:after {
        content: attr(data-txt-close)
    }

    .overlay {
        opacity: 0
    }

    .menu-open .overlay,
    .overlay {
        -webkit-transition: all .4s ease-in-out;
        transition: all .4s ease-in-out
    }

    .menu-open .overlay {
        background-color: rgba(3, 0, 0, .3);
        height: 100%;
        left: 0;
        opacity: 1;
        position: fixed;
        top: 0;
        width: 100%;
        z-index: 10000
    }
}

.intro-movie h2 {
    background: #fdf0f6;
    border-left: 5px solid #e595bb;
    color: #e8529a;
    font-size: 24px;
    font-size: 2.4rem;
    line-height: 1.5;
    margin-bottom: 20px;
    padding: 6px 10px
}

.intro-movie h3 {
    border-bottom: 2px solid #edb9d2;
    color: #e595bb;
    font-size: 20px;
    font-size: 2rem;
    line-height: 1.5;
    margin-bottom: 15px;
    padding-bottom: 5px
}

.intro-movie-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin: 0 -10px
}

.intro-movie-list .intro-movie-section {
    margin-top: 20px;
    padding: 0 10px;
    width: 50%
}

.intro-movie-wrap {
    padding-top: 56.25%;
    position: relative;
    width: 100%
}

.intro-movie-iframe,
.intro-movie-wrap img {
    height: 100% !important;
    position: absolute;
    right: 0;
    top: 0;
    width: 100% !important
}

.intro-movie-wrap img {
    cursor: pointer;
    -webkit-transition: all .25s ease-in-out;
    -ms-transition: all .25s ease-in-out;
    transition: all .25s ease-in-out
}

.intro-movie-wrap img:hover {
    opacity: .7
}

.intro-movie-section-inner p {
    color: #675961;
    margin-top: 10px
}

.intro-movie-wrap.js-video-01 {
    margin-top: 20px
}

@media screen and (max-width:768px) {
    .intro-movie-list {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        margin: 0
    }

    .intro-movie-list .intro-movie-section {
        margin-top: 20px;
        padding: 0;
        width: 100%
    }

    .intro-movie-section-inner {
        display: flex
    }

    .intro-movie-section-inner .intro-movie-wrap {
        flex-shrink: 0;
        margin-right: 10px;
        padding-top: 33.75%;
        width: 60%
    }

    .intro-movie-section-inner p {
        margin-top: 0
    }
}

@media screen and (max-width:480px) {
    .intro-movie h2 {
        font-size: 20px;
        font-size: 2rem;
        margin-bottom: 15px
    }

    .intro-movie h3 {
        font-size: 18px;
        font-size: 1.8rem
    }

    .intro-movie-section-inner .intro-movie-wrap {
        flex-shrink: 0;
        margin-right: 10px;
        padding-top: 28.125%;
        width: 50%
    }

    .intro-movie-section-inner p {
        display: flex;
        flex-flow: column;
        justify-content: space-between
    }

    .intro-movie-section-inner p span {
        font-size: 12px;
        font-size: 1.2rem
    }
}

@media screen and (max-width:340px) {
    .intro-movie h3 {
        font-size: 16px;
        font-size: 1.6rem
    }
}

.pager {
    padding-top: 60px;
    text-align: center
}

.wp-pagenavi {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    justify-content: center
}

.pager a,
.pager span:not(.extend) {
    color: #edb9d2;
    display: inline-block;
    font-family: Oswald;
    font-size: 30px;
    font-size: 3rem;
    height: 60px;
    line-height: 56px;
    margin: 0 10px;
    outline: none;
    overflow: hidden;
    position: relative;
    -webkit-transition: all .25s ease;
    transition: all .25s ease;
    width: 60px;
    z-index: 2
}

.pager a:not(.current):hover,
.pager span:not(.extend):not(.current):hover {
    border-color: #5294ce;
    color: #e8529a
}

.pager a.nextpostslink,
.pager a.previouspostslink {
    background: #fdf0f6;
    border-radius: 4px;
    color: #e8529a
}

.pager a.nextpostslink:hover,
.pager a.previouspostslink:hover {
    background: #e8529a;
    color: #fdf0f6
}

.pager span.extend {
    color: #898989;
    display: inline-block;
    font-family: Oswald;
    font-size: 30px;
    font-size: 3rem;
    height: 60px;
    line-height: 56px;
    outline: none;
    overflow: hidden;
    position: relative;
    width: 60px;
    z-index: 2
}

.pager span.current:after {
    content: none
}

.pager-icon:before {
    font-size: 24px;
    font-size: 2.4rem
}

@media screen and (max-width:767px) {

    .pager a,
    .pager span:not(.extend) {
        margin: 0 5px
    }
}

@media screen and (max-width:640px) {
    .pager {
        padding-top: 30px
    }

    .pager a,
    .pager span.extend,
    .pager span:not(.extend) {
        font-size: 28px;
        font-size: 4.375vw;
        height: 8.75vw;
        line-height: 8.4375vw;
        width: 8.75vw
    }

    .pager-icon:before {
        font-size: 24px;
        font-size: 3.75vw
    }
}

@media screen and (max-width:480px) {
    .wp-pagenavi {
        position: relative
    }

    .wp-pagenavi .previouspostslink {
        left: 0;
        position: absolute;
        width: 12.5vw
    }

    .wp-pagenavi .nextpostslink {
        position: absolute;
        right: 0;
        width: 12.5vw
    }

    .pager a,
    .pager span:not(.extend) {
        font-size: 16px;
        font-size: 5vw;
        height: 12.5vw;
        line-height: 12.08333vw;
        width: 7vw
    }

    .pager span.extend {
        font-size: 28px;
        font-size: 5.83333vw;
        height: 12.5vw;
        line-height: 12.08333vw;
        width: 7vw
    }

    .pager-icon:before {
        font-size: 24px;
        font-size: 5vw
    }
}

.massel .c-section {
    padding-top: 15px
}

.massel .c-heading {
    background-color: #f7c3b9;
    background-image: -moz-linear-gradient(left, #f7c3b9 0, #fce4bd 51%, #f7c3b9 100%);
    background-image: -webkit-linear-gradient(left, #f7c3b9, #fce4bd 51%, #f7c3b9);
    background-image: linear-gradient(90deg, #f7c3b9 0, #fce4bd 51%, #f7c3b9);
    background-size: 200% auto
}

.massel .c-heading-ttl {
    color: #dd5755
}

.massel .pager {
    padding-top: 35px
}

@media screen and (min-width:768px) and (max-width:900px) {
    .massel .c-section {
        padding-top: 25px
    }

    .massel .pager {
        padding-top: 45px
    }
}

@media screen and (max-width:767px) {
    .massel .c-section {
        padding-top: 45px
    }

    .massel .pager {
        padding-top: 20px
    }
}

@media screen and (max-width:480px) {
    .massel .c-section {
        padding-top: 25px
    }
}

.masselweb-section {
    background-image: url(../../assets/img/massel/bg-greeting-01-pc.jpg);
    background-position: bottom;
    background-repeat: no-repeat;
    background-size: cover;
    font-family: Times New Roman, YuMincho, Yu Mincho, Hiragino Mincho ProN, Sawarabi Mincho, HGMinchoE, MS PMincho, MS Mincho, serif;
    font-size: 1.8rem;
    padding: 80px 0;
    text-align: center
}

.masselweb-ttl {
    padding-bottom: 20px
}

.masselweb-txt {
    letter-spacing: .05em;
    line-height: 1.8;
    padding: 15px 0
}

.henshu img {
    padding: 15px 15px 0
}

.masselweb-btn-wrap {
    margin: 50px 10px
}

@media screen and (max-width:767px) {
    .masselweb-section {
        background-image: url(../../assets/img/massel/bg-greeting-01-sp.jpg);
        font-size: 1.6rem;
        padding: 40px 20px 80px
    }

    .masselweb-ttl {
        padding-bottom: 10px
    }
}

@media screen and (max-width:480px) {
    .masselweb-section {
        font-size: 1.4rem
    }
}

.requirements-box__ttl {
    color: #024478;
    font-size: 2rem;
    font-size: 20px;
    font-weight: 700;
    margin-bottom: 20px
}

.requirements-box {
    margin-bottom: 60px
}

.requirements-box__last {
    margin-bottom: 0
}

.requirements-box__list {
    margin-bottom: 20px
}

.requirements-box__list:last-of-type {
    margin-bottom: 0
}

.requirements-box__item {
    padding-left: 2em;
    text-indent: -2em
}

.requirements-box__item:before {
    content: "・";
    display: inline-block;
    text-align: center;
    text-indent: 0;
    width: 2em
}

.requirements-page-attention {
    margin-bottom: 40px
}

.requirements-attention {
    color: #646464;
    font-size: 1.4rem;
    font-size: 14px;
    line-height: 1.5;
    margin-top: 8px;
    padding-left: 1em;
    text-align: justify;
    text-indent: -1em;
    text-justify: inter-ideograph
}

.requirements-ttl {
    border-bottom: 1px dotted #898989;
    color: #d84c8b;
    font-size: 26px;
    font-size: 2.6rem;
    font-weight: 700;
    letter-spacing: .16em;
    line-height: 1.5;
    margin-bottom: 30px;
    padding: 8px 0 15px;
    text-indent: .1em
}

@media screen and (max-width:480px) {
    .requirements-box {
        margin-bottom: 40px
    }

    .requirements-box__ttl {
        margin-bottom: 10px
    }

    .requirements-attention {
        margin-top: 6px
    }

    .requirements-box__last {
        margin-bottom: 0
    }
}

.s-salon-name-wrap {
    position: relative
}

.s-salon-name {
    background: #ed80a7;
    color: #fff;
    font-family: Noto Sans JP, sans-serif;
    font-size: 30px;
    font-size: 3rem;
    line-height: 1.1;
    padding: 10px;
    text-align: center
}

.s-salon-subname {
    font-size: 24px;
    font-size: 2.4rem;
    font-weight: 400
}

[data-status=partner] .s-salon-label {
    background-color: #f1a0bb;
    color: #fff
}

.s-salon-erutan-btn,
[data-status=partner] .s-salon-label {
    display: inline-block;
    font-size: 12px;
    font-size: 1.2rem;
    letter-spacing: .1em;
    line-height: 1;
    margin-bottom: 20px;
    padding: 9px 10px;
    z-index: 1
}

.s-salon-erutan-btn {
    background-color: #ffea65;
    border: 2px solid #ffea65;
    border-radius: 5px;
    color: #4d6fa7
}

.s-salon-erutan-btn:hover {
    background-color: transparent;
    color: #fff
}

[data-status=partner] .s-salon-label:before {
    content: "\e9d2";
    font-family: icomoon
}

.s-salon-map-btn-wrap {
    bottom: 20px;
    position: absolute;
    right: 0
}

.s-salon-map-btn {
    border: 1px solid #04477d;
    color: #04477d;
    display: inline-block;
    font-size: 16px;
    font-size: 1.6rem;
    font-weight: 700;
    max-width: 100%;
    padding: 11px 10px;
    position: relative;
    vertical-align: middle;
    width: 180px
}

.s-salon-map-btn:hover {
    background-color: transparent;
    color: #fff
}

.s-salon-map-btn:hover:after {
    background-color: #04477d
}

.s-salon-reserve-wrap {
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    -webkit-box-align: center;
    -webkit-align-items: center;
    align-items: center;
    background: #f7f6f8;
    border-radius: 8px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
    padding: 34px 0
}

@media screen and (max-width:480px) {
    .s-salon-reserve-wrap {
        padding: 20px 0
    }
}

.s-salon-tel-wrap {
    display: inline-block
}

.s-salon-tel-wrap .mod-tel-btn {
    display: none
}

.s-salon-tel {
    color: #5294ce;
    display: inline-block;
    font-family: Roboto Condensed;
    font-size: 36px;
    font-size: 3.6rem;
    font-weight: 700;
    letter-spacing: .06em;
    line-height: 1
}

.s-salon-tel [class*=" icon-"],
.s-salon-tel [class^=icon-] {
    color: #5294ce;
    font-size: 32px;
    font-size: 3.2rem;
    padding-right: 10px
}

.s-salon-reserve-btn {
    background-color: #5cd5e8;
    border: 1px solid #5cd5e8;
    border-radius: 40px;
    color: #fff;
    display: inline-block;
    font-size: 18px;
    font-size: 1.8rem;
    font-weight: 500;
    margin: 0 auto;
    max-width: 100%;
    padding: 20.5px 10px;
    position: relative;
    vertical-align: middle;
    width: 330px
}

.s-salon-reserve-btn:hover {
    background-color: transparent;
    color: #5cd5e8
}

.s-salon-reserve-btn:hover:after {
    background-color: #fff
}

.s-salon-reserve-btn span:after {
    background: url(../../assets/img/salon/icon_cta_btn_b.png) no-repeat;
    background-size: 100%;
    content: "";
    height: 16px;
    position: absolute;
    right: 15px;
    top: 39%;
    width: 8px
}

.s-salon-reserve-btn:hover span:after {
    color: #d84c8b
}

.s-salon-reserve-btn-icon {
    display: inline-block;
    height: 28px;
    margin-right: .5em;
    vertical-align: -.25em;
    width: auto
}

.s-salon-box-outer {
    background-color: #d2def1;
    background-image: -moz-linear-gradient(right, #d2def1 0, #dfeefa 51%, #d2def1 100%);
    background-image: -webkit-linear-gradient(right, #d2def1, #dfeefa 51%, #d2def1);
    background-image: linear-gradient(270deg, #d2def1 0, #dfeefa 51%, #d2def1);
    background-size: 200% auto;
    border: 8px solid transparent;
    display: block;
    position: relative;
    -webkit-transition: all .25s ease-in-out;
    -ms-transition: all .25s ease-in-out;
    transition: all .25s ease-in-out
}

.s-salon-box-inner {
    background-color: #fff;
    padding: 50px 10%;
    position: relative
}

.s-salon-box-outer {
    margin: 35px 0 40px
}

.s-salon-box-ttl {
    color: #616262;
    font-size: 30px;
    font-size: 3rem;
    font-weight: 700;
    margin-bottom: 15px
}

.s-salon-box-content {
    color: #616262;
    font-size: 18px;
    font-size: 1.8rem;
    line-height: 2
}

.s-salon-slider {
    margin-bottom: 32px;
    padding: 0 25px
}

.s-salon-slider .slick-list {
    max-width: 100vw;
    width: 100%
}

.s-salon-catalog-list .slick-arrow,
.s-salon-catalog-list .slick-next.slick-disabled,
.s-salon-catalog-list .slick-prev.slick-disabled,
.s-salon-slider .slick-arrow,
.s-salon-slider .slick-next.slick-disabled,
.s-salon-slider .slick-prev.slick-disabled {
    background-color: initial;
    border-radius: 0
}

.s-salon-catalog-list .slick-arrow:hover,
.s-salon-catalog-list .slick-next.slick-disabled:hover,
.s-salon-catalog-list .slick-prev.slick-disabled:hover,
.s-salon-slider .slick-arrow:hover,
.s-salon-slider .slick-next.slick-disabled:hover,
.s-salon-slider .slick-prev.slick-disabled:hover {
    background-color: initial;
    opacity: .5
}

.s-salon-catalog-list .slick-arrow:before,
.s-salon-catalog-list .slick-next.slick-disabled:before,
.s-salon-catalog-list .slick-prev.slick-disabled:before,
.s-salon-slider .slick-arrow:before,
.s-salon-slider .slick-next.slick-disabled:before,
.s-salon-slider .slick-prev.slick-disabled:before {
    content: "";
    display: inline-block;
    height: 20px;
    width: 26px
}

.s-salon-catalog-list .slick-arrow.slick-prev,
.s-salon-catalog-list .slick-next.slick-disabled.slick-prev,
.s-salon-catalog-list .slick-prev.slick-disabled.slick-prev,
.s-salon-slider .slick-arrow.slick-prev,
.s-salon-slider .slick-next.slick-disabled.slick-prev,
.s-salon-slider .slick-prev.slick-disabled.slick-prev {
    left: -49px
}

.s-salon-catalog-list .slick-arrow.slick-prev:before,
.s-salon-catalog-list .slick-next.slick-disabled.slick-prev:before,
.s-salon-catalog-list .slick-prev.slick-disabled.slick-prev:before,
.s-salon-slider .slick-arrow.slick-prev:before,
.s-salon-slider .slick-next.slick-disabled.slick-prev:before,
.s-salon-slider .slick-prev.slick-disabled.slick-prev:before {
    background: url(../../assets/img/salon/slick_prev.svg) no-repeat 100%
}

.s-salon-catalog-list .slick-arrow.slick-next,
.s-salon-catalog-list .slick-next.slick-disabled.slick-next,
.s-salon-catalog-list .slick-prev.slick-disabled.slick-next,
.s-salon-slider .slick-arrow.slick-next,
.s-salon-slider .slick-next.slick-disabled.slick-next,
.s-salon-slider .slick-prev.slick-disabled.slick-next {
    right: -32px
}

.s-salon-catalog-list .slick-arrow.slick-next:before,
.s-salon-catalog-list .slick-next.slick-disabled.slick-next:before,
.s-salon-catalog-list .slick-prev.slick-disabled.slick-next:before,
.s-salon-slider .slick-arrow.slick-next:before,
.s-salon-slider .slick-next.slick-disabled.slick-next:before,
.s-salon-slider .slick-prev.slick-disabled.slick-next:before {
    background: url(../../assets/img/salon/slick_next.svg) no-repeat 100%
}

.s-salon-list {
    display: flex;
    margin: 0 auto 13px;
    max-width: 900px
}

.s-salon-item {
    position: relative;
    width: 100%
}

.s-salon-img {
    width: 100%
}

.s-salon-caption {
    background-color: hsla(0, 0%, 100%, .7);
    bottom: 0;
    font-size: 15px;
    font-size: 1.5rem;
    left: 0;
    letter-spacing: .1em;
    line-height: 1.5;
    padding: 8px 20px;
    position: absolute;
    width: 100%
}

.s-salon-thumb-list {
    margin: 0 auto;
    max-width: 900px
}

.s-salon-thumb-item {
    margin: 7px
}

.s-salon-access,
.s-salon-dlist-wrap,
.s-salon-event,
.s-salon-message,
.s-salon-reserve-wrap {
    margin-top: 45px
}

@media screen and (max-width:480px) {
    .s-salon-access {
        margin-top: 26px
    }
}

.s-salon-reserve-wrap {
    margin: 23px 0 36px
}

@media screen and (max-width:480px) {
    .s-salon-reserve-wrap {
        margin: 8px 0 20px
    }
}

.s-salon-subttl-wrap {
    position: relative
}

.s-salon-subttl {
    border-bottom: 1px solid #dc0250;
    color: #dc0250;
    display: block;
    font-size: 24px;
    font-size: 2.4rem;
    letter-spacing: .1em;
    line-height: 1.5;
    margin-bottom: 18px;
    padding: 6px 0 4px
}

@media screen and (max-width:767px) {
    .s-salon-subttl {
        margin-bottom: 19px
    }
}

#salon-slider {
    margin-top: 35px
}

@media screen and (max-width:767px) {
    #salon-slider {
        margin-top: 13px
    }
}

.s-salon-print-btn-wrap {
    position: absolute;
    right: 0;
    top: 7px
}

@media screen and (max-width:767px) {
    .s-salon-print-btn-wrap {
        display: none
    }
}

.s-salon-print-btn {
    background-color: #ed80a7;
    border: 1px solid #ed80a7;
    border-radius: 0;
    color: #fff;
    display: inline-block;
    font-size: 16px;
    font-size: 1.6rem;
    height: auto;
    padding: 0 6px;
    position: relative;
    vertical-align: middle;
    width: 120px
}

.s-salon-print-btn:hover {
    background-color: transparent;
    color: #e595bb
}

.s-salon-print-btn:hover:after {
    background-color: #fff
}

.s-salon-dlist {
    background: #f7f6f8;
    border: 2px solid #fff;
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 1.5
}

.s-salon-dlist+.s-salon-dlist {
    border-top: none
}

.s-salon-dlist .salon-term {
    background: #ed80a7;
    border-right: 2px solid #fff;
    color: #fff;
    display: flex;
    flex-shrink: 0;
    width: 100px
}

.s-salon-dlist .salon-term h3 {
    align-items: center;
    display: flex;
    height: 100%;
    justify-content: center;
    padding: 7px 15px;
    width: 100%
}

.s-salon-dlist .salon-desc {
    font-size: 1.5rem;
    padding: 7px 15px
}

.s-salon-dlist .salon-desc.map {
    margin-left: 0;
    padding: 20px 20px 5px
}

.s-salon-dlist .mod-tel-btn {
    color: #262626;
    font-family: Noto Sans JP, sans-serif;
    font-size: 30px;
    font-size: 3rem
}

.l-content-salon--new .s-salon-dlist .mod-tel-btn {
    color: #ed80a7
}

.l-content-salon--new .s-salon-dlist .mod-tel-btn:before {
    background: #ed80a7 url(../../assets/img/salon/icon_tel.svg) no-repeat 50%;
    background-color: #ed80a7;
    background-size: 19.61px 19.61px
}

.s-salon-access {
    margin-bottom: 20px;
    position: relative
}

@media screen and (max-width:480px) {
    .s-salon-access {
        margin-bottom: 8px
    }
}

.s-salon-map-wrap {
    text-align: center
}

.s-salon-map-wrap .gmap-iframe {
    margin-bottom: 20px;
    position: relative
}

@media screen and (max-width:480px) {
    .s-salon-map-wrap .gmap-iframe {
        margin-bottom: 28px
    }
}

.s-salon-map-wrap .gmap-iframe:before {
    content: "";
    display: block;
    padding-top: 64.58333%
}

@media screen and (max-width:767px) {
    .s-salon-map-wrap .gmap-iframe:before {
        padding-top: 86.95652%
    }
}

.s-salon-map-wrap .gmap-iframe iframe {
    height: 100%;
    left: 0;
    position: absolute;
    top: 0;
    vertical-align: bottom;
    width: 100%
}

.s-salon-map-caption {
    font-size: 15px;
    font-size: 1.5rem;
    letter-spacing: .06em;
    line-height: 1.5;
    padding-top: 7px
}

.s-salon-message {
    background: #e7f7f6
}

.s-salon-message-ttl {
    background: #6ecec6;
    color: #fff;
    font-size: 18px;
    font-size: 1.8rem;
    line-height: 1.5;
    padding: 9px 20px
}

.s-salon-message-content {
    color: #675961;
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 1.5;
    padding: 20px
}

.s-salon-section-ttl {
    padding-top: 15px
}

.s-salon-return-btn-wrap {
    padding-top: 60px
}

@media screen and (max-width:767px) {
    .s-salon-name {
        padding-right: 0
    }

    .s-salon-map-btn-wrap {
        bottom: -60px
    }

    .s-salon-map-btn {
        width: 150px
    }

    .s-salon-reserve-wrap {
        -webkit-box-direction: normal;
        -webkit-flex-direction: column;
        flex-direction: column
    }

    .s-salon-reserve-btn-wrap {
        width: 100%
    }

    .s-salon-reserve-btn {
        display: block;
        margin: 0 auto;
        max-width: 80%;
        width: 100%
    }

    .s-salon-tel-wrap {
        margin-bottom: 30px;
        width: 100%
    }

    .s-salon-tel {
        margin-right: 20px;
        vertical-align: middle
    }

    .s-salon-slider {
        padding: 0
    }

    .s-salon-dlist .salon-desc {
        width: 100%
    }

    .s-salon-dlist .salon-term {
        width: 30%
    }

    .s-salon-dlist .salon-desc .mod-tel {
        margin: 5px 0
    }

    .s-salon-dlist .salon-desc .mod-tel-main {
        margin-left: 3px;
        margin-right: 15px
    }

    .s-salon-btn-wrap {
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center
    }

    .s-salon-btn.mod-reserve {
        margin-left: 15px
    }
}

@media screen and (max-width:640px) {
    .s-salon-tel {
        margin-right: 15px
    }

    .s-salon-dlist .salon-desc .mod-tel {
        vertical-align: middle
    }
}

@media screen and (max-width:600px) {
    .s-salon-name {
        margin: 0 -35px
    }
}

@media screen and (max-width:480px) {
    .s-salon-list {
        margin-bottom: 19px
    }

    .s-salon-thumb-item {
        margin: 0
    }

    .s-salon-dlist .salon-term {
        width: 24%
    }

    .s-salon-name {
        font-size: 25px;
        font-size: 2.5rem;
        margin: 0 -20px
    }

    .s-salon-subname {
        font-size: 14px;
        font-size: 1.4rem
    }

    [data-status=partner] .s-salon-label {
        margin-bottom: 15px;
        padding: 7px 10px
    }

    .s-salon-map-btn-wrap {
        bottom: -45px
    }

    .s-salon-map-btn {
        font-size: 13px;
        font-size: 1.3rem;
        padding: 8px 10px;
        width: 100px
    }

    .salon-desc .mod-tel-btn {
        color: #761593;
        display: block;
        font-size: 25px;
        font-size: 2.5rem;
        font-weight: 700;
        line-height: 13vw;
        padding-left: 40px;
        position: relative;
        text-align: left;
        width: auto
    }

    .salon-desc .mod-tel-btn:before {
        background: #761593 url(../../assets/img/salon/icon_tel.svg) no-repeat 50%;
        background-color: #761593;
        background-size: 19.61px 19.61px;
        border-radius: 50%;
        content: "";
        height: 35px;
        left: 0;
        position: absolute;
        top: 19%;
        width: 35px
    }

    .s-salon-tel-wrap {
        margin-bottom: 20px
    }

    .s-salon-tel {
        margin-right: 10px
    }

    .s-salon-tel,
    .s-salon-tel [class*=" icon-"],
    .s-salon-tel [class^=icon-] {
        font-size: 23px;
        font-size: 2.3rem
    }

    .s-salon-reserve-btn {
        font-size: 2px;
        font-size: 2rem;
        max-width: 295px;
        padding: 14px 10px
    }

    .s-salon-reserve-btn span {
        line-height: normal
    }

    .s-salon-reserve-btn-icon {
        vertical-align: -.4em
    }

    .s-salon-box-outer {
        border-width: 5px;
        margin: 25px 0 20px
    }

    .s-salon-box-inner {
        padding: 20px
    }

    .s-salon-box-ttl {
        font-size: 16px;
        font-size: 1.6rem
    }

    .s-salon-box-content {
        font-size: 14px;
        font-size: 1.4rem
    }

    .s-salon-slider {
        margin-bottom: 30px
    }

    .s-salon-caption {
        padding: 1px 10px
    }

    .s-salon-subttl {
        font-size: 20px;
        font-size: 2rem;
        margin-bottom: 19px
    }

    .s-salon-print-btn {
        font-size: 13px;
        font-size: 1.3rem
    }

    .s-salon-dlist .salon-term h3 {
        padding: 7px 5px
    }

    .s-salon-dlist .salon-desc {
        line-height: 22px;
        padding: 11px 9px 9px
    }

    .s-salon-dlist .salon-desc .mod-tel {
        font-size: 18px;
        font-size: 1.8rem
    }

    .s-salon-dlist .salon-desc .mod-tel-main {
        font-size: 13px;
        font-size: 1.3rem
    }

    .s-salon-message-content {
        font-size: 14px;
        font-size: 1.4rem
    }

    .s-salon-return-btn-wrap {
        padding-top: 30px
    }

    .s-salon-map-caption {
        padding-top: 3px
    }
}

@media screen and (max-width:380px) {
    .s-salon-reserve-btn {
        max-width: 80%
    }

    .s-salon-reserve-btn span {
        font-size: 16px;
        font-size: 1.6rem
    }

    .salon-desc .mod-tel-btn:before {
        height: 30px;
        left: 0;
        width: 30px
    }
}

@media screen and (max-width:340px) {
    .s-salon-dlist .salon-term h3 {
        padding: 10px 5px
    }

    .s-salon-dlist .salon-desc {
        font-size: 14px;
        font-size: 1.4rem;
        padding: 10px
    }
}

.s-salon-contact ul {
    align-items: flex-start;
    background: #efecf2;
    border-radius: 10px;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    overflow: hidden;
    padding: 37px 25px
}

.s-salon-contact ul li {
    margin-bottom: 10px;
    margin-right: 11px;
    min-width: fit-content;
    text-align: center;
    width: calc(33.33333% - 24px)
}

.s-salon-contact ul li:last-child,
.s-salon-contact ul li:nth-of-type(3n+3) {
    margin-right: 0
}

.s-salon-contact ul li:last-child {
    margin: 0 auto
}

.s-salon-contact ul li .appointment-date {
    color: #262626;
    font-size: 12px;
    font-weight: 700;
    line-height: 22px;
    margin-top: 3px
}

.s-salon-contact ul li a {
    align-items: center;
    background: #ed80a7;
    border-radius: 27px;
    color: #fff;
    display: inline-flex;
    font-size: 20px;
    font-weight: 500;
    height: 54px;
    justify-content: center;
    letter-spacing: .09em;
    padding-left: 23px;
    width: 100%
}

.s-salon-contact ul li a span {
    display: block;
    position: relative
}

.s-salon-contact ul li a span:before {
    background: url(../../assets/img/salon/icon_tel.svg) no-repeat 100%;
    content: "";
    height: 23.57px;
    left: -22%;
    position: absolute;
    top: 9%;
    width: 23.57px
}

.s-salon-contact ul li.btn-reserve a {
    background: #5cd5e8;
    font-size: 18px;
    padding-left: 10px;
    position: relative
}

.s-salon-contact ul li.btn-reserve a span:before {
    display: none
}

.s-salon-contact ul li.btn-reserve a:after {
    background: url(../../assets/img/salon/icon_cta_btn_b.png) no-repeat;
    background-size: 100%;
    content: "";
    height: 16px;
    position: absolute;
    right: 6%;
    top: 39%;
    width: 8px
}

.s-salon-contact ul li.btn-first-consult a {
    color: #ffff87
}

.s-salon-contact ul li.btn-first-consult a span:before {
    background: url(../../assets/img/salon/icon_tel02.svg) no-repeat 100%;
    content: ""
}

.s-salon-contact ul li.btn-google a {
    background: #fff;
    border: 2px solid #ed80a7;
    color: #ed80a7;
    padding: 0 34px
}

.s-salon-contact ul li.btn-google a span {
    align-items: center;
    display: inline-flex
}

.s-salon-contact ul li.btn-google a span:before {
    display: none
}

.s-salon-contact ul li.btn-google a span:after {
    background: url(../../assets/img/salon/google_share_btn.png) no-repeat 100%;
    background-size: 100%;
    content: "";
    height: 13px;
    position: absolute;
    right: -12%;
    width: 15px
}

.c-salon-contact-name {
    font-size: 16px;
    font-weight: 500;
    line-height: 1.25;
    margin-bottom: 11px
}

@media screen and (max-width:1200px) {
    .s-salon-contact ul li {
        margin-right: 12px
    }

    .s-salon-contact ul li a {
        font-size: 16px;
        height: 50px;
        letter-spacing: .05em
    }

    .s-salon-contact ul li a span:before {
        height: 20.57px;
        width: 20.57px
    }

    .s-salon-contact ul li.btn-reserve a {
        font-size: 16px
    }

    .s-salon-contact ul li .appointment-date {
        font-size: 11px
    }
}

@media screen and (max-width:959px) {
    .s-salon-contact ul {
        display: block;
        padding: 37px 25px
    }

    .s-salon-contact ul li {
        margin: 0 auto;
        padding: 16px 0 29px;
        width: 50%
    }

    .s-salon-contact ul li:first-child {
        padding-top: 0
    }

    .s-salon-contact ul li:not(:first-child) {
        padding-bottom: 9px
    }

    .s-salon-contact ul li:last-child {
        padding-bottom: 0
    }

    .s-salon-contact ul li:nth-of-type(3n+3) {
        margin: 0 auto
    }

    .s-salon-contact ul li a {
        height: 54px;
        padding-left: 0
    }

    .s-salon-contact ul li .appointment-date {
        font-size: 14px
    }

    .s-salon-contact ul li.btn-google a span:before {
        background: url(../../assets/img/salon/google_left_btn.png) no-repeat 100%;
        background-size: 100%;
        content: "";
        display: block;
        height: 22px;
        left: -22%;
        position: absolute;
        top: auto;
        width: 28px
    }

    .c-salon-contact-name {
        font-size: 18px
    }
}

@media screen and (max-width:767px) {
    .s-salon-contact ul li {
        width: 80%
    }
}

@media screen and (max-width:480px) {
    .s-salon-contact ul {
        padding: 27px 18px 33px
    }

    .s-salon-contact ul li {
        width: 100%
    }

    .s-salon-contact ul li a span:before {
        height: 23.57px;
        left: -35%;
        top: -6%;
        width: 23.57px
    }

    .s-salon-contact ul li.btn-reserve a {
        padding-left: 0
    }

    .s-salon-contact ul li .appointment-date {
        font-size: 16px;
        margin-top: 10px
    }
}

@media screen and (max-width:360px) {
    .s-salon-contact ul li a {
        height: 50px
    }

    .s-salon-contact ul li a span:before {
        height: 22px;
        top: 0;
        width: 22px
    }

    .s-salon-contact ul li .appointment-date {
        font-size: 14px;
        margin-top: 5px
    }

    .s-salon-contact ul li.btn-google a {
        font-size: 14px
    }

    .s-salon-contact ul li.btn-google a span:before {
        height: 18px;
        width: 24px
    }

    .s-salon-contact ul li.btn-google a span:after {
        height: 10px;
        width: 12px
    }
}

.s-salon-contact--footer {
    margin: -9px 0 100px
}

.s-salon-contact--footer ul {
    padding: 50px 24px 21px
}

.s-salon-contact--footer ul li {
    margin-right: 25px;
    width: 31%
}

.s-salon-contact--footer ul li .appointment-date {
    font-size: 16px;
    line-height: 26px;
    margin-top: 12px
}

.s-salon-contact--footer ul li a {
    border-radius: 29px;
    font-size: 20px;
    height: 54px;
    padding-left: 10px
}

.s-salon-contact--footer ul li.btn-reserve a {
    font-size: 20px;
    padding-left: 0
}

.s-salon-contact--footer ul li:last-child span:before {
    left: -36%
}

.s-salon-contact--footer .c-salon-contact-name {
    font-size: 18px
}

@media screen and (max-width:1200px) {
    .s-salon-contact--footer ul li a {
        font-size: 16px;
        height: 50px
    }

    .s-salon-contact--footer ul li a span:before {
        height: 20.57px;
        width: 20.57px
    }

    .s-salon-contact--footer ul li .appointment-date {
        font-size: 11px
    }
}

@media screen and (max-width:959px) {
    .s-salon-contact--footer ul li {
        margin: 0 auto;
        width: 50%
    }

    .s-salon-contact--footer ul li a {
        padding-left: 0
    }

    .s-salon-contact--footer ul li .appointment-date {
        font-size: 14px;
        line-height: 22px;
        margin-top: 3px
    }
}

@media screen and (max-width:767px) {
    .s-salon-contact--footer ul li {
        width: 80%
    }
}

@media screen and (max-width:480px) {
    .s-salon-contact--footer {
        border-bottom: 1px solid #8f8f8f;
        margin-bottom: 0;
        padding-bottom: 58px
    }

    .s-salon-contact--footer ul {
        padding: 27px 18px 33px
    }

    .s-salon-contact--footer ul li {
        width: 100%
    }

    .s-salon-contact--footer ul li a {
        height: 50px
    }

    .s-salon-contact--footer ul li a span:before {
        height: 23.57px;
        top: -6%;
        width: 23.57px
    }

    .s-salon-contact--footer ul li:last-child a span:before {
        left: -60%
    }

    .s-salon-contact--footer ul li .appointment-date {
        font-size: 16px;
        margin-top: 10px
    }
}

@media screen and (max-width:360px) {
    .s-salon-contact--footer ul li .appointment-date {
        font-size: 14px;
        margin-top: 5px
    }
}

.c-salon-contact-tel {
    font-size: 0
}

.c-salon-contact-tel * {
    font-family: Oswald, "sans-serif";
    font-size: 48px;
    font-weight: 700;
    letter-spacing: .04em;
    line-height: 1.25
}

@media screen and (max-width:767px) {
    .c-salon-contact-tel * {
        font-size: 32px
    }
}

.c-salon-contact-tel i {
    margin-right: 12px
}

@media screen and (max-width:767px) {
    .c-salon-contact-tel i {
        margin-right: 6px
    }
}

.c-salon-contact-tel i.free-dial {
    background-image: url(../../assets/img/salon/contact-free-dial@2x.png);
    background-position: 50%;
    background-repeat: no-repeat;
    background-size: contain;
    display: inline-block;
    height: 34px;
    margin-right: 16px;
    width: 47px
}

@media screen and (max-width:767px) {
    .c-salon-contact-tel i.free-dial {
        height: 24.5px;
        margin-right: 8px;
        width: 34px
    }
}

.s-salon-movie-more {
    margin: 80px auto 0;
    max-width: 860px
}

@media screen and (max-width:767px) {
    .s-salon-movie-more {
        margin: 40px auto 0
    }
}

.s-salon-movie-more a {
    background-color: #e595bb;
    border-radius: 200px;
    color: #fff !important;
    display: block;
    line-height: 1.1;
    padding: 10px 15px;
    text-align: center;
    text-decoration: none !important
}

.s-salon-movie-more a span {
    padding-left: 20px;
    position: relative
}

.s-salon-movie-more a span:before {
    color: #fff;
    content: "\f105";
    font-family: FontAwesome;
    font-size: 120%;
    height: 15px;
    left: 0;
    line-height: 1;
    position: absolute;
    top: 50%;
    transform: translateY(-50%) rotate(90deg);
    width: 15px
}

.s-salon-navigation {
    display: flex;
    justify-content: center;
    margin: 60px 0
}

@media screen and (max-width:767px) {
    .s-salon-navigation {
        display: block;
        margin: 40px 0
    }
}

.s-salon-navigation li {
    background-color: #e595bb;
    border-radius: 200px
}

.s-salon-navigation li+li {
    margin-left: 20px
}

@media screen and (max-width:767px) {
    .s-salon-navigation li+li {
        margin-left: 0;
        margin-top: 5px
    }
}

.s-salon-navigation li a {
    align-items: center;
    color: #fff;
    display: flex;
    height: 100%;
    justify-content: center;
    line-height: 1;
    min-width: 200px;
    padding: 12px 15px;
    text-align: center
}

@media screen and (max-width:767px) {
    .s-salon-navigation li a {
        font-size: 1.4rem;
        min-width: 0
    }
}

.s-salon-navigation li a span {
    padding-left: 20px;
    position: relative
}

.s-salon-navigation li a span:before {
    color: #fff;
    content: "\f105";
    font-family: FontAwesome;
    font-size: 120%;
    height: 15px;
    left: 0;
    line-height: 1;
    position: absolute;
    top: 50%;
    transform: translateY(-50%) rotate(90deg);
    width: 15px
}

.s-salon-navigation+* .s-salon-subttl {
    margin-top: 0
}

.s-salon-feature .s-salon-subttl {
    margin-bottom: 11px
}

.s-salon-feature-list {
    display: flex;
    flex-wrap: wrap
}

@media screen and (max-width:480px) {
    .s-salon-feature-list {
        padding-top: 8px
    }
}

.s-salon-feature-list:after {
    clear: both;
    content: "";
    display: block
}

.s-salon-feature-list li {
    max-width: 32.29167%;
    width: 100%
}

@media screen and (max-width:767px) {
    .s-salon-feature-list li {
        max-width: 48%
    }
}

@media screen and (min-width:768px) {
    .s-salon-feature-list li:not(:nth-child(3n+1)) {
        margin-left: 1.5625%
    }

    .s-salon-feature-list li:not(:nth-child(-n+3)) {
        margin-top: 12px
    }
}

@media screen and (max-width:767px) {
    .s-salon-feature-list li:not(:nth-child(odd)) {
        margin-left: 4%
    }

    .s-salon-feature-list li:not(:nth-child(-n+2)) {
        margin-top: 12px
    }

    .s-salon-feature-list li:last-child {
        margin-top: 20px;
        padding-bottom: 16px
    }
}

.s-salon-feature-list li {
    border-bottom: 1px solid #c9c9c9;
    font-size: 1.5rem;
    line-height: 1.2;
    padding-bottom: 5px
}

.s-salon-feature-list li span {
    align-items: center;
    display: flex;
    height: 100%;
    padding-left: 22px;
    position: relative
}

.s-salon-feature-list li span:before {
    background-image: url(../../assets/img/salon/feature-icon@2x.svg);
    background-size: contain;
    content: "";
    display: block;
    height: 16px;
    left: 0;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 15px
}

.s-salon-feature-list span br {
    display: none
}

@media screen and (max-width:767px) {
    .s-salon-feature-list span br {
        display: block
    }
}

@media screen and (max-width:374px) {
    .s-salon-feature-list span br {
        display: none
    }
}

.s-salon-feature-info {
    color: red;
    font-size: 1.5rem;
    margin-top: 25px
}

@media screen and (max-width:767px) {
    .s-salon-feature-info {
        font-size: 1.4rem;
        margin-top: 15px
    }
}

.s-salon-catalog {
    margin-bottom: 31px
}

@media screen and (max-width:767px) {
    .s-salon-catalog {
        margin-bottom: 44px
    }
}

.s-salon-catalog .catalog-list-category {
    bottom: 7%;
    min-width: 120px;
    text-align: left
}

.s-salon-catalog .color-long,
.s-salon-catalog .color-medium,
.s-salon-catalog .color-short {
    background: rgba(227, 53, 115, .8)
}

@media screen and (max-width:767px) {
    .s-salon-catalog-list {
        overflow: hidden
    }
}

.s-salon-catalog-list li {
    height: 240px;
    margin-right: 15px;
    max-width: 240px;
    position: relative
}

@media screen and (max-width:1140px) {
    .s-salon-catalog-list li {
        height: 200px;
        max-width: 200px
    }
}

@media screen and (max-width:767px) {
    .s-salon-catalog-list li {
        height: 180px;
        max-width: 180px
    }
}

@media screen and (max-width:480px) {
    .s-salon-catalog-list li {
        height: 150px;
        max-width: 150px
    }
}

.s-salon-catalog-list li img {
    height: 100%;
    object-fit: cover;
    width: 100%
}

.s-salon-catalog-list .slick-dots li {
    height: 6px;
    margin: 0 5px;
    width: 26px
}

.s-salon-catalog-list .slick-dots li button {
    border-radius: 0;
    height: 6px;
    width: 100%
}

.s-salon-movie {
    margin-top: 80px
}

@media screen and (max-width:767px) {
    .s-salon-movie {
        margin-top: 40px
    }
}

.s-salon-movie .c-section,
.s-salon-movie .c-section-inner {
    padding: 0
}

.s-salon-staff {
    margin: 35px 0
}

@media screen and (max-width:767px) {
    .s-salon-staff {
        margin: 28px 0 32px
    }
}

.s-salon-staff-list {
    padding: 0
}

.s-salon-staff-list li:after {
    clear: both;
    content: "";
    display: block
}

.s-salon-staff-list .image {
    float: left;
    margin-right: 24px;
    max-width: 140px;
    min-width: 140px;
    text-align: center;
    width: 100%
}

@media screen and (max-width:767px) {
    .s-salon-staff-list .image {
        max-width: 120px;
        min-width: 120px
    }
}

@media screen and (max-width:480px) {
    .s-salon-staff-list .image {
        max-width: 91px;
        min-width: 91px
    }
}

.s-salon-staff-list .image-item {
    border-radius: 50%;
    overflow: hidden;
    position: relative
}

.s-salon-staff-list .image-item:before {
    content: "";
    height: 100%;
    left: 0;
    position: absolute;
    top: 0;
    width: 100%
}

.s-salon-staff-list .image-name {
    color: #262626;
    font-size: 1.2rem;
    line-height: 1;
    margin-top: 13px
}

@media screen and (max-width:480px) {
    .s-salon-staff-list .image-name {
        margin-top: 7px
    }
}

.s-salon-staff-list .image-name span {
    font-size: 1.6rem;
    margin-right: 5px
}

.s-salon-staff-list .image-sinse {
    color: #6ecec6;
    font-size: 1.1rem;
    line-height: 1;
    margin-top: 10px
}

.s-salon-staff-list .comment {
    background-color: #fbe6ed;
    border-radius: 14px;
    float: left;
    font-size: 1.5rem;
    letter-spacing: .08em;
    line-height: 1.8;
    margin-top: 10px;
    max-width: calc(100% - 164px);
    padding: 18px 20px;
    position: relative
}

@media screen and (max-width:767px) {
    .s-salon-staff-list .comment {
        letter-spacing: .04em;
        line-height: 1.7;
        margin-top: 0;
        max-width: 65%;
        padding: 14px 9px 16px 11px
    }
}

@media screen and (max-width:370px) {
    .s-salon-staff-list .comment {
        max-width: 58%
    }
}

.s-salon-staff-list .comment:before {
    border-color: transparent #fbe6ed transparent transparent;
    border-style: solid;
    border-width: 5.5px 21px 5.5px 0;
    content: "";
    display: block;
    height: 0;
    position: absolute;
    right: calc(100% - 1px);
    top: 62%;
    transform: translateY(-20%);
    width: 0
}

@media screen and (max-width:767px) {
    .s-salon-staff-list .comment:before {
        right: calc(100% - 1px);
        top: 32%
    }
}

.s-salon-voice {
    margin-top: 38px
}

@media screen and (max-width:767px) {
    .s-salon-voice {
        margin-top: 26px
    }
}

.s-salon-voice-list {
    display: flex;
    flex-wrap: wrap;
    margin: 20px 0 15px
}

@media screen and (max-width:767px) {
    .s-salon-voice-list {
        display: block
    }
}

.s-salon-voice-list:after {
    clear: both;
    content: "";
    display: block
}

.s-salon-voice-list .voice-item {
    display: inline-flex;
    height: auto;
    max-width: calc(50% - 6px);
    padding: 0;
    width: 100%
}

@media screen and (max-width:959px) {
    .s-salon-voice-list .voice-item {
        max-width: calc(50% - 8px)
    }
}

@media screen and (max-width:767px) {
    .s-salon-voice-list .voice-item {
        display: block;
        max-width: 100%
    }
}

@media screen and (min-width:769px) {
    .s-salon-voice-list .voice-item:not(:nth-child(odd)) {
        margin-left: 1.5625%
    }

    .s-salon-voice-list .voice-item:not(:nth-child(-n+2)) {
        margin-top: 18px
    }
}

@media screen and (max-width:767px) {
    .s-salon-voice-list .voice-item+.voice-item {
        margin-top: 24px
    }
}

.s-salon-small-more {
    margin-top: 14px;
    position: relative;
    text-align: right;
    vertical-align: middle
}

@media screen and (max-width:767px) {
    .s-salon-small-more {
        margin-top: 32px
    }
}

@media screen and (max-width:480px) {
    .s-salon-small-more {
        text-align: center
    }
}

@media screen and (max-width:767px) {
    .s-salon-small-more.sp-center {
        text-align: center
    }
}

.s-salon-small-more a {
    color: #dc0250 !important;
    display: inline-block;
    font-size: 1.5rem;
    font-weight: 400;
    line-height: 1;
    padding-right: 18px;
    position: relative;
    text-decoration: none !important
}

@media screen and (max-width:767px) {
    .s-salon-small-more a {
        text-align: center
    }
}

.s-salon-small-more a:after {
    background: url(../../assets/img/salon/salon_icon_arrow.svg) no-repeat 100%;
    content: "";
    height: 13px;
    position: absolute;
    right: 0;
    top: 21%;
    width: 17px
}

#access.s-salon-contents {
    margin-top: 80px
}

@media screen and (max-width:767px) {
    #access.s-salon-contents {
        margin-top: 40px
    }
}

.s-salon-faq {
    margin-top: 36px
}

@media screen and (max-width:480px) {
    .s-salon-faq {
        margin-top: 30px
    }
}

.s-salon-faq__inner {
    margin-bottom: 22px
}

.btn_block {
    margin: 0 auto;
    width: 88.06%
}

.btn_block p {
    color: #262626;
    margin-bottom: 16px
}

@media (min-width:768px) {
    .btn_block p {
        text-align: center
    }
}

.btn_block a {
    font-size: 1.6rem;
    width: auto
}

@media (min-width:768px) {
    .btn_block a {
        width: 285px
    }
}

.btn_border_black:after {
    background: url(../../assets/img/salon/btn_border_black_arrow.svg) no-repeat
}

@media (min-width:768px) {
    .btn_border_black {
        width: 285px
    }

    .btn_border_black:hover {
        background-color: #262626;
        color: #fff;
        transition: .3s
    }

    .btn_border_black:hover:after {
        background: url(../../assets/img/salon/btn_border_arrow_on.svg) no-repeat;
        background-size: cover
    }
}

.top-btn-wrap {
    margin-bottom: 30px;
    margin-top: 0;
    text-align: left
}

.l-salon-wrap {
    margin: 24px 0 0
}

.l-content-salon {
    display: flex;
    justify-content: space-between
}

.l-content-salon--inner {
    margin: 0 auto;
    max-width: 1000px
}

.l-content-salon .sp {
    display: none
}

.l-content-salon .pc {
    display: block
}

.l-sidebar-salon {
    margin-bottom: 30px;
    margin-right: 50px;
    max-width: 200px;
    width: 100%
}

.l-sidebar-salon ul {
    background: #efecf2;
    position: sticky
}

.l-sidebar-salon ul li a {
    border-bottom: 1px solid #929292;
    box-sizing: border-box;
    color: #262626;
    display: block;
    font-size: 15px;
    line-height: 24px;
    padding: 17.5px 25px;
    position: relative
}

.l-sidebar-salon ul li a.current {
    background: #ed80a7;
    color: #fff
}

.l-sidebar-salon ul li a:before {
    background: url(../../assets/img/salon/sidebar_arrow.svg) no-repeat;
    content: "";
    height: 10px;
    left: 7%;
    position: absolute;
    top: 42%;
    width: 5px
}

.l-sidebar-salon ul li a.current,
.l-sidebar-salon ul li a:hover {
    background: #ed80a7;
    color: #fff;
    opacity: 1
}

.l-sidebar-salon ul li a.current:before,
.l-sidebar-salon ul li a:hover:before {
    background: url(../../assets/img/salon/sidebar_arrow_hover.svg) no-repeat
}

.l-sidebar-salon ul li:last-child a {
    border-bottom: 0
}

.l-sidebar-salon ul li a[href]:not([class]) {
    color: #262626;
    text-decoration: none
}

.l-sidebar-salon ul li a[href]:not([class]):hover {
    color: #fff
}

.salon {
    max-width: 75%
}

@media screen and (max-width:1100px) {
    .salon {
        max-width: 73%
    }

    .l-sidebar-salon {
        margin-right: 20px
    }
}

@media screen and (max-width:959px) {
    .salon {
        max-width: 100%
    }

    .l-salon-wrap {
        margin: 0
    }

    .l-content-salon {
        display: block;
        margin: 0 auto
    }

    .l-content-salon .sp {
        display: block
    }

    .l-content-salon .pc,
    .l-sidebar-salon {
        display: none
    }
}

.salon-btn-list {
    margin: 0 auto;
    max-width: 1000px
}

.salon-btn-list ul {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    padding: 0 31px
}

.salon-btn-list ul li {
    margin: 0 41px 51px 0;
    width: calc(33.33333% - 27.6px)
}

.salon-btn-list ul li:last-child,
.salon-btn-list ul li:nth-of-type(3n+3) {
    margin-right: 0
}

.salon-btn-list ul li a {
    align-items: center;
    border: 1px solid #262626;
    border-radius: 29px;
    color: #262626;
    display: block;
    display: inline-flex;
    font-size: 16px;
    font-size: 1.6rem;
    height: 58px;
    justify-content: center;
    position: relative;
    width: 100%
}

.salon-btn-list ul li a:hover {
    background: #f0eded
}

.salon-btn-list ul li a:after {
    background: url(../../assets/img/salon/icon_right_b.svg) no-repeat 100%;
    content: "";
    height: 15px;
    position: absolute;
    right: 5%;
    top: 37%;
    width: 19px
}

@media screen and (max-width:1124px) {
    .salon-btn-list ul li {
        margin: 0 41px 31px 0;
        width: calc(50% - 27.6px)
    }

    .salon-btn-list ul li:nth-of-type(3n+3) {
        margin-right: 51px
    }

    .salon-btn-list ul li:nth-of-type(2n+2) {
        margin-right: 0
    }
}

@media screen and (max-width:959px) {
    .salon-btn-list {
        margin: 0 auto;
        max-width: 1000px
    }

    .salon-btn-list ul {
        display: block
    }

    .salon-btn-list ul li {
        margin: 0 0 30px;
        width: 100%
    }
}

@media screen and (max-width:480px) {
    .l-salon-wrap {
        padding-bottom: 28px
    }

    .salon-btn-list ul {
        padding: 0 19px
    }

    .salon-btn-list ul li a {
        height: 50px
    }
}

@media screen and (max-width:360px) {
    .salon-btn-list ul {
        padding: 0
    }
}

@media screen and (max-width:750px) {
    .breadcrumb.tab~.l-wrap__outer .l-salon-wrap {
        padding-top: 30px
    }
}

@media screen and (max-width:400px) {
    .breadcrumb.tab~.l-wrap__outer .l-salon-wrap {
        padding-top: 13px
    }
}

.salon-region-group {
    -webkit-box-align: flex-start;
    -webkit-align-items: flex-start;
    align-items: flex-start;
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    margin-bottom: 30px;
    padding: 10px 0
}

.salon-region-ttl {
    background-color: #04477d;
    color: #fff;
    font-size: 13px;
    font-size: 1.3rem;
    letter-spacing: .1em;
    line-height: 1;
    margin-right: 13px;
    padding: 5px 0 4px;
    text-align: center;
    width: 70px
}

.salon-region-body {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1
}

.salon-region-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -ms-flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap
}

.salon-region-item {
    line-height: 1.5;
    padding: 0 8px
}

.salon-region-link {
    color: #616262;
    font-size: 16px;
    font-size: 1.6rem;
    letter-spacing: .1em;
    text-decoration: underline;
    -webkit-transition: all .25s ease-in-out;
    -ms-transition: all .25s ease-in-out;
    transition: all .25s ease-in-out
}

.salon-region-link:hover {
    opacity: .7
}

.salon-region-link span:after {
    content: attr(data-txt-pc)
}

.salon-item {
    border: dotted #5294ce;
    border-width: 0 0 1px;
    overflow: hidden;
    padding: 30px 0 40px;
    position: relative
}

.salon-item:first-child {
    border-width: 1px 0
}

.salon-name {
    border-bottom: 1px solid #5294ce;
    float: right;
    font-size: 30px;
    font-size: 3rem;
    font-weight: 700;
    letter-spacing: .1em;
    line-height: 1.2;
    margin-bottom: 20px;
    padding-bottom: 15px;
    width: 62%
}

.salon-subname {
    font-size: 24px;
    font-size: 2.4rem;
    font-weight: 400
}

.salon-img-wrap {
    float: left;
    padding-right: 4%;
    position: relative;
    width: 38%
}

[data-status=partner] .salon-label {
    background-color: rgba(241, 160, 187, .8);
    color: #fff;
    content: "";
    font-size: 18px;
    font-size: 1.8rem;
    left: 0;
    letter-spacing: .1em;
    line-height: 1;
    padding: 9px 10px;
    position: absolute;
    top: 0;
    z-index: 1
}

[data-status=partner] .salon-label:before {
    content: "\e9d2";
    font-family: icomoon
}

.salon-img {
    width: 100%
}

.salon-contents {
    float: right;
    width: 62%
}

.salon-dlist {
    display: flex
}

.salon-term {
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 1.5;
    position: relative;
    width: 120px;
    z-index: 1
}

.salon-term [class*=" icon-"],
.salon-term [class^=icon-] {
    color: #5294ce;
    font-size: 16px;
    font-size: 1.6rem;
    padding-right: 10px
}

.salon-desc {
    font-size: 16px;
    font-size: 1.6rem
}

.salon-desc th {
    min-width: 100px;
    padding-right: 20px
}

.salon-desc td,
.salon-desc th {
    vertical-align: top
}

.salon-desc .mod-note {
    color: #898989;
    font-size: 16px;
    font-size: 1.6rem
}

.salon-desc .mod-tel {
    color: #5294ce;
    display: inline-block;
    font-family: Roboto Condensed;
    font-size: 36px;
    font-size: 3.6rem;
    font-weight: 700;
    letter-spacing: .06em;
    line-height: 1
}

.salon-btn-wrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    padding-top: 15px
}

.salon-btn {
    border: 1px solid #5294ce;
    color: #04477d;
    display: inline-block;
    font-size: 16px;
    font-size: 1.6rem;
    font-weight: 700;
    padding: 17px 10px;
    position: relative;
    width: 240px
}

.salon-btn:before {
    padding-right: 10px
}

.salon-btn.mod-detail {
    background-color: #04477d;
    border-color: #04477d;
    color: #fff
}

.salon-btn.mod-detail:hover {
    background-color: transparent;
    color: #04477d
}

.salon-btn.mod-detail:hover:after {
    background-color: #fff
}

.salon-btn.mod-reserve {
    background-color: #d84c8b;
    border-color: #d84c8b;
    color: #fff;
    margin-left: 30px
}

.salon-btn.mod-reserve:hover {
    color: #d84c8b
}

.salon-btn.mod-reserve:hover:after {
    background-color: #fff
}

.salon-btn span {
    padding-right: 10px
}

@media screen and (min-width:768px) and (max-width:900px) {
    [data-status=partner] .salon-label {
        font-size: 16px;
        font-size: 1.6rem;
        padding: 5px 10px
    }
}

@media screen and (max-width:900px) {
    .salon-region-col {
        padding: 0 15px
    }

    .salon-img-wrap {
        padding-right: 30px;
        width: 280px
    }

    .salon-contents,
    .salon-name {
        width: calc(100% - 280px)
    }
}

@media screen and (max-width:767px) {
    .salon-region-group {
        -webkit-box-direction: normal;
        -webkit-flex-direction: column;
        flex-direction: column;
        padding: 0
    }

    .salon-region-ttl {
        font-size: 20px;
        font-size: 2rem;
        margin-right: 0;
        padding: 13px 10px;
        width: 100%
    }

    .salon-region-list {
        padding: 10px 0 20px
    }

    .salon-region-item {
        margin: 8px 0;
        padding: 0 8px
    }

    .salon-region-link {
        border: 1px solid #04477d;
        border-radius: 30px;
        display: block;
        font-size: 18px;
        font-size: 1.8rem;
        line-height: 1;
        padding: 7px 20px
    }

    .salon-region-link span:after {
        content: attr(data-txt-sp)
    }

    .salon-item {
        -webkit-box-direction: normal;
        -webkit-flex-direction: column;
        flex-direction: column;
        margin-bottom: 40px;
        padding-top: 0
    }

    .salon-item:last-child {
        margin-bottom: 0
    }

    .salon-item:first-child {
        padding-top: 40px
    }

    .salon-name {
        border-width: 0;
        float: none;
        margin-bottom: 0;
        width: 100%
    }

    .salon-img-wrap {
        float: none;
        margin-bottom: 30px;
        padding-right: 0;
        width: 100%
    }

    [data-status=partner] .salon-label {
        top: 0
    }

    .salon-contents {
        float: none;
        width: 100%
    }

    .salon-btn-wrap {
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center
    }

    .salon-btn.mod-reserve {
        margin-left: 15px
    }
}

@media screen and (max-width:640px) {
    .salon-item {
        padding: 0 0 30px
    }

    .salon-desc,
    .salon-term {
        display: block;
        width: 100%
    }

    .salon-desc .mod-tel {
        margin-right: 15px;
        vertical-align: middle
    }

    .salon-desc .mod-tel-btn {
        font-size: 25px;
        font-size: 2.5rem;
        margin: -5px 0 0;
        width: auto
    }
}

@media screen and (max-width:360px) {
    .salon-desc .mod-tel-btn {
        font-size: 20px;
        font-size: 2rem
    }
}

@media (-ms-high-contrast:none) and (max-width:767px) {

    .salon-region-group,
    ::-ms-backdrop {
        display: block
    }
}

@media screen and (max-width:480px) {
    .salon-region-ttl {
        font-size: 12px;
        font-size: 1.2rem;
        padding: 7px 10px
    }

    .salon-region-list {
        padding: 5px 0 10px
    }

    .salon-region-item {
        margin: 5px 0;
        padding: 0 5px
    }

    .salon-region-link {
        font-size: 14px;
        font-size: 1.4rem;
        padding: 10px 17px
    }

    .salon-item {
        padding: 0 0 25px
    }

    .salon-img-wrap {
        margin-bottom: 15px
    }

    [data-status=partner] .salon-label {
        font-size: 11px;
        font-size: 1.1rem;
        padding: 7px
    }

    .salon-name {
        font-size: 20px;
        font-size: 2rem
    }

    .salon-subname {
        font-size: 14px;
        font-size: 1.4rem
    }

    .salon-term:before {
        font-size: 13px;
        font-size: 1.3rem
    }

    .salon-term [class*=" icon-"],
    .salon-term [class^=icon-] {
        font-size: 14px;
        font-size: 1.4rem
    }

    .salon-desc {
        font-size: 16px;
        font-size: 1.6rem;
        padding-left: 0
    }

    .salon-desc th {
        min-width: 60px
    }

    .salon-desc .mod-note {
        font-size: 13px;
        font-size: 1.3rem
    }

    .salon-desc .mod-tel {
        font-size: 23px;
        font-size: 2.3rem;
        margin: 5px 10px 5px 0
    }

    .salon-btn-wrap {
        -webkit-box-direction: normal;
        -webkit-box-align: center;
        -webkit-align-items: center;
        align-items: center;
        -webkit-flex-direction: column;
        flex-direction: column;
        padding-top: 10px
    }

    .salon-btn {
        font-size: 16px;
        font-size: 1.6rem;
        max-width: 100%;
        padding: 14px 10px;
        width: 300px
    }

    .salon-btn:before {
        padding-right: 5px
    }

    .salon-btn.mod-reserve {
        margin-left: 0;
        margin-top: 15px
    }

    .salon-btn span {
        padding-right: 5px
    }
}

.l-content-salon--new .pc {
    display: block
}

.l-content-salon--new .sp {
    display: none
}

.salon-desc-bloc {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    margin: 30px 0
}

.salon-desc-bloc .c-card {
    align-items: center;
    border: 1px solid #b4b4b4;
    border-radius: 6px;
    color: #262626;
    display: flex;
    justify-content: space-between;
    margin: 0 2% 2% 0;
    padding: 15px;
    width: 49%
}

.salon-desc-bloc .c-card:last-child,
.salon-desc-bloc .c-card:nth-of-type(2n+2) {
    margin-right: 0
}

.salon-desc-bloc .c-card .img-box {
    width: 30%
}

.salon-desc-bloc .c-card .img-box img {
    max-width: 75%
}

.salon-desc-bloc .c-card .txt-box {
    text-align: center;
    width: 65%
}

.salon-desc-bloc .c-card .txt-box p {
    font-size: 21px;
    font-weight: 500
}

.salon-desc-bloc .c-card .txt-box p .p-txt {
    color: #ed80a7
}

@media only screen and (max-width:800px) {
    .l-content-salon--new .pc {
        display: none
    }

    .l-content-salon--new .sp {
        display: block
    }

    .salon-desc-bloc .c-card .img-box img {
        max-width: 100%
    }

    .salon-desc-bloc .c-card .txt-box p {
        font-size: 18px
    }
}

@media only screen and (max-width:600px) {
    .salon-desc-bloc .c-card {
        padding: 10px
    }

    .salon-desc-bloc .c-card .txt-box p {
        font-size: 15px
    }
}

@media only screen and (max-width:400px) {
    .salon-desc-bloc .c-card .txt-box p {
        font-size: 13px
    }
}

.salon-catalog-retrun {
    margin: 30px 0
}

.salon-catalog-retrun .return-btn {
    text-align: center
}

.salon-catalog-retrun .btn-txt {
    display: inline-block;
    margin-bottom: 10px;
    position: relative;
    text-align: center
}

.salon-catalog-retrun .btn-txt span {
    padding: 0 10px
}

.salon-catalog-retrun .btn-txt:after,
.salon-catalog-retrun .btn-txt:before {
    border-left: 1px solid #c9c9c9;
    content: "";
    display: block;
    height: 100%;
    left: 0;
    position: absolute;
    top: -20px;
    transform: rotate(-15deg);
    width: 100%
}

.salon-catalog-retrun .btn-txt:after {
    border-left: 0;
    border-right: 1px solid #c9c9c9;
    left: auto;
    right: 0;
    transform: rotate(15deg)
}

.salon-catalog-retrun .c-btn-salon {
    text-align: center
}

.salon-catalog-retrun .c-btn-salon a {
    align-items: center;
    background: #efecf2;
    border-radius: 40px;
    color: #fff;
    color: #292929;
    display: inline-flex;
    flex-direction: column;
    font-size: 20px;
    font-weight: 500;
    height: 70px;
    justify-content: center;
    letter-spacing: .09em;
    padding: 20px 23px
}

.salon-catalog-retrun .c-btn-salon--return {
    margin: 0 auto;
    max-width: 350px
}

.salon-catalog-retrun .c-btn-salon--return .btn-txt {
    font-weight: 400;
    margin-bottom: 0
}

.salon-catalog-retrun .c-btn-salon--return .btn-txt:after,
.salon-catalog-retrun .c-btn-salon--return .btn-txt:before {
    border-left: 1px solid #fff
}

.salon-catalog-retrun .c-btn-salon--return .btn-txt:after {
    border-left: 0;
    border-right: 1px solid #fff
}

.salon-catalog-retrun .c-btn-salon--return a {
    background: #5cd5e8;
    color: #fff;
    font-weight: 700;
    width: 100%
}

.salon-catalog-retrun .c-btn-salon--tel {
    margin: 0 auto;
    max-width: 350px
}

.salon-catalog-retrun .c-btn-salon--tel a {
    width: 100%
}

.salon-catalog-retrun .c-btn-salon--tel a span {
    font-size: 14px
}

.salon-catalog-retrun .c-card__bloc .c-btn-salon--return {
    margin: 0
}

@media only screen and (max-width:600px) {
    .salon-catalog-retrun .c-btn-salon--return .btn-txt {
        font-size: 14px
    }

    .salon-catalog-retrun .c-btn-salon--return a {
        font-size: 18px;
        height: 60px;
        padding: 15px 20px
    }
}

@media only screen and (max-width:350px) {
    .salon-catalog-retrun .c-btn-salon a {
        font-size: 15px
    }

    .salon-catalog-retrun .c-btn-salon--return {
        max-width: 100%
    }

    .salon-catalog-retrun .c-btn-salon--return .btn-txt {
        font-size: 12px
    }

    .salon-catalog-retrun .c-btn-salon--tel {
        max-width: calc(100% - 20px)
    }
}

.return-bloc {
    margin-bottom: 31px
}

.return-bloc .c-card {
    border: 1px solid #c9c9c9;
    border-radius: 10px;
    display: block;
    margin-bottom: 40px;
    padding: 20px
}

.return-bloc .c-card__bloc {
    display: flex;
    justify-content: space-between;
    margin-bottom: 20px
}

.return-bloc .c-card__bloc .img-box {
    width: 30%
}

.return-bloc .c-card__bloc .txt-box {
    width: 65%
}

.return-bloc .c-card__bloc .txt-box ul {
    margin-bottom: 30px
}

.return-bloc .c-card__bloc .txt-box ul li {
    color: #000;
    font-size: 22px;
    font-weight: 500;
    line-height: 1.3;
    padding-left: 25px;
    position: relative
}

.return-bloc .c-card__bloc .txt-box ul li:before {
    content: "✓";
    left: 0;
    position: absolute;
    top: 0
}

.return-bloc .c-card .return-title {
    border-bottom: 1px dashed #c9c9c9;
    font-size: 18px;
    font-weight: 500;
    margin-bottom: 20px;
    padding-bottom: 20px;
    text-align: center
}

.return-bloc .c-card .return-title span {
    font-size: 26px;
    font-weight: 700
}

.return-bloc .c-card--blue .return-title span {
    color: #5cd5e8
}

.return-bloc .c-card--pink .return-title span {
    color: #ec80a6
}

.return-bloc .c-card--pink .c-btn-salon--return a {
    background: #fff;
    border: 2px solid #ec80a6;
    color: #ec80a6
}

.return-bloc .c-card--pink .c-btn-salon--return a .btn-txt:before {
    border-left: 1px solid #ec80a6
}

.return-bloc .c-card--pink .c-btn-salon--return a .btn-txt:after {
    border-right: 1px solid #ec80a6
}

.return-bloc .c-card--purple .return-title span {
    color: #ec80a6
}

.return-bloc .c-card--purple .c-btn-salon--return a {
    background: #ec80a6;
    position: relative
}

.return-bloc .c-card--purple .c-btn-salon--return a:before {
    background: #ec80a6 url(../../assets/img/salon/icon_tel.png) no-repeat 50%;
    background-color: #ec80a6;
    background-size: 100%;
    border-radius: 50%;
    content: "";
    height: 43px;
    left: 5%;
    position: absolute;
    top: 19%;
    width: 43px
}

.return-bloc .c-card--purple .c-btn-salon .btn-txt:after,
.return-bloc .c-card--purple .c-btn-salon .btn-txt:before {
    top: -25px
}

@media only screen and (max-width:899px) {
    .return-bloc .c-card {
        border: 1px solid #c9c9c9;
        display: block;
        padding: 20px
    }

    .return-bloc .c-card:not(.return-bloc .c-card:last-child) {
        margin-bottom: 20px
    }

    .return-bloc .c-card__bloc .img-box img {
        display: block;
        margin: 0 auto;
        max-width: 100%
    }
}

@media only screen and (max-width:800px) {
    .return-bloc .c-card__bloc .txt-box ul {
        margin-bottom: 0
    }
}

@media only screen and (max-width:600px) {
    .return-bloc .c-card {
        padding: 15px
    }

    .return-bloc .c-card:not(.return-bloc .c-card:last-child),
    .return-bloc .c-card__bloc {
        margin-bottom: 15px
    }

    .return-bloc .c-card__bloc .txt-box ul li {
        font-size: 14px;
        padding-left: 20px
    }

    .return-bloc .c-card .return-title {
        font-size: 14px;
        margin-bottom: 15px;
        padding-bottom: 15px
    }

    .return-bloc .c-card .return-title span {
        font-size: 22px
    }

    .return-bloc .c-card--purple .c-btn-salon--return a:before {
        height: 30px;
        top: 23%;
        width: 30px
    }
}

@media only screen and (max-width:400px) {
    .return-bloc .c-card {
        padding: 12px
    }

    .return-bloc .c-card:not(.return-bloc .c-card:last-child),
    .return-bloc .c-card__bloc {
        margin-bottom: 12px
    }

    .return-bloc .c-card__bloc .txt-box ul li {
        font-size: 14px;
        padding-left: 15px
    }

    .return-bloc .c-card .return-title {
        font-size: 13px;
        margin-bottom: 12px;
        padding-bottom: 12px
    }

    .return-bloc .c-card .return-title span {
        font-size: 20px
    }
}

.s-salon-guide {
    background: #fbe6ed;
    margin-top: 30px;
    padding: 30px 25px 60px
}

.s-salon-guide h4 {
    color: #d8658e;
    font-size: 36px;
    margin-bottom: 20px;
    text-align: center
}

.s-salon-guide .guide-bloc .c-card {
    background: #fff;
    border: 1px solid #de7c9f;
    padding: 20px
}

.s-salon-guide .guide-bloc .c-card:not(.s-salon-guide .guide-bloc .c-card:last-child) {
    margin-bottom: 20px
}

.s-salon-guide .guide-bloc .c-card .guide-title {
    border-bottom: 1px solid #de7c9f;
    color: #d8658e;
    font-size: 30px;
    font-weight: 500;
    margin-bottom: 20px;
    padding-bottom: 20px;
    text-align: center
}

.s-salon-guide .guide-bloc .c-card__bloc {
    align-items: flex-start;
    display: flex;
    justify-content: space-between
}

.s-salon-guide .guide-bloc .c-card__bloc .img-box {
    max-width: 225px;
    width: 34%
}

.s-salon-guide .guide-bloc .c-card__bloc .img-box img {
    display: block;
    width: 100%
}

.s-salon-guide .guide-bloc .c-card__bloc .txt-box {
    width: 60%
}

.s-salon-guide .guide-bloc .c-card__bloc .txt-box p {
    padding-bottom: 30px
}

.s-salon-guide .guide-bloc .c-card__bloc .txt-box .c-btn-salon--guide {
    border: 2px solid #4f4f4f;
    border-radius: 33px;
    margin: 0 auto;
    max-width: 260px
}

.s-salon-guide .guide-bloc .c-card__bloc .txt-box .c-btn-salon--guide a {
    align-items: center;
    color: #4f4f4f;
    display: flex;
    font-size: 20px;
    justify-content: center;
    padding: 10px 5px;
    position: relative;
    text-align: center
}

.s-salon-guide .guide-bloc .c-card__bloc .txt-box .c-btn-salon--guide a:after {
    background: url(../../assets/img/salon/icon_right_b.svg) no-repeat 100%;
    border-radius: 50%;
    content: "";
    height: 15px;
    position: absolute;
    right: 16%;
    width: 19px
}

@media only screen and (max-width:1024px) {
    .s-salon-guide h4 {
        font-size: 32px
    }

    .s-salon-guide .guide-bloc .c-card .guide-title {
        font-size: 26px
    }

    .s-salon-guide .guide-bloc .c-card__bloc .txt-box .c-btn-salon--guide {
        max-width: 280px
    }

    .s-salon-guide .guide-bloc .c-card__bloc .txt-box .c-btn-salon--guide a {
        font-size: 20px;
        padding: 10px 5px
    }
}

@media only screen and (max-width:800px) {
    .s-salon-guide h4 {
        font-size: 30px;
        line-height: 1.3
    }

    .s-salon-guide .guide-bloc .c-card .guide-title {
        font-size: 24px
    }

    .s-salon-guide .guide-bloc .c-card__bloc .txt-box .c-btn-salon--guide {
        max-width: 240px
    }

    .s-salon-guide .guide-bloc .c-card__bloc .txt-box .c-btn-salon--guide a {
        font-size: 18px
    }
}

@media only screen and (max-width:600px) {
    .s-salon-guide {
        padding: 20px 15px 40px
    }

    .s-salon-guide h4 {
        font-size: 20px;
        margin-bottom: 15px
    }

    .s-salon-guide .guide-bloc .c-card {
        padding: 15px
    }

    .s-salon-guide .guide-bloc .c-card:not(.s-salon-guide .guide-bloc .c-card:last-child) {
        margin-bottom: 15px
    }

    .s-salon-guide .guide-bloc .c-card .guide-title {
        font-size: 18px;
        margin-bottom: 15px;
        padding-bottom: 15px
    }

    .s-salon-guide .guide-bloc .c-card__bloc .txt-box p {
        font-size: 14px;
        padding-bottom: 15px
    }

    .s-salon-guide .guide-bloc .c-card__bloc .txt-box .c-btn-salon--guide {
        max-width: 180px
    }

    .s-salon-guide .guide-bloc .c-card__bloc .txt-box .c-btn-salon--guide a {
        font-size: 16px;
        padding: 5px 2px
    }

    .s-salon-guide .guide-bloc .c-card__bloc .txt-box .c-btn-salon--guide a:after {
        height: 13px;
        right: 10%;
        width: 17px
    }
}

@media only screen and (max-width:400px) {
    .s-salon-guide {
        padding: 20px 10px 40px
    }

    .s-salon-guide h4 {
        font-size: 18px
    }

    .s-salon-guide .guide-bloc .c-card {
        padding: 12px
    }

    .s-salon-guide .guide-bloc .c-card:not(.s-salon-guide .guide-bloc .c-card:last-child) {
        margin-bottom: 12px
    }

    .s-salon-guide .guide-bloc .c-card .guide-title {
        font-size: 14px;
        margin-bottom: 12px;
        padding-bottom: 12px
    }

    .s-salon-guide .guide-bloc .c-card__bloc .txt-box p {
        font-size: 13px;
        padding-bottom: 12px
    }

    .s-salon-guide .guide-bloc .c-card__bloc .txt-box .c-btn-salon--guide a {
        font-size: 14px;
        padding: 4px 2px
    }
}

.seminar .c-page-ttl {
    background: url(../../assets/img/seminar/bracket-seminar-01.png) 0 0/40px no-repeat, url(../../assets/img/seminar/bracket-seminar-02.png) 100% 100%/40px no-repeat
}

.movie-list {
    padding-top: 80px
}

.movie-item {
    margin-bottom: 70px
}

.movie-ttl {
    font-size: 20px;
    font-size: 2rem;
    font-weight: 700;
    letter-spacing: .05em;
    line-height: 1.6;
    margin-bottom: 10px
}

.movie-contents {
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex
}

.movie-contents+.movie-contents {
    margin-top: 35px
}

.movie-video {
    max-width: 320px;
    position: relative
}

.movie-video,
.movie-video:before {
    -webkit-transition: all .25s ease-in-out;
    transition: all .25s ease-in-out
}

.movie-video:before {
    background-color: rgba(0, 0, 0, .5);
    content: "";
    height: 100%;
    left: 0;
    position: absolute;
    top: 0;
    width: 100%
}

.movie-video:hover:before {
    opacity: .7
}

.movie-video:after {
    border: 3px solid #fff;
    border-radius: 100%;
    color: #fff;
    content: "\ea1c";
    font-family: icomoon;
    font-size: 40px;
    font-size: 4rem;
    height: 60px;
    left: 50%;
    line-height: 1;
    padding: 8px 0 0 5px;
    position: absolute;
    text-align: center;
    top: 50%;
    -webkit-transform: translateX(-50%) translateY(-50%);
    -moz-transform: translateX(-50%) translateY(-50%);
    -ms-transform: translateX(-50%) translateY(-50%);
    -o-transform: translateX(-50%) translateY(-50%);
    transform: translateX(-50%) translateY(-50%);
    -webkit-transition: all .25s ease-in-out;
    transition: all .25s ease-in-out;
    width: 60px
}

.movie-video:hover:after {
    border-color: #d84c8b;
    color: #d84c8b
}

.movie-comment {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    letter-spacing: .05em;
    line-height: 1.8;
    margin-left: 3%
}

.movie-comment-person {
    border-bottom: 1px solid #d84c8b;
    margin-bottom: 5px
}

.movie-comment-title {
    font-size: 10px;
    font-size: 1rem;
    line-height: 1.2
}

.movie-comment-name {
    font-size: 18px;
    font-size: 1.8rem
}

.movie-comment-txt {
    font-size: 15px;
    font-size: 1.5rem
}

.movie-comment-txt+.movie-comment-person {
    margin-top: 35px
}

.movie-comment-subttl {
    font-size: 18px;
    font-size: 1.8rem
}

.seminar button.mfp-arrow-right {
    right: 5%
}

.seminar button.mfp-arrow-left {
    left: 5%
}

@media screen and (max-width:767px) {
    .movie-video {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 40%;
        flex: 0 0 40%
    }

    .seminar button.mfp-arrow-right {
        right: 3%
    }

    .seminar button.mfp-arrow-left {
        left: 3%
    }
}

@media screen and (max-width:640px) {
    .movie-list {
        padding-top: 50px
    }

    .movie-item {
        margin-bottom: 40px
    }

    .movie-contents {
        flex-wrap: wrap
    }

    .movie-video {
        flex: 0 0 100%;
        max-width: 100%
    }

    .movie-comment {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 100%;
        flex: 0 0 100%;
        margin-left: 0;
        padding-top: 20px
    }
}

.cta-bloc {
    bottom: 110px;
    position: fixed;
    right: 0;
    top: 112px;
    z-index: 99
}

.cta-bloc__area {
    display: block;
    width: 60px;
    z-index: 0
}

.cta-bloc__area .cta-btn {
    background: #fff;
    border-radius: 10px;
    margin-bottom: 2px
}

.cta-bloc__area .cta-btn a {
    color: #fff;
    display: block;
    text-decoration: none
}

.cta-bloc__area .cta-btn a .img-box img {
    display: block;
    margin: 0 auto;
    max-width: 100%
}

.cta-bloc__area .cta-btn a:hover {
    opacity: .7
}

@media screen and (max-width:1200px) {
    .cta-bloc {
        top: 157px
    }
}

@media screen and (max-width:959px) {
    .cta-bloc {
        display: none
    }
}

.pc_sidebnarea {
    position: fixed;
    right: -2px;
    top: 190px;
    z-index: 209
}

.pc_sidebnarea ul {
    width: 210px
}

.pc_sidebnarea ul li {
    padding: 0 0 5px
}

.pc_sidebnarea ul li a {
    display: block;
    height: 85px;
    position: relative
}

.pc_sidebnarea ul li a>img {
    height: 100%;
    position: absolute;
    top: 0
}

.pc_sidebnarea ul li a>img.bnarea-img {
    z-index: 99
}

.pc_sidebnarea ul li a:hover {
    opacity: .7;
    transition: all .25s ease-in-out
}

@media screen and (max-width:1200px) {
    .pc_sidebnarea ul {
        width: 200px
    }
}

@media only screen and (max-width:899px) {
    .pc_sidebnarea {
        display: none
    }
}

.c-sidebar-wrap {
    background-color: #fff
}

.c-sidebar-wrap:first-child {
    padding-bottom: 40px
}

.c-sidebar-ttl {
    border-bottom: 2px solid #e595bb;
    color: #e8529a;
    font-size: 24px;
    font-size: 2.4rem;
    line-height: 1.5;
    margin-bottom: 15px;
    padding-bottom: 3px
}

.c-sidebar-article {
    margin-top: 30px
}

.c-sidebar-article:first-child {
    margin-top: 0
}

.relation-link {
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    -webkit-box-align: flex-start;
    -webkit-align-items: flex-start;
    align-items: flex-start;
    color: #616262;
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    font-size: 0;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    -webkit-transition: all .25s ease-in-out;
    -moz-transition: all .25s ease-in-out;
    -ms-transition: all .25s ease-in-out;
    -o-transition: all .25s ease-in-out;
    transition: all .25s ease-in-out
}

.relation-link:hover {
    color: #5294ce;
    opacity: 1
}

.relation-img-wrap {
    background-color: transparent;
    font-size: 14px;
    font-size: 1.4rem;
    left: 0;
    overflow: hidden;
    position: relative;
    text-align: center;
    -webkit-transition: all .25s ease-in-out;
    -moz-transition: all .25s ease-in-out;
    -ms-transition: all .25s ease-in-out;
    -o-transition: all .25s ease-in-out;
    transition: all .25s ease-in-out;
    width: calc(50% - 5px)
}

.relation-img-wrap:before {
    content: "";
    display: block;
    padding-top: 60%;
    width: 100%
}

.relation-img {
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    left: 50%;
    max-width: 100%;
    position: absolute;
    top: 50%;
    -webkit-transform: translateX(-50%) translateY(-50%);
    -moz-transform: translateX(-50%) translateY(-50%);
    -ms-transform: translateX(-50%) translateY(-50%);
    -o-transform: translateX(-50%) translateY(-50%);
    transform: translateX(-50%) translateY(-50%);
    -webkit-transition: all .25s ease-in-out;
    transition: all .25s ease-in-out
}

.relation-link:hover .relation-img {
    -webkit-transform: scale(1.08) translate(-46.2%, -46.2%);
    -moz-transform: scale(1.08) translate(-46.2%, -46.2%);
    -ms-transform: scale(1.08) translate(-46.2%, -46.2%);
    -o-transform: scale(1.08) translate(-46.2%, -46.2%);
    transform: scale(1.08) translate(-46.2%, -46.2%)
}

.relation-body {
    font-size: 14px;
    font-size: 1.4rem;
    width: calc(50% - 5px)
}

.relation-category {
    background: #e595bb;
    color: #fff;
    display: inline-block;
    font-size: 12px;
    font-size: 1.2rem;
    line-height: 1;
    margin-bottom: 10px;
    min-width: 80px;
    padding: 4px 5px;
    text-align: center
}

.relation-ttl {
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 1.5
}

@media screen and (max-width:768px) {
    .c-sidebar-wrap {
        border-width: 1px 0
    }

    .relation-img-wrap {
        max-width: 100%;
        width: 35%
    }

    .relation-body {
        padding-left: 20px;
        width: 65%
    }

    .relation-img {
        width: 100%
    }
}

@media screen and (max-width:480px) {
    .c-sidebar-wrap {
        margin-bottom: 0
    }

    .c-sidebar-ttl {
        font-size: 18px;
        font-size: 1.8rem;
        margin-bottom: 15px;
        padding-bottom: 4px
    }

    .c-sidebar-subttl {
        font-size: 13px;
        font-size: 1.3rem;
        margin-bottom: 15px
    }

    .c-sidebar-article {
        margin-top: 15px;
        padding-top: 15px
    }

    .relation-img-wrap {
        width: 44.4%
    }

    .relation-body {
        padding-left: 10px;
        width: 55.6%
    }

    .relation-category {
        font-size: 10px;
        font-size: 1rem;
        margin-bottom: 10px;
        margin-top: 0;
        min-width: 90px;
        padding: 4px 5px
    }

    .relation-ttl {
        font-size: 13px;
        font-size: 1.3rem
    }
}

.bn-wrap {
    margin-bottom: 20px
}

.bn-link {
    display: block;
    -webkit-transition: all .25s ease;
    -ms-transition: all .25s ease;
    transition: all .25s ease
}

.bn-link:hover {
    opacity: .7
}

@media screen and (max-width:768px) {
    .bn-wrap {
        margin-bottom: 60px;
        padding: 0 10px;
        text-align: center
    }
}

@media screen and (max-width:480px) {
    .bn-wrap {
        margin-bottom: 40px
    }

    .single .main {
        padding: 0 0 40px
    }

    .c-post {
        margin-bottom: 30px
    }
}

.c-post-thumbnail {
    width: 100%
}

.c-post-thumbnail-wrap+.c-post-contents {
    padding-top: 15px
}

@media screen and (max-width:480px) {
    .c-post-thumbnail-wrap+.c-post-contents {
        padding-top: 20px
    }
}

.c-post-info {
    margin-bottom: 10px
}

.c-post-category {
    background: #e595bb;
    color: #fff;
    display: inline-block;
    font-size: 12px;
    font-size: 1.2rem;
    line-height: 1;
    margin-bottom: 5px;
    min-width: 120px;
    padding: 5px;
    text-align: center;
    -webkit-transition: all .25s ease;
    -ms-transition: all .25s ease;
    transition: all .25s ease
}

@media screen and (max-width:480px) {
    .c-post-category {
        font-size: 12px;
        font-size: 1.2rem;
        margin-right: 15px;
        min-width: 90px;
        padding: 4px 5px
    }
}

.c-post-category:hover {
    opacity: .7
}

.c-post-date {
    color: #675961;
    display: block;
    font-size: 16px;
    font-size: 1.6rem;
    margin-top: .25em
}

@media screen and (max-width:480px) {
    .c-post-date {
        font-size: 14px;
        font-size: 1.4rem
    }
}

.c-post-ttl {
    color: #e595bb;
    font-family: "Noto Serif JP", serif;
    font-size: 42px;
    font-size: 4.2rem;
    font-weight: 600;
    line-height: 1.4;
    margin: 0 auto;
    max-width: 980px;
    padding: 10px;
    text-align: center;
    width: 100%
}

@media screen and (max-width:480px) {
    .c-post-ttl {
        font-size: 24px;
        font-size: 2.4rem;
        line-height: 1.5;
        margin: 0;
        padding: 10px
    }
}

.c-post-contents {
    padding: 30px 0
}

@media screen and (max-width:768px) {
    .c-post-contents {
        padding: 15px 20px
    }
}

@media screen and (max-width:480px) {
    .c-post-contents {
        padding: 15px
    }
}

.c-post-content .wp-caption {
    margin-bottom: 30px;
    width: auto !important
}

.c-post-content .wp-caption .wp-caption-text {
    font-size: 85%
}

@media screen and (max-width:640px) {
    .c-post-content>img {
        margin: 0 -20px;
        max-width: none;
        width: calc(100% + 40px)
    }
}

.c-post-content>ol li,
.c-post-content>ul li {
    padding-left: 20px;
    position: relative
}

.c-post-content>ol li:before,
.c-post-content>ul li:before {
    left: 3px;
    position: absolute;
    top: 0
}

.c-post-content>ul {
    margin: 30px 0
}

.c-post-content>ul li:before {
    content: "\30FB"
}

.c-post-content>ol {
    counter-reset: num;
    margin: 35px 0
}

.c-post-content>ol li {
    counter-increment: num
}

.c-post-content>ol li:before {
    content: counter(num) "."
}

.c-post-content>table {
    border: 1px solid #e595bb;
    margin: 35px 0;
    width: 100%
}

.c-post-content>table td,
.c-post-content>table th {
    padding: 10px
}

.c-post-content>table thead {
    background: #fdf0f6;
    color: #e8529a;
    padding: 15px
}

.c-post-content>table thead tr {
    text-align: center
}

.c-post-content>table thead tr>*+* {
    border-left: 1px solid #e595bb
}

.c-post-content>table thead tr>* {
    text-align: center
}

.c-post-content>table tbody tr+tr {
    border-top: 1px solid #e595bb
}

.c-post-content>table tbody tr>*+* {
    border-left: 1px solid #e595bb
}

.c-post-content h2 {
    background: #fdf0f6;
    border-left: 5px solid #e595bb;
    color: #e8529a;
    font-size: 24px;
    font-size: 2.4rem;
    line-height: 1.5;
    margin-bottom: 20px;
    margin-top: 20px;
    padding: 8px 10px
}

@media screen and (max-width:480px) {
    .c-post-content h2 {
        font-size: 18px;
        font-size: 1.8rem;
        margin-bottom: 10px;
        margin-top: 15px;
        padding-bottom: 3px;
        padding-left: 5px
    }
}

.c-post-content h2:last-child {
    margin-bottom: 0
}

.c-post-content h3 {
    border-bottom: 2px solid #e8529a;
    color: #e8529a;
    font-size: 24px;
    font-size: 2.4rem;
    line-height: 1.5;
    margin-bottom: 20px;
    margin-top: 20px;
    padding-bottom: 4px
}

@media screen and (max-width:480px) {
    .c-post-content h3 {
        font-size: 18px;
        font-size: 1.8rem;
        margin-bottom: 10px;
        margin-top: 15px
    }
}

.c-post-content h3:last-child {
    margin-bottom: 0
}

.c-post-content h4 {
    font-size: 20px;
    font-size: 2rem;
    font-weight: 700;
    letter-spacing: .01em;
    line-height: 1.4;
    margin-bottom: 20px;
    margin-top: 20px
}

@media screen and (max-width:480px) {
    .c-post-content h4 {
        font-size: 18px;
        font-size: 1.8rem;
        margin-bottom: 10px;
        margin-top: 15px
    }
}

.c-post-content h4:last-child {
    margin-bottom: 0
}

.c-post-content p {
    line-height: 1.8;
    padding-bottom: 20px
}

@media screen and (max-width:480px) {
    .c-post-content p {
        font-size: 16px;
        font-size: 1.6rem;
        padding-bottom: 15px
    }
}

.c-post-content p:last-child {
    padding-bottom: 0
}

.c-post-content strong {
    font-weight: 700
}

.c-post-content em {
    font-style: italic
}

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

.c-post-content blockquote {
    margin-bottom: 20px
}

.c-post-content blockquote:before {
    content: "“ "
}

.c-post-content blockquote:after {
    content: " ”"
}

.c-post-content .notice {
    color: #999
}

@media screen and (min-width:641px) {
    .c-post-content .notice {
        font-size: 1.4rem
    }
}

.c-post-content .img {
    margin: 20px 0 10px
}

@media screen and (max-width:480px) {
    .c-post-content .img {
        margin: 15px 0 10px
    }
}

.c-post-content .img:not([class]) {
    margin: 20px 0 30px
}

@media screen and (max-width:480px) {
    .c-post-content .img:not([class]) {
        margin: 15px 0 20px
    }
}

.c-post-content .bold {
    font-weight: 700
}

.c-post-content .large {
    font-size: 18px;
    font-size: 1.8rem
}

@media screen and (max-width:480px) {
    .c-post-content .large {
        font-size: 14px;
        font-size: 1.4rem
    }
}

.c-post-content .small {
    font-size: 14px;
    font-size: 1.4rem
}

@media screen and (max-width:480px) {
    .c-post-content .small {
        font-size: 11px;
        font-size: 1.1rem
    }
}

.c-post-content .extra-small {
    font-size: 12px;
    font-size: 1.2rem
}

@media screen and (max-width:480px) {
    .c-post-content .extra-small {
        font-size: 10px;
        font-size: 1rem
    }
}

.c-post-content .color {
    color: #5294ce
}

.c-post-content .c-btn-wrap {
    padding: 20px 0
}

@media screen and (max-width:480px) {
    .c-post-content .c-btn-wrap {
        padding: 15px 0
    }
}

.single .c-btn {
    font-size: 18px;
    font-size: 1.8rem
}

@media screen and (max-width:480px) {
    .single .c-btn {
        font-size: 16px;
        font-size: 1.6rem;
        max-width: 320px;
        width: 100%
    }

    .c-post-grid-col {
        padding-bottom: 0;
        padding-top: 0
    }

    .single-btn-wrap {
        padding: 0 10px
    }
}

.tag-more-btn {
    color: #04477d;
    cursor: pointer;
    font-size: 18px;
    font-size: 1.8rem;
    letter-spacing: .16em;
    position: absolute;
    right: 10px;
    top: 60px
}

.tag-more-btn-inner {
    padding-right: 10px
}

.tag-more-icon {
    color: #04477d;
    font-size: 18px;
    font-size: 1.8rem;
    -webkit-transition: all .5s ease;
    transition: all .5s ease
}

.open .tag-more-icon {
    -webkit-transform: rotate(-180deg);
    transform: rotate(-180deg)
}

.tag-wrap {
    margin: 0 auto;
    max-width: 1020px
}

.tag-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -ms-flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    max-height: 60px;
    overflow: hidden;
    text-align: left;
    -webkit-transition: all .5s ease;
    transition: all .5s ease
}

.tag-list.open {
    max-height: 1000px;
    -webkit-transition: all 1s cubic-bezier(.4, 0, 1, 1);
    transition: all 1s cubic-bezier(.4, 0, 1, 1)
}

.tag-list .tag-item {
    display: inline-block;
    padding: 10px
}

.tag-list .tag-item a {
    background-color: #fff;
    border-radius: 30px;
    color: #616262;
    display: block;
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 1;
    padding: 11px 20px;
    text-align: center;
    text-decoration: none;
    -webkit-transition: all .3s ease;
    transition: all .3s ease
}

.tag-list .tag-item a:hover,
.tag-list .tag-item.current a {
    background: #e8529a;
    color: #fff;
    opacity: 1
}

@media screen and (max-width:767px) {
    .tag-more-btn {
        -webkit-box-align: center;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        -webkit-align-items: center;
        align-items: center;
        background-color: rgba(82, 149, 206, .5);
        border-radius: 100%;
        display: -webkit-box;
        display: -ms-flexbox;
        display: -webkit-flex;
        display: flex;
        height: 60px;
        justify-content: center;
        left: 50%;
        overflow: hidden;
        right: auto;
        text-align: center;
        top: 100%;
        -webkit-transform: translateX(-50%) translateY(-50%);
        -moz-transform: translateX(-50%) translateY(-50%);
        -ms-transform: translateX(-50%) translateY(-50%);
        -o-transform: translateX(-50%) translateY(-50%);
        transform: translateX(-50%) translateY(-50%);
        -webkit-transition: .4s;
        transition: .4s;
        width: 60px;
        z-index: 90
    }

    .tag-more-btn:hover {
        background-color: #5295ce
    }

    .tag-more-btn-inner {
        display: none
    }

    .tag-more-icon {
        color: #fff;
        font-size: 44px;
        font-size: 4.4rem;
        left: 2px;
        position: relative;
        -webkit-transition: .4s;
        transition: .4s
    }

    .tag-more-icon.fa-chevron-down:before {
        content: "\f107"
    }

    .open .tag-more-icon {
        left: 0
    }

    .tag-list {
        padding: 0 10px
    }

    .tag-item {
        min-width: 33.33333%
    }
}

@media screen and (max-width:480px) {
    .tag-more-btn {
        height: 30px;
        width: 30px
    }

    .tag-more-icon {
        font-size: 20px;
        font-size: 2rem;
        left: 1px
    }

    .tag-list {
        max-height: 84px;
        padding: 0 5px
    }

    .tag-list .tag-item {
        padding: 5px
    }

    .tag-list .tag-item a {
        border-radius: 30px;
        font-size: 12px;
        font-size: 1.2rem;
        padding: 10px 2px
    }
}

@media screen and (min-width:768px) {
    .tag-list .tag-item a {
        min-width: 184px
    }
}

.trivia .c-list-item {
    padding-bottom: 2.4%
}

.trivia .c-heading {
    background-color: #c1dfda;
    background-image: -moz-linear-gradient(left, #c1dfda 0, #ebf2c6 51%, #c1dfda 100%);
    background-image: -webkit-linear-gradient(left, #c1dfda, #ebf2c6 51%, #c1dfda);
    background-image: linear-gradient(90deg, #c1dfda 0, #ebf2c6 51%, #c1dfda);
    background-size: 200% auto
}

.trivia .c-heading-ttl {
    color: #36a59a
}

.trivia .pager {
    padding-top: 28px
}

@media screen and (min-width:768px) and (max-width:900px) {
    .trivia .c-section {
        padding-top: 25px
    }

    .trivia .pager {
        padding-top: 45px
    }
}

@media screen and (max-width:767px) {
    .trivia .c-section {
        padding-top: 45px
    }

    .trivia .pager {
        padding-top: 20px
    }
}

@media screen and (max-width:480px) {
    .trivia .c-section {
        padding-top: 25px
    }
}

.trivia.single .side {
    height: 100%;
    position: sticky;
    top: 185px
}

@media screen and (max-width:767px) {
    .trivia.single .side {
        position: static
    }
}

.trivia.single .c-post-ttl {
    margin-bottom: 10px
}

.trivia.single #ez-toc-container {
    border: 5px solid #d2def1;
    margin: 20px 0 10px;
    padding: 20px
}

@media screen and (max-width:640px) {
    .trivia.single #ez-toc-container {
        margin-left: 15px;
        margin-right: 15px
    }
}

.trivia.single #ez-toc-container .ez-toc-title {
    font-size: 1.8rem;
    line-height: 1;
    margin-bottom: 20px;
    text-align: center
}

.trivia.single #ez-toc-container nav ul {
    counter-reset: li_count
}

.trivia.single #ez-toc-container nav ul li {
    counter-increment: li_count;
    font-size: 1.6rem;
    line-height: 1.8;
    padding-left: 20px;
    position: relative
}

.trivia.single #ez-toc-container nav ul li:before {
    content: counter(li_count) ".";
    left: 0;
    position: absolute;
    top: 0
}

.trivia.single #ez-toc-container nav ul li a {
    text-decoration: underline
}

.trivia.single .c-post-content #ez-toc-container {
    display: none
}

.trivia.single .sc-trivia-catalogList {
    margin: 10px 0 35px
}

.trivia.single .sc-trivia-catalogList>p {
    padding-bottom: 0
}

.trivia.single .sc-trivia-catalogList__name {
    background: #e8529a;
    color: #fff;
    display: inline-block;
    line-height: 1;
    margin-bottom: 20px;
    padding: 5px 25px !important
}

.trivia.single .sc-trivia-catalogList__item:after {
    clear: both;
    content: "";
    display: block
}

.trivia.single .sc-trivia-catalogList__item li {
    float: left;
    font-size: 1.6rem;
    width: 30.96774%
}

@media screen and (max-width:640px) {
    .trivia.single .sc-trivia-catalogList__item li {
        align-items: center;
        display: flex;
        float: none;
        width: 100%
    }
}

@media screen and (min-width:641px) {
    .trivia.single .sc-trivia-catalogList__item li:not(:nth-child(3n+1)) {
        margin-left: 3.54839%
    }

    .trivia.single .sc-trivia-catalogList__item li:not(:nth-child(-n+3)) {
        margin-top: 20px
    }
}

@media screen and (max-width:640px) {
    .trivia.single .sc-trivia-catalogList__item li+li {
        margin-top: 10px
    }
}

.trivia.single .sc-trivia-catalogList__item li img {
    margin-bottom: 10px
}

@media screen and (max-width:640px) {
    .trivia.single .sc-trivia-catalogList__item li img {
        flex: 1 1 30.43478%;
        margin-bottom: 0;
        margin-right: 15px;
        max-width: 30.43478%;
        min-width: 30.43478%
    }
}

.trivia.single .sc-trivia-catalogList__item li p {
    padding-bottom: 0
}

@media screen and (max-width:640px) {
    .trivia.single .sc-trivia-catalogList__item li>div {
        flex: 1 1 100%
    }
}

.trivia.single .sc-trivia-catalogList__item-img {
    background-position: 50%;
    background-size: cover
}

.trivia.single .sc-trivia-catalogList__item-img:before {
    content: "";
    display: block;
    padding-top: 100%
}

.trivia.single .sc-trivia-catalogList__text {
    padding-bottom: 0
}

.trivia.single *+.sc-trivia-catalogList__text {
    margin-top: 20px
}

.trivia.single .sc-trivia-ctaBanner {
    margin: 10px 0 35px
}

.trivia.single .sc-trivia-ctaBanner .btn:hover:after {
    background-color: hsla(0, 0%, 100%, .3);
    content: "";
    height: 100%;
    left: 0;
    position: absolute;
    top: 0;
    width: 100%
}

.trivia.single .sc-trivia-ctaBanner.green-01,
.trivia.single .sc-trivia-ctaBanner.green-02,
.trivia.single .sc-trivia-ctaBanner.green-03,
.trivia.single .sc-trivia-ctaBanner.pink-01,
.trivia.single .sc-trivia-ctaBanner.pink-02,
.trivia.single .sc-trivia-ctaBanner.pink-03 {
    background-position: 50%;
    background-repeat: no-repeat;
    background-size: contain;
    position: relative
}

.trivia.single .sc-trivia-ctaBanner.green-01:before,
.trivia.single .sc-trivia-ctaBanner.green-02:before,
.trivia.single .sc-trivia-ctaBanner.green-03:before,
.trivia.single .sc-trivia-ctaBanner.pink-01:before,
.trivia.single .sc-trivia-ctaBanner.pink-02:before,
.trivia.single .sc-trivia-ctaBanner.pink-03:before {
    content: "";
    display: block
}

.trivia.single .sc-trivia-ctaBanner.green-01 .btn,
.trivia.single .sc-trivia-ctaBanner.green-02 .btn,
.trivia.single .sc-trivia-ctaBanner.green-03 .btn,
.trivia.single .sc-trivia-ctaBanner.pink-01 .btn,
.trivia.single .sc-trivia-ctaBanner.pink-02 .btn,
.trivia.single .sc-trivia-ctaBanner.pink-03 .btn {
    background-position: 50%;
    background-repeat: no-repeat;
    background-size: contain;
    left: 50%;
    position: absolute;
    transform: translateX(-50%)
}

.trivia.single .sc-trivia-ctaBanner.green-01 .btn:before,
.trivia.single .sc-trivia-ctaBanner.green-02 .btn:before,
.trivia.single .sc-trivia-ctaBanner.green-03 .btn:before,
.trivia.single .sc-trivia-ctaBanner.pink-01 .btn:before,
.trivia.single .sc-trivia-ctaBanner.pink-02 .btn:before,
.trivia.single .sc-trivia-ctaBanner.pink-03 .btn:before {
    content: "";
    display: block
}

.trivia.single .sc-trivia-ctaBanner.green-01:before,
.trivia.single .sc-trivia-ctaBanner.pink-01:before {
    padding-top: 39.67742%
}

.trivia.single .sc-trivia-ctaBanner.green-01 .btn,
.trivia.single .sc-trivia-ctaBanner.pink-01 .btn {
    bottom: 8.13008%;
    width: 65.80645%
}

.trivia.single .sc-trivia-ctaBanner.green-01 .btn:before,
.trivia.single .sc-trivia-ctaBanner.pink-01 .btn:before {
    padding-top: 28.43137%
}

.trivia.single .sc-trivia-ctaBanner.pink-01 {
    background-image: url(../../assets/img/trivia/cta-pink-01-bg.jpg)
}

.trivia.single .sc-trivia-ctaBanner.pink-01 .btn {
    background-image: url(../../assets/img/trivia/cta-pink-01-btn.png)
}

.trivia.single .sc-trivia-ctaBanner.green-01 {
    background-image: url(../../assets/img/trivia/cta-green-01-bg.jpg)
}

.trivia.single .sc-trivia-ctaBanner.green-01 .btn {
    background-image: url(../../assets/img/trivia/cta-green-01-btn.png)
}

.trivia.single .sc-trivia-ctaBanner.green-02:before,
.trivia.single .sc-trivia-ctaBanner.pink-02:before {
    padding-top: 52.25806%
}

.trivia.single .sc-trivia-ctaBanner.green-02 .btn,
.trivia.single .sc-trivia-ctaBanner.pink-02 .btn {
    bottom: 3.08642%;
    width: 93.54839%
}

.trivia.single .sc-trivia-ctaBanner.green-02 .btn:before,
.trivia.single .sc-trivia-ctaBanner.pink-02 .btn:before {
    content: "";
    display: block;
    padding-top: 15.37133%
}

.trivia.single .sc-trivia-ctaBanner.pink-02 {
    background-image: url(../../assets/img/trivia/cta-pink-02-bg.jpg)
}

.trivia.single .sc-trivia-ctaBanner.pink-02 .btn {
    background-image: url(../../assets/img/trivia/cta-pink-02-btn.png)
}

.trivia.single .sc-trivia-ctaBanner.green-02 {
    background-image: url(../../assets/img/trivia/cta-green-02-bg.jpg)
}

.trivia.single .sc-trivia-ctaBanner.green-02 .btn {
    background-image: url(../../assets/img/trivia/cta-green-02-btn.png)
}

.trivia.single .sc-trivia-ctaBanner.green-03:before,
.trivia.single .sc-trivia-ctaBanner.pink-03:before {
    padding-top: 52.25806%
}

.trivia.single .sc-trivia-ctaBanner.green-03 .btn,
.trivia.single .sc-trivia-ctaBanner.pink-03 .btn {
    bottom: 4.93827%;
    transform: translateX(0);
    width: 46.45161%
}

.trivia.single .sc-trivia-ctaBanner.green-03 .btn:before,
.trivia.single .sc-trivia-ctaBanner.pink-03 .btn:before {
    content: "";
    display: block;
    padding-top: 29.16667%
}

.trivia.single .sc-trivia-ctaBanner.green-03 .btn:first-child,
.trivia.single .sc-trivia-ctaBanner.pink-03 .btn:first-child {
    left: 2.74194%
}

.trivia.single .sc-trivia-ctaBanner.green-03 .btn:nth-child(2),
.trivia.single .sc-trivia-ctaBanner.pink-03 .btn:nth-child(2) {
    left: auto;
    right: 2.74194%
}

.trivia.single .sc-trivia-ctaBanner.pink-03 {
    background-image: url(../../assets/img/trivia/cta-pink-03-bg.jpg)
}

.trivia.single .sc-trivia-ctaBanner.pink-03 .btn:first-child {
    background-image: url(../../assets/img/trivia/cta-pink-03-01-btn.png)
}

.trivia.single .sc-trivia-ctaBanner.pink-03 .btn:nth-child(2) {
    background-image: url(../../assets/img/trivia/cta-pink-03-02-btn.png)
}

.trivia.single .sc-trivia-ctaBanner.green-03 {
    background-image: url(../../assets/img/trivia/cta-green-03-bg.jpg)
}

.trivia.single .sc-trivia-ctaBanner.green-03 .btn:first-child {
    background-image: url(../../assets/img/trivia/cta-green-03-01-btn.png)
}

.trivia.single .sc-trivia-ctaBanner.green-03 .btn:nth-child(2) {
    background-image: url(../../assets/img/trivia/cta-green-03-02-btn.png)
}

.trivia.single .sc-trivia-ctaBanner02 {
    background-image: url(../../assets/img/trivia/cta-green-04-bg.png);
    background-position: 50%;
    background-repeat: no-repeat;
    background-size: contain;
    margin: 10px 0 35px;
    position: relative
}

.trivia.single .sc-trivia-ctaBanner02:before {
    content: "";
    display: block;
    padding-top: 65.32258%
}

.trivia.single .sc-trivia-ctaBanner02 .btn {
    background-position: 50%;
    background-repeat: no-repeat;
    background-size: contain;
    left: 50%;
    position: absolute;
    transform: translateX(-50%);
    width: 79.35484%
}

.trivia.single .sc-trivia-ctaBanner02 .btn:hover {
    opacity: .9
}

.trivia.single .sc-trivia-ctaBanner02 .btn:before {
    content: "";
    display: block;
    padding-top: 16.66667%
}

.trivia.single .sc-trivia-ctaBanner02 .btn:first-child {
    background-image: url(../../assets/img/trivia/cta-green-04-01-btn.png);
    bottom: 31.11111%
}

.trivia.single .sc-trivia-ctaBanner02 .btn:nth-child(2) {
    background-image: url(../../assets/img/trivia/cta-green-04-02-btn.png);
    bottom: 6.66667%
}

.trivia.single .sc-trivia-info {
    border: 5px solid #faddea;
    font-size: 1.6rem;
    margin: 10px 0 35px;
    padding: 20px
}

.trivia.single .sc-trivia-info p {
    padding-bottom: 0
}

.trivia .trivia-ttl {
    color: #333;
    font-family: Shippori Mincho;
    font-size: 30px;
    font-weight: 700;
    letter-spacing: .04em;
    line-height: 40px;
    margin-bottom: 16px;
    position: relative;
    text-align: center
}

.trivia .c-post-date {
    color: #333;
    font-size: 14px;
    margin-top: 0
}

.trivia .c-list-item {
    padding-bottom: 2.8%
}

.trivia .c-list-btn {
    background: none;
    background-color: #fff
}

.trivia .c-list-link:hover .c-list-btn-wrap {
    opacity: .7
}

.voice-bg-inner,
.voice-bg-outer,
.voice-item,
.voice-link,
.voice-list {
    height: 100%
}

.voice-item {
    padding: 15px 0;
    position: relative
}

.voice-item:first-child {
    padding-top: 0
}

.voice-item:last-child {
    padding-bottom: 0
}

.voice-anchor {
    position: absolute;
    top: -152px
}

.voice-link {
    display: block;
    height: auto
}

.voice-bg-outer {
    border: 1px solid #c9c9c9;
    display: block;
    position: relative;
    -webkit-transition: all .25s ease-in-out;
    -ms-transition: all .25s ease-in-out;
    transition: all .25s ease-in-out
}

.voice-bg-outer:not(.mod-no-hover):hover {
    background-position: 100%
}

.voice-bg-inner {
    background-color: #fff;
    padding: 15px 16px 28px;
    position: relative
}

.voice-bg-inner.mod-img-mode {
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    padding: 35px 0
}

.voice-img-wrap {
    -webkit-box-ordinal-group: 2;
    -ms-flex-order: 1;
    order: 1;
    text-align: center;
    width: 220px
}

.voice-img-mask {
    border: 1px solid #dddae0;
    border-radius: 100%;
    height: 140px;
    margin: 0 auto;
    overflow: hidden;
    width: 140px
}

.voice-caption {
    color: #616262;
    font-size: 16px;
    font-size: 1.6rem;
    letter-spacing: .1em;
    line-height: 1.4;
    padding-top: 10px
}

.voice-contents {
    -webkit-box-ordinal-group: 3;
    -ms-flex-order: 2;
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    order: 2;
    padding-left: 2%;
    padding-right: 45px
}

.voice-subttl {
    color: #dc0250;
    font-family: ヒラギノ明朝 ProN W6, HiraMinProN-W6, HG明朝E, ＭＳ Ｐ明朝, MS PMincho, MS 明朝, serif;
    font-size: 24px;
    font-size: 2.4rem;
    line-height: 1.5;
    margin-bottom: 7px;
    padding-bottom: 3px
}

.mod-img-mode .voice-subttl {
    padding-top: 20px
}

.voice-info {
    -webkit-box-align: center;
    -webkit-align-items: center;
    align-items: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -ms-flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    margin: 0 -3px 20px
}

.voice-category {
    background: #1e7fb0;
    border-radius: 5px;
    color: #fff;
    display: inline-block;
    font-size: 15px;
    font-size: 1.5rem;
    letter-spacing: .1em;
    line-height: 1;
    margin: 3px;
    padding: 6px 8px;
    text-align: center;
    text-indent: .1em;
    -webkit-transition: all .25s ease-in-out;
    -ms-transition: all .25s ease-in-out;
    transition: all .25s ease-in-out
}

.voice .voice-category:hover {
    background: #fdeff4;
    border: 1px solid rgba(220, 2, 80, .471)
}

.voice-personal {
    color: #898989;
    font-size: 16px;
    font-size: 1.6rem;
    letter-spacing: .1em;
    margin-left: 20px
}

.voice-content {
    color: #262626;
    letter-spacing: -.01em
}

.voice-content p {
    font-size: 15px;
    font-size: 1.5rem;
    line-height: 1.75
}

.voice-btn-wrap {
    bottom: 40px;
    left: 60px;
    position: absolute
}

.voice-btn {
    color: #5294ce;
    display: inline-block;
    font-size: 16px;
    font-size: 1.6rem;
    font-weight: 700;
    letter-spacing: .1em;
    padding-right: 35px;
    position: relative
}

.voice-btn:after {
    background-image: url(../../assets/img/common/icon-arrow-03.svg);
    background-position: 0 0;
    background-repeat: no-repeat;
    background-size: 100%;
    content: "";
    height: 8px;
    position: absolute;
    right: 0;
    top: 50%;
    -webkit-transform: translateX(0) translateY(-50%);
    -moz-transform: translateX(0) translateY(-50%);
    -ms-transform: translateX(0) translateY(-50%);
    -o-transform: translateX(0) translateY(-50%);
    transform: translateX(0) translateY(-50%);
    width: 20px
}

@media screen and (max-width:767px) {
    .voice-anchor {
        position: absolute;
        top: -100px
    }

    .voice-img-wrap {
        width: 190px
    }

    .voice-caption {
        font-size: 14px;
        font-size: 1.4rem
    }

    .voice-contents {
        padding-left: 0;
        padding-right: 25px
    }

    .voice-bg-inner {
        padding: 30px
    }

    .voice-btn-wrap {
        bottom: 30px;
        left: auto;
        right: 30px
    }
}

@media screen and (max-width:640px) {
    .voice-anchor {
        position: absolute;
        top: -80px
    }

    .voice-bg-inner.mod-img-mode {
        display: block
    }

    .voice-img-wrap {
        -webkit-box-align: center;
        -webkit-align-items: center;
        align-items: center;
        display: -webkit-box;
        display: -ms-flexbox;
        display: -webkit-flex;
        display: flex;
        padding-left: 30px;
        padding-top: 30px;
        width: 100%
    }

    .voice-img-mask {
        margin: 0
    }

    .mod-img-mode .voice-subttl {
        padding-top: 0
    }

    .voice-caption {
        font-size: 18px;
        font-size: 1.8rem;
        padding-left: 20px
    }

    .voice-contents {
        padding: 0 30px
    }
}

@media screen and (max-width:480px) {
    .voice-anchor {
        position: absolute;
        top: -50px
    }

    .voice-item {
        padding: 10px 0
    }

    .voice-bg-inner {
        padding: 15px 16px 21px
    }

    .voice-bg-inner.mod-img-mode {
        padding: 25px 0
    }

    .voice-img-wrap {
        padding-left: 20px;
        padding-top: 20px
    }

    .voice-img-mask {
        height: 70px;
        width: 70px
    }

    .voice-caption {
        font-size: 13px;
        font-size: 1.3rem;
        padding-left: 10px
    }

    .voice-contents {
        padding: 0 20px
    }

    .voice-subttl {
        font-weight: 400;
        margin-bottom: 0
    }

    .voice-info {
        margin-bottom: 10px
    }

    .voice-category {
        letter-spacing: 0;
        padding: 5px 16px
    }

    .voice-personal {
        font-size: 12px;
        font-size: 1.2rem;
        margin-left: 10px
    }

    .voice-btn-wrap {
        bottom: 15px;
        right: 15px
    }

    .voice-btn {
        font-size: 13px;
        font-size: 1.3rem
    }
}

.voice .voice-bg-inner {
    border-radius: 10px;
    padding: 16px 18px
}

.voice .voice-ttl {
    color: #333;
    font-family: Shippori Mincho;
    font-size: 30px;
    font-weight: 700;
    letter-spacing: .04em;
    line-height: 40px;
    margin-bottom: 16px;
    position: relative;
    text-align: center
}

.voice .voice-bg-outer {
    border: none;
    border-radius: 0
}

.voice .voice-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin: 0 -.3%
}

.voice .voice-item {
    border: 1px solid #ddd;
    border-radius: 10px;
    margin: 0 .5% 30px;
    width: 49%
}

.voice .voice-info {
    margin: 0 -3px 16px
}

.voice .voice-subttl {
    border: none;
    color: #333;
    font-family: Shippori Mincho;
    font-size: 24px;
    font-weight: 600;
    letter-spacing: 1.4px;
    line-height: 23px;
    margin-bottom: 11px
}

.voice .voice-subttl span {
    color: #dc0250;
    font-size: 42px
}

.voice .voice-content p {
    color: #000;
    font-family: Noto Sans JP;
    font-size: 16px;
    letter-spacing: 1.6px;
    line-height: 32px
}

.voice .voice-category {
    background: transparent;
    border: 1px solid #dc0250;
    border-radius: 5px;
    color: #dc0250;
    min-width: auto;
    padding: 5px 15px
}

.voice .voice-content-outer {
    border-top: 1px solid #ddd;
    color: #616262;
    font-size: 18px;
    font-size: 1.8rem;
    letter-spacing: .01em;
    line-height: 2;
    padding: 13px 20px 20px
}

.voice .voice-content-outer>p {
    color: #dc0250;
    font-size: 14px;
    line-height: 28px
}

.voice .voice-content-outer div {
    display: flex;
    justify-content: space-between
}

.voice .voice-content-outer div a {
    align-items: center;
    border: 1px solid #ddd;
    border-radius: 10px;
    color: #333;
    display: flex;
    font-size: 14px;
    height: 40px;
    letter-spacing: 1px;
    line-height: 17px;
    margin-top: 4px;
    padding: 2px 20px 2px 10px;
    position: relative;
    text-decoration: none;
    width: 50%
}

.voice .voice-content-outer div a:first-child {
    margin-right: 10px
}

.voice .voice-content-outer div a:after {
    background-image: url(../../assets/img/common/renewal/icon_arrow.png);
    background-position: 0 0;
    background-repeat: no-repeat;
    background-size: 100% 100%;
    content: " ";
    height: 15px;
    position: absolute;
    right: 8px;
    top: 37%;
    width: 9px;
    z-index: 0
}

.pager {
    padding-top: 29px
}

.pager a {
    background: transparent;
    color: #333;
    font-family: Noto Sans JP;
    font-size: 16px;
    height: 30px;
    line-height: 26px;
    width: 30px
}

.pager a.nextpostslink {
    background: transparent;
    position: relative
}

.pager a.nextpostslink:hover {
    background: transparent
}

.pager a.nextpostslink img {
    height: 16px;
    width: 9px
}

.pager a.previouspostslink,
.pager a.prevpostslink {
    background: transparent;
    position: relative
}

.pager a.previouspostslink:hover,
.pager a.prevpostslink:hover {
    background: transparent
}

.pager a.previouspostslink img,
.pager a.prevpostslink img {
    height: 16px;
    width: 9px
}

.pager span {
    color: #333
}

.pager span,
.pager span.current {
    background: transparent;
    font-family: Noto Sans JP;
    font-size: 16px;
    height: 30px;
    line-height: 26px;
    width: 30px
}

.pager span.current {
    color: #e8529a;
    cursor: default
}

.pager span.extend {
    background: transparent;
    color: #333;
    font-family: Noto Sans JP;
    font-size: 16px;
    height: 30px;
    line-height: 26px;
    width: 30px
}

@media screen and (max-width:800px) {
    .voice .voice-item {
        width: 100%
    }
}

@media screen and (max-width:600px) {
    .voice .voice-content-outer div {
        display: block
    }

    .voice .voice-content-outer div a {
        padding: 10px 20px 10px 10px;
        width: 100%
    }

    .voice .voice-content-outer div a:first-child {
        margin-bottom: 10px;
        margin-right: 0
    }
}

@media screen and (max-width:360px) {
    .voice .voice-subttl {
        font-size: 22px;
        line-height: 32px
    }

    .voice .voice-content p {
        font-size: 14px;
        line-height: 32px
    }

    .voice .voice-content-outer div a {
        font-size: 13px;
        line-height: 17px
    }
}

.web-catalog__wrap {
    padding-bottom: 80px
}

@media screen and (max-width:768px) {
    .web-catalog__wrap {
        padding-bottom: 60px
    }
}

.web-catalog__head {
    background-color: #e282b0;
    padding: 80px 20px 120px;
    text-align: center
}

@media screen and (max-width:768px) {
    .web-catalog__head {
        padding: 50px 20px 120px
    }
}

.web-catalog__head-title {
    color: #fff;
    font-family: "Noto Serif JP", Yu Mincho, YuMincho, Hiragino Mincho ProN, Hiragino Mincho Pro, HG明朝B, MS Mincho, serif;
    font-size: 2.8rem;
    margin: 0 auto;
    max-width: 802px;
    width: 100%
}

@media screen and (max-width:768px) {
    .web-catalog__head-title {
        font-size: 1.5rem
    }
}

.web-catalog__head-title img {
    display: block;
    margin: 0 auto 20px;
    max-height: 101px
}

.web-catalog__head-lead {
    color: #fff;
    font-family: "Noto Serif JP", Yu Mincho, YuMincho, Hiragino Mincho ProN, Hiragino Mincho Pro, HG明朝B, MS Mincho, serif;
    font-size: 1.6rem;
    margin: 25px auto 0;
    max-width: 802px;
    width: 100%
}

@media screen and (max-width:768px) {
    .web-catalog__head-lead {
        font-size: 1.4rem
    }
}

.web-catalog__head+.web-catalog__item {
    margin: -85px auto 0
}

.web-catalog__item .lp-banner-bloc {
    max-width: 880px
}

.web-catalog__item .lp-banner-bloc--pricecp {
    margin: 0 auto
}

@media screen and (max-width:768px) {
    .web-catalog__item {
        padding: 0 20px
    }
}

.web-catalog__item-img {
    margin: 0 auto;
    width: 100%
}

.web-catalog__item-img img {
    display: block;
    margin: 0 auto
}

.web-catalog__item-title {
    color: #e595bc;
    font-family: "Noto Serif JP", Yu Mincho, YuMincho, Hiragino Mincho ProN, Hiragino Mincho Pro, HG明朝B, MS Mincho, serif;
    font-size: 3.6rem;
    margin-top: -30px;
    text-align: center
}

@media screen and (max-width:768px) {
    .web-catalog__item-title {
        font-size: 2.3rem;
        margin-top: 0
    }
}

.web-catalog__item-btn {
    line-height: 1.2;
    margin-top: 40px
}

@media screen and (max-width:768px) {
    .web-catalog__item-btn {
        margin-top: 20px
    }
}

.web-catalog__item-btn img {
    margin-right: 20px
}

@media screen and (max-width:768px) {
    .web-catalog__item-btn img {
        margin-right: 15px
    }
}

.web-catalog__item+.web-catalog__item {
    margin-top: 80px
}

@media screen and (max-width:768px) {
    .web-catalog__item+.web-catalog__item {
        margin-top: 40px
    }
}

.about .c-section {
    padding-top: 60px
}

.about .c-heading {
    background-color: #fbe9ca;
    background-image: -webkit-gradient(linear, left top, right top, from(#fbe9ca), color-stop(51%, #f7c3d8), to(#fbe9ca));
    background-image: linear-gradient(90deg, #fbe9ca 0, #f7c3d8 51%, #fbe9ca);
    background-size: 200% auto
}

.about .c-heading-ttl {
    color: #dc6695
}

.about-announce {
    margin: 60px auto 0;
    max-width: 800px;
    padding: 0 20px
}

.about-announce-inner {
    align-items: center;
    background: #fdf0f6;
    display: flex;
    padding: 10px;
    -webkit-transition: all .25s ease-in-out;
    transition: all .25s ease-in-out
}

.about-announce-img-wrap {
    flex-shrink: 0;
    width: 155px
}

.about-announce-img-wrap img {
    height: auto;
    width: 100%
}

.about-announce-contents {
    padding-left: 20px
}

.about-section-wrap {
    margin-top: 50px
}

.about-section {
    margin-top: 70px;
    position: relative
}

.about-section:first-child {
    margin-top: 0
}

.about-announce-ttl {
    color: #292427;
    font-family: "Noto Serif JP", serif;
    font-size: 20px;
    font-size: 2rem;
    font-weight: 600;
    line-height: 1.5;
    margin-bottom: 15px
}

.about-announce-body {
    color: #616262;
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 1.5
}

.about-section-inner {
    display: flex;
    justify-content: space-between
}

.about-section:nth-child(odd) .about-section-inner {
    flex-flow: row-reverse
}

.about-section-bg-wrap {
    padding-right: 38px;
    width: 53.125%
}

.about-section:nth-child(2n) .about-section-bg-wrap {
    padding-left: 38px;
    padding-right: 0
}

.about-section-bg-wrap picture img {
    max-width: inherit;
    width: 100%
}

.about-contents {
    width: 49.875%
}

.about-contents-inner.-first {
    align-items: flex-start;
    display: flex;
    flex-direction: row-reverse
}

.about-contents-inner.-first .about-ttl {
    margin-bottom: 0;
    margin-right: 30px
}

.about-sequence {
    color: #dc0250;
    font-family: Shippori Mincho, "sans-serif";
    font-size: 50px;
    letter-spacing: .1em;
    line-height: 31px;
    margin-bottom: 30px
}

.about-section:nth-child(odd) .about-sequence {
    text-align: left
}

.about-ttl {
    color: #333;
    font-family: Shippori Mincho, serif;
    font-size: 35px;
    font-weight: 600;
    letter-spacing: .05em;
    line-height: 45px;
    margin-bottom: 31px
}

.about-ttl span {
    display: block
}

.about-ttl.mod-border {
    background-image: url(../../assets/img/about/bg-bar-01-pc.png);
    background-position: 0 100%;
    margin-bottom: 20px
}

.about-content {
    color: #333;
    font-size: 18px;
    letter-spacing: .09em;
    line-height: 34px;
    padding: 0 0 6px 3px;
    text-align: justify
}

.about-note {
    color: #888;
    font-size: 14px;
    letter-spacing: .08em;
    line-height: 21px;
    padding-left: 1em;
    padding-top: 4px;
    text-indent: -1em
}

.about-note.mod-no-pt {
    padding-top: 0
}

.about-comment-wrap {
    -webkit-box-align: start;
    -webkit-align-items: center;
    align-items: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    margin-top: 20px
}

.about-comment-img-wrap {
    flex-shrink: 0;
    height: 155px;
    overflow: hidden;
    position: relative;
    -webkit-transition: all .25s ease-in-out;
    transition: all .25s ease-in-out;
    width: 155px
}

.about-comment {
    background: #fdf0f6;
    border-radius: 10px;
    color: #292427;
    font-family: "Noto Serif JP", serif;
    font-size: 20px;
    font-size: 2rem;
    font-weight: 600;
    line-height: 1.5;
    margin-left: 25px;
    padding: 20px;
    position: relative;
    text-align: justify
}

.about-comment.staff-comment {
    background: #e7f7f6
}

.about-comment:before {
    background: #fdf0f6;
    content: "";
    height: 30px;
    left: -15px;
    margin-top: -15px;
    position: absolute;
    top: 50%;
    -webkit-transform: rotate(45deg) skew(-10deg, -10deg);
    transform: rotate(45deg) skew(-10deg, -10deg);
    width: 30px;
    z-index: 1
}

.about-comment.staff-comment:before {
    background: #e7f7f6
}

.about-comment-lead {
    position: relative;
    z-index: 3
}

.about-comment-note {
    font-size: 18px;
    font-size: 1.8rem
}

.about-bnr-wrap {
    margin-top: 50px
}

.about-bnr-inner {
    margin-top: 30px;
    text-align: left
}

.about-bnr-inner:first-child {
    margin-top: 0
}

.about-bnr-inner .c-page-body {
    text-align: left
}

.about-bnr-inner.lay2bl {
    display: flex
}

.about-bnr-inner.lay2bl>a,
.about-bnr-inner.lay2bl>picture {
    padding-right: 50px;
    width: 53.125%
}

.about-bnr-inner.lay2bl .c-page-body {
    width: 46.875%
}

.about-bnr-inner.lay2bl .c-page-body .c-btn {
    margin-left: inherit;
    margin-right: inherit
}

.about-bnr-ttl {
    color: #e8529a;
    font-family: "Noto Serif JP", serif;
    font-size: 36px;
    font-size: 3.6rem;
    font-weight: 600;
    line-height: 1.4;
    margin-bottom: 30px
}

.about-bnr-img-wrap {
    margin: 0 -5px
}

.about-bnr-link {
    display: block;
    padding: 5px;
    -webkit-transition: all .25s ease-in-out;
    transition: all .25s ease-in-out
}

.about-bnr-link:hover {
    opacity: .7
}

.about-bnr-txt {
    color: #616262;
    font-size: 18px;
    font-size: 1.8rem;
    letter-spacing: .1em;
    line-height: 1.6;
    margin-top: 10px
}

#enkei-datsumou-com .about-bnr-ttl {
    font-size: 30px;
    font-size: 3rem
}

.about-supervise {
    margin-top: 10px
}

.about-supervise-ttl {
    color: #898989;
    font-size: 17px;
    font-size: 1.7rem;
    font-weight: 700;
    letter-spacing: .1em;
    line-height: 1.4
}

.about-supervise-body {
    color: #898989;
    font-size: 15px;
    font-size: 1.5rem;
    letter-spacing: .1em;
    line-height: 1.6;
    margin-top: 5px
}

.about-btn-wrap {
    padding-top: 30px
}

@media screen and (max-width:900px) {
    .about-sequence {
        line-height: .8em
    }

    .about-ttl {
        font-size: 32px;
        line-height: 42px
    }

    .about-content {
        font-size: 18px
    }

    .about-note {
        font-size: 16px
    }
}

@media screen and (min-width:769px) and (max-width:900px) {
    .about .c-section {
        padding-top: 25px
    }
}

@media screen and (max-width:768px) {
    .about-section-inner {
        display: block
    }

    .about-contents-inner {
        padding: 0;
        width: 100%
    }

    .about-ttl {
        font-size: 30px;
        line-height: 44px
    }

    .about-contents {
        width: 100%
    }

    .about-contents-inner.-first {
        display: block
    }

    .about-contents-inner.-first .about-ttl {
        margin-bottom: 20px;
        margin-right: 0
    }

    .about-sequence {
        font-size: 45px;
        margin-bottom: 12px
    }

    .about-section:nth-child(odd) .about-sequence {
        text-align: left
    }

    .about-ttl {
        letter-spacing: .03em;
        margin-bottom: 13px
    }

    .about-content,
    .about-content p {
        font-size: 16px;
        letter-spacing: .07em;
        line-height: 28px;
        padding: 0
    }

    .about-note {
        font-size: 14px;
        line-height: 21px
    }

    .about-section-bg-wrap,
    .about-section:nth-child(2n) .about-section-bg-wrap {
        height: auto;
        margin: 32px 0 0;
        padding: 0;
        width: 100%
    }

    .about-announce-inner {
        background: #fdf0f6;
        display: block;
        margin: 0 0 30px;
        padding: 15px;
        -webkit-transition: all .25s ease-in-out;
        transition: all .25s ease-in-out
    }

    .about-comment {
        font-size: 18px;
        font-size: 1.8rem;
        margin-left: 20px;
        padding: 20px
    }

    .about-comment.mod-reverse,
    .about-section:nth-child(2n) .about-comment {
        margin-right: 20px
    }

    .about-comment:before {
        left: -4px;
        -webkit-transform: rotate(45deg) skew(-20deg, -20deg);
        transform: rotate(45deg) skew(-20deg, -20deg)
    }

    .about-comment.mod-reverse:before,
    .about-section:nth-child(2n) .about-comment:before {
        right: -4px
    }

    .about-comment-note {
        font-size: 16px;
        font-size: 1.6rem
    }
}

@media screen and (max-width:640px) {
    .about-announce-inner {
        border-width: 6px 0;
        min-height: 150px
    }

    .about-announce-img-wrap {
        margin: 0 auto 20px;
        max-width: 200px;
        width: 100%
    }

    .about-announce-contents {
        padding: 0
    }

    .about-announce-ttl {
        text-align: center
    }
}

@media screen and (max-width:480px) {
    .about .c-section {
        padding-top: 25px
    }

    .about-announce {
        margin: 20px 0 0;
        padding: 0 10px
    }

    .about-section-inner {
        padding: 0 10px
    }

    .about-ttl span {
        display: inline
    }

    .about-content {
        padding-bottom: 0
    }

    .about-note {
        padding-top: 3px
    }

    .about-comment {
        font-size: 16px;
        font-size: 1.6rem;
        padding: 15px
    }

    .about-comment-img-wrap {
        height: 110px;
        width: 110px
    }

    .about-comment-note {
        font-size: 14px;
        font-size: 1.4rem
    }

    .about-bnr-inner.lay2bl {
        display: block
    }

    .about-bnr-inner.lay2bl>a,
    .about-bnr-inner.lay2bl>picture {
        margin-bottom: 15px;
        padding: 0;
        width: 100%
    }

    .about-bnr-inner.lay2bl .c-page-body {
        width: 100%
    }

    .about-bnr-ttl {
        font-size: 26px;
        font-size: 2.6rem;
        line-height: 1.385;
        margin: 15px 0 10px
    }

    .about-bnr-txt {
        font-size: 16px;
        font-size: 1.6rem
    }

    .about-supervise {
        margin-top: 10px
    }

    .about-supervise-ttl {
        font-size: 15px;
        font-size: 1.5rem
    }

    .about-supervise-body {
        font-size: 13px;
        font-size: 1.3rem
    }

    .about-btn-wrap {
        padding-top: 20px
    }
}

@media screen and (min-width:481px) {
    .about-bnr-img-wrap {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex
    }
}

#about-semiorder .about-section-wrap {
    margin-top: 0
}

#about-semiorder .about-section-inner {
    display: block
}

#about-semiorder .about-body,
#about-semiorder .about-ttl {
    text-align: center
}

#about-semiorder #reason .c-page-ttl-wrap {
    margin-bottom: 50px
}

#about-semiorder #reason .about-content {
    padding-bottom: 70px
}

#about-semiorder #reason .about-content:last-child {
    padding-bottom: 0
}

#about-semiorder #reason .reason-h3 {
    color: #e8529a;
    font-family: "Noto Serif JP", serif;
    font-size: 30px;
    font-weight: 600;
    margin-bottom: 20px;
    text-align: center
}

#about-semiorder #reason .reason-h3 sup {
    font-size: .8em;
    line-height: 1;
    vertical-align: .3em
}

#about-semiorder #reason .about-ttl-up {
    align-items: center;
    color: #e595bb;
    display: flex;
    font-family: "Noto Serif JP", serif;
    font-size: 16px;
    font-weight: 600;
    justify-content: center;
    line-height: 1.4375
}

#about-semiorder #reason .about-ttl-up .small {
    white-space: nowrap
}

#about-semiorder #reason .about-ttl-up .num {
    font-family: Oswald, "sans-serif";
    font-size: 100px;
    font-weight: 400;
    line-height: 1;
    margin: -.1em 0 10px 10px
}

#about-semiorder #reason dl dt {
    background: #e595bb;
    color: #fdf0f6;
    font-family: "Noto Serif JP", serif;
    font-size: 30px;
    font-weight: 600;
    line-height: 1.467;
    padding: 16px 20px;
    text-align: center
}

#about-semiorder #reason dl dt .alignment-head {
    display: inline-block;
    text-align: left
}

#about-semiorder #reason dl dd {
    background: #fdf0f6;
    padding: 20px;
    text-align: center
}

.semiorder-img06 img {
    height: auto;
    width: 100%
}

#about-semiorder #cospa {
    margin-top: 0
}

#about-semiorder #before-choice .about-section-inner,
#about-semiorder #changing .about-section-inner,
#about-semiorder #cospa .about-section-inner {
    border-bottom: 1px solid #e595bb;
    padding-bottom: 20px
}

#about-semiorder #changing .chart-img {
    margin: 25px 0 10px
}

#about-semiorder #changing .chart-note {
    font-size: .875em;
    margin-bottom: 25px;
    text-align: center
}

#about-semiorder #changing .about-content {
    text-align: center
}

#about-semiorder #cospa h3 {
    color: #292427;
    font-family: "Noto Serif JP", serif;
    font-size: 32px;
    font-size: 3.2rem;
    font-weight: 600;
    margin: 35px 0 25px;
    text-align: center
}

@media screen and (max-width:480px) {
    #about-semiorder #reason .reason-h3 {
        font-size: 26px;
        font-size: 2.6rem;
        line-height: 1.5;
        margin-bottom: 10px
    }

    #about-semiorder #reason dl dt {
        font-size: 18px;
        font-size: 1.8rem;
        padding: 10px
    }

    #about-semiorder #reason dl dd {
        padding: 10px
    }
}

.about-submenu {
    margin-top: 30px
}

.about-submenu .submenu-list ul {
    display: flex;
    justify-content: center;
    margin: 0 auto;
    max-width: 960px
}

.about-submenu .submenu-list ul li {
    flex: 1 1 100%;
    max-width: 300px
}

.about-submenu .submenu-list ul li a {
    justify-content: center;
    max-width: 100%
}

.about-submenu .submenu-list ul li a:hover {
    background-color: #fdeff4
}

.about-submenu .submenu-list ul li+li {
    margin-left: 20px
}

@media screen and (max-width:767px) {
    .about-submenu .submenu-list ul {
        display: block;
        padding: 0 15px
    }

    .about-submenu .submenu-list ul li {
        max-width: 100%
    }

    .about-submenu .submenu-list ul li+li {
        margin-left: auto;
        margin-top: 15px
    }
}

#about-for-customer .about-section-inner {
    display: block
}

#about-for-customer .about-contents {
    width: 100%
}

#about-for-customer .about-comment {
    background: #e7f7f6;
    border-radius: 10px;
    color: #292427;
    font-family: Noto Sans JP, sans-serif;
    font-size: 18px;
    font-size: 1.8rem;
    font-weight: 400;
    line-height: 1.5;
    margin-left: 25px;
    padding: 20px;
    position: relative;
    text-align: justify
}

#about-for-customer .about-comment:before {
    background: #e7f7f6;
    content: "";
    height: 30px;
    left: -15px;
    margin-top: -15px;
    position: absolute;
    top: 50%;
    -webkit-transform: rotate(45deg) skew(-10deg, -10deg);
    transform: rotate(45deg) skew(-10deg, -10deg);
    width: 30px;
    z-index: 1
}

@media screen and (max-width:480px) {
    #about-for-customer .about-comment-wrap.inner {
        padding: 0
    }

    #about-for-customer .about-comment-wrap {
        display: block;
        margin-top: 20px
    }

    #about-for-customer .about-comment-img-wrap {
        height: 150px;
        margin: 0 auto;
        overflow: hidden;
        width: 150px
    }

    #about-for-customer .about-comment {
        font-size: 14px;
        font-size: 1.4rem;
        line-height: 1.5;
        margin: 25px 0 0;
        padding: 15px
    }

    #about-for-customer .about-comment:before {
        background: #e7f7f6;
        content: "";
        height: 30px;
        left: 50%;
        margin-left: -15px;
        position: absolute;
        top: 5px;
        -webkit-transform: rotate(45deg) skew(10deg, 10deg);
        transform: rotate(45deg) skew(10deg, 10deg);
        width: 30px;
        z-index: 1
    }

    #enkei-datsumou-com .about-bnr-ttl {
        font-size: 26px;
        font-size: 2.6rem;
        line-height: 1.385;
        margin: 15px 0 10px
    }
}

#heart-pj {
    text-align: center
}

.about-bnr-link.link-heart-pj {
    margin-top: 30px
}

.blink {
    flex: 1 0 auto;
    width: 100%
}

.blink-inner {
    margin: 0 auto;
    max-width: 900px;
    padding: 78px 10px 21px
}

.blink-contents {
    position: relative
}

.blink-ttl {
    color: #333;
    font-family: Shippori Mincho, sans-serif;
    font-size: 45px;
    font-weight: 500;
    letter-spacing: .05em;
    line-height: 1.5;
    margin-bottom: 36px;
    padding: 5px 10px;
    text-align: center
}

.blink-ttl span {
    display: block;
    font-size: 28px
}

.blink-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -ms-flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    max-width: 1020px
}

.blink-item {
    margin: 0 10px 10px 0;
    padding: 0;
    width: calc(33.33333% - 7px)
}

.blink-item:last-child,
.blink-item:nth-of-type(3n+3) {
    margin-right: 0
}

.blink-list--two {
    padding: 0 16.9%
}

.blink-list--two .blink-item {
    margin: 0 10px 13px 0;
    width: calc(50% - 7px)
}

.blink-list--two .blink-item:nth-of-type(3n+3) {
    margin-right: 13px
}

.blink-list--two .blink-item:last-child,
.blink-list--two .blink-item:nth-of-type(2n+2) {
    margin-right: 0
}

.blink-btn {
    background-color: #fff;
    border: 1px solid #ddd;
    border-radius: 10px;
    color: #333;
    display: inline-flex;
    flex-direction: column;
    font-size: 16px;
    height: 50px;
    justify-content: center;
    letter-spacing: .08em;
    line-height: 26px;
    padding: 0 20px;
    position: relative;
    text-align: left;
    text-decoration: none;
    -webkit-transition: all .3s ease;
    transition: all .3s ease;
    width: 100%
}

.blink-btn span {
    display: block;
    font-size: 13px;
    line-height: 11px
}

.blink-btn:after {
    background-image: url(../../assets/img/common/renewal/icon_arrow.png);
    background-position: 0 0;
    background-repeat: no-repeat;
    background-size: 100% 100%;
    content: " ";
    height: 15px;
    position: absolute;
    right: 6%;
    top: 37%;
    width: 9px;
    z-index: 0
}

.blink-btn.current,
.blink-btn:hover {
    background-color: #fdeff4
}

.blink-btn:hover {
    opacity: 1
}

@media screen and (max-width:1200px) {
    .blink-ttl {
        font-size: 38px
    }

    .blink-list--two {
        padding: 0
    }
}

@media screen and (min-width:768px) and (max-width:900px) {
    .blink-ttl .mod-en {
        font-size: 40px;
        font-size: 4rem;
        padding-right: 5px
    }

    .blink-ttl .mod-ja {
        letter-spacing: .05em;
        padding-left: 15px
    }

    .blink-ttl .mod-ja,
    .blink-ttl .mod-ja:after {
        font-size: 15px;
        font-size: 1.5rem
    }
}

@media screen and (max-width:767px) {
    .blink-btn:after {
        height: 12px;
        width: 8px
    }

    .blink-ttl {
        font-size: 30px;
        margin-bottom: 25px
    }

    .blink-ttl span {
        font-size: 18px
    }

    .blink-inner {
        padding: 48px 10px 20px
    }

    .blink-item {
        width: calc(50% - 6px)
    }

    .blink-item:nth-of-type(odd) {
        margin-right: 10px
    }

    .blink-item:nth-of-type(2n) {
        margin-right: 0
    }

    .blink-btn {
        border-radius: 5px;
        height: 53px;
        letter-spacing: 0;
        line-height: 30px;
        padding: 0 7px
    }
}

@media screen and (max-width:480px) {
    .blink-ttl .mod-en {
        font-size: 30px;
        font-size: 3rem;
        padding-right: 10px
    }

    .blink-ttl .mod-ja {
        padding-left: 15px
    }

    .blink-ttl .mod-ja,
    .blink-ttl .mod-ja:after {
        font-size: 13px;
        font-size: 1.3rem
    }
}

@media screen and (max-width:400px) {
    .blink-ttl {
        font-size: 28px
    }

    .blink-btn {
        font-size: 15px;
        line-height: 20px;
        padding: 0 20px 0 7px
    }

    .blink-btn span {
        font-size: 11px
    }
}

@media screen and (max-width:320px) {
    .blink-ttl {
        font-size: 24px
    }
}

.about-sc-ttl {
    color: #333;
    font-family: Shippori Mincho, sans-serif;
    font-size: 45px;
    font-weight: 500;
    letter-spacing: .05em;
    line-height: 1.5;
    margin-bottom: 30px;
    padding: 10px 20px;
    text-align: center
}

@media screen and (max-width:1200px) {
    .about-sc-ttl {
        font-size: 38px
    }
}

@media screen and (max-width:767px) {
    .about-sc-ttl {
        font-size: 30px;
        margin-bottom: 25px;
        padding: 0
    }
}

.about-sc-link {
    display: inline-block;
    font-size: 1.6rem;
    font-size: 16px;
    margin-top: 0;
    text-decoration: underline
}

@media screen and (max-width:767px) {
    .about-sc-link {
        margin-top: 10px
    }
}

.about .about__support .c-section-container {
    border-top: 1px solid #dc0250;
    margin-top: 101px;
    padding-top: 98px
}

.about .about__support .c-section-container:first-child {
    margin-top: 32px
}

.about .about__support .c-section-container.second-section .c-page-body p {
    line-height: 32px
}

.about .about__support .c-section-container.third-section .about-bnr-inner.lay2bl {
    margin-top: 51px
}

.about .about__support .c-section-container.third-section .c-page-body p {
    margin-bottom: 31px
}

.about .about__support .c-page-ttl {
    font-family: Shippori Mincho;
    font-size: 45px;
    letter-spacing: 3px;
    line-height: 45px;
    margin: 0 auto 15px
}

.about .about__support .c-page-ttl span {
    color: #dc0250;
    font-size: 50px;
    line-height: 28px
}

.about .about__support .c-page-body p {
    font-size: 16px;
    letter-spacing: 1.35px;
    line-height: 32px
}

.about .about__support .about-bnr-wrap {
    margin-top: 98px
}

.about .about__support .about-bnr-inner picture img {
    height: auto;
    max-width: 100%
}

.about .about__support .about-bnr-inner.lay2bl {
    margin-top: 40px
}

.about .about__support .about-bnr-inner.lay2bl>picture {
    margin-top: 6px;
    padding-right: 42px;
    width: 52%
}

.about .about__support .about-bnr-inner.lay2bl .c-page-body {
    width: 65.55%
}

.about .about__support .about-bnr-inner.lay2bl .c-page-body h3 {
    font-size: 30px
}

.about .about__support .about-bnr-ttl {
    color: #333;
    font-family: Shippori Mincho;
    font-size: 35px;
    letter-spacing: 1.5px;
    line-height: 32px
}

.about .about__support .about-btn-wrap.c-btn-wrap {
    display: none
}

.about .about__support .c-btn-renewal.c-btn-renewal--about-support {
    margin-top: 29px;
    max-width: 100%
}

.about .about__support .about-bnr-inner-renewal {
    margin: 95px auto auto;
    max-width: 900px;
    padding: 0 10px;
    text-align: center
}

.about .about__support .about-bnr-inner-renewal .c-page-body p {
    letter-spacing: 1.14px
}

.about .about__support .about-bnr-inner-renewal .c-btn-renewal.c-btn-renewal--about-support {
    max-width: 520px
}

.about .about__support .c-btn-renewal a[href]:not([class]),
.about .about__support .c-btn-renewal a[href]:not([class]):visited {
    letter-spacing: .03em;
    padding: 0 18px
}

.about .about__support .c-btn-renewal a[href]:not([class]):after,
.about .about__support .c-btn-renewal a[href]:not([class]):visited:after {
    right: 3%
}

@media screen and (max-width:800px) {
    .about .about__support .about-bnr-inner.lay2bl {
        display: block
    }

    .about .about__support .about-bnr-inner.lay2bl>picture {
        margin-bottom: 10px;
        margin-top: 0;
        padding-right: 0;
        width: 100%
    }

    .about .about__support .about-bnr-inner.lay2bl .c-page-body {
        width: 100%
    }

    .about .about__support .c-section-container {
        margin-top: 50px;
        padding-top: 50px
    }

    .about .about__support .c-page-ttl {
        font-size: 40px;
        line-height: 50px
    }
}

@media screen and (max-width:480px) {
    .about .about__support .c-page-ttl {
        font-size: 40px
    }

    .about .about__support .about-bnr-ttl {
        font-size: 30px;
        letter-spacing: 0;
        line-height: 35px
    }

    .about .about__support .about-bnr-inner-renewal,
    .about .about__support .about-bnr-wrap {
        margin-top: 50px
    }
}

.about-section--salon {
    margin-top: 99px
}

.about-section--salon p.content {
    font-size: 16px;
    letter-spacing: .09em;
    line-height: 32px;
    margin: -22px 0 20px;
    text-align: center
}

@media screen and (max-width:767px) {
    .about-section--salon p.content {
        letter-spacing: .08em;
        line-height: 30px;
        margin-bottom: 29px
    }
}

@media screen and (max-width:400px) {
    .about-section--salon p.content {
        text-align: left
    }
}

@media screen and (max-width:360px) {
    .about-section--salon p.content {
        font-size: 14px
    }
}

.about-section--salon p.content span {
    display: block
}

@media screen and (max-width:767px) {
    .about-section--salon p.content span {
        display: inline
    }
}

.about-section--faq {
    margin-top: 99px
}

.about__top .about-section-wrap {
    margin-top: 91px
}

.about__top .about-section {
    margin-top: 96px
}

.about__top .about-section:first-child {
    margin-top: 0
}

.about__top .about-section--customer {
    margin-top: 118px
}

@media screen and (max-width:800px) {
    .about__top .about-section-wrap {
        margin-top: 52px
    }

    .about__top .about-section {
        margin-top: 69px
    }

    .about__top .about-section--customer {
        margin-top: 97px
    }

    .about__top .about-section--faq,
    .about__top .about-section--salon {
        margin-top: 101px
    }
}

@media screen and (max-width:480px) {
    .about__top .page-inner {
        padding: 47px 0 0
    }
}

.about-section .footer-contact {
    border-bottom: 0
}

.about .about__service .about-section {
    margin-top: 99px
}

.about .about__service .about-section-inner {
    max-width: 1100px;
    padding: 0 10px
}

.about .about__service .about-section:nth-child(2n) .about-section-bg-wrap {
    padding-left: 0;
    padding-right: 38px
}

.about .about__service .about-section-bg-wrap {
    padding-left: 38px;
    padding-right: 0
}

.about .about__service .about-sequence {
    align-items: center;
    display: flex;
    font-weight: 700;
    margin-bottom: 26px
}

.about .about__service .about-sequence span {
    font-size: 18px;
    font-weight: 600;
    letter-spacing: 1px;
    line-height: 26px;
    margin-left: 18px
}

.about .about__service .about-sequence span.new {
    background: #dc0250;
    border-radius: 25px;
    color: #fff;
    font-family: Bodoni Moda;
    font-size: 27px;
    line-height: 19px;
    padding: 10px 9px 14px
}

.about .about__service .about-ttl {
    margin-bottom: 33px
}

.about .about__service .about-content {
    font-size: 16px;
    letter-spacing: .07em;
    line-height: 32px
}

.about .about__service .about-note {
    letter-spacing: .06em
}

.about .about__service .introduction-body {
    letter-spacing: .06em;
    margin-top: 20px;
    max-width: 730px
}

.about .about__service .introduction-body p {
    line-height: 32px
}

@media screen and (max-width:800px) {
    .about .c-section {
        padding-top: 44px
    }

    .about .about__service .about-section:nth-child(n+3) {
        margin-top: 61px
    }

    .about .about__service .about-section:nth-child(n+3) .about-section-inner .about-content {
        line-height: 28px
    }

    .about .about__service .c-page-ttl-wrap {
        padding: 0 10px
    }

    .about .about__service .about-sequence span {
        font-size: 15px;
        letter-spacing: 0
    }

    .about .about__service .about-sequence span.new {
        font-size: 20px;
        line-height: 19px;
        padding: 5px 9px 8px
    }

    .about .about__service section.about-section {
        margin-top: 70px
    }

    .about .about__service section.about-section .about-contents,
    .about .about__service section.about-section .about-section-bg-wrap {
        width: 100%
    }

    .about .about__service .page-inner {
        padding-top: 9px
    }

    .about .about__service .c-page-body {
        letter-spacing: .05em;
        line-height: 28px
    }

    .about .about__service .about-sequence {
        margin-bottom: 10px
    }

    .about .about__service .about-ttl {
        margin-bottom: 24px
    }

    .about .about__service .about-content {
        letter-spacing: 1px;
        line-height: 32px
    }

    .about .about__service .about-note {
        letter-spacing: .05em;
        line-height: 23px
    }

    .about .about__service .about-section-bg-wrap,
    .about .about__service .about-section:nth-child(2n) .about-section-bg-wrap {
        margin-top: 0;
        padding-bottom: 19px;
        padding-left: 0;
        padding-right: 0
    }

    .about .about__service .c-section-inner>section.about-section {
        margin-top: 0
    }

    .about .about__service .c-section-inner>section.about-section .inner {
        padding-top: 50px
    }

    .about .about__service .c-btn-column-wrap>*,
    .about .about__service .c-section-inner>section.about-section:nth-child(3n) .c-btn-renewal-about__service {
        border-radius: 5px;
        font-size: 14px
    }

    .about .about__service .about-section-wrap {
        padding: 0
    }
}

.about-catalog-ttl h2 {
    background: #fdf0f6;
    border-left: 5px solid #e595bb;
    color: #e8529a;
    font-size: 23px;
    height: 54px;
    line-height: 1.5;
    margin-bottom: 28px;
    margin-top: 20px;
    padding: 8px 10px
}

.about-catalog {
    height: auto;
    position: relative
}

.about-catalog .catalog-list-item {
    box-sizing: border-box;
    padding: 0 15px;
    width: 33.33%
}

.about-catalog .catalog-list-img-wrap {
    padding-top: 0
}

.about-catalog .catalog-list-img-wrap img {
    height: auto;
    position: relative;
    top: 0;
    width: 100%
}

.about-catalog .about-catalog-list-ttl {
    font-family: "Noto Serif JP", serif;
    font-size: 16px;
    margin-top: .5em;
    min-height: 0
}

.about-catalog .support-price {
    background: #fdf0f6;
    color: #e8529a;
    font-family: "Noto Serif JP", serif;
    font-size: 16px;
    margin: 15px 0;
    padding: 2px 3px 10px 6px
}

.about-catalog .support-price span {
    font-family: Oswald;
    font-size: 26px
}

.about-catalog .flare-rate {
    color: #323333;
    font-family: "Noto Serif JP", serif;
    font-size: 16px
}

.catalog-more {
    float: right;
    margin: 20px 0;
    position: relative
}

.catalog-more a,
.catalog-more a[href]:not([class]),
.catalog-more a[href]:not([class]):visited {
    -webkit-appearance: none;
    color: #333;
    color: #e8529a;
    cursor: pointer;
    font-family: Noto Sans JP, sans-serif;
    font-size: 16px;
    font-weight: 400;
    height: 50px;
    letter-spacing: .08em;
    line-height: 20px;
    outline: none;
    padding: 0 21px;
    text-decoration: none;
    width: 100%
}

.catalog-more a:before,
.catalog-more a[href]:not([class]):before,
.catalog-more a[href]:not([class]):visited:before {
    background-image: url(../../assets/img/common/pink_more.png);
    background-position: 0 0;
    background-repeat: no-repeat;
    background-size: 100% 100%;
    content: "";
    height: 13px;
    left: 3px;
    margin-top: -15px;
    position: absolute;
    top: 95%;
    width: 8px;
    z-index: 0
}

@media screen and (max-width:980px) {
    .about-catalog .support-price span {
        font-size: 19px
    }
}

@media screen and (max-width:768px) {
    .about-catalog .catalog-list-item {
        padding: 0 15px 3.5%;
        width: 50%
    }

    .about-catalog .support-price {
        font-size: 14px
    }

    .about-catalog .support-price span {
        font-size: 20px
    }

    .about-catalog .flare-rate {
        font-size: 14px
    }

    .about-catalog-ttl h2 {
        font-size: 16px;
        padding: 3px 10px
    }

    .catalog-more a,
    .catalog-more a[href]:not([class]),
    .catalog-more a[href]:not([class]):visited {
        font-size: 14px
    }
}

@media screen and (max-width:480px) {
    .about-catalog .catalog-list-item {
        padding: 20px 0;
        width: 100%
    }

    .about-catalog .catalog-list-img-wrap {
        padding-top: 0
    }

    .about-catalog .catalog-list-img-wrap img {
        height: auto;
        position: relative;
        top: 0;
        -webkit-transform: translateX(-50%);
        transform: translateX(-50%);
        width: 100%
    }
}

.event-banner {
    margin-bottom: 40px
}

.event-banner .only-pc {
    display: block
}

@media screen and (max-width:769px) {
    .event-banner .only-pc {
        display: none
    }
}

.event-banner .only-sp {
    display: none
}

@media screen and (max-width:769px) {
    .event-banner .only-sp {
        display: block
    }
}

.event-item {
    margin: 30px 0;
    position: relative
}

.event-item:first-child {
    margin-top: 0
}

.event-item:last-child {
    margin-bottom: 0
}

.event-anchor {
    position: absolute;
    top: -152px
}

.event-item[data-status=end]:before,
.event-item[data-status=new]:before {
    background-position: 0 0;
    background-repeat: no-repeat;
    background-size: contain;
    content: "";
    height: 90px;
    left: 0;
    position: absolute;
    top: 0;
    width: 90px;
    z-index: 1
}

.event-item[data-status=new]:before {
    background-image: url(../../assets/img/event/icon-new-01.png)
}

.event-item[data-status=end]:before {
    background-image: url(../../assets/img/event/icon-end-01.png)
}

.event-bg-outer {
    border: 5px solid #7b79c7;
    border-top: none;
    display: block;
    position: relative;
    -webkit-transition: all .25s ease-in-out;
    transition: all .25s ease-in-out
}

[data-status=end] .event-bg-outer {
    background-color: #c4c4c4;
    background-image: none
}

.event-bg-inner {
    background-color: #fff;
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    padding: 30px 25px;
    position: relative
}

.event-img-wrap {
    padding-right: 4%;
    width: 29%
}

.event-img {
    border: 1px solid #eeeeed;
    margin-top: 5px
}

.event-contents {
    width: 100%
}

.event-img-wrap+.event-contents {
    width: 71%
}

.event-subttl {
    background: #7b79c7;
    color: #fff;
    font-size: 24px;
    font-size: 2.4rem;
    padding: 20px
}

.event-item[data-status=end] .event-subttl,
.event-item[data-status=new] .event-subttl {
    padding-left: 80px
}

.event-info {
    -webkit-box-align: center;
    -webkit-align-items: center;
    align-items: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    margin-bottom: 20px
}

.event-category {
    background: #b0afdc;
    color: #fff;
    display: inline-block;
    font-size: 14px;
    font-size: 1.4rem;
    letter-spacing: .1em;
    line-height: 1;
    min-width: 120px;
    padding: 6px 5px;
    text-align: center;
    text-indent: .1em;
    -webkit-transition: all .25s ease-in-out;
    transition: all .25s ease-in-out
}

.event-category:hover {
    background-color: #5294ce;
    color: #fff
}

.event-venue {
    color: #292427;
    font-size: 18px;
    font-size: 1.8rem;
    margin-left: 1em
}

.event-dlist {
    font-size: 0
}

.event-term {
    color: #292427;
    display: inline-block;
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 1.8;
    margin-bottom: .5em;
    position: relative;
    vertical-align: top;
    width: 120px;
    z-index: 1
}

.event-term [class*=" icon-"],
.event-term [class^=icon-] {
    color: #7b79c7;
    font-size: 16px;
    font-size: 1.6rem;
    padding-right: 10px
}

.event-desc {
    color: #675961;
    display: inline-block;
    font-size: 16px;
    font-size: 1.6rem;
    margin-bottom: .5em;
    margin-left: -120px;
    padding-left: 150px;
    vertical-align: top;
    width: 100%
}

.event-desc .mod-shop {
    display: inline-block;
    margin-right: 20px
}

.event-desc .mod-tel {
    color: #d84c8b;
    display: inline-block;
    letter-spacing: .16em
}

.event-desc .mod-extension {
    display: inline-block
}

.event-content {
    border-top: 1px dotted #5294ce;
    color: #616262;
    font-size: 20px;
    font-size: 2rem;
    letter-spacing: .16em;
    line-height: 1.6;
    margin-top: 5px;
    padding-top: 15px
}

.event-btn-wrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    padding-top: 20px
}

.event-btn {
    border: 1px solid #5294ce;
    color: #04477d;
    display: inline-block;
    font-size: 16px;
    font-size: 1.6rem;
    font-weight: 700;
    padding: 17px 10px;
    position: relative;
    width: 240px
}

.event-btn:before {
    padding-right: 10px
}

.event-btn.mod-invitation {
    background-color: #6f4b60;
    border-color: #6f4b60;
    color: #fff
}

.event-btn.mod-invitation:hover {
    background-color: transparent;
    color: #6f4b60
}

.event-btn.mod-invitation:hover:after {
    background-color: #fff
}

.event-btn.mod-shop {
    background-color: #eb6aa7;
    border-color: #eb6aa7;
    color: #fff;
    margin-left: 30px
}

.event-btn.mod-shop:hover {
    background-color: transparent;
    color: #eb6aa7
}

.event-btn.mod-shop:hover:after {
    background-color: #fff
}

.event-btn span {
    padding-right: 10px
}

@media screen and (max-width:900px) {
    .event-img-wrap {
        width: 230px
    }

    .event-img-wrap+.event-contents {
        width: calc(100% - 230px)
    }
}

@media screen and (max-width:767px) {
    .event-anchor {
        position: absolute;
        top: -100px
    }

    .event-img-wrap {
        display: none
    }

    .event-contents,
    .event-img-wrap+.event-contents {
        width: 100%
    }

    .event-btn.mod-shop {
        margin-left: 15px
    }
}

@media screen and (max-width:640px) {
    .event-anchor {
        position: absolute;
        top: -80px
    }

    .event-bg-inner {
        padding: 40px 25px 35px
    }
}

@media screen and (max-width:480px) {
    .event-anchor {
        position: absolute;
        top: -50px
    }

    .event-item[data-status=end]:before,
    .event-item[data-status=new]:before {
        height: 50px;
        width: 50px
    }

    .event-bg-outer {
        border-width: 6px
    }

    .event-bg-inner {
        padding: 20px 20px 25px
    }

    .event-subttl {
        font-size: 18px;
        font-size: 1.8rem
    }

    .event-item[data-status=end] .event-subttl,
    .event-item[data-status=new] .event-subttl {
        padding-left: 40px
    }

    .event-category {
        font-size: 12px;
        font-size: 1.2rem;
        min-width: 90px;
        padding: 4px 5px
    }

    .event-venue {
        margin-left: 15px
    }

    .event-term,
    .event-venue {
        font-size: 14px;
        font-size: 1.4rem
    }

    .event-term {
        margin-bottom: 0;
        width: 100px
    }

    .event-term:before {
        font-size: 13px;
        font-size: 1.3rem
    }

    .event-desc,
    .event-term [class*=" icon-"],
    .event-term [class^=icon-] {
        font-size: 14px;
        font-size: 1.4rem
    }

    .event-desc {
        margin-bottom: 5px;
        margin-left: -100px;
        padding-left: 100px
    }

    .event-desc .mod-shop {
        margin-right: 10px
    }

    .event-content {
        font-size: 16px;
        font-size: 1.6rem;
        padding-top: 10px
    }

    .event-btn-wrap {
        -webkit-box-direction: normal;
        -webkit-box-align: center;
        -webkit-align-items: center;
        align-items: center;
        -webkit-flex-direction: column;
        flex-direction: column;
        padding-top: 20px
    }

    .event-btn {
        font-size: 16px;
        font-size: 1.6rem;
        max-width: 100%;
        padding: 15px 10px;
        width: 250px
    }

    .event-btn:before {
        padding-right: 5px
    }

    .event-btn.mod-shop {
        margin-left: 0;
        margin-top: 15px
    }

    .event-btn span {
        padding-right: 5px
    }
}

.introduction .c-section {
    padding-bottom: 80px;
    padding-top: 60px
}

.introduction .c-page-body {
    padding: 40px 0 60px
}

.introduction-section-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin: 0 -10px
}

.introduction-section {
    margin-top: 60px;
    padding-top: 20px;
    position: relative
}

.introduction-section:first-child {
    margin-top: 40px
}

.introduction-section-list .introduction-section {
    margin-top: 40px;
    width: 50%
}

.introduction-section-inner.c-section-inner {
    max-width: 820px
}

.introduction-ttl {
    color: #e8529a;
    font-family: "Noto Serif JP", serif;
    font-size: 36px;
    font-size: 3.6rem;
    letter-spacing: .1em;
    line-height: 1.2;
    margin-bottom: 10px;
    text-align: center
}

.introduction-section-list .introduction-ttl {
    font-size: 28px;
    font-size: 2.8rem;
    margin-bottom: 20px
}

.introduction-subttl {
    font-size: 20px;
    font-size: 2rem
}

.introduction-body {
    color: #616262;
    font-size: 18px;
    font-size: 1.8rem;
    letter-spacing: .1em;
    line-height: 1.8;
    margin: 0 auto;
    max-width: 740px;
    padding-bottom: 30px;
    text-align: center
}

.introduction-movie {
    padding-top: 56.25%;
    position: relative;
    width: 100%
}

.introduction-movie img,
.introduction-movie-iframe {
    height: 100% !important;
    position: absolute;
    right: 0;
    top: 0;
    width: 100% !important
}

.introduction-movie img {
    cursor: pointer;
    -webkit-transition: all .25s ease-in-out;
    -ms-transition: all .25s ease-in-out;
    transition: all .25s ease-in-out
}

.introduction-movie img:hover {
    opacity: .7
}

.introduction-btn {
    margin: 40px 0 20px
}

.introduction-btn-wrap {
    padding-top: 40px
}

@media screen and (max-width:900px) {
    .introduction-ttl {
        font-size: 30px;
        font-size: 3rem
    }

    .introduction-section-list .introduction-ttl {
        font-size: 24px;
        font-size: 2.4rem
    }

    .introduction-subttl {
        font-size: 26px;
        font-size: 2.6rem
    }

    .introduction-body {
        font-size: 18px;
        font-size: 1.8rem
    }
}

@media screen and (min-width:768px) and (max-width:900px) {
    .introduction .c-section {
        padding-top: 25px
    }
}

@media screen and (max-width:767px) {
    .introduction .c-section {
        padding-top: 45px
    }

    .introduction .c-page-body {
        padding: 10px 0 30px
    }

    .introduction-section-list {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column
    }

    .introduction-section {
        margin-top: 30px
    }

    .introduction-section:first-child {
        margin-top: 10px
    }

    .introduction-section-list .introduction-section {
        margin-top: 20px;
        width: 100%
    }

    .introduction-section-list .introduction-section:first-child {
        margin-top: 20px
    }

    .introduction-section-list .introduction-section-inner.c-section-inner {
        padding: 0 10px
    }

    .introduction-ttl {
        margin-bottom: 20px
    }

    .introduction-section-list .introduction-ttl {
        font-size: 30px;
        font-size: 3rem;
        margin-bottom: 15px
    }

    .introduction-body {
        font-size: 16px;
        font-size: 1.6rem;
        padding: 0 15px 20px;
        text-align: left
    }
}

@media screen and (max-width:480px) {
    .introduction .c-section {
        padding-top: 25px
    }

    .introduction-section-list .introduction-ttl,
    .introduction-ttl {
        font-size: 21px;
        font-size: 2.1rem
    }

    .introduction-subttl {
        font-size: 14px;
        font-size: 1.4rem
    }
}

.btn_border_pink {
    background-color: #fff;
    border: 1px solid #dc0250;
    border-radius: 100px;
    color: #dc0250;
    display: block;
    margin: 0 auto 20px;
    padding: 1.2rem 1.4rem;
    position: relative;
    text-align: center;
    transition: .3s;
    width: 88%
}

.btn_border_pink:last-of-type {
    margin-bottom: 0
}

.btn_border_pink:after {
    background: url(../../assets/img/service/btn_border_pink_arrow.svg) no-repeat;
    background-size: cover;
    content: "";
    display: block;
    height: 16px;
    position: absolute;
    right: 15px;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    width: 20px
}

@media (min-width:768px) {
    .btn_border_pink {
        width: 285px
    }

    .btn_border_pink:hover {
        background-color: #dc0250;
        color: #fff;
        transition: .3s
    }

    .btn_border_pink:hover:after {
        background: url(../../assets/img/service/btn_border_arrow_on.svg) no-repeat;
        background-size: cover
    }
}

.btn_border_black {
    margin: 0 auto 20px;
    padding: 1.2rem 1.4rem
}

@media (min-width:768px) {
    .btn_border_black {
        width: 285px
    }

    .btn_border_black:hover {
        background-color: #262626;
        color: #fff;
        transition: .3s
    }

    .btn_border_black:hover:after {
        background: url(../../assets/img/service/btn_border_arrow_on.svg) no-repeat;
        background-size: cover
    }
}

#introduction.wrapper {
    height: auto
}

#introduction .inner {
    padding: 0 20px
}

@media (min-width:768px) {
    #introduction .inner {
        margin: 0 auto;
        max-width: 1000px;
        padding: 0
    }
}

#introduction .hero {
    background-color: #f7f6f8
}

#introduction .hero .hero_inner {
    background: url(../../assets/img/introduction/introduction_bg_sp.png) no-repeat bottom;
    background-size: 100%;
    height: 450px;
    padding: 40px 20px 0;
    position: relative
}

@media (min-width:360px) {
    #introduction .hero .hero_inner {
        height: 500px
    }
}

@media (min-width:420px) {
    #introduction .hero .hero_inner {
        align-items: center;
        background: url(../../assets/img/introduction/introduction_bg.png) no-repeat 50%;
        background-size: cover;
        display: flex;
        height: 33vw;
        justify-content: center;
        padding: 0 20px
    }
}

@media (min-width:1031px) {
    #introduction .hero .hero_inner {
        background: url(../../assets/img/introduction/introduction_bg.png) no-repeat 50%;
        background-size: cover;
        height: 330px;
        margin: 0 auto;
        max-width: 100%;
        padding: 0
    }

    #introduction .hero .txt {
        width: 38%
    }
}

#introduction .hero h2 {
    border-bottom: 1px solid #dc0250;
    color: #dc0250;
    font-size: 2.4rem;
    font-weight: 700;
    line-height: 1.5;
    margin-bottom: 10px;
    padding-bottom: 10px
}

@media (min-width:420px) {
    #introduction .hero h2 {
        font-size: 4vw;
        margin-bottom: 2vw;
        padding-bottom: 2vw
    }
}

@media (min-width:1300px) {
    #introduction .hero h2 {
        font-size: 4.4rem
    }
}

@media (min-width:1031px) {
    #introduction .hero h2 {
        font-size: 3.5rem;
        letter-spacing: -.07em;
        line-height: 1.5;
        margin-bottom: 24px;
        padding-bottom: 18px
    }
}

#introduction .hero h2 .sub {
    display: block;
    font-size: 2rem
}

@media (min-width:420px) {
    #introduction .hero h2 .sub {
        font-size: 2.4vw
    }
}

@media (min-width:1031px) {
    #introduction .hero h2 .sub {
        font-size: 2.4rem
    }
}

#introduction .hero .catch {
    font-size: 1.2rem;
    font-weight: 700;
    line-height: 1.6
}

@media (max-width:420px) {
    #introduction .hero .catch {
        position: absolute;
        right: 10%;
        width: 150px
    }
}

@media (min-width:420px) {
    #introduction .hero .catch {
        font-size: 1.6vw
    }
}

@media (min-width:1031px) {
    #introduction .hero .catch {
        font-size: 1.6rem;
        line-height: 2
    }
}

#introduction .introduction_movie {
    padding-bottom: 40px;
    padding-top: 30px
}

@media (min-width:768px) {
    #introduction .introduction_movie {
        padding-bottom: 100px;
        padding-top: 90px
    }

    #introduction .introduction_movie .title_block {
        display: flex;
        justify-content: center
    }
}

#introduction .introduction_movie .title_block .tag {
    text-align: center
}

#introduction .introduction_movie .title_block .tag span {
    background-color: #ed80a7;
    border-radius: 8px;
    color: #fff;
    display: inline-block;
    font-size: 1.7rem;
    margin-bottom: 10px;
    padding: .5rem 1.5rem
}

@media (min-width:768px) {
    #introduction .introduction_movie .title_block .tag span {
        font-size: 2.3rem;
        margin-right: 22px
    }
}

#introduction .introduction_movie .title_block h3 {
    color: #e64e84;
    font-size: 2.3rem;
    font-weight: 500;
    line-height: 1.4;
    margin-bottom: 4.8rem;
    text-align: center
}

@media (min-width:768px) {
    #introduction .introduction_movie .title_block h3 {
        font-size: 2.8rem;
        line-height: 1.2
    }
}

#introduction .introduction_movie .title_block h3 .sub {
    display: block;
    font-size: 1.8rem;
    margin-top: 1rem
}

@media (min-width:768px) {
    #introduction .introduction_movie .title_block h3 .sub {
        font-size: 2.2rem
    }
}

#introduction .introduction_movie .movie_area {
    margin: 0 auto;
    max-width: 660px
}

#introduction .introduction_support {
    background: url(../../assets/img/introduction/bg_grd_down.png) repeat-x top #e2f4fb;
    margin-bottom: 20px;
    padding-bottom: 50px;
    padding-top: 40px
}

#introduction .introduction_support .support_wrap {
    background-color: #f4fbfd;
    margin-bottom: 40px;
    padding: 40px 0 50px
}

@media (min-width:768px) {
    #introduction .introduction_support .support_wrap {
        margin: 0 auto 50px;
        max-width: 1000px
    }
}

#introduction .introduction_support .support_wrap h3 {
    border-bottom: 1px solid #262626;
    border-top: 1px solid #262626;
    font-size: 2.1rem;
    line-height: 1.5;
    margin: 0 20px 1rem;
    padding: 1.4rem 0;
    text-align: center
}

@media (min-width:768px) {
    #introduction .introduction_support .support_wrap h3 {
        font-size: 3.4vw;
        margin: 0 auto 30px;
        width: 60.5%
    }
}

@media (min-width:1031px) {
    #introduction .introduction_support .support_wrap h3 {
        font-size: 3.4rem
    }
}

#introduction .introduction_support .support_wrap .lead {
    font-size: 1.9rem;
    margin-bottom: 30px;
    text-align: center
}

@media (min-width:768px) {
    #introduction .introduction_support .support_wrap .lead {
        font-size: 2.3vw
    }
}

@media (min-width:1031px) {
    #introduction .introduction_support .support_wrap .lead {
        font-size: 2.3rem
    }
}

#introduction .introduction_support .support_wrap .img {
    padding: 0 10px;
    text-align: center
}

@media (min-width:768px) {
    #introduction .introduction_support .support_wrap .img {
        padding: 0 20px
    }
}

#introduction .introduction_support .doctor_column {
    background-color: #fff;
    padding: 20px;
    position: relative
}

#introduction .introduction_support .doctor_column h4 {
    align-items: center;
    background-color: #bbe7f5;
    border-radius: 50%;
    color: #fff;
    display: flex;
    font-size: 5.87vw;
    height: 29.33vw;
    justify-content: center;
    left: 10px;
    line-height: 1.4;
    position: absolute;
    text-align: center;
    top: -15px;
    width: 29.33vw
}

@media (min-width:420px) {
    #introduction .introduction_support .doctor_column h4 {
        font-size: 2.2rem;
        height: 110px;
        left: 30px;
        width: 110px
    }
}

@media (min-width:768px) {
    #introduction .introduction_support .doctor_column .group {
        display: flex;
        justify-content: space-between
    }
}

#introduction .introduction_support .doctor_column .group .prof {
    align-items: flex-end;
    display: flex;
    justify-content: space-between;
    margin-bottom: 20px
}

@media (min-width:768px) {
    #introduction .introduction_support .doctor_column .group .prof {
        width: 37.18%
    }
}

#introduction .introduction_support .doctor_column .group .prof h5 {
    font-size: 5.67vw;
    line-height: 1.4;
    margin-bottom: 5.33vw
}

@media (min-width:420px) {
    #introduction .introduction_support .doctor_column .group .prof h5 {
        font-size: 2.5rem;
        margin-bottom: 20px
    }
}

@media (min-width:768px) {
    #introduction .introduction_support .doctor_column .group .prof h5 {
        font-size: 3.13vw;
        margin-bottom: 0
    }
}

@media (min-width:1031px) {
    #introduction .introduction_support .doctor_column .group .prof h5 {
        font-size: 3rem
    }
}

#introduction .introduction_support .doctor_column .group .prof h5 .sub {
    display: block;
    font-size: 3.47vw
}

@media (min-width:420px) {
    #introduction .introduction_support .doctor_column .group .prof h5 .sub {
        font-size: 1.3rem
    }
}

@media (min-width:768px) {
    #introduction .introduction_support .doctor_column .group .prof h5 .sub {
        font-size: 1.67vw
    }
}

@media (min-width:1031px) {
    #introduction .introduction_support .doctor_column .group .prof h5 .sub {
        font-size: 1.6rem
    }
}

#introduction .introduction_support .doctor_column .group .prof h5 .small {
    font-size: 3.47vw;
    margin-left: 5px
}

@media (min-width:420px) {
    #introduction .introduction_support .doctor_column .group .prof h5 .small {
        font-size: 1.3rem
    }
}

@media (min-width:768px) {
    #introduction .introduction_support .doctor_column .group .prof h5 .small {
        font-size: 1.67vw
    }
}

@media (min-width:1031px) {
    #introduction .introduction_support .doctor_column .group .prof h5 .small {
        font-size: 1.6rem
    }
}

#introduction .introduction_support .doctor_column .group .prof .ph {
    width: 41.87vw
}

@media (min-width:420px) {
    #introduction .introduction_support .doctor_column .group .prof .ph {
        width: 157px
    }
}

@media (min-width:1031px) {
    #introduction .introduction_support .doctor_column .group .prof .ph {
        width: 173px
    }
}

@media (min-width:768px) {
    #introduction .introduction_support .doctor_column .group .txt {
        width: 58.84%
    }
}

#introduction .introduction_support .doctor_column .group .txt h5 {
    border-bottom: 1px solid #bbe7f5;
    font-size: 2.6rem;
    font-weight: 700;
    line-height: 1.4;
    margin-bottom: 1.6rem;
    padding-bottom: 1.6rem
}

@media (min-width:768px) {
    #introduction .introduction_support .doctor_column .group .txt h5 {
        font-size: 3vw;
        padding-bottom: 5px
    }
}

@media (min-width:1031px) {
    #introduction .introduction_support .doctor_column .group .txt h5 {
        font-size: 3rem
    }
}

#introduction .introduction_support .doctor_column .group .txt dl dt {
    font-size: 1.9rem;
    font-weight: 500;
    margin-bottom: 1rem
}

@media (min-width:768px) {
    #introduction .introduction_support .doctor_column .group .txt dl dt {
        font-size: 2vw
    }
}

@media (min-width:1031px) {
    #introduction .introduction_support .doctor_column .group .txt dl dt {
        font-size: 2rem
    }
}

@media (min-width:768px) {
    #introduction .introduction_support .doctor_column .group .txt dl dd {
        font-size: 1.5rem
    }
}

#introduction .introduction_reason {
    background-color: #f7f6f8;
    padding-bottom: 50px;
    padding-top: 50px
}

@media (min-width:1031px) {
    #introduction .introduction_reason {
        padding-bottom: 100px;
        padding-top: 100px
    }
}

@media (min-width:768px) {
    #introduction .introduction_reason .inner {
        margin: 0 auto;
        max-width: 750px
    }
}

#introduction .introduction_reason h3 {
    margin: 0 auto 40px;
    width: 83%
}

@media (min-width:768px) {
    #introduction .introduction_reason h3 {
        margin-bottom: 58px;
        width: auto
    }
}

#introduction .introduction_reason .block {
    margin-bottom: 40px
}

@media (min-width:768px) {
    #introduction .introduction_reason .block {
        margin-bottom: 50px;
        padding-left: 100px;
        position: relative
    }

    #introduction .introduction_reason .block:before {
        content: "";
        display: block;
        height: 87px;
        left: 0;
        margin-right: 10px;
        position: absolute;
        top: -19px;
        width: 87px
    }
}

#introduction .introduction_reason .block h4 {
    align-items: center;
    color: #e5417c;
    display: inline-flex;
    font-size: 1.65rem;
    font-weight: 500;
    line-height: 1.6;
    margin-bottom: 10px;
    position: relative
}

#introduction .introduction_reason .block01 h4:after {
    color: #262626;
    content: "※";
    font-size: 12px;
    margin-top: 0;
    position: absolute;
    right: 27%;
    top: 68%
}

@media (min-width:768px) {
    #introduction .introduction_reason .block01 h4:after {
        display: block;
        font-size: 15px;
        right: -5%;
        top: 55%
    }
}

#introduction .introduction_reason .block p {
    font-size: 1.3rem
}

@media (min-width:1031px) {
    #introduction .introduction_reason .block h4 {
        font-size: 2.4rem
    }
}

#introduction .introduction_reason .block h4:before {
    content: "";
    display: block;
    flex: none;
    height: 57px;
    margin-right: 10px;
    width: 57px
}

@media (min-width:768px) {
    #introduction .introduction_reason .block h4 {
        font-size: 2.6rem
    }

    #introduction .introduction_reason .block h4:before {
        display: none
    }

    #introduction .introduction_reason .block p {
        font-size: 1.6rem
    }
}

#introduction .introduction_reason .block .txt {
    margin-bottom: 20px
}

#introduction .introduction_reason .block .img {
    text-align: center
}

@media (min-width:768px) {
    #introduction .introduction_reason .block .img {
        flex: none;
        margin-left: 20px;
        width: 240px
    }
}

#introduction .introduction_reason .block .group {
    border-top: 1px solid #f3a6c2;
    margin: 0 10px;
    padding-top: 20px
}

#introduction .introduction_reason .block span {
    color: #262626;
    display: block;
    font-size: 1.3rem;
    font-weight: 400;
    line-height: 1.5;
    margin-top: 13px
}

@media (min-width:768px) {
    #introduction .introduction_reason .block .group {
        display: flex;
        margin: 0
    }

    #introduction .introduction_reason .block span {
        font-size: 1.5rem
    }

    #introduction .introduction_reason .block01:before {
        background: url(../../assets/img/introduction/reason_num01.svg) no-repeat;
        background-size: cover
    }
}

#introduction .introduction_reason .block01 h4:before {
    background: url(../../assets/img/introduction/reason_num01.svg) no-repeat;
    background-size: cover
}

@media (min-width:768px) {
    #introduction .introduction_reason .block02:before {
        background: url(../../assets/img/introduction/reason_num02.svg) no-repeat;
        background-size: cover
    }
}

#introduction .introduction_reason .block02 h4:before {
    background: url(../../assets/img/introduction/reason_num02.svg) no-repeat;
    background-size: cover
}

@media (min-width:768px) {
    #introduction .introduction_reason .block03:before {
        background: url(../../assets/img/introduction/reason_num03.svg) no-repeat;
        background-size: cover
    }
}

#introduction .introduction_reason .block03 h4:before {
    background: url(../../assets/img/introduction/reason_num03.svg) no-repeat;
    background-size: cover
}

@media (min-width:768px) {
    #introduction .introduction_reason .block04:before {
        background: url(../../assets/img/introduction/reason_num04.svg) no-repeat;
        background-size: cover
    }
}

#introduction .introduction_reason .block04 h4:before {
    background: url(../../assets/img/introduction/reason_num04.svg) no-repeat;
    background-size: cover
}

#introduction .introduction_reason .btn_block p {
    margin-bottom: 10px;
    text-align: center
}

#introduction .introduction_voice {
    padding-bottom: 40px;
    padding-top: 60px
}

@media (min-width:768px) {
    #introduction .introduction_voice .inner {
        margin: 0 auto;
        max-width: 750px
    }
}

@media (min-width:1031px) {
    #introduction .introduction_voice .group {
        display: flex;
        justify-content: space-between
    }
}

#introduction .introduction_voice .box {
    border: 1px solid #c9c9c9;
    margin-bottom: 20px;
    padding: 20px
}

@media (min-width:1031px) {
    #introduction .introduction_voice .box {
        width: 49.07%
    }
}

#introduction .introduction_voice .box:last-child {
    margin-bottom: 0
}

@media (min-width:1031px) {
    #introduction .introduction_voice .box:nth-last-child(2) {
        margin-bottom: 0
    }
}

#introduction .introduction_voice .box .tag span {
    background-color: #1e7fb0;
    border-radius: 8px;
    color: #fff;
    display: inline-block;
    margin-bottom: 20px;
    padding: 6px 18px
}

#introduction .introduction_voice .box h4 {
    color: #dc0250;
    font-family: ヒラギノ明朝 ProN W6, HiraMinProN-W6, HG明朝E, ＭＳ Ｐ明朝, MS PMincho, MS 明朝, serif;
    font-size: 2.4rem;
    line-height: 1.6;
    margin-bottom: 20px
}

#introduction .introduction_voice .link_block {
    margin-top: 40px
}

@media (min-width:1031px) {
    #introduction .introduction_voice .link_block a span {
        justify-content: flex-end
    }
}

@media (min-width:768px) {
    #introduction .introduction_faq .inner {
        margin: 0 auto;
        max-width: 750px
    }
}

#introduction .introduction_faq .faq_block {
    background-color: #efecf2;
    line-height: 1.4;
    margin-bottom: 10px;
    padding: 20px 50px 20px 15px;
    position: relative
}

#introduction .introduction_faq .faq_block h4 {
    cursor: pointer;
    display: flex;
    font-size: 1.6rem;
    font-weight: 500
}

#introduction .introduction_faq .faq_block h4:before {
    color: #dc0250;
    content: "Q";
    display: block;
    flex: none;
    font-size: 3rem;
    line-height: 1;
    width: 36px
}

#introduction .introduction_faq .faq_block h4.active:after,
#introduction .introduction_faq .faq_block h4:after {
    color: #929292;
    display: block;
    font-size: 5rem;
    line-height: 1;
    position: absolute;
    right: 15px;
    top: 8px
}

#introduction .introduction_faq .faq_block h4:after {
    content: "+"
}

#introduction .introduction_faq .faq_block h4.active:after {
    content: "-"
}

#introduction .introduction_faq .faq_block .answer {
    display: none;
    padding-top: 20px
}

#introduction .introduction_faq .faq_block .answer .txt {
    display: flex;
    font-size: 1.5rem
}

#introduction .introduction_faq .faq_block .answer .txt:before {
    content: "A";
    display: block;
    flex: none;
    font-size: 3rem;
    font-weight: 500;
    line-height: 1;
    width: 36px
}

#introduction .introduction_faq .link_block {
    margin-bottom: 40px;
    margin-top: 40px
}

@media (min-width:1031px) {
    #introduction .introduction_faq .link_block a span {
        justify-content: flex-end
    }
}

#introduction .btn_group {
    border-top: 1px solid #909090;
    margin: 0 20px;
    padding-bottom: 60px;
    padding-top: 60px
}

@media (min-width:1031px) {
    #introduction .btn_group {
        display: flex;
        margin: 0 auto;
        max-width: 1000px
    }

    #introduction .btn_group a {
        margin-bottom: 0
    }
}

.p-pflecare-service .pinktext {
    color: #e8529a
}

.p-pflecare-service .redpinktext {
    color: #d50060
}

.p-pflecare-service .pc-i {
    display: inline !important
}

@media (max-width:767px) {
    .p-pflecare-service .pc-i {
        display: none !important
    }
}

.p-pflecare-service .sp-i {
    display: none !important
}

@media (max-width:767px) {
    .p-pflecare-service .sp-i {
        display: inline !important
    }
}

.p-pflecare-service .pc-ib {
    display: inline-block !important
}

@media (max-width:767px) {
    .p-pflecare-service .pc-ib {
        display: none !important
    }
}

.p-pflecare-service .sp-ib {
    display: none !important
}

@media (max-width:767px) {
    .p-pflecare-service .sp-ib {
        display: inline-block !important
    }
}

.p-pflecare-service .pc-b {
    display: block !important
}

@media (max-width:767px) {
    .p-pflecare-service .pc-b {
        display: none !important
    }
}

.p-pflecare-service .sp-b {
    display: none !important
}

@media (max-width:767px) {
    .p-pflecare-service .sp-b {
        display: block !important
    }
}

.p-pflecare-service .pc-only-b {
    display: block !important
}

@media (max-width:960px) {
    .p-pflecare-service .pc-only-b {
        display: none !important
    }
}

@media (max-width:767px) {
    .p-pflecare-service .pc-only-b {
        display: none !important
    }
}

.p-pflecare-service .tb-only-b {
    display: none !important
}

@media (max-width:960px) {
    .p-pflecare-service .tb-only-b {
        display: block !important
    }
}

@media (max-width:767px) {
    .p-pflecare-service .tb-only-b {
        display: none !important
    }
}

.p-pflecare-service .sp-only-b {
    display: none !important
}

@media (max-width:960px) {
    .p-pflecare-service .sp-only-b {
        display: none !important
    }
}

@media (max-width:767px) {
    .p-pflecare-service .sp-only-b {
        display: block !important
    }
}

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

.p-pflecare-service .serif {
    font-family: 游明朝, YuMincho, ヒラギノ明朝 ProN W3, Hiragino Mincho ProN, HG明朝E, ＭＳ Ｐ明朝, ＭＳ 明朝, serif
}

.p-pflecare-service .inner {
    margin: 0 auto;
    max-width: 960px;
    padding: 0
}

@media (max-width:960px) {
    .p-pflecare-service .inner {
        margin: 0 15px;
        max-width: 100%;
        padding: 0;
        width: auto
    }
}

.p-pflecare-service .services {
    color: #675961
}

.p-pflecare-service .services h2.copy {
    color: #e595bb;
    font-family: Yu Mincho Demibold;
    font-size: 4.2rem;
    padding: 70px 0 50px;
    text-align: center
}

@media (max-width:767px) {
    .p-pflecare-service .services h2.copy {
        font-size: 2.8rem;
        padding: 30px 0 50px
    }
}

.p-pflecare-service .services .article {
    padding: 0 0 74px
}

@media (max-width:767px) {
    .p-pflecare-service .services .article {
        padding: 0 0 50px
    }

    .p-pflecare-service .services .article:nth-child(2n) .topic {
        flex-wrap: wrap-reverse
    }
}

.p-pflecare-service .services .article:nth-child(2n) .topic .imageblock {
    width: 460px
}

@media (max-width:767px) {
    .p-pflecare-service .services .article:nth-child(2n) .topic .imageblock {
        width: auto
    }
}

.p-pflecare-service .services .article:nth-child(2n) .topic .textblock {
    margin: 0 0 0 50px;
    width: 450px
}

@media (max-width:767px) {
    .p-pflecare-service .services .article:nth-child(2n) .topic .textblock {
        margin: 0;
        width: auto
    }
}

.p-pflecare-service .services .article:nth-child(odd) .topic .imageblock {
    width: 460px
}

@media (max-width:767px) {
    .p-pflecare-service .services .article:nth-child(odd) .topic .imageblock {
        width: auto
    }
}

.p-pflecare-service .services .article:nth-child(odd) .topic .textblock {
    margin: 0 50px 0 0;
    width: 450px
}

@media (max-width:767px) {
    .p-pflecare-service .services .article:nth-child(odd) .topic .textblock {
        padding: 0;
        width: auto
    }
}

.p-pflecare-service .services .article .topic {
    display: flex;
    flex-wrap: nowrap
}

@media (max-width:767px) {
    .p-pflecare-service .services .article .topic {
        flex-wrap: wrap
    }
}

.p-pflecare-service .services .article .topic .textblock .num img {
    height: auto;
    width: auto
}

@media (max-width:767px) {
    .p-pflecare-service .services .article .topic .textblock .num img {
        height: 75px
    }
}

.p-pflecare-service .services .article .topic .textblock h3 {
    font-family: Yu Mincho Demibold;
    font-size: 3rem;
    line-height: 1.3;
    padding: 12px 0 0;
    white-space: nowrap
}

@media (max-width:767px) {
    .p-pflecare-service .services .article .topic .textblock h3 {
        font-size: 2.9rem;
        white-space: normal
    }
}

.p-pflecare-service .services .article .topic .textblock h3 span {
    display: block;
    font-size: 3.6rem;
    padding: 0
}

@media (max-width:767px) {
    .p-pflecare-service .services .article .topic .textblock h3 span {
        font-size: 2.4rem;
        padding: 0 0 3px
    }
}

.p-pflecare-service .services .article .topic .textblock h4 {
    font-size: 2rem;
    line-height: 1.5;
    padding: 16px 0 0
}

@media (max-width:767px) {
    .p-pflecare-service .services .article .topic .textblock h4 {
        font-size: 1.7rem
    }
}

.p-pflecare-service .services .article .topic .textblock h4 span {
    display: block;
    font-size: 1.6rem;
    padding: 10px 0 0
}

@media (max-width:767px) {
    .p-pflecare-service .services .article .topic .textblock h4 span {
        padding: 0
    }
}

.p-pflecare-service .services .article .topic .textblock .text {
    font-size: 1.6rem;
    line-height: 1.6;
    padding: 32px 0 0
}

@media (max-width:767px) {
    .p-pflecare-service .services .article .topic .textblock .text {
        font-size: 1.3rem;
        padding: 25px 0 0
    }
}

.p-pflecare-service .services .article .topic .imageblock {
    padding: 28px 0 0
}

.p-pflecare-service .services .mat {
    background-color: #fef0f6;
    margin: 74px 0 0;
    padding: 12px 36px
}

@media (max-width:767px) {
    .p-pflecare-service .services .mat {
        margin: 30px 0 0;
        padding: 6px 18px
    }
}

.p-pflecare-service .services .mat dl {
    padding: 25px 0
}

@media (max-width:767px) {
    .p-pflecare-service .services .mat dl {
        padding: 12px 0
    }
}

.p-pflecare-service .services .mat dl dt {
    padding: 0 0 20px
}

.p-pflecare-service .services .mat dl dt p {
    background-color: #fff;
    color: #e8529a;
    display: inline-block;
    font-size: 2.4rem;
    line-height: 50px;
    padding: 0 20px
}

@media (max-width:767px) {
    .p-pflecare-service .services .mat dl dt p {
        font-size: 1.5rem;
        line-height: 30px
    }
}

.p-pflecare-service .services .mat dl dd ul li {
    font-size: 1.6rem;
    line-height: 1.5;
    padding: 0 1em 1em 1.5em;
    text-indent: -1.5em
}

@media (max-width:767px) {
    .p-pflecare-service .services .mat dl dd ul li {
        font-size: 1.3rem
    }
}

.p-pflecare-service .services .mat dl dd ul li:last-child {
    padding-bottom: 0
}

.p-pflecare-service .services .mat dl dd ul li:before {
    background-color: #e8529a;
    content: "";
    display: inline-block;
    height: 1em;
    margin-right: .5em;
    width: 1em
}

.p-pflecare-service .services .flow {
    background-color: #fff;
    border-bottom: 6px solid #98bfe8;
    border-left: 6px solid #98bfe8;
    border-right: 6px solid #98bfe8;
    margin: 74px 0 0;
    position: relative
}

@media (max-width:767px) {
    .p-pflecare-service .services .flow {
        border-bottom: 3px solid #98bfe8;
        border-left: 3px solid #98bfe8;
        border-right: 3px solid #98bfe8;
        margin: 30px 0 0;
        padding: 0 0 15px
    }
}

.p-pflecare-service .services .flow h3 {
    background-color: #98bfe8;
    color: #fff;
    display: block;
    font-size: 2.4rem;
    line-height: 76px;
    text-align: center
}

@media (max-width:767px) {
    .p-pflecare-service .services .flow h3 {
        font-size: 2rem;
        line-height: 1.8;
        margin: 0 0 5px;
        padding: 0
    }
}

.p-pflecare-service .services .flow .inbox {
    background-color: #fff;
    display: flex;
    flex-wrap: nowrap;
    padding: 0
}

@media (max-width:767px) {
    .p-pflecare-service .services .flow .inbox {
        flex-wrap: wrap-reverse;
        padding: 0 15px
    }
}

.p-pflecare-service .services .flow .inbox .image {
    margin: 30px;
    text-align: center;
    width: 460px
}

@media (max-width:767px) {
    .p-pflecare-service .services .flow .inbox .image {
        margin: 5px 0 0;
        width: 100%
    }

    .p-pflecare-service .services .flow .inbox .image img {
        height: auto;
        width: 100%
    }
}

.p-pflecare-service .services .flow .inbox ol {
    margin: 18px 30px 18px 0;
    width: 390px
}

@media (max-width:767px) {
    .p-pflecare-service .services .flow .inbox ol {
        margin: 0;
        width: auto
    }
}

.p-pflecare-service .services .flow .inbox ol li {
    padding: 18px 0;
    position: relative
}

@media (max-width:767px) {
    .p-pflecare-service .services .flow .inbox ol li {
        padding: 8px 0
    }
}

.p-pflecare-service .services .flow .inbox ol li:last-child:after {
    display: none
}

.p-pflecare-service .services .flow .inbox ol li:after {
    background: url(../../assets/img/pflecare/service/tri_under_step.png) 0 0 no-repeat;
    background-position: 0 0;
    background-repeat: no-repeat;
    background-size: 24px 14px;
    bottom: 0;
    content: "";
    display: inline-block;
    height: 14px;
    left: 18px;
    margin-bottom: -8px;
    position: absolute;
    width: 24px
}

@media (max-width:767px) {
    .p-pflecare-service .services .flow .inbox ol li:after {
        background: url(../../assets/img/pflecare/service/sp/tri_under_step.png) 0 0 no-repeat;
        background-position: 0 0;
        background-repeat: no-repeat;
        background-size: 15px 10px;
        bottom: 0;
        height: 10px;
        left: 19px;
        margin-bottom: -5px;
        position: absolute;
        width: 15px
    }
}

.p-pflecare-service .services .flow .inbox ol li dl {
    display: table
}

.p-pflecare-service .services .flow .inbox ol li dl dt {
    display: table-cell;
    padding: 0;
    vertical-align: middle;
    width: 54px
}

@media (max-width:767px) {
    .p-pflecare-service .services .flow .inbox ol li dl dt {
        padding: 0
    }

    .p-pflecare-service .services .flow .inbox ol li dl dt img {
        height: 54px;
        width: 54px
    }
}

.p-pflecare-service .services .flow .inbox ol li dl dd {
    display: table-cell;
    font-size: 1.6rem;
    line-height: 1.5;
    padding: 0 0 0 14px;
    vertical-align: middle
}

@media (max-width:767px) {
    .p-pflecare-service .services .flow .inbox ol li dl dd {
        font-size: 1.3rem;
        line-height: 1.5;
        padding: 0 0 0 10px
    }
}

.p-pflecare-service .services .pricelist {
    background-color: #fff;
    border-bottom: 6px solid #edbad3;
    border-left: 6px solid #edbad3;
    border-right: 6px solid #edbad3;
    box-sizing: border-box;
    color: #000;
    font-size: 2.4rem;
    margin: 74px 0 0;
    padding: 0
}

@media (max-width:767px) {
    .p-pflecare-service .services .pricelist {
        border-bottom: 3px solid #edbad3;
        border-left: 3px solid #edbad3;
        border-right: 3px solid #edbad3;
        margin: 30px 0 0;
        padding: 0
    }
}

.p-pflecare-service .services .pricelist h4 {
    background-color: #edbad3;
    color: #fff;
    line-height: 76px;
    margin: 0 0 36px;
    text-align: center
}

@media (max-width:767px) {
    .p-pflecare-service .services .pricelist h4 {
        background-size: contain;
        font-size: 2rem;
        line-height: 32px;
        margin: 0 0 15px
    }
}

.p-pflecare-service .services .pricelist .pricewrap {
    padding: 0 30px
}

@media (max-width:767px) {
    .p-pflecare-service .services .pricelist .pricewrap {
        padding: 0 15px 15px
    }
}

.p-pflecare-service .services .pricelist .pricewrap .space {
    margin: 0 0 36px;
    width: 100%
}

@media (max-width:767px) {
    .p-pflecare-service .services .pricelist .pricewrap .space {
        margin: 0 0 20px
    }

    .p-pflecare-service .services .pricelist .pricewrap .space:last-child {
        margin: 0
    }
}

.p-pflecare-service .services .pricelist .pricewrap .space th {
    background-color: #fef0f6;
    border-right: 10px solid #fff;
    color: #e8529a;
    font-size: 2rem;
    line-height: 1.3;
    text-align: center;
    white-space: nowrap;
    width: 145px
}

@media (max-width:767px) {
    .p-pflecare-service .services .pricelist .pricewrap .space th {
        border-right: 7px solid #fff;
        font-size: 1.3rem;
        padding: 0 10px;
        width: 25%
    }
}

.p-pflecare-service .services .pricelist .pricewrap .table1,
.p-pflecare-service .services .pricelist .pricewrap .table2,
.p-pflecare-service .services .pricelist .pricewrap .table3 {
    border-bottom: 1px solid silver;
    border-right: 1px solid silver
}

@media (max-width:767px) {

    .p-pflecare-service .services .pricelist .pricewrap .table1,
    .p-pflecare-service .services .pricelist .pricewrap .table2,
    .p-pflecare-service .services .pricelist .pricewrap .table3 {
        border-bottom: none;
        border-right: none;
        border-top: none;
        display: block
    }
}

.p-pflecare-service .services .pricelist .pricewrap .table1 dl,
.p-pflecare-service .services .pricelist .pricewrap .table2 dl,
.p-pflecare-service .services .pricelist .pricewrap .table3 dl {
    display: table;
    width: 100%
}

@media (max-width:767px) {

    .p-pflecare-service .services .pricelist .pricewrap .table1 dl:nth-child(n+2),
    .p-pflecare-service .services .pricelist .pricewrap .table2 dl:nth-child(n+2),
    .p-pflecare-service .services .pricelist .pricewrap .table3 dl:nth-child(n+2) {
        margin-top: 10px
    }
}

.p-pflecare-service .services .pricelist .pricewrap .table1 dl dt,
.p-pflecare-service .services .pricelist .pricewrap .table2 dl dt,
.p-pflecare-service .services .pricelist .pricewrap .table3 dl dt {
    border-left: 1px solid silver;
    border-top: 1px solid silver;
    display: table-cell;
    font-size: 2rem;
    line-height: 1.5;
    padding: 15px 0;
    vertical-align: middle;
    width: 55%
}

@media (max-width:767px) {

    .p-pflecare-service .services .pricelist .pricewrap .table1 dl dt,
    .p-pflecare-service .services .pricelist .pricewrap .table2 dl dt,
    .p-pflecare-service .services .pricelist .pricewrap .table3 dl dt {
        border-left: 1px solid silver;
        border-right: 1px solid silver;
        border-top: 1px solid silver;
        display: block;
        padding: 15px;
        width: 100%
    }
}

.p-pflecare-service .services .pricelist .pricewrap .table1 dl dt .item,
.p-pflecare-service .services .pricelist .pricewrap .table2 dl dt .item,
.p-pflecare-service .services .pricelist .pricewrap .table3 dl dt .item {
    padding-left: 15px;
    padding-right: 15px
}

@media (max-width:767px) {

    .p-pflecare-service .services .pricelist .pricewrap .table1 dl dt .item,
    .p-pflecare-service .services .pricelist .pricewrap .table2 dl dt .item,
    .p-pflecare-service .services .pricelist .pricewrap .table3 dl dt .item {
        font-size: 1.5rem;
        padding-left: 0
    }
}

.p-pflecare-service .services .pricelist .pricewrap .table1 dl dd,
.p-pflecare-service .services .pricelist .pricewrap .table2 dl dd,
.p-pflecare-service .services .pricelist .pricewrap .table3 dl dd {
    border-left: 1px dashed silver;
    border-top: 1px solid silver;
    display: table-cell;
    font-size: 1.5rem;
    line-height: 1.5;
    padding: 15px;
    text-align: right;
    vertical-align: middle
}

@media (max-width:767px) {

    .p-pflecare-service .services .pricelist .pricewrap .table1 dl dd,
    .p-pflecare-service .services .pricelist .pricewrap .table2 dl dd,
    .p-pflecare-service .services .pricelist .pricewrap .table3 dl dd {
        border: 1px solid silver;
        border-top-style: dashed;
        display: block;
        font-size: 1.2rem;
        padding: 15px 10px
    }
}

.p-pflecare-service .services .pricelist .pricewrap .table1 dl dd p,
.p-pflecare-service .services .pricelist .pricewrap .table2 dl dd p,
.p-pflecare-service .services .pricelist .pricewrap .table3 dl dd p {
    white-space: nowrap
}

@media (max-width:767px) {

    .p-pflecare-service .services .pricelist .pricewrap .table1 dl dd p,
    .p-pflecare-service .services .pricelist .pricewrap .table2 dl dd p,
    .p-pflecare-service .services .pricelist .pricewrap .table3 dl dd p {
        font-size: 1.2rem;
        line-height: 1.8
    }

    .p-pflecare-service .services .pricelist .pricewrap .table1 dl dd p span.ib2line,
    .p-pflecare-service .services .pricelist .pricewrap .table2 dl dd p span.ib2line,
    .p-pflecare-service .services .pricelist .pricewrap .table3 dl dd p span.ib2line {
        display: inline-block;
        font-size: .9rem;
        line-height: 1.1;
        vertical-align: middle
    }
}

.p-pflecare-service .services .pricelist .pricewrap .table1 dl dd p i,
.p-pflecare-service .services .pricelist .pricewrap .table2 dl dd p i,
.p-pflecare-service .services .pricelist .pricewrap .table3 dl dd p i {
    display: inline-block;
    font-size: 1.5rem;
    white-space: nowrap;
    width: 10em
}

@media (max-width:767px) {

    .p-pflecare-service .services .pricelist .pricewrap .table1 dl dd p i,
    .p-pflecare-service .services .pricelist .pricewrap .table2 dl dd p i,
    .p-pflecare-service .services .pricelist .pricewrap .table3 dl dd p i {
        font-size: 1.2rem;
        width: 9.5em
    }
}

.p-pflecare-service .services .pricelist .pricewrap .table1 dl dd p i.plus,
.p-pflecare-service .services .pricelist .pricewrap .table2 dl dd p i.plus,
.p-pflecare-service .services .pricelist .pricewrap .table3 dl dd p i.plus {
    width: auto
}

.p-pflecare-service .services .pricelist .pricewrap .table1 dl dd p strong,
.p-pflecare-service .services .pricelist .pricewrap .table2 dl dd p strong,
.p-pflecare-service .services .pricelist .pricewrap .table3 dl dd p strong {
    font-size: 2.4rem;
    font-weight: 700;
    padding: 0 6px 0 0
}

.p-pflecare-service .services .pricelist .pricewrap .table1 dl dd p em,
.p-pflecare-service .services .pricelist .pricewrap .table2 dl dd p em,
.p-pflecare-service .services .pricelist .pricewrap .table3 dl dd p em {
    font-size: 2rem;
    font-weight: 700;
    padding: 0 6px 0 0
}

@media (max-width:767px) {

    .p-pflecare-service .services .pricelist .pricewrap .table1 dl dd p em,
    .p-pflecare-service .services .pricelist .pricewrap .table2 dl dd p em,
    .p-pflecare-service .services .pricelist .pricewrap .table3 dl dd p em {
        font-size: 1.5rem;
        padding: 0 3px 0 0
    }
}

.p-pflecare-service .service1 .present {
    background-color: #fff;
    margin: 25px 0;
    padding: 40px 0;
    position: relative
}

@media (max-width:767px) {
    .p-pflecare-service .service1 .present {
        margin: 12px 0;
        padding: 40px 0 30px
    }
}

.p-pflecare-service .service1 .present .pennant {
    left: 0;
    position: absolute;
    top: 0
}

.p-pflecare-service .service1 .present .pennant img {
    height: auto;
    width: auto
}

@media (max-width:960px) {
    .p-pflecare-service .service1 .present .pennant img {
        width: 120px
    }
}

@media (max-width:767px) {
    .p-pflecare-service .service1 .present .pennant img {
        width: 120px
    }
}

.p-pflecare-service .service1 .present .text {
    font-size: 2.6rem;
    line-height: 1.8;
    padding: 0 0 0 100px;
    text-align: center
}

@media (max-width:767px) {
    .p-pflecare-service .service1 .present .text {
        font-size: 1.4rem;
        padding: 0 0 20px 50px
    }
}

.p-pflecare-service .service1 .present .text em {
    font-weight: 700
}

.p-pflecare-service .service1 .present ul {
    align-items: flex-end;
    display: flex;
    justify-content: center;
    padding: 0 0 0 25px
}

@media (max-width:767px) {
    .p-pflecare-service .service1 .present ul {
        flex-wrap: wrap;
        padding: 0 15px
    }
}

.p-pflecare-service .service1 .present ul li:nth-child(3) {
    padding: 0 0 0 50px
}

@media (max-width:767px) {
    .p-pflecare-service .service1 .present ul li:nth-child(3) {
        padding: 0
    }
}

.p-pflecare-service .service1 .present ul li img {
    height: auto;
    width: auto
}

@media (max-width:767px) {
    .p-pflecare-service .service1 .present ul li img {
        width: 100%
    }

    .p-pflecare-service .service1 .pricelist {
        margin: 30px 0 0;
        padding: 0
    }
}

.p-pflecare-service .service1 .pricelist .pricewrap .space {
    width: 100%
}

.p-pflecare-service .service1 .pricelist .pricewrap .table1,
.p-pflecare-service .service1 .pricelist .pricewrap .table2,
.p-pflecare-service .service1 .pricelist .pricewrap .table3 {
    border-bottom: 1px solid silver;
    border-right: 1px solid silver
}

@media (max-width:767px) {

    .p-pflecare-service .service1 .pricelist .pricewrap .table1,
    .p-pflecare-service .service1 .pricelist .pricewrap .table2,
    .p-pflecare-service .service1 .pricelist .pricewrap .table3 {
        border-bottom: none;
        border-right: none;
        border-top: none;
        display: block
    }
}

.p-pflecare-service .service1 .pricelist .pricewrap .table1 dl,
.p-pflecare-service .service1 .pricelist .pricewrap .table2 dl,
.p-pflecare-service .service1 .pricelist .pricewrap .table3 dl {
    display: table;
    height: 100px;
    width: 100%
}

@media (max-width:767px) {

    .p-pflecare-service .service1 .pricelist .pricewrap .table1 dl,
    .p-pflecare-service .service1 .pricelist .pricewrap .table2 dl,
    .p-pflecare-service .service1 .pricelist .pricewrap .table3 dl {
        height: auto
    }
}

.p-pflecare-service .service1 .pricelist .pricewrap .table1 dl dt,
.p-pflecare-service .service1 .pricelist .pricewrap .table2 dl dt,
.p-pflecare-service .service1 .pricelist .pricewrap .table3 dl dt {
    border-left: 1px solid silver;
    border-top: 1px solid silver;
    display: table-cell;
    font-size: 2rem;
    line-height: 1.5;
    padding: 30px 0;
    vertical-align: middle
}

@media (max-width:767px) {

    .p-pflecare-service .service1 .pricelist .pricewrap .table1 dl dt,
    .p-pflecare-service .service1 .pricelist .pricewrap .table2 dl dt,
    .p-pflecare-service .service1 .pricelist .pricewrap .table3 dl dt {
        display: block;
        padding: 18px 12px
    }
}

.p-pflecare-service .service1 .pricelist .pricewrap .table1 dl dt .item,
.p-pflecare-service .service1 .pricelist .pricewrap .table2 dl dt .item,
.p-pflecare-service .service1 .pricelist .pricewrap .table3 dl dt .item {
    padding-left: 30px
}

@media (max-width:767px) {

    .p-pflecare-service .service1 .pricelist .pricewrap .table1 dl dt .item,
    .p-pflecare-service .service1 .pricelist .pricewrap .table2 dl dt .item,
    .p-pflecare-service .service1 .pricelist .pricewrap .table3 dl dt .item {
        font-size: 1.5rem;
        padding-left: 0
    }
}

.p-pflecare-service .service1 .pricelist .pricewrap .table1 dl dd,
.p-pflecare-service .service1 .pricelist .pricewrap .table2 dl dd,
.p-pflecare-service .service1 .pricelist .pricewrap .table3 dl dd {
    border-left: 1px dashed silver;
    border-top: 1px solid silver;
    display: table-cell;
    font-size: 1.5rem;
    line-height: 1.5;
    padding: 30px;
    text-align: right;
    vertical-align: middle
}

@media (max-width:767px) {

    .p-pflecare-service .service1 .pricelist .pricewrap .table1 dl dd,
    .p-pflecare-service .service1 .pricelist .pricewrap .table2 dl dd,
    .p-pflecare-service .service1 .pricelist .pricewrap .table3 dl dd {
        border-left: 1px solid silver;
        border-top: 1px dashed silver;
        display: block;
        font-size: 1.2rem;
        padding: 18px 12px
    }

    .p-pflecare-service .service1 .pricelist .pricewrap .table1 dl dd p,
    .p-pflecare-service .service1 .pricelist .pricewrap .table2 dl dd p,
    .p-pflecare-service .service1 .pricelist .pricewrap .table3 dl dd p {
        font-size: 1.2rem
    }
}

.p-pflecare-service .service1 .pricelist .pricewrap .table1 dl dd p i,
.p-pflecare-service .service1 .pricelist .pricewrap .table2 dl dd p i,
.p-pflecare-service .service1 .pricelist .pricewrap .table3 dl dd p i {
    display: inline-block;
    white-space: nowrap;
    width: 10.5em
}

@media (max-width:767px) {

    .p-pflecare-service .service1 .pricelist .pricewrap .table1 dl dd p i,
    .p-pflecare-service .service1 .pricelist .pricewrap .table2 dl dd p i,
    .p-pflecare-service .service1 .pricelist .pricewrap .table3 dl dd p i {
        width: auto
    }
}

.p-pflecare-service .service1 .pricelist .pricewrap .table1 dl dd p i.plus,
.p-pflecare-service .service1 .pricelist .pricewrap .table2 dl dd p i.plus,
.p-pflecare-service .service1 .pricelist .pricewrap .table3 dl dd p i.plus {
    width: auto
}

.p-pflecare-service .service1 .pricelist .pricewrap .table1 dl dd p strong,
.p-pflecare-service .service1 .pricelist .pricewrap .table2 dl dd p strong,
.p-pflecare-service .service1 .pricelist .pricewrap .table3 dl dd p strong {
    font-size: 2.4rem;
    padding: 0 6px 0 0
}

@media (max-width:767px) {

    .p-pflecare-service .service1 .pricelist .pricewrap .table1 dl dd p strong,
    .p-pflecare-service .service1 .pricelist .pricewrap .table2 dl dd p strong,
    .p-pflecare-service .service1 .pricelist .pricewrap .table3 dl dd p strong {
        font-size: 1.5rem
    }
}

.p-pflecare-service .service1 .pricelist .pricewrap .table1 dl dd p em,
.p-pflecare-service .service1 .pricelist .pricewrap .table2 dl dd p em,
.p-pflecare-service .service1 .pricelist .pricewrap .table3 dl dd p em {
    font-size: 2rem;
    padding: 0 6px 0 0
}

@media (max-width:767px) {

    .p-pflecare-service .service1 .pricelist .pricewrap .table1 dl dd p em,
    .p-pflecare-service .service1 .pricelist .pricewrap .table2 dl dd p em,
    .p-pflecare-service .service1 .pricelist .pricewrap .table3 dl dd p em {
        font-size: 1.5rem;
        padding: 0
    }
}

.p-pflecare-service .service1 .pricelist .pricewrap .term-l,
.p-pflecare-service .service1 .pricelist .pricewrap .term-r {
    padding: 20px 0 38px;
    position: relative;
    text-align: center;
    width: 56px
}

@media (max-width:767px) {

    .p-pflecare-service .service1 .pricelist .pricewrap .term-l,
    .p-pflecare-service .service1 .pricelist .pricewrap .term-r {
        padding: 20px 0;
        width: 28px
    }
}

.p-pflecare-service .service1 .pricelist .pricewrap .term-l {
    border-right: 13px solid #fff
}

@media (max-width:767px) {
    .p-pflecare-service .service1 .pricelist .pricewrap .term-l {
        border-right: 6px solid #fff
    }
}

.p-pflecare-service .service1 .pricelist .pricewrap .term-p {
    padding-bottom: 40px;
    padding-left: 30px
}

@media (max-width:767px) {
    .p-pflecare-service .service1 .pricelist .pricewrap .term-p {
        padding-bottom: 0;
        padding-left: 12px
    }
}

.p-pflecare-service .service1 .pricelist .pricewrap .term_undertreetment {
    background-color: #9de4ad;
    background-position: bottom;
    background-repeat: no-repeat;
    background-size: 100% 38px;
    vertical-align: top
}

@media (max-width:767px) {
    .p-pflecare-service .service1 .pricelist .pricewrap .term_undertreetment {
        background-size: 100% 20px
    }
}

.p-pflecare-service .service1 .pricelist .pricewrap .term_undertreetment img {
    height: auto;
    width: auto
}

@media (max-width:767px) {
    .p-pflecare-service .service1 .pricelist .pricewrap .term_undertreetment img {
        width: 15px
    }
}

.p-pflecare-service .service1 .pricelist .pricewrap .term_beforehairremoval {
    background-color: #ffd7e8;
    background-image: url(../../assets/img/pflecare/service/bg_arw_pricelist_white.png);
    background-position: bottom;
    background-repeat: no-repeat;
    background-size: 100% 38px;
    vertical-align: top
}

@media (max-width:767px) {
    .p-pflecare-service .service1 .pricelist .pricewrap .term_beforehairremoval {
        background-size: 100% 20px
    }
}

.p-pflecare-service .service1 .pricelist .pricewrap .term_beforehairremoval img {
    height: auto;
    width: auto
}

@media (max-width:767px) {
    .p-pflecare-service .service1 .pricelist .pricewrap .term_beforehairremoval img {
        width: 15px
    }
}

.p-pflecare-service .service1 .pricelist .pricewrap .term_undertreetment2 {
    background-color: #9de4ad;
    background-image: url(../../assets/img/pflecare/service/bg_arw_pricelist_white.png);
    background-position: bottom;
    background-repeat: no-repeat;
    background-size: 100% 38px;
    vertical-align: top
}

@media (max-width:767px) {
    .p-pflecare-service .service1 .pricelist .pricewrap .term_undertreetment2 {
        background-size: 100% 20px
    }
}

.p-pflecare-service .service1 .pricelist .pricewrap .term_undertreetment2 img {
    height: auto;
    width: auto
}

@media (max-width:767px) {
    .p-pflecare-service .service1 .pricelist .pricewrap .term_undertreetment2 img {
        width: 15px
    }
}

.p-pflecare-service .service1 .pricelist .pricewrap .term_hairremoval {
    background-color: #ffa7cd;
    background-image: url(../../assets/img/pflecare/service/bg_arw_pricelist_white.png);
    background-position: bottom;
    background-repeat: no-repeat;
    background-size: 100% 38px;
    vertical-align: top
}

@media (max-width:767px) {
    .p-pflecare-service .service1 .pricelist .pricewrap .term_hairremoval {
        background-size: 100% 20px
    }
}

.p-pflecare-service .service1 .pricelist .pricewrap .term_hairremoval img {
    height: auto;
    width: auto
}

@media (max-width:767px) {
    .p-pflecare-service .service1 .pricelist .pricewrap .term_hairremoval img {
        width: 15px
    }
}

.p-pflecare-service .service1 .pricelist .pricewrap .term_aftertreetment {
    background-color: #6bbd7d;
    background-image: url(../../assets/img/pflecare/service/bg_arw_pricelist_white.png);
    background-position: bottom;
    background-repeat: no-repeat;
    background-size: 100% 38px;
    vertical-align: top
}

@media (max-width:767px) {
    .p-pflecare-service .service1 .pricelist .pricewrap .term_aftertreetment {
        background-size: 100% 20px
    }
}

.p-pflecare-service .service1 .pricelist .pricewrap .term_aftertreetment img {
    height: auto;
    width: auto
}

@media (max-width:767px) {
    .p-pflecare-service .service1 .pricelist .pricewrap .term_aftertreetment img {
        width: 15px
    }
}

.p-pflecare-service .service1 .pricelist .pricewrap .term_hairgrowth {
    background-color: #de4387;
    background-image: url(../../assets/img/pflecare/service/bg_arw_pricelist_white.png);
    background-position: bottom;
    background-repeat: no-repeat;
    background-size: 100% 38px;
    vertical-align: top
}

@media (max-width:767px) {
    .p-pflecare-service .service1 .pricelist .pricewrap .term_hairgrowth {
        background-size: 100% 20px
    }
}

.p-pflecare-service .service1 .pricelist .pricewrap .term_hairgrowth img {
    height: auto;
    width: auto
}

@media (max-width:767px) {
    .p-pflecare-service .service1 .pricelist .pricewrap .term_hairgrowth img {
        width: 15px
    }
}

.p-pflecare-service .service1 .pricelist .pricewrap .ex {
    font-size: 1.5rem;
    padding: 15px 0 0 20px
}

@media (max-width:767px) {
    .p-pflecare-service .service1 .pricelist .pricewrap .ex {
        font-size: 1.2rem;
        padding: 7px 0 10px
    }
}

.p-pflecare-service .service4 .mat .questionnaire {
    display: flex;
    justify-content: center;
    padding: 50px 0 0
}

@media (max-width:767px) {
    .p-pflecare-service .service4 .mat .questionnaire {
        display: block;
        padding: 24px 0 0
    }
}

.p-pflecare-service .service4 .mat .questionnaire .datatext {
    font-size: 1.2rem;
    line-height: 1.5;
    padding: 0 0 0 20px
}

@media (max-width:767px) {
    .p-pflecare-service .service4 .mat .questionnaire .datatext {
        font-size: 1.1rem;
        line-height: 1.6;
        padding: 10px 0 0
    }
}

.p-pflecare-service .service4 .beforeafter {
    padding: 74px 0 0
}

@media (max-width:767px) {
    .p-pflecare-service .service4 .beforeafter {
        padding: 40px 0 0
    }

    .p-pflecare-service .service4 .beforeafter .inner {
        margin: 0
    }
}

.p-pflecare-service .service4 .beforeafter .inner ul {
    background: url(../../assets/img/pflecare/service/arw_right_beforeafter.png) 50% no-repeat;
    display: flex;
    flex-wrap: nowrap
}

@media (max-width:767px) {
    .p-pflecare-service .service4 .beforeafter .inner ul {
        background: none;
        flex-wrap: wrap
    }
}

.p-pflecare-service .service4 .beforeafter .inner ul li {
    width: 50%
}

@media (max-width:767px) {
    .p-pflecare-service .service4 .beforeafter .inner ul li {
        width: 100%
    }
}

.p-pflecare-service .service4 .beforeafter .inner ul li.before {
    padding-right: 60px
}

@media (max-width:767px) {
    .p-pflecare-service .service4 .beforeafter .inner ul li.before {
        padding-right: 0
    }

    .p-pflecare-service .service4 .beforeafter .inner ul li.before img {
        width: 100%
    }
}

.p-pflecare-service .service4 .beforeafter .inner ul li.after {
    padding-left: 60px
}

@media (max-width:767px) {
    .p-pflecare-service .service4 .beforeafter .inner ul li.after {
        background: url(../../assets/img/pflecare/service/sp/arw_bottom_beforeafter.png) center 10px no-repeat;
        background-size: 27px 52px;
        padding: 70px 0 0
    }

    .p-pflecare-service .service4 .beforeafter .inner ul li.after img {
        width: 100%
    }
}

.p-pflecare-service .service4 .homecare h2.copy {
    color: #e595bb;
    font-family: Yu Mincho Demibold;
    font-size: 4.2rem;
    padding: 50px 0 0;
    text-align: center
}

@media (max-width:767px) {
    .p-pflecare-service .service4 .homecare h2.copy {
        font-size: 2.9rem;
        line-height: 1.3
    }
}

.p-pflecare-service .service4 .homecare .inner {
    display: flex
}

@media (max-width:767px) {
    .p-pflecare-service .service4 .homecare .inner {
        display: block;
        margin: 0
    }
}

.p-pflecare-service .service4 .homecare .inner .imageblock {
    text-align: center;
    width: 460px
}

@media (max-width:767px) {
    .p-pflecare-service .service4 .homecare .inner .imageblock {
        width: 100%
    }
}

.p-pflecare-service .service4 .homecare .inner .imageblock img {
    width: 70%
}

.p-pflecare-service .service4 .homecare .inner .textblock {
    margin: 0 50px 0 0;
    width: 450px
}

@media (max-width:767px) {
    .p-pflecare-service .service4 .homecare .inner .textblock {
        margin: 0 0 30px;
        width: auto
    }
}

.p-pflecare-service .service4 .homecare .inner .textblock h3 {
    font-family: Yu Mincho Demibold;
    font-size: 4.2rem;
    line-height: 1.3;
    padding: 76px 0 0
}

@media (max-width:767px) {
    .p-pflecare-service .service4 .homecare .inner .textblock h3 {
        font-size: 2.7rem;
        padding: 30px 0 0
    }
}

.p-pflecare-service .service4 .homecare .inner .textblock .text {
    font-size: 1.6rem;
    line-height: 1.6;
    padding: 25px 0 0
}

@media (max-width:767px) {
    .p-pflecare-service .service4 .homecare .inner .textblock .text {
        font-size: 1.3rem;
        padding: 15px 0 0
    }
}

.p-pflecare-service .service4 .present {
    background: #fef0f6 url(../../assets/img/pflecare/service/pic_present_ticket.png) 96.5% no-repeat;
    margin: 0 0 36px;
    min-height: 224px;
    padding: 0 200px 0 0;
    position: relative;
    text-align: center
}

@media (max-width:767px) {
    .p-pflecare-service .service4 .present {
        background-color: #fef0f6;
        background-image: none;
        margin: 0;
        min-height: 0;
        padding: 0 0 15px
    }

    .p-pflecare-service .service4 .present:after {
        background: #fef0f6 url(../../assets/img/pflecare/service/sp/pic_present_ticket.png) 0 0 no-repeat;
        background-size: 200px 138px;
        content: "";
        display: block;
        height: 138px;
        margin: 0 auto;
        width: 200px
    }
}

.p-pflecare-service .service4 .present .pennant {
    left: 0;
    position: absolute;
    top: 0
}

.p-pflecare-service .service4 .present .pennant img {
    height: auto;
    width: auto
}

@media (max-width:960px) {
    .p-pflecare-service .service4 .present .pennant img {
        width: 56px
    }
}

@media (max-width:767px) {
    .p-pflecare-service .service4 .present .pennant img {
        width: 56px
    }
}

.p-pflecare-service .service4 .present h3 {
    font-size: 2.6rem;
    letter-spacing: .1em;
    padding: 50px 0 0
}

@media (max-width:767px) {
    .p-pflecare-service .service4 .present h3 {
        font-size: 1.6rem;
        padding: 26px 0 0
    }
}

.p-pflecare-service .service4 .present h3 span {
    border-bottom: 2px solid #e8529a;
    font-weight: 700
}

@media (max-width:767px) {
    .p-pflecare-service .service4 .present h3 span {
        border-bottom: 1px solid #e8529a
    }
}

.p-pflecare-service .service4 .present .text {
    font-size: 2.6rem;
    letter-spacing: .1em;
    line-height: 1;
    padding: 32px 0 0
}

@media (max-width:767px) {
    .p-pflecare-service .service4 .present .text {
        font-size: 1.6rem;
        line-height: 1.4;
        padding: 20px 0 0
    }
}

.p-pflecare-service .service4 .present .att {
    font-size: 1.5rem;
    letter-spacing: .1em;
    padding: 26px 0 0
}

@media (max-width:767px) {
    .p-pflecare-service .service4 .present .att {
        font-size: 1.3rem;
        padding: 12px 0 18px
    }
}

.p-pflecare-service .service5 .mat ul {
    display: table;
    width: 100%
}

@media (max-width:767px) {
    .p-pflecare-service .service5 .mat ul {
        display: block;
        width: auto
    }
}

.p-pflecare-service .service5 .mat ul li {
    display: table-cell;
    width: 50%
}

@media (max-width:767px) {
    .p-pflecare-service .service5 .mat ul li {
        display: block;
        width: auto
    }
}

.p-pflecare-service .service5 .pricelist .att {
    font-size: 1.5rem;
    line-height: 1.6;
    margin: -10px 0 30px
}

@media (max-width:767px) {
    .p-pflecare-service .service5 .pricelist .att {
        font-size: 1.2rem;
        margin: -5px 0 0
    }
}

.p-pflecare-service .counceling {
    color: #675961;
    padding: 0 0 74px
}

@media (max-width:767px) {
    .p-pflecare-service .counceling {
        padding: 0 0 50px
    }
}

.p-pflecare-service .counceling .inner {
    display: flex;
    flex-wrap: nowrap
}

@media (max-width:767px) {
    .p-pflecare-service .counceling .inner {
        flex-wrap: wrap
    }
}

.p-pflecare-service .counceling .inner .imageblock {
    width: 460px
}

@media (max-width:767px) {
    .p-pflecare-service .counceling .inner .imageblock {
        width: auto
    }
}

.p-pflecare-service .counceling .inner .textblock {
    margin: 0 50px 0 0;
    width: 450px
}

@media (max-width:767px) {
    .p-pflecare-service .counceling .inner .textblock {
        margin: 0
    }
}

.p-pflecare-service .counceling .inner .textblock h3 {
    font-family: Yu Mincho Demibold;
    font-size: 4.2rem;
    line-height: 1.3;
    padding: 10px 0 0
}

@media (max-width:767px) {
    .p-pflecare-service .counceling .inner .textblock h3 {
        font-size: 2.9rem
    }
}

.p-pflecare-service .counceling .inner .textblock h3 span {
    display: block;
    font-size: 3.6rem;
    padding: 0 0 3px
}

@media (max-width:767px) {
    .p-pflecare-service .counceling .inner .textblock h3 span {
        font-size: 2rem
    }
}

.p-pflecare-service .counceling .inner .textblock h4 {
    font-size: 2rem;
    padding: 18px 0 0
}

.p-pflecare-service .counceling .inner .textblock .text {
    font-size: 1.6rem;
    line-height: 1.6;
    padding: 22px 0 0
}

@media (max-width:767px) {
    .p-pflecare-service .counceling .inner .textblock .text {
        font-size: 1.3rem;
        padding: 18px 0 28px
    }
}

.p-pflecare-shop .area h3 {
    font-family: "Noto Serif JP", serif
}

.p-pflecare-shop .modal-btn {
    background: #e8529a;
    border-bottom: 4px solid #c13c7c;
    border-radius: 4px;
    color: #fff !important;
    display: inline-block;
    min-width: 128px;
    padding: 10px;
    text-align: center;
    text-decoration: none
}

.p-pflecare-shop .modal-btn-close {
    background: #999;
    border-bottom: 4px solid #777;
    display: block;
    margin: 0 auto;
    max-width: 150px
}

.p-pflecare-shop .modal-btn:hover {
    opacity: .7
}

@media screen and (max-width:460px) {
    .p-pflecare-shop .modal-btn {
        min-width: 100px;
        padding: 10px 5px
    }
}

.p-pflecare-shop .national-map-modal {
    margin-top: 30px;
    position: relative
}

.p-pflecare-shop .modalInner {
    -webkit-overflow-scrolling: touch;
    background-color: #fff;
    border-radius: 5px;
    cursor: default;
    height: 90%;
    overflow: auto;
    overflow-y: scroll;
    padding: 3em;
    position: relative
}

.p-pflecare-shop .modalInner h4 {
    color: #04477d;
    font-family: "Noto Serif JP", serif;
    font-size: 3rem;
    font-weight: 700;
    margin-bottom: 20px;
    text-align: center
}

.p-pflecare-shop .modalInner dl {
    text-align: left
}

.p-pflecare-shop .modalInner dt {
    font-size: 2rem;
    font-weight: 700;
    margin-bottom: 10px
}

.p-pflecare-shop .modalInner dd {
    line-height: 1.4
}

.p-pflecare-shop .modalInner dd br.pc_none {
    display: none
}

.p-pflecare-shop .modalShopList {
    border-bottom: 1px solid #ddd;
    margin-bottom: 20px;
    padding-bottom: 25px
}

.p-pflecare-shop .modalShopList a {
    background: #e8529a;
    border-bottom: 4px solid #c13c7c;
    border-radius: 4px;
    color: #fff !important;
    display: inline-block;
    margin: 10px 0 0;
    padding: 10px 25px 10px 15px;
    text-align: center;
    text-decoration: none
}

.p-pflecare-shop .modalShopList .arrowicon {
    position: relative
}

.p-pflecare-shop .modalShopList .arrowicon:after,
.p-pflecare-shop .modalShopList .arrowicon:before {
    bottom: 0;
    content: "";
    margin: auto;
    position: absolute;
    right: 0;
    top: 0;
    vertical-align: middle
}

.p-pflecare-shop .modalShopList .arrowicon:before {
    border-right: 1px solid #fff;
    border-top: 1px solid #fff;
    height: 8px;
    right: 10px;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    width: 8px
}

.p-pflecare-shop .modalShopList a:hover {
    opacity: .7
}

@media screen and (max-width:768px) {
    .p-pflecare-shop .modalInner {
        height: 100%;
        padding: 2em 1.5em 1.5em
    }

    .p-pflecare-shop .modalInner h4 {
        font-size: 2.2rem
    }

    .p-pflecare-shop .modalInner dt {
        font-size: 1.8rem;
        line-height: 1.2;
        margin-bottom: 10px
    }
}

@media screen and (max-width:480px) {
    .p-pflecare-shop .modalInner dd br.pc_none {
        display: block;
        margin: 0
    }

    .p-pflecare-shop .modalShopList .arrowicon {
        display: block;
        margin: 10px auto 0;
        text-align: center;
        width: 85%
    }
}

@media screen and (max-width:370px) {
    .p-pflecare-shop .modalShopList .arrowicon {
        width: 100%
    }
}

.p-pflecare-shop .area {
    align-items: center;
    border-bottom: 1px solid #eee;
    display: flex;
    padding-bottom: 10px;
    padding-top: 20px
}

.p-pflecare-shop .area:first-of-type {
    border-top: 1px solid #eee
}

.p-pflecare-shop .area h3 {
    font-size: 1.8rem;
    font-weight: 700;
    margin-bottom: 10px;
    margin-right: 5px;
    min-width: 100px;
    text-align: left
}

@media screen and (max-width:768px) {
    .p-pflecare-shop .area {
        align-items: flex-start;
        padding-top: 15px
    }

    .p-pflecare-shop .area h3 {
        font-size: 1.6rem;
        margin-top: 15px
    }
}

@media screen and (max-width:460px) {
    .p-pflecare-shop .area h3 {
        min-width: 85px
    }
}

.p-pflecare-shop .modal-list {
    display: flex;
    flex-wrap: wrap
}

.p-pflecare-shop .modal-list li {
    margin: 0 10px 10px 0
}

@media screen and (max-width:768px) {
    .p-pflecare-shop .modal-list li {
        margin: 0 5px 5px 0
    }
}

.p-pflecare-shop .modalCheck {
    display: none
}

.p-pflecare-shop .modal-list label {
    cursor: pointer
}

.p-pflecare-shop .modalBg,
.p-pflecare-shop .modalWrap {
    bottom: 0;
    height: 100%;
    left: 0;
    margin: auto;
    position: fixed;
    right: 0;
    top: 0;
    width: 100%;
    z-index: 10010
}

.p-pflecare-shop .modalWrap {
    opacity: 0;
    visibility: hidden
}

.p-pflecare-shop .modalBg {
    background-color: #000;
    cursor: pointer;
    opacity: .7;
    z-index: 250
}

.p-pflecare-shop .modalBg .closeModal {
    background: none;
    bottom: 0;
    display: block;
    left: 0;
    padding: 0;
    position: absolute;
    right: 0;
    top: 0;
    width: 100%
}

.p-pflecare-shop .modalCon {
    bottom: 0;
    height: 80%;
    left: 0;
    margin: auto;
    max-width: 640px;
    position: absolute;
    right: 0;
    top: 0;
    width: 92%;
    z-index: 10010
}

.p-pflecare-shop .modalCloseBtn {
    background: none;
    color: #fff;
    display: block;
    font-size: 4rem;
    line-height: 1;
    margin: auto;
    position: relative;
    position: absolute;
    right: 0;
    text-align: center;
    text-decoration: none;
    top: -60px
}

.p-pflecare-shop .modalCloseBtn:hover {
    opacity: .8
}

.p-pflecare-shop .modalCloseBtn span {
    display: block;
    font-size: 1.4rem
}

@media (max-width:768px) {
    .p-pflecare-shop .modalCon {
        bottom: auto;
        height: 75%;
        top: 80px;
        width: 90%
    }
}

.p-pflecare-shop .modalCheck:not(:checked)~.modalWrap {
    opacity: 0;
    visibility: hidden
}

.p-pflecare-shop #modal_01:checked~#modal_01Con,
.p-pflecare-shop #modal_02:checked~#modal_02Con,
.p-pflecare-shop #modal_03:checked~#modal_03Con,
.p-pflecare-shop #modal_04:checked~#modal_04Con,
.p-pflecare-shop #modal_05:checked~#modal_05Con,
.p-pflecare-shop #modal_06:checked~#modal_06Con,
.p-pflecare-shop #modal_07:checked~#modal_07Con,
.p-pflecare-shop #modal_08:checked~#modal_08Con,
.p-pflecare-shop #modal_09:checked~#modal_09Con,
.p-pflecare-shop #modal_10:checked~#modal_10Con,
.p-pflecare-shop #modal_11:checked~#modal_11Con,
.p-pflecare-shop #modal_12:checked~#modal_12Con,
.p-pflecare-shop #modal_13:checked~#modal_13Con,
.p-pflecare-shop #modal_14:checked~#modal_14Con,
.p-pflecare-shop #modal_15:checked~#modal_15Con,
.p-pflecare-shop #modal_16:checked~#modal_16Con,
.p-pflecare-shop #modal_17:checked~#modal_17Con,
.p-pflecare-shop #modal_18:checked~#modal_18Con,
.p-pflecare-shop #modal_19:checked~#modal_19Con,
.p-pflecare-shop #modal_20:checked~#modal_20Con,
.p-pflecare-shop #modal_21:checked~#modal_21Con,
.p-pflecare-shop #modal_22:checked~#modal_22Con,
.p-pflecare-shop #modal_23:checked~#modal_23Con,
.p-pflecare-shop #modal_24:checked~#modal_24Con,
.p-pflecare-shop #modal_25:checked~#modal_25Con,
.p-pflecare-shop #modal_26:checked~#modal_26Con,
.p-pflecare-shop #modal_27:checked~#modal_27Con,
.p-pflecare-shop #modal_28:checked~#modal_28Con,
.p-pflecare-shop #modal_29:checked~#modal_29Con,
.p-pflecare-shop #modal_30:checked~#modal_30Con,
.p-pflecare-shop #modal_31:checked~#modal_31Con,
.p-pflecare-shop #modal_32:checked~#modal_32Con,
.p-pflecare-shop #modal_33:checked~#modal_33Con,
.p-pflecare-shop #modal_34:checked~#modal_34Con,
.p-pflecare-shop #modal_35:checked~#modal_35Con,
.p-pflecare-shop #modal_36:checked~#modal_36Con,
.p-pflecare-shop #modal_37:checked~#modal_37Con,
.p-pflecare-shop #modal_38:checked~#modal_38Con,
.p-pflecare-shop #modal_39:checked~#modal_39Con,
.p-pflecare-shop #modal_40:checked~#modal_40Con,
.p-pflecare-shop #modal_41:checked~#modal_41Con,
.p-pflecare-shop #modal_42:checked~#modal_42Con,
.p-pflecare-shop #modal_43:checked~#modal_43Con,
.p-pflecare-shop #modal_44:checked~#modal_44Con,
.p-pflecare-shop #modal_45:checked~#modal_45Con,
.p-pflecare-shop #modal_46:checked~#modal_46Con,
.p-pflecare-shop #modal_47:checked~#modal_47Con {
    opacity: 1;
    visibility: visible
}

.a {
    font-family: Oswald, "sans-serif"
}

.p-pflecare section+section {
    margin-top: 74px
}

@media screen and (max-width:767px) {
    .p-pflecare section+section {
        margin-top: 52px
    }
}

.p-pflecare__wrap {
    color: #675961;
    padding-bottom: 74px
}

@media screen and (max-width:767px) {
    .p-pflecare__wrap {
        padding-bottom: 35px
    }
}

.p-pflecare__wrap .page-lead {
    color: #323333
}

@media screen and (max-width:640px) {
    .p-pflecare__wrap .c-page-ttl {
        font-size: 2.8rem
    }
}

.p-pflecare__wrap .c-page-ttl .pc {
    display: block
}

@media screen and (max-width:640px) {
    .p-pflecare__wrap .c-page-ttl .pc {
        display: none
    }
}

.p-pflecare__wrap .c-page-ttl .sp {
    display: none
}

@media screen and (max-width:640px) {
    .p-pflecare__wrap .c-page-ttl .sp {
        display: block
    }
}

.p-pflecare__wrap .reservation-belt {
    background-color: #71d0d8;
    font-family: "Noto Serif JP", serif;
    letter-spacing: .05em;
    padding: 70px 0
}

@media (max-width:960px) {
    .p-pflecare__wrap .reservation-belt {
        padding: 30px 0
    }
}

@media (max-width:767px) {
    .p-pflecare__wrap .reservation-belt {
        padding: 30px 0
    }
}

.p-pflecare__wrap .reservation-belt .inner {
    margin: 0 auto;
    max-width: 960px;
    padding: 0
}

@media (max-width:960px) {
    .p-pflecare__wrap .reservation-belt .inner {
        margin: 0 15px;
        max-width: 100%;
        padding: 0;
        width: auto
    }
}

.p-pflecare__wrap .reservation-belt .reserve-btn {
    letter-spacing: .1em;
    margin: 0 50px;
    text-align: center
}

@media (max-width:960px) {
    .p-pflecare__wrap .reservation-belt .reserve-btn {
        margin: 0
    }
}

@media (max-width:767px) {
    .p-pflecare__wrap .reservation-belt .reserve-btn {
        margin: 0
    }
}

.p-pflecare__wrap .reservation-belt .reserve-btn a {
    background-color: #ec719e;
    border-radius: 15px;
    box-shadow: 0 8px 0 0 #bb6685;
    color: #fff;
    display: block;
    letter-spacing: .05em;
    line-height: 1;
    margin: 0 auto;
    max-width: 100%;
    padding: 25px 0 15px;
    position: relative;
    text-decoration: none;
    transition-delay: 0s;
    transition-duration: .25s;
    transition-property: all;
    transition-timing-function: ease-in-out
}

@media (max-width:960px) {
    .p-pflecare__wrap .reservation-belt .reserve-btn a {
        box-shadow: 0 5px 0 0 #bb6685;
        padding: 16px 0 12px
    }
}

@media (max-width:767px) {
    .p-pflecare__wrap .reservation-belt .reserve-btn a {
        box-shadow: 0 5px 0 0 #bb6685;
        padding: 8px 0 6px
    }
}

.p-pflecare__wrap .reservation-belt .reserve-btn a:before {
    background: url(../../assets/img/pflecare/service/icon_shop.png);
    background-size: 76px 66px;
    content: "";
    display: inline-block;
    height: 66px;
    left: 36px;
    margin-top: -33px;
    position: absolute;
    top: 50%;
    width: 76px
}

@media (max-width:960px) {
    .p-pflecare__wrap .reservation-belt .reserve-btn a:before {
        background-size: 33px 28px;
        height: 28px;
        left: 14px;
        margin-top: -14px;
        top: 50%;
        width: 33px
    }
}

@media (max-width:767px) {
    .p-pflecare__wrap .reservation-belt .reserve-btn a:before {
        background-size: 33px 28px;
        height: 28px;
        left: 14px;
        margin-top: -14px;
        top: 50%;
        width: 33px
    }
}

.p-pflecare__wrap .reservation-belt .reserve-btn a:after {
    background: url(../../assets/img/pflecare/service/icon_arrow.png);
    background-size: 16px 30px;
    content: "";
    display: inline-block;
    height: 30px;
    margin-top: -15px;
    position: absolute;
    right: 42px;
    top: 50%;
    width: 16px
}

@media (max-width:960px) {
    .p-pflecare__wrap .reservation-belt .reserve-btn a:after {
        background-size: 8px 15px;
        height: 15px;
        margin-top: -7px;
        right: 16px;
        top: 50%;
        width: 8px
    }
}

@media (max-width:767px) {
    .p-pflecare__wrap .reservation-belt .reserve-btn a:after {
        background-size: 8px 15px;
        height: 15px;
        margin-top: -7px;
        right: 16px;
        top: 50%;
        width: 8px
    }
}

.p-pflecare__wrap .reservation-belt .reserve-btn .label {
    padding: 0 0 12px
}

@media (max-width:960px) {
    .p-pflecare__wrap .reservation-belt .reserve-btn .label {
        display: inline-block;
        padding: 0 0 3px
    }
}

@media (max-width:767px) {
    .p-pflecare__wrap .reservation-belt .reserve-btn .label {
        display: inline-block;
        padding: 0 0 3px
    }
}

.p-pflecare__wrap .reservation-belt .reserve-btn .label span {
    background-color: #fff;
    border-radius: 3em;
    color: #cf0066;
    font-family: Yu Mincho Demibold;
    font-size: 2.4rem;
    line-height: 36px;
    padding: 0 .8em
}

@media (max-width:960px) {
    .p-pflecare__wrap .reservation-belt .reserve-btn .label span {
        font-size: 1.9rem;
        line-height: 1.4
    }
}

@media (max-width:767px) {
    .p-pflecare__wrap .reservation-belt .reserve-btn .label span {
        font-size: .9rem;
        line-height: 1.4
    }
}

.p-pflecare__wrap .reservation-belt .reserve-btn .here {
    display: block;
    font-family: Yu Mincho Demibold;
    font-size: 3.6rem;
    line-height: 1;
    text-align: center
}

@media (max-width:960px) {
    .p-pflecare__wrap .reservation-belt .reserve-btn .here {
        font-size: 2.7rem;
        padding: .1em 0 0
    }
}

@media (max-width:767px) {
    .p-pflecare__wrap .reservation-belt .reserve-btn .here {
        font-size: 1.4rem;
        padding: .1em 0 0
    }
}

.p-pflecare__wrap .reservation-belt .reserve-btn .here em {
    font-size: 5rem;
    line-height: 1
}

@media (max-width:960px) {
    .p-pflecare__wrap .reservation-belt .reserve-btn .here em {
        font-size: 2.9rem
    }
}

@media (max-width:767px) {
    .p-pflecare__wrap .reservation-belt .reserve-btn .here em {
        font-size: 1.8rem
    }
}

.p-pflecare__wrap .reservation-belt .shoplist-btn {
    letter-spacing: .1em;
    margin: 36px 0 0;
    text-align: center
}

@media (max-width:767px) {
    .p-pflecare__wrap .reservation-belt .shoplist-btn {
        margin: 40px 0 0
    }
}

.p-pflecare__wrap .reservation-belt .shoplist-btn a {
    background-color: #1579d6;
    border-radius: 15px;
    box-shadow: 0 8px 0 0 #0758a4;
    color: #fff;
    display: block;
    font-size: 3.4rem;
    letter-spacing: .05em;
    line-height: 100px;
    margin: 0 auto;
    max-width: 100%;
    position: relative;
    text-decoration: none;
    transition-delay: 0s;
    transition-duration: .25s;
    transition-property: all;
    transition-timing-function: ease-in-out;
    width: 600px
}

@media (max-width:767px) {
    .p-pflecare__wrap .reservation-belt .shoplist-btn a {
        box-shadow: 0 5px 0 0 #0758a4;
        font-size: 1.8rem;
        line-height: 60px;
        padding: 0
    }
}

.p-pflecare__wrap .reservation-belt .shoplist-btn a:before {
    background-size: 52px 52px;
    content: "";
    display: inline-block;
    height: 52px;
    margin: -.2em .5em 0 0;
    vertical-align: middle;
    width: 52px
}

@media (max-width:767px) {
    .p-pflecare__wrap .reservation-belt .shoplist-btn a:before {
        background-size: 26px 26px;
        height: 26px;
        width: 26px
    }
}

@media (max-width:374px) {
    .p-pflecare__wrap .reservation-belt .shoplist-btn a:before {
        background: transparent
    }
}

.p-pflecare__wrap .reservation-belt .shoplist-btn a:after {
    background: url(../../assets/img/pflecare/service/icon_arrow.png);
    background-size: 16px 30px;
    content: "";
    display: inline-block;
    height: 30px;
    margin-top: -15px;
    position: absolute;
    right: 42px;
    top: 50%;
    width: 16px
}

@media (max-width:767px) {
    .p-pflecare__wrap .reservation-belt .shoplist-btn a:after {
        background-size: 8px 15px;
        height: 15px;
        margin-top: -7px;
        position: absolute;
        right: 16px;
        top: 50%;
        width: 8px
    }
}

.p-pflecare__intro {
    padding-top: 60px
}

@media screen and (max-width:767px) {
    .p-pflecare__intro {
        padding-top: 30px
    }
}

.p-pflecare__common-numIcon {
    color: #f6dce8;
    text-align: center
}

.p-pflecare__common-numIcon span {
    display: block
}

.p-pflecare__common-numIcon span+span {
    margin-top: 5px
}

.p-pflecare__common-numIcon .name {
    font-size: 2rem;
    line-height: 1
}

@media screen and (max-width:767px) {
    .p-pflecare__common-numIcon .name {
        font-size: 1.3rem
    }
}

.p-pflecare__common-numIcon .num {
    font-family: Oswald, "sans-serif";
    font-size: 9rem;
    line-height: 1
}

@media screen and (max-width:767px) {
    .p-pflecare__common-numIcon .num {
        font-size: 7rem
    }
}

.p-pflecare__list>li {
    align-items: center;
    display: flex;
    flex-direction: row-reverse
}

@media screen and (max-width:767px) {
    .p-pflecare__list>li {
        display: block
    }
}

.p-pflecare__list>li:nth-of-type(2n) {
    flex-direction: row
}

.p-pflecare__list>li+li {
    margin-top: 74px
}

@media screen and (max-width:767px) {
    .p-pflecare__list>li+li {
        margin-top: 52px
    }
}

.p-pflecare__list>li>*+* {
    margin-left: 0;
    margin-right: 50px
}

@media screen and (max-width:767px) {
    .p-pflecare__list>li>*+* {
        margin-right: 0
    }
}

.p-pflecare__list>li:nth-of-type(2n)>*+* {
    margin-left: 50px
}

@media screen and (max-width:767px) {
    .p-pflecare__list>li:nth-of-type(2n)>*+* {
        margin-left: 0
    }
}

.p-pflecare__list--private>li:last-child .p-pflecare__list-desc {
    margin-top: -40px
}

@media screen and (max-width:767px) {
    .p-pflecare__list--private>li:last-child .p-pflecare__list-desc {
        margin-top: 0
    }
}

.p-pflecare__list-img {
    flex: 1 1 460px;
    max-width: 460px;
    min-width: 460px
}

@media screen and (max-width:767px) {
    .p-pflecare__list-img {
        margin-top: 30px;
        max-width: 100%;
        min-width: 0;
        width: 100%
    }
}

.p-pflecare__list-desc {
    flex: 1 1 100%
}

.p-pflecare__list-desc>*+* {
    margin-top: 20px
}

@media screen and (max-width:767px) {
    .p-pflecare__list-desc>*+* {
        margin-top: 30px
    }
}

.p-pflecare__list-desc .ttl {
    color: #e8529a;
    font-family: "Noto Serif JP", serif;
    font-size: 42px;
    font-weight: 700;
    line-height: 1.2;
    margin-bottom: 30px
}

@media screen and (max-width:767px) {
    .p-pflecare__list-desc .ttl {
        font-size: 2.4rem;
        margin-bottom: 25px
    }
}

.p-pflecare__list-desc .ttl-sm {
    font-size: 2.3rem
}

@media screen and (max-width:767px) {
    .p-pflecare__list-desc .ttl-sm {
        font-size: 2rem
    }
}

.p-pflecare__list-desc .ttl-md {
    font-size: 3.6rem
}

@media screen and (max-width:767px) {
    .p-pflecare__list-desc .ttl-md {
        font-size: 2rem
    }
}

.p-pflecare__list-desc ul {
    padding-left: 20px
}

@media screen and (max-width:767px) {
    .p-pflecare__list-desc ul {
        margin-left: 0
    }
}

.p-pflecare__list-desc ul li {
    padding-left: 18px;
    position: relative
}

.p-pflecare__list-desc ul li:before {
    content: "・";
    left: 0;
    position: absolute;
    top: 0
}

.p-pflecare__step>li+li {
    margin-top: 54px;
    position: relative
}

.p-pflecare__step>li+li:before {
    border-top: 2px dotted #777;
    content: "";
    display: block;
    height: 1px;
    position: absolute;
    top: -18px;
    width: 100%
}

@media screen and (max-width:767px) {
    .p-pflecare__step>li+li:before {
        top: -28px
    }
}

.p-pflecare__step-item {
    display: flex;
    margin-bottom: 24px;
    padding-left: 94px;
    position: relative
}

@media screen and (max-width:767px) {
    .p-pflecare__step-item {
        display: block;
        padding-left: 62px
    }
}

.p-pflecare__step-item:after,
.p-pflecare__step-item:before {
    background-repeat: no-repeat;
    background-size: contain;
    content: "";
    display: block;
    left: 0;
    position: absolute
}

.p-pflecare__step-item:before {
    background-position: top 0 center;
    height: 100%;
    top: 0;
    width: 74px
}

@media screen and (max-width:767px) {
    .p-pflecare__step-item:before {
        width: 47px
    }
}

.p-pflecare__step-item:after {
    background-position: bottom 0 center;
    height: 24px;
    top: calc(100% - 1px);
    width: 74px
}

@media screen and (max-width:767px) {
    .p-pflecare__step-item:after {
        bottom: 0;
        height: 16px;
        top: auto;
        width: 47px
    }
}

.p-pflecare__step-item .txt {
    align-items: center;
    display: flex;
    max-width: 456px;
    min-width: 456px;
    padding: 5px 0
}

@media screen and (max-width:767px) {
    .p-pflecare__step-item .txt {
        display: block;
        max-width: 100%;
        min-width: 0
    }
}

.p-pflecare__step-item .txt-ttl {
    align-items: center;
    display: flex;
    white-space: nowrap
}

@media screen and (max-width:767px) {
    .p-pflecare__step-item .txt-ttl {
        display: block
    }
}

.p-pflecare__step-item .txt-ttl+.txt-ttl {
    margin-bottom: 0
}

@media screen and (max-width:767px) {
    .p-pflecare__step-item .txt-ttl-label i {
        display: inline-block
    }
}

.p-pflecare__step-item .txt-ttl-main {
    color: #e8529a;
    font-family: "Noto Serif JP", serif;
    font-size: 3.2rem;
    font-weight: 700;
    margin-left: 25px
}

@media screen and (max-width:767px) {
    .p-pflecare__step-item .txt-ttl-main {
        font-size: 2.7rem;
        margin-left: 0
    }
}

.p-pflecare__step-item .txt-ttl+.txt-ttl {
    margin-top: 25px
}

@media screen and (max-width:767px) {
    .p-pflecare__step-item .txt-ttl+.txt-ttl {
        margin-top: 29px
    }
}

.p-pflecare__step-item .txt-ttl+.txt-check {
    margin-top: 40px
}

@media screen and (max-width:767px) {
    .p-pflecare__step-item .txt-ttl+.txt-check {
        margin-top: 20px
    }
}

.p-pflecare__step-item .txt-check-ttl {
    font-size: 2.2rem;
    font-weight: 700;
    margin-bottom: 25px
}

@media screen and (max-width:767px) {
    .p-pflecare__step-item .txt-check-ttl {
        font-size: 1.4rem;
        margin-bottom: 20px
    }
}

.p-pflecare__step-item .txt-check-ttl em {
    color: #e8529a
}

.p-pflecare__step-item .txt-check-list {
    padding-left: 23px;
    position: relative
}

@media screen and (max-width:767px) {
    .p-pflecare__step-item .txt-check-list {
        padding-left: 15px
    }
}

.p-pflecare__step-item .txt-check-list>li {
    padding-left: 40px;
    position: relative
}

@media screen and (max-width:767px) {
    .p-pflecare__step-item .txt-check-list>li {
        padding-left: 25px
    }
}

.p-pflecare__step-item .txt-check-list>li:before {
    background-image: url(../../assets/img/pflecare/check_icon@2x.png);
    background-size: cover;
    content: "";
    height: 25px;
    left: 0;
    position: absolute;
    top: 0;
    width: 29px
}

@media screen and (max-width:767px) {
    .p-pflecare__step-item .txt-check-list>li:before {
        height: 13px;
        top: 7px;
        width: 14.5px
    }
}

.p-pflecare__step-item .txt-check-list>li+li {
    margin-top: 20px
}

@media screen and (max-width:767px) {
    .p-pflecare__step-item .txt-check-list>li+li {
        margin-top: 10px
    }
}

.p-pflecare__step-item .img {
    margin-left: 0
}

@media screen and (max-width:767px) {
    .p-pflecare__step-item .img {
        margin-left: 0;
        margin-top: 26px
    }

    .p-pflecare__step-item .img img {
        width: 100%
    }
}

.p-pflecare__step>li:first-of-type .p-pflecare__step-item:before {
    background-color: #ffd7e8;
    background-image: url(../../assets/img/pflecare/step_01_before_pc.png)
}

@media screen and (max-width:767px) {
    .p-pflecare__step>li:first-of-type .p-pflecare__step-item:before {
        background-image: url(../../assets/img/pflecare/step_01_before_sp.png)
    }
}

.p-pflecare__step>li:first-of-type .p-pflecare__step-item:after {
    background-image: url(../../assets/img/pflecare/step_01_after@2x.png)
}

.p-pflecare__step>li:nth-of-type(2) .p-pflecare__step-item:before {
    background-color: #ffb6d6;
    background-image: url(../../assets/img/pflecare/step_02_before_pc.png)
}

@media screen and (max-width:767px) {
    .p-pflecare__step>li:nth-of-type(2) .p-pflecare__step-item:before {
        background-image: url(../../assets/img/pflecare/step_02_before_sp.png)
    }
}

.p-pflecare__step>li:nth-of-type(2) .p-pflecare__step-item:after {
    background-image: url(../../assets/img/pflecare/step_02_after@2x.png)
}

.p-pflecare__step>li:nth-of-type(3) .p-pflecare__step-item:before {
    background-color: #ff84ba;
    background-image: url(../../assets/img/pflecare/step_03_before_pc.png)
}

@media screen and (max-width:767px) {
    .p-pflecare__step>li:nth-of-type(3) .p-pflecare__step-item:before {
        background-image: url(../../assets/img/pflecare/step_03_before_sp.png)
    }
}

.p-pflecare__step>li:nth-of-type(3) .p-pflecare__step-item:after {
    background-image: url(../../assets/img/pflecare/step_03_after@2x.png)
}

.p-pflecare__step>li:nth-of-type(4) .p-pflecare__step-item:before {
    background-color: #de4387;
    background-image: url(../../assets/img/pflecare/step_05_before_pc.png)
}

.p-pflecare__step>li:nth-of-type(4) .p-pflecare__step-item:after {
    background-image: url(../../assets/img/pflecare/step_05_after@2x.png)
}

.p-pflecare__step>li:nth-of-type(5) .p-pflecare__step-item:before {
    background-color: #d50060;
    background-image: url(../../assets/img/pflecare/step_04_before_pc.png)
}

.p-pflecare__step>li:nth-of-type(5) .p-pflecare__step-item:after {
    background-image: url(../../assets/img/pflecare/step_04_after@2x.png)
}

.p-pflecare__volume-img img.pc {
    display: block;
    margin: 0 auto
}

@media screen and (max-width:767px) {
    .p-pflecare__volume-img img.pc {
        display: none
    }
}

.p-pflecare__volume-img img.sp {
    display: none
}

@media screen and (max-width:767px) {
    .p-pflecare__volume-img img.sp {
        display: block;
        margin: 0 auto 40px
    }
}

.p-pricingplans .pinktext {
    color: #e595bb
}

.p-pricingplans .vividpinktext {
    color: #e8529a
}

.p-pricingplans .bluetext {
    color: #5a83e0
}

.p-pricingplans .vividbluetext {
    color: #3866ce
}

.p-pricingplans .pc-i {
    display: inline !important
}

@media (max-width:767px) {
    .p-pricingplans .pc-i {
        display: none !important
    }
}

.p-pricingplans .sp-i {
    display: none !important
}

@media (max-width:767px) {
    .p-pricingplans .sp-i {
        display: inline !important
    }
}

.p-pricingplans .pc-ib {
    display: inline-block !important
}

@media (max-width:767px) {
    .p-pricingplans .pc-ib {
        display: none !important
    }
}

.p-pricingplans .sp-ib {
    display: none !important
}

@media (max-width:767px) {
    .p-pricingplans .sp-ib {
        display: inline-block !important
    }
}

.p-pricingplans .pc-b {
    display: block !important
}

@media (max-width:767px) {
    .p-pricingplans .pc-b {
        display: none !important
    }
}

.p-pricingplans .sp-b {
    display: none !important
}

@media (max-width:767px) {
    .p-pricingplans .sp-b {
        display: block !important
    }
}

.p-pricingplans .pc-only-b {
    display: block !important
}

@media (max-width:960px) {
    .p-pricingplans .pc-only-b {
        display: none !important
    }
}

@media (max-width:767px) {
    .p-pricingplans .pc-only-b {
        display: none !important
    }
}

.p-pricingplans .tb-only-b {
    display: none !important
}

@media (max-width:960px) {
    .p-pricingplans .tb-only-b {
        display: block !important
    }
}

@media (max-width:767px) {
    .p-pricingplans .tb-only-b {
        display: none !important
    }
}

.p-pricingplans .sp-only-b {
    display: none !important
}

@media (max-width:960px) {
    .p-pricingplans .sp-only-b {
        display: none !important
    }
}

@media (max-width:767px) {
    .p-pricingplans .sp-only-b {
        display: block !important
    }
}

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

.p-pricingplans .serif {
    font-family: 游明朝, YuMincho, ヒラギノ明朝 ProN W3, Hiragino Mincho ProN, HG明朝E, ＭＳ Ｐ明朝, ＭＳ 明朝, serif
}

.p-pricingplans .inner {
    margin: 0 auto;
    max-width: 960px;
    padding: 0
}

@media (max-width:960px) {
    .p-pricingplans .inner {
        margin: 0 15px;
        max-width: 100%;
        padding: 0;
        width: auto
    }
}

@media (max-width:767px) {
    .p-pricingplans .inner {
        margin: 0 9px
    }
}

.p-pricingplans h1 {
    font-size: 4.2rem;
    padding: 24px 0 0;
    text-align: center
}

@media (max-width:767px) {
    .p-pricingplans h1 {
        font-size: 2.1rem
    }
}

.p-pricingplans .visual {
    margin: 20px 0 0
}

.p-pricingplans .visual .mainimg {
    text-align: center
}

.p-pricingplans .select h2 {
    font-family: 游明朝体, Yu Mincho, YuMincho, ヒラギノ明朝 Pro, Hiragino Mincho Pro, MS P明朝, MS PMincho, serif;
    font-size: 3rem;
    font-weight: 600;
    letter-spacing: .1em;
    padding: 80px 0 0;
    text-align: center
}

@media (max-width:767px) {
    .p-pricingplans .select h2 {
        font-size: 2rem;
        padding: 40px 0 0
    }
}

.p-pricingplans .select h2 i {
    font-size: 3.4rem
}

@media (max-width:767px) {
    .p-pricingplans .select h2 i {
        font-size: 2rem
    }
}

.p-pricingplans .select h2 em {
    display: block;
    font-size: 4.2rem;
    padding: 10px 0 0;
    text-align: center
}

@media (max-width:767px) {
    .p-pricingplans .select h2 em {
        font-size: 2.8rem
    }
}

.p-pricingplans .select .planlead {
    font-size: 1.6rem;
    line-height: 1.8;
    padding: 45px 0 0;
    text-align: center
}

@media (max-width:767px) {
    .p-pricingplans .select .planlead {
        font-size: 1.3rem;
        padding: 25px 6px 0;
        text-align: left
    }
}

.p-pricingplans .select .tabs {
    display: flex;
    margin: 50px -15px 0
}

@media (max-width:767px) {
    .p-pricingplans .select .tabs {
        margin: 40px -5px 0
    }
}

.p-pricingplans .select .tabs li.tab {
    border-bottom: 8px solid #fff;
    border-radius: 5px 5px 0 0;
    color: #fff;
    font-size: 1.8rem;
    line-height: 1;
    margin: 0 15px;
    position: relative;
    text-align: left;
    vertical-align: top;
    width: 50%
}

@media (max-width:767px) {
    .p-pricingplans .select .tabs li.tab {
        border-bottom: 4px solid #fff;
        margin: 0 5px
    }
}

.p-pricingplans .select .tabs li.tab.flatrate {
    background-color: #e695bc
}

.p-pricingplans .select .tabs li.tab.flatrate.active {
    border-bottom: 8px solid #e695bc
}

@media (max-width:767px) {
    .p-pricingplans .select .tabs li.tab.flatrate.active {
        border-bottom: 4px solid #e695bc
    }
}

.p-pricingplans .select .tabs li.tab.flatrate a:before {
    background: url(../../assets/img/price/pennant_new.png) 0 0 no-repeat;
    background-size: 74px 74px;
    content: "";
    display: block;
    height: 74px;
    left: 6px;
    position: absolute;
    top: 6px;
    width: 74px;
    z-index: 10
}

@media (max-width:767px) {
    .p-pricingplans .select .tabs li.tab.flatrate a:before {
        background: url(../../assets/img/price/sp/pennant_new.png) 0 0 no-repeat;
        background-size: 33px 33px;
        left: 3px;
        top: 3px
    }
}

.p-pricingplans .select .tabs li.tab.purchase {
    background-color: #92b9ec
}

.p-pricingplans .select .tabs li.tab.purchase.active {
    border-bottom: 8px solid #92b9ec
}

@media (max-width:767px) {
    .p-pricingplans .select .tabs li.tab.purchase.active {
        border-bottom: 4px solid #92b9ec
    }
}

.p-pricingplans .select .tabs li.tab p>a {
    display: none
}

.p-pricingplans .select .tabs li.tab a {
    background-image: url(../../assets/img/price/icon_arrow_under.png);
    background-position: center 95%;
    background-repeat: no-repeat;
    color: #fff;
    display: block;
    padding: 28px 0 40px;
    text-decoration: none
}

@media (max-width:767px) {
    .p-pricingplans .select .tabs li.tab a {
        background-image: url(../../assets/img/price/icon_arrow_under.png);
        background-position: center 90%;
        background-repeat: no-repeat;
        background-size: 28px 14px;
        padding: 12px 0 35px
    }
}

.p-pricingplans .select .tabs li.tab a:hover {
    opacity: .8
}

.p-pricingplans .select .tabs li.tab a:active {
    opacity: 1
}

.p-pricingplans .select .tabs li.tab a .tabtext {
    display: table;
    margin: 0 auto
}

.p-pricingplans .select .tabs li.tab a .tabtext p {
    display: table-cell;
    text-align: left;
    vertical-align: middle
}

@media (max-width:767px) {
    .p-pricingplans .select .tabs li.tab a .tabtext p {
        text-align: center
    }
}

.p-pricingplans .select .tabs li.tab a .tabtext p.icon {
    padding: 0 18px 0 0
}

@media (max-width:767px) {
    .p-pricingplans .select .tabs li.tab a .tabtext p.icon {
        display: none
    }
}

.p-pricingplans .select .tabs li.tab a .tabtext p.planname {
    font-size: 1.8rem
}

@media (max-width:767px) {
    .p-pricingplans .select .tabs li.tab a .tabtext p.planname {
        font-size: 1.2rem
    }
}

.p-pricingplans .select .tabs li.tab a .tabtext p.planname em {
    display: block;
    font-family: 游明朝体, Yu Mincho, YuMincho, ヒラギノ明朝 Pro, Hiragino Mincho Pro, MS P明朝, MS PMincho, serif;
    font-size: 3.6rem;
    font-weight: 600;
    line-height: 1;
    padding: 5px 0 0
}

@media (max-width:767px) {
    .p-pricingplans .select .tabs li.tab a .tabtext p.planname em {
        font-size: 2.2rem;
        padding: 8px 0 0
    }
}

.p-pricingplans .select .tabcontents {
    display: none;
    margin: 0 0 74px;
    padding: 30px
}

@media (max-width:767px) {
    .p-pricingplans .select .tabcontents {
        margin: 0 0 50px;
        padding: 15px
    }
}

.p-pricingplans .select .tabcontents.active {
    display: block
}

.p-pricingplans .select .tabcontents.flatrate {
    background-color: #e695bc
}

.p-pricingplans .select .tabcontents.flatrate .box {
    background-color: #fdf0f6
}

.p-pricingplans .select .tabcontents.flatrate .box .merit.merit3 ul li dl {
    border: 6px solid #e695bc
}

.p-pricingplans .select .tabcontents.flatrate .box .merit.merit3 ul li dl dt {
    background: url(../../assets/img/price/line_dot_pink.png) 0 bottom repeat-x
}

.p-pricingplans .select .tabcontents.purchase {
    background-color: #92b9ec
}

.p-pricingplans .select .tabcontents.purchase .box {
    background-color: #f0f5fd
}

.p-pricingplans .select .tabcontents.purchase .box .merit.merit3 ul li dl {
    border: 6px solid #92b9ec
}

.p-pricingplans .select .tabcontents.purchase .box .merit.merit3 ul li dl dt {
    background: url(../../assets/img/price/line_dot_blue.png) 0 bottom repeat-x
}

.p-pricingplans .select .tabcontents .box {
    padding: 54px
}

@media (max-width:767px) {
    .p-pricingplans .select .tabcontents .box {
        padding: 25px
    }
}

.p-pricingplans .select .tabcontents .box:nth-child(n+2) {
    margin: 30px 0 0
}

@media (max-width:767px) {
    .p-pricingplans .select .tabcontents .box:nth-child(n+2) {
        margin: 15px 0 0
    }
}

.p-pricingplans .select .tabcontents .box .outline .set {
    display: table
}

@media (max-width:767px) {
    .p-pricingplans .select .tabcontents .box .outline .set {
        display: block
    }
}

.p-pricingplans .select .tabcontents .box .outline .set .pic {
    display: table-cell;
    vertical-align: top;
    width: 50%
}

@media (max-width:767px) {
    .p-pricingplans .select .tabcontents .box .outline .set .pic {
        display: block;
        width: auto
    }
}

.p-pricingplans .select .tabcontents .box .outline .set .text {
    display: table-cell;
    font-size: 1.6rem;
    line-height: 1.6;
    padding: 0 0 0 36px;
    vertical-align: top
}

.p-pricingplans .select .tabcontents .box .outline .set .text span {
    display: block
}

@media (max-width:767px) {
    .p-pricingplans .select .tabcontents .box .outline .set .text {
        display: block;
        font-size: 1.3rem;
        padding: 25px 0 0
    }
}

.p-pricingplans .select .tabcontents .box .outline .pricebox {
    background-color: #fff;
    margin: 36px 0 0
}

@media (max-width:767px) {
    .p-pricingplans .select .tabcontents .box .outline .pricebox {
        margin: 30px 0 0
    }
}

.p-pricingplans .select .tabcontents .box h3 {
    font-family: 游明朝体, Yu Mincho, YuMincho, ヒラギノ明朝 Pro, Hiragino Mincho Pro, MS P明朝, MS PMincho, serif;
    font-size: 4.2rem;
    font-weight: 600;
    padding: 0;
    text-align: center
}

@media (max-width:767px) {
    .p-pricingplans .select .tabcontents .box h3 {
        font-size: 2.8rem;
        line-height: 1.2;
        padding: 25px 0 0
    }
}

.p-pricingplans .select .tabcontents .box .meritlead {
    font-size: 1.6rem;
    padding: 40px 0 45px;
    text-align: center
}

@media (max-width:767px) {
    .p-pricingplans .select .tabcontents .box .meritlead {
        font-size: 1.3rem;
        line-height: 1.6;
        padding: 25px 0 40px;
        text-align: left
    }
}

.p-pricingplans .select .tabcontents .box .merit h4 {
    background: url(../../assets/img/price/line_white.png) 0 bottom repeat-x;
    font-family: 游明朝体, Yu Mincho, YuMincho, ヒラギノ明朝 Pro, Hiragino Mincho Pro, MS P明朝, MS PMincho, serif;
    font-weight: 600;
    line-height: 1;
    margin: 0 0 34px;
    padding: 0 0 8px
}

@media (max-width:767px) {
    .p-pricingplans .select .tabcontents .box .merit h4 {
        background: none;
        margin: 0 0 20px
    }
}

.p-pricingplans .select .tabcontents .box .merit h4 img {
    padding: 0 28px 0 0;
    vertical-align: bottom
}

@media (max-width:767px) {
    .p-pricingplans .select .tabcontents .box .merit h4 img {
        display: block;
        height: 77px;
        padding: 0 0 10px;
        width: auto
    }
}

.p-pricingplans .select .tabcontents .box .merit h4 span {
    font-family: 游明朝体, Yu Mincho, YuMincho, ヒラギノ明朝 Pro, Hiragino Mincho Pro, MS P明朝, MS PMincho, serif;
    font-size: 4.2rem;
    font-weight: 600;
    line-height: 1
}

@media (max-width:960px) {
    .p-pricingplans .select .tabcontents .box .merit h4 span {
        display: inline-block;
        font-size: 3.6rem;
        padding: 20px 0 0
    }
}

@media (max-width:767px) {
    .p-pricingplans .select .tabcontents .box .merit h4 span {
        background: url(../../assets/img/price/line_white.png) 0 bottom repeat-x;
        background-size: 100% 16px;
        display: inline;
        font-size: 2.7rem;
        line-height: 1.4;
        padding: 0
    }
}

.p-pricingplans .select .tabcontents .box .merit .set {
    display: table
}

@media (max-width:767px) {
    .p-pricingplans .select .tabcontents .box .merit .set {
        display: block
    }
}

.p-pricingplans .select .tabcontents .box .merit .set .pic {
    display: table-cell;
    vertical-align: top;
    width: 60%
}

@media (max-width:767px) {
    .p-pricingplans .select .tabcontents .box .merit .set .pic {
        display: block;
        width: auto
    }
}

.p-pricingplans .select .tabcontents .box .merit .set .text {
    display: table-cell;
    font-size: 1.6rem;
    line-height: 1.7;
    padding: 0 0 0 36px;
    vertical-align: top;
    vertical-align: middle
}

@media (max-width:767px) {
    .p-pricingplans .select .tabcontents .box .merit .set .text {
        display: block;
        font-size: 1.3rem;
        padding: 25px 0 0
    }
}

.p-pricingplans .select .tabcontents .box .merit .set .text a {
    color: #675961
}

.p-pricingplans .select .tabcontents .box .merit.merit2 {
    margin: 54px 0 0
}

@media (max-width:767px) {
    .p-pricingplans .select .tabcontents .box .merit.merit2 {
        margin: 40px 0 0
    }
}

.p-pricingplans .select .tabcontents .box .merit.merit3 {
    margin: 54px 0 0
}

@media (max-width:767px) {
    .p-pricingplans .select .tabcontents .box .merit.merit3 {
        margin: 40px 0 0
    }
}

.p-pricingplans .select .tabcontents .box .merit.merit3 ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    margin: 0 -15px -30px
}

@media (max-width:767px) {
    .p-pricingplans .select .tabcontents .box .merit.merit3 ul {
        margin: 0
    }
}

.p-pricingplans .select .tabcontents .box .merit.merit3 ul li {
    padding: 0 15px 30px;
    width: 33.333333%
}

@media (max-width:767px) {
    .p-pricingplans .select .tabcontents .box .merit.merit3 ul li {
        padding: 0;
        width: 100%
    }

    .p-pricingplans .select .tabcontents .box .merit.merit3 ul li:nth-child(n+2) {
        margin: 25px 0 0
    }
}

.p-pricingplans .select .tabcontents .box .merit.merit3 ul li dl {
    background-color: #fff;
    box-sizing: border-box;
    height: 230px
}

@media (max-width:767px) {
    .p-pricingplans .select .tabcontents .box .merit.merit3 ul li dl {
        height: auto
    }
}

.p-pricingplans .select .tabcontents .box .merit.merit3 ul li dl dt {
    display: table;
    margin: 0 auto;
    width: 80%
}

.p-pricingplans .select .tabcontents .box .merit.merit3 ul li dl dt span {
    display: table-cell;
    font-family: 游明朝体, Yu Mincho, YuMincho, ヒラギノ明朝 Pro, Hiragino Mincho Pro, MS P明朝, MS PMincho, serif;
    font-size: 2rem;
    font-weight: 600;
    height: 100px;
    text-align: center;
    vertical-align: middle
}

@media (max-width:960px) {
    .p-pricingplans .select .tabcontents .box .merit.merit3 ul li dl dt span {
        font-size: 1.6rem;
        white-space: nowrap
    }
}

@media (max-width:767px) {
    .p-pricingplans .select .tabcontents .box .merit.merit3 ul li dl dt span {
        font-size: 1.8rem;
        height: auto;
        padding: 15px 0;
        white-space: normal
    }
}

.p-pricingplans .select .tabcontents .box .merit.merit3 ul li dl dd {
    display: table;
    margin: 0 auto;
    width: 100%
}

.p-pricingplans .select .tabcontents .box .merit.merit3 ul li dl dd p {
    display: table-cell;
    font-family: 游明朝体, Yu Mincho, YuMincho, ヒラギノ明朝 Pro, Hiragino Mincho Pro, MS P明朝, MS PMincho, serif;
    font-size: 2.6rem;
    font-weight: 600;
    height: 120px;
    line-height: 1.3;
    text-align: center;
    vertical-align: middle
}

@media (max-width:960px) {
    .p-pricingplans .select .tabcontents .box .merit.merit3 ul li dl dd p {
        font-size: 1.8rem
    }
}

@media (max-width:767px) {
    .p-pricingplans .select .tabcontents .box .merit.merit3 ul li dl dd p {
        font-size: 2rem;
        height: auto;
        line-height: 1.5;
        padding: 20px 0
    }
}

.p-pricingplans .select .tabcontents .box .merit.merit3 ul li dl dd p em {
    display: block;
    font-size: 2.8rem
}

@media (max-width:960px) {
    .p-pricingplans .select .tabcontents .box .merit.merit3 ul li dl dd p em {
        font-size: 2rem
    }
}

@media (max-width:767px) {
    .p-pricingplans .select .tabcontents .box .merit.merit3 ul li dl dd p em {
        font-size: 2.5rem
    }
}

.p-pricingplans .products .inner h2 {
    font-family: 游明朝体, Yu Mincho, YuMincho, ヒラギノ明朝 Pro, Hiragino Mincho Pro, MS P明朝, MS PMincho, serif;
    font-size: 4.2rem;
    font-weight: 600;
    padding: 70px 0 0;
    text-align: center
}

@media (max-width:767px) {
    .p-pricingplans .products .inner h2 {
        font-size: 2.8rem;
        padding: 50px 0 0
    }
}

.p-pricingplans .products .inner .lead {
    font-size: 1.6rem;
    padding: 45px 0 0;
    text-align: center
}

@media (max-width:767px) {
    .p-pricingplans .products .inner .lead {
        font-size: 1.3rem;
        padding: 25px 6px 0;
        text-align: left
    }
}

.p-pricingplans .products .inner .article {
    padding: 50px 0 0
}

@media (max-width:767px) {
    .p-pricingplans .products .inner .article {
        padding: 35px 0 0
    }
}

.p-pricingplans .products .inner .article ul {
    display: flex;
    flex-wrap: wrap;
    margin: 0 -15px
}

@media (max-width:767px) {
    .p-pricingplans .products .inner .article ul {
        margin: 0 -9px
    }
}

.p-pricingplans .products .inner .article ul li {
    padding: 0 15px 40px;
    width: 33.333333%
}

@media (max-width:767px) {
    .p-pricingplans .products .inner .article ul li {
        padding: 0 9px 40px;
        width: 50%
    }
}

.p-pricingplans .products .inner .article ul li a {
    display: block;
    text-decoration: none
}

.p-pricingplans .products .inner .article ul li a dl dt {
    position: relative
}

.p-pricingplans .products .inner .article ul li a dl dt .type {
    bottom: 0;
    color: #fff;
    font-size: 1.4rem;
    left: 0;
    letter-spacing: .1em;
    line-height: 30px;
    position: absolute;
    text-align: center;
    width: 130px
}

@media (max-width:767px) {
    .p-pricingplans .products .inner .article ul li a dl dt .type {
        font-size: 1rem;
        line-height: 21px;
        width: 52%
    }
}

.p-pricingplans .products .inner .article ul li a dl dt .type.short,
.p-pricingplans .products .inner .article ul li a dl dt .type.silver_short {
    background-color: #67a862
}

.p-pricingplans .products .inner .article ul li a dl dt .type.midium {
    background-color: #c64458
}

.p-pricingplans .products .inner .article ul li a dl dt .type.long {
    background-color: #9047ad
}

.p-pricingplans .products .inner .article ul li a dl dd {
    color: #202121;
    font-family: 游明朝体, Yu Mincho, YuMincho, ヒラギノ明朝 Pro, Hiragino Mincho Pro, MS P明朝, MS PMincho, serif;
    font-size: 1.6rem;
    font-weight: 600;
    letter-spacing: .1em;
    line-break: strict;
    line-height: 1.5;
    padding: 14px 0 0
}

@media (max-width:767px) {
    .p-pricingplans .products .inner .article ul li a dl dd {
        font-size: 1.4rem
    }
}

.p-pricingplans .reservation-belt {
    background-color: #71d0d8;
    padding: 70px 0
}

@media (max-width:960px) {
    .p-pricingplans .reservation-belt {
        padding: 30px 0
    }
}

@media (max-width:767px) {
    .p-pricingplans .reservation-belt {
        padding: 30px 0
    }
}

.p-pricingplans .reservation-belt .reserve-btn {
    letter-spacing: .1em;
    margin: 0 50px;
    text-align: center
}

@media (max-width:960px) {
    .p-pricingplans .reservation-belt .reserve-btn {
        margin: 0
    }
}

@media (max-width:767px) {
    .p-pricingplans .reservation-belt .reserve-btn {
        margin: 0
    }
}

.p-pricingplans .reservation-belt .reserve-btn a {
    background-color: #ec719e;
    border-radius: 15px;
    box-shadow: 0 8px 0 0 #bb6685;
    color: #fff;
    display: block;
    letter-spacing: .05em;
    line-height: 1;
    margin: 0 auto;
    max-width: 100%;
    padding: 25px 0 15px;
    position: relative;
    text-decoration: none;
    transition-delay: 0s;
    transition-duration: .25s;
    transition-property: all;
    transition-timing-function: ease-in-out
}

@media (max-width:960px) {
    .p-pricingplans .reservation-belt .reserve-btn a {
        box-shadow: 0 5px 0 0 #bb6685;
        padding: 16px 0 12px
    }
}

@media (max-width:767px) {
    .p-pricingplans .reservation-belt .reserve-btn a {
        box-shadow: 0 5px 0 0 #bb6685;
        padding: 8px 0 6px
    }
}

.p-pricingplans .reservation-belt .reserve-btn a:before {
    background-size: 76px 66px;
    content: "";
    display: inline-block;
    height: 66px;
    left: 36px;
    margin-top: -33px;
    position: absolute;
    top: 50%;
    width: 76px
}

@media (max-width:960px) {
    .p-pricingplans .reservation-belt .reserve-btn a:before {
        background-size: 33px 28px;
        height: 28px;
        left: 14px;
        margin-top: -14px;
        top: 50%;
        width: 33px
    }
}

@media (max-width:767px) {
    .p-pricingplans .reservation-belt .reserve-btn a:before {
        background-size: 33px 28px;
        height: 28px;
        left: 14px;
        margin-top: -14px;
        top: 50%;
        width: 33px
    }
}

.p-pricingplans .reservation-belt .reserve-btn a:after {
    background-size: 16px 30px;
    content: "";
    display: inline-block;
    height: 30px;
    margin-top: -15px;
    position: absolute;
    right: 42px;
    top: 50%;
    width: 16px
}

@media (max-width:960px) {
    .p-pricingplans .reservation-belt .reserve-btn a:after {
        background-size: 8px 15px;
        height: 15px;
        margin-top: -7px;
        right: 16px;
        top: 50%;
        width: 8px
    }
}

@media (max-width:767px) {
    .p-pricingplans .reservation-belt .reserve-btn a:after {
        background-size: 8px 15px;
        height: 15px;
        margin-top: -7px;
        right: 16px;
        top: 50%;
        width: 8px
    }
}

.p-pricingplans .reservation-belt .reserve-btn .label {
    padding: 0 0 12px
}

@media (max-width:960px) {
    .p-pricingplans .reservation-belt .reserve-btn .label {
        padding: 0 0 3px
    }
}

@media (max-width:767px) {
    .p-pricingplans .reservation-belt .reserve-btn .label {
        padding: 0 0 3px
    }
}

.p-pricingplans .reservation-belt .reserve-btn .label span {
    background-color: #fff;
    border-radius: 3em;
    color: #cf0066;
    display: inline-block;
    font-family: 游明朝体, Yu Mincho, YuMincho, ヒラギノ明朝 Pro, Hiragino Mincho Pro, MS P明朝, MS PMincho, serif;
    font-size: 2.4rem;
    font-weight: 600;
    line-height: 36px;
    padding: 0 .8em
}

@media (max-width:960px) {
    .p-pricingplans .reservation-belt .reserve-btn .label span {
        font-size: 1.9rem;
        line-height: 1.4
    }
}

@media (max-width:767px) {
    .p-pricingplans .reservation-belt .reserve-btn .label span {
        font-size: .9rem;
        line-height: 1.4
    }
}

.p-pricingplans .reservation-belt .reserve-btn .here {
    display: inline-block;
    font-family: 游明朝体, Yu Mincho, YuMincho, ヒラギノ明朝 Pro, Hiragino Mincho Pro, MS P明朝, MS PMincho, serif;
    font-size: 4.5rem;
    font-weight: 600;
    line-height: 1;
    text-align: center
}

@media (max-width:960px) {
    .p-pricingplans .reservation-belt .reserve-btn .here {
        font-size: 2.7rem;
        padding: .1em 0 0
    }
}

@media (max-width:767px) {
    .p-pricingplans .reservation-belt .reserve-btn .here {
        font-size: 1.7rem;
        padding: .1em 0 0
    }
}

.p-pricingplans .reservation-belt .reserve-btn .here em {
    font-size: 5.2rem;
    line-height: 1
}

@media (max-width:960px) {
    .p-pricingplans .reservation-belt .reserve-btn .here em {
        font-size: 2.9rem
    }
}

@media (max-width:767px) {
    .p-pricingplans .reservation-belt .reserve-btn .here em {
        font-size: 1.9rem
    }
}

.p-pricingplans .reservation-belt .shoplist-btn {
    letter-spacing: .1em;
    margin: 36px 0 0;
    text-align: center
}

@media (max-width:767px) {
    .p-pricingplans .reservation-belt .shoplist-btn {
        margin: 40px 0 0
    }
}

.p-pricingplans .reservation-belt .shoplist-btn a {
    background-color: #1579d6;
    border-radius: 15px;
    box-shadow: 0 8px 0 0 #0758a4;
    color: #fff;
    display: block;
    font-size: 3.4rem;
    letter-spacing: .05em;
    line-height: 100px;
    margin: 0 auto;
    max-width: 100%;
    position: relative;
    text-decoration: none;
    transition-delay: 0s;
    transition-duration: .25s;
    transition-property: all;
    transition-timing-function: ease-in-out;
    width: 600px
}

@media (max-width:767px) {
    .p-pricingplans .reservation-belt .shoplist-btn a {
        box-shadow: 0 5px 0 0 #0758a4;
        font-size: 1.8rem;
        line-height: 60px;
        padding: 0
    }
}

.p-pricingplans .reservation-belt .shoplist-btn a:before {
    background-size: 52px 52px;
    content: "";
    display: inline-block;
    height: 52px;
    margin: -.2em .5em 0 0;
    vertical-align: middle;
    width: 52px
}

@media (max-width:767px) {
    .p-pricingplans .reservation-belt .shoplist-btn a:before {
        background-size: 26px 26px;
        height: 26px;
        width: 26px
    }
}

.p-pricingplans .reservation-belt .shoplist-btn a:after {
    background-size: 16px 30px;
    content: "";
    display: inline-block;
    height: 30px;
    margin-top: -15px;
    position: absolute;
    right: 42px;
    top: 50%;
    width: 16px
}

@media (max-width:767px) {
    .p-pricingplans .reservation-belt .shoplist-btn a:after {
        background-size: 8px 15px;
        height: 15px;
        margin-top: -7px;
        position: absolute;
        right: 16px;
        top: 50%;
        width: 8px
    }
}

.p-pricingplans .select .tabcontents .box .merit.merit3 ul li dl dt {
    width: 90%
}

.p-pricingplans .select .tabcontents.flatrate .box .merit.merit3 ul li dl dd span {
    color: #333;
    display: block;
    font-size: 12px;
    line-height: 18px
}

.p-pricingplans .select .tabcontents.purchase .box .merit.merit3 ul li:last-child {
    width: 58%
}

.p-pricingplans .select .tabcontents.purchase .box .merit.merit3 ul li:last-child dl dd span {
    color: #333;
    font-size: 20px;
    line-height: 32px
}

@media (max-width:767px) {
    .p-pricingplans .select .tabcontents.purchase .box .merit.merit3 ul li:last-child {
        width: 100%
    }
}

.p-about-feature {
    color: #333;
    margin-top: 61px
}

.p-about-feature img {
    width: 100%
}

.p-about-feature__outer {
    padding: 0 10px
}

@media screen and (max-width:800px) {
    .p-about-feature {
        margin-top: 30px
    }
}

@media screen and (max-width:600px) {
    .p-about-feature {
        margin-top: 0
    }
}

.p-about-feature-header {
    padding: 99px 0 96px;
    text-align: center
}

.p-about-feature-header .feature-subhead {
    color: #dc0250;
    margin-bottom: 27px
}

.p-about-feature-header .feature-subhead dt {
    font-family: Shippori Mincho, sans-serif;
    font-size: 20px;
    font-weight: 500;
    letter-spacing: .09em;
    line-height: 30px
}

.p-about-feature-header .feature-subhead dd {
    font-size: 38px;
    font-weight: 500;
    letter-spacing: .15em;
    line-height: 48px
}

.p-about-feature-header h3 {
    font-family: Shippori Mincho, sans-serif;
    font-size: 48px;
    font-weight: 600;
    line-height: 62px;
    margin-bottom: 23px;
    padding-left: 31px
}

.p-about-feature-header p {
    color: #000;
    font-family: Shippori Mincho, sans-serif;
    font-size: 20px;
    font-weight: 500;
    letter-spacing: .04em;
    line-height: 44px
}

.p-about-feature-header p span {
    display: block
}

@media screen and (max-width:800px) {
    .p-about-feature-header {
        padding: 50px 0 78px
    }

    .p-about-feature-header .feature-subhead dt {
        font-size: 14px;
        line-height: 28px
    }

    .p-about-feature-header .feature-subhead dd {
        font-size: 26px;
        line-height: 26px
    }

    .p-about-feature-header h3 {
        font-size: 30px;
        line-height: 40px;
        margin-bottom: 26px;
        padding-left: 0
    }

    .p-about-feature-header p {
        font-size: 18px;
        letter-spacing: .01em;
        line-height: 30px;
        margin: 0 auto;
        max-width: 98%
    }

    .p-about-feature-header p span {
        display: inline
    }
}

@media screen and (max-width:360px) {
    .p-about-feature-header h3 {
        font-size: 28px
    }

    .p-about-feature-header p {
        font-size: 16px
    }
}

.feature-bloc {
    border-top: 1px solid #dc0250
}

.feature-bloc__inner {
    padding: 46px 0 99px
}

.feature-bloc__title {
    margin-bottom: 49px;
    text-align: center
}

.feature-bloc__title dt {
    font-family: Shippori Mincho, sans-serif;
    font-size: 35px;
    font-weight: 600;
    letter-spacing: .04em;
    line-height: 45px;
    margin-bottom: 4px
}

.feature-bloc__title dt span {
    color: #dc0250;
    display: inline-block;
    font-size: 50px;
    line-height: 42px;
    margin-right: 13px
}

.feature-bloc__title dd {
    color: #000;
    font-size: 16px;
    letter-spacing: .08em;
    line-height: 32px
}

.feature-bloc .feature-box {
    align-items: center;
    display: flex;
    justify-content: space-between
}

.feature-bloc .feature-box .img-box {
    width: 33.3%
}

.feature-bloc .feature-box .txt-box {
    width: 62%
}

.feature-bloc .feature-box .txt-box__inner {
    margin-bottom: 10px
}

.feature-bloc .feature-box .txt-box__inner p {
    font-size: 16px;
    letter-spacing: .08em;
    line-height: 32px;
    margin-bottom: 26px
}

@media screen and (max-width:800px) {
    .feature-bloc__inner {
        padding: 49px 0 50px
    }

    .feature-bloc__title dt {
        font-size: 30px;
        line-height: 40px
    }

    .feature-bloc__title dt span {
        font-size: 45px
    }

    .feature-bloc .feature-box {
        align-items: flex-start
    }
}

@media screen and (max-width:600px) {
    .feature-bloc__title {
        margin-bottom: 33px;
        text-align: left
    }

    .feature-bloc__title dt {
        margin-bottom: 16px
    }

    .feature-bloc__title dt span {
        display: block;
        margin-bottom: 10px
    }

    .feature-bloc__title dd {
        line-height: 27px
    }

    .feature-bloc .feature-box {
        display: block
    }

    .feature-bloc .feature-box .img-box {
        margin-bottom: 22px
    }

    .feature-bloc .feature-box .img-box,
    .feature-bloc .feature-box .txt-box {
        width: 100%
    }

    .feature-bloc .feature-box .txt-box__inner p {
        letter-spacing: .05em;
        line-height: 28px;
        margin-bottom: 30px
    }
}

@media screen and (max-width:360px) {
    .feature-bloc__title dt {
        font-size: 28px
    }

    .feature-bloc .feature-box .txt-box__inner p {
        font-size: 14px
    }
}

.feature-bloc--feel .feature-bloc__inner {
    padding-bottom: 81px
}

.feature-bloc--feel .feature-box {
    position: relative
}

.feature-bloc--feel .feature-box .img-box {
    padding-top: 26px
}

.feature-bloc--feel .feature-box .img-box img {
    width: auto
}

.feature-bloc--feel .feature-box .img-box .stylist-name {
    font-size: 16px;
    letter-spacing: .08em;
    line-height: 32px;
    padding: 11px 0;
    text-align: center
}

.feature-bloc--feel .feature-box .txt-box {
    background: #fdeff4;
    border-radius: 20px;
    position: absolute;
    right: 0;
    top: -4px;
    width: 71.7%
}

.feature-bloc--feel .feature-box .txt-box__inner {
    margin-bottom: 0;
    padding: 41px 50px 50px 51px
}

.feature-bloc--feel .feature-box .txt-box__inner p {
    font-size: 20px;
    letter-spacing: .06em;
    line-height: 40px;
    margin-bottom: 0
}

.feature-bloc--feel .feature-box .txt-box:before {
    background-image: url(../../assets/img/customer/customer_icon.png);
    background-position: 50%;
    background-size: auto 100%;
    bottom: 19%;
    content: "";
    height: 47px;
    left: -6%;
    position: absolute;
    width: 50px
}

@media screen and (max-width:980px) {
    .feature-bloc--feel .feature-bloc__inner .txt-box__inner {
        padding: 20px
    }
}

@media screen and (max-width:800px) {
    .feature-bloc--feel .feature-bloc__inner {
        padding-bottom: 52px
    }

    .feature-bloc--feel .feature-box {
        display: block;
        margin-bottom: 25px;
        position: static
    }

    .feature-bloc--feel .feature-box:last-child {
        margin-bottom: 0
    }

    .feature-bloc--feel .feature-box .img-box {
        margin-bottom: 40px;
        width: 100%
    }

    .feature-bloc--feel .feature-box .img-box img {
        display: block;
        margin: 0 auto
    }

    .feature-bloc--feel .feature-box .img-box .stylist-name {
        font-size: 16px;
        letter-spacing: .1em;
        line-height: 32px
    }

    .feature-bloc--feel .feature-box .txt-box {
        position: relative;
        width: 100%
    }

    .feature-bloc--feel .feature-box .txt-box__inner {
        padding: 20px 19px 33px 27px
    }

    .feature-bloc--feel .feature-box .txt-box__inner p {
        line-height: 38px
    }

    .feature-bloc--feel .feature-box .txt-box:before {
        background-image: url(../../assets/img/customer/customer_icon.png);
        background-position: 50%;
        background-size: auto 100%;
        bottom: auto;
        content: "";
        height: 37px;
        left: 38%;
        position: absolute;
        top: -11%;
        width: 40px
    }
}

@media screen and (max-width:600px) {
    .feature-bloc--feel .feature-bloc__title {
        margin-bottom: 5px
    }
}

@media screen and (max-width:360px) {
    .feature-bloc--feel .feature-box .img-box .stylist-name {
        font-size: 14px;
        line-height: 28px
    }

    .feature-bloc--feel .feature-box .txt-box__inner p {
        font-size: 16px;
        line-height: 32px
    }
}

.feature-bloc--support {
    margin-top: 30px;
    position: relative
}

.feature-bloc--support .feature-box {
    margin-bottom: 49px
}

.feature-bloc--support .feature-box .txt-box__inner ul li {
    font-family: Shippori Mincho, sans-serif;
    font-size: 22px;
    font-weight: 500;
    letter-spacing: .04em;
    line-height: 32px;
    margin: 0 0 17px 40px;
    position: relative
}

.feature-bloc--support .feature-box .txt-box__inner ul li:before {
    background-image: url(../../assets/img/customer/check_icon.png);
    background-position: 50%;
    background-repeat: no-repeat;
    background-size: auto 100%;
    content: "";
    height: 36px;
    left: -40px;
    position: absolute;
    top: 5px;
    width: 37px
}

@media screen and (max-width:800px) {
    .feature-bloc--support .feature-bloc__inner {
        padding-bottom: 29px
    }

    .feature-bloc--support .feature-box {
        margin-bottom: 38px
    }

    .feature-bloc--support .feature-box .txt-box__inner ul li {
        font-size: 18px;
        letter-spacing: 0;
        line-height: 32px;
        margin: 0 0 9px 36px
    }

    .feature-bloc--support .feature-box .txt-box__inner ul li:before {
        height: 29px;
        left: -38px;
        top: 3px;
        width: 33px
    }

    .feature-bloc--nature .feature-bloc__inner {
        padding-bottom: 24px
    }
}

.feature-bloc--service .feature-bloc__title {
    margin-bottom: 35px
}

.feature-bloc--service .custom-service-bloc {
    margin: 0 auto;
    max-width: 880px
}

.feature-bloc--service .custom-service-bloc p {
    color: #000;
    font-size: 18px;
    letter-spacing: .07em;
    line-height: 34px
}

@media screen and (max-width:800px) {
    .feature-bloc--service .custom-service-bloc {
        max-width: 100%
    }

    .feature-bloc--service .custom-service-bloc p {
        font-size: 16px;
        line-height: 32px
    }
}

.feature-bloc--medical .feature-bloc__inner {
    padding-bottom: 60px
}

.feature-bloc--medical .feature-bloc__title {
    margin-bottom: 53px
}

.feature-bloc--medical .custom-medical-bloc {
    display: flex;
    justify-content: space-between;
    margin: 0 auto;
    max-width: 730px
}

@media screen and (max-width:800px) {
    .feature-bloc--medical .custom-medical-bloc {
        display: block;
        max-width: 100%
    }

    .feature-bloc--medical .custom-medical-bloc .c-btn-renewal--medical {
        margin-bottom: 10px;
        max-width: 360px
    }
}

@media screen and (max-width:600px) {
    .feature-bloc--support {
        margin-top: 0
    }

    .feature-bloc--medical .custom-medical-bloc .c-btn-renewal--medical {
        max-width: 100%
    }
}

.price-box__inner {
    margin-bottom: 16px
}

.price-box__inner h2 {
    font-family: Shippori Mincho, sans-serif;
    font-size: 35px;
    font-weight: 600;
    letter-spacing: .04em;
    line-height: 45px;
    margin-bottom: 4px
}

.price-box__inner h2 span {
    color: #dc0250;
    font-size: 14px;
    letter-spacing: .08em;
    line-height: 37px
}

.price-box__inner table {
    border: 1px solid #bbb;
    width: 100%
}

.price-box__inner table tr {
    border-bottom: 1px solid #333
}

.price-box__inner table tr:last-child {
    border-bottom: 0
}

.price-box__inner table tr th {
    width: 39%
}

.price-box__inner table tr th:first-child {
    border-right: 1px solid #bbb;
    width: 22.3%
}

.price-box__inner table tr th.monthly-plan,
.price-box__inner table tr th.purchase-plan {
    padding: 8px 0;
    text-align: center
}

.price-box__inner table tr th.monthly-plan p,
.price-box__inner table tr th.purchase-plan p {
    color: #fff;
    display: inline;
    font-family: Noto Sans JP, sans-serif;
    font-size: 20px;
    font-weight: 400;
    letter-spacing: .05em;
    line-height: 32px;
    padding-left: 42px;
    position: relative
}

.price-box__inner table tr th.monthly-plan {
    background: #dc0250
}

.price-box__inner table tr th.monthly-plan p:before {
    background-image: url(../../assets/img/customer/monthly_icon.png);
    background-position: 50%;
    background-repeat: no-repeat;
    background-size: auto 100%;
    content: "";
    height: 28px;
    left: 1px;
    position: absolute;
    top: 2px;
    width: 30px
}

.price-box__inner table tr th.purchase-plan {
    background: #00a8ad
}

.price-box__inner table tr th.purchase-plan p:before {
    background-image: url(../../assets/img/customer/plan_icon.png);
    background-position: 50%;
    background-repeat: no-repeat;
    background-size: auto 100%;
    content: "";
    height: 23px;
    left: 1px;
    position: absolute;
    top: 2px;
    width: 26px
}

.price-box__inner table tr td {
    border-right: 1px solid #bbb;
    padding: 20px;
    text-align: center
}

.price-box__inner table tr td p {
    font-size: 17px;
    letter-spacing: .09em;
    line-height: 28px
}

.price-box__inner table tr td p strong {
    font-weight: 600
}

.price-box__inner table tr td p small {
    color: #dc0250
}

.price-box__inner table tr td:last-child {
    border-right: 1
}

.price-box__inner table tr td.bg-pink {
    background: #fdeff4;
    padding: 10px 20px
}

.price-box__inner table tr td.bg-blue {
    background: #eefbf9
}

.price-box__inner table tr td.bg-gray {
    background: #f5f5f5;
    font-size: 20px;
    line-height: 30px
}

.price-box__inner table tr td.bg-gray span {
    display: block
}

.price-box__inner .purchase-note {
    color: #888;
    font-size: 14px;
    letter-spacing: .08em;
    line-height: 37px;
    text-align: right
}

@media screen and (max-width:800px) {
    .price-box__inner {
        margin-bottom: 27px
    }

    .price-box__inner table tr td,
    .price-box__inner table tr th {
        width: 100%
    }

    .price-box__inner table tr td {
        align-items: center;
        border-bottom: 1px solid #bbb;
        border-right: 0;
        display: block;
        display: inline-flex;
        justify-content: center;
        min-height: 110px;
        padding: 11px 15px
    }

    .price-box__inner table tr td.align-left p {
        text-align: left
    }

    .price-box__inner table tr td p {
        letter-spacing: .05em
    }

    .price-box__inner table tr td span {
        display: block
    }

    .price-box__inner table tr td:last-child {
        border-bottom: 0
    }

    .price-box__inner table tr td.bg-gray {
        border-bottom: 1px solid #bbb;
        display: block;
        font-size: 18px;
        letter-spacing: .09em;
        line-height: 28px;
        min-height: auto;
        padding: 7px 15px;
        text-align: center
    }

    .price-box__inner table tr td.bg-gray span {
        display: inline
    }

    .price-box__inner table tr th.monthly-plan,
    .price-box__inner table tr th.purchase-plan {
        border: none;
        border-bottom: 1px solid #bbb;
        margin-bottom: 6px;
        padding: 7px 0;
        width: 100%
    }

    .price-box__inner table tr th.monthly-plan p,
    .price-box__inner table tr th.purchase-plan p {
        font-size: 18px;
        padding-left: 37px
    }

    .price-box__inner table tr th.monthly-plan p:before,
    .price-box__inner table tr th.purchase-plan p:before {
        left: 0;
        top: 1px
    }

    .price-box .purchase-note {
        font-size: 11px;
        line-height: 19px
    }
}

@media screen and (max-width:360px) {

    .price-box__inner table tr td p,
    .price-box__inner table tr td.bg-gray {
        font-size: 16px
    }
}

.sp {
    display: block
}

@media (min-width:768px) {
    .sp {
        display: none
    }
}

.tab {
    display: none
}

@media (min-width:768px) {
    .tab {
        display: block
    }
}

.pc {
    display: none
}

@media (min-width:1031px) {
    .pc {
        display: block
    }
}

.pc-none {
    display: block
}

@media (min-width:1031px) {
    .pc-none {
        display: none
    }
}

.mincho {
    font-family: Shippori Mincho, sans-serif
}

.btn_block {
    width: 96%
}

.btn_border_orange,
.btn_border_pink {
    background-color: #fff;
    border: 1px solid #dc0250;
    border-radius: 100px;
    color: #dc0250;
    display: block;
    font-size: 1.8rem;
    margin: 0 auto 20px;
    padding: 1.3rem 1.4rem;
    position: relative;
    text-align: center;
    transition: .3s;
    width: 88%
}

.btn_border_orange {
    border: 1px solid #f5ad6a;
    color: #f5ad6a
}

.btn_border_orange--pink {
    border: 1px solid #ee87b4;
    color: #ee87b4
}

.btn_border_orange:last-of-type,
.btn_border_pink:last-of-type {
    margin-bottom: 0
}

.btn_border_orange:after,
.btn_border_pink:after {
    background: url(../../assets/img/service/btn_border_pink_arrow.svg) no-repeat;
    background-size: cover;
    content: "";
    display: block;
    height: 16px;
    position: absolute;
    right: 15px;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    width: 20px
}

.btn_border_orange:after {
    background: url(../../assets/img/service/btn_border_orange_arrow.svg) no-repeat;
    background-size: cover
}

.btn_border_orange--pink:after {
    background: url(../../assets/img/service/btn_border_orange_pink_arrow.svg) no-repeat;
    background-size: cover
}

@media (min-width:768px) {

    .btn_border_orange,
    .btn_border_pink {
        padding: 1.5rem 1.4rem;
        width: 285px
    }

    .btn_border_orange:hover,
    .btn_border_pink:hover {
        background-color: #dc0250;
        color: #fff;
        transition: .3s
    }

    .btn_border_orange:hover {
        background-color: #f5ad6a;
        color: #fff
    }

    .btn_border_orange--pink:hover {
        background-color: #ee87b4;
        color: #fff
    }

    .btn_border_orange:hover:after,
    .btn_border_pink:hover:after {
        background: url(../../assets/img/service/btn_border_arrow_on.svg) no-repeat;
        background-size: cover
    }
}

.btn_border_black {
    background-color: #fff;
    border: 1px solid #262626;
    border-radius: 100px;
    color: #262626;
    display: block;
    margin: 0 auto 41px;
    padding: 1rem 1.4rem;
    position: relative;
    text-align: center;
    transition: .3s;
    width: 88%
}

.btn_border_black:last-of-type {
    margin-bottom: 0
}

.btn_border_black:after {
    background: url(../../assets/img/service/btn_border_black_arrow.svg) no-repeat;
    background-size: cover;
    content: "";
    display: block;
    height: 16px;
    position: absolute;
    right: 15px;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    width: 20px
}

@media (min-width:768px) {
    .btn_border_black {
        padding: 1.5rem 1.4rem;
        width: 285px
    }

    .btn_border_black:hover {
        background-color: #262626;
        color: #fff;
        transition: .3s
    }

    .btn_border_black:hover:after {
        background: url(../../assets/img/service/btn_border_arrow_on.svg) no-repeat;
        background-size: cover
    }
}

.link_pink_arrow {
    color: #dc0250
}

.link_pink_arrow span {
    align-items: center;
    display: flex;
    justify-content: center
}

.link_pink_arrow span:after {
    background: url(../../assets/img/service/btn_border_pink_arrow.svg) no-repeat;
    background-size: cover;
    content: "";
    display: block;
    height: 11px;
    margin-left: 5px;
    width: 14px
}

.con_title_pink {
    border-bottom: 1px solid #dc0250;
    color: #dc0250;
    font-size: 2rem;
    font-weight: 500;
    margin-bottom: 20px;
    padding-bottom: 10px
}

#service.wrapper {
    height: auto
}

#service .inner {
    padding: 0 20px 30px
}

@media (min-width:1031px) {
    #service .inner {
        margin: 0 auto;
        max-width: 1000px;
        padding: 0
    }
}

#service .hero {
    background: url(../../assets/img/service/service_mainvisual-scaled_sp.png) no-repeat bottom #f7f6f8;
    background-size: cover;
    height: 243px;
    margin-bottom: 15px;
    padding: 20px
}

@media (min-width:376px) {
    #service .hero {
        background: url(../../assets/img/service/service_mainvisual-scaled.jpg) no-repeat 30% 0 #f7f6f8;
        background-size: cover;
        padding: 0 20px
    }
}

@media (min-width:768px) {
    #service .hero {
        background: url(../../assets/img/service/service_mainvisual-scaled.jpg) no-repeat 50% #f7f6f8;
        background-size: auto 100%;
        height: 33vw
    }
}

@media (min-width:1031px) {
    #service .hero {
        height: 330px;
        padding: 0
    }
}

#service .hero,
#service .hero .hero_inner {
    align-items: center;
    display: flex;
    justify-content: flex-end
}

#service .hero .hero_inner {
    width: 90%
}

@media (min-width:1031px) {
    #service .hero .hero_inner {
        align-items: center;
        display: flex;
        justify-content: flex-end;
        margin: 0 auto;
        max-width: 750px
    }
}

@media (max-width:340px) {
    #service .hero {
        padding: 5px
    }

    #service .hero .hero_inner {
        width: 80%
    }
}

#service .hero h2 {
    border-bottom: 1px solid #dc0250;
    color: #dc0250;
    font-size: 4.87vw;
    font-weight: 700;
    line-height: 1.4;
    margin-bottom: 10px;
    padding-bottom: 10px
}

@media (min-width:768px) {
    #service .hero h2 {
        font-size: 4vw;
        margin-bottom: 2vw;
        padding-bottom: 2vw
    }
}

@media (min-width:1031px) {
    #service .hero h2 {
        font-size: 4rem;
        margin-bottom: 15px;
        padding-bottom: 10px
    }
}

#service .hero .catch {
    font-size: 1.3rem;
    font-weight: 700;
    line-height: 1.6
}

@media (min-width:376px) {
    #service .hero .catch {
        font-size: 1.3rem
    }
}

@media (min-width:1031px) {
    #service .hero .catch {
        font-size: 1.6rem
    }
}

#service .page_nav {
    display: flex;
    height: 64px;
    justify-content: center;
    overflow: hidden
}

@media (min-width:1031px) {
    #service .page_nav {
        height: 78px;
        margin: 0 auto;
        width: 915px
    }
}

#service .page_nav a {
    align-items: center;
    background-color: #e64e84;
    border-left: 1px solid #fff;
    border-radius: 6px 6px 0 0;
    border-right: 1px solid #fff;
    border-top: 1px solid #fff;
    box-shadow: 3px 3px 3px rgba(0, 0, 0, .3);
    color: #fff;
    display: flex;
    font-size: 1.4rem;
    font-weight: 600;
    justify-content: center;
    line-height: 1.2;
    margin: 0 1px;
    padding: 10px 0 16px;
    position: relative;
    text-align: center;
    text-decoration: none;
    width: 23.61%
}

@media (min-width:1031px) {
    #service .page_nav a {
        border-radius: 16px 16px 0 0;
        font-size: 1.9rem;
        margin: 0 4px
    }
}

#service .page_nav a:after {
    background: url(../../assets/img/service/page_nav_arrow.svg) no-repeat;
    background-size: cover;
    bottom: 10px;
    content: "";
    display: block;
    height: 5px;
    left: 50%;
    position: absolute;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    width: 10px
}

@media (min-width:1031px) {
    #service .page_nav a:after {
        bottom: 5px;
        height: 8px;
        width: 16px
    }
}

#service .page_nav a span {
    display: block
}

#service .service_area {
    background-color: #f3eef3;
    margin-bottom: 34px;
    padding-bottom: 46px;
    padding-top: 40px
}

@media (min-width:1031px) {
    #service .service_area {
        margin-bottom: 30px;
        padding-bottom: 42px;
        padding-top: 100px
    }
}

#service .service_area .title_block {
    background-color: #f19ab9;
    color: #fff;
    margin-bottom: 10px;
    padding: 27px 9px 13px;
    position: relative;
    text-align: center
}

#service .service_area .title_block p:not(.sub) {
    margin-top: 10px
}

@media (min-width:1031px) {
    #service .service_area .title_block {
        margin-bottom: 35px;
        padding: 30px 10px 18px
    }
}

#service .service_area .title_block .sub {
    left: 50%;
    position: absolute;
    text-align: center;
    top: -13px;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%)
}

#service .service_area .title_block .sub span {
    background-color: #e64e84;
    border: 1px solid #fff;
    border-radius: 100px;
    color: #fff;
    display: block;
    font-size: 1.5rem;
    padding: 0 1.5rem;
    width: 159px
}

#service .service_area .title_block .sub span small {
    display: inline
}

#service .service_area .title_block h3 {
    color: #fff;
    font-size: 2.2rem;
    font-weight: 600;
    letter-spacing: .09em;
    line-height: 1.6;
    text-align: center
}

@media (min-width:1031px) {
    #service .service_area .title_block h3 {
        font-size: 3rem;
        line-height: 1.4
    }
}

@media (min-width:768px) {
    #service .service_area .title_block .sub span {
        font-size: 2.3rem;
        width: 202px
    }

    #service .service_area .title_block .sub span small {
        display: none
    }
}

#service .service_area .lead {
    font-size: 1.3rem;
    line-height: 1.6;
    margin-bottom: 24px;
    text-align: center
}

@media (min-width:1031px) {
    #service .service_area .lead {
        font-size: 1.9rem;
        margin-bottom: 20px
    }
}

@media (min-width:375px) {
    #service .service_area .lead {
        font-size: 1.5rem
    }
}

#service .service_area .lead strong {
    color: #dc0250
}

#service .service_area .con {
    margin-bottom: 20px
}

#service .service_area .con-bg {
    background: #fff;
    border: 1px solid #f280bf;
    border-radius: 10px;
    margin-bottom: 50px
}

#service .service_area .con-bg--orange {
    border: 1px solid #f7c180;
    margin-bottom: 0
}

#service .service_area .con:last-child {
    margin-bottom: 0
}

#service .service_area .con .con_inner {
    padding: 33px 13px 40px
}

@media (min-width:1031px) {
    #service .service_area .con .con_inner {
        margin: 0 auto;
        max-width: 750px;
        padding: 30px 0 66px
    }

    #service .service_area .con03 .con_inner {
        padding: 52px 0 42px
    }

    #service #product.service_area .con03 .con_inner h4 {
        font-size: 2.5rem
    }
}

@media (max-width:768px) {
    #service .service_area .con-bg {
        margin-bottom: 30px
    }

    #service .service_area .con .con_inner {
        padding: 16px 13px 40px
    }
}

#service .service_area .con .con_block {
    padding-bottom: 25px
}

#service .service_area .con .con_block:first-child {
    border-top: none
}

#service .service_area .con02 {
    margin-bottom: 43px
}

#service .service_area .con02 .con_block {
    padding-bottom: 82px
}

#service .service_area .con02 .con_block:last-child {
    padding-bottom: 0
}

@media (max-width:768px) {
    #service .service_area .con02 {
        margin-bottom: 0
    }

    #service .service_area .con02 .con_block {
        padding-bottom: 40px
    }
}

#service #product .con .con_block .group {
    flex-direction: row-reverse
}

#service #product .con .con_block:nth-of-type(2n+2) .group {
    flex-direction: row
}

@media (max-width:768px) {
    #service #product .con .con_block .group {
        display: flex;
        flex-direction: column-reverse
    }

    #service #product .con .con_block:nth-of-type(2n+2) .group {
        flex-direction: column-reverse
    }
}

@media (max-width:376px) {
    #service .service_area .con02 .con_block {
        padding-bottom: 18px
    }

    #service #product .con02 .block01 .group .img {
        margin-bottom: 16px
    }

    #service #product .con02 .block01 .group p {
        text-align: left
    }
}

#service .service_area .con-note {
    color: #262626;
    font-size: 1.5rem;
    font-weight: 300;
    letter-spacing: -.06em;
    margin-top: 9px;
    padding: 0 23px;
    text-align: left
}

@media (min-width:768px) {
    #service .service_area .con-note {
        font-size: 1.5rem;
        margin: 0;
        padding: 0;
        text-align: center
    }
}

#service #product .bloc-desc,
#service #product h4 {
    color: #ee87b4;
    display: inline-block;
    font-size: 2rem;
    letter-spacing: -.07em;
    margin: 0 auto 6px;
    position: relative;
    text-align: center;
    text-align: left;
    z-index: 1
}

#service #product .con-bg--orange .bloc-desc,
#service #product .con-bg--orange h4 {
    color: #f08300
}

#service #product h4:after {
    background: #fce5f2;
    bottom: -5px;
    content: "";
    height: 8px;
    position: absolute;
    right: 0;
    width: 95%;
    z-index: -2
}

#service #product .con-bg--orange h4:after {
    background: #fffbc7
}

#service #product .bloc-desc {
    display: block;
    line-height: 1.5
}

@media (min-width:768px) {
    #service #product h4 {
        font-size: 2.2rem;
        letter-spacing: 0;
        margin: 0 auto 16px
    }
}

@media (max-width:768px) {

    #service #product h4,
    #service #product h4.align-left {
        display: inline-block;
        margin: 0;
        text-align: left
    }

    #service #product .bloc-desc {
        display: block;
        margin: 0 0 30px;
        text-align: left
    }
}

@media (max-width:400px) {
    #service #product h4 {
        font-size: 1.6rem;
        letter-spacing: 0
    }
}

#service #product .con01 .con_group img {
    width: 100%
}

@media (max-width:768px) {
    #service #product .con01 .con_group .img {
        margin-left: -2.5%;
        margin-top: -66px;
        position: relative;
        z-index: 2
    }
}

@media (max-width:500px) {
    #service #product .con01 .con_group .img {
        margin-top: -44px
    }
}

@media (max-width:360px) {
    #service #product .con01 .con_group .img {
        margin-top: -31px
    }
}

@media (min-width:768px) {
    #service #product .con01 .con_group {
        display: flex;
        justify-content: space-between;
        margin-bottom: 10px
    }

    #service #product .con01 .con_group .txt {
        width: 50.4%
    }

    #service #product .con01 .con_group .img {
        width: 43.73%
    }
}

#service #product .con01 span.num {
    background: url(../../assets/img/service/recommend_bg_pink.png) no-repeat 100%;
    color: #fff;
    display: block;
    font-size: 1.4rem;
    font-weight: 500;
    margin: 0;
    max-width: 159px;
    padding: 4px 10px 4px 22px
}

#service #product .con01 h5 {
    background: #fce5f2;
    background: url(../../assets/img/service/title_bg_pink.png) no-repeat 100%;
    background-size: 100% 100%;
    color: #262626;
    font-size: 2.5rem;
    letter-spacing: 0;
    padding: 8px 0;
    text-align: center
}

@media (max-width:768px) {
    #service #product .con01 h5 {
        font-size: 2.3rem
    }
}

@media (max-width:360px) {
    #service #product .con01 h5 {
        font-size: 2rem;
        line-height: 30px;
        word-break: keep-all
    }
}

#service #product .con01 .intro {
    align-items: center;
    background-color: #fdedf6;
    border-top: 1px solid #f499cc;
    display: inline-flex;
    font-size: 1.8rem;
    justify-content: center;
    line-height: 1.6;
    margin-bottom: 13px;
    padding: 12px 18px 7px;
    position: relative;
    text-align: center;
    width: 100%
}

#service #product .con01 .list {
    background: #fce5f2;
    border: 1px solid #ee87b4;
    border-radius: 10px;
    margin: 0 auto;
    max-width: 90%;
    padding: 20px
}

#service #product .con01 .semi .list {
    background: #fdf3e5;
    border: 1px solid #f08300
}

#service #product .con01 .semi span.num {
    background: url(../../assets/img/service/recommend_bg.png) no-repeat 100%
}

#service #product .con01 .intro:after,
#service #product .con01 .intro:before {
    background: url(../../assets/img/service/intro_bg_02_before.png);
    background-size: 100% 100%;
    content: "";
    height: 55px;
    left: 17px;
    position: absolute;
    width: 10px
}

#service #product .con01 .intro:after {
    background: url(../../assets/img/service/intro_bg_02_after.png);
    background-size: 100% 100%;
    left: auto;
    right: 17px
}

@media (min-width:1031px) {
    #service #product .con01 .intro {
        font-size: 2rem;
        line-height: 1.4;
        padding: 5px 40px 10px
    }
}

#service #product .con01 .list li {
    display: block;
    font-size: 1.4rem;
    line-height: 1.4;
    margin: 0 -10px 1rem
}

#service #product .con01 .list li p {
    background: url(../../assets/img/service/product_list_bg_02.png) no-repeat 100%;
    background-size: 100%;
    color: #fff;
    font-size: 1.8rem;
    margin: 0 auto 4px;
    max-width: 247px;
    text-align: center
}

#service #product .con01 .list li span {
    color: #262626;
    display: block;
    font-size: 1.6rem;
    line-height: 1.5;
    text-align: center
}

@media (min-width:768px) {
    #service #product .con01 .list li {
        font-size: 1.6rem;
        margin: 0 0 1rem
    }
}

@media screen and (max-width:768px) {
    #service #product .con01 .intro {
        font-size: 1.8rem;
        padding: 40px 18px
    }

    #service #product .con01 .list {
        margin-top: -30px;
        max-width: 93%;
        padding: 12px 20px 6px;
        position: relative;
        z-index: 3
    }

    #service #product .con01 .list li span {
        font-size: 1.4rem
    }

    #service #product .con01 .semi .list li p {
        font-size: 1.5rem;
        margin-bottom: 7px;
        max-width: 80%
    }
}

@media screen and (max-width:600px) {
    #service #product .con01 .intro {
        font-size: 1.5rem;
        padding: 25px 11px 40px
    }

    #service #product .con01 .list {
        margin-top: -60px
    }
}

@media screen and (max-width:360px) {
    #service #product .con01 .intro {
        font-size: 1.5rem;
        padding: 20px 5px
    }

    #service #product .con01 .intro:before {
        left: 5px
    }

    #service #product .con01 .intro:after {
        right: 5px
    }

    #service #product .con01 .semi .list li p {
        font-size: 1.45rem
    }
}

#service #product .con01 .choice {
    padding: 15px
}

@media (min-width:1031px) {
    #service #product .con01 .choice {
        align-items: center;
        display: flex
    }
}

#service #product .con01 .choice h6 {
    margin-bottom: 10px;
    text-align: center
}

@media (min-width:1031px) {
    #service #product .con01 .choice h6 {
        margin-bottom: 0
    }
}

#service #product .con01 .choice h6 span {
    background: #fff;
    display: inline-block;
    font-size: 1.4rem;
    font-weight: 500;
    padding: 5px 14px 5px 15px
}

@media (min-width:1031px) {
    #service #product .con01 .choice h6 span {
        font-size: 1.5rem
    }
}

#service #product .con01 .semi h5 {
    background: #fce6cc;
    background-image: url(../../assets/img/service/title_bg.jpg);
    background-size: cover
}

#service #product .con01 .semi .intro {
    background-color: #fef6ed;
    border-top: 1px solid #f9cd99
}

#service #product .con01 .semi .intro:before {
    background: url(../../assets/img/service/intro_bg_01_before.png)
}

#service #product .con01 .semi .intro:after {
    background: url(../../assets/img/service/intro_bg_01_after.png)
}

#service #product .con01 .semi .intro:after,
#service #product .con01 .semi .intro:before {
    background-size: 100% 100%
}

#service #product .con01 .semi .list li p {
    background: url(../../assets/img/service/product_list_bg_01.png) no-repeat 100%;
    background-size: 100% 100%;
    color: #fff;
    padding: 5px
}

#service #product .con01 .semi .choice {
    background-color: #fcedf5
}

@media (min-width:1031px) {
    #service #product .con01 .semi .choice h6 {
        flex: none;
        margin-right: 20px
    }

    #service #product .con01 .semi .choice h6 span {
        line-height: 1.3
    }

    #service #product .con01 .semi .choice .sub_group {
        display: flex;
        justify-content: space-between
    }
}

#service #product .con01 .semi .choice .sub_group dl {
    align-items: center;
    border-bottom: 1px solid #a8a8a8;
    display: flex;
    margin-bottom: 10px;
    padding-bottom: 10px
}

@media (min-width:1031px) {
    #service #product .con01 .semi .choice .sub_group dl {
        border-bottom: none;
        display: block;
        margin-bottom: 0;
        padding-bottom: 0;
        width: 30%
    }
}

#service #product .con01 .semi .choice .sub_group dl:last-child {
    border-bottom: none;
    margin-bottom: 0;
    padding-bottom: 0
}

#service #product .con01 .semi .choice .sub_group dl dt {
    flex: none;
    font-size: 1.8rem;
    width: 13rem
}

#service #product .con01 .semi .choice .sub_group dl dt span {
    align-items: center;
    display: flex;
    font-size: 1.4rem;
    height: 22px;
    justify-content: center;
    margin-right: 3px;
    width: 22px
}

#service #product .con01 .semi .choice .sub_group dl dd {
    font-size: 1.4rem
}

#service #product .con01 .semi .choice .sub_group .choice_r dt {
    align-items: center;
    color: #dc0250;
    display: flex
}

#service #product .con01 .semi .choice .sub_group .choice_r dt span {
    background-color: #dc0250;
    color: #fff
}

#service #product .con01 .semi .choice .sub_group .choice_e dt {
    align-items: center;
    color: #71b44a;
    display: flex
}

#service #product .con01 .semi .choice .sub_group .choice_e dt span {
    background-color: #71b44a;
    color: #fff
}

#service #product .con01 .semi .choice .sub_group .choice_c dt {
    align-items: center;
    color: #d6b900;
    display: flex
}

#service #product .con01 .semi .choice .sub_group .choice_c dt span {
    background-color: #d6b900;
    color: #fff
}

#service #product .con01 .shelf .intro {
    background-color: #fdedf6;
    border-top: 1px solid #f499cc
}

#service #product .con01 .shelf .choice {
    background-color: #f3f3fd
}

@media (min-width:1031px) {
    #service #product .con01 .shelf .choice h6 {
        flex: none;
        margin-right: 39px
    }

    #service #product .con01 .shelf .choice h6 span {
        line-height: 1.6;
        padding: 6px 32px
    }
}

#service #product .con01 .shelf .choice .sub_group dl {
    align-items: center;
    display: flex;
    margin-bottom: 10px;
    padding-bottom: 10px
}

#service #product .con01 .shelf .choice .sub_group dl:last-child {
    border-bottom: none;
    margin-bottom: 0;
    padding-bottom: 0
}

#service #product .con01 .shelf .choice .sub_group dl dt {
    flex: none;
    font-size: 1.6rem;
    width: 10.9rem
}

#service #product .con01 .shelf .choice .sub_group dl dt span {
    align-items: center;
    display: flex;
    font-size: 1.4rem;
    height: 22px;
    justify-content: center;
    margin-right: 3px;
    width: 22px
}

#service #product .con01 .shelf .choice .sub_group dl dd {
    font-size: 1.4rem;
    letter-spacing: .07em
}

#service #product .con01 .shelf .choice .sub_group .choice_s dt {
    align-items: center;
    color: #079fc0;
    display: flex
}

#service #product .con01 .shelf .choice .sub_group .choice_s dt span {
    background-color: #079fc0;
    color: #fff;
    font-family: Big Caslon Medium, serif
}

@media (min-width:768px) {
    #service #product .con02 .lead {
        font-size: 1.8rem
    }

    #service #product .con01 .shelf .choice .sub_group dl:last-child {
        margin-right: 50px
    }

    #service #product .con01 .shelf .choice .sub_group dl dt {
        font-size: 2rem;
        width: 13rem
    }
}

#service #product .con02 .block01 .group {
    margin-bottom: 20px
}

@media (min-width:768px) {
    #service #product .con02 .block01 .group {
        align-items: flex-start;
        display: flex;
        justify-content: space-between;
        margin-bottom: 0
    }

    #service #product .con02 .btn_block {
        margin: 33px 0 0
    }

    #service #product .con02 .block01 .group .txt {
        padding-top: 10px;
        width: 46.93%
    }

    #service #product .con02 .block01 .group .txt .lead {
        text-align: left
    }

    #service #product .con02 .block01 .group .img {
        width: 50%
    }

    #service #product .con02 .block01 .group .btn_border_pink {
        margin: 0 auto 0 0;
        padding: 1.6rem 1.4rem;
        width: 87%
    }

    #service #product .con02 .block02 .group {
        display: flex;
        justify-content: space-between
    }

    #service #product .con02 .block02 .txt {
        padding-top: 10px;
        width: 58.27%
    }
}

#service #product .con02 .block02 .lead {
    font-size: 1.6rem
}

@media (min-width:768px) {
    #service #product .con02 .block02 .lead {
        font-size: 1.8rem;
        text-align: left
    }

    #service #product .con02 .block02 .img.tab {
        width: 37.6%
    }
}

#service #product .con02 .block02 .img.sp {
    margin-bottom: 11px
}

#service #product .con02 .block02 dl {
    display: flex;
    flex-direction: column-reverse;
    flex-wrap: wrap
}

@media (min-width:768px) {
    #service #product .con02 .block02 dl {
        align-items: center;
        display: flex;
        flex-direction: row;
        justify-content: space-between;
        margin: 23px 0 15px
    }
}

#service #product .con02 .block02 dl dt {
    color: #f5ad6a;
    font-size: 1.7rem;
    margin: 0 -10px 10px;
    text-align: center
}

#service #product .con02 .block02 dl dd p {
    color: #f5ad6a;
    font-size: 1.6rem;
    font-weight: 500;
    text-align: center
}

@media (min-width:768px) {
    #service #product .con02 .block02 dl dt {
        font-size: 1.8rem;
        margin: 40px 10px 10px 0;
        text-align: left
    }

    #service #product .con02 .block02 dl dd p {
        font-size: 2rem
    }
}

@media (min-width:375px) {
    #service #product .con02 .block02 dl dt {
        font-size: 1.7rem
    }

    #service #product .con02 .block02 dl dd {
        margin: 0 auto 4px;
        width: 89.51%
    }
}

@media (min-width:768px) {
    #service #product .con02 .block02 dl dd {
        margin: 0;
        width: 63.76%
    }

    #service #product .con02 .block02 .note {
        font-size: 1.4rem
    }

    #service #product .con02 .block03 .group {
        align-items: flex-start;
        display: flex;
        justify-content: space-between
    }

    #service #product .con02 .block03 .lead {
        text-align: left
    }

    #service #product .con02 .block03 .img {
        width: 53.33%
    }
}

#service #product .safe-txt p {
    font-size: 1.5rem;
    font-weight: 300;
    line-height: 1.5;
    margin-top: 7px;
    padding-bottom: 12px
}

@media (min-width:768px) {
    #service #product .safe-txt {
        width: 67%
    }

    #service #product .safe-txt p {
        font-size: 1.5rem;
        padding-bottom: 0
    }
}

#service #product .con03 .main_img {
    margin-bottom: 45px
}

@media (min-width:768px) {
    #service #product .con03 .main_img {
        margin-bottom: 54px
    }
}

#service #product .service-info .sub_group {
    justify-content: center
}

#service #product .service-info .sub_group .img {
    margin: 0 4px;
    text-align: center
}

#service #product .service-info .sub_group .img .caption {
    font-size: 1.2rem;
    font-weight: 400
}

@media (min-width:768px) {
    #service #product .service-info .sub_group .img .caption {
        font-size: 1.3rem
    }

    #service #product .sub_group .jis {
        margin: 0 20px 0 0
    }
}

#service #product .sub_group .jis img {
    height: auto;
    margin: 0 0 18px;
    width: 73.9px
}

@media (min-width:768px) {
    #service #product .sub_group .mwig {
        margin: 0
    }
}

#service #product .sub_group .mwig img {
    height: auto;
    margin-bottom: 26px;
    width: 124px
}

#service #salon {
    padding-bottom: 81px
}

#service #salon .group {
    display: flex;
    flex-direction: column-reverse
}

@media (min-width:768px) {
    #service #salon .group {
        display: flex;
        flex-direction: row-reverse;
        justify-content: space-between
    }
}

@media (max-width:768px) {
    #service #salon {
        padding-bottom: 5px
    }

    #service #salon .group .service_img {
        display: block;
        margin: 0 -10px 0 0
    }
}

#service #salon .lead {
    font-size: 1.9rem;
    text-align: center
}

@media (min-width:768px) {
    #service #salon .lead {
        font-size: 2.4vw
    }
}

@media (min-width:1031px) {
    #service #salon .lead {
        font-size: 2.6rem;
        margin-bottom: 43px;
        padding: 0 20px
    }
}

#service #salon .img {
    margin-bottom: 20px
}

@media (min-width:768px) {
    #service #salon .img {
        width: 48.6%
    }
}

#service #salon .txt {
    margin: 20px auto 30px
}

@media (min-width:768px) {
    #service #salon .txt {
        margin: 20px auto 79px;
        width: 52.4%
    }
}

#service #salon .message {
    background-color: #fff;
    border-radius: 100%;
    margin-bottom: 100px;
    max-width: 80%;
    padding: 60px 0;
    position: relative
}

@media (min-width:768px) {
    #service #salon .message {
        margin-bottom: 27px;
        padding: 41px 0 55px
    }
}

#service #salon .message dl {
    position: relative;
    z-index: 1
}

#service #salon .message dl dt {
    color: #dc0250;
    font-size: 2.2rem;
    text-align: center
}

@media (min-width:768px) {
    #service #salon .message dl dt {
        font-size: 2vw
    }
}

@media (min-width:1031px) {
    #service #salon .message dl dt {
        font-size: 2.5rem
    }
}

#service #salon .message dl dd {
    font-size: 2rem;
    text-align: center
}

@media (min-width:768px) {
    #service #salon .message dl dd {
        font-size: 1.8vw
    }
}

@media (min-width:1031px) {
    #service #salon .message dl dd {
        font-size: 2.1rem;
        line-height: 1.8
    }
}

#service #salon .message .ph {
    height: 252px;
    position: absolute;
    right: -27%;
    top: 18%;
    width: 187px
}

@media (max-width:768px) {
    #service #salon .message .ph {
        height: 175px;
        right: -21%;
        width: 130px
    }

    #service #salon .message dl dt {
        font-size: 1.8rem
    }

    #service #salon .message dl dd {
        font-size: 1.5rem
    }
}

@media (max-width:400px) {
    #service #salon .message {
        margin-bottom: 30px;
        padding: 60px 0
    }

    #service #salon .message .ph {
        height: 145px;
        right: -29%;
        width: 100px
    }
}

@media (max-width:360px) {
    #service #salon .message {
        margin-bottom: 30px;
        padding: 40px 0
    }

    #service #salon .message dl dt {
        font-size: 1.4rem
    }

    #service #salon .message dl dd {
        font-size: 1.2rem
    }
}

#service #salon .btn_block {
    margin: 0 auto;
    width: 90%
}

#service #salon .btn_block p {
    font-size: 1.7rem;
    margin-bottom: 14px
}

@media (min-width:768px) {
    #service #salon .btn_block p {
        font-size: 1.6rem;
        text-align: center
    }
}

#service #salon .btn_block .txt_salon {
    font-size: 1.9rem;
    margin-bottom: 9px;
    text-align: center
}

#service #salon .btn_block a {
    font-size: 1.8rem;
    width: auto
}

@media (min-width:768px) {
    #service #salon .btn_block a {
        width: 285px
    }
}

#service #after-follow {
    padding-bottom: 0
}

@media (min-width:768px) {
    #service #after-follow {
        padding-bottom: 50px
    }

    #service #after-follow .title_block {
        margin-bottom: 50px
    }

    #service #after-follow .lead {
        font-size: 2.4rem;
        margin-bottom: 50px
    }
}

#service #after-follow .group .img {
    margin-bottom: 20px
}

@media (min-width:768px) {
    #service #after-follow .group {
        align-items: flex-end;
        display: flex;
        justify-content: center
    }

    #service #after-follow .group .img {
        margin-bottom: 50px
    }
}

#service #after-follow .group .txt {
    background-color: #fff;
    border-radius: 10px;
    margin-bottom: 10px;
    padding: 14px
}

#service #after-follow .group .txt ul {
    padding: 0 19px
}

@media (min-width:768px) {
    #service #after-follow .group .txt {
        align-items: center;
        display: flex;
        margin-bottom: 0;
        width: 73.7%
    }

    #service #after-follow .group .txt ul {
        padding: 0
    }

    #service #after-follow .group .txt dl {
        width: 68.57%
    }
}

#service #after-follow .group .txt dl dt {
    margin-bottom: 16px;
    text-align: center
}

@media (min-width:768px) {
    #service #after-follow .group .txt dl dt {
        font-size: 2.1rem;
        margin-bottom: 20px;
        text-align: left
    }
}

#service #after-follow .group .txt dl dt span {
    background-color: #ddf3fa;
    display: inline-block;
    font-weight: 500;
    padding: 5px 10px;
    text-align: center
}

@media (min-width:768px) {
    #service #after-follow .group .txt dl dd ul {
        display: flex;
        flex-wrap: wrap
    }
}

#service #after-follow .group .txt dl dd ul li {
    color: #1daedd;
    display: flex;
    margin-bottom: .3rem
}

@media (min-width:768px) {
    #service #after-follow .group .txt dl dd ul li {
        font-size: 2rem;
        margin-bottom: 1rem;
        margin-right: 1rem
    }
}

#service #after-follow .group .txt dl dd ul li:before {
    color: #1daedd;
    content: "●";
    flex: none;
    margin-right: 5px
}

#service #after-follow .group .txt .img {
    text-align: center
}

@media (min-width:768px) {
    #service #after-follow .group .txt .img {
        width: 30%
    }
}

#service #after-follow .group .txt .img img {
    width: 62.95%
}

@media (min-width:768px) {
    #service #after-follow .group .txt .img img {
        width: auto
    }
}

#service #after-follow .note {
    margin-bottom: 20px
}

@media (min-width:768px) {
    #service #after-follow .note {
        margin-bottom: 0;
        margin-top: 20px
    }
}

#service #after-follow .ph {
    text-align: center
}

@media (min-width:768px) {
    #service #after-follow .ph {
        width: 26%
    }
}

#service #after-follow .ph img {
    width: 81.64%
}

@media (min-width:768px) {
    #service #after-follow .ph img {
        width: auto
    }

    #service #plan .title_block {
        margin-bottom: 50px
    }
}

#service #plan .lead {
    text-align: left
}

@media (min-width:768px) {
    #service #plan .lead {
        font-size: 2.4rem;
        margin-bottom: 50px;
        text-align: center
    }
}

#service #plan .plan_btn {
    margin: 30px auto 19px;
    max-width: 100%
}

@media (min-width:768px) {
    #service #plan .plan_btn {
        display: flex;
        justify-content: space-between;
        margin: 0 auto 45px;
        max-width: 90%;
        max-width: 672px;
        max-width: 100%
    }
}

#service #plan .plan_btn a {
    border-radius: 6px;
    color: #fff;
    display: block;
    padding: 5px;
    text-align: center;
    text-decoration: none
}

@media (min-width:768px) {
    #service #plan .plan_btn a {
        width: 48.53%
    }
}

#service #plan .plan_btn a .btn_inner {
    border: 1px solid #fff;
    border-radius: 4px;
    height: 100%;
    padding: 13px 20px
}

#service #plan a .btn_inner h6 {
    background: url(../../assets/img/service/title_bg_white.png) no-repeat;
    background-size: 100% 100%;
    color: #d2ae00;
    font-size: 1.4rem;
    font-weight: 500;
    margin: 0 auto;
    padding: 3px 10px;
    width: 70%
}

@media (max-width:360px) {
    #service #plan a .btn_inner h6 {
        width: 90%
    }
}

#service #plan .plan_btn a.plan_flat .btn_inner h6 {
    color: #0a9991
}

#service #plan .flat-rate {
    font-size: 1.5rem;
    font-weight: 300;
    margin: 20px 0
}

@media (min-width:768px) {
    #service #plan .plan_btn a .btn_inner {
        padding: 15px 10px
    }
}

#service #plan .plan_btn a span {
    display: block
}

#service #plan .plan_btn .plan_purchase {
    background-color: #d2ae00;
    font-size: 3.2rem;
    font-weight: 600;
    margin-bottom: 33px
}

@media (min-width:768px) {
    #service #plan .plan_btn .plan_purchase {
        margin-bottom: 0
    }
}

#service #plan .plan_btn .plan_purchase .txt01 {
    font-size: 2.4rem;
    font-weight: 500
}

#service #plan .plan_btn .plan_purchase .txt02 {
    font-size: 1.6rem;
    font-weight: 400
}

#service #plan .plan_btn .plan_flat {
    background-color: #0a999a;
    font-size: 3.2rem;
    font-weight: 600
}

#service #plan .plan_btn .plan_flat .txt01 {
    font-size: 2.4rem;
    font-weight: 500
}

#service #plan .plan_btn .plan_flat .txt01_2 {
    display: inline-block;
    font-size: 1.8rem;
    font-weight: 400
}

#service #plan .plan_btn .plan_flat .txt02 {
    font-size: 1.6rem;
    font-weight: 400
}

#service .btn_group {
    margin: 0 auto 60px;
    padding-top: 0
}

@media (min-width:1031px) {
    #service .btn_group {
        display: flex;
        margin: 0 auto 40px;
        max-width: 1000px
    }

    #service .btn_group a {
        margin-bottom: 0
    }
}

#service #product .title_block h3 {
    position: relative
}

@media (max-width:768px) {
    #service #product h4 {
        line-height: 1.5
    }

    #service .service_area .title_block p:not(.sub) {
        font-size: 1.4rem
    }

    #service #product h4:after {
        bottom: -2px;
        right: -10px
    }
}

@media (max-width:376px) {

    #service #product .bloc-desc,
    #service #product h4 {
        font-size: 1.6rem;
        letter-spacing: 0;
        margin-bottom: 15px
    }

    #service .service_area .title_block h3 {
        font-size: 2.2rem;
        letter-spacing: 0;
        line-height: 1.4
    }
}

@media (max-width:340px) {
    #service .service_area .title_block h3 {
        font-size: 2rem
    }
}

.wig-line {
    border-top: 1px solid #fff;
    color: #fff;
    font-size: 2rem;
    font-weight: 400;
    margin: 20px 30px 0;
    padding: 30px 10px 16px;
    text-align: center
}

@media (max-width:768px) {
    .wig-line {
        font-size: 1.6rem;
        margin: 8px 30px 0;
        padding: 4px 10px 1px
    }
}

@media (max-width:360px) {
    .wig-line {
        margin: 8px 10px 0;
        padding: 4px 5px 1px
    }
}

.service-title {
    margin: 2px auto 37px;
    max-width: 366px
}

.service-title h5 {
    align-items: center;
    background: url(../../assets/img/service/btn_bg.png) no-repeat;
    background-size: 100% 100%;
    color: #262626;
    display: inline-flex;
    font-size: 2.4rem;
    justify-content: center;
    padding: 17px 5px;
    text-align: center;
    width: 100%
}

.service-title--pink {
    max-width: 446px
}

.service-title--pink h5 {
    background: url(../../assets/img/service/btn_bg_pink.png) no-repeat;
    background-size: 100% 100%
}

@media screen and (max-width:768px) {
    .service-title {
        margin-bottom: 25px
    }

    .service-title h5 {
        font-size: 2rem;
        line-height: 1.5;
        margin: 0;
        padding: 12px 5px
    }
}

@media screen and (max-width:600px) {
    .service-title h5 {
        font-size: 1.8rem
    }
}

@media screen and (max-width:340px) {
    .service-title h5 {
        font-size: 1.5rem
    }
}

.service-info {
    align-items: center;
    display: flex;
    justify-content: space-between;
    padding: 30px 23px 20px
}

#service #product .service-info .sub_group {
    align-items: flex-end;
    display: flex;
    justify-content: space-between;
    width: 26%
}

@media screen and (max-width:768px) {
    .service-info {
        flex-direction: column;
        padding: 30px 0 4px
    }

    #service #product .service-info .sub_group {
        width: 90%
    }

    #service #product .safe-txt p {
        line-height: 1.3
    }

    #service .service_area .con-note {
        padding: 0
    }
}

@media screen and (max-width:376px) {
    #service #product .sub_group .jis img {
        margin: 0 0 1px;
        width: 62.9px
    }

    #service #product .sub_group .mwig img {
        width: 102px
    }
}

.tab-bloc {
    align-items: center;
    display: flex;
    justify-content: space-between;
    margin: 42px auto 48px;
    max-width: 580px
}

.tab-bloc li {
    width: 48.4%
}

.tab-bloc li a {
    align-items: center;
    background-color: #fff;
    border: 1px solid #ee87b4;
    border-radius: 8px;
    color: #ee87b4;
    display: inline-flex;
    font-family: Noto Sans JP, sans-serif;
    font-size: 2.1rem;
    justify-content: center;
    padding: 9.5px 10px;
    text-align: center;
    width: 100%
}

.tab-bloc li.is-active a {
    background-color: #ee87b4;
    color: #fff
}

.tab-bloc li:nth-of-type(2) a {
    border: 1px solid #f5ad6a;
    color: #f5ad6a
}

.tab-bloc li:nth-of-type(2).is-active a {
    background-color: #f5ad6a;
    color: #fff
}

@media screen and (max-width:768px) {
    .tab-bloc {
        margin: 25px auto 27px;
        max-width: 90%
    }

    .tab-bloc li a {
        border-radius: 20px;
        font-size: 1.6rem;
        padding: 9px 5px
    }
}

@media screen and (max-width:360px) {
    .tab-bloc li a {
        font-size: 1.4rem;
        padding: 5px
    }
}

.p-support {
    color: #333
}

.p-support img {
    width: 100%
}

.p-bloc--treament {
    padding: 80px 10px 102px
}

.p-treament-bloc {
    align-items: center;
    display: flex;
    justify-content: space-between
}

.p-treament-bloc .img-box,
.p-treament-bloc .txt-box {
    width: 48.2%
}

.p-treament-bloc .txt-box .bloc-title {
    margin-bottom: 28px
}

.p-treament-bloc .txt-box .bloc-title dt {
    font-size: 18px;
    font-weight: 400;
    letter-spacing: .03em;
    line-height: 21px
}

.p-treament-bloc .txt-box .bloc-title dd {
    font-family: Shippori Mincho, sans-serif;
    font-size: 35px;
    font-weight: 600;
    letter-spacing: .08em;
    line-height: 46px
}

.p-treament-bloc .txt-box .bloc-title dd span {
    font-size: 20px;
    line-height: 46px
}

.p-treament-bloc .txt-box p {
    font-size: 16px;
    letter-spacing: .08em;
    line-height: 32px
}

@media screen and (max-width:800px) {
    .p-bloc--treament {
        padding: 22px 10px 46px
    }

    .p-treament-bloc {
        display: block
    }

    .p-treament-bloc .img-box,
    .p-treament-bloc .txt-box {
        width: 100%
    }

    .p-treament-bloc .img-box {
        margin-bottom: 17px
    }

    .p-treament-bloc .txt-box .bloc-title {
        margin-bottom: 19px
    }

    .p-treament-bloc .txt-box .bloc-title dt {
        font-size: 16px;
        line-height: 20px
    }

    .p-treament-bloc .txt-box .bloc-title dd {
        font-size: 22px;
        line-height: 32px
    }

    .p-treament-bloc .txt-box .bloc-title dd span {
        font-size: 16px;
        line-height: 0
    }

    .p-treament-bloc .txt-box p {
        line-height: 28px
    }
}

.p-bloc--support-step__outer {
    padding: 0 10px
}

.p-bloc--support-step .p-support-content {
    padding: 83px 0 98px
}

.p-bloc--support-step .p-support-content .page-sub-title {
    margin-bottom: 47px
}

@media screen and (max-width:800px) {
    .p-bloc--support-step .p-support-content {
        padding: 52px 0 49px
    }

    .p-bloc--support-step .p-support-content .page-sub-title {
        margin-bottom: 56px
    }
}

.p-support-section {
    display: flex;
    justify-content: space-between
}

.p-support-section__flow {
    width: 17%
}

.p-support-section__flow .flow-wrap .flow-title {
    background: #00a8ad;
    color: #fff;
    font-family: Shippori Mincho, sans-serif;
    font-size: 22px;
    line-height: 32px;
    margin-bottom: 15px;
    padding: 7px 10px;
    text-align: center
}

.p-support-section__flow .flow-wrap .flow-bloc {
    margin-bottom: 11px;
    position: relative
}

.p-support-section__flow .flow-wrap .flow-bloc img {
    display: block;
    margin: 0 auto;
    width: auto
}

.p-support-section__flow .flow-wrap .flow-bloc .img-box {
    margin-bottom: 9px
}

.p-support-section__flow .flow-wrap .flow-bloc p {
    color: #00a8ad;
    font-size: 20px;
    line-height: 25px;
    margin-bottom: 7px;
    text-align: center
}

.p-support-section__flow .flow-wrap .flow-bloc .flow-desc {
    color: #00a8ad;
    font-size: 16px;
    left: 18%;
    line-height: 26px;
    position: absolute;
    text-align: center;
    top: 62%
}

.p-support-section__flow .flow-wrap .flow-bloc .flow-desc small {
    display: block;
    transform: rotate(90deg)
}

.p-support-section__flow .flow-wrap .flow-bloc--01:before {
    content: "";
    display: block;
    height: 1px;
    position: absolute;
    right: -18%;
    top: 17%;
    width: 67px;
    z-index: -99
}

.p-support-section__flow .flow-wrap .flow-bloc--01 .flow-arrow img {
    max-height: 184px
}

.p-support-section__flow .flow-wrap .flow-bloc--02 .flow-arrow img,
.p-support-section__flow .flow-wrap .flow-bloc--03 .flow-arrow img {
    max-height: 208px
}

.p-support-section__flow .flow-wrap .flow-bloc--04:before {
    content: "";
    display: block;
    height: 311px;
    position: absolute;
    right: -18%;
    top: 20%;
    width: 68px;
    z-index: -99
}

.p-support-section__flow .flow-wrap .flow-bloc--04 .flow-desc {
    top: 66%
}

.p-support-section__flow .flow-wrap .flow-bloc--04 .flow-arrow img {
    max-height: 111px
}

.p-support-section__flow .flow-wrap .flow-bloc--05 .flow-desc {
    top: 66%
}

.p-support-section__flow .flow-wrap .flow-bloc--05 .flow-arrow img {
    max-height: 111px
}

.p-support-section__flow .flow-wrap .flow-bloc--06:before {
    bottom: 66%;
    content: "";
    display: block;
    height: 216px;
    position: absolute;
    right: -18%;
    width: 76px;
    z-index: -99
}

@media screen and (max-width:1040px) {
    .p-support-section__flow .flow-wrap .flow-bloc .flow-desc {
        left: 0
    }
}

@media screen and (max-width:980px) {
    .p-support-section__flow {
        width: 13%
    }

    .p-support-section__flow .flow-wrap .flow-title {
        font-size: 20px
    }

    .p-support-section__flow .flow-wrap .flow-bloc p {
        font-size: 16px
    }

    .p-support-section__flow .flow-wrap .flow-bloc--01:before,
    .p-support-section__flow .flow-wrap .flow-bloc--04:before,
    .p-support-section__flow .flow-wrap .flow-bloc--06:before {
        right: -53%
    }

    .p-support-section__flow .flow-wrap .flow-bloc .flow-desc {
        font-size: 14px
    }
}

@media screen and (max-width:800px) {
    .p-support-section__flow {
        width: 18%
    }

    .p-support-section__flow .flow-wrap .flow-title {
        color: #fff;
        font-size: 16px;
        line-height: 21px;
        margin-bottom: 11px;
        padding: 2px 9px
    }

    .p-support-section__flow .flow-wrap .flow-bloc {
        margin-bottom: 12px;
        position: relative
    }

    .p-support-section__flow .flow-wrap .flow-bloc .img-box {
        margin-bottom: 7px
    }

    .p-support-section__flow .flow-wrap .flow-bloc p {
        font-size: 14px;
        line-height: 19px
    }

    .p-support-section__flow .flow-wrap .flow-bloc .flow-desc {
        font-size: 14px;
        left: 3%;
        line-height: 17px;
        text-align: center;
        top: 58.2%
    }

    .p-support-section__flow .flow-wrap .flow-bloc .flow-desc small {
        display: block;
        transform: rotate(90deg)
    }

    .p-support-section__flow .flow-wrap .flow-bloc--01:before {
        right: -35%;
        top: 14%
    }

    .p-support-section__flow .flow-wrap .flow-bloc--01 .flow-arrow img,
    .p-support-section__flow .flow-wrap .flow-bloc--02 .flow-arrow img,
    .p-support-section__flow .flow-wrap .flow-bloc--03 .flow-arrow img {
        max-height: 330px
    }

    .p-support-section__flow .flow-wrap .flow-bloc--04:before {
        height: 280px;
        right: -41%
    }

    .p-support-section__flow .flow-wrap .flow-bloc--04 .flow-arrow img {
        max-height: 90px
    }

    .p-support-section__flow .flow-wrap .flow-bloc--04 .flow-desc {
        top: 65.2%
    }

    .p-support-section__flow .flow-wrap .flow-bloc--05 .flow-arrow img {
        max-height: 90px
    }

    .p-support-section__flow .flow-wrap .flow-bloc--05 .flow-desc {
        top: 64.2%
    }

    .p-support-section__flow .flow-wrap .flow-bloc--06:before {
        bottom: 70%;
        height: 200px;
        right: -41%
    }
}

@media screen and (max-width:700px) {
    .p-support-section__flow .flow-wrap .flow-bloc--02 .flow-arrow .img {
        max-height: 340px
    }

    .p-support-section__flow .flow-wrap .flow-bloc--04 .flow-arrow .img,
    .p-support-section__flow .flow-wrap .flow-bloc--05 .flow-arrow .img {
        max-height: 95px
    }
}

@media screen and (max-width:600px) {
    .p-support-section__flow {
        width: 24%
    }

    .p-support-section__flow .flow-wrap .flow-bloc--01:before,
    .p-support-section__flow .flow-wrap .flow-bloc--04:before {
        right: -31%;
        width: 50px
    }

    .p-support-section__flow .flow-wrap .flow-bloc--06:before {
        bottom: 55%;
        height: 180px;
        right: -31%;
        width: 50px
    }
}

@media screen and (max-width:500px) {

    .p-support-section__flow .flow-wrap .flow-bloc--01:before,
    .p-support-section__flow .flow-wrap .flow-bloc--04:before,
    .p-support-section__flow .flow-wrap .flow-bloc--06:before {
        width: 40px
    }
}

@media screen and (max-width:400px) {
    .p-support-section__flow {
        width: 28%
    }

    .p-support-section__flow .flow-wrap .flow-bloc .img-box img {
        margin: 0 auto;
        max-width: 80px
    }

    .p-support-section__flow .flow-wrap .flow-bloc .flow-desc span {
        display: block
    }

    .p-support-section__flow .flow-wrap .flow-bloc--01:before {
        right: -15%;
        top: 10.6%;
        width: 25px
    }

    .p-support-section__flow .flow-wrap .flow-bloc--01 .flow-arrow img,
    .p-support-section__flow .flow-wrap .flow-bloc--02 .flow-arrow img {
        max-height: 281px
    }

    .p-support-section__flow .flow-wrap .flow-bloc--03 .flow-arrow img {
        max-height: 271px
    }

    .p-support-section__flow .flow-wrap .flow-bloc--04:before {
        height: 217px;
        right: -19%;
        width: 31px
    }

    .p-support-section__flow .flow-wrap .flow-bloc--04 .flow-arrow img {
        max-height: 71px
    }

    .p-support-section__flow .flow-wrap .flow-bloc--05 .flow-arrow img {
        max-height: 80px
    }

    .p-support-section__flow .flow-wrap .flow-bloc--06:before {
        background-image: none;
        border-top: 3px dotted #dc0250;
        bottom: 68%;
        height: 1px;
        right: -14%;
        width: 25px
    }
}

@media screen and (max-width:320px) {
    .p-support-section__flow .flow-wrap .flow-bloc--04:before {
        width: 21px
    }
}

.step-title {
    margin-bottom: 44px;
    text-align: center
}

.step-title h4 {
    color: #00a8ad;
    font-family: Shippori Mincho, sans-serif;
    font-size: 35px;
    font-weight: 500;
    letter-spacing: .04em;
    line-height: 45px;
    position: relative
}

.step-title h4:after,
.step-title h4:before {
    border-top: 1px solid #00a8ad;
    content: "";
    height: 1px;
    left: 0;
    position: absolute;
    top: 61%;
    width: 80px
}

.step-title h4:after {
    left: auto;
    right: 0
}

@media screen and (max-width:1080px) {
    .step-title h4 {
        font-size: 30px
    }

    .step-title h4:after,
    .step-title h4:before {
        width: 75px
    }
}

@media screen and (max-width:980px) {
    .step-title {
        margin-bottom: 30px
    }

    .step-title h4 {
        font-size: 28px
    }

    .step-title h4:after,
    .step-title h4:before {
        width: 45px
    }
}

@media screen and (max-width:800px) {
    .step-title {
        margin-bottom: 14px
    }

    .step-title h4 {
        font-size: 22px;
        line-height: 28px
    }

    .step-title h4:after,
    .step-title h4:before {
        content: "";
        height: 1px;
        width: 35px
    }
}

@media screen and (max-width:600px) {
    .step-title h4 {
        font-size: 22px
    }

    .step-title h4 span {
        display: block
    }

    .step-title h4:after,
    .step-title h4:before {
        top: 53%;
        width: 19px
    }
}

@media screen and (max-width:340px) {
    .step-title h4 {
        font-size: 18px
    }
}

.p-support-section__step {
    width: 80.2%
}

.p-support-section__step .p-step-section {
    border: 2px solid #00a8ad;
    margin-bottom: 50px
}

.p-support-section__step .p-step-section__inner {
    padding: 40px 46px 48px
}

.p-support-section__step .p-step-section__bloc--01 {
    margin-bottom: 41px
}

.p-support-section__step .p-step-section__bloc .step-bloc-content {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between
}

.p-support-section__step .p-step-section__bloc .step-bloc-content .step-bloc {
    margin-bottom: 50px;
    width: 46.9%
}

.p-support-section__step .p-step-section__bloc .step-bloc-content .step-bloc:last-child {
    margin-bottom: 0
}

.p-support-section__step .p-step-section__bloc .step-bloc-content .step-bloc .bloc-inner {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between
}

.p-support-section__step .p-step-section__bloc .step-bloc-content .step-bloc .bloc-inner .txt-box {
    width: 70%
}

.p-support-section__step .p-step-section__bloc .step-bloc-content .step-bloc .bloc-inner .txt-box h5 {
    color: #dc0250;
    font-family: Shippori Mincho, sans-serif;
    font-size: 25px;
    font-weight: 600;
    letter-spacing: .2em;
    line-height: 31px;
    margin: 0 0 11px 40px;
    position: relative
}

.p-support-section__step .p-step-section__bloc .step-bloc-content .step-bloc .bloc-inner .txt-box h5:before {
    background-image: url(../../assets/img/care/check_icon.png);
    background-position: 50%;
    background-repeat: no-repeat;
    background-size: auto 100%;
    content: "";
    height: 36px;
    left: -40px;
    position: absolute;
    top: -7px;
    width: 37px
}

.p-support-section__step .p-step-section__bloc .step-bloc-content .step-bloc .bloc-inner .txt-box p {
    color: #333;
    font-size: 16px;
    letter-spacing: .08em;
    line-height: 32px
}

.p-support-section__step .p-step-section__bloc .step-bloc-content .step-bloc .bloc-inner .img-box {
    width: 28%
}

.p-support-section__step .p-step-section__bloc .step-bloc-content .step-bloc .c-btn-renewal {
    margin-top: 18px
}

.p-support-section__step .p-step-section__bloc .step-bloc-content .step-bloc .step-list {
    margin-top: 2px
}

.p-support-section__step .p-step-section__bloc .step-bloc-content .step-bloc .step-list li {
    color: #dc0250;
    font-size: 16px;
    letter-spacing: -.02em;
    line-height: 32px;
    list-style: disc;
    margin-left: 20px;
    position: relative
}

.p-support-section__step .p-step-section__bloc--02 .step-bloc-content .step-bloc--03 {
    margin-top: -71px
}

.p-support-section__step .p-step-section .step-sub-title {
    color: #dc0250;
    font-family: Shippori Mincho, sans-serif;
    font-size: 25px;
    font-weight: 600;
    letter-spacing: .2em;
    line-height: 37px;
    margin: 0 0 15px 40px;
    position: relative
}

.p-support-section__step .p-step-section .step-sub-title span {
    display: block
}

.p-support-section__step .p-step-section .step-sub-title:before {
    background-image: url(../../assets/img/care/check_icon.png);
    background-position: 50%;
    background-repeat: no-repeat;
    background-size: auto 100%;
    content: "";
    height: 36px;
    left: -40px;
    position: absolute;
    top: -7px;
    width: 37px
}

.p-support-section__step .p-step-section--02 .p-step-section__inner {
    padding: 51px 46px 47px
}

.p-support-section__step .p-step-section--02 .step-section-02-wrap p {
    color: #000;
    font-size: 16px;
    letter-spacing: .09em;
    line-height: 32px;
    margin-bottom: 4px
}

.p-support-section__step .p-step-section--02 .step-section-02-wrap .step-wig-bloc {
    display: flex;
    justify-content: space-between
}

.p-support-section__step .p-step-section--02 .step-section-02-wrap .step-wig-bloc .txt-box {
    width: 70%
}

.p-support-section__step .p-step-section--02 .step-section-02-wrap .step-wig-bloc .txt-box ul li {
    color: #dc0250;
    letter-spacing: .08em;
    list-style: disc;
    margin-bottom: 7px;
    margin-left: 20px;
    position: relative
}

.p-support-section__step .p-step-section--02 .step-section-02-wrap .step-wig-bloc .img-box {
    margin: 10px 4px 0 0;
    width: 37.2%
}

.p-support-section__step .p-step-section--03 {
    border: 2px solid #00a8ad;
    margin-bottom: 0
}

.p-support-section__step .p-step-section--03 .p-step-section__inner {
    padding: 49px 46px 16px
}

.p-support-section__step .p-step-section--03 .step-section-03-wrap {
    display: flex;
    justify-content: space-between
}

.p-support-section__step .p-step-section--03 .step-section-03-wrap .step-section-03-bloc {
    margin-bottom: 32px;
    width: 46.8%
}

.p-support-section__step .p-step-section--03 .step-section-03-wrap .step-section-03-bloc h5 {
    margin-bottom: 1px;
    width: 101%
}

.p-support-section__step .p-step-section--03 .step-section-03-wrap .step-section-03-bloc .bloc-inner {
    display: flex;
    justify-content: space-between
}

.p-support-section__step .p-step-section--03 .step-section-03-wrap .step-section-03-bloc .bloc-inner .txt-box {
    min-height: 235px;
    width: 70%
}

.p-support-section__step .p-step-section--03 .step-section-03-wrap .step-section-03-bloc .bloc-inner .txt-box p {
    font-size: 16px;
    letter-spacing: .08em;
    line-height: 32px
}

.p-support-section__step .p-step-section--03 .step-section-03-wrap .step-section-03-bloc .bloc-inner .img-box {
    align-items: flex-end;
    display: inline-flex;
    margin-bottom: 13px;
    width: 28%
}

.p-support-section__step .p-step-bloc-list {
    margin-bottom: 43px
}

.p-support-section__step .p-step-bloc-list ul {
    margin-top: 7px
}

.p-support-section__step .p-step-bloc-list ul li {
    font-size: 14px;
    letter-spacing: .07em;
    line-height: 24px;
    list-style: disc;
    margin-left: 17px
}

@media screen and (max-width:1080px) {
    .p-support-section__step .p-step-section .step-sub-title span {
        display: inline
    }

    .p-support-section__step .p-step-section--03 .step-section-03-wrap .step-section-03-bloc .bloc-inner .txt-box {
        min-height: auto
    }

    .p-support-section__step .p-step-section--03 .step-section-03-wrap .step-section-03-bloc .bloc-inner .txt-box h5 {
        width: 80%
    }

    .p-support-section__step .p-step-section--03 .step-section-03-wrap .step-section-03-bloc .bloc-inner .img-box {
        align-items: flex-start
    }
}

@media screen and (max-width:980px) {
    .p-support-section__step .p-step-section {
        margin-bottom: 30px
    }

    .p-support-section__step .p-step-section__inner {
        padding: 30px
    }

    .p-support-section__step .p-step-section .step-sub-title {
        font-size: 23px
    }

    .p-support-section__step .p-step-section .step-bloc-content .step-bloc .bloc-inner .txt-box {
        width: 72%
    }

    .p-support-section__step .p-step-section .step-bloc-content .step-bloc .bloc-inner .txt-box h5 {
        font-size: 22px;
        letter-spacing: .1em;
        line-height: 26px
    }

    .p-support-section__step .p-step-section .step-bloc-content .step-bloc--03 {
        margin-top: 0
    }

    .p-support-section__step .p-step-section--02 .p-step-section__inner,
    .p-support-section__step .p-step-section--03 .p-step-section__inner {
        padding: 30px
    }

    .p-support-section__step .p-step-section--02 .step-section-02-wrap .step-wig-bloc .txt-box {
        width: 68%
    }
}

@media screen and (max-width:800px) {
    .p-support-section__step {
        width: 75%
    }

    .p-support-section__step .p-step-section {
        margin-bottom: 21px
    }

    .p-support-section__step .p-step-section__inner {
        padding: 8px 14px 10px
    }

    .p-support-section__step .p-step-section__bloc .step-bloc-content {
        flex-direction: column
    }

    .p-support-section__step .p-step-section__bloc .step-bloc-content .step-bloc {
        margin-bottom: 32px;
        width: 100%
    }

    .p-support-section__step .p-step-section__bloc .step-bloc-content .step-bloc:last-child {
        margin-bottom: 32px
    }

    .p-support-section__step .p-step-section__bloc .step-bloc-content .step-bloc .bloc-inner {
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between
    }

    .p-support-section__step .p-step-section__bloc .step-bloc-content .step-bloc .bloc-inner .img-box {
        width: 20%
    }

    .p-support-section__step .p-step-section__bloc .step-bloc-content .step-bloc .bloc-inner .txt-box {
        width: 68%
    }

    .p-support-section__step .p-step-section__bloc .step-bloc-content .step-bloc .bloc-inner .txt-box h5 {
        font-size: 17px;
        line-height: 19px;
        margin: 0 0 6px 29px
    }

    .p-support-section__step .p-step-section__bloc .step-bloc-content .step-bloc .bloc-inner .txt-box h5:before {
        height: 23px;
        left: -29px;
        top: -7px;
        width: 24px
    }

    .p-support-section__step .p-step-section__bloc .step-bloc-content .step-bloc .bloc-inner .txt-box p,
    .p-support-section__step .p-step-section__bloc .step-bloc-content .step-bloc .bloc-inner .txt-box ul li {
        font-size: 14px;
        line-height: 22px
    }

    .p-support-section__step .p-step-section__bloc .step-bloc-content .step-bloc .bloc-inner .txt-box ul {
        margin-top: 6px
    }

    .p-support-section__step .p-step-section__bloc .step-bloc-content .step-bloc .step-list {
        margin-top: 4px
    }

    .p-support-section__step .p-step-section__bloc .step-bloc-content .step-bloc .step-list li {
        font-size: 14px;
        line-height: 22px
    }

    .p-support-section__step .p-step-section__bloc .step-bloc-content .step-bloc .c-btn-renewal {
        margin-top: 17px
    }

    .p-support-section__step .p-step-section__bloc .step-bloc-content .step-bloc .c-btn-renewal a[href]:not([class]),
    .p-support-section__step .p-step-section__bloc .step-bloc-content .step-bloc .c-btn-renewal a[href]:not([class]):visited {
        font-size: 14px;
        height: 40px
    }

    .p-support-section__step .p-step-section__bloc .step-bloc-content .step-bloc .c-btn-renewal a[href]:not([class]):after,
    .p-support-section__step .p-step-section__bloc .step-bloc-content .step-bloc .c-btn-renewal a[href]:not([class]):visited:after {
        right: 6%;
        top: 80%
    }

    .p-support-section__step .p-step-section__bloc--01 {
        margin-bottom: 5px
    }

    .p-support-section__step .p-step-section__bloc--01 .step-bloc-content .step-bloc:nth-of-type(3n+3) {
        order: 2
    }

    .p-support-section__step .p-step-section__bloc--01 .step-bloc-content .step-bloc:nth-of-type(2n+2) {
        order: 3
    }

    .p-support-section__step .p-step-section__bloc--02 .step-bloc-content .step-bloc:last-child {
        margin-bottom: 0
    }

    .p-support-section__step .p-step-section__bloc--02 .step-bloc-content .step-bloc--03 {
        margin: 0 0 32px
    }

    .p-support-section__step .p-step-section .step-sub-title {
        font-size: 17px;
        letter-spacing: 0;
        line-height: 24px;
        margin: 0 0 5px 28px
    }

    .p-support-section__step .p-step-section .step-sub-title:before {
        height: 23px;
        left: -28px;
        top: -1px;
        width: 24px
    }

    .p-support-section__step .p-step-section--02 .p-step-section__inner {
        padding: 13px 14px 18px
    }

    .p-support-section__step .p-step-section--02 .step-section-02-wrap p {
        font-size: 14px;
        letter-spacing: .12em;
        line-height: 23px;
        margin-bottom: 4px
    }

    .p-support-section__step .p-step-section--02 .step-section-02-wrap .step-wig-bloc {
        display: block
    }

    .p-support-section__step .p-step-section--02 .step-section-02-wrap .step-wig-bloc .txt-box {
        margin-bottom: 14px;
        width: 100%
    }

    .p-support-section__step .p-step-section--02 .step-section-02-wrap .step-wig-bloc .txt-box ul li {
        font-size: 14px;
        margin-bottom: 1px
    }

    .p-support-section__step .p-step-section--02 .step-section-02-wrap .step-wig-bloc .img-box {
        margin: 0 auto;
        width: 82%
    }

    .p-support-section__step .p-step-section--03 {
        margin-bottom: 0
    }

    .p-support-section__step .p-step-section--03 .p-step-section__inner {
        padding: 13px 14px 14px
    }

    .p-support-section__step .p-step-section--03 .step-section-03-wrap {
        display: block
    }

    .p-support-section__step .p-step-section--03 .step-section-03-wrap .step-section-03-bloc {
        margin-bottom: 29px;
        width: 100%
    }

    .p-support-section__step .p-step-section--03 .step-section-03-wrap .step-section-03-bloc:last-child {
        margin-bottom: 0
    }

    .p-support-section__step .p-step-section--03 .step-section-03-wrap .step-section-03-bloc .bloc-inner {
        display: flex;
        justify-content: space-between
    }

    .p-support-section__step .p-step-section--03 .step-section-03-wrap .step-section-03-bloc .bloc-inner .txt-box {
        width: 67%
    }

    .p-support-section__step .p-step-section--03 .step-section-03-wrap .step-section-03-bloc .bloc-inner .txt-box h5 {
        line-height: 21px;
        margin-bottom: 5px;
        width: 80%
    }

    .p-support-section__step .p-step-section--03 .step-section-03-wrap .step-section-03-bloc .bloc-inner .txt-box p {
        font-size: 14px;
        line-height: 22px
    }

    .p-support-section__step .p-step-section--03 .step-section-03-wrap .step-section-03-bloc .bloc-inner .img-box {
        margin: 3px 0 0;
        width: 20%
    }

    .p-support-section__step .p-step-bloc-list {
        margin-bottom: 20px
    }

    .p-support-section__step .p-step-bloc-list ul {
        margin-top: 5px
    }

    .p-support-section__step .p-step-bloc-list ul li {
        font-size: 12px;
        letter-spacing: .08em;
        line-height: 18px
    }
}

@media screen and (max-width:600px) {
    .p-support-section__step {
        width: 68%
    }

    .p-support-section__step .p-step-section .step-bloc-content .step-bloc .bloc-inner .img-box,
    .p-support-section__step .p-step-section--03 .step-section-03-wrap .step-section-03-bloc .bloc-inner .img-box {
        width: 30%
    }
}

@media screen and (max-width:340px) {
    .p-support-section__step .p-step-section__bloc .step-bloc-content .step-bloc {
        margin-bottom: 20px
    }

    .p-support-section__step .p-step-section__bloc .step-bloc-content .step-bloc .bloc-inner .txt-box h5:before {
        top: -3px
    }

    .p-support-section__step .p-step-section__bloc .step-bloc-content .step-bloc .c-btn-renewal a[href]:not([class]),
    .p-support-section__step .p-step-section__bloc .step-bloc-content .step-bloc .c-btn-renewal a[href]:not([class]):visited {
        font-size: 12px
    }
}

.p-about-hair {
    display: flex;
    justify-content: flex-end
}

.p-about-hair .about-hair-content {
    border: 2px solid #ddd;
    width: 867px
}

.p-about-hair .about-hair-content__inner {
    padding: 39px 46px 43px
}

.p-about-hair .about-hair-content .step-title {
    margin-bottom: 29px
}

.p-about-hair .about-hair-content .step-title h4 {
    color: #000
}

.p-about-hair .about-hair-content .step-title h4:after,
.p-about-hair .about-hair-content .step-title h4:before {
    border-top: 1px solid #ddd;
    width: 130px
}

.p-about-hair .about-hair-content .step-title p {
    color: #000;
    font-family: Shippori Mincho, sans-serif;
    font-size: 24px;
    font-weight: 600;
    line-height: 36px
}

.p-about-hair .about-hair-content .about-hair-wrap .about-hair-bloc {
    display: flex;
    justify-content: space-between
}

.p-about-hair .about-hair-content .about-hair-wrap .about-hair-bloc .txt-box {
    width: 85%
}

.p-about-hair .about-hair-content .about-hair-wrap .about-hair-bloc .txt-box ul {
    margin-bottom: 10px
}

.p-about-hair .about-hair-content .about-hair-wrap .about-hair-bloc .txt-box ul li {
    margin: 0 0 18px 44px;
    position: relative
}

.p-about-hair .about-hair-content .about-hair-wrap .about-hair-bloc .txt-box ul li:last-child {
    margin-bottom: 0
}

.p-about-hair .about-hair-content .about-hair-wrap .about-hair-bloc .txt-box ul li:before {
    background-image: url(../../assets/img/care/empty_check_icon.png);
    background-position: 50%;
    background-size: auto 100%;
    content: "";
    display: block;
    height: 30px;
    left: -40px;
    position: absolute;
    top: 8px;
    width: 30px
}

.p-about-hair .about-hair-content .about-hair-wrap .about-hair-bloc .txt-box p,
.p-about-hair .about-hair-content .about-hair-wrap .about-hair-bloc .txt-box ul li {
    font-size: 16px;
    letter-spacing: .08em;
    line-height: 32px
}

.p-about-hair .about-hair-content .about-hair-wrap .about-hair-bloc .txt-box p {
    margin-left: 10px
}

.p-about-hair .about-hair-content .about-hair-wrap .about-hair-bloc .txt-box p:before {
    content: "●";
    display: inline-block;
    font-size: 10px;
    margin-left: -10px
}

.p-about-hair .about-hair-content .about-hair-wrap .about-hair-bloc .img-box {
    margin-top: 10px;
    width: 17.9%
}

@media screen and (max-width:800px) {
    .p-about-hair {
        display: block
    }

    .p-about-hair .about-hair-content {
        width: 100%
    }

    .p-about-hair .about-hair-content__inner {
        padding: 13px 19px 14px
    }

    .p-about-hair .about-hair-content .step-title {
        margin-bottom: 12px
    }

    .p-about-hair .about-hair-content .step-title h4 {
        font-size: 19px
    }

    .p-about-hair .about-hair-content .step-title h4:after,
    .p-about-hair .about-hair-content .step-title h4:before {
        top: 55%;
        width: 19px
    }

    .p-about-hair .about-hair-content .step-title p {
        font-size: 14px;
        line-height: 14px
    }

    .p-about-hair .about-hair-content .about-hair-wrap .about-hair-bloc .txt-box {
        width: 78%
    }

    .p-about-hair .about-hair-content .about-hair-wrap .about-hair-bloc .txt-box ul {
        margin-bottom: 10px
    }

    .p-about-hair .about-hair-content .about-hair-wrap .about-hair-bloc .txt-box ul li {
        margin: 0 0 8px 26px;
        position: relative
    }

    .p-about-hair .about-hair-content .about-hair-wrap .about-hair-bloc .txt-box ul li:before {
        content: "";
        display: block;
        height: 19px;
        left: -27px;
        position: absolute;
        top: 8px;
        width: 19px
    }

    .p-about-hair .about-hair-content .about-hair-wrap .about-hair-bloc .txt-box ul li {
        font-size: 14px;
        line-height: 24px
    }

    .p-about-hair .about-hair-content .about-hair-wrap .about-hair-bloc .txt-box p {
        font-size: 12px;
        letter-spacing: .08em;
        line-height: 22px;
        width: 120%
    }

    .p-about-hair .about-hair-content .about-hair-wrap .about-hair-bloc .txt-box p:before {
        content: "●";
        display: inline-block;
        font-size: 6px;
        margin-left: -10px
    }

    .p-about-hair .about-hair-content .about-hair-wrap .about-hair-bloc .img-box {
        margin-top: 8px;
        width: 19.9%
    }
}

.news-item {
    border-bottom: 2px solid #e595bb;
    position: relative
}

.news-anchor {
    position: absolute;
    top: -152px
}

.news-link {
    align-items: flex-start;
    color: #675961;
    display: flex;
    font-size: 0;
    line-height: 1.8;
    padding: 30px 0;
    position: relative
}

.news-link:not(span):hover {
    opacity: 1
}

.news-link:not(span):hover:after {
    color: #5294ce
}

.news-link .news-meta {
    flex-shrink: 0;
    width: 160px
}

.news-date {
    display: block;
    font-family: "Noto Serif JP", serif;
    font-size: 24px;
    font-size: 2.4rem;
    line-height: 1.4;
    margin-bottom: .25em;
    transition: all .25s ease-in-out
}

.top-news .news-date {
    flex-shrink: 0;
    font-size: 18px;
    font-size: 1.8rem;
    line-height: 20px;
    margin: 0;
    padding: 6px 0 0;
    width: 110px
}

.news-category {
    background: #e595bb;
    color: #fff;
    display: inline-block;
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 1;
    min-width: 110px;
    padding: 6px;
    text-align: center
}

.top-news .news-category {
    margin-right: 20px
}

.news-contents {
    color: #323333;
    font-size: 16px;
    font-size: 1.6rem;
    letter-spacing: .1em;
    line-height: 1.6;
    transition: all .25s ease-in-out;
    vertical-align: top
}

.news-ttl {
    color: #292427;
    font-size: 24px;
    font-size: 2.4rem
}

.news-body {
    color: #675961;
    line-height: 1.5;
    padding-top: 16px
}

a.news-link:hover .news-contents {
    text-decoration: underline
}

.top-news .c-btn-wrap {
    padding-top: 40px
}

.news-bn-wrap {
    display: block;
    margin-top: 30px
}

.news-bn-wrap a {
    background-color: #e595bb;
    border-bottom: 4px solid #d188aa;
    border-radius: 4px;
    color: #fff;
    display: block;
    font-size: 16px;
    line-height: 1.3;
    padding: 28px 20px;
    text-align: center;
    text-decoration: none;
    transition: all .25s ease-in-out
}

@media screen and (max-width:900px) {
    .news-bn-wrap a {
        font-size: 15px;
        line-height: 1.6;
        padding: 20px;
        text-align: left
    }
}

.news-bn-wrap a:hover {
    opacity: .7
}

.news-bn-wrap a time {
    margin-right: 20px
}

@media screen and (max-width:900px) {
    .news-bn-wrap a time {
        display: block;
        margin-bottom: 5px
    }
}

.news-bn-wrap a .icon-file-text2 {
    display: inline-block;
    font-size: 22px;
    margin-left: 10px;
    margin-top: -3px;
    vertical-align: middle
}

@media screen and (max-width:900px) {
    .news-link {
        padding: 20px 10px
    }

    .news-link:after {
        right: 10px
    }
}

@media screen and (max-width:768px) {
    .news-anchor {
        position: absolute;
        top: -100px
    }

    .news-link {
        padding: 25px 0
    }

    .top .news-link {
        flex-flow: wrap
    }

    .news-link:after {
        right: 0
    }

    .news-contents {
        display: block;
        margin-left: 0;
        padding-left: 0;
        padding-top: 15px
    }

    .top .news-link .news-contents {
        width: 100%
    }

    .news-link:not(span):after {
        right: 5px
    }
}

@media screen and (max-width:640px) {
    .news-anchor {
        position: absolute;
        top: -80px
    }
}

@media screen and (max-width:480px) {
    .news-anchor {
        position: absolute;
        top: -50px
    }

    .news-link {
        display: block;
        padding: 20px 0
    }

    .news-link .news-meta {
        overflow: hidden;
        width: 100%
    }

    .news-date {
        float: left;
        font-size: 20px;
        font-size: 2rem;
        line-height: 1;
        margin: 0 1em 0 0
    }

    .top-news .news-date {
        padding-top: 0
    }

    .news-category {
        font-size: 12px;
        font-size: 1.2rem;
        min-width: 70px;
        padding: 4px 10px
    }

    .news-contents {
        padding-top: 18px
    }

    .news-contents p {
        font-size: 14px;
        font-size: 1.4rem
    }

    .news-ttl {
        font-size: 18px;
        font-size: 1.8rem
    }

    .top-news .news-contents {
        font-size: 15px;
        font-size: 1.5rem;
        padding-top: 10px
    }

    .top-news .c-btn-wrap {
        padding-top: 20px
    }
}

.news .page-heading-body a.c-btn-circle {
    padding: 11px 25px 11px 11px
}

#top.wrapper {
    height: auto;
    padding-top: 108.5px
}

@media screen and (max-width:1320px) {
    #top.wrapper {
        padding-top: 132.5px
    }
}

@media screen and (max-width:1230px) {
    #top.wrapper {
        padding-top: 104px
    }
}

@media screen and (max-width:1130px) {
    #top.wrapper {
        padding-top: 129.5px
    }
}

@media screen and (max-width:1125px) {
    #top.wrapper {
        padding-top: 140px
    }
}

@media screen and (max-width:899px) {
    #top.wrapper {
        padding-top: 68px
    }
}

#top .inner {
    padding: 0 20px
}

#top .hero {
    margin-bottom: 25px
}

#top .hero .slick-dotted.slick-slider {
    padding-bottom: 20px
}

#top .hero .slick-slide img {
    width: 100%
}

#top .hero .slick-dots {
    height: 8px
}

#top .hero .slick-dots li {
    height: 8px;
    width: 34px
}

#top .hero .slick-dots li button {
    background-color: #e0dae5;
    border-radius: 0;
    height: 8px;
    padding: 0;
    width: 34px
}

#top .hero .slick-dots li.slick-active button {
    background-color: #dc0250
}

#top .hero .slick-next,
#top .hero .slick-prev {
    background-color: rgba(38, 38, 38, .7);
    border-radius: 0;
    height: 60px;
    top: 40%;
    -webkit-transform: translateX(0) translateY(0);
    transform: translateX(0) translateY(0);
    width: 60px
}

#top .hero .slick-next:before,
#top .hero .slick-prev:before {
    color: #fff
}

#top .hero .slick-prev {
    left: 0
}

#top .hero .slick-next {
    right: 0
}

#top .information {
    background: #f7f6f8;
    padding: 14px 0 23px
}

#top .carousel {
    margin: 0 auto 22px;
    max-width: 800px;
    position: relative
}

#top .carousel .carousel_box {
    display: block
}

#top .carousel .carousel_box img {
    margin-left: -30px
}

#top .carousel .slick-next {
    background-color: transparent;
    border-radius: 0;
    bottom: 0;
    height: 60px;
    right: 0;
    top: auto;
    -webkit-transform: translateX(0) translateY(0);
    transform: translateX(0) translateY(0);
    width: 60px
}

#top .carousel .slick-next:before {
    color: #fff
}

#top .carousel .slick-prev {
    background-color: transparent;
    border-radius: 0;
    height: 60px;
    left: auto;
    right: 0;
    top: 0;
    -webkit-transform: translateX(0) translateY(0);
    transform: translateX(0) translateY(0);
    width: 60px
}

#top .carousel .slick-prev:before {
    color: #fff
}

#top .carousel .slick-track .slick-slide {
    margin: 0 20px
}

#top .information .news {
    margin: 0 auto;
    max-width: 1000px
}

@media (max-width:1024px) {
    #top .information .news {
        margin: 0 10px
    }
}

#top .information .news .news_block {
    margin-bottom: 10px
}

#top .information .news .news_block:first-child {
    align-items: center;
    display: flex;
    justify-content: space-between
}

#top .information .news .news_block h3 {
    color: #ed80a7;
    flex: none;
    font-weight: 700
}

#top .information .news .news_block .ticker dl {
    align-items: center;
    border-bottom: 1px solid #e4e4e4;
    border-top: 1px solid #e4e4e4;
    display: flex;
    padding: 15px 0
}

#top .information .news .news_block .ticker dl+dl {
    border-top: none
}

#top .information .news .news_block .ticker dl dt {
    flex: none;
    margin-right: 15px
}

#top .information .news .news_block .ticker dl dt span {
    display: block
}

#top .information .news .news_block .ticker dl dt span.tag {
    background-color: #ed80a7;
    border-radius: 5px;
    color: #fff;
    font-size: 1.2rem;
    padding: 0 1.5rem;
    text-align: center
}

#top .information .news .news_block .ticker dl dd a {
    color: #000
}

#top .information .news .news_btn a {
    color: #000;
    text-decoration: none
}

#top .information .news .news_btn a span {
    color: #ed80a7
}

#top .btn_border_black {
    background-color: #fff;
    border: 1px solid #262626;
    border-radius: 100px;
    color: #262626;
    display: block;
    margin: 0 auto 20px;
    padding: 1.2rem 1.4rem;
    position: relative;
    text-align: center;
    transition: .3s;
    width: 88%
}

#top .btn_border_black:after {
    background: url(../../assets/img/top/btn_border_black_arrow.svg) no-repeat;
    background-size: cover;
    content: "";
    display: block;
    height: 16px;
    position: absolute;
    right: 15px;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    width: 20px
}

#top .btn_border_black:last-of-type {
    margin-bottom: 0
}

#top .btn_border_pink {
    background-color: #fff;
    border: 1px solid #dc0250;
    border-radius: 100px;
    color: #dc0250;
    display: block;
    margin: 0 auto 20px;
    padding: 1.2rem 1.4rem;
    position: relative;
    text-align: center;
    transition: .3s;
    width: 88%
}

#top .btn_border_pink:after {
    background: url(../../assets/img/top/btn_border_pink_arrow.svg) no-repeat;
    background-size: cover;
    content: "";
    display: block;
    height: 16px;
    position: absolute;
    right: 15px;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    width: 20px
}

#top .btn_border_pink:last-of-type {
    margin-bottom: 0
}

#top .title_block {
    background: #ed80a7;
    margin: 0 auto;
    padding: 5px 0;
    text-align: center;
    width: 100%
}

#top .title_block h2 {
    border-bottom: 1px solid #fff;
    border-top: 1px solid #fff;
    color: #fff;
    display: block;
    line-height: 1;
    padding: .8rem 0;
    text-align: center;
    width: 100%
}

#top .support {
    padding-bottom: 40px;
    padding-top: 50px
}

#top .support .catch {
    text-align: center
}

#top .support .title_block {
    margin-bottom: 20px;
    position: relative
}

#top .support .title_block h2 span.line {
    border-bottom: 1px solid #fff;
    display: inline-block;
    font-size: 1.4rem;
    margin-bottom: .5rem;
    padding-bottom: 5px
}

#top .support .title_block h2 span.main {
    display: block;
    font-size: 3.2rem;
    font-weight: 300;
    margin-bottom: .5rem
}

#top .support .title_block h2 span.small {
    font-size: 1.2rem
}

#top .support .lead {
    margin-bottom: 20px;
    text-align: center
}

#top .support .style_group .img_box {
    margin-bottom: 20px
}

#top .support .recommend {
    margin-bottom: 40px
}

#top .support .recommend a {
    align-items: center;
    background-color: #fbe6ed;
    color: #262626;
    display: flex;
    padding: 15px;
    position: relative;
    text-decoration: none
}

#top .support .recommend a:after {
    background: url(../../assets/img/top/btn_arrow.svg) no-repeat;
    background-size: cover;
    content: "";
    display: block;
    height: 16px;
    position: absolute;
    right: 10px;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    width: 20px
}

#top .support .recommend a .thum {
    flex: none;
    margin-right: 15px
}

#top .support .recommend a .txt {
    font-size: 2.4rem
}

#top .support .recommend a .txt .small {
    display: block;
    font-size: 1.6rem
}

#top .salon {
    background-color: #f7f6f8;
    margin-bottom: 30px;
    padding-bottom: 40px;
    padding-top: 40px
}

#top .salon .area_block {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin-bottom: 40px
}

#top .salon .area_block a {
    background-color: #fff;
    border: 1px solid #dc0250;
    border-radius: 10px;
    box-shadow: 0 4px 6px rgba(0, 0, 0, .2);
    color: #dc0250;
    display: block;
    font-weight: 500;
    margin-bottom: 13px;
    padding: 20px;
    position: relative;
    text-decoration: none;
    width: 47.76%
}

#top .salon .area_block a:after {
    background: url(../../assets/img/top/btn_border_pink_arrow.svg) no-repeat;
    background-size: cover;
    content: "";
    display: block;
    height: 16px;
    position: absolute;
    right: 13px;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    width: 20px
}

#top .salon .title_block {
    margin-bottom: 30px
}

#top .salon .title_block h2 {
    font-size: 2.4rem
}

#top .salon .title_block h2 .small {
    display: block;
    font-size: 1.8rem;
    margin-bottom: 1rem
}

#top .salon .mv {
    background: url(../../assets/img/top/salon_mv_sp@2x.jpg) 50% no-repeat;
    background-size: cover;
    height: 330px
}

#top .salon .lead,
#top .salon .mv {
    margin-bottom: 20px
}

#top .salon .btn_block {
    margin-bottom: 40px
}

#top .salon h3 {
    align-items: center;
    color: #dc0250;
    display: flex;
    font-size: 1.8rem;
    font-weight: 600;
    justify-content: center;
    margin-bottom: 20px
}

#top .salon h3:before {
    background: url(../../assets/img/top/salon_area_icon.svg) no-repeat;
    background-size: cover;
    content: "";
    display: block;
    height: 32px;
    margin-right: 10px;
    width: 23px
}

#top .plan {
    background: url(../../assets/img/top/bg_grd_down.png) top repeat-x;
    padding-bottom: 40px;
    padding-top: 40px
}

#top .plan .title_block {
    margin-bottom: 20px
}

#top .plan .title_block h2 {
    font-size: 2.4rem
}

#top .plan .title_block h2 .small {
    display: block;
    font-size: 1.8rem;
    margin-bottom: 1rem
}

#top .plan .lead {
    margin-bottom: 20px
}

#top .plan .plan_btn {
    margin-bottom: 30px
}

#top .plan .plan_btn a {
    border-radius: 6px;
    color: #fff;
    display: block;
    padding: 5px;
    text-align: center;
    text-decoration: none
}

#top .plan .plan_btn a .btn_inner {
    border: 1px solid #fff;
    border-radius: 4px;
    height: 100%;
    padding: 20px
}

#top .plan .plan_btn a span {
    display: block
}

#top .plan .plan_btn .plan_purchase {
    background-color: #d2ae00;
    font-size: 3.2rem;
    font-weight: 600;
    margin-bottom: 20px
}

#top .plan .plan_btn .plan_purchase .txt01 {
    font-size: 2.4rem;
    font-weight: 500
}

#top .plan .plan_btn .plan_purchase .txt02 {
    font-size: 1.8rem;
    font-weight: 400
}

#top .plan .plan_btn .plan_flat {
    background-color: #0a999a;
    font-size: 3.2rem;
    font-weight: 600
}

#top .plan .plan_btn .plan_flat .txt01 {
    display: inline-block;
    font-size: 2.4rem;
    font-weight: 500
}

#top .plan .plan_btn .plan_flat .txt01_2 {
    display: inline-block;
    font-size: 1.8rem;
    font-weight: 400
}

#top .plan .plan_btn .plan_flat .txt02 {
    font-size: 1.8rem;
    font-weight: 400
}

#top .customer_con {
    background-color: #f7f6f8;
    margin-bottom: 20px;
    padding: 20px 0
}

#top .customer_con .con_wrap {
    background-color: #fff;
    border-radius: 10px;
    margin-bottom: 20px;
    padding: 30px 20px
}

#top .customer_con .con_wrap:last-of-type {
    margin-bottom: 0
}

#top .customer_con .title_block {
    margin-bottom: 40px
}

#top .customer_con .title_block h2 {
    font-size: 2.4rem;
    padding: .4rem 0
}

#top .customer_con .con_group .box {
    margin-bottom: 40px
}

#top .customer_con .con_group .box:last-of-type {
    margin-bottom: 0
}

#top .customer_con .con_group .box h3 {
    border-bottom: 1px solid #dc0250;
    color: #dc0250;
    font-size: 2.4rem;
    margin-bottom: 20px;
    padding-bottom: 20px;
    text-align: center
}

#top .customer_con .con_group .box .lead,
#top .customer_con .con_group .box .thum {
    margin-bottom: 20px
}

#top .customer_con .con_group .box .thum img {
    margin: 0 auto
}

#top .conversion_area {
    background-color: #ed80a7;
    padding: 30px 0
}

#top .conversion_area .catch {
    color: #fff;
    font-size: 2.1rem;
    font-weight: 500;
    letter-spacing: .08em;
    margin-bottom: 20px;
    text-align: center
}

#top .conversion_area .group .box {
    background-color: #fff;
    border-radius: 8px;
    margin-bottom: 20px;
    padding: 20px 15px 17px
}

#top .conversion_area .group .box:last-of-type {
    margin-bottom: 0
}

#top .conversion_area .group .box h3 {
    border-bottom: 5px solid #ffedf4;
    font-size: 2rem;
    font-weight: 600;
    line-height: 1.4;
    margin-bottom: 18px;
    padding: 0 6px 6px;
    text-align: center
}

#top .conversion_area .group .box .lead {
    font-size: 2.2rem;
    font-weight: 500;
    line-height: 27px;
    margin-bottom: 2px;
    text-align: center
}

#top .conversion_area .group .box .paper {
    color: #262626;
    display: block;
    font-family: A P-OTF UD Shin Go NT Pr6N, "sans-serif";
    font-size: 1.3rem;
    letter-spacing: .09em;
    line-height: 1.4;
    margin-top: 14px;
    text-align: center
}

#top .conversion_area .group .box .img {
    margin-bottom: 15px;
    text-align: center
}

#top .conversion_area .group .box .img img {
    margin: 0 auto
}

#top .conversion_area .group .box .btn {
    background-color: #de25de;
    color: #fff;
    display: block;
    font-size: 2rem;
    font-weight: 500;
    padding: 1.2rem 1.4rem
}

#top .conversion_area .group .catalog .img {
    margin-bottom: 60px
}

#top .conversion_area .group .catalog .lead {
    color: #ed80a7
}

#top .conversion_area .group .reserve h3 {
    padding: 18px 0
}

#top .conversion_area .group .reserve .btn {
    background-color: #08a7ac
}

#top .conversion_area .group .reserve .img {
    margin-bottom: 30px
}

#top .conversion_area .group .reserve .lead {
    color: #5cd5e8;
    margin-bottom: 23px
}

#top .message {
    padding-bottom: 40px;
    padding-top: 60px
}

#top .message h2 {
    font-size: 2.2rem;
    font-weight: 500;
    line-height: 1.4;
    margin: 0 20px 40px;
    text-align: center
}

#top .message h2 .logo {
    display: block;
    margin: 0 auto 15px;
    width: 68%
}

#top .message .mv {
    background: linear-gradient(180deg, #f4b3ca, #dfbae0);
    height: 220px;
    margin-bottom: 20px;
    position: relative
}

#top .message .mv .img {
    bottom: 0;
    left: 50%;
    position: absolute;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    width: 375px
}

#top .message .lead {
    margin: 0 20px
}

#top .foot_nav {
    border-bottom: 1px solid #8f8f8f;
    margin: 0 20px 40px;
    padding-bottom: 40px;
    padding-top: 40px
}

#top .foot_nav .box>a {
    background-color: #fff;
    border: 1px solid #dc0250;
    border-radius: 10px;
    color: #dc0250;
    display: block;
    font-weight: 600;
    padding: 18px 20px;
    position: relative;
    text-decoration: none;
    z-index: 1
}

#top .foot_nav .box>a:after {
    background: url(../../assets/img/top/foot_nav_arrow_pink.svg) no-repeat;
    background-size: cover;
    content: "";
    display: block;
    height: 16px;
    position: absolute;
    right: 20px;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    width: 20px
}

#top .foot_nav dl dt {
    background-color: #fff;
    border: 1px solid #dc0250;
    border-radius: 10px;
    color: #dc0250;
    display: block;
    font-weight: 600;
    padding: 18px 20px;
    position: relative;
    text-decoration: none;
    z-index: 1
}

#top .foot_nav dl dt:after {
    background: url(../../assets/img/top/foot_nav_open.svg) no-repeat;
    background-size: cover;
    content: "";
    display: block;
    height: 8px;
    position: absolute;
    right: 20px;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    width: 16px
}

#top .foot_nav dl dt.active {
    box-shadow: 0 3px 4px rgba(0, 0, 0, .2)
}

#top .foot_nav dl dt.active:after {
    background: url(../../assets/img/top/foot_nav_close.svg) no-repeat;
    background-size: cover;
    content: "";
    display: block;
    height: 8px;
    position: absolute;
    right: 20px;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    width: 16px
}

#top .foot_nav dl dd {
    background-color: #929292;
    border-radius: 10px;
    display: none;
    padding: 10px 10px 0;
    position: relative;
    top: -10px
}

#top .foot_nav dl dd a {
    border-bottom: 1px solid #fff;
    color: #fff;
    display: block;
    padding: 15px 20px;
    position: relative;
    text-decoration: none
}

#top .foot_nav dl dd a:after {
    background: url(../../assets/img/top/foot_nav_arrow_white.svg) no-repeat;
    background-size: cover;
    content: "";
    display: block;
    height: 16px;
    position: absolute;
    right: 10px;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    width: 20px
}

#top .foot_nav dl dd ul li {
    margin-bottom: 1.5rem
}

#top .foot_nav dl dd ul li:last-child a {
    border-bottom: none
}

#top .foot_nav dl dd ul li a {
    margin-bottom: 0
}

#top .foot_nav .list_salon {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between
}

#top .foot_nav .list_salon li {
    width: 44%
}

#top .foot_nav .group {
    display: flex;
    justify-content: center;
    margin-top: 30px
}

#top .foot_nav .group .box>a:after {
    display: none
}

#top .foot_nav .group .sub {
    border-right: 1px solid #dc0250
}

#top .foot_nav .group .sub:last-child {
    border-right: 0
}

#top .foot_nav .group .sub a {
    border: none;
    color: #dc0250;
    padding: 0 2rem;
    text-decoration: none
}

@media (max-width:380px) {

    #top .hero .slick-next,
    #top .hero .slick-prev {
        height: 50px;
        width: 50px
    }

    #top .hero .slick-next:before,
    #top .hero .slick-prev:before {
        font-size: 30px
    }

    #top .foot_nav .group .sub:first-child {
        width: 30%
    }

    #top .foot_nav .group .sub:nth-of-type(2) {
        width: 50%
    }

    #top .foot_nav .group .sub:nth-of-type(3) {
        width: 30%
    }

    #top .foot_nav .group .sub a {
        font-size: 1.1rem;
        padding: 0 .5rem
    }
}

@media (min-width:768px) {
    .sp {
        display: none
    }

    .tab {
        display: block
    }

    #top .inner {
        margin: 0 auto
    }

    #top .hero {
        margin-bottom: 30px
    }

    #top .hero .slick-dotted.slick-slider {
        padding-bottom: 20px
    }

    #top .hero .slick-next,
    #top .hero .slick-prev {
        top: 45%
    }

    #top .hero .slick-prev {
        left: 6%
    }

    #top .hero .slick-next {
        right: 6%
    }

    #top .information {
        padding: 50px 0
    }

    #top .carousel {
        padding: 0
    }

    #top .btn_border_pink {
        width: 285px
    }

    #top .btn_border_pink:hover {
        background-color: #dc0250;
        color: #fff;
        transition: .3s
    }

    #top .btn_border_pink:hover:after {
        background: url(../../assets/img/top/btn_border_arrow_on.svg) no-repeat;
        background-size: cover
    }

    #top .btn_border_black {
        width: 285px
    }

    #top .btn_border_black:hover {
        background-color: #262626;
        color: #fff;
        transition: .3s
    }

    #top .btn_border_black:hover:after {
        background: url(../../assets/img/top/btn_border_arrow_on.svg) no-repeat;
        background-size: cover
    }

    #top .title_block {
        width: 530px
    }

    #top .title_block h2 {
        padding: 1.5rem 0
    }

    #top .support .title_block {
        display: flex;
        justify-content: center
    }

    #top .support .title_block h2 span.line {
        margin-bottom: 1rem;
        padding-bottom: 8px
    }

    #top .support .lead {
        font-size: 2.4rem;
        margin-bottom: 40px
    }

    #top .support .style_group {
        display: flex;
        justify-content: space-between
    }

    #top .support .style_group .img_box:nth-child(2) {
        margin: 0 10px
    }

    #top .support .recommend a {
        margin: 0 auto;
        padding: 10px;
        width: 44%
    }

    #top .support .recommend a:after {
        right: 15px
    }

    #top .support .recommend a .txt {
        font-size: 2.2rem
    }

    #top .plan .title_block h2 .small {
        font-size: 2.5rem
    }

    #top .plan .plan_btn {
        display: flex;
        justify-content: space-between
    }

    #top .plan .plan_btn a {
        width: 48.53%
    }

    #top .plan .plan_btn .plan_purchase {
        margin-bottom: 0
    }

    #top .salon .mv {
        background: url(../../assets/img/top/salon_mv_pc@2x.jpg) 0 no-repeat;
        background-size: cover;
        height: 383px;
        margin-bottom: 30px
    }

    #top .customer_con .title_block h2 {
        font-size: 2.9rem;
        padding: 1rem 0
    }

    #top .customer_con .con_group {
        display: flex;
        justify-content: space-between
    }

    #top .customer_con .con_group .box {
        margin-bottom: 0;
        width: 47.78%
    }

    #top .customer_con .con_group .box .btn_border_pink {
        width: 66.28%
    }

    #top .conversion_area .group {
        display: flex;
        justify-content: space-between
    }

    #top .conversion_area .group .box {
        border-radius: 8px;
        margin-bottom: 0
    }

    #top .conversion_area .group .catalog {
        width: 46.7%
    }

    #top .conversion_area .group .reserve {
        margin-right: 22px;
        width: 48%
    }

    #top .message h2 .logo {
        width: 34%
    }

    #top .message .mv {
        height: 30vw
    }

    #top .message .mv .img {
        width: 51.1vw
    }

    #top .foot_nav dl dt {
        pointer-events: none
    }
}

@media screen and (max-width:767px) {

    #top .hero .slick-next,
    #top .hero .slick-prev {
        bottom: 22px;
        display: block;
        top: auto
    }
}

@media (min-width:900px) {

    #top .hero .slick-next,
    #top .hero .slick-prev {
        height: 50px;
        top: 40%;
        width: 50px
    }

    #top .hero .slick-next:before,
    #top .hero .slick-prev:before {
        font-size: 30px
    }
}

@media (min-width:1031px) {
    .pc {
        display: block
    }

    .pc-none {
        display: none
    }

    #top .hero .slick-next,
    #top .hero .slick-prev {
        height: 60px;
        top: 43.5%;
        width: 60px
    }

    #top .hero .slick-next:before,
    #top .hero .slick-prev:before {
        font-size: 34px
    }

    #top .information .news .news_block .ticker dl dt {
        align-items: center;
        display: flex;
        margin-right: 20px
    }

    #top .information .news .news_block .ticker dl dt span.tag {
        font-size: 1.4rem;
        margin-left: 2rem
    }

    #top .information .news .news_btn a {
        display: flex;
        justify-content: flex-end
    }

    #top .support {
        padding-bottom: 80px;
        padding-top: 100px
    }

    #top .support .catch {
        margin: 0 auto;
        width: 65%
    }

    #top .support .title_block {
        margin-bottom: 40px
    }

    #top .support .title_block h2 span.line {
        font-size: 2.2rem
    }

    #top .support .title_block h2 span.main {
        font-size: 5rem
    }

    #top .support .title_block h2 span.small {
        font-size: 1.8rem
    }

    #top .support .style_group {
        margin-bottom: 30px
    }

    #top .support .recommend a .txt .small {
        display: inline-block
    }

    #top .plan {
        padding-bottom: 80px;
        padding-top: 80px
    }

    #top .plan .inner {
        margin: 0 auto;
        max-width: 750px
    }

    #top .plan .title_block h2 {
        font-size: 3.4rem
    }

    #top .plan .lead {
        font-size: 2rem;
        margin-bottom: 40px
    }

    #top .salon {
        padding-bottom: 80px;
        padding-top: 90px
    }

    #top .salon .title_block {
        margin-bottom: 40px
    }

    #top .salon .title_block h2 {
        font-size: 3.4rem
    }

    #top .salon .title_block h2 .small {
        font-size: 2.5rem
    }

    #top .salon .lead {
        font-size: 2rem;
        margin: 0 auto 30px;
        max-width: 750px
    }

    #top .salon .btn_block {
        margin-bottom: 50px
    }

    #top .salon .area_block_wrap {
        background-color: #fff;
        border: 1px solid #dc0250;
        border-radius: 10px;
        margin-bottom: 30px;
        padding: 40px 40px 30px
    }

    #top .salon .area_block {
        justify-content: flex-start;
        margin-bottom: 0
    }

    #top .salon .area_block a {
        border: none;
        border-bottom: 1px solid #262626;
        border-radius: 0;
        box-shadow: none;
        color: #262626;
        margin-bottom: 0;
        margin-right: 6.38%;
        padding: 18px 10px;
        width: 28.94%
    }

    #top .salon .area_block a:nth-child(3n) {
        margin-right: 0
    }

    #top .salon .area_block a:after {
        background: url(../../assets/img/top/btn_border_black_arrow.svg) no-repeat
    }

    #top .customer_con {
        padding: 80px 0
    }

    #top .conversion_area {
        padding: 65px 0 80px
    }

    #top .conversion_area .group .box {
        padding: 25px
    }

    #top .conversion_area .group .box h3 {
        font-size: 1.9rem;
        padding: 10px
    }

    #top .conversion_area .group .box .img {
        margin-bottom: 31px
    }

    #top .conversion_area .group .box .paper {
        color: #262626;
        display: block;
        font-family: A P-OTF UD Shin Go NT Pr6N, "sans-serif";
        font-size: 1.3rem;
        line-height: 1.5;
        margin-top: 11px;
        text-align: center
    }

    #top .conversion_area .group .box .btn {
        margin: 0 auto;
        width: 75.9%
    }

    #top .conversion_area .group .reserve .img {
        margin-bottom: 24px
    }

    #top .message {
        margin: 0 auto;
        max-width: 1000px;
        padding-bottom: 70px
    }

    #top .message .mv {
        height: 300px
    }

    #top .message .mv .img {
        height: auto;
        width: 511px
    }

    #top .message .lead {
        font-size: 2rem;
        letter-spacing: .02em;
        line-height: 36px;
        margin: 0 auto;
        max-width: 100%
    }

    #top .foot_nav {
        border-bottom: none;
        display: flex;
        flex-wrap: wrap;
        margin: 0 auto;
        max-width: 1000px;
        padding-bottom: 0;
        padding-top: 70px
    }

    #top .foot_nav .box {
        margin-bottom: 50px
    }

    #top .foot_nav .box>a {
        border: none;
        border-radius: 0;
        font-size: 1.8rem;
        margin-bottom: 20px;
        padding: 0
    }

    #top .foot_nav .box>a:after {
        display: none
    }

    #top .foot_nav .box01 {
        width: 20%
    }

    #top .foot_nav .box02 {
        width: 24%
    }

    #top .foot_nav .box03 {
        margin-right: 4%;
        width: 17%
    }

    #top .foot_nav .box04 {
        width: 34%
    }

    #top .foot_nav dl dt {
        border: none;
        border-radius: 0;
        font-size: 1.8rem;
        margin-bottom: 20px;
        padding: 0
    }

    #top .foot_nav dl dt.active:after,
    #top .foot_nav dl dt:after {
        display: none
    }

    #top .foot_nav dl dd {
        background: 0 0;
        border-radius: 0;
        display: block;
        padding: 0;
        top: 0
    }

    #top .foot_nav dl dd a {
        border-bottom: none;
        color: #262626;
        font-size: 1.5rem;
        margin-bottom: 1.5rem;
        padding: 0
    }

    #top .foot_nav dl dd a:after {
        display: none
    }

    #top .foot_nav .list_item {
        display: flex;
        flex-wrap: wrap
    }

    #top .foot_nav .list_item li {
        border-right: 1px solid #262626;
        padding: 0 1rem
    }

    #top .foot_nav .list_item li:first-child {
        padding-left: 0
    }

    #top .foot_nav .list_salon {
        justify-content: flex-start
    }

    #top .foot_nav .list_salon li {
        border-right: 1px solid #262626;
        padding: 0 1rem;
        width: auto
    }

    #top .foot_nav .list_salon li:first-child {
        padding-left: 0
    }

    #top .foot_nav .group {
        justify-content: flex-start;
        width: 100%
    }

    #top .foot_nav .group .sub {
        border-right: none
    }

    #top .foot_nav .group .sub a {
        padding: 0
    }
}

@media (max-width:375px) {
    #top .message .mv .img {
        width: 100%
    }
}

@media (min-width:481px) {
    #top .carousel {
        margin: 0 auto 40px;
        padding: 0 50px
    }

    #top .carousel .btn_bg {
        display: none
    }

    #top .carousel .carousel_box {
        margin: 0 7px
    }

    #top .carousel .carousel_box img {
        margin-left: auto
    }

    #top .carousel .slick-next {
        right: -50px;
        top: 50%;
        -webkit-transform: translateX(0) translateY(-50%);
        transform: translateX(0) translateY(-50%)
    }

    #top .carousel .slick-next:before {
        color: #262626
    }

    #top .carousel .slick-prev {
        left: -50px;
        top: 50%;
        -webkit-transform: translateX(0) translateY(-50%);
        transform: translateX(0) translateY(-50%)
    }

    #top .carousel .slick-prev:before {
        color: #262626
    }
}

@media (min-width:900px) {
    #top .customer_con .con_wrap {
        margin-bottom: 40px;
        padding: 40px 50px
    }
}

@media (max-width:920px) {
    #top .conversion_area .group .catalog .img {
        margin-bottom: 11%
    }
}

@media (max-width:768px) {
    #top .conversion_area .group .reserve .lead {
        margin-bottom: 26px
    }

    #top .conversion_area .group .box {
        padding: 20px 15px 21px
    }

    #top .conversion_area .group .box .img {
        margin-bottom: 15px
    }

    #top .conversion_area .group .box h3 {
        font-weight: 500;
        letter-spacing: .05em
    }

    #top .conversion_area .group .box .btn {
        margin: 0 auto;
        max-width: 295px
    }
}

@media (max-width:380px) {
    #top .conversion_area .catch {
        font-size: 1.7rem
    }

    #top .conversion_area .group .box h3 {
        font-size: 1.8rem
    }

    #top .conversion_area .group .box .paper {
        font-size: 1.2rem
    }

    #top .conversion_area .group .box .lead {
        font-size: 1.5rem
    }

    #top .conversion_area .group .box .btn {
        font-size: 1.8rem;
        padding: 1rem 1.4rem
    }

    #top .plan .plan_btn a .btn__inner {
        padding: 10px
    }

    #top .plan .plan_btn .plan_purchase .txt01 {
        font-size: 2rem
    }

    #top .plan .plan_btn .plan_flat .txt02,
    #top .plan .plan_btn .plan_purchase .txt02 {
        font-size: 1.3rem
    }
}

@media screen and (max-width:767px) {
    .is-sp-show {
        display: block
    }
}

.bnr-ttl {
    display: block;
    margin: auto;
    max-width: 1080px
}

.c-section-banner {
    margin: 30px auto 0;
    max-width: 1080px
}

.c-section-banner a {
    display: block
}

.c-section-banner img {
    height: auto;
    vertical-align: top;
    width: 100%
}

@media screen and (min-width:801px) {
    .c-section-banner a {
        opacity: 1;
        transition: opacity .2s
    }

    .c-section-banner a:hover {
        opacity: .7
    }

    .c-section-banner.bnr-campaign .sp {
        display: none
    }
}

@media screen and (max-width:767px) {

    .bnr-ttl,
    .c-section-banner {
        padding: 0 10px
    }

    .c-section-banner {
        margin: 20px auto 0
    }

    .c-section-banner.bnr-campaign .pc {
        display: none
    }

    .c-section-banner.bnr-campaign .sp {
        display: block
    }
}

@media screen and (max-width:600px) {
    .c-section-banner {
        margin: 12px auto 0
    }
}

.c-btn-renewal {
    margin: 0 auto;
    max-width: 360px;
    width: 100%
}

.c-btn-renewal a,
.c-btn-renewal a:visited,
.c-btn-renewal a[href]:not([class]),
.c-btn-renewal a[href]:not([class]):visited {
    align-items: center;
    -webkit-appearance: none;
    background-color: #fff;
    border: 1px solid #ddd;
    border-radius: 10px;
    box-sizing: border-box;
    color: #333;
    cursor: pointer;
    display: flex;
    font-family: Noto Sans JP, sans-serif;
    font-size: 16px;
    font-weight: 400;
    height: 50px;
    justify-content: normal;
    letter-spacing: .08em;
    line-height: 20px;
    outline: none;
    padding: 0 21px;
    position: relative;
    text-decoration: none;
    width: 100%
}

.c-btn-renewal a span,
.c-btn-renewal a:visited span,
.c-btn-renewal a[href]:not([class]) span,
.c-btn-renewal a[href]:not([class]):visited span {
    font-size: 13px
}

.c-btn-renewal a:after,
.c-btn-renewal a:visited:after,
.c-btn-renewal a[href]:not([class]):after,
.c-btn-renewal a[href]:not([class]):visited:after {
    background-image: url(../../assets/img/common/renewal/pink_icon_arrow.png);
    background-position: 0 0;
    background-repeat: no-repeat;
    background-size: 100% 100%;
    content: "";
    height: 15px;
    margin-top: -20px;
    position: absolute;
    right: 5%;
    top: 77%;
    width: 9px;
    z-index: 0
}

.c-btn-renewal--support {
    max-width: 450px
}

.c-btn-renewal--support a,
.c-btn-renewal--support a:visited,
.c-btn-renewal--support a[href]:not([class]),
.c-btn-renewal--support a[href]:not([class]):visited {
    border: 1px solid #dc0250;
    color: #dc0250;
    display: block;
    font-size: 18px;
    height: 60px;
    padding: 7px 20px
}

.c-btn-renewal--support a span,
.c-btn-renewal--support a:visited span,
.c-btn-renewal--support a[href]:not([class]) span,
.c-btn-renewal--support a[href]:not([class]):visited span {
    font-size: 18px
}

.c-btn-renewal--support a[href]:not([class]):hover:after {
    background-image: url(../../assets/img/common/renewal/white_arrow_icon.png)
}

.c-btn-renewal--support a[href]:not([class]):hover {
    background-color: #dc0250;
    border: 1px solid #dc0250;
    color: #fff
}

.c-btn-renewal--top-about {
    max-width: 438px
}

.c-btn-renewal--top-about:not(:last-child) {
    margin-bottom: 10px
}

.c-btn-renewal--top-about-04 {
    max-width: 100%
}

.c-btn-renewal--top-about-04 a,
.c-btn-renewal--top-about-04 a:visited,
.c-btn-renewal--top-about-04 a[href]:not([class]),
.c-btn-renewal--top-about-04 a[href]:not([class]):visited {
    border: none;
    border-radius: 0;
    border-bottom-left-radius: 15px;
    border-bottom-right-radius: 15px;
    border-top: 1px solid #ddd;
    height: 47px
}

.c-btn-renewal--salon a,
.c-btn-renewal--salon a:visited,
.c-btn-renewal--salon a[href]:not([class]),
.c-btn-renewal--salon a[href]:not([class]):visited {
    border: 1px solid #333
}

.c-btn-renewal--about-feature {
    margin: 0
}

.c-btn-renewal--trivia {
    margin: 0 0 30px;
    max-width: 100%;
    position: relative
}

.c-btn-renewal--trivia a,
.c-btn-renewal--trivia a:visited,
.c-btn-renewal--trivia a[href]:not([class]),
.c-btn-renewal--trivia a[href]:not([class]):visited {
    background-color: #3368cd;
    border: 0;
    color: #fff;
    justify-content: center;
    text-align: center
}

.c-btn-renewal--trivia a:after,
.c-btn-renewal--trivia a:visited:after,
.c-btn-renewal--trivia a[href]:not([class]):after,
.c-btn-renewal--trivia a[href]:not([class]):visited:after {
    background-image: none;
    border-right: 2px solid #fff;
    border-top: 2px solid #fff;
    content: "";
    height: 10px;
    position: absolute;
    right: 24px;
    top: 89%;
    transform: rotate(45deg) translateY(-50%);
    width: 10px
}

.c-btn-renewal--trivia a span,
.c-btn-renewal--trivia a:visited span,
.c-btn-renewal--trivia a[href]:not([class]) span,
.c-btn-renewal--trivia a[href]:not([class]):visited span {
    font-size: 16px
}

@media screen and (max-width:800px) {
    .c-btn-renewal {
        max-width: 100%
    }

    .c-btn-renewal a,
    .c-btn-renewal a:visited,
    .c-btn-renewal a[href]:not([class]),
    .c-btn-renewal a[href]:not([class]):visited {
        height: 51px;
        padding: 0 13px
    }

    .c-btn-renewal a:after,
    .c-btn-renewal a:visited:after,
    .c-btn-renewal a[href]:not([class]):after,
    .c-btn-renewal a[href]:not([class]):visited:after {
        right: 3%
    }

    .c-btn-renewal a span,
    .c-btn-renewal a:visited span,
    .c-btn-renewal a[href]:not([class]) span,
    .c-btn-renewal a[href]:not([class]):visited span {
        font-size: 11px
    }

    .c-btn-renewal--support {
        max-width: 450px
    }

    .c-btn-renewal--support a,
    .c-btn-renewal--support a:visited,
    .c-btn-renewal--support a[href]:not([class]),
    .c-btn-renewal--support a[href]:not([class]):visited {
        font-size: 15px;
        height: 58px;
        padding: 9px 16px
    }

    .c-btn-renewal--support a span,
    .c-btn-renewal--support a:visited span,
    .c-btn-renewal--support a[href]:not([class]) span,
    .c-btn-renewal--support a[href]:not([class]):visited span {
        font-size: 12px
    }

    .c-btn-renewal--top-about a,
    .c-btn-renewal--top-about a:visited,
    .c-btn-renewal--top-about a[href]:not([class]),
    .c-btn-renewal--top-about a[href]:not([class]):visited {
        font-size: 15px;
        padding: 0 15px
    }

    .c-btn-renewal--top-about a:after,
    .c-btn-renewal--top-about a:visited:after,
    .c-btn-renewal--top-about a[href]:not([class]):after,
    .c-btn-renewal--top-about a[href]:not([class]):visited:after {
        right: 4%
    }

    .c-btn-renewal--top-about-04 {
        max-width: 100%
    }

    .c-btn-renewal--top-about-04 a,
    .c-btn-renewal--top-about-04 a:visited,
    .c-btn-renewal--top-about-04 a[href]:not([class]),
    .c-btn-renewal--top-about-04 a[href]:not([class]):visited {
        border-radius: 0;
        border-bottom-left-radius: 15px;
        border-bottom-right-radius: 15px;
        height: 50px
    }

    .c-btn-renewal--footer {
        width: 360px
    }

    .c-btn-renewal--trivia {
        margin: 0 0 30px
    }

    .c-btn-renewal--trivia a span,
    .c-btn-renewal--trivia a:visited span,
    .c-btn-renewal--trivia a[href]:not([class]) span,
    .c-btn-renewal--trivia a[href]:not([class]):visited span {
        font-size: 16px
    }
}

@media screen and (max-width:600px) {

    .c-btn-renewal a[href]:not([class]),
    .c-btn-renewal a[href]:not([class]):visited {
        border-radius: 5px;
        font-size: 14px
    }

    .c-btn-renewal--support {
        max-width: 100%
    }

    .c-btn-renewal--top-about-04 a,
    .c-btn-renewal--top-about-04 a:visited,
    .c-btn-renewal--top-about-04 a[href]:not([class]),
    .c-btn-renewal--top-about-04 a[href]:not([class]):visited {
        border-radius: 0;
        border-bottom-left-radius: 5px;
        border-bottom-right-radius: 5px
    }

    .c-btn-renewal--footer {
        width: 100%
    }

    .c-btn-renewal--trivia a,
    .c-btn-renewal--trivia a:visited,
    .c-btn-renewal--trivia a[href]:not([class]),
    .c-btn-renewal--trivia a[href]:not([class]):visited {
        padding: 0 45px
    }

    .c-btn-renewal--trivia a:after,
    .c-btn-renewal--trivia a:visited:after,
    .c-btn-renewal--trivia a[href]:not([class]):after,
    .c-btn-renewal--trivia a[href]:not([class]):visited:after {
        right: 4%;
        top: 86%
    }

    .c-btn-renewal--trivia a span,
    .c-btn-renewal--trivia a:visited span,
    .c-btn-renewal--trivia a[href]:not([class]) span,
    .c-btn-renewal--trivia a[href]:not([class]):visited span {
        font-size: 14px
    }
}

@media screen and (max-width:440px) {

    .c-btn-renewal--trivia a,
    .c-btn-renewal--trivia a:visited,
    .c-btn-renewal--trivia a[href]:not([class]),
    .c-btn-renewal--trivia a[href]:not([class]):visited {
        display: block;
        padding: 5px
    }

    .c-btn-renewal--trivia a span,
    .c-btn-renewal--trivia a:visited span,
    .c-btn-renewal--trivia a[href]:not([class]) span,
    .c-btn-renewal--trivia a[href]:not([class]):visited span {
        display: block
    }
}

@media screen and (max-width:360px) {
    .c-btn-renewal {
        max-width: 100%
    }

    .c-btn-renewal a,
    .c-btn-renewal a:visited,
    .c-btn-renewal a[href]:not([class]),
    .c-btn-renewal a[href]:not([class]):visited {
        font-size: 14px
    }

    .c-btn-renewal--support a,
    .c-btn-renewal--support a:visited,
    .c-btn-renewal--support a[href]:not([class]),
    .c-btn-renewal--support a[href]:not([class]):visited {
        font-size: 12px;
        padding: 8px
    }

    .c-btn-renewal--support a span,
    .c-btn-renewal--support a:visited span,
    .c-btn-renewal--support a[href]:not([class]) span,
    .c-btn-renewal--support a[href]:not([class]):visited span {
        font-size: 10px
    }
}

#top .slick-track {
    margin: 0 auto
}

#top .information .news .news_btn a span img {
    margin-left: 15px
}

#top .lineup {
    padding: 77px 0
}

#top .conversion_area .catch,
#top .lineup .h2_bd+p,
#top .lineup .style_child .h3_add,
#top .lineup .style_child h3,
#top .lineup .style_flex.piece div .h3_add,
#top .lineup .style_flex.piece div h3,
#top .lineup .style_flex.piece div:last-child *,
#top .lineup h2,
#top .lineup h2+.h2_sub,
#top .message .lead,
#top .message h2,
#top .plan_compare .h2_bd+p,
#top .plan_compare .plan_flex>a h3+p,
#top .plan_compare .plan_flex>a>span,
#top .plan_compare h2,
#top .plan_compare h2+.h2_sub,
#top .salon_place .h2_bd+p,
#top .salon_place h2,
#top .salon_place h2+.h2_sub {
    font-family: Playfair Display, serif
}

#top .lineup h2,
#top .plan_compare h2,
#top .salon_place h2 {
    color: #ed80a7;
    font-size: 48px;
    font-weight: 500;
    letter-spacing: 2px;
    text-align: center
}

#top .lineup h2+.h2_sub,
#top .plan_compare h2+.h2_sub,
#top .salon_place h2+.h2_sub {
    color: #ed80a7;
    font-size: 15px;
    font-weight: 700;
    margin-top: 8px;
    text-align: center
}

#top .lineup .h2_bd,
#top .plan_compare .h2_bd,
#top .salon_place .h2_bd {
    background-color: #fbe6ed;
    height: 1px;
    margin: 20px auto 50px;
    max-width: 1000px;
    width: 90%
}

#top .plan_compare .h2_bd {
    background-color: #ed80a7
}

#top .lineup .h2_bd {
    margin-bottom: 30px
}

#top .lineup .h2_bd+p {
    margin-bottom: 40px
}

#top .lineup .style_flex {
    align-items: flex-start;
    display: flex;
    justify-content: space-between;
    margin: 0 auto;
    max-width: 1100px;
    width: 95%
}

#top .lineup .style_child {
    position: relative;
    text-align: center;
    width: 32%
}

#top .lineup .style_child h3,
#top .lineup .style_flex.piece div h3 {
    color: #ed80a7;
    font-size: 32px;
    font-weight: 500
}

#top .lineup .style_child .h3_add,
#top .lineup .style_flex.piece div .h3_add {
    color: #ed80a7;
    font-size: 18.5px;
    font-weight: 700;
    letter-spacing: 1px;
    margin-bottom: 15px
}

#top .lineup .style_child img {
    margin-bottom: 30px;
    z-index: 1
}

#top .lineup .style_child .more_btn {
    bottom: 2%;
    left: 0;
    position: absolute;
    right: 0;
    width: 100%;
    z-index: 2
}

#top .lineup .style_child .more_btn a {
    background-color: #fff;
    border: 1px solid #ed80a7;
    border-radius: 100px;
    color: #ed80a7;
    padding: 8px 70px;
    position: relative
}

#top .lineup .style_all a:after,
#top .lineup .style_child .more_btn a:after,
#top .lineup .style_flex.piece div:first-child a:after,
#top .plan_compare .plan_all a:after {
    content: url(../../assets/img/top/btn_arrow.png);
    position: absolute;
    right: 7%;
    top: 20%
}

#top .lineup .style_flex.piece {
    justify-content: center;
    margin-top: 40px
}

#top .lineup .style_flex.piece div:first-child {
    margin-left: 2%;
    margin-right: 5%;
    width: 22%
}

#top .lineup .style_flex.piece div:first-child a {
    background-color: #fff;
    border: 1px solid #ed80a7;
    border-radius: 100px;
    color: #ed80a7;
    display: block;
    padding: 8px 0;
    position: relative;
    text-align: center;
    width: 100%
}

#top .lineup .style_flex.piece div:last-child {
    width: 36%
}

#top .lineup .style_flex.piece div:last-child p {
    letter-spacing: 1px;
    margin-bottom: 10px
}

#top .lineup .style_flex.piece div:last-child ul {
    background-color: #f7f6f8;
    padding: 20px
}

#top .lineup .style_flex.piece div:last-child ul li {
    font-size: 19px;
    margin-bottom: 5px
}

#top .lineup .style_flex.piece div:last-child ul li img {
    margin-right: 10px
}

#top .lineup .style_all,
#top .plan_compare .plan_all {
    margin-top: 60px;
    text-align: center
}

#top .plan_compare .plan_all {
    margin-top: 20px
}

#top .lineup .style_all a,
#top .plan_compare .plan_all a {
    background-color: #fff;
    border: 1px solid #dc0250;
    border-radius: 100px;
    color: #dc0250;
    font-size: 17px;
    padding: 13px 60px;
    position: relative;
    text-align: center
}

#top .lineup .style_all a:after,
#top .plan_compare .plan_all a:after {
    content: url(../../assets/img/top/btn_arrow02.png);
    top: 25%
}

#top .salon_place .bg {
    background-color: #fbe6ed;
    margin-top: 120px;
    padding: 280px 0 100px;
    position: relative
}

#top .salon_place .bg .eyecatch {
    left: 50%;
    position: absolute;
    top: 10%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%)
}

#top .salon_place .h2_bd+p {
    line-height: 1.7;
    margin-bottom: 45px;
    text-align: center
}

#top .salon_place .bg h3 {
    color: #dc0250;
    font-size: 20px;
    font-weight: 700;
    text-align: center
}

#top .salon_place .bg h3 img {
    margin-right: 10px
}

#top .salon_place .bg .area_flex {
    align-items: flex-start;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin: 30px auto 0;
    max-width: 1000px;
    width: 95%
}

#top .salon_place .bg .area_flex a {
    background-color: #fff;
    box-sizing: border-box;
    color: #dc0250;
    display: block;
    margin-bottom: 15px;
    padding: 15px 10px;
    position: relative;
    width: 24%
}

#top .salon_place .bg .area_flex a:after,
#top .salon_place .salon_all a:after {
    color: #dc0250;
    content: "＞";
    position: absolute;
    right: 5%;
    top: 25%;
    transform: scaleX(70%)
}

#top .salon_place .salon_all {
    margin-top: 40px;
    text-align: center
}

#top .salon_place .salon_all a {
    border: 1px solid #dc0250;
    border-radius: 100px;
    color: #dc0250;
    font-size: 17px;
    padding: 13px 80px;
    position: relative;
    text-align: center
}

@media screen and (max-width:340px) {
    #top .salon_place .salon_all a {
        padding: 13px 60px
    }
}

#top .salon_place .anno {
    font-size: 12px;
    margin-top: 35px;
    text-align: center
}

#top .plan_compare {
    background-color: #f7f6f8;
    padding: 70px 0
}

#top .lineup .h2_bd+p,
#top .plan_compare .h2_bd+p {
    text-align: center
}

#top .plan_compare .plan_flex {
    display: flex;
    justify-content: space-between;
    margin: 40px auto;
    max-width: 900px;
    width: 95%
}

#top .plan_compare .plan_flex>div {
    background-color: #fff;
    border-radius: 10px;
    display: block;
    padding: 40px 35px 50px;
    text-align: center;
    width: 48%
}

#top .plan_compare .plan_flex>div>span {
    font-size: 30px;
    font-weight: 500
}

#top .plan_compare .plan_flex .plan_buyout>span {
    color: #d2ae00
}

#top .plan_compare .plan_flex .plan_monthly>span {
    color: #08a7ac
}

#top .plan_compare .plan_flex .plan_monthly>span span {
    font-size: .6em
}

#top .plan_compare .plan_flex>div a {
    border-radius: 100px;
    color: #fff;
    display: block;
    font-size: 30px;
    font-weight: 500;
    margin: 20px auto 30px;
    padding: 7px 0;
    position: relative;
    width: 80%
}

#top .plan_compare .plan_flex .plan_buyout a {
    background-color: #d2ae00
}

#top .plan_compare .plan_flex .plan_monthly a {
    background-color: #08a7ac
}

#top .plan_compare .plan_flex .plan_buyout a:after,
#top .plan_compare .plan_flex .plan_monthly a:after {
    content: url(../../assets/img/top/btn_arrow03.png);
    position: absolute;
    right: 7%;
    top: 4%
}

#top .plan_compare .plan_flex>a h3+p {
    color: #000;
    font-size: 19px;
    line-height: 1.5;
    margin-bottom: 40px
}

#top .plan_compare .plan_flex>a p:last-child {
    text-align: right
}

#top .plan_compare .plan_flex>a p:last-child span {
    border-bottom: 1px solid #000;
    color: #000;
    font-size: 19px;
    padding-bottom: 3px;
    padding-right: 40px;
    position: relative
}

#top .plan_compare .plan_flex>a p:last-child span:after {
    color: #000;
    content: "＞";
    font-size: 16px;
    position: absolute;
    right: 2%;
    top: 7%;
    transform: scaleX(70%)
}

#top .bnr_area {
    padding: 80px 0
}

#top .bnr_area>div {
    margin: 0 auto 40px;
    max-width: 900px;
    width: 95%
}

#top .bnr_area h3 {
    align-items: center;
    display: flex;
    flex-wrap: nowrap
}

#top .bnr_area h3 span {
    white-space: nowrap
}

#top .bnr_area h3 span:first-child {
    color: #ed80a7;
    font-size: 21px;
    font-weight: 700;
    letter-spacing: 1px
}

#top .bnr_area h3 span:nth-child(2) {
    color: #ed80a7;
    font-size: .85em;
    font-weight: 400;
    margin-left: 10px
}

#top .bnr_area h3 div {
    background-color: #ed80a7;
    height: 1px;
    margin-left: 2%;
    width: 100%
}

#top .bnr_area .bnr_flex {
    align-items: flex-start;
    display: flex;
    justify-content: space-between;
    margin-top: 35px
}

#top .bnr_area .bnr_flex>div {
    width: 48%
}

#top .bnr_area .bnr_column .bnr_flex div>img {
    margin-bottom: 20px;
    width: 100%
}

#top .bnr_area .bnr_column .bnr_flex a {
    color: #000;
    font-size: 19px
}

#top .bnr_area .bnr_column .bnr_flex a:first-child {
    display: block;
    margin-bottom: 15px
}

#top .bnr_area .bnr_column .bnr_flex a:last-child img {
    margin-left: 7px;
    position: relative;
    top: -2px
}

#top .bnr_area .bnr_event,
#top .bnr_area .bnr_qa {
    margin-top: 70px
}

#top .bnr_area .bnr_event .bnr_flex>div,
#top .bnr_area .bnr_qa .bnr_flex>div {
    display: flex;
    justify-content: space-between
}

#top .bnr_area .bnr_event .bnr_flex>div>img,
#top .bnr_area .bnr_qa .bnr_flex>div>img {
    width: 42%
}

#top .bnr_area .bnr_event .bnr_flex>div>div,
#top .bnr_area .bnr_qa .bnr_flex>div>div {
    width: 53%
}

#top .bnr_area .bnr_event .bnr_flex>div>div h4,
#top .bnr_area .bnr_qa .bnr_flex>div>div h4 {
    color: #dc0250;
    font-size: 16px;
    font-weight: 700;
    margin-bottom: 15px
}

#top .bnr_area .bnr_event .bnr_flex>div>div h4 a,
#top .bnr_area .bnr_qa .bnr_flex>div>div h4 a {
    color: #dc0250
}

#top .bnr_area .bnr_event .bnr_flex>div>div h4 img,
#top .bnr_area .bnr_qa .bnr_flex>div>div h4 img {
    margin-left: 8px;
    position: relative;
    top: -2px
}

#top .bnr_area .bnr_event .bnr_flex>div>div p,
#top .bnr_area .bnr_qa .bnr_flex>div>div p {
    font-size: 15px;
    text-align: justify
}

#top .message h2 {
    margin-bottom: 25px
}

#top .message .lead {
    font-size: 17px;
    letter-spacing: 1px;
    line-height: 1.7;
    text-align: center
}

#top .footer_nav {
    margin: 0 auto;
    max-width: 1000px;
    width: 95%
}

#top .footer_nav .footer_navList {
    align-items: flex-start;
    display: flex;
    justify-content: space-between
}

#top .footer_nav .footer_navList>div {
    width: 23%
}

#top .footer_nav .footer_navList>div h4 {
    border-bottom: 1px solid #ed80a7;
    color: #ed80a7;
    font-size: 18px;
    font-weight: 500;
    padding: 0 0 15px 10px
}

#top .footer_nav .footer_navList>div h4 a {
    color: #ed80a7
}

#top .footer_nav .footer_navList>div .fn_h4 {
    display: block;
    width: 100%
}

#top .footer_nav .footer_navList>div h4+h4,
#top .footer_nav .footer_navList>div ul+h4 {
    margin-top: 50px
}

#top .footer_nav .footer_navList>div ul {
    list-style: none;
    margin-top: 15px
}

#top .footer_nav .footer_navList>div ul li {
    margin-top: 10px
}

#top .footer_nav .footer_navList>div ul li img {
    margin: 0 5px 0 10px
}

#top .footer_nav .footer_navList>div ul li a {
    color: #222;
    font-size: 14px
}

@media (min-width:768px) {
    #top .footer_nav .footer_navList .acc {
        pointer-events: none
    }
}

@media screen and (max-width:767px) {
    #top .footer_nav {
        width: 90%
    }

    #top .footer_nav .footer_navList {
        border-bottom: 1px solid #222;
        flex-direction: column
    }

    #top .footer_nav .footer_navList>div {
        width: 100%
    }

    #top .footer_nav .footer_navList>div ul {
        background-color: #f7f6f8;
        border-top: 1px solid #222;
        display: none;
        margin: 0;
        padding: 0 16px
    }

    #top .footer_nav .footer_navList>div ul li {
        border-bottom: 1px solid #dc0250;
        margin: 0;
        padding: 13px 0
    }

    #top .footer_nav .footer_navList>div ul li:last-child {
        border-bottom: 0
    }

    #top .footer_nav .footer_navList>div ul li a {
        align-items: center;
        color: #dc0250;
        display: flex;
        letter-spacing: .03rem;
        position: relative;
        width: 100%
    }

    #top .footer_nav .footer_navList>div ul li a:after {
        background-image: url(../../assets/img/top/btn_arrow04.png);
        background-position: 0 0;
        background-repeat: no-repeat;
        background-size: 100% 100%;
        content: "";
        height: 12px;
        position: absolute;
        right: 1%;
        width: 6px
    }

    #top .footer_nav .footer_navList ul li a img {
        display: none
    }

    #top .footer_nav .footer_navList>div h4,
    #top .footer_nav .footer_navList>div h4 a {
        color: #222;
        position: relative
    }

    #top .footer_nav .footer_navList>div h4.acc {
        position: relative
    }

    #top .footer_nav .footer_navList>div h4:after {
        background-image: url(../../assets/img/top/footer_navArrow2.png);
        height: 11px;
        width: 6px
    }

    #top .footer_nav .footer_navList>div h4.acc:after,
    #top .footer_nav .footer_navList>div h4:after {
        background-position: 0 0;
        background-repeat: no-repeat;
        background-size: 100% 100%;
        content: "";
        position: absolute;
        right: 2%;
        z-index: 0
    }

    #top .footer_nav .footer_navList>div h4.acc:after {
        background-image: url(../../assets/img/top/footer_navArrow_down.png);
        height: 7px;
        width: 13px
    }

    #top .footer_nav .footer_navList>div h4 {
        align-items: center;
        border-bottom: 0;
        border-top: 1px solid #222;
        display: flex;
        font-size: 16px;
        font-weight: 400;
        padding: 14px 0 14px 10px
    }

    #top .footer_nav .footer_navList>div h4+h4,
    #top .footer_nav .footer_navList>div ul+h4 {
        margin-top: 0
    }
}

#top .footer_nav .footer_navUnder {
    align-items: center;
    border-bottom: 1px solid #e4e4e4;
    border-top: 1px solid #e4e4e4;
    display: flex;
    justify-content: center;
    margin: 40px auto 80px;
    padding: 15px 0
}

#top .footer_nav .footer_navUnder a {
    color: #000;
    font-size: 14px
}

#top .footer_nav .footer_navUnder span {
    color: #e4e4e4;
    margin: 0 15px
}

#top .carousel .slick-arrow {
    display: none !important
}

#top .carousel .slick-dots li {
    height: 5px;
    width: 28px
}

#top .carousel .slick-dots li button {
    border-radius: 0;
    height: 4px;
    padding: 0;
    width: 28px
}

.slick-dots li.slick-active button {
    background-color: #ed80a7
}

#top .conversion_area .group .catalog .lead,
#top .conversion_area .group .reserve .lead {
    align-items: center;
    display: flex
}

#top .conversion_area .group .catalog .lead img,
#top .conversion_area .group .reserve .lead img {
    margin-right: 5%;
    width: 18%
}

#top .conversion_area .group .catalog .lead span,
#top .conversion_area .group .reserve .lead span {
    display: block;
    text-align: left
}

#top .conversion_area .group .box .img {
    height: 175px;
    margin: 20px auto
}

#top .conversion_area .group .box .img img {
    height: 100%;
    object-fit: contain;
    width: auto
}

#top .conversion_area .group .box .btn {
    background-color: #fff;
    border: 1px solid #ed80a7;
    border-radius: 100px;
    color: #ed80a7;
    font-size: 17px;
    padding: 13px 60px;
    position: relative;
    text-align: center
}

#top .conversion_area .group .box .btn:after {
    content: url(../../assets/img/top/btn_arrow.png);
    position: absolute;
    right: 7%;
    top: 24%
}

#top .conversion_area .group .reserve .btn {
    background-color: #5cd5e8;
    border: none;
    color: #fff
}

#top .conversion_area .group .reserve .btn:after {
    content: url(../../assets/img/top/btn_arrow03.png);
    top: 26%
}

.pc_d,
.sp_d {
    display: none
}

@media screen and (min-width:768px) {
    .pc_d {
        display: block
    }

    #top .footer_nav .footer_navList>div h4 {
        height: 34px
    }

    #top .lineup .style_flex.piece div .h3_add {
        font-size: 16
    }
}

@media screen and (max-width:767px) {
    .sp_d {
        display: block
    }

    #top .information {
        padding-left: 2.5%;
        padding-right: 2.5%
    }

    #top .information .news .news_block .ticker dl {
        display: block;
        padding: 10px 0
    }

    #top .information .news .news_block .ticker dl dd,
    #top .information .news .news_block .ticker dl dt {
        margin: 0;
        width: 100%
    }

    #top .information .news .news_block .ticker dl dt span {
        display: inline-block;
        width: auto
    }

    #top .information .news .news_block .ticker dl dt span.tag {
        font-size: 10px;
        margin-left: 6px;
        padding: 0 10px 1px;
        position: relative;
        top: -1px
    }

    #top .information .news .news_block .ticker dl dt span,
    #top .information .news .news_btn a span {
        font-size: 14px
    }

    #top .information .news .news_block .ticker dl dd a {
        font-size: 15px
    }

    #top .information .news .news_block .ticker dl:nth-child(2),
    #top .information .news .news_block .ticker dl:nth-child(3) {
        display: none
    }

    #top .lineup {
        padding: 37px 4%
    }

    #top .lineup h2,
    #top .plan_compare h2,
    #top .salon_place h2 {
        font-size: 38px
    }

    #top .lineup h2+.h2_sub,
    #top .plan_compare h2+.h2_sub,
    #top .salon_place h2+.h2_sub {
        font-size: 14px
    }

    #top .lineup .h2_bd,
    #top .plan_compare .h2_bd,
    #top .salon_place .h2_bd {
        margin: 15px auto 20px;
        width: 100%
    }

    #top .lineup .h2_bd+p,
    #top .plan_compare .h2_bd+p {
        letter-spacing: 1px;
        text-align: left
    }

    #top .lineup .style_flex {
        display: block;
        margin: 0;
        width: 100%
    }

    #top .lineup .style_child {
        margin-top: 30px;
        width: 100%
    }

    #top .lineup .style_child .h3_add,
    #top .lineup .style_child h3,
    #top .lineup .style_flex.piece div .h3_add,
    #top .lineup .style_flex.piece div h3 {
        text-align: left
    }

    #top .lineup .style_child h3,
    #top .lineup .style_flex.piece div h3 {
        font-size: 38px;
        margin-bottom: 5px
    }

    #top .lineup .style_child img {
        position: relative;
        width: 90%
    }

    #top .lineup .style_child:nth-child(odd) img {
        left: -9%
    }

    #top .lineup .style_child:nth-child(2n) .h3_add,
    #top .lineup .style_child:nth-child(2n) h3 {
        text-align: right
    }

    #top .lineup .style_child:nth-child(2n) img {
        right: -9%
    }

    #top .lineup .style_child .style_img_wrapper {
        position: relative
    }

    #top .lineup .style_child .style_img_wrapper:after {
        content: "";
        display: block;
        height: 90%;
        left: 0;
        position: absolute;
        top: 5%;
        width: 90%;
        z-index: 0
    }

    #top .lineup .style_child:first-child .style_img_wrapper:after {
        background-color: #d2f0f2
    }

    #top .lineup .style_child:nth-child(2) .style_img_wrapper:after {
        background-color: #f9e7de;
        left: 10%
    }

    #top .lineup .style_child:nth-child(3) .style_img_wrapper:after {
        background-color: #f7e3ee
    }

    #top .lineup .style_child .more_btn {
        bottom: 17%;
        left: auto;
        right: 4%;
        text-align: right
    }

    #top .lineup .style_child .more_btn a {
        padding: 5px 24px 8px
    }

    #top .lineup .style_all a:after,
    #top .lineup .style_child .more_btn a:after,
    #top .lineup .style_flex.piece div:first-child a:after,
    #top .plan_compare .plan_all a:after {
        content: url(../../assets/img/top/btn_arrow_sp.png);
        right: 8%;
        top: 13%
    }

    #top .lineup .style_flex.piece div:first-child a:after {
        top: 17%
    }

    #top .lineup .style_all a:after {
        content: url(../../assets/img/top/btn_arrow02.png);
        top: 25%
    }

    #top .lineup .style_child:nth-child(2n) .more_btn {
        left: 4%;
        right: auto;
        text-align: left
    }

    #top .lineup .style_flex.piece {
        position: relative
    }

    #top .lineup .style_flex.piece div:first-child,
    #top .lineup .style_flex.piece div:last-child {
        margin: 0;
        width: 100%
    }

    #top .lineup .style_flex.piece div:first-child a {
        bottom: 0;
        position: absolute;
        right: 0;
        width: 35%
    }

    #top .lineup .style_flex.piece {
        padding-bottom: 65px
    }

    #top .lineup .style_flex.piece div:last-child ul {
        padding: 10px 15px
    }

    #top .lineup .style_flex.piece div:last-child ul li {
        font-size: 17px
    }

    #top .lineup .style_flex.piece div:last-child ul li img {
        width: 17px
    }

    #top .salon_place .h2_sub,
    #top .salon_place h2 {
        padding-left: 4%;
        padding-right: 4%
    }

    #top .salon_place .h2_bd {
        margin-left: auto;
        margin-right: auto;
        width: 92%
    }

    #top .salon_place .bg .eyecatch {
        top: 4%
    }

    #top .salon_place .bg {
        padding: 170px 4% 60px
    }

    #top .salon_place .h2_bd+p {
        margin: 0 auto;
        text-align: justify;
        width: 90%
    }

    #top .salon_place .bg .area_flex a {
        width: 48%
    }

    #top .salon_place .anno {
        text-align: left
    }

    #top .plan_compare {
        padding: 60px 5% 40px
    }

    #top .plan_compare .plan_flex {
        flex-wrap: wrap;
        margin-bottom: 0
    }

    #top .plan_compare .plan_flex>div {
        margin-bottom: 20px;
        padding: 30px 30px 20px;
        width: 100%
    }

    #top .plan_compare .plan_flex>div>span {
        font-size: 26px
    }

    #top .plan_compare .plan_flex>div a {
        font-size: 20px;
        margin: 15px auto;
        width: 100%
    }

    #top .plan_compare .plan_flex>div a+p {
        font-size: 16px;
        margin-bottom: 15px;
        white-space: nowrap
    }

    #top .plan_compare .plan_flex>div p:last-child span {
        font-size: 14px;
        padding-right: 30px
    }

    #top .plan_compare .plan_flex>div p:last-child span:after {
        transform: scaleX(.5) scaleY(.7)
    }

    #top .plan_compare .plan_flex .plan_buyout a:after,
    #top .plan_compare .plan_flex .plan_monthly a:after {
        top: 17%
    }

    #top .plan_compare .plan_all a:after {
        content: url(../../assets/img/top/btn_arrow02.png);
        top: 26%
    }

    #top .bnr_area {
        padding: 50px 4%
    }

    #top .bnr_area .bnr_event .bnr_flex,
    #top .bnr_area .bnr_qa .bnr_flex {
        display: block
    }

    #top .bnr_area .bnr_event .bnr_flex>div,
    #top .bnr_area .bnr_qa .bnr_flex>div {
        align-items: flex-start;
        width: 100%
    }

    #top .bnr_area .bnr_column .bnr_flex a {
        font-size: 14px
    }

    #top .bnr_area .bnr_column .bnr_flex a:last-child img {
        width: 4px
    }

    #top .bnr_area .bnr_column .bnr_flex div>img {
        margin-bottom: 10px
    }

    #top .bnr_area .bnr_event .bnr_flex>div>img,
    #top .bnr_area .bnr_qa .bnr_flex>div>img {
        width: 38%
    }

    #top .bnr_area .bnr_event .bnr_flex>div>div,
    #top .bnr_area .bnr_qa .bnr_flex>div>div {
        padding-top: 2.5%;
        width: 57%
    }

    #top .bnr_area .bnr_event .bnr_flex>div>div h4,
    #top .bnr_area .bnr_qa .bnr_flex>div>div h4 {
        font-weight: 400;
        margin-bottom: 10px
    }

    #top .bnr_area .bnr_event .bnr_flex>div>div h4 img,
    #top .bnr_area .bnr_qa .bnr_flex>div>div h4 img {
        width: 6px
    }

    #top .bnr_area .bnr_event .bnr_flex>div>div p,
    #top .bnr_area .bnr_qa .bnr_flex>div>div p {
        font-size: 13px
    }

    #top .bnr_area .bnr_event .bnr_flex>div+div,
    #top .bnr_area .bnr_qa .bnr_flex>div+div {
        margin-top: 20px
    }

    #top .message .lead {
        font-size: 16px;
        text-align: justify
    }

    #top .message .lead br {
        display: none
    }
}

@media screen and (max-width:600px) {

    #top .bnr_area .bnr_event .bnr_flex>div>div,
    #top .bnr_area .bnr_qa .bnr_flex>div>div {
        width: 55%
    }
}

.monthly-plan {
    align-items: center;
    background-color: #08a7ac;
    border-radius: 20px;
    display: flex;
    justify-content: center;
    margin: 40px auto 10px;
    max-width: 335px;
    padding: 13px 0;
    position: relative
}

.monthly-plan:after {
    background-image: url(../../assets/img/top/monthly_plan_arw.png);
    background-position: 0 0;
    background-repeat: no-repeat;
    background-size: 100% 100%;
    content: "";
    height: 15px;
    position: absolute;
    right: 17px;
    width: 7px
}

.monthly-plan h3 a,
.monthly-plan h3 a:visited {
    color: #fff;
    font-family: Shippori Mincho, serif;
    font-size: 17px;
    font-weight: 700;
    line-height: 24px;
    text-align: center
}

.monthly-plan h3 a span,
.monthly-plan h3 a:visited span {
    font-size: 12px
}

#top .kahos_movie {
    margin: 0 auto;
    padding: 5vh 0;
    text-align: center
}

#top .kahos_movie p {
    color: #514e4d;
    font-family: 游明朝, YuMincho, ヒラギノ明朝 ProN W3, Hiragino Mincho ProN, HG明朝E, ＭＳ Ｐ明朝, ＭＳ 明朝, serif;
    font-size: 20px;
    font-weight: 700;
    line-height: 1.8;
    word-break: auto-phrase
}

#top .kahos_movie img {
    max-width: 334px;
    width: 100%
}

#top .kahos_movie .movie-box {
    margin: 0 auto;
    padding: 30px 0 0
}

#top .kahos_movie .movie-box iframe {
    aspect-ratio: 16/9;
    height: auto;
    margin-bottom: 10px;
    max-width: 580px;
    object-fit: cover;
    width: 90%
}

#top .kahos_movie .movie-box p span {
    color: #cf0066;
    font-weight: 700
}

#top .kahos_movie+.lineup {
    padding: 0 0 77px
}

@media screen and (max-width:767px) {
    #top .kahos_movie+.lineup {
        padding: 0 4% 37px
    }
}

@media screen and (max-width:360px) {
    #top .kahos_movie {
        padding: 5vh 2vh
    }

    #top .kahos_movie img {
        max-width: 220px
    }
}

.lp-covid-19 .serif {
    font-family: "Noto Serif JP", 游明朝, YuMincho, ヒラギノ明朝 ProN W3, Hiragino Mincho ProN, HG明朝E, ＭＳ Ｐ明朝, ＭＳ 明朝, serif;
    font-weight: 600
}

.lp-covid-19 .sans-serif {
    font-family: Noto Sans JP, Roboto, -apple-system, BlinkMacSystemFont, Hiragino Kaku Gothic ProN, Hiragino Kaku Gothic Pro, Meiryo UI, Meiryo, sans-serif;
    font-weight: 400
}

.lp-covid-19 a:hover {
    opacity: .8
}

.lp-covid-19 .main .inner {
    margin: 0 auto;
    max-width: 1000px;
    padding: 0
}

.lp-covid-19 .btn {
    margin: 0 auto
}

.lp-covid-19 .btn a {
    display: block
}

.lp-covid-19 .btn.gradation {
    color: #fff;
    max-width: 340px
}

@media (max-width:959px) {
    .lp-covid-19 .btn.gradation {
        margin: 0 auto
    }
}

.lp-covid-19 .btn.gradation a {
    background: linear-gradient(90deg, #e695be, #b1b0da);
    border-radius: 28px/50%;
    color: #fff;
    line-height: 55px;
    text-align: center;
    text-decoration: none;
    -webkit-transition: all .3s ease;
    transition: all .3s ease
}

@media (max-width:959px) {
    .lp-covid-19 .btn.gradation a {
        border-radius: 24px/50%;
        font-size: 1.5rem;
        line-height: 50px;
        margin: 0 20px
    }
}

.lp-covid-19 .main .pc {
    display: block
}

@media (max-width:959px) {
    .lp-covid-19 .main .pc {
        display: none
    }
}

.lp-covid-19 .main .sp {
    display: none
}

@media (max-width:959px) {
    .lp-covid-19 .main .sp {
        display: block
    }
}

.lp-covid-19 .main .pc-i {
    display: inline
}

@media (max-width:959px) {
    .lp-covid-19 .main .pc-i {
        display: none
    }
}

.lp-covid-19 .main .sp-i {
    display: none
}

@media (max-width:959px) {
    .lp-covid-19 .main .sp-i {
        display: inline
    }
}

.lp-covid-19 .main .pc-ib {
    display: inline-block
}

@media (max-width:959px) {
    .lp-covid-19 .main .pc-ib {
        display: none
    }
}

.lp-covid-19 .main .sp-ib {
    display: none
}

@media (max-width:959px) {
    .lp-covid-19 .main .sp-ib {
        display: inline-block
    }
}

.lp-covid-19 .container {
    width: 100%
}

.lp-covid-19 .main {
    word-wrap: break-word;
    overflow-wrap: break-word
}

.lp-covid-19 .prevention {
    background-color: #f4f9ff;
    padding: 0;
    text-align: center
}

@media (max-width:959px) {
    .lp-covid-19 .prevention {
        padding: 0
    }
}

.lp-covid-19 .prevention .hgroup {
    background-color: #fff;
    padding: 80px 0;
    position: relative
}

@media (max-width:959px) {
    .lp-covid-19 .prevention .hgroup {
        padding: 45px 0 40px
    }
}

.lp-covid-19 .prevention .hgroup h1 {
    font-feature-settings: "palt";
    color: #4b8dd2;
    font-size: 4rem;
    letter-spacing: .2em;
    margin: 0 0 45px
}

@media (max-width:959px) {
    .lp-covid-19 .prevention .hgroup h1 {
        font-size: 2.8rem;
        letter-spacing: .15em;
        margin: 0 0 30px
    }
}

.lp-covid-19 .prevention .hgroup h1 span {
    padding: 0 .8em 0 1em;
    position: relative
}

.lp-covid-19 .prevention .hgroup h1 span:before {
    background-color: #bbe2f1;
    content: "";
    display: block;
    height: 50px;
    left: 0;
    margin-top: -25px;
    position: absolute;
    top: 50%;
    width: 8px
}

@media (max-width:959px) {
    .lp-covid-19 .prevention .hgroup h1 span:before {
        height: 40px;
        left: 0;
        margin-top: -20px;
        position: absolute;
        top: 50%;
        width: 6px
    }
}

.lp-covid-19 .prevention .hgroup h1 span:after {
    background-color: #bbe2f1;
    content: "";
    display: block;
    height: 50px;
    margin-top: -25px;
    position: absolute;
    right: 0;
    top: 50%;
    width: 8px
}

@media (max-width:959px) {
    .lp-covid-19 .prevention .hgroup h1 span:after {
        height: 40px;
        margin-top: -20px;
        right: 0;
        top: 50%;
        width: 6px
    }
}

.lp-covid-19 .prevention .hgroup h2 {
    color: #6c5f52;
    font-size: 2.6rem;
    letter-spacing: .05em;
    margin: 0
}

@media (max-width:959px) {
    .lp-covid-19 .prevention .hgroup h2 {
        font-size: 1.8rem;
        line-height: 1.6
    }
}

.lp-covid-19 .prevention .bgwrap {
    background-color: #4a8dd3;
    background-size: cover;
    color: #fff;
    letter-spacing: .1em;
    line-height: 2;
    padding: 70px 0 170px
}

@media (max-width:959px) {
    .lp-covid-19 .prevention .bgwrap {
        padding: 10px 0 100px
    }
}

.lp-covid-19 .prevention .bgwrap h3 {
    background-color: #4a8dd3;
    color: #fff;
    font-size: 1.8rem;
    line-height: 2.4;
    margin: 0 auto;
    max-width: 1000px
}

@media (max-width:959px) {
    .lp-covid-19 .prevention .bgwrap h3 {
        font-size: 1.5rem;
        line-height: 1.8;
        margin: 0 20px;
        padding: 30px 0;
        text-align: left
    }
}

.lp-covid-19 .prevention .box {
    background-color: #fff;
    border: 4px solid #97bee7;
    box-shadow: 0 3px 3px #dbdbdb;
    margin: 0 auto;
    max-width: 1000px;
    padding: 40px 30px 0 60px;
    position: relative;
    text-align: left
}

@media (max-width:959px) {
    .lp-covid-19 .prevention .box {
        line-height: 1.8;
        margin: -45px 20px 40px;
        padding: 25px 10px 0
    }
}

.lp-covid-19 .prevention .box.box1 {
    margin: -100px auto 0
}

@media (max-width:959px) {
    .lp-covid-19 .prevention .box.box1 {
        margin: -100px 20px 40px
    }
}

.lp-covid-19 .prevention .box.box2 {
    margin: 150px auto 0
}

@media (max-width:959px) {
    .lp-covid-19 .prevention .box.box2 {
        margin: 90px 20px 40px
    }
}

.lp-covid-19 .prevention .box.box3 {
    margin: 150px auto 60px
}

@media (max-width:959px) {
    .lp-covid-19 .prevention .box.box3 {
        margin: 90px 20px 40px
    }
}

.lp-covid-19 .prevention .box.box2:before,
.lp-covid-19 .prevention .box.box3:before {
    background: url(../../assets/img/lp/covid-19/plus@2x.png) 0 0 no-repeat;
    background-size: contain;
    content: "";
    display: block;
    height: 72px;
    left: 50%;
    margin: -115px 0 0 -36px;
    position: absolute;
    top: 0;
    width: 72px
}

@media (max-width:959px) {

    .lp-covid-19 .prevention .box.box2:before,
    .lp-covid-19 .prevention .box.box3:before {
        height: 50px;
        margin: -75px 0 0 -25px;
        width: 50px
    }
}

.lp-covid-19 .prevention .box h3 {
    color: #4a8dd3;
    font-size: 3rem;
    font-weight: 700;
    letter-spacing: .05em;
    line-height: 2;
    text-align: center
}

@media (max-width:959px) {
    .lp-covid-19 .prevention .box h3 {
        font-size: 2.2rem;
        line-height: 1.8
    }
}

.lp-covid-19 .prevention .box h3 img {
    height: auto;
    vertical-align: middle;
    width: 55px
}

@media (max-width:959px) {
    .lp-covid-19 .prevention .box h3 img {
        width: 40px
    }
}

.lp-covid-19 .prevention .box h3 span {
    display: inline;
    padding: 0 0 0 15px;
    position: relative;
    vertical-align: middle
}

@media (max-width:959px) {
    .lp-covid-19 .prevention .box h3 span {
        display: block;
        line-height: 1.4;
        padding: 12px 0 0;
        text-align: center
    }
}

.lp-covid-19 .prevention .box .icons {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    padding: 30px 0 0
}

@media (max-width:959px) {
    .lp-covid-19 .prevention .box .icons {
        font-size: 1.2rem;
        padding: 30px 0 0
    }
}

.lp-covid-19 .prevention .box .icons li {
    color: #4b8dd2;
    font-weight: 700;
    line-height: 2;
    margin: 0 30px;
    max-width: 240px;
    padding: 0 0 50px;
    text-align: center
}

@media (max-width:959px) {
    .lp-covid-19 .prevention .box .icons li {
        line-height: 1.4;
        margin: 0;
        padding: 0 10px 30px;
        width: 50%
    }
}

.lp-covid-19 .prevention .box .icons li img {
    height: auto;
    padding: 0 0 10px;
    width: 100%
}

.lp-covid-19 .prevention .box .topics {
    padding: 40px 0 0
}

@media (max-width:959px) {
    .lp-covid-19 .prevention .box .topics {
        padding: 40px 5px 0 25px
    }
}

.lp-covid-19 .prevention .box .topics li {
    color: #4b8dd2;
    font-size: 1.8rem;
    font-weight: 700;
    line-height: 1.5;
    padding: 0 0 .5em .2em;
    position: relative
}

@media (max-width:959px) {
    .lp-covid-19 .prevention .box .topics li {
        font-size: 1.5rem;
        line-height: 1.6;
        padding: 0 0 1.2em .2em
    }
}

.lp-covid-19 .prevention .box .topics li:before {
    content: "■";
    display: inline;
    left: -1.05em;
    position: absolute;
    top: 0
}

.lp-covid-19 .prevention .box .att {
    padding: 0 0 40px
}

.lp-covid-19 .prevention .box .att li {
    color: #675961;
    font-size: 1.6rem;
    line-height: 1.5;
    margin: .8em 0 0;
    padding: 0 0 0 .2em;
    position: relative
}

@media (max-width:959px) {
    .lp-covid-19 .prevention .box .att li {
        font-size: 1.4rem;
        line-height: 1.6;
        margin: 1em 5px 0 20px;
        padding: 0 0 0 .2em
    }
}

.lp-covid-19 .prevention .box .att li:before {
    content: "※";
    display: inline;
    left: -1.05em;
    position: absolute;
    top: 0
}

.lp-covid-19 .prevention .box .applies {
    padding: 1.2em 0 .5em 1em
}

@media (max-width:959px) {
    .lp-covid-19 .prevention .box .applies {
        padding: 1.5em 0 0 1.2em
    }
}

.lp-covid-19 .prevention .box .applies li {
    line-height: 1.5;
    margin: 0;
    padding: 0 0 .1em .2em;
    position: relative
}

@media (max-width:959px) {
    .lp-covid-19 .prevention .box .applies li {
        padding: 0 0 .8em .2em
    }
}

.lp-covid-19 .prevention .box .applies li:before {
    content: "・";
    display: inline;
    left: -.8em;
    position: absolute;
    top: 0
}

.lp-covid-19 .prevention .btnlink {
    background-color: #fff;
    color: #675961;
    padding: 100px 0 0
}

@media (max-width:959px) {
    .lp-covid-19 .prevention .btnlink {
        padding: 50px 0
    }
}

.lp-covid-19 .prevention .btnlink .reserved {
    padding: 0 0 40px;
    text-align: center
}

@media (max-width:959px) {
    .lp-covid-19 .prevention .btnlink .reserved {
        line-height: 1.8
    }
}

@media screen and (max-width:959px) {
    .lp-covid-19 .prevention .footer {
        padding-bottom: 0
    }
}

.lp-monthly-price {
    word-wrap: break-word;
    color: #514e4d;
    font-family: 游明朝, YuMincho, ヒラギノ明朝 ProN W3, Hiragino Mincho ProN, HG明朝E, ＭＳ Ｐ明朝, ＭＳ 明朝, serif;
    font-size: 1.6rem;
    font-weight: 700;
    line-break: strict;
    line-height: 1;
    overflow-wrap: break-word
}

.lp-monthly-price address,
.lp-monthly-price blockquote,
.lp-monthly-price body,
.lp-monthly-price dd,
.lp-monthly-price dl,
.lp-monthly-price dt,
.lp-monthly-price figure,
.lp-monthly-price form,
.lp-monthly-price h1,
.lp-monthly-price h2,
.lp-monthly-price h3,
.lp-monthly-price h4,
.lp-monthly-price h5,
.lp-monthly-price h6,
.lp-monthly-price html,
.lp-monthly-price input,
.lp-monthly-price ol,
.lp-monthly-price p,
.lp-monthly-price pre,
.lp-monthly-price select,
.lp-monthly-price table,
.lp-monthly-price tbody,
.lp-monthly-price td,
.lp-monthly-price tfoot,
.lp-monthly-price th,
.lp-monthly-price thead,
.lp-monthly-price ul {
    -webkit-text-size-adjust: 100%;
    border: 0;
    font-size: 100%;
    margin: 0;
    padding: 0
}

.lp-monthly-price body,
.lp-monthly-price html {
    width: 100%
}

.lp-monthly-price html {
    font-size: 62.5%
}

.lp-monthly-price body {
    min-width: 1080px
}

@media (max-width:767px) {
    .lp-monthly-price body {
        min-width: inherit
    }
}

.lp-monthly-price caption,
.lp-monthly-price td,
.lp-monthly-price th {
    font-weight: 700
}

.lp-monthly-price img {
    max-width: none
}

.lp-monthly-price a {
    text-decoration: none
}

.lp-monthly-price .reservation .herebtn a:hover,
.lp-monthly-price .reservation .salonarea dd a:hover {
    -webkit-opacity: .5;
    -moz-opacity: .5;
    -o-opacity: .5;
    opacity: .5
}

.lp-monthly-price .reservation .herebtn a,
.lp-monthly-price .reservation .salonarea dd a {
    -webkit-transition: opacity .3s ease-out;
    -moz-transition: opacity .3s ease-out;
    -ms-transition: opacity .3s ease-out;
    -o-transition: opacity .3s ease-out;
    transition: opacity .3s ease-out
}

.lp-monthly-price .reservation .tel a {
    cursor: default
}

.lp-monthly-price em,
.lp-monthly-price i {
    font-style: normal
}

.lp-monthly-price blockquote,
.lp-monthly-price q {
    quotes: none
}

.lp-monthly-price video {
    max-width: 100%
}

.lp-monthly-price img {
    border: none;
    line-height: 0;
    vertical-align: bottom
}

.lp-monthly-price input,
.lp-monthly-price select {
    vertical-align: middle
}

.lp-monthly-price ol,
.lp-monthly-price ul {
    list-style-type: none
}

.lp-monthly-price table {
    border-collapse: collapse;
    border-spacing: 0
}

.lp-monthly-price .pc-i {
    display: inline !important
}

@media (max-width:767px) {
    .lp-monthly-price .pc-i {
        display: none !important
    }
}

.lp-monthly-price .sp-i {
    display: none !important
}

@media (max-width:767px) {
    .lp-monthly-price .sp-i {
        display: inline !important
    }
}

.lp-monthly-price .pc-ib {
    display: inline-block !important
}

@media (max-width:767px) {
    .lp-monthly-price .pc-ib {
        display: none !important
    }
}

.lp-monthly-price .sp-ib {
    display: none !important
}

@media (max-width:767px) {
    .lp-monthly-price .sp-ib {
        display: inline-block !important
    }
}

.lp-monthly-price .pc-b {
    display: block !important
}

@media (max-width:767px) {
    .lp-monthly-price .pc-b {
        display: none !important
    }
}

.lp-monthly-price .sp-b {
    display: none !important
}

@media (max-width:767px) {
    .lp-monthly-price .sp-b {
        display: block !important
    }
}

.lp-monthly-price .pc-only-b {
    display: block !important
}

@media (max-width:1024px) {
    .lp-monthly-price .pc-only-b {
        display: none !important
    }
}

@media (max-width:767px) {
    .lp-monthly-price .pc-only-b {
        display: none !important
    }
}

.lp-monthly-price .tb-only-b {
    display: none !important
}

@media (max-width:1024px) {
    .lp-monthly-price .tb-only-b {
        display: block !important
    }
}

@media (max-width:767px) {
    .lp-monthly-price .tb-only-b {
        display: none !important
    }
}

.lp-monthly-price .sp-only-b {
    display: none !important
}

@media (max-width:1024px) {
    .lp-monthly-price .sp-only-b {
        display: none !important
    }
}

@media (max-width:767px) {
    .lp-monthly-price .sp-only-b {
        display: block !important
    }
}

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

.lp-monthly-price .serif {
    font-family: 游明朝, YuMincho, ヒラギノ明朝 ProN W3, Hiragino Mincho ProN, HG明朝E, ＭＳ Ｐ明朝, ＭＳ 明朝, serif
}

.lp-monthly-price .pinktext {
    color: #e595bb
}

.lp-monthly-price .vividpinktext {
    color: #e8529a
}

.lp-monthly-price .inner {
    margin: 0 auto;
    max-width: 1000px;
    padding: 0
}

@media (max-width:1000px) {
    .lp-monthly-price .inner {
        margin: 0 25px;
        max-width: 100%;
        padding: 0;
        width: auto
    }
}

.lp-monthly-price .box {
    background-color: #fff;
    border: 1px solid #e9e9e9;
    box-sizing: border-box
}

.lp-monthly-price--2 img {
    max-width: 100%
}

.lp-monthly-price--2 .pic {
    max-width: 50%;
    min-width: 50%
}

.lp-monthly-price--2 .component-inner {
    margin: 0 auto 100px;
    max-width: 1060px;
    width: 100%
}

@media (max-width:767px) {
    .lp-monthly-price--2 .component-inner {
        margin: 0 15px 100px;
        width: auto
    }
}

.lp-monthly-price--2 .component-inner .service {
    padding: 30px
}

.lp-monthly-price--2 .tab-inner {
    margin: 0 auto 100px;
    max-width: 1000px
}

.lp-monthly-price--2 .p-pricingplans .select .tabs li.tab {
    border-color: #f2e7ef
}

.lp-monthly-price .visual {
    background: url(../../assets/img/lp/monthly-price/bg_visual.jpg) center 0 no-repeat;
    background-size: cover
}

@media (max-width:767px) {
    .lp-monthly-price .visual {
        background: none
    }
}

.lp-monthly-price .visual .infobox {
    margin: 0 auto;
    max-width: 1000px;
    text-align: right
}

.lp-monthly-price .visual .infobox img {
    margin: 0 -36px 0 0;
    padding: 84px 0;
    width: 72.8%
}

@media (max-width:767px) {
    .lp-monthly-price .visual .infobox img {
        margin: 0;
        max-width: 100%;
        padding: 0;
        width: auto
    }
}

.lp-monthly-price--2 .visual {
    background: url(../../assets/img/lp/monthly-price-2/bg_visual.jpg) center 0 no-repeat;
    background-size: cover
}

.lp-monthly-price .worries {
    background-color: #fff;
    padding: 60px 0 80px;
    position: relative
}

@media (max-width:767px) {
    .lp-monthly-price .worries {
        padding: 40px 0 48px
    }
}

.lp-monthly-price .worries h2 {
    margin: 0 0 -30px;
    text-align: center;
    z-index: 100
}

.lp-monthly-price .worries h2 span {
    background-color: #e595bc;
    color: #fff;
    display: inline-block;
    font-size: 2.8rem;
    font-weight: 400;
    line-height: 55px;
    padding: 0 30px
}

@media (max-width:767px) {
    .lp-monthly-price .worries h2 span {
        font-size: 1.8rem;
        line-height: 1.2;
        margin: 0 auto;
        padding: 5px 0;
        width: 90%;
        z-index: 1000
    }
}

.lp-monthly-price .worries .inner .board {
    background-color: #eee;
    box-shadow: 25px 16px #e595bc;
    padding: 30px 60px 60px
}

@media (max-width:767px) {
    .lp-monthly-price .worries .inner .board {
        box-shadow: 8px 8px #e595bc;
        padding: 25px 25px 28px
    }
}

.lp-monthly-price .worries .inner .board ul li {
    background: #fff url(../../assets/img/lp/monthly-price/icon_checked.png) 11px no-repeat;
    color: #000;
    font-size: 2.6rem;
    font-weight: 400;
    line-height: 50px;
    margin: 50px 0 0;
    padding: 0 0 0 68px
}

@media (max-width:767px) {
    .lp-monthly-price .worries .inner .board ul li {
        background-position: 8px;
        background-size: 27px auto;
        font-size: 1.5rem;
        line-height: 1.3;
        margin: 22px 0 0;
        padding: 5px 8px 5px 45px
    }
}

.lp-monthly-price .worries .person {
    bottom: 0;
    display: inline-block;
    left: 50%;
    margin-left: 290px;
    position: absolute
}

@media (max-width:767px) {
    .lp-monthly-price .worries .person {
        left: auto;
        margin-left: 0;
        right: 0;
        width: 35.2%
    }
}

.lp-monthly-price .worries .person img {
    max-width: 100%
}

.lp-monthly-price .resolution {
    background-color: #f2e7ef;
    padding: 0 0 60px
}

@media (max-width:767px) {
    .lp-monthly-price .resolution {
        padding: 0 0 35px
    }
}

.lp-monthly-price .resolution:before {
    border-left: 70px solid transparent;
    border-right: 70px solid transparent;
    border-top: 70px solid #fff;
    content: "";
    display: block;
    height: 0;
    margin: 0 auto;
    width: 0
}

@media (max-width:767px) {
    .lp-monthly-price .resolution:before {
        border-left: 44px solid transparent;
        border-right: 44px solid transparent;
        border-top: 44px solid #fff
    }
}

.lp-monthly-price .resolution h2 {
    display: block;
    font-size: 3rem;
    line-height: 1.6;
    padding: 50px 0;
    text-align: center
}

@media (max-width:767px) {
    .lp-monthly-price .resolution h2 {
        font-size: 1.5rem;
        padding: 16px 0 30px
    }
}

.lp-monthly-price .resolution h2 em {
    font-size: 4rem
}

@media (max-width:767px) {
    .lp-monthly-price .resolution h2 em {
        font-size: 2.2rem
    }
}

.lp-monthly-price .resolution h2 span {
    border-bottom: 2px solid #000;
    white-space: nowrap
}

@media (max-width:767px) {
    .lp-monthly-price .resolution h2 span {
        white-space: normal
    }
}

.lp-monthly-price .resolution .inner .merit {
    background-color: #fff
}

.lp-monthly-price .resolution .inner .merit:nth-child(n+2) {
    margin: 60px 0 0
}

@media (max-width:767px) {
    .lp-monthly-price .resolution .inner .merit:nth-child(n+2) {
        margin: 35px 0 0
    }
}

.lp-monthly-price .resolution .inner .merit:nth-child(n+2) h3 span {
    position: relative
}

.lp-monthly-price .resolution .inner .merit:nth-child(n+2) h3 span:before {
    background: url(../../assets/img/lp/monthly-price/icon_kira_l.png) 0 0 no-repeat;
    background-size: 48px 52px;
    bottom: 5px;
    content: "";
    display: inline-block;
    height: 52px;
    left: -74px;
    position: absolute;
    width: 48px
}

@media (max-width:767px) {
    .lp-monthly-price .resolution .inner .merit:nth-child(n+2) h3 span:before {
        background: url(../../assets/img/lp/monthly-price/sp/icon_kira_l.png) 0 0 no-repeat;
        background-size: 25px 27px;
        bottom: 5px;
        height: 27px;
        left: -36px;
        position: absolute;
        width: 25px
    }
}

.lp-monthly-price .resolution .inner .merit:nth-child(n+2) h3 span:after {
    background: url(../../assets/img/lp/monthly-price/icon_kira_r.png) 0 0 no-repeat;
    background-size: 48px 52px;
    bottom: 5px;
    content: "";
    display: inline-block;
    height: 52px;
    position: absolute;
    right: -74px;
    width: 48px
}

@media (max-width:767px) {
    .lp-monthly-price .resolution .inner .merit:nth-child(n+2) h3 span:after {
        background: url(../../assets/img/lp/monthly-price/sp/icon_kira_r.png) 0 0 no-repeat;
        background-size: 25px 27px;
        bottom: 5px;
        height: 27px;
        position: absolute;
        right: -36px;
        width: 25px
    }
}

.lp-monthly-price .resolution .inner .merit h4 {
    text-align: center
}

.lp-monthly-price .resolution .inner .merit h4 span {
    background-color: #e8529a;
    color: #fff;
    display: inline-block;
    font-size: 2rem;
    font-weight: 400;
    line-height: 38px;
    padding: 0 30px;
    position: relative
}

@media (max-width:767px) {
    .lp-monthly-price .resolution .inner .merit h4 span {
        font-size: 1.3rem;
        line-height: 1.8;
        padding: 0 .5em
    }
}

.lp-monthly-price .resolution .inner .merit h4 span:after {
    border: 10px solid transparent;
    border-top-color: #e8529a;
    bottom: -20px;
    content: "";
    display: block;
    height: 0;
    left: 50%;
    margin-left: -5px;
    position: absolute;
    width: 0
}

@media (max-width:767px) {
    .lp-monthly-price .resolution .inner .merit h4 span:after {
        border: 6px solid transparent;
        border-top-color: #e8529a;
        bottom: -12px;
        margin-left: -3px
    }
}

.lp-monthly-price .resolution .inner .merit h3 {
    font-size: 4.2rem;
    line-height: 1;
    text-align: center
}

@media (max-width:767px) {
    .lp-monthly-price .resolution .inner .merit h3 {
        font-size: 2.5rem
    }
}

.lp-monthly-price .resolution .inner .merit1 {
    padding: 0 0 54px
}

@media (max-width:767px) {
    .lp-monthly-price .resolution .inner .merit1 {
        padding: 0 0 35px
    }
}

.lp-monthly-price .resolution .inner .merit1 .intro {
    background: url(../../assets/img/lp/monthly-price/bg_merit1.jpg) bottom no-repeat;
    margin: 0 0 -38px;
    padding: 54px 0 0
}

@media (max-width:767px) {
    .lp-monthly-price .resolution .inner .merit1 .intro {
        background: url(../../assets/img/lp/monthly-price/sp/bg_kira_oneyear.png) center 35px no-repeat;
        background-size: contain;
        margin: 0;
        padding: 35px 20px 0
    }
}

.lp-monthly-price .resolution .inner .merit1 .intro h4 {
    margin: 0 0 5px
}

.lp-monthly-price .resolution .inner .merit1 .intro h3 {
    align-items: center;
    display: flex;
    font-size: 4.9rem;
    justify-content: center
}

.lp-monthly-price .resolution .inner .merit1 .intro h3 img {
    padding: 0 20px 0 0
}

@media (max-width:767px) {
    .lp-monthly-price .resolution .inner .merit1 .intro h3 img {
        max-width: 100%;
        padding: 0
    }
}

.lp-monthly-price .resolution .inner .merit1 .intro h3 em {
    font-family: Noto Sans JP, Roboto, -apple-system, BlinkMacSystemFont, Hiragino Kaku Gothic ProN, Hiragino Kaku Gothic Pro, Meiryo UI, Meiryo, sans-serif;
    font-size: 8rem;
    font-weight: 700
}

.lp-monthly-price .resolution .inner .merit1 .intro h3 .small {
    font-size: 20px;
    transform: translateY(-20px)
}

.lp-monthly-price .resolution .inner .merit1 .intro .explain {
    font-size: 2rem;
    padding: 5px 0 90px;
    text-align: center
}

@media (max-width:767px) {
    .lp-monthly-price .resolution .inner .merit1 .intro .explain {
        font-size: 1.4rem;
        line-height: 1.5;
        padding: 5px 0 30px
    }
}

.lp-monthly-price .resolution .inner .merit1 .comparison {
    margin: 0 60px
}

@media (max-width:767px) {
    .lp-monthly-price .resolution .inner .merit1 .comparison {
        margin: 0 15px
    }
}

.lp-monthly-price .resolution .inner .merit1 .comparison dt span {
    background-color: #e595bc;
    color: #fff;
    display: block;
    font-size: 2rem;
    font-weight: 400;
    line-height: 38px;
    text-align: center
}

@media (max-width:767px) {
    .lp-monthly-price .resolution .inner .merit1 .comparison dt span {
        font-size: 1.5rem;
        line-height: 1.5;
        margin: 0;
        padding: .2em 0;
        position: relative
    }
}

.lp-monthly-price .resolution .inner .merit1 .comparison dd {
    padding: 50px 40px 0;
    position: relative
}

@media (max-width:767px) {
    .lp-monthly-price .resolution .inner .merit1 .comparison dd {
        padding: 20px 0 0
    }
}

.lp-monthly-price .resolution .inner .merit1 .comparison dd .graph {
    margin: 0 0 0 -9px;
    text-align: left
}

@media (max-width:767px) {
    .lp-monthly-price .resolution .inner .merit1 .comparison dd .graph {
        margin: 0
    }
}

.lp-monthly-price .resolution .inner .merit1 .comparison dd .graph img {
    max-width: 100%
}

@media (max-width:767px) {
    .lp-monthly-price .resolution .inner .merit1 .comparison dd .graph img {
        max-width: 100%
    }
}

.lp-monthly-price .resolution .inner .merit1 .comparison dd .benefit {
    background: none;
    position: absolute;
    right: 0;
    top: 142px
}

@media (max-width:1024px) {
    .lp-monthly-price .resolution .inner .merit1 .comparison dd .benefit {
        background-color: #fff600;
        margin: 20px 0 0;
        padding: 7px;
        position: static;
        top: 0
    }
}

.lp-monthly-price .resolution .inner .merit1 .comparison dd .benefit.pc {
    display: block
}

@media (max-width:1024px) {
    .lp-monthly-price .resolution .inner .merit1 .comparison dd .benefit.pc {
        display: none
    }
}

.lp-monthly-price .resolution .inner .merit1 .comparison dd .benefit.sp {
    display: none
}

@media (max-width:1024px) {
    .lp-monthly-price .resolution .inner .merit1 .comparison dd .benefit.sp {
        display: block
    }

    .lp-monthly-price .resolution .inner .merit1 .comparison dd .benefit .subtt {
        line-height: 1;
        text-align: center
    }

    .lp-monthly-price .resolution .inner .merit1 .comparison dd .benefit .subtt span {
        background-color: #434343;
        color: #fff;
        display: inline-block;
        font-size: 1.25rem;
        font-weight: 400;
        line-height: 1.5;
        padding: 0 13px;
        position: relative
    }

    .lp-monthly-price .resolution .inner .merit1 .comparison dd .benefit .subtt span:before {
        border-color: transparent transparent transparent #fff600;
        border-style: solid;
        border-width: 1em 3px;
        content: "";
        display: block;
        height: 0;
        left: 0;
        margin-top: -.25em;
        position: absolute;
        top: 0;
        width: 0
    }

    .lp-monthly-price .resolution .inner .merit1 .comparison dd .benefit .subtt span:after {
        border-color: transparent #fff600 transparent transparent;
        border-style: solid;
        border-width: 1em 3px;
        content: "";
        display: block;
        height: 0;
        margin-top: -.25em;
        position: absolute;
        right: 0;
        top: 0;
        width: 0
    }

    .lp-monthly-price .resolution .inner .merit1 .comparison dd .benefit .text {
        font-size: 1.3rem;
        padding: 6px 0 0;
        text-align: center
    }

    .lp-monthly-price .resolution .inner .merit1 .comparison dd .benefit .text em {
        font-family: Noto Sans JP, Roboto, -apple-system, BlinkMacSystemFont, Hiragino Kaku Gothic ProN, Hiragino Kaku Gothic Pro, Meiryo UI, Meiryo, sans-serif;
        font-size: 1.5rem;
        font-weight: 700
    }
}

.lp-monthly-price .resolution .inner .merit1 .comparison dd .notice {
    font-size: 16px;
    line-height: 1.2;
    margin-top: 15px;
    text-align: right
}

@media (max-width:767px) {
    .lp-monthly-price .resolution .inner .merit1 .comparison dd .notice {
        font-size: 11px
    }
}

.lp-monthly-price .resolution .inner .merit1 .comparison dd .what {
    background-color: #f2e7ef;
    margin: 70px 0 0;
    position: relative
}

@media (max-width:767px) {
    .lp-monthly-price .resolution .inner .merit1 .comparison dd .what {
        margin: 50px 0 0
    }
}

.lp-monthly-price .resolution .inner .merit1 .comparison dd .what .fukidashi {
    left: 18px;
    position: absolute;
    top: -24px
}

@media (max-width:767px) {
    .lp-monthly-price .resolution .inner .merit1 .comparison dd .what .fukidashi {
        height: 21px;
        left: 15px;
        top: -14px;
        width: 84px
    }
}

.lp-monthly-price .resolution .inner .merit1 .comparison dd .what .fukidashi img {
    max-width: 100%
}

.lp-monthly-price .resolution .inner .merit1 .comparison dd .what .set {
    align-items: center;
    display: flex
}

@media (max-width:767px) {
    .lp-monthly-price .resolution .inner .merit1 .comparison dd .what .set {
        display: block
    }

    .lp-monthly-price .resolution .inner .merit1 .comparison dd .what .set .pic img {
        max-width: 100%
    }
}

.lp-monthly-price .resolution .inner .merit1 .comparison dd .what .set .text {
    color: #000;
    line-height: 1.8;
    padding: 30px 36px;
    text-align: left
}

@media (max-width:767px) {
    .lp-monthly-price .resolution .inner .merit1 .comparison dd .what .set .text {
        font-size: 1.3rem;
        letter-spacing: .1em;
        padding: 20px 23px
    }
}

.lp-monthly-price .resolution .inner .merit2 {
    padding: 54px 60px
}

@media (max-width:767px) {
    .lp-monthly-price .resolution .inner .merit2 {
        padding: 35px 25px
    }
}

.lp-monthly-price .resolution .inner .merit2 h4 {
    margin: 0 0 30px
}

@media (max-width:767px) {
    .lp-monthly-price .resolution .inner .merit2 h4 {
        margin: 0 0 18px
    }
}

.lp-monthly-price .resolution .inner .merit2 .pr {
    margin: 0 0 22px;
    text-align: center
}

@media (max-width:767px) {
    .lp-monthly-price .resolution .inner .merit2 .pr {
        margin: 0 0 14px
    }
}

.lp-monthly-price .resolution .inner .merit2 .pr span {
    font-size: 3rem;
    position: relative
}

@media (max-width:767px) {
    .lp-monthly-price .resolution .inner .merit2 .pr span {
        font-size: 1.5rem
    }
}

.lp-monthly-price .resolution .inner .merit2 .pr span:before {
    background: url(../../assets/img/lp/monthly-price/pr_l_black.png) 0 0 no-repeat;
    background-size: 14px 32px;
    bottom: 5px;
    content: "";
    display: inline-block;
    height: 32px;
    left: -28px;
    position: absolute;
    width: 14px
}

@media (max-width:767px) {
    .lp-monthly-price .resolution .inner .merit2 .pr span:before {
        background: url(../../assets/img/lp/monthly-price/sp/pr_l_black.png) 0 0 no-repeat;
        background-size: 7px 16px;
        bottom: 2px;
        height: 16px;
        left: -15px;
        position: absolute;
        width: 7px
    }
}

.lp-monthly-price .resolution .inner .merit2 .pr span:after {
    background: url(../../assets/img/lp/monthly-price/pr_r_black.png) 0 0 no-repeat;
    background-size: 14px 32px;
    bottom: 5px;
    content: "";
    display: inline-block;
    height: 32px;
    position: absolute;
    right: -28px;
    width: 14px
}

@media (max-width:767px) {
    .lp-monthly-price .resolution .inner .merit2 .pr span:after {
        background: url(../../assets/img/lp/monthly-price/sp/pr_r_black.png) 0 0 no-repeat;
        background-size: 7px 16px;
        bottom: 2px;
        height: 16px;
        position: absolute;
        right: -15px;
        width: 7px
    }
}

.lp-monthly-price .resolution .inner .merit2 .set {
    align-items: center;
    display: flex;
    margin: 40px 0 0
}

@media (max-width:767px) {
    .lp-monthly-price .resolution .inner .merit2 .set {
        display: block;
        margin: 35px 0 0
    }

    .lp-monthly-price .resolution .inner .merit2 .set .pic {
        margin: 0 auto;
        padding: 0 0 30px;
        width: 200px
    }

    .lp-monthly-price .resolution .inner .merit2 .set .pic img {
        max-width: 100%
    }
}

.lp-monthly-price .resolution .inner .merit2 .set .text {
    line-height: 1.9;
    padding: 0 0 0 40px;
    text-align: left
}

@media (max-width:767px) {
    .lp-monthly-price .resolution .inner .merit2 .set .text {
        font-size: 1.3rem;
        padding: 0
    }
}

.lp-monthly-price .resolution .inner .merit2 .set .text em {
    background-color: #fff600;
    font-size: 1.8rem
}

@media (max-width:767px) {
    .lp-monthly-price .resolution .inner .merit2 .set .text em {
        background: #fff url(../../assets/img/lp/monthly-price/sp/line_yellow.png) 0 bottom repeat-x;
        background-size: 100% 11px;
        font-size: 1.5rem
    }
}

.lp-monthly-price .resolution .inner .merit3 {
    padding: 54px 0 20px
}

@media (max-width:767px) {
    .lp-monthly-price .resolution .inner .merit3 {
        padding: 35px 25px 9px
    }
}

.lp-monthly-price .resolution .inner .merit3 h4 {
    margin: 0 0 40px
}

@media (max-width:767px) {
    .lp-monthly-price .resolution .inner .merit3 h4 {
        margin: 0 0 21px
    }
}

.lp-monthly-price .resolution .inner .merit3 ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    margin: 40px 43px 0
}

@media (max-width:767px) {
    .lp-monthly-price .resolution .inner .merit3 ul {
        display: block;
        margin: 35px 0 0
    }
}

.lp-monthly-price .resolution .inner .merit3 ul li {
    padding: 0 17px 34px;
    width: 33.333%
}

@media (max-width:767px) {
    .lp-monthly-price .resolution .inner .merit3 ul li {
        padding: 0 0 26px;
        width: auto
    }
}

.lp-monthly-price .resolution .inner .merit3 ul li dl {
    border: 6px solid #e595bb;
    box-sizing: border-box
}

@media (max-width:767px) {
    .lp-monthly-price .resolution .inner .merit3 ul li dl {
        border: 3px solid #e595bb
    }
}

.lp-monthly-price .resolution .inner .merit3 ul li dl dt {
    background: url(../../assets/img/lp/monthly-price/line_dot_pink_218.png) bottom no-repeat;
    display: table;
    height: 110px;
    width: 100%
}

@media (max-width:767px) {
    .lp-monthly-price .resolution .inner .merit3 ul li dl dt {
        background: url(../../assets/img/lp/monthly-price/sp/line_dot_pink.png) bottom repeat-x;
        height: 4.5em
    }
}

.lp-monthly-price .resolution .inner .merit3 ul li dl dt p {
    display: table-cell;
    font-size: 2.4rem;
    line-height: 1.4;
    padding: 6px 0 0;
    text-align: center;
    vertical-align: middle
}

@media (max-width:767px) {
    .lp-monthly-price .resolution .inner .merit3 ul li dl dt p {
        font-size: 1.8rem;
        padding: 0
    }
}

.lp-monthly-price .resolution .inner .merit3 ul li dl dd {
    display: table;
    height: 134px;
    width: 100%
}

@media (max-width:767px) {
    .lp-monthly-price .resolution .inner .merit3 ul li dl dd {
        height: 6em
    }
}

.lp-monthly-price .resolution .inner .merit3 ul li dl dd p {
    color: #e8529a;
    display: table-cell;
    font-size: 2.8rem;
    line-height: 1.4;
    padding: 0 0 6px;
    text-align: center;
    vertical-align: middle
}

@media (max-width:767px) {
    .lp-monthly-price .resolution .inner .merit3 ul li dl dd p {
        font-size: 2rem;
        padding: 0
    }
}

.lp-monthly-price .resolution .inner .merit3 ul li dl dd p em {
    display: block;
    font-size: 3.2rem
}

@media (max-width:767px) {
    .lp-monthly-price .resolution .inner .merit3 ul li dl dd p em {
        font-size: 2.5rem
    }
}

.lp-monthly-price .satisfaction {
    overflow: hidden
}

.lp-monthly-price .satisfaction .inner {
    margin: 0 auto;
    padding: 50px 0 80px
}

@media (max-width:767px) {
    .lp-monthly-price .satisfaction .inner {
        padding: 30px 40px
    }
}

.lp-monthly-price .satisfaction .featurehead {
    background: #fff url(../../assets/img/lp/monthly-price/bg_featurelead.jpg) center 0 no-repeat;
    padding: 0 0 30px;
    position: relative;
    width: 100%
}

@media (max-width:767px) {
    .lp-monthly-price .satisfaction .featurehead {
        background: #fff url(../../assets/img/lp/monthly-price/sp/bg_featurelead.jpg) 0 0 no-repeat;
        background-size: 100% auto
    }
}

.lp-monthly-price .satisfaction .featurehead:after {
    border-color: transparent transparent #e595bc #e595bc;
    border-style: solid;
    border-width: 30px 50vw;
    bottom: 0;
    content: "";
    display: block;
    left: 0;
    position: absolute
}

@media (max-width:1080px) {
    .lp-monthly-price .satisfaction .featurehead:after {
        border-left: 540px solid #e595bc;
        border-right: 540px solid transparent
    }
}

.lp-monthly-price .satisfaction .featurehead .textblock {
    margin: 0 auto;
    max-width: 1000px;
    padding: 80px 0;
    text-align: right
}

@media (max-width:767px) {
    .lp-monthly-price .satisfaction .featurehead .textblock {
        max-width: 100%;
        padding: 30px 0 46px
    }
}

.lp-monthly-price .satisfaction .featurehead .textblock h2 {
    display: inline-block;
    font-size: 4rem;
    line-height: 1.6;
    text-align: center;
    width: 70%
}

@media (max-width:767px) {
    .lp-monthly-price .satisfaction .featurehead .textblock h2 {
        font-size: 2.2rem;
        line-height: 2;
        text-align: left;
        width: 50%
    }
}

.lp-monthly-price .satisfaction .featurehead .textblock h2 span {
    border-bottom: 2px solid #000;
    padding: 0;
    white-space: nowrap
}

@media (max-width:767px) {
    .lp-monthly-price .satisfaction .featurehead .textblock h2 span {
        white-space: normal
    }
}

.lp-monthly-price .satisfaction .feature {
    padding: 0 0 30px;
    position: relative;
    width: 100%
}

.lp-monthly-price .satisfaction .feature:nth-child(odd):after {
    border-color: transparent transparent #e595bc #e595bc;
    border-style: solid;
    border-width: 30px 50vw;
    bottom: 0;
    content: "";
    display: block;
    left: 0;
    position: absolute
}

@media (max-width:1080px) {
    .lp-monthly-price .satisfaction .feature:nth-child(odd):after {
        border-left: 540px solid #e595bc;
        border-right: 540px solid transparent
    }
}

.lp-monthly-price .satisfaction .feature:nth-child(odd) .inner {
    align-items: center;
    display: flex;
    flex-direction: row
}

@media (max-width:1024px) {
    .lp-monthly-price .satisfaction .feature:nth-child(odd) .inner {
        margin: 0 40px
    }
}

@media (max-width:767px) {
    .lp-monthly-price .satisfaction .feature:nth-child(odd) .inner {
        display: block;
        margin: 0;
        padding: 40px 40px 60px
    }

    .lp-monthly-price .satisfaction .feature:nth-child(odd) .inner .pic {
        padding: 0 0 14px
    }

    .lp-monthly-price .satisfaction .feature:nth-child(odd) .inner .pic img {
        max-width: 100%
    }
}

.lp-monthly-price .satisfaction .feature:nth-child(odd) .inner .explain {
    padding: 0 0 0 50px
}

@media (max-width:767px) {
    .lp-monthly-price .satisfaction .feature:nth-child(odd) .inner .explain {
        padding: 0
    }
}

.lp-monthly-price .satisfaction .feature:nth-child(odd) .inner .explain dt {
    border-bottom: 2px solid #e8529a;
    color: #e8529a;
    font-size: 3rem;
    line-height: 1;
    padding: 0 0 15px
}

@media (max-width:767px) {
    .lp-monthly-price .satisfaction .feature:nth-child(odd) .inner .explain dt {
        font-size: 2rem;
        padding: 0 0 12px
    }
}

.lp-monthly-price .satisfaction .feature:nth-child(odd) .inner .explain dt img {
    display: block;
    padding: 0 0 25px
}

@media (max-width:767px) {
    .lp-monthly-price .satisfaction .feature:nth-child(odd) .inner .explain dt img {
        height: 59px;
        padding: 0 0 12px;
        width: auto
    }
}

.lp-monthly-price .satisfaction .feature:nth-child(odd) .inner .explain dd {
    font-size: 1.6rem;
    line-height: 1.6;
    padding: 20px 0 0;
    text-align: left
}

@media (max-width:767px) {
    .lp-monthly-price .satisfaction .feature:nth-child(odd) .inner .explain dd {
        font-size: 1.3rem;
        line-height: 1.8;
        padding: 14px 0 0
    }
}

.lp-monthly-price .satisfaction .feature:nth-child(2n):after {
    border-color: transparent #f2e7ef #f2e7ef transparent;
    border-style: solid;
    border-width: 30px 50vw;
    bottom: 0;
    content: "";
    display: block;
    left: 0;
    position: absolute
}

@media (max-width:1080px) {
    .lp-monthly-price .satisfaction .feature:nth-child(2n):after {
        border-left: 540px solid transparent;
        border-right: 540px solid #f2e7ef
    }
}

.lp-monthly-price .satisfaction .feature:nth-child(2n) .inner {
    align-items: center;
    display: flex;
    flex-direction: row-reverse
}

@media (max-width:1024px) {
    .lp-monthly-price .satisfaction .feature:nth-child(2n) .inner {
        margin: 0 40px
    }
}

@media (max-width:767px) {
    .lp-monthly-price .satisfaction .feature:nth-child(2n) .inner {
        display: block;
        margin: 0;
        padding: 0 40px 30px
    }

    .lp-monthly-price .satisfaction .feature:nth-child(2n) .inner .pic {
        padding: 0 0 14px
    }

    .lp-monthly-price .satisfaction .feature:nth-child(2n) .inner .pic img {
        max-width: 100%
    }
}

.lp-monthly-price .satisfaction .feature:nth-child(2n) .inner .explain {
    padding: 0 50px 0 0
}

@media (max-width:767px) {
    .lp-monthly-price .satisfaction .feature:nth-child(2n) .inner .explain {
        padding: 0
    }
}

.lp-monthly-price .satisfaction .feature:nth-child(2n) .inner .explain dt {
    border-bottom: 2px solid #fff;
    color: #fff;
    font-size: 3rem;
    line-height: 1;
    padding: 0 0 15px
}

@media (max-width:767px) {
    .lp-monthly-price .satisfaction .feature:nth-child(2n) .inner .explain dt {
        font-size: 2rem;
        padding: 0 0 12px
    }
}

.lp-monthly-price .satisfaction .feature:nth-child(2n) .inner .explain dt img {
    display: block;
    padding: 0 0 25px
}

@media (max-width:767px) {
    .lp-monthly-price .satisfaction .feature:nth-child(2n) .inner .explain dt img {
        height: 59px;
        padding: 0 0 12px;
        width: auto
    }
}

.lp-monthly-price .satisfaction .feature:nth-child(2n) .inner .explain dd {
    text-aligh: left;
    font-size: 1.6rem;
    line-height: 1.6;
    padding: 20px 0 0
}

@media (max-width:767px) {
    .lp-monthly-price .satisfaction .feature:nth-child(2n) .inner .explain dd {
        font-size: 1.3rem;
        line-height: 1.8;
        padding: 14px 0 0
    }
}

.lp-monthly-price .satisfaction .feature:last-child:after {
    border-bottom: 30px solid #fff;
    border-left: 50vw solid #fff
}

@media (max-width:1080px) {
    .lp-monthly-price .satisfaction .feature:last-child:after {
        border-left: 540px solid #fff;
        border-right: 540px solid transparent
    }
}

.lp-monthly-price .satisfaction .feature1 {
    background-color: #e595bc
}

.lp-monthly-price .satisfaction .feature2 {
    background-color: #f2e7ef
}

.lp-monthly-price .satisfaction .feature3 {
    background-color: #e595bc
}

.lp-monthly-price .satisfaction .feature4 {
    background-color: #f2e7ef
}

.lp-monthly-price--2 .feature3 ul.plan_dtl {
    display: flex;
    flex-wrap: wrap
}

@media (max-width:767px) {
    .lp-monthly-price--2 .feature3 ul.plan_dtl {
        display: block
    }
}

.lp-monthly-price--2 .feature3 ul.plan_dtl li {
    background: #fff;
    border: 5px solid #e595bb;
    margin-bottom: 14px;
    margin-right: 2.3333%;
    padding: 20px 20px 10px;
    text-align: center;
    width: 31.6667%
}

@media (max-width:767px) {
    .lp-monthly-price--2 .feature3 ul.plan_dtl li {
        margin-right: 0 !important;
        width: auto
    }
}

.lp-monthly-price--2 .feature3 ul.plan_dtl li:nth-child(3n) {
    margin-right: 0
}

.lp-monthly-price--2 .feature3 ul.plan_dtl li dl dt img {
    width: 28px
}

.lp-monthly-price--2 .feature3 ul.plan_dtl li dl dd {
    color: #333;
    font-size: 2.2rem
}

@media (max-width:767px) {
    .lp-monthly-price--2 .feature3 ul.plan_dtl li dl dd {
        font-size: 2rem
    }
}

.lp-monthly-price .personal {
    background-color: #fff;
    padding: 75px 0
}

@media (max-width:767px) {
    .lp-monthly-price .personal {
        padding: 0 0 40px
    }
}

.lp-monthly-price .personal .inner {
    align-items: center;
    background: url(../../assets/img/lp/monthly-price/bg_personal.jpg) 0 0 no-repeat;
    background-size: cover;
    border-radius: 10px;
    display: flex
}

@media (max-width:767px) {
    .lp-monthly-price .personal .inner {
        background: url(../../assets/img/lp/monthly-price/sp/bg_personal.jpg) 0 0 no-repeat;
        border-radius: 5px;
        margin: 0 15px
    }
}

.lp-monthly-price .personal .inner .pic {
    padding: 30px 50px 30px 30px
}

@media (max-width:767px) {
    .lp-monthly-price .personal .inner .pic {
        padding: 15px
    }

    .lp-monthly-price .personal .inner .pic img {
        max-width: 100%
    }
}

.lp-monthly-price .personal .inner dl {
    color: #fff
}

@media (max-width:767px) {
    .lp-monthly-price .personal .inner dl {
        padding: 0 15px 0 0;
        white-space: nowrap
    }
}

.lp-monthly-price .personal .inner dl dt {
    font-size: 2.8rem;
    line-height: 1;
    padding: 0 0 18px
}

@media (max-width:767px) {
    .lp-monthly-price .personal .inner dl dt {
        font-size: 2rem
    }
}

.lp-monthly-price .personal .inner dl dd {
    font-size: 2rem;
    line-height: 2
}

@media (max-width:767px) {
    .lp-monthly-price .personal .inner dl dd {
        font-size: 1.2rem
    }
}

.lp-monthly-price .cv-contact {
    background-color: #71d0d8;
    background-image: url(../../assets/img/lp/pflecare/cv-contact-bg-pc.png);
    background-position: bottom;
    background-repeat: no-repeat;
    background-size: 1000px;
    min-height: 345px;
    padding: 35px 0;
    text-align: center
}

.lp-monthly-price .cv-contact .inner {
    max-width: 1020px;
    padding: 0 10px
}

.lp-monthly-price .cv-contact-lead {
    text-align: left
}

.lp-monthly-price .cv-contact-lead p {
    color: #fff;
    display: inline-block;
    font-family: "Noto Serif JP", serif;
    font-size: 3.6rem;
    font-weight: 600;
    letter-spacing: 0;
    line-height: 1.36;
    margin-left: 20%;
    margin-top: 40px;
    text-align: left
}

.lp-monthly-price .cv-contact-btn-wrap {
    display: flex;
    justify-content: space-between;
    margin: 0 20px;
    padding-top: 65px
}

.lp-monthly-price .cv-contact-btn {
    -webkit-box-align: center;
    -webkit-box-pack: center;
    align-items: center;
    border-radius: 6px;
    color: #fff;
    display: flex;
    flex-direction: column;
    font-size: 34px;
    font-weight: 700;
    justify-content: center;
    letter-spacing: .05em;
    line-height: 1;
    max-width: 100%;
    padding: 12px;
    position: relative;
    transition-delay: 0s;
    transition-duration: .25s;
    transition-property: all;
    transition-timing-function: ease-in-out;
    width: 470px
}

.lp-monthly-price .cv-contact-btn span.label {
    background-color: #fff;
    border-radius: 30px;
    display: block;
    font-size: 16px;
    font-weight: 700;
    line-height: 1;
    margin-bottom: 8px;
    padding: 4px 20px 2px;
    text-align: center
}

.lp-monthly-price .cv-contact-btn.mod-request span.label {
    color: #f4a900
}

.lp-monthly-price .cv-contact-btn.mod-reserve span.label {
    color: #ec719e
}

.lp-monthly-price .cv-contact-btn.mod-request {
    background-color: #f4a900;
    box-shadow: 0 5px 0 0 #c78a0d
}

.lp-monthly-price .cv-contact-btn.mod-reserve {
    background-color: #ec719e;
    box-shadow: 0 5px 0 0 #bb6685;
    margin-right: 10px
}

.lp-monthly-price .cv-contact-btn:hover {
    opacity: .7
}

@media screen and (max-width:1020px) {
    .lp-monthly-price .cv-contact {
        background-size: 98%
    }

    .lp-monthly-price .cv-contact-btn {
        font-size: 28px
    }
}

@media screen and (max-width:1000px) {
    .lp-monthly-price .cv-contact-lead p {
        font-size: 3.2rem
    }

    .lp-monthly-price .cv-contact {
        min-height: 325px
    }

    .lp-monthly-price .cv-contact-btn span.label {
        font-size: 16px
    }
}

@media screen and (max-width:900px) {
    .lp-monthly-price .cv-contact-lead p {
        font-size: 2.8rem;
        margin-left: 20%;
        margin-top: 30px
    }

    .lp-monthly-price .cv-contact-btn-wrap {
        padding-top: 55px
    }

    .lp-monthly-price .cv-contact {
        min-height: 275px
    }
}

@media screen and (max-width:840px) {
    .lp-monthly-price .cv-contact-btn span.label {
        font-size: 13px
    }

    .lp-monthly-price .cv-contact-lead p {
        margin-left: 17%;
        margin-top: 0
    }

    .lp-monthly-price .cv-contact-btn-wrap {
        padding-top: 65px
    }
}

@media screen and (max-width:768px) {
    .lp-monthly-price .cv-contact {
        background-image: url(../../assets/img/lp/pflecare/sp/cv-contact-bg-sp-1.png);
        background-position: 0 100%;
        background-size: 130px;
        display: flex;
        flex-direction: column;
        flex-wrap: nowrap;
        height: auto;
        justify-content: center;
        min-height: auto;
        padding: 15px 0;
        text-align: center
    }

    .lp-monthly-price .cv-contact .inner {
        margin: inherit
    }

    .lp-monthly-price .cv-contact-lead {
        margin-bottom: 130px;
        position: relative;
        text-align: center
    }

    .lp-monthly-price .cv-contact-lead p {
        font-size: 5.4vw;
        letter-spacing: .05em;
        margin: 0;
        padding: 0 0 10px !important;
        text-align: center
    }

    .lp-monthly-price .cv-contact-lead .privilege {
        background-attachment: scroll;
        background-clip: initial;
        background-color: initial;
        background-image: none;
        background-origin: initial;
        background-position: 0 0;
        background-repeat: repeat;
        background-size: initial;
        display: block;
        left: 0;
        margin: auto;
        max-width: 260px;
        padding: 0;
        position: absolute;
        right: 0
    }

    .lp-monthly-price .cv-contact-btn-wrap {
        align-items: center;
        flex-direction: column;
        margin: 0;
        padding: 0
    }

    .lp-monthly-price .cv-contact-btn span.label {
        font-size: 9px;
        letter-spacing: .03em;
        margin-bottom: 5px
    }

    .lp-monthly-price .cv-contact-btn {
        font-size: 19px;
        letter-spacing: 0 !important;
        padding: 6px
    }

    .lp-monthly-price .cv-contact-btn.mod-request {
        box-shadow: 0 3px 0 0 #c78a0d
    }

    .lp-monthly-price .cv-contact-btn.mod-reserve {
        margin-bottom: 8px;
        margin-right: 0
    }
}

@media only screen and (max-width:480px) {
    .lp-monthly-price .cv-contact-lead .privilege {
        left: 0;
        max-width: 240px;
        right: -60px
    }

    .lp-monthly-price .cv-contact-lead {
        margin-bottom: 110px;
        text-align: center
    }
}

@media only screen and (max-width:360px) {
    .lp-monthly-price .cv-contact-lead .privilege {
        left: inherit;
        margin-top: 10px;
        max-width: 210px;
        right: 0
    }
}

.lp-monthly-price .single .main {
    padding-bottom: 0
}

.lp-monthly-price .map {
    background-color: #f2f9fd;
    padding: 90px 0 0
}

.lp-monthly-price .national-map {
    position: relative
}

@media screen and (max-width:768px) {
    .lp-monthly-price .national-map {
        height: auto
    }
}

@media screen and (max-width:480px) {
    .lp-monthly-price .map {
        padding: 50px 0 !important
    }
}

.lp-monthly-price .map-ttl {
    color: #04477d;
    font-family: "Noto Serif JP", serif;
    font-size: 40px;
    font-weight: 700;
    letter-spacing: 3px;
    text-align: center
}

.lp-monthly-price .map-ttl br {
    display: none
}

.lp-monthly-price .map-lead {
    font-size: 20px;
    letter-spacing: inherit;
    margin-top: 25px;
    text-align: center
}

.lp-monthly-price .map-lead br {
    display: block
}

@media screen and (max-width:640px) {
    .lp-monthly-price .map-ttl {
        font-size: 30px
    }

    .lp-monthly-price .map-lead {
        font-size: 16px
    }
}

@media screen and (max-width:480px) {
    .lp-monthly-price .map-ttl {
        font-size: 25px;
        line-height: 1.3
    }

    .lp-monthly-price .map-ttl br {
        display: block
    }

    .lp-monthly-price .map-lead br {
        display: none
    }

    .lp-monthly-price .map-lead {
        text-align: left
    }
}

.lp-monthly-price .modal-btn {
    background: #e8529a;
    border-bottom: 4px solid #c13c7c;
    border-radius: 4px;
    color: #fff !important;
    display: inline-block;
    min-width: 128px;
    padding: 10px;
    text-align: center;
    text-decoration: none
}

.lp-monthly-price .modal-btn-close {
    background: #999;
    border-bottom: 4px solid #777;
    display: block;
    margin: 0 auto;
    max-width: 150px
}

.lp-monthly-price .modal-btn:hover {
    opacity: .7
}

@media screen and (max-width:460px) {
    .lp-monthly-price .modal-btn {
        min-width: 100px;
        padding: 10px 5px
    }
}

.lp-monthly-price .national-map-modal {
    margin-top: 30px;
    position: relative
}

.lp-monthly-price .modalInner {
    -webkit-overflow-scrolling: touch;
    background-color: #fff;
    border-radius: 5px;
    cursor: default;
    height: 90%;
    overflow: auto;
    overflow-y: scroll;
    padding: 3em;
    position: relative
}

.lp-monthly-price .modalInner h4 {
    color: #04477d;
    font-family: "Noto Serif JP", serif;
    font-size: 3rem;
    font-weight: 700;
    margin-bottom: 20px;
    text-align: center
}

.lp-monthly-price .modalInner dl {
    text-align: left
}

.lp-monthly-price .modalInner dt {
    font-size: 2rem;
    font-weight: 700;
    margin-bottom: 10px
}

.lp-monthly-price .modalInner dd {
    line-height: 1.4
}

.lp-monthly-price .modalInner dd br.pc_none {
    display: none
}

.lp-monthly-price .modalShopList {
    border-bottom: 1px solid #ddd;
    margin-bottom: 20px;
    padding-bottom: 25px
}

.lp-monthly-price .modalShopList a {
    background: #e8529a;
    border-bottom: 4px solid #c13c7c;
    border-radius: 4px;
    color: #fff !important;
    display: inline-block;
    margin: 10px 0 0;
    padding: 10px 25px 10px 15px;
    text-align: center;
    text-decoration: none
}

.lp-monthly-price .modalShopList .arrowicon {
    position: relative
}

.lp-monthly-price .modalShopList .arrowicon:after,
.lp-monthly-price .modalShopList .arrowicon:before {
    bottom: 0;
    content: "";
    margin: auto;
    position: absolute;
    right: 0;
    top: 0;
    vertical-align: middle
}

.lp-monthly-price .modalShopList .arrowicon:before {
    border-right: 1px solid #fff;
    border-top: 1px solid #fff;
    height: 8px;
    right: 10px;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    width: 8px
}

.lp-monthly-price .modalShopList a:hover {
    opacity: .7
}

@media screen and (max-width:768px) {
    .lp-monthly-price .modalInner {
        height: 100%;
        padding: 2em 1.5em 1.5em
    }

    .lp-monthly-price .modalInner h4 {
        font-size: 2.2rem
    }

    .lp-monthly-price .modalInner dt {
        font-size: 1.8rem;
        line-height: 1.2;
        margin-bottom: 10px
    }
}

@media screen and (max-width:480px) {
    .lp-monthly-price .modalInner dd br.pc_none {
        display: block;
        margin: 0
    }

    .lp-monthly-price .modalShopList .arrowicon {
        display: block;
        margin: 10px auto 0;
        text-align: center;
        width: 85%
    }
}

@media screen and (max-width:370px) {
    .lp-monthly-price .modalShopList .arrowicon {
        width: 100%
    }
}

.lp-monthly-price .area {
    align-items: center;
    border-bottom: 1px solid #eee;
    display: flex;
    padding-bottom: 10px;
    padding-top: 20px
}

.lp-monthly-price .area:first-of-type {
    border-top: 1px solid #eee
}

.lp-monthly-price .area h3 {
    font-size: 1.8rem;
    font-weight: 700;
    margin-bottom: 10px;
    margin-right: 5px;
    min-width: 100px;
    text-align: left
}

@media screen and (max-width:768px) {
    .lp-monthly-price .area {
        align-items: flex-start;
        padding-top: 15px
    }

    .lp-monthly-price .area h3 {
        font-size: 1.6rem;
        margin-top: 15px
    }
}

@media screen and (max-width:460px) {
    .lp-monthly-price .area h3 {
        min-width: 85px
    }
}

.lp-monthly-price .modal-list {
    display: flex;
    flex-wrap: wrap
}

.lp-monthly-price .modal-list li {
    margin: 0 10px 10px 0
}

@media screen and (max-width:768px) {
    .lp-monthly-price .modal-list li {
        margin: 0 5px 5px 0
    }
}

.lp-monthly-price .modalCheck {
    display: none
}

.lp-monthly-price .modal-list label {
    cursor: pointer
}

.lp-monthly-price .modalBg,
.lp-monthly-price .modalWrap {
    bottom: 0;
    height: 100%;
    left: 0;
    margin: auto;
    position: fixed;
    right: 0;
    top: 0;
    width: 100%;
    z-index: 10010
}

.lp-monthly-price .modalWrap {
    opacity: 0;
    visibility: hidden
}

.lp-monthly-price .modalBg {
    background-color: #000;
    cursor: pointer;
    opacity: .7;
    z-index: 250
}

.lp-monthly-price .modalBg .closeModal {
    background: none;
    bottom: 0;
    display: block;
    left: 0;
    padding: 0;
    position: absolute;
    right: 0;
    top: 0;
    width: 100%
}

.lp-monthly-price .modalCon {
    bottom: 0;
    height: 80%;
    left: 0;
    margin: auto;
    max-width: 640px;
    position: absolute;
    right: 0;
    top: 0;
    width: 92%;
    z-index: 10010
}

.lp-monthly-price .modalCloseBtn {
    background: none;
    color: #fff;
    display: block;
    font-size: 4rem;
    line-height: 1;
    margin: auto;
    position: relative;
    position: absolute;
    right: 0;
    text-align: center;
    text-decoration: none;
    top: -60px
}

.lp-monthly-price .modalCloseBtn:hover {
    opacity: .8
}

.lp-monthly-price .modalCloseBtn span {
    display: block;
    font-size: 1.4rem
}

@media (max-width:768px) {
    .lp-monthly-price .modalCon {
        bottom: auto;
        height: 75%;
        top: 80px;
        width: 90%
    }
}

.lp-monthly-price .modalCheck:not(:checked)~.modalWrap {
    opacity: 0;
    visibility: hidden
}

.lp-monthly-price #modal_01:checked~#modal_01Con,
.lp-monthly-price #modal_02:checked~#modal_02Con,
.lp-monthly-price #modal_03:checked~#modal_03Con,
.lp-monthly-price #modal_04:checked~#modal_04Con,
.lp-monthly-price #modal_05:checked~#modal_05Con,
.lp-monthly-price #modal_06:checked~#modal_06Con,
.lp-monthly-price #modal_07:checked~#modal_07Con,
.lp-monthly-price #modal_08:checked~#modal_08Con,
.lp-monthly-price #modal_09:checked~#modal_09Con,
.lp-monthly-price #modal_10:checked~#modal_10Con,
.lp-monthly-price #modal_11:checked~#modal_11Con,
.lp-monthly-price #modal_12:checked~#modal_12Con,
.lp-monthly-price #modal_13:checked~#modal_13Con,
.lp-monthly-price #modal_14:checked~#modal_14Con,
.lp-monthly-price #modal_15:checked~#modal_15Con,
.lp-monthly-price #modal_16:checked~#modal_16Con,
.lp-monthly-price #modal_17:checked~#modal_17Con,
.lp-monthly-price #modal_18:checked~#modal_18Con,
.lp-monthly-price #modal_19:checked~#modal_19Con,
.lp-monthly-price #modal_20:checked~#modal_20Con,
.lp-monthly-price #modal_21:checked~#modal_21Con,
.lp-monthly-price #modal_22:checked~#modal_22Con,
.lp-monthly-price #modal_23:checked~#modal_23Con,
.lp-monthly-price #modal_24:checked~#modal_24Con,
.lp-monthly-price #modal_25:checked~#modal_25Con,
.lp-monthly-price #modal_26:checked~#modal_26Con,
.lp-monthly-price #modal_27:checked~#modal_27Con,
.lp-monthly-price #modal_28:checked~#modal_28Con,
.lp-monthly-price #modal_29:checked~#modal_29Con,
.lp-monthly-price #modal_30:checked~#modal_30Con,
.lp-monthly-price #modal_31:checked~#modal_31Con,
.lp-monthly-price #modal_32:checked~#modal_32Con,
.lp-monthly-price #modal_33:checked~#modal_33Con,
.lp-monthly-price #modal_34:checked~#modal_34Con,
.lp-monthly-price #modal_35:checked~#modal_35Con,
.lp-monthly-price #modal_36:checked~#modal_36Con,
.lp-monthly-price #modal_37:checked~#modal_37Con,
.lp-monthly-price #modal_38:checked~#modal_38Con,
.lp-monthly-price #modal_39:checked~#modal_39Con,
.lp-monthly-price #modal_40:checked~#modal_40Con,
.lp-monthly-price #modal_41:checked~#modal_41Con,
.lp-monthly-price #modal_42:checked~#modal_42Con,
.lp-monthly-price #modal_43:checked~#modal_43Con,
.lp-monthly-price #modal_44:checked~#modal_44Con,
.lp-monthly-price #modal_45:checked~#modal_45Con,
.lp-monthly-price #modal_46:checked~#modal_46Con,
.lp-monthly-price #modal_47:checked~#modal_47Con {
    opacity: 1;
    visibility: visible
}

.lp-online .pinktext {
    color: #f861a5
}

.lp-online .pc-i {
    display: inline !important
}

@media (max-width:767px) {
    .lp-online .pc-i {
        display: none !important
    }
}

.lp-online .sp-i {
    display: none !important
}

@media (max-width:767px) {
    .lp-online .sp-i {
        display: inline !important
    }
}

.lp-online .pc-ib {
    display: inline-block !important
}

@media (max-width:767px) {
    .lp-online .pc-ib {
        display: none !important
    }
}

.lp-online .sp-ib {
    display: none !important
}

@media (max-width:767px) {
    .lp-online .sp-ib {
        display: inline-block !important
    }
}

.lp-online .pc-b {
    display: block !important
}

@media (max-width:767px) {
    .lp-online .pc-b {
        display: none !important
    }
}

.lp-online .sp-b {
    display: none !important
}

@media (max-width:767px) {
    .lp-online .sp-b {
        display: block !important
    }
}

.lp-online .pc-only-b {
    display: block !important
}

@media (max-width:960px) {
    .lp-online .pc-only-b {
        display: none !important
    }
}

@media (max-width:767px) {
    .lp-online .pc-only-b {
        display: none !important
    }
}

.lp-online .tb-only-b {
    display: none !important
}

@media (max-width:960px) {
    .lp-online .tb-only-b {
        display: block !important
    }
}

@media (max-width:767px) {
    .lp-online .tb-only-b {
        display: none !important
    }
}

.lp-online .sp-only-b {
    display: none !important
}

@media (max-width:960px) {
    .lp-online .sp-only-b {
        display: none !important
    }
}

@media (max-width:767px) {
    .lp-online .sp-only-b {
        display: block !important
    }
}

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

.lp-online .serif {
    font-family: 游明朝, YuMincho, ヒラギノ明朝 ProN W3, Hiragino Mincho ProN, HG明朝E, ＭＳ Ｐ明朝, ＭＳ 明朝, serif
}

.lp-online .inner {
    margin: 0 auto;
    max-width: 960px;
    padding: 0
}

@media (max-width:960px) {
    .lp-online .inner {
        margin: 0 15px;
        max-width: 100%;
        padding: 0;
        width: auto
    }
}

.lp-online .visual {
    background-color: #eef2f7;
    overflow: hidden;
    position: relative
}

.lp-online .visual .image {
    text-align: center
}

.lp-online .visual .image img {
    margin: 0 -25%;
    max-width: 150%
}

@media (max-width:767px) {
    .lp-online .visual .image img {
        margin: 0;
        max-width: 100%
    }
}

.lp-online .worries {
    padding: 70px 0 60px
}

@media (max-width:767px) {
    .lp-online .worries {
        padding: 40px 0 35px
    }
}

.lp-online .worries h2 {
    color: #f861a5;
    font-family: Yu Mincho Demibold;
    font-size: 4.8rem;
    padding: 0 0 30px;
    text-align: center
}

@media (max-width:767px) {
    .lp-online .worries h2 {
        font-size: 3rem;
        line-height: 1.3;
        padding: 0 0 15px
    }
}

.lp-online .worries h2 em {
    background: url(../../assets/img/lp/online/bg_textline_yellow.png) 0 bottom repeat-x
}

.lp-online .worries h3 {
    color: #f861a5;
    font-family: Yu Mincho Demibold;
    font-size: 2.9rem;
    padding: 0 0 40px;
    text-align: center
}

@media (max-width:767px) {
    .lp-online .worries h3 {
        font-size: 2rem;
        padding: 0 0 35px
    }
}

.lp-online .worries .image {
    text-align: center
}

@media (max-width:767px) {
    .lp-online .worries .image {
        margin: 0 -15px
    }
}

.lp-online .use {
    background-color: #fef0f6;
    padding: 0 0 50px
}

.lp-online .use h2 {
    background-color: #f861a5;
    color: #fff;
    font-family: Yu Mincho Demibold;
    font-size: 4rem;
    line-height: 70px;
    position: relative;
    text-align: center
}

@media (max-width:767px) {
    .lp-online .use h2 {
        font-size: 2.8rem;
        line-height: 2
    }
}

.lp-online .use h2:after {
    background-image: url(../../assets/img/lp/online/bg_arrow_under_pink.png);
    background-position: center 0;
    background-repeat: no-repeat;
    background-size: 28px 14px;
    bottom: -14px;
    content: "";
    display: inline-block;
    height: 14px;
    left: 50%;
    margin-left: -14px;
    position: absolute;
    width: 28px
}

.lp-online .use .topic {
    display: flex;
    justify-content: center;
    padding: 70px 0 0
}

@media (max-width:767px) {
    .lp-online .use .topic {
        flex-wrap: wrap;
        padding: 50px 0 0
    }
}

.lp-online .use .topic .imageblock {
    margin: 0 38px 0 0
}

@media (max-width:767px) {
    .lp-online .use .topic .imageblock {
        margin: 0
    }
}

.lp-online .use .topic .imageblock img {
    height: auto;
    width: auto
}

@media (max-width:767px) {
    .lp-online .use .topic .imageblock img {
        width: 150px
    }
}

.lp-online .use .topic .textblock .textwrap {
    height: 184px
}

@media (max-width:767px) {
    .lp-online .use .topic .textblock .textwrap {
        height: auto
    }
}

.lp-online .use .topic .textblock .textwrap h4 {
    font-size: 1.8rem
}

@media (max-width:767px) {
    .lp-online .use .topic .textblock .textwrap h4 {
        font-size: 1.6rem;
        padding: 30px 0 0;
        text-align: center
    }
}

.lp-online .use .topic .textblock .textwrap h3 {
    font-size: 3.6rem;
    padding: 5px 0 0
}

@media (max-width:767px) {
    .lp-online .use .topic .textblock .textwrap h3 {
        font-size: 3rem;
        text-align: center
    }
}

.lp-online .use .topic .textblock .textwrap h3 span {
    font-size: 2rem
}

@media (max-width:767px) {
    .lp-online .use .topic .textblock .textwrap h3 span {
        font-size: 1.8rem
    }
}

.lp-online .use .topic .textblock .textwrap .text {
    font-size: 1.6rem;
    line-height: 1.8;
    padding: 15px 0 0
}

@media (max-width:767px) {
    .lp-online .use .topic .textblock .textwrap .text {
        font-size: 1.5rem;
        line-height: 2;
        padding: 20px 0 0
    }
}

.lp-online .use .topic .textblock .banners {
    display: flex;
    justify-content: left
}

@media (max-width:767px) {
    .lp-online .use .topic .textblock .banners {
        flex-wrap: wrap;
        justify-content: center;
        padding: 25px 0 0
    }
}

.lp-online .use .topic .textblock .banners li {
    padding: 0 20px 0 0
}

@media (max-width:767px) {
    .lp-online .use .topic .textblock .banners li {
        padding: 10px 8px 0
    }
}

.lp-online .use .explain {
    color: #d84c8b;
    display: table;
    font-size: 2.2rem;
    line-height: 1.8;
    margin: 70px auto;
    padding: 0 0 0 110px;
    position: relative;
    text-align: left
}

@media (max-width:767px) {
    .lp-online .use .explain {
        font-size: 1.6rem;
        margin: 60px auto
    }
}

.lp-online .use .explain:before {
    background-image: url(../../assets/img/lp/online/icon_online.png);
    background-position: 0 0;
    background-repeat: no-repeat;
    background-size: 86px 70px;
    content: "";
    display: inline-block;
    height: 70px;
    left: 0;
    margin-top: -35px;
    position: absolute;
    top: 50%;
    width: 86px
}

.lp-online .use .equipment {
    background-color: #fff;
    border-bottom: 2px solid #277afc;
    border-left: 2px solid #277afc;
    border-radius: 10px;
    border-right: 2px solid #277afc;
    overflow: hidden
}

.lp-online .use .equipment h3 {
    background-color: #277afc;
    text-align: center
}

.lp-online .use .equipment h3 span {
    background: url(../../assets/img/lp/online/icon_ex.png) 0 no-repeat;
    color: #fff;
    display: inline-block;
    font-size: 2.2rem;
    line-height: 60px;
    padding: 0 0 0 40px
}

@media (max-width:767px) {
    .lp-online .use .equipment h3 span {
        font-size: 1.6rem;
        line-height: 1.5;
        padding: 10px 0 10px 40px;
        text-align: left
    }
}

.lp-online .use .equipment .list {
    color: #277afc;
    display: table;
    font-size: 2.2rem;
    margin: 0 auto;
    padding: 50px 1em 45px 2em;
    text-indent: -1em
}

@media (max-width:767px) {
    .lp-online .use .equipment .list {
        font-size: 1.6rem;
        padding: 35px 1em 25px 2em
    }
}

.lp-online .use .equipment .list li {
    padding: 0 0 5px
}

.lp-online .use .equipment h4 {
    color: #d84c8b;
    font-size: 1.8rem;
    line-height: 1;
    padding: 0 0 25px;
    text-align: center
}

@media (max-width:767px) {
    .lp-online .use .equipment h4 {
        font-size: 1.4rem;
        line-height: 1.5;
        margin: 0 20px 20px;
        padding: 0 0 0 1em;
        text-align: left;
        text-indent: -1em
    }
}

.lp-online .use .equipment .images {
    display: flex;
    justify-content: center;
    padding: 0 0 50px
}

@media (max-width:767px) {
    .lp-online .use .equipment .images {
        flex-wrap: wrap;
        padding: 0 0 15px
    }
}

.lp-online .use .equipment .images li {
    padding: 0 15px
}

@media (max-width:767px) {
    .lp-online .use .equipment .images li {
        padding: 0 0 15px
    }
}

.lp-online .use .equipment .images li img {
    height: auto;
    width: auto
}

.lp-online .use .att {
    padding: 40px 0 0
}

@media (max-width:767px) {
    .lp-online .use .att {
        padding: 40px 0 0
    }
}

.lp-online .use .att dt {
    font-size: 1.8rem;
    line-height: 1;
    padding: 0 0 12px
}

@media (max-width:767px) {
    .lp-online .use .att dt {
        font-size: 1.5rem
    }
}

.lp-online .use .att dd {
    font-size: 1.4rem;
    line-height: 1.8;
    padding: 0 0 0 1em;
    text-indent: -1em
}

@media (max-width:767px) {
    .lp-online .use .att dd {
        font-size: 1.2rem
    }
}

.lp-online .flow {
    padding: 70px 0
}

@media (max-width:767px) {
    .lp-online .flow {
        padding: 50px 0
    }
}

.lp-online .flow h2 {
    color: #f861a5;
    font-family: Yu Mincho Demibold;
    font-size: 4.8rem;
    line-height: 1;
    padding: 0 0 40px;
    text-align: center
}

@media (max-width:767px) {
    .lp-online .flow h2 {
        font-size: 2.8rem;
        padding: 0 0 30px
    }
}

.lp-online .flow h2 span {
    padding: 0 0 0 80px;
    position: relative
}

@media (max-width:767px) {
    .lp-online .flow h2 span {
        padding: 0 0 0 42px
    }
}

.lp-online .flow h2 span:before {
    background-image: url(../../assets/img/lp/online/icon_fukidashi.png);
    background-position: 0 0;
    background-repeat: no-repeat;
    background-size: 66px 54px;
    content: "";
    display: inline-block;
    height: 54px;
    left: 0;
    margin-top: -27px;
    position: absolute;
    top: 50%;
    width: 66px
}

@media (max-width:767px) {
    .lp-online .flow h2 span:before {
        background-size: 34px 28px;
        height: 28px;
        left: 0;
        margin-top: -14px;
        top: 50%;
        width: 34px
    }
}

.lp-online .flow .steps li {
    padding: 0
}

.lp-online .flow .steps li:nth-child(n+2) {
    background: url(../../assets/img/lp/online/img_arrow_under.png) center 16px no-repeat;
    padding-top: 85px
}

@media (max-width:767px) {
    .lp-online .flow .steps li:nth-child(n+2) {
        background-position: center 12px;
        background-size: 16px 36px;
        padding-top: 62px
    }
}

.lp-online .flow .steps li dl {
    position: relative;
    text-align: center
}

.lp-online .flow .steps li dl dt {
    background-color: #277afc;
    color: #fff;
    display: inline-block;
    font-size: 1.8rem;
    font-size: 2rem;
    line-height: 36px;
    padding: 0 15px;
    z-index: 10
}

@media (max-width:767px) {
    .lp-online .flow .steps li dl dt {
        font-size: 1.5rem;
        line-height: 1.8
    }
}

.lp-online .flow .steps li dl dt em {
    font-size: 2.4rem;
    padding: 0 0 0 .5em
}

@media (max-width:767px) {
    .lp-online .flow .steps li dl dt em {
        font-size: 1.8rem
    }
}

.lp-online .flow .steps li dl dd {
    border: 2px solid #d84c8b;
    border-radius: 10px;
    font-size: 2.8rem;
    margin: -20px 0 0;
    padding: 40px 15px 30px
}

@media (max-width:767px) {
    .lp-online .flow .steps li dl dd {
        font-size: 1.8rem;
        line-height: 1.8;
        padding: 30px 10px 20px
    }
}

.lp-online .flow .steps li dl dd em {
    color: #d84c8b;
    font-weight: 700
}

.lp-online .flow .points {
    color: #277afc;
    display: table;
    font-size: 2.2rem;
    line-height: 1;
    margin: 60px auto 0;
    padding: 0 0 0 1em;
    text-align: left;
    text-indent: -1em
}

@media (max-width:767px) {
    .lp-online .flow .points {
        font-size: 1.6rem;
        margin: 50px auto 0
    }
}

.lp-online .flow .points li {
    padding: 0 0 8px
}

.lp-online .flow .att {
    border-bottom: 1px solid #ccc;
    border-top: 1px solid #ccc;
    display: table;
    margin: 60px auto 0;
    padding: 30px 0;
    text-align: center
}

@media (max-width:767px) {
    .lp-online .flow .att {
        border-bottom: 2px solid #ccc;
        border-top: 2px solid #ccc;
        margin: 50px 15px 0
    }
}

.lp-online .flow .att dt {
    font-size: 2rem;
    line-height: 1;
    padding: 0 0 25px
}

@media (max-width:767px) {
    .lp-online .flow .att dt {
        font-size: 1.6rem
    }
}

.lp-online .flow .att dd {
    font-size: 1.5rem;
    line-height: 1.8
}

@media (max-width:767px) {
    .lp-online .flow .att dd {
        font-size: 1.4rem;
        text-align: left
    }
}

.lp-online .flow .att dd i {
    display: block;
    font-size: 1.5rem;
    padding: 5px 0 0;
    text-align: center
}

@media (max-width:767px) {
    .lp-online .flow .att dd i {
        font-size: 1.4rem
    }
}

.lp-online .flow .att dd i em {
    font-size: 2rem;
    letter-spacing: .1;
    padding: 0 0 0 .5em
}

.lp-online .flow .att dd i em a {
    color: #323333;
    text-decoration: underline
}

.lp-online .qa {
    padding: 70px 0
}

@media (max-width:767px) {
    .lp-online .qa {
        padding: 50px 0
    }
}

.lp-online .qa h2 {
    color: #f861a5;
    font-family: Yu Mincho Demibold;
    font-size: 4.8rem;
    line-height: 1;
    padding: 0 0 40px;
    text-align: center
}

@media (max-width:767px) {
    .lp-online .qa h2 {
        font-size: 3rem;
        padding: 0 0 20px
    }
}

.lp-online .qa .inner {
    background: url(../../assets/img/lp/online/dotline_pink.png) 0 0 repeat-x;
    display: table
}

.lp-online .qa .inner .question {
    display: table;
    padding: 25px 0;
    width: 100%
}

@media (max-width:767px) {
    .lp-online .qa .inner .question {
        padding: 20px 0
    }
}

.lp-online .qa .inner .question dt {
    display: table-cell;
    vertical-align: middle;
    width: 60px
}

@media (max-width:767px) {
    .lp-online .qa .inner .question dt {
        width: 40px
    }

    .lp-online .qa .inner .question dt img {
        height: auto;
        width: 28px
    }
}

.lp-online .qa .inner .question dd {
    color: #d84c8b;
    display: table-cell;
    font-size: 2.2rem;
    font-weight: 700;
    line-height: 1.5;
    vertical-align: middle
}

@media (max-width:767px) {
    .lp-online .qa .inner .question dd {
        font-size: 1.6rem
    }
}

.lp-online .qa .inner .question dd em {
    display: block
}

.lp-online .qa .inner .answer {
    background: url(../../assets/img/lp/online/dotline_pink.png) 0 bottom repeat-x;
    display: table;
    padding: 0 0 25px;
    width: 100%
}

@media (max-width:767px) {
    .lp-online .qa .inner .answer {
        padding: 0 0 20px
    }
}

.lp-online .qa .inner .answer dt {
    display: table-cell;
    vertical-align: middle;
    width: 60px
}

@media (max-width:767px) {
    .lp-online .qa .inner .answer dt {
        width: 40px
    }

    .lp-online .qa .inner .answer dt img {
        height: auto;
        width: 28px
    }
}

.lp-online .qa .inner .answer dd {
    display: table-cell;
    font-size: 2.2rem;
    line-height: 1.5;
    vertical-align: middle
}

@media (max-width:767px) {
    .lp-online .qa .inner .answer dd {
        font-size: 1.6rem
    }
}

.lp-online .qa .inner .answer dd em {
    display: block;
    font-size: 2.2rem;
    line-height: 1;
    text-indent: 0
}

@media (max-width:767px) {
    .lp-online .qa .inner .answer dd em {
        font-size: 1.6rem;
        letter-spacing: .05em
    }
}

.lp-online .qa .inner .answer dd em a {
    color: #323333;
    text-decoration: underline
}

.lp-online .reservation-belt {
    background-color: #71d0d8;
    position: relative
}

.lp-online .reservation-belt:after {
    background-image: url(../../assets/img/lp/online/pic_cta.png);
    background-position: 0 0;
    background-repeat: no-repeat;
    background-size: 254px 336px;
    bottom: 0;
    content: "";
    display: inline-block;
    height: 336px;
    left: 50%;
    margin-left: -525px;
    position: absolute;
    width: 254px
}

@media (max-width:960px) {
    .lp-online .reservation-belt:after {
        background-image: none
    }
}

.lp-online .reservation-belt .inner {
    padding: 45px 0
}

.lp-online .reservation-belt .inner .lead {
    color: #fff;
    font-size: 4.4rem;
    margin: 0 0 20px;
    text-align: center
}

@media (max-width:767px) {
    .lp-online .reservation-belt .inner .lead {
        font-size: 3rem;
        margin: 0 0 15px
    }
}

.lp-online .reservation-belt .inner .lead span {
    font-family: Yu Mincho Demibold;
    position: relative
}

.lp-online .reservation-belt .inner .lead span:before {
    background: url(../../assets/img/lp/online/quote_before.png);
    background-size: 22px 50px;
    content: "";
    display: inline-block;
    height: 50px;
    left: -33px;
    margin-top: -25px;
    position: absolute;
    top: 50%;
    width: 22px
}

@media (max-width:767px) {
    .lp-online .reservation-belt .inner .lead span:before {
        background-size: 15px 36px;
        height: 36px;
        left: -25px;
        margin-top: -18px;
        top: 50%;
        width: 15px
    }
}

.lp-online .reservation-belt .inner .lead span:after {
    background: url(../../assets/img/lp/online/quote_after.png);
    background-size: 22px 50px;
    content: "";
    display: inline-block;
    height: 50px;
    margin-top: -25px;
    position: absolute;
    right: -33px;
    top: 50%;
    width: 22px
}

@media (max-width:767px) {
    .lp-online .reservation-belt .inner .lead span:after {
        background-size: 15px 36px;
        height: 36px;
        margin-top: -18px;
        right: -25px;
        top: 50%;
        width: 15px
    }
}

.lp-online .reservation-belt .inner .reserve-btn {
    letter-spacing: .1em;
    margin: 0 auto;
    text-align: center;
    width: 560px
}

@media (max-width:767px) {
    .lp-online .reservation-belt .inner .reserve-btn {
        width: 100%
    }
}

.lp-online .reservation-belt .inner .reserve-btn a {
    background-color: #ec719e;
    border-radius: 15px;
    box-shadow: 0 8px 0 0 #bb6685;
    color: #fff;
    display: block;
    font-size: 3.6rem;
    letter-spacing: .05em;
    line-height: 1;
    margin: 0 auto;
    max-width: 100%;
    padding: 15px 0;
    position: relative;
    text-decoration: none;
    transition-delay: 0s;
    transition-duration: .25s;
    transition-property: all;
    transition-timing-function: ease-in-out
}

@media (max-width:960px) {
    .lp-online .reservation-belt .inner .reserve-btn a {
        box-shadow: 0 5px 0 0 #bb6685;
        padding: 16px 0
    }
}

@media (max-width:767px) {
    .lp-online .reservation-belt .inner .reserve-btn a {
        box-shadow: 0 5px 0 0 #bb6685;
        padding: 8px 0
    }
}

.lp-online .reservation-belt .inner .reserve-btn a:after {
    background: url(../../assets/img/lp/online/icon_arrow_yellow.png);
    background-size: 16px 30px;
    content: "";
    display: inline-block;
    height: 30px;
    margin-top: -15px;
    position: absolute;
    right: 20px;
    top: 50%;
    width: 16px
}

@media (max-width:960px) {
    .lp-online .reservation-belt .inner .reserve-btn a:after {
        background-size: 8px 15px;
        height: 15px;
        margin-top: -7px;
        right: 16px;
        top: 50%;
        width: 8px
    }
}

@media (max-width:767px) {
    .lp-online .reservation-belt .inner .reserve-btn a:after {
        background-size: 8px 15px;
        height: 15px;
        margin-top: -7px;
        right: 16px;
        top: 50%;
        width: 8px
    }
}

.lp-online .reservation-belt .inner .reserve-btn a span {
    display: block;
    font-size: 3.6rem;
    line-height: 1.3;
    text-align: center
}

@media (max-width:767px) {
    .lp-online .reservation-belt .inner .reserve-btn a span {
        font-size: 2.2rem
    }
}

@media (max-width:320px) {
    .lp-online .reservation-belt .inner .reserve-btn a span {
        font-size: 1.5rem
    }
}

.lp-online .reservation-belt .inner .reserve-btn a span em {
    background-color: #fff;
    border-radius: 50px;
    color: #d84c8b;
    font-size: 2.8rem;
    line-height: 36px;
    margin: 0 0 0 .3em;
    padding: 0 .5em
}

@media (max-width:767px) {
    .lp-online .reservation-belt .inner .reserve-btn a span em {
        font-size: 1.8rem;
        line-height: 24px
    }
}

@media (max-width:320px) {
    .lp-online .reservation-belt .inner .reserve-btn a span em {
        font-size: 1.3rem;
        line-height: 18px
    }
}

.lp-online .reservation-belt .inner .att {
    font-size: 1.4rem;
    line-height: 1.8;
    margin: 0 auto;
    padding: 30px 0 0 30px;
    width: 560px
}

@media (max-width:767px) {
    .lp-online .reservation-belt .inner .att {
        padding: 30px 0 0;
        width: 90%
    }
}

.lp-online .reservation-belt .inner .att li {
    padding: 0 0 0 1em;
    text-indent: -1em
}

.lp-online .reservation-belt .inner .att li em {
    display: block;
    font-size: 1.8rem;
    line-height: 1;
    text-indent: 0
}

@media (max-width:767px) {
    .lp-online .reservation-belt .inner .att li em {
        font-size: 1.6rem;
        letter-spacing: .05em
    }
}

.lp-online .reservation-belt .inner .att li em a {
    color: #323333;
    text-decoration: underline
}

html {
    scroll-padding-top: 108px
}

.ez-toc-debug-messages {
    display: none
}

#catalog .catalog_dtl .popup {
    z-index: 9999
}

.invisible {
    opacity: 0;
    -webkit-transition: all .7s ease;
    -moz-transition: all .7s ease;
    -ms-transition: all .7s ease;
    -o-transition: all .7s ease;
    transition: all .7s ease
}

.visible {
    opacity: 1;
    -webkit-transition: all 1s ease;
    -moz-transition: all 1s ease;
    -ms-transition: all 1s ease;
    -o-transition: all 1s ease;
    transition: all 1s ease
}

.js-fadein {
    display: none
}

.is-footer-fixed {
    height: 100%
}

.js-object-fit {
    font-family: "object-fit: cover;";
    object-fit: cover
}

.js-popup-modal {
    outline: none
}

.no-scroll {
    height: auto
}

.no-scroll,
.no-scroll-wrap {
    -webkit-overflow-scrolling: touch;
    overflow: hidden
}

.no-scroll-footer-fixed {
    height: 100%;
    overflow: hidden
}

.breaking-out {
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw)
}

.section-container {
    padding-left: calc(50vw - 50%);
    padding-right: calc(50vw - 50%)
}

img.breaking-out {
    max-width: 100vw
}

.nowrap {
    display: inline-block;
    white-space: nowrap
}

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

.ai-center {
    -webkit-box-align: center;
    -webkit-align-items: center;
    align-items: center
}

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

.fw-wrap {
    -ms-flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap
}

.is-tab-only-show {
    display: none
}

.is-tab-only-hide {
    display: block
}

.is-sp-m-show,
.is-sp-show,
.is-tab-show {
    display: none
}

.is-sp-m-hide {
    display: block
}

.is-sp-s-show {
    display: none
}

.is-sp-s-hide {
    display: block
}

@media screen and (max-width:1024px) {
    .is-desk-show {
        display: block
    }

    .is-desk-hide {
        display: none
    }

    .is-desk-show-ib {
        display: inline-block
    }
}

@media screen and (max-width:900px) {

    .is-pc-only-show,
    .is-tab-hide {
        display: none
    }

    .is-tab-show {
        display: block
    }
}

@media screen and (max-width:767px) {
    .is-sp-hide {
        display: none
    }

    .is-sp-show {
        display: block
    }
}

@media screen and (max-width:640px) {
    .is-sp-m-show {
        display: block
    }

    .is-sp-m-hide {
        display: none
    }
}

@media screen and (max-width:320px) {
    .is-sp-s-show {
        display: block
    }

    .is-sp-s-hide {
        display: none
    }
}

@media screen and (min-width:768px) and (max-width:900px) {
    .is-tab-only-show {
        display: block
    }

    .is-tab-only-hide {
        display: none
    }
}

.is-vertical-writing {
    -ms-writing-mode: tb-rl;
    -webkit-writing-mode: vertical-rl;
    writing-mode: vertical-rl
}

.r-salon-info .r-salon-main h2 {
    align-items: center
}

.r-salon-info .r-salon-main h2:after {
    background: url(../../assets/img/salon/icon_right_cp.png) no-repeat;
    background-size: 100%;
    color: #6ecec6;
    content: "";
    display: inline-block;
    height: 20px;
    margin-left: .4em;
    width: 20px
}

.r-salon-info-block .r-salon-reserve-btn {
    background: #5cd5e8;
    border: 1px solid #5cd5e8;
    border-radius: 25px;
    color: #fff;
    font-size: 2rem;
    font-weight: 500;
    line-height: 48px;
    position: relative;
    text-align: center;
    width: 295px
}

.r-salon-info-block .r-salon-reserve-btn:hover {
    opacity: .7
}

.r-salon-info-block .r-salon-reserve-btn:after {
    background: url(../../assets/img/salon/icon_cta_btn_b.png) no-repeat;
    background-size: 100%;
    content: "";
    height: 16px;
    position: absolute;
    right: 6%;
    top: 39%;
    width: 8px
}

.r-salon-info .r-salon-info-btn {
    color: #fff;
    display: inline-block;
    float: left;
    font-size: 14px;
    font-size: 1.4rem;
    font-weight: 400;
    height: 40px;
    line-height: 16px;
    position: relative;
    vertical-align: middle;
    width: 100%
}

.r-salon-info .r-salon-info-btn:hover:after {
    background-color: #fff
}

.r-salon-info-block .r-salon-tel-btn {
    color: inherit;
    font-family: Noto Sans JP;
    font-size: 34px;
    font-size: 3.4rem;
    line-height: 50px;
    margin-right: .5em
}

.r-salon-info-block .r-salon-tel-btn:before {
    background: #fff;
    border: 1px solid #262626;
    border-radius: 5px;
    color: #262626;
    content: "電話";
    display: inline-block;
    font-size: 17px;
    font-size: 1.7rem;
    line-height: 1;
    margin-right: 5px;
    padding: 6px 14px;
    vertical-align: .35em
}

.r-salon-info-block .r-salon-tel-btn .phone-icon {
    display: none
}

.r-salon-info-block .r-salon-tel-btn:hover {
    opacity: 1
}

@media (max-width:767px) {
    .r-salon-info .r-salon-main {
        display: inline-block;
        width: 100%
    }

    .r-salon-info .r-salon-info-block {
        display: inline-block;
        margin-left: 10px;
        width: calc(100% - 70px)
    }

    .r-salon-info .r-salon-info-block.pc {
        display: none
    }
}

@media (max-width:480px) {
    .r-salon-info .r-salon-info-btn {
        font-size: 12px;
        font-size: 1.2rem;
        line-height: 20px;
        padding: 10px 0
    }

    .r-salon-info .r-salon-info-btn .icon-phone {
        display: none
    }
}

.r-salon-region-group {
    margin-top: 29px
}

.r-salon-region-group:first-child {
    margin-top: 0
}

.r-salon-region-title {
    font-size: 2.2rem;
    padding: 9px 0 9px 18px
}

.r-salon-pref,
.r-salon-region-title {
    background: #ed80a7;
    color: #fff;
    line-height: 1
}

.r-salon-pref {
    border-radius: 5px;
    font-size: 1.7rem;
    padding: 7px 0;
    text-align: center;
    width: 65px
}

.r-salon-pref-group:not(:last-child) .r-salon-list {
    border-bottom: 1px solid #ed80a7
}

.r-salon-item {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: flex-end;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    justify-content: space-between;
    padding: 25.6px 0
}

.r-salon-item:not(:first-child) {
    border-top: 1px solid #ed80a7
}

.r-salon-info {
    flex-grow: 1;
    width: 100%
}

.r-salon-main {
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex
}

.r-salon-info .r-salon-main a {
    align-items: flex-start;
    color: inherit;
    display: inline-flex;
    text-decoration: none
}

.r-salon-name {
    font-size: 24px;
    font-size: 2.4rem;
    line-height: 1.4;
    margin-left: 10px
}

.r-salon-address {
    color: #262626;
    font-size: 15px;
    font-size: 1.5rem;
    line-height: 1.5;
    margin: 8px 0 2px
}

.r-salon-info-block {
    align-items: flex-start;
    display: flex;
    flex-flow: column
}

.r-salon-btn-wrap {
    width: 245px
}

.r-salon-btn.mod-detail {
    background-color: #04477d;
    border: 1px solid #04477d;
    color: #fff;
    font-weight: 700;
    margin: 0 auto;
    max-width: 185px;
    padding: 15px 10px
}

.r-salon-btn.mod-detail:hover {
    background-color: transparent;
    color: #04477d
}

.r-salon-btn.mod-detail:hover:after {
    background-color: #fff
}

@media screen and (max-width:1200px) {
    .r-salon-info-block .r-salon-reserve-btn {
        font-size: 1.6rem;
        width: 207px
    }
}

@media screen and (max-width:959px) {
    .r-salon-info .r-salon-main h2:after {
        position: static
    }

    .r-salon-pref {
        font-size: 18px;
        font-size: 1.8rem;
        padding: 10px 0;
        width: 100px
    }

    .r-salon-item {
        flex-flow: column
    }

    .r-salon-info {
        width: 100%
    }

    .r-salon-name {
        font-size: 28px;
        font-size: 2.8rem;
        margin-left: 15px
    }

    .r-salon-address {
        font-size: 20px;
        font-size: 2rem;
        margin-top: 15px
    }

    .r-salon-info-block {
        align-items: center;
        flex-flow: row;
        justify-content: center;
        margin-top: 15px;
        width: 100%
    }

    .r-salon-info-block .r-salon-tel-btn {
        background: #ed80a7;
        border-radius: 30px;
        color: #fff;
        font-size: 28px;
        font-size: 2.8rem;
        font-weight: 500;
        line-height: 60px;
        margin-right: 2%;
        max-width: 300px;
        padding-left: 24px;
        position: relative;
        text-align: center;
        width: 49%
    }

    .r-salon-info-block .r-salon-tel-btn:before {
        background: url(../../assets/img/salon/icon_tel.svg) no-repeat 100%;
        border: 0;
        border-radius: 0;
        content: "";
        height: 24.51px;
        left: 9%;
        padding: 0;
        position: absolute;
        top: 30%;
        width: 24.51px
    }

    .r-salon-info-block .r-salon-reserve-btn {
        border-radius: 30px;
        font-size: 22px;
        font-size: 2.2rem;
        line-height: 60px;
        max-width: 300px;
        text-align: center;
        width: 49%
    }

    .r-salon-info-block .r-salon-reserve-btn:after {
        top: 40%
    }

    .r-salon-info-block .r-salon-reserve-btn img {
        height: 28px;
        vertical-align: -.1em
    }

    .r-salon-info-block .r-salon-tel-btn:hover {
        opacity: .7
    }
}

@media screen and (max-width:767px) {
    .r-salon-region-title {
        font-size: 2.4rem
    }

    .r-salon-pref {
        font-size: 16px;
        font-size: 1.6rem;
        padding: 10px 0;
        width: 80px
    }

    .r-salon-item {
        display: block
    }

    .r-salon-name {
        font-size: 24px;
        font-size: 2.4rem
    }

    .r-salon-address {
        font-size: 1.6rem;
        margin-top: 3px
    }

    .r-salon-btn-wrap {
        margin: 20px auto 0;
        width: 300px
    }

    .r-salon-btn.mod-detail {
        background-color: transparent;
        color: #04477d;
        max-width: 100%
    }

    .r-salon-btn.mod-detail:hover {
        background-color: #04477d;
        color: #fff
    }

    .r-salon-btn.mod-detail:hover:after {
        background-color: #04477d
    }

    .r-salon-info-block .r-salon-tel-btn {
        font-size: 18px;
        font-size: 1.8rem;
        line-height: 50px
    }

    .r-salon-info-block .r-salon-tel-btn:before {
        height: 20.51px;
        left: 7%;
        top: 28%;
        width: 20.51px
    }

    .r-salon-info-block .r-salon-reserve-btn {
        font-size: 16px;
        font-size: 1.4rem;
        line-height: 50px
    }

    .r-salon-info-block .r-salon-reserve-btn:after {
        height: 15px;
        width: 7px
    }

    .r-salon-info-block .r-salon-reserve-btn img {
        height: 24px;
        vertical-align: -.1em
    }
}

@media screen and (max-width:480px) {
    .r-salon-region-group {
        margin-top: 6px
    }

    .r-salon-region-group:first-child {
        margin-top: 0
    }

    .r-salon-region-title {
        font-size: 2rem
    }

    .r-salon-pref-group:not(:last-child) .r-salon-list {
        border-bottom: 1px solid #ed80a7
    }

    .r-salon-item {
        padding: 31px 0 26px
    }

    .r-salon-region-group .r-salon-pref-group:first-child .r-salon-item:first-child {
        padding: 19px 0 23px
    }

    .r-salon-item:not(:first-child) {
        border-top: 1px solid #ed80a7
    }

    .r-salon-main {
        display: block
    }

    .r-salon-pref {
        font-size: 1.2rem;
        padding: 7px 5px;
        width: 62px
    }

    .r-salon-name {
        font-size: 2.2rem;
        line-height: 1.3;
        margin-left: 10px
    }

    .r-salon-address {
        font-size: 1.6rem;
        line-height: 1.6
    }

    .r-salon-btn-wrap {
        margin-top: 15px
    }

    .r-salon-btn.mod-detail {
        font-size: 1.4rem;
        padding: 16px 10px
    }

    .r-salon-info .r-salon-pref {
        height: auto;
        line-height: 1;
        width: 55px
    }

    .r-salon-info-block {
        margin-top: 11px
    }

    .r-salon-info-block .r-salon-reserve-btn img {
        height: 24px;
        height: 5vw
    }
}

@media screen and (max-width:400px) {

    .r-salon-info-block .r-salon-reserve-btn,
    .r-salon-info-block .r-salon-tel-btn {
        line-height: 12.8vw
    }
}

@media screen and (max-width:360px) {
    .r-salon-info-block .r-salon-tel-btn {
        font-size: 1.6rem;
        padding-left: 20px
    }

    .r-salon-info-block .r-salon-tel-btn:before {
        height: 16px;
        top: 31%;
        width: 16px
    }

    .r-salon-info-block .r-salon-reserve-btn {
        font-size: 1.3rem
    }

    .r-salon-info-block .r-salon-reserve-btn:after {
        top: 38%
    }
}

@media screen and (max-width:320px) {
    .r-salon-info-block .r-salon-tel-btn {
        padding-left: 23px
    }
}

/*# sourceMappingURL=main.css.map*/