@charset "UTF-8";

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 {
    margin: 0;
    padding: 0;
    border: 0;
    font: inherit;
    font-size: 100%;
    vertical-align: baseline
}

ol,
ul {
    list-style: none
}

caption,
td,
th {
    text-align: left;
    font-weight: 400;
    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
}

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

:focus {
    outline: 0
}

html {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    font-size: 62.5%;
    overflow-y: scroll;
    line-height: 1;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    -webkit-text-size-adjust: 100%;
    -ms-text-size-adjust: 100%
}

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

.hover:hover {
    opacity: .7
}

body {
    font-family: -apple-system, BlinkMacSystemFont, 游ゴシック, Yu Gothic, YuGothic, ヒラギノ角ゴ Pro W3, Hiragino Kaku Gothic ProN, Noto Sans Japanese, Noto Sans CJK JP, メイリオ, Meiryo, sans-serif;
    color: #333;
    background-color: #fff;
    font-size: 16px;
    font-size: 1.6rem;
    scroll-behavior: smooth;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    -webkit-text-size-adjust: 100%;
    -ms-text-size-adjust: 100%
}

a {
    word-break: break-all;
    text-decoration: none;
    color: #ec407a
}

a,
a:hover {
    -webkit-transition: all .15s linear;
    transition: all .15s linear
}

#bcn .in,
.contents,
.hd .in,
.mv .in,
.wrap,
footer .in {
    width: 960px;
    margin-right: auto;
    margin-left: auto
}

.prpl {
    padding-right: 20px;
    padding-left: 20px
}

.photo {
    text-align: center;
    line-height: 0 !important
}

.hd .in .pc_nav ul:last-child li a,
.top_news dl dd a,
.under_bar_hover a,
footer .in nav ul li a {
    color: #333;
    vertical-align: middle;
    position: relative;
    overflow: hidden;
    -webkit-transform: perspective(1px) translateZ(0);
    transform: perspective(1px) translateZ(0)
}

.hd .in .pc_nav ul:last-child li a:before,
.top_news dl dd a:before,
.under_bar_hover a:before,
footer .in nav ul li a:before {
    content: "";
    position: absolute;
    z-index: 2;
    left: 50%;
    right: 50%;
    bottom: 0;
    height: 1px;
    background-color: rgba(51, 51, 51, .7);
    -webkit-transition-property: left, right;
    transition-property: left, right;
    -webkit-transition-duration: .3s;
    transition-duration: .3s;
    -webkit-transition-timing-function: linear;
    transition-timing-function: linear
}

.hd .in .pc_nav ul:last-child li a:active:before,
.hd .in .pc_nav ul:last-child li a:focus:before,
.hd .in .pc_nav ul:last-child li a:hover:before,
.top_news dl dd a:active:before,
.top_news dl dd a:focus:before,
.top_news dl dd a:hover:before,
.under_bar_hover a:active:before,
.under_bar_hover a:focus:before,
.under_bar_hover a:hover:before,
footer .in nav ul li a:active:before,
footer .in nav ul li a:focus:before,
footer .in nav ul li a:hover:before {
    left: 0;
    right: 0
}

.under_bar_hover02 span {
    color: #333;
    vertical-align: middle;
    position: relative;
    overflow: hidden;
    -webkit-transform: perspective(1px) translateZ(0);
    transform: perspective(1px) translateZ(0);
    display: inline-block
}

.under_bar_hover02 span:after {
    content: "";
    position: absolute;
    z-index: 2;
    left: 50%;
    right: 50%;
    bottom: 0;
    height: 1px;
    background-color: rgba(51, 51, 51, .7);
    -webkit-transition-property: left, right;
    transition-property: left, right;
    -webkit-transition-duration: .3s;
    transition-duration: .3s;
    -webkit-transition-timing-function: linear;
    transition-timing-function: linear
}

.under_bar_hover02 span:active:after,
.under_bar_hover02 span:focus:after,
.under_bar_hover02 span:hover:after {
    left: 0;
    right: 0
}

.sp {
    display: none
}

.pc_mv_1024 {
    display: none
}

.contents {
    margin-bottom: 80px
}

header,
section {
    margin-bottom: 56px
}

section:last-child {
    margin-bottom: 0
}

.post_box:not(:last-child),
.voice_box:not(:last-child) {
    margin-bottom: 56px
}

.wp-pagenavi {
    margin-top: 56px
}

.mt_base,
.point {
    margin-top: 48px
}

.mb_base,
.point .box {
    margin-bottom: 48px
}

.shokai .box:not(:last-child) {
    margin-bottom: 1.6em
}

.top_about .desc,
.top_toukei .desc,
.top_voice .desc {
    margin-bottom: 32px
}

.bg_cream,
.shokai {
    background-color: #fffdef
}

.shokai {
    padding: 32px 24px;
    border-radius: .4em;
    -webkit-box-shadow: 0 4px 0 0 #ecead8;
    box-shadow: 0 4px 0 0 #ecead8
}

.top_voice .box {
    padding: 32px 24px
}

.desc,
.txt {
    font-size: 16px;
    font-size: 1.6rem
}

.desc {
    line-height: 1.6
}

.fc_pink {
    color: #ec407a
}

.bg_pink {
    background-color: #f48fb1;
    color: #fff;
    display: inline-block;
    padding: 0 .2em;
    margin: 0 .1em
}

span.fs60 {
    font-size: 60%;
    margin-left: .1em
}

span.fs120 {
    font-size: 120%;
    margin-left: .1em
}

span.fs180 {
    font-size: 180%;
    margin-left: -.2em
}

.hd {
    -webkit-box-shadow: 0 0 10px 0 rgba(0, 0, 0, .15);
    box-shadow: 0 0 10px 0 rgba(0, 0, 0, .15)
}

.hd .in {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    width: 1024px;
}

.hd .in .logo {
    width: 243px;
    line-height: 0
}

.hd .in .logo a:hover {
    opacity: .6
}

.hd .in .pc_nav {
/*    width: 669px;*/
    width: 840px;
    font-size: 16px;
    font-size: 1.6rem
}

.hd .in .pc_nav ul {
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between
}

.hd .in .pc_nav ul:first-child {
    font-size: 85%;
    margin-bottom: 1.2em
}

.hd .in .pc_nav ul:first-child li {
    text-align: center;
    line-height: 1.3
}

.hd .in .pc_nav ul:first-child li:not(:last-child) {
    border-right: 1px solid #fff
}

.hd .in .pc_nav ul:first-child li:first-child {
    width: 20%
}

.hd .in .pc_nav ul:first-child li:first-child a {
    background-color: #ec407a
}

.hd .in .pc_nav ul:first-child li:first-child a:hover {
    background-color: rgba(236, 64, 122, .6)
}

.hd .in .pc_nav ul:first-child li:nth-child(2) {
    width: 20%
}

.hd .in .pc_nav ul:first-child li:nth-child(2) a {
    background-color: #223a70
}

.hd .in .pc_nav ul:first-child li:nth-child(2) a:hover {
    background-color: rgba(34, 58, 112, .6)
}

.hd .in .pc_nav ul:first-child li:nth-child(3) {
    width: 30%
}

.hd .in .pc_nav ul:first-child li:nth-child(3) a {
    background-color: #bdbdbd
}

.hd .in .pc_nav ul:first-child li:nth-child(3) a:hover {
    background-color: hsla(0, 0%, 74%, .6)
}

.hd .in .pc_nav ul:first-child li:nth-child(4) {
    width: 30%
}

.hd .in .pc_nav ul:first-child li:nth-child(4) a {
    background-color: #f48fb1
}

.hd .in .pc_nav ul:first-child li:nth-child(4) a:hover {
    background-color: rgba(244, 143, 177, .6)
}

.hd .in .pc_nav ul:first-child li a {
    padding: .6em 0;
    display: block;
    color: #fff;
    font-weight: 700
}

.hd .in .pc_nav ul:last-child {
    margin-bottom: 1.2em
}

.hd .in .pc_nav ul:last-child li {
    text-align: center;
    position: relative;
    width: 20%;
    width: unset;
}

.hd .in .pc_nav ul:last-child li:not(:last-child):after {
    position: absolute;
    top: 50%;
    right: 0;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    content: "";
    width: 1px;
    height: 1em;
    vertical-align: -.1em;
    background-color: #ec407a;
    display: inline-block
}

.hd .in .pc_nav ul:last-child li a {
    width: 100%;
    color: #333
}

.mv {
    position: relative;
    overflow: hidden
}

.mv .mv_img {
    width: 1280px;
    position: absolute;
    top: 0;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    z-index: -1;
    line-height: 0
}

.mv .in {
    position: relative
}

.mv .in .in_in {
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    left: 0
}

.mv .mv_list {
    display: inline-block;
    border: 4px double #f48fb1;
    font-size: 24px;
    font-size: 2.4rem;
    line-height: 1.4;
    font-weight: 700
}

.mv .mv_list ul {
    counter-reset: a;
    background-color: hsla(0, 0%, 100%, .75)
}

.mv .mv_list ul li {
    padding: .3em 1em
}

.mv .mv_list ul li:before {
    content: counter(a, decimal);
    counter-increment: a;
    font-family: Times New Roman, Times, serif;
    margin-right: .3em;
    font-size: 180%;
    text-align: center;
    font-style: italic;
    vertical-align: -.05em;
    display: inline-block;
    color: #f48fb1
}

.mv .mv_list ul li:not(:last-child) {
    border-bottom: 1px dotted #ccc
}

.home .mv,
.home .mv .in {
    height: 598px
}

.home h1 {
    font-family: ＭＳ\ Ｐ明朝, MS PMincho, ヒラギノ明朝 Pro W3, Hiragino Mincho Pro, serif;
    font-size: 54px;
    font-size: 5.4rem;
    line-height: 1.2;
    margin-bottom: .6em
}

.other .mv,
.other .mv .in {
    height: 240px
}

.other .in_in {
    text-align: center;
    width: 100%
}

.other h1 {
    font-size: 39px;
    font-size: 3.9rem;
    line-height: 1.3;
    font-weight: 700;
    width: 100%
}

.other h1 span {
    font-size: 70%
}

#bcn {
    background-color: #f5f5f5;
    padding: 1em 0;
    font-size: 90%
}

#bcn .in {
    line-height: 1.4
}

#bcn .in a {
    position: relative;
    overflow: hidden;
    -webkit-transform: perspective(1px) translateZ(0);
    transform: perspective(1px) translateZ(0)
}

#bcn .in a:before {
    content: "";
    position: absolute;
    z-index: 2;
    left: 50%;
    right: 50%;
    bottom: 0;
    height: 1px;
    background-color: rgba(236, 64, 122, .7);
    -webkit-transition-property: left, right;
    transition-property: left, right;
    -webkit-transition-duration: .3s;
    transition-duration: .3s;
    -webkit-transition-timing-function: linear;
    transition-timing-function: linear
}

#bcn .in a:active:before,
#bcn .in a:focus:before,
#bcn .in a:hover:before {
    left: 0;
    right: 0
}

#top-head.fixed {
    z-index: 5;
    width: 100%;
    position: fixed;
    background-color: rgba(244, 143, 177, .9);
    -webkit-transition: .3s ease;
    transition: .3s ease;
    padding: 1.2em 0;
    font-weight: 700
}

#top-head.fixed .logo {
    display: none
}

#top-head.fixed .pc_nav {
    width: 100%
}

#top-head.fixed .pc_nav ul li:after {
    background-color: #fff
}

#top-head.fixed .pc_nav ul li a {
    color: #fff
}

#top-head.fixed .pc_nav ul li a:before {
    background-color: #fff
}

#top-head.fixed .pc_nav ul:first-child {
    display: none
}

#top-head.fixed .pc_nav ul:last-child {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    margin-bottom: 0
}

#top-head.fixed .pc_nav ul:last-child li:not(:last-child) a:after {
    margin-left: 1.4em;
    margin-right: 1.4em
}

.drawer-menu,
.menu-btn {
    display: none
}

.bar,
.fixed .bar,
.side-open .bar {
    background-color: #333
}

#sp_fix_wrap {
    display: none
}

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

.contents main {
    width: 620px
}

.contents .side {
    width: 315px
}

.btn02,
.btn_wrap {
    margin-top: 1.6em
}

.btn_wrap {
    margin-right: auto;
    margin-left: auto;
    width: 408px;
    font-size: 120%;
    font-weight: 700
}

.btn_wrap {
    margin: 20px auto 40px;
}

.btn_wrap .btn {
    position: relative;
    width: 100%;
    padding-top: 14.7059%
}

.btn_wrap .btn a {
    position: absolute;
    top: 0;
    right: 0;
    width: 100%;
    height: 100%;
    display: block;
    background-color: #ec407a;
    color: #fff;
    border-radius: .3em;
    border: 1px solid #ec407a
}

.btn_wrap .btn a:hover {
    background-color: #fff;
    color: #ec407a
}

.btn_wrap span {
    position: absolute;
    top: 50%;
    left: 0;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    text-align: center;
    width: 100%;
    display: block
}

.btn_wrap span:after {
    content: "\F105";
    font-family: FontAwesome;
    font-size: 90%;
    margin-left: .5em
}

.btn02 {
    text-align: right;
    line-height: 1.4 !important
}

.btn02 a {
    padding: .4em 1.6em;
    display: inline-block;
    background-color: #ec407a;
    color: #fff;
    border-radius: .3em;
    border: 1px solid #ec407a
}

.btn02 a:after {
    content: "\F105";
    font-family: FontAwesome;
    font-size: 90%;
    margin-left: .5em
}

.btn02 a:hover {
    background-color: #fff;
    color: #ec407a
}

.btn_wrap_sp {
    margin-bottom: 1.6em
}

h2 {
    font-size: 27px;
    font-size: 2.7rem;
    font-weight: 700;
    line-height: 1.4
}

.editor .single_news h1,
.h2_ub {
    border-bottom: 4px double #ec407a;
    padding-bottom: .4em;
    margin-bottom: .8em
}

.editor .single_news .top_news h1,
.top_news .editor .single_news h1,
.top_news .h2_ub {
    border-bottom: 4px double #ccc;
    text-align: center;
    letter-spacing: -.01em
}

.h2_icon {
    position: relative;
    padding-left: 4em;
    margin-bottom: 1em
}

.h2_icon:before {
    position: absolute;
    top: 50%;
    left: 0;
    content: "\4EF2\4EBA\58EB\A\30D4\30C3\30AF\30A2\30C3\30D7";
    white-space: pre;
    font-size: 50%;
    text-align: center;
    line-height: 1.2;
    display: block;
    width: 7em;
    height: 7em;
    padding-top: 2.25em;
    background-color: #ec407a;
    color: #fff;
    border-radius: 50%;
    -webkit-box-shadow: 0 0 0 2px #fff, 0 0 0 3px #ec407a;
    box-shadow: 0 0 0 2px #fff, 0 0 0 3px #ec407a;
    -webkit-transform: translateY(-50%) rotate(-15deg);
    transform: translateY(-50%) rotate(-15deg)
}

.h2_db {
    position: relative;
    text-align: center;
    color: #ec407a;
    margin-bottom: .8em
}

.h2_db br {
    display: none
}

.h2_db span {
    background-color: #fff;
    display: inline-block;
    padding: 0 1em
}

.h2_db:before {
    content: "";
    display: block;
    width: 100%;
    height: 4px;
    border-bottom: 4px double #ec407a;
    position: absolute;
    top: 50%;
    left: 0;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    z-index: -1
}

.h2_heart {
    font-size: 21px;
    font-size: 2.1rem;
    font-weight: 700;
    line-height: 1.4;
    background-color: #f48fb1;
    color: #fff;
    width: 90%;
    padding: .4em 1em .4em .6em;
    margin-bottom: 0;
    position: relative;
    z-index: 1;
    padding-left: 3.6em;
    min-height: 46px
}

.h2_heart:before {
    content: "STEP";
    position: absolute;
    top: 0;
    left: 1.2em;
    font-size: 60%;
    z-index: 3
}

.h2_heart .no {
    width: 2.2em;
    height: 2.2em;
    line-height: 2.8em;
    padding-left: .65em;
    font-size: 160%;
    font-style: italic;
    font-family: Times New Roman, Times, serif;
    background-image: url(img/heart.svg);
    background-repeat: no-repeat;
    background-size: auto 100%;
    top: -.5em;
    left: 0;
    z-index: 2
}

.h2_heart .no,
.h2_heart:after {
    display: block;
    position: absolute
}

.h2_heart:after {
    top: 50%;
    right: -1em;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    content: "";
    width: 0;
    height: 0;
    border-top: 23px solid #f48fb1;
    border-bottom: 23px solid #f48fb1;
    border-right: 1em solid transparent;
    border-left: 1em solid transparent
}

h3 {
    font-weight: 700;
    font-size: 21px;
    font-size: 2.1rem;
    line-height: 1.4
}

.h3_heart {
    background-color: #f48fb1;
    color: #fff;
    padding: .4em 1em .4em .6em;
    margin-bottom: 1em;
    position: relative;
    z-index: -2
}

.h3_heart:before {
    content: "Point";
    margin-right: 3.5em
}

.h3_heart .no {
    width: 2.2em;
    height: 2.2em;
    line-height: 2.35em;
    padding-left: .65em;
    font-size: 160%;
    font-style: italic;
    font-family: Times New Roman, Times, serif;
    background-image: url(img/heart.svg);
    background-repeat: no-repeat;
    background-size: auto 100%;
    top: -.5em;
    left: 1.95em;
    z-index: -1
}

.h3_heart .no,
.h3_heart:after {
    display: block;
    position: absolute
}

.h3_heart:after {
    top: 50%;
    right: 0;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    content: "";
    width: 0;
    height: 0;
    border-top: 1.8em solid transparent;
    border-bottom: 1.8em solid transparent;
    border-right: 1em solid #fff;
    border-left: 1em solid transparent
}

.h3_no {
    font-size: 18px;
    font-size: 1.8rem;
    background-color: #f48fb1;
    color: #fff;
    padding: .4em 1em .4em 2.4em;
    margin-bottom: 1em;
    position: relative;
    z-index: -2
}

.h3_no .no {
    font-size: 180%;
    font-style: italic;
    font-family: Times New Roman, Times, serif;
    left: .4em;
    -webkit-transform: translateY(-55%);
    transform: translateY(-55%)
}

.h3_no .no,
.h3_no:after {
    position: absolute;
    top: 50%
}

.h3_no:after {
    right: 0;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    content: "";
    width: 0;
    height: 0;
    display: block;
    border-top: 1.8em solid transparent;
    border-bottom: 1.8em solid transparent;
    border-right: 1em solid #fff;
    border-left: 1em solid transparent
}

.editor .single_news h2,
.editor .single_news h3,
.h3_deco {
    font-size: 18px;
    font-size: 1.8rem;
    padding-bottom: .4em;
    margin-bottom: .8em;
    border-bottom: 1px solid #ccc;
    font-weight: 700;
    position: relative;
    padding-left: 1em
}

.editor .single_news h2:before,
.editor .single_news h3:before,
.h3_deco:before {
    content: "";
    vertical-align: -.3em;
    height: 100%;
    width: .3em;
    margin-right: .4em;
    background-color: #f48fb1;
    display: inline-block;
    position: absolute;
    top: 50%;
    left: 0;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%)
}

.editor .single_news .top_voice h2,
.editor .single_news .top_voice h3,
.top_voice .editor .single_news h2,
.top_voice .editor .single_news h3,
.top_voice .h3_deco,
h4.h3_deco {
    margin-bottom: 0;
    border-bottom: none
}

.editor .single_news .top_voice h2:before,
.editor .single_news .top_voice h3:before,
.top_voice .editor .single_news h2:before,
.top_voice .editor .single_news h3:before,
.top_voice .h3_deco:before {
    content: "";
    height: 1em;
    top: 0;
    left: 0;
    -webkit-transform: translateY(0);
    transform: translateY(0);
    position: static;
    vertical-align: -.1em
}

.h_ud {
    padding-bottom: .4em;
    margin-bottom: .8em;
    border-bottom: 1px solid #ccc;
    font-size: 18px;
    font-size: 1.8rem
}

.shokai h3 {
    font-size: 24px;
    font-size: 2.4rem;
    font-weight: 700;
    line-height: 1.4;
    margin-bottom: .15em
}

.editor .date {
    background-color: #f48fb1;
    display: inline-block;
    padding: .2em .4em;
    line-height: 1;
    color: #fff
}

.editor img {
    line-height: 0
}

.editor .single_news h2 + p.photo,
.editor h2.h3_deco + p.photo {
    margin-top: 2em
}

.editor h2:not(:first-child),
.editor h3:not(:first-child) {
    margin-top: 2.4em
}

.editor h4 {
    margin-top: 2em
}

.editor .bold {
    font-weight: 700
}

.editor p {
    line-height: 1.8
}

.editor ol {
    list-style-type: decimal
}

.editor ul {
    list-style-type: circle
}

.editor ol,
.editor ul {
    -webkit-margin-before: 1em;
    -webkit-margin-after: 1em;
    -webkit-margin-start: 0;
    -webkit-margin-end: 0;
    -webkit-padding-start: 1.6em;
    line-height: 1.6
}

.editor ol li:not(:last-child),
.editor ul li:not(:last-child) {
    margin-bottom: .4em
}

.editor .photo:not(:last-child),
.editor .wp-caption:not(:last-child),
.editor dl:not(:last-child),
.editor p:not(:last-child),
.editor table:not(:last-child) {
    margin-bottom: 1.6em
}

.editor .video:not(:last-child) {
    margin-bottom: 2.4em
}

.editor .mb1 {
    margin-bottom: 1em !important
}

.editor .box {
    background-color: #f5f5f5;
    position: relative;
    margin-top: -1.5em;
    padding: 40px 24px 32px
}

.editor .box .btn02 {
    text-align: center
}

.editor .arrow {
    margin-bottom: 0 !important
}

.editor .arrow:before {
    content: "\F107";
    font-family: FontAwesome;
    color: #bdbdbd;
    font-size: 250%;
    text-align: center;
    display: block
}

.editor table {
    width: 100%
}

.editor table th {
    font-weight: 700;
    text-align: center;
    width: 20%;
    background-color: #fedee9;
    padding: 1em 0
}

.editor table td {
    width: 80%;
    background-color: #fdf1f5;
    padding: 1em;
    line-height: 1.4
}

.editor table .mtd {
    background-color: #f59bb9;
    color: #fff;
}

.editor table .etd {
    background-color: #feffd2;
}

.editor .video {
    position: relative;
    margin-left: auto;
    margin-right: auto;
    width: 100%;
    padding-top: 56.25%
}

.editor .video iframe {
    position: absolute;
    top: 0;
    right: 0;
    width: 100%;
    height: 100%
}

.editor .tc55 {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap
}

.editor .tc55 .block {
    width: 298px;
    margin-top: 1.6em
}

.editor .tc55 .block:nth-child(odd) {
    margin-right: 24px
}

.editor .tc55 .block .photo {
    text-align: center;
    margin-bottom: 1em
}

.editor .h3_deco + .h3_no,
.editor .single_news h2 + .h3_no,
.editor .single_news h3 + .h3_no {
    margin-top: 1em
}

.editor .single_news h1 {
    font-size: 27px;
    font-size: 2.7rem;
    font-weight: 700;
    line-height: 1.4
}

.editor .single_news h2 {
    font-size: 24px;
    font-size: 2.4rem
}

.editor .single_news h3:before {
    background-color: #999
}

.editor .single_news h4 {
    font-size: 110%;
    font-weight: 700;
    margin-bottom: .8em
}

.editor .single_news strong {
    font-weight: 700
}

.editor .single_news em {
    font-style: italic
}

.shokai .box {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between
}

.shokai .box:nth-child(odd) {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse
}

.shokai .box .photo {
    width: 26.2238%
}

.shokai .box .detail {
    width: 69.5804%;
    background-color: #fff;
    border: 1px solid #ec407a;
    border-radius: .2em;
    padding: 12px
}

.shokai .box .detail .name {
    display: inline-block;
    padding: .4em;
    font-size: 80%;
    color: #fff;
    background-color: #f48fb1;
    margin-bottom: 1em
}

.shokai .box .detail .desc {
    font-size: 90%
}

.top_voice .box {
    width: 98% !important;
    height: 98% !important;
    margin: 1% !important;
    background-image: url(img/bg_voice.jpg);
    background-repeat: repeat;
    -webkit-box-shadow: 0 0 10px 0 rgba(0, 0, 0, .2);
    box-shadow: 0 0 10px 0 rgba(0, 0, 0, .2)
}

.top_voice .box .photo {
    float: left;
    margin-right: 24px;
    margin-bottom: 16px;
    width: 25.5245%;
    margin-right: 4.1958%;
    margin-bottom: 2.7972%
}

.top_voice .box .desc {
    font-size: 90%;
    margin-bottom: 0
}

.slick-dots {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    margin-top: 1em
}

.slick-dots li {
    margin: 0 .5em
}

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

.slick-dots button {
    border: none;
    font-size: 0;
    width: 16px;
    height: 16px;
    display: block;
    border-radius: 50%;
    background-color: #f5f5f5;
    cursor: pointer;
    -webkit-box-shadow: 0 0 3px 0 rgba(0, 0, 0, .25);
    box-shadow: 0 0 3px 0 rgba(0, 0, 0, .25)
}

.slick-dots button,
.slick-dots button:hover {
    -webkit-transition: .3s linear;
    transition: .3s linear
}

.slick-dots button:hover {
    background-color: #f48fb1
}

#attachment_4606 {
    position: relative;
    width: 100% !important
}

#attachment_4606 .wp-caption-text {
    position: absolute;
    top: 50%;
    left: 35%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    font-size: 27px;
    font-size: 2.7rem;
    font-weight: 700
}

.map_wrap {
    width: 81.25%;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 2.4em
}

.map {
    position: relative;
    padding-top: 100%;
    width: 100%;
    padding-top: 106.4516%
}

.map a:hover {
    opacity: .7
}

.map .map_in {
    top: 0;
    right: 0;
    width: 100%;
    height: 100%
}

.map .map_in,
.map div {
    position: absolute
}

.map .map_hokkaido {
    top: 0;
    right: 0;
    width: 27.2581%
}

.map .map_tohoku {
    top: 19.697%;
    right: 7.0968%;
    width: 20.1613%
}

.map .map_kanto {
    top: 46.9697%;
    right: 7.0968%;
    width: 20.1613%
}

.map .map_tokai {
    top: 36.6667%;
    right: 24.0323%;
    width: 26.9355%
}

.map .map_kinki {
    top: 47.8788%;
    right: 41.7742%;
    width: 19.5161%
}

.map .map_chugoku {
    top: 47.8788%;
    right: 61.9355%;
    width: 15.1613%
}

.map .map_shikoku {
    top: 63.4848%;
    right: 59.1935%;
    width: 17.9032%
}

.map .map_kyushu {
    top: 63.4848%;
    right: 77.9032%;
    width: 22.0968%
}

#boxer {
    max-width: 480px !important;
    width: 35% !important
}

.boxer-loading {
    z-index: 99 !important
}

.boxer-content .caption {
    font-size: 130%;
    text-align: center;
    border-bottom: 1px solid #ec407a;
    margin-top: .4em;
    margin-bottom: .8em;
    padding-bottom: .5em;
    font-weight: 700
}

.boxer-content .caption a {
    color: #333;
    -webkit-transition: .3s linear;
    transition: .3s linear
}

.boxer-content .caption a:hover {
    -webkit-transition: .3s linear;
    transition: .3s linear;
    opacity: .6
}

.boxer-content .caption a:before {
    content: "\F0DA";
    font-family: FontAwesome;
    font-size: 80%;
    color: #ec407a;
    margin-right: .4em
}

.boxer-content ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    font-size: 120%
}

.boxer-content ul li {
    margin-bottom: 1em;
    margin-right: 1.2em
}

.boxer-content ul li:before {
    content: "\F0DA";
    font-family: FontAwesome;
    font-size: 80%;
    color: #ec407a;
    margin-right: .4em
}

.boxer-content ul li a {
    color: #333;
    -webkit-transition: .3s linear;
    transition: .3s linear
}

.boxer-content ul li a:hover {
    -webkit-transition: .3s linear;
    transition: .3s linear;
    opacity: .6
}

.faq dl {
    border-top: 1px dotted #ccc;
    border-bottom: 1px dotted #ccc;
    padding: .2em 0;
    overflow: hidden
}

.faq dl dt:before {
    content: "Q";
    font-weight: 400
}

.faq dl dd:before {
    content: "A"
}

.faq dl dd,
.faq dl dt {
    position: relative;
    min-height: 56px
}

.faq dl dd:before,
.faq dl dt:before {
    font-family: Times New Roman, Times, serif;
    position: absolute;
    top: 50%;
    font-size: 160%;
    left: -1.3em;
    color: #fff;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    display: block;
    z-index: 2
}

.faq dl dt {
    padding: 1em;
    border-left: 3em solid #57a4ef;
    font-weight: 700;
    line-height: 1.4
}

.faq dl dd {
    border-top: 1px dotted #ccc;
    border-left: 3em solid #ee578a;
    padding: 1em;
    line-height: 1.8
}

.top_news dl {
    position: relative;
    font-size: 16px;
    font-size: 1.6rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
}

.top_news dl a {
    color: #333
}

.top_news dl:not(:last-child) {
    margin-bottom: 1em
}

.top_news dl dt {
    width: 128px;
    background-color: #fce4ec;
    text-align: center;
    color: #333;
    font-weight: 700;
    padding: .5em 0;
    margin-right: 20px
}

.top_news dl dd {
    line-height: 1.4;
    width: 472px
}

.top_news dl dd time {
    margin-right: 1em
}

.post_box a {
    color: #333;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between
}

.post_box a .photo {
    width: 190px
}

.post_box a .detail {
    position: relative;
    width: 414px
}

.post_box a .detail .decs {
    line-height: 1.6
}

.post_box a .detail .decs br {
    display: none
}

pre {
    white-space: pre-wrap;
    line-height: 1.8
}

.post_box a .name {
    border-bottom: 1px solid #ccc;
    margin-bottom: .4em;
    padding-bottom: .4em
}

.add {
    color: #333;
    margin-bottom: 1em;
    position: relative;
    padding-left: 4em
}

.add:before {
    content: "\4F4F\6240";
    color: #fff;
    padding: .3em 0;
    display: inline-block;
    margin-right: .4em;
    background-color: #f48fb1;
    position: absolute;
    left: 0;
    top: 0
}

.post_box a .name:before {
    background-color: #ec407a
}

.post_nav .name:before {
    background-color: #f48fb1
}

.name {
    color: #333;
    margin-top: .5em
}

.name:before {
    content: "\4EF2\4EBA\540D";
    color: #fff;
    padding: .3em 0;
    margin-right: .4em
}

.more,
.name:before {
    display: inline-block
}

.more {
    -webkit-transition: .3s linear;
    transition: .3s linear;
    border: 2px solid #f48fb1;
    line-height: 1 !important;
    color: #f48fb1;
    margin-bottom: 0
}

.more:after {
    content: "\F105";
    font-family: FontAwesome;
    margin-left: .3em
}

.post_box a .more_wrap {
    text-align: right
}

.post_box a .more {
    margin-top: 1em;
    padding: .4em .6em
}

.post_nav .more {
    padding: .3em .4em;
    margin-top: 1em
}

.post_box a:hover .more,
.post_nav a:hover .more {
    -webkit-transition: .3s linear;
    transition: .3s linear;
    background-color: #f48fb1;
    color: #fff !important
}

.post_nav .add,
.post_nav .name {
    margin-bottom: .4em !important;
    line-height: 1.4
}

.post_nav .add:before,
.post_nav .name:before {
    line-height: 1;
    width: 3.6em;
    text-align: center
}

.post_nav a {
    min-height: 96px
}

.more_wrap {
    text-align: right
}

.voice_box .in .photo {
    float: left;
    width: 146px;
    margin-right: 24px;
    margin-bottom: 16px
}

.voice_box .in .detail p {
    line-height: 1.8
}

.editor .single_news .voice_box h2 + .in,
.editor .single_news .voice_box h3 + .in,
.voice_box .editor .single_news h2 + .in,
.voice_box .editor .single_news h3 + .in,
.voice_box .h3_deco + .in {
    margin-top: 1.6em
}

.single .prof {
    margin-bottom: 2.4em
}

.prof table .photo {
    padding: 0 !important;
    width: 190px;
    background-color: #fff
}

.prof table .photo p {
    line-height: 0;
    margin-right: 16px
}

.prof table th {
    width: 100px;
    padding: .3em 0
}

.prof table .td {
    width: 314px;
    padding: .3em .6em
}

.prof table td,
.prof table th {
    border: none !important
}

.prof table .td02 {
    width: 414px;
    color: #f48fb1;
    text-align: center;
    padding: .4em 0 0 !important;
    background-color: #fff !important
}

.prof table .td02 .in {
    font-weight: 700;
    -webkit-transition: .3s linear;
    transition: .3s linear;
    border: 2px solid #f48fb1;
    display: block;
    padding: .4em 1em;
    border-radius: 1.8em;
    -webkit-box-shadow: 0 2px 0 #f48fb1;
    box-shadow: 0 2px 0 #f48fb1
}

.prof table .td02 .in:after {
    content: "\F105";
    font-family: FontAwesome;
    margin-left: .3em
}

a:hover .prof table .td02 .in {
    -webkit-transition: .3s linear;
    transition: .3s linear;
    background-color: #f48fb1;
    color: #fff
}

.wpcf7 .wpcf7-list-item {
    margin-left: 0 !important
}

.wpcf7 .wpcf7-list-item input[type=checkbox] {
    cursor: pointer;
    -webkit-transition: .15s linear;
    transition: .15s linear
}

.wpcf7 .wpcf7-list-item input[type=checkbox]:hover {
    opacity: .6;
    -webkit-transition: .15s linear;
    transition: .15s linear
}

.wpcf7 .wpcf7-list-item:not(:last-child) {
    margin-right: 1em
}

.wpcf7 .wpcf7-form-control-wrap {
    display: block;
    margin-top: .3em
}

.wpcf7 .wpcf7-form-control-wrap input[type=email],
.wpcf7 .wpcf7-form-control-wrap input[type=text] {
    border-style: none;
    width: 100%;
    border: 1px solid #eee;
    padding: 0 .6em;
    height: 32px
}

.wpcf7 textarea {
    border-style: none;
    width: 100%;
    border: 1px solid #eee;
    padding: .6em;
    height: 240px;
    resize: vertical
}

.wpcf7 input[type=email],
.wpcf7 input[type=submit],
.wpcf7 input[type=text] {
    font-size: 16px;
    font-size: 1.6rem
}

.wpcf7 input[type=submit] {
    border-radius: 0;
    -webkit-box-sizing: content-box;
    -webkit-appearance: button;
    -moz-appearance: button;
    appearance: button;
    border: none;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    cursor: pointer;
    padding: .4em 1em;
    background-color: #ec407a;
    text-align: center;
    color: #fff;
    border: 1px solid #ec407a;
    -webkit-transition: .15s linear;
    transition: .15s linear
}

.wpcf7 input[type=submit]:hover {
    background-color: #fff;
    color: #ec407a;
    -webkit-transition: .15s linear;
    transition: .15s linear
}

.wpcf7 input[type=submit]::-webkit-search-decoration {
    display: none
}

.wpcf7 input[type=submit]::focus {
    outline-offset: -2px
}

.wp-pagenavi {
    line-height: 1;
    text-align: center;
    font-size: 90%
}

.wp-pagenavi a,
.wp-pagenavi span {
    margin-right: .25em
}

.wp-pagenavi a:last-child,
.wp-pagenavi span:last-child {
    margin-right: 0
}

.wp-pagenavi .current,
.wp-pagenavi .pages,
.wp-pagenavi a {
    display: inline-block;
    border: 1px solid #efefef;
    padding: .8em 1.2em;
    text-align: center
}

.wp-pagenavi .pages,
.wp-pagenavi a {
    color: #333;
    background-color: #fff
}

.wp-pagenavi .current,
.wp-pagenavi .pages:hover,
.wp-pagenavi a:hover {
    background-color: #efefef
}

.wp-pagenavi .current {
    font-weight: 700
}

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

.post_nav a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    width: 302px
}

.post_nav a .photo {
    width: 117px;
    margin-bottom: 0 !important
}

.post_nav a .detail {
    width: 173px;
    position: relative;
    font-weight: 700
}

footer {
    background-color: #f5f5f5;
    padding: 40px 0
}

footer .in nav {
    margin-bottom: 2.4em
}

footer .in nav ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center
}

footer .in nav ul li {
    margin: 0 .8em 15px;
}

footer .in nav ul li a {
    color: #333;
    text-decoration: underline
}

footer .in nav ul li a:hover {
    text-decoration: none
}

footer .in .logo {
    width: 17.6042%;
    margin-left: auto;
    margin-right: auto;
    line-height: 0
}

.side .side_cat_name {
    padding: 1em .6em;
    color: #fff
}

.side .side_cat_name,
.side .side_cat_name_link {
    background-color: #f48fb1;
    border: 1px solid #f48fb1;
    text-align: center
}

.side .side_list_link a {
    padding: 1em .6em;
    width: 100%;
    height: 100%;
    display: block;
    color: #ec407a;
    border: 1px solid #f48fb1;
    text-align: center
}

.side .side_list_link a:after {
    content: "\F105";
    font-family: FontAwesome;
    margin-left: .5em
}

.side .side_list_link a:hover {
    background-color: #f48fb1;
    color: #fff
}

.side .side_cat_name_link a {
    padding: 1em .6em;
    width: 100%;
    height: 100%;
    display: block;
    color: #fff
}

.side .side_cat_name_link a:hover {
    background-color: #fff;
    color: #ec407a
}

.side .side_list_link,
.side ul.bnr,
.side ul.side_cat {
    margin-bottom: 24px
}

.side ul.bnr li {
    line-height: 0
}

.side ul.bnr li:not(:last-child) {
    margin-bottom: 1em
}

.side ul.bnr li a:hover {
    opacity: .6
}

.side ul.side_cat li:not(:first-child) a {
    margin-top: -1px
}

.side ul.side_cat li a {
    border: 1px solid #ccc;
    padding: 1em .6em;
    display: block;
    color: #333;
    text-align: center;
    -webkit-transition: .3s linear;
    transition: .3s linear
}

.side ul.side_cat li a:hover {
    background-color: rgba(244, 143, 177, .6);
    color: #fff;
    -webkit-transition: .3s linear;
    transition: .3s linear
}

.side ul.side_list li {
    border-bottom: 1px dashed #ccc
}

.side ul.side_list li:first-child {
    border-top: 1px dashed #ccc
}

.side ul.side_list li a {
    padding: 1em .6em;
    display: block;
    color: #333
}

.side ul.side_list li a:before {
    content: "\25CB";
    font-size: 80%;
    margin-right: .8em
}

.side ul.side_list li a:hover {
    color: rgba(244, 143, 177, .6)
}

.post_media_wrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap
}

.post_media_wrap .post_media {
    width: 196px;
    position: relative;
    margin-bottom: 1.6em
}

.post_media_wrap .post_media:not(:nth-child(3n)) {
    margin-right: 16px
}

.post_media_wrap .post_media:hover .photo img {
    -webkit-transform: translate(-50%, -50%) scale(1.1);
    transform: translate(-50%, -50%) scale(1.1);
    -webkit-transition: .3s linear;
    transition: .3s linear
}

.post_media_wrap .post_media .category,
.post_media_wrap .post_media .catname {
    position: absolute;
    bottom: 0;
    left: 0;
    background-color: rgba(236, 64, 122, .95);
    padding: .4em;
    display: block;
    font-size: 11px;
    font-size: 1.1rem;
    line-height: 1;
    z-index: 1;
    color: #fff
}

.post_media_wrap .post_media .photo {
    position: relative;
    overflow: hidden;
    padding-top: 61.5741%;
    margin-bottom: 8px;
    width: 100%
}

.post_media_wrap .post_media .photo img {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    -webkit-transition: .3s linear;
    transition: .3s linear
}

.post_media_wrap .post_media .time {
    margin-bottom: .3em
}

.post_media_wrap .post_media .time span,
.post_media_wrap .post_media .time time {
    font-size: 13px;
    font-size: 1.3rem;
    color: #666;
    line-height: 1
}

.post_media_wrap .post_media h3 {
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 1.4;
    font-weight: 700
}

.sample_area_wrap {
    width: 500px;
    position: relative
}

.sample_area_wrap .sample_area_man_btn {
    margin-bottom: 0 !important;
    line-height: 0;
    position: absolute;
    right: 222px;
    bottom: 37px
}

.sample_area_wrap .sample_area_woman_btn {
    margin-bottom: 0 !important;
    line-height: 0;
    position: absolute;
    right: 48px;
    bottom: 37px
}

.sample_area_wrap .sample_area_man_btn,
.sample_area_wrap .sample_area_woman_btn {
    width: 155px
}

.sample_area_wrap .sample_area_man_btn a:hover,
.sample_area_wrap .sample_area_woman_btn a:hover {
    opacity: .7
}

.cat_desc {
    margin-bottom: 1.6em
}

.cat_desc_bottom {
    margin-top: 1.6em
}

#demo li:first-child {
    -webkit-animation: a 1.6s ease .1s;
    animation: a 1.6s ease .1s
}

#demo li:nth-child(2) {
    -webkit-animation: a 1.6s ease .2s;
    animation: a 1.6s ease .2s
}

#demo li:nth-child(3) {
    -webkit-animation: a 1.6s ease .3s;
    animation: a 1.6s ease .3s
}

#demo li:nth-child(4) {
    -webkit-animation: a 1.6s ease .4s;
    animation: a 1.6s ease .4s
}

#demo li:nth-child(5) {
    -webkit-animation: a 1.6s ease .5s;
    animation: a 1.6s ease .5s
}

#demo li:nth-child(6) {
    -webkit-animation: a 1.6s ease .6s;
    animation: a 1.6s ease .6s
}

#demo li:nth-child(7) {
    -webkit-animation: a 1.6s ease .7s;
    animation: a 1.6s ease .7s
}

#demo li:nth-child(8) {
    -webkit-animation: a 1.6s ease .8s;
    animation: a 1.6s ease .8s
}

#demo li:nth-child(9) {
    -webkit-animation: a 1.6s ease .9s;
    animation: a 1.6s ease .9s
}

@-webkit-keyframes a {
    0% {
        opacity: 0;
        -webkit-transform: translateY(100%);
        transform: translateY(100%)
    }

    to {
        opacity: 1;
        -webkit-transform: translateY(0);
        transform: translateY(0)
    }
}

@keyframes a {
    0% {
        opacity: 0;
        -webkit-transform: translateY(100%);
        transform: translateY(100%)
    }

    to {
        opacity: 1;
        -webkit-transform: translateY(0);
        transform: translateY(0)
    }
}

#demo li:nth-child(10) {
    -webkit-animation: a 1.6s ease 1s;
    animation: a 1.6s ease 1s
}

@media screen and (max-width:1024px) {
    body {
        font-size: 16px;
        font-size: 1.5625vw
    }

    #bcn .in,
    .contents,
    .hd .in,
    .mv .in,
    .wrap,
    footer .in {
        width: 100%;
        padding-left: 3.125%;
        padding-right: 3.125%
    }

    .pc_mv {
        display: none
    }

    .pc_mv_1024 {
        display: block
    }

    .contents {
        margin-bottom: 8.3333%
    }

    header,
    section {
        margin-bottom: 5.4688%
    }

    .post_box:not(:last-child),
    .voice_box:not(:last-child) {
        margin-bottom: 5.4688%
    }

    .wp-pagenavi {
        margin-top: 5.4688%
    }

    .mt_base,
    .point {
        margin-top: 7.7419%
    }

    .mb_base,
    .point .box {
        margin-bottom: 7.7419%
    }

    .top_about .desc,
    .top_toukei .desc,
    .top_voice .desc {
        margin-bottom: 5.1613%
    }

    .shokai {
        padding: 5.1613% 3.871%
    }

    .top_voice .box {
        padding: 5.1613% 3.871%
    }

    .desc,
    .txt {
        font-size: 16px;
        font-size: 1.5625vw
    }

    .hd .in .logo {
        width: 25.3125%
    }

    .hd .in .pc_nav {
        width: 69.6875%;
        font-size: 16px;
        font-size: 1.5625vw
    }

    .mv .mv_img {
        width: 100%;
        position: static;
        -webkit-transform: translateX(0);
        transform: translateX(0)
    }

    .mv .in {
        height: auto;
        position: static
    }

    .mv .in .in_in {
        left: 3.125%;
        width: 93.75%
    }

    .mv .mv_list {
        font-size: 24px;
        font-size: 2.34375vw
    }

    .mv .mv_list ul li:before {
        font-size: 11px;
        font-size: 1.07422vw
    }

    .home .mv,
    .home .mv .in {
        height: inherit
    }

    .home h1 {
        font-size: 54px;
        font-size: 5.27344vw
    }

    .other .mv,
    .other .mv .in {
        height: inherit
    }

    .other h1 {
        font-size: 39px;
        font-size: 3.80859vw
    }

    .contents main {
        width: 64.5833%
    }

    .contents .side {
        width: 32.8125%
    }

    .btn_wrap {
        width: 65.806452%
    }

    h2 {
        font-size: 27px;
        font-size: 2.63672vw
    }

    .h2_heart {
        font-size: 21px;
        font-size: 2.05078vw
    }

    h3 {
        font-size: 21px;
        font-size: 2.05078vw
    }

    .h3_no {
        font-size: 18px;
        font-size: 1.75781vw
    }

    .editor .single_news h2,
    .editor .single_news h3,
    .h3_deco {
        font-size: 18px;
        font-size: 1.75781vw
    }

    .h_ud {
        font-size: 18px;
        font-size: 1.75781vw
    }

    .shokai h3 {
        font-size: 24px;
        font-size: 2.34375vw
    }

    .editor .tc55 .block {
        width: 48.0645%
    }

    .editor .tc55 .block:nth-child(odd) {
        margin-right: 3.871%
    }

    .editor .single_news h1 {
        font-size: 27px;
        font-size: 2.63672vw
    }

    .editor .single_news h2 {
        font-size: 24px;
        font-size: 2.34375vw
    }

    .shokai .box .detail {
        padding: 3.0151%
    }

    .top_voice .box .photo {
        margin-right: 4.2857%;
        margin-bottom: 2.8571%
    }

    #attachment_4606 .wp-caption-text {
        font-size: 27px;
        font-size: 2.63672vw
    }

    .top_news dl {
        font-size: 16px;
        font-size: 1.5625vw
    }

    .post_box a .photo {
        width: 30.6452%
    }

    .post_box a .detail {
        width: 66.7742%
    }

    .voice_box .in .photo {
        width: 23.5484%;
        margin-right: 3.871%;
        margin-bottom: 2.5806%
    }

    .prof table .photo {
        width: 30.6452%
    }

    .prof table .photo p {
        margin-right: 2.5806%
    }

    .prof table th {
        width: 16.129%
    }

    .prof table .td {
        width: 50.6452%
    }

    .wpcf7 input[type=email],
    .wpcf7 input[type=submit],
    .wpcf7 input[type=text] {
        font-size: 16px;
        font-size: 1.5625vw
    }

    .post_nav a {
        width: 48.7097%
    }

    .post_nav a .photo {
        width: 38.7417%
    }

    .post_nav a .detail {
        width: 58.6093%
    }

    footer {
        padding: 3.9063% 0
    }

    .side .side_list_link,
    .side ul.bnr,
    .side ul.side_cat {
        margin-bottom: 7.619%
    }

    .post_media_wrap .post_media {
        width: 31.6129%
    }

    .post_media_wrap .post_media:not(:nth-child(3n)) {
        margin-right: 2.5806%
    }

    .post_media_wrap .post_media .category,
    .post_media_wrap .post_media .catname {
        font-size: 11px;
        font-size: 1.07422vw
    }

    .post_media_wrap .post_media .photo {
        margin-bottom: 4%
    }

    .post_media_wrap .post_media .time span,
    .post_media_wrap .post_media .time time {
        font-size: 13px;
        font-size: 1.26953vw
    }

    .post_media_wrap .post_media h3 {
        font-size: 16px;
        font-size: 1.5625vw
    }

    .sample_area_wrap .sample_area_man_btn {
        right: 44.4%;
        bottom: 24.666667%
    }

    .sample_area_wrap .sample_area_woman_btn {
        right: 9.6%;
        bottom: 24.666667%
    }

    .sample_area_wrap .sample_area_man_btn,
    .sample_area_wrap .sample_area_woman_btn {
        width: 31%
    }
}

@media screen and (max-width:1024px) and (max-width:640px) {
    body {
        font-size: 14px;
        font-size: 1.4rem
    }

    .desc,
    .txt {
        font-size: 14px;
        font-size: 1.4rem
    }

    .other h1 {
        font-size: 27px;
        font-size: 2.7rem
    }

    .contents main {
        width: 100%
    }

    .contents .side {
        width: 100%
    }

    .btn_wrap {
        width: 81.25%;
        font-size: 100%
    }

    h2 {
        font-size: 21px;
        font-size: 2.1rem
    }

    h2 br {
        display: none
    }

    .h2_heart {
        font-size: 21px;
        font-size: 2.1rem
    }

    .editor .single_news h1 {
        font-size: 21px;
        font-size: 2.1rem
    }

    .editor .single_news h1 br {
        display: none
    }

    .editor .single_news h2 {
        font-size: 21px;
        font-size: 2.1rem
    }

    .editor .single_news h2 br {
        display: none
    }

    .shokai .box .detail {
        width: 100%;
        padding: 3.125%
    }

    .top_voice .box .photo {
        float: none;
        margin-left: auto;
        margin-right: auto;
        width: 33.333333%;
        margin-bottom: 1em
    }

    #attachment_4606 .wp-caption-text {
        font-size: 18px;
        font-size: 1.8rem
    }
}

@media screen and (max-width:1024px) and (max-width:640px) and (max-width:375px) {
    body {
        font-size: 13px;
        font-size: 1.3rem
    }

    .desc,
    .txt {
        font-size: 13px;
        font-size: 1.3rem
    }

    .btn_wrap {
        width: 87.5%;
        margin: 1em auto 1.6em;
    }
    
    p {
        font-size: 110%;
    }

    h2 {
        font-size: 18px;
        font-size: 1.8rem
    }

    .h2_heart {
        font-size: 18px;
        font-size: 1.8rem
    }

    .editor .single_news h1 {
        font-size: 18px;
        font-size: 1.8rem
    }

    #attachment_4606 .wp-caption-text {
        font-size: 16px;
        font-size: 1.6rem
    }
}

@media screen and (max-width:640px) {
    .prpl {
        padding-right: 3.125%;
        padding-left: 3.125%
    }

    main {
        margin-bottom: 3.2em
    }

    .shokai .box:not(:last-child) {
        margin-bottom: 2.4em
    }

    .hd .in .pc_nav ul:first-child li:first-child {
        width: 30%
    }

    .hd .in .pc_nav ul:first-child li:nth-child(2) {
        width: 30%
    }

    .hd .in .pc_nav ul:first-child li a {
        padding: 1em 0
    }

    .contents {
        display: inherit
    }

    .btn_wrap .btn {
        padding-top: 48px
    }

    .btn02 {
        text-align: center;
        font-weight: 700;
        width: 81.25%;
        margin: 1.6rem auto 0;
    }

    .btn02 a {
        padding: 0;
        height: 48px;
        line-height: 46px;
/*        width: 81.25%;*/
        width: 100%;
        margin-right: auto;
        margin-left: auto;
        font-size: 100%
    }

    .h2_icon {
        padding-left: 0
    }

    .h2_icon:before {
        content: "\4EF2\4EBA\58EB\30D4\30C3\30AF\30A2\30C3\30D7";
        position: static;
        display: block;
        width: 100%;
        -webkit-transform: translateY(0) rotate(0deg);
        transform: translateY(0) rotate(0deg);
        border-radius: 0;
        height: inherit;
        padding: .8em 0;
        font-size: 80%;
        margin-bottom: .5em
    }

    .h2_db br {
        display: block !important
    }

    .h2_db span {
        padding: 0 .5em
    }

    .h2_heart {
        width: 100%
    }

    .h2_heart:after {
        content: none
    }

    .editor .single_news .top_voice h2,
    .editor .single_news .top_voice h3,
    .top_voice .editor .single_news h2,
    .top_voice .editor .single_news h3,
    .top_voice .h3_deco {
        padding-left: 0
    }

    .editor .single_news h2,
    .editor .single_news h3,
    .h3_deco,
    .h3_heart,
    .h3_no,
    .h_ud,
    .shokai h3 {
        font-size: 18px;
        font-size: 1.8rem
    }

    .editor table td,
    .editor table th {
        border: none;
        width: 100%;
        display: block;
    }

    .editor table td:nth-last-of-type(2) {
        display: none;
    }

    .editor table th {
        line-height: 1.4
    }

    .shokai .box {
        display: inherit
    }

    .shokai .box .photo {
        margin-left: auto;
        margin-right: auto;
        width: 33.333333%;
        margin-bottom: 1em
    }

    .shokai .box .detail .desc {
        font-size: 100%
    }

    .top_voice .box .desc {
        font-size: 100%
    }

    .map_wrap {
        width: 100%
    }

    .wp-pagenavi .current,
    .wp-pagenavi .pages,
    .wp-pagenavi a {
        padding: .8em
    }

    footer .in nav {
        margin-bottom: 1.4em
    }

    footer .in nav ul li {
        margin-bottom: 1em
    }

    .side ul.bnr li {
        text-align: center
    }
}

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

    .sp {
        display: block
    }

    .top_news dl dt {
        margin-bottom: .5em;
        font-size: 80%
    }

    .top_news dl dd {
        width: 100%
    }

    .prof table {
        font-size: 90%
    }

    .post_nav {
        display: inherit
    }

    .post_nav #prev {
        margin-bottom: 1em
    }

    .post_media_wrap {
        display: inherit
    }
}

@media screen and (max-width:768px) {
    section {
        margin-bottom: 3.2em
    }

    .hd .in {
        padding-top: 1em;
        padding-bottom: 1em
    }

    .hd .in .pc_nav ul {
        -webkit-box-pack: end;
        -ms-flex-pack: end;
        justify-content: flex-end
    }

    .hd .in .pc_nav ul:first-child {
        margin-bottom: 0;
        font-size: 90%;
        margin-right: 1em
    }

    .hd .in .pc_nav ul:first-child li:nth-child(3) {
        display: none
    }

    .hd .in .pc_nav ul:first-child li:nth-child(4) {
        display: none
    }

    .hd .in .pc_nav ul:last-child {
        display: none
    }

    #top-head.fixed {
        padding: 0;
        background-color: hsla(0, 0%, 100%, 0)
    }

    #top-head.fixed .in {
        padding-top: 0;
        padding-bottom: 0
    }

    #top-head.fixed .menu-btn {
        display: none
    }

    .bar_wrap,
    .bar_wrap .bar {
        width: 24px
    }

    .bar_wrap {
        height: 13px
    }

    .bar_wrap .bar {
        height: 2px
    }

    .bar.middle {
        top: 6px;
        opacity: 1
    }

    .bar.bottom {
        top: 12px;
        -webkit-transform-origin: left bottom;
        transform-origin: left bottom
    }

    .menu-btn {
        display: block;
        text-align: center;
        cursor: pointer;
        z-index: 5
    }

    .menu-btn .menu-btn_in {
        width: 100%;
        height: 100%
    }

    .bar_wrap {
        position: relative
    }

    .bar {
        position: absolute;
        top: 0;
        left: 0;
        display: block;
        -webkit-transition: all .5s;
        transition: all .5s;
        -webkit-transform-origin: left top;
        transform-origin: left top
    }

    .side-open .menu-btn {
        display: block !important;
        -webkit-transition: .5s ease 1s;
        transition: .5s ease 1s;
        -webkit-animation: fadein_default .75s linear 0s forwards;
        animation: fadein_default .75s linear 0s forwards;
        -webkit-transition: all .5s ease;
        transition: all .5s ease;
        z-index: 5;
        position: absolute;
        left: inherit;
        right: 3.125%;
        top: 1.6em !important
    }

    .side-open .bar_wrap {
        position: relative;
        z-index: 5;
        width: 18px;
        height: 18px
    }

    .side-open .menu-btn .bar.top {
        width: 24px;
        -webkit-transform: rotate(45deg);
        transform: rotate(45deg)
    }

    .side-open .menu-btn .bar.middle {
        opacity: 0
    }

    .side-open .menu-btn .bar.bottom {
        width: 24px;
        top: 17px;
        -webkit-transform: rotate(-45deg);
        transform: rotate(-45deg)
    }

    .drawer-menu {
        position: fixed;
        top: 0;
        left: 0;
        width: 0;
        height: 100%;
        background-color: rgba(244, 143, 177, .95);
        z-index: 4;
        -webkit-transition: all .5s ease .5s;
        transition: all .5s ease .5s;
        opacity: 0
    }

    .drawer-menu nav {
        position: absolute;
        top: 50%;
        left: 50%;
        -webkit-transform: translate(-50%, -50%);
        transform: translate(-50%, -50%)
    }

    .drawer-menu nav ul li {
        font-size: 16px;
        font-size: 1.6rem
    }

    .drawer-menu nav ul li:not(:last-child) {
        margin-bottom: 1em
    }

    .drawer-menu nav ul li a {
        color: #fff
    }

    .drawer-menu nav ul li a:before {
        content: "\F105";
        font-family: FontAwesome;
        font-size: 70%;
        margin-right: .3em;
        vertical-align: .2em
    }

    .side-open .drawer-menu {
        width: 100%;
        -webkit-transition: all .5s ease;
        transition: all .5s ease;
        opacity: 1
    }

    .side-open .drawer-menu nav {
        -webkit-transition: all .5s ease .5s;
        transition: all .5s ease .5s;
        opacity: 1
    }

    .drawer-menu,
    .menu-btn {
        display: block
    }

    .drawer-menu nav,
    .menu-btn nav {
        opacity: 0;
        -webkit-transition: all .5s ease;
        transition: all .5s ease
    }

    #sp_fix_wrap {
        display: block;
        -webkit-transition: .5s;
        transition: .5s;
        background-color: rgba(236, 64, 122, .75)
    }

    #sp_fix_wrap #swipe_navigation {
        height: 38px;
        overflow: hidden;
        position: relative;
        z-index: 1
    }

    #sp_fix_wrap #swipe_navigation .sp_swipe_menu {
        -webkit-user-select: none;
        display: block;
        height: 50px;
        overflow-y: hidden;
        padding: 0;
        position: relative;
        -webkit-overflow-scrolling: touch;
        overflow-x: scroll;
        text-align: center
    }

    #sp_fix_wrap #swipe_navigation .sp_swipe_menu ul {
        display: inline-block;
        position: relative;
        white-space: nowrap;
        overflow: hidden;
        font-size: 0;
        margin: 0;
        width: inherit
    }

    #sp_fix_wrap #swipe_navigation .sp_swipe_menu ul li {
        display: inline-block;
        line-height: 38px;
        height: 38px;
        margin: 0;
        text-align: center;
        position: relative;
        font-size: 12px;
        font-size: 1.2rem
    }

    #sp_fix_wrap #swipe_navigation .sp_swipe_menu ul li a {
        padding: 0 1em;
        display: inline-block;
        font-size: 14px;
        font-size: 1.4rem;
        color: #fff;
        position: relative;
        font-weight: 700;
        letter-spacing: -.01em;
        line-height: 38px
    }

    #sp_fix_wrap #swipe_navigation .sp_swipe_menu ul li a:after {
        height: 1px;
        background-color: #fff;
        bottom: .6em
    }

    #sp_fix_wrap #swipe_navigation .sp_swipe_menu ul li a:active:after,
    #sp_fix_wrap #swipe_navigation .sp_swipe_menu ul li a:focus:after,
    #sp_fix_wrap #swipe_navigation .sp_swipe_menu ul li a:hover:after {
        left: 10%;
        right: 10%
    }

    #boxer {
        max-width: inherit !important;
        width: 93.75% !important;
        height: 50% !important;
        min-height: 180px !important;
        margin: auto !important
    }

    #boxer.mobile {
        background-color: #fff;
        border-radius: .5em;
        padding: 3.125%
    }

    #boxer.mobile .boxer-container,
    #boxer.mobile .boxer-content {
        width: 93.75%;
        position: absolute;
        top: 50%;
        left: 50%;
        -webkit-transform: translate(-50%, -50%);
        transform: translate(-50%, -50%);
        background-color: transparent !important
    }

    .faq dl dd,
    .faq dl dt {
        min-height: 40px
    }

    footer .in .logo {
        width: 160px
    }
}

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

    .post_box:not(:last-child),
    .voice_box:not(:last-child) {
        margin-bottom: 3.2em
    }

    .wp-pagenavi {
        margin-top: 3.2em
    }

    .mt_base,
    .point {
        margin-top: 2.4em
    }

    .mb_base,
    .point .box {
        margin-bottom: 2.4em
    }

    .top_about .desc,
    .top_toukei .desc,
    .top_voice .desc {
        margin-bottom: 4.6875%
    }

    .hd .in .logo {
        width: 160px
    }

    .hd .in .pc_nav {
        font-size: 12px;
        font-size: 1.2rem
    }

    .wpcf7 input[type=email],
    .wpcf7 input[type=submit],
    .wpcf7 input[type=text] {
        font-size: 16px;
        font-size: 1.6rem
    }

    footer {
        padding: 6.25% 0
    }
}

@media screen and (max-width:768px) and (max-width:640px) {
    .hd .in {
        padding-top: 0;
        padding-bottom: 0
    }

    .hd .in .pc_nav ul:first-child {
        font-size: 80%
    }

    footer .in .logo {
        width: 144px
    }
}

@media screen and (max-width:1024px) and (max-width:768px) and (max-width:640px) {
    .hd .in .logo {
        width: 144px
    }

    .hd .in .pc_nav {
        padding-right: 1em
    }
}

@media screen and (max-width:1024px) and (max-width:768px) and (max-width:640px) and (max-width:480px) {
    .hd .in .logo {
        width: 120px
    }
}

@media screen and (max-width:1024px) and (max-width:768px) and (max-width:640px) and (max-width:480px) and (max-width:425px) {
    .hd .in .logo {
        width: 112px
    }
}

@media screen and (max-width:1024px) and (max-width:768px) and (max-width:640px) and (max-width:480px) and (max-width:425px) and (max-width:375px) {
    .hd .in .logo {
        width: 104px
    }
}

@media screen and (max-width:1024px) and (max-width:768px) and (max-width:640px) and (max-width:320px) {
    .hd .in .pc_nav {
        padding-right: .8em
    }
}

@media screen and (max-width:768px) and (max-width:640px) and (max-width:320px) {
    .hd .in .pc_nav ul:first-child {
        font-size: 70%
    }
}

@media screen and (max-width:1024px) and (max-width:480px) {
    .mv .mv_list ul li:before {
        font-size: 14px;
        font-size: 1.4rem
    }

    .top_news dl {
        font-size: 16px;
        font-size: 1.6rem;
        width: 100%;
        display: inherit
    }

    .post_nav a {
        width: 100%
    }

    .post_nav a .photo {
        width: 26%
    }

    .post_nav a .detail {
        width: 70.4444%
    }

    .post_media_wrap .post_media {
        width: 100%
    }

    .post_media_wrap .post_media:not(:nth-child(3n)) {
        margin-right: 0
    }

    .post_media_wrap .post_media .category,
    .post_media_wrap .post_media .catname {
        font-size: 14px;
        font-size: 1.4rem
    }

    .post_media_wrap .post_media .photo {
        margin-bottom: 1em;
        padding-top: 58%
    }

    .post_media_wrap .post_media .time span,
    .post_media_wrap .post_media .time time {
        font-size: 14px;
        font-size: 1.4rem
    }

    .post_media_wrap .post_media h3 {
        font-size: 16px;
        font-size: 1.6rem
    }

    .sample_area_wrap .sample_area_man_btn {
        right: 44.2%;
        bottom: 25.7%
    }

    .sample_area_wrap .sample_area_woman_btn {
        right: 9.4%;
        bottom: 25.7%
    }
}

@media screen and (max-width:1024px) and (max-width:640px) and (max-width:480px) {
    .other h1 {
        font-size: 24px;
        font-size: 2.4rem
    }
}

@media screen and (max-width:1024px) and (max-width:640px) and (max-width:480px) and (max-width:375px) {
    .other h1 {
        font-size: 21px;
        font-size: 2.1rem
    }
}

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

    .bar_wrap,
    .bar_wrap .bar {
        width: 20px
    }

    .bar_wrap {
        height: 11px
    }

    .bar.middle {
        top: 5px
    }

    .bar.bottom {
        top: 10px
    }

    .side-open .bar_wrap {
        width: 14px;
        height: 14px
    }

    .side-open .menu-btn .bar.top {
        width: 20px
    }

    .side-open .menu-btn .bar.bottom {
        width: 20px;
        top: 14px
    }

    .drawer-menu nav ul li {
        font-size: 15px;
        font-size: 1.5rem
    }

    #sp_fix_wrap #swipe_navigation .sp_swipe_menu ul li {
        line-height: 38px;
        height: 38px;
        font-size: 11px;
        font-size: 1.1rem
    }

    #sp_fix_wrap #swipe_navigation .sp_swipe_menu ul li a {
        font-size: 12px;
        font-size: 1.2rem;
        padding: 0 .9em;
        letter-spacing: -.05em
    }
}

@media screen and (max-width:768px) and (max-width:425px) {
    .drawer-menu nav {
        width: 75%
    }
}

@media screen and (max-width:768px) and (max-width:375px) and (max-width:320px) {
    .drawer-menu nav ul li {
        font-size: 14px;
        font-size: 1.4rem
    }
}

@media screen and (max-width:1024px) and (max-width:640px) and (max-width:375px) and (max-width:320px) {
    .btn_wrap {
        font-size: 100%;
        width: 93.75%
    }

    h2 {
        font-size: 16px;
        font-size: 1.6rem
    }

    .h2_heart {
        font-size: 17px;
        font-size: 1.7rem
    }

    .editor .single_news h1 {
        font-size: 16px;
        font-size: 1.6rem
    }
}

@media screen and (max-width:640px) and (max-width:375px) {
    .btn02 {
        width: 87.5%
    }
    
    .btn02 a {
/*        width: 87.5%*/
        width: 100%;
    }

    .editor .single_news h2,
    .editor .single_news h3,
    .h3_deco,
    .h3_heart,
    .h3_no,
    .h_ud,
    .shokai h3 {
        font-size: 16px;
        font-size: 1.6rem
    }
}

@media screen and (max-width:640px) and (max-width:375px) and (max-width:320px) {
    .btn02 {
        width: 93.75%;
    }
    
    .btn02 a {
        font-size: 100%;
/*        width: 93.75%*/
        width: 100%;
    }

    .editor .single_news h2,
    .editor .single_news h3,
    .h3_deco,
    .h3_heart,
    .h3_no,
    .h_ud,
    .shokai h3 {
        font-size: 15px;
        font-size: 1.5rem
    }

}

@media screen and (max-width:1024px) and (max-width:640px) and (max-width:320px) {
    .editor .single_news h2 {
        font-size: 18px;
        font-size: 1.8rem
    }
}

@media screen and (max-width:768px) and (max-width:640px) and (max-width:480px) {
    footer .in .logo {
        width: 120px
    }
}

@media screen and (max-width:768px) and (max-width:640px) and (max-width:480px) and (max-width:425px) {
    footer .in .logo {
        width: 112px
    }
}

@media screen and (max-width:768px) and (max-width:640px) and (max-width:480px) and (max-width:425px) and (max-width:375px) {
    footer .in .logo {
        width: 104px
    }
}

@media screen and (max-width:826px) {
    .sample_area_wrap {
        width: 100%
    }
}

@media screen and (max-width:826px) and (max-width:640px) {
    .sample_area_wrap {
        width: 500px
    }
}

@media screen and (max-width:534px) {
    .sample_area_wrap {
        width: 100%
    }
}


.editor {
    margin-bottom: 40px !important;
}

.h4_deco,
h4 {
    font-size: 18px;
    font-size: 1.8rem;
    padding-bottom: .4em;
    margin-bottom: .8em;
    font-weight: 700;
    position: relative;
    color: #e694b0;
}

/* 2018.10.26追記   */

.cont_pricetable {
    width: 100%;
    margin: 20px auto 30px;
}

.prace_tit {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    text-align: center;
    /* for no-flexbox browsers */
    color: #de648c;
    margin-bottom: 15px;
}

.prace_tit:before,
.prace_tit:after {
    border-top: 1px solid #de648c;
    content: "";
    display: inline;
    /* for IE */
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
}

.prace_tit:before {
    margin-right: 0.5em;
}

.prace_tit:after {
    margin-left: 0.5em;
}

.cont_pricetable ul {
    -webkit-box-shadow: 0 0 0 1px #ccc inset;
    box-shadow: 0 0 0 1px #ccc inset;
    background: #efefef;
    padding: 3%;
}

.cont_pricetable ul dl {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
}

.cont_pricetable ul li {
    list-style: none;
    width: 100%;
    margin-bottom: 10px;
}

.cont_pricetable ul li dt {
    width: 26%;
    margin-right: 15px;
}

.cont_pricetable ul li dd {
    width: 64%;
}


blockquote {
    position: relative;
    padding: 10px 15px 10px 60px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    font-style: italic;
    background: #f5f5f5;
    color: #777777;
    border-left: 4px solid #9dd4ff;
    -webkit-box-shadow: 0 2px 4px rgba(0, 0, 0, 0.14);
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.14);
}

blockquote:before {
    display: inline-block;
    position: absolute;
    top: 7px;
    left: 0;
    vertical-align: middle;
    content: "“";
    font-family: sans-serif;
    color: #9dd4ff;
    font-size: 90px;
    line-height: 1;
}

blockquote p {
    padding: 0;
    margin: 7px 0;
    line-height: 1.7;
}

blockquote cite {
    display: block;
    text-align: right;
    color: #888888;
    font-size: 0.9em;
}

/*追加*/

.hd .in .pc_nav .nav_u {
    max-width: 669px;
    float: right;
}

.hd .in .pc_nav .nav_d {
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
}

.hd .in .pc_nav .nav_d li {
    width: unset;
    padding: 0 15px;
}

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

    .editor table td:nth-last-of-type(2) {
        display: block;
        margin: 0 auto;
        width: 80%;
    }
    
    .prof {
        width: 100%;
    }
    
    .prof table .td {
        width: 100%;
    }
    
    .prof table .td02 {
        width: 100%;
    }
    
    .prof table .photo p {
        width: 50%;
        margin: 0 auto;
    }
    
}


.wpcf7 form div.visible-only-if-invalid {
    display: none;
}
 
.wpcf7 form.sent div.visible-only-if-invalid {
    display: block;
    margin: 2em 0.5em 1em;
    padding: 0.2em 1em;
    border: 2px solid #398f14;
}

.wpcf7 form.sent div.wpcf7-response-output {
    margin: 0;
    padding: 0;
}

.wpcf7 form.sent div.wpcf7-mail-sent-ok {
    border: none;
}

.btn_box {
    width: 960px;
    margin: 0 auto;
}

.pc {
    display: block;
}

.sp {
    display: none;
}

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

    .sp {
    display: block;
}
}

.movie-wrap {
     position: relative;
     padding-bottom: 56.25%; /*アスペクト比 16:9の場合の縦幅*/
     height: 0;
     overflow: hidden;
}
 
.movie-wrap iframe {
     position: absolute;
     top: 0;
     left: 0;
     width: 100%;
     height: 100%;
}


/*追加*/

.tp_ubox {
    width: 90%;
    margin: 0 auto 55px;
    padding: 25px;
    border: solid 2px #ec407a;
    max-width: 960px;
}

.tp_ubox__tit {
    text-align: center;
    font-size: 2rem;
    margin: 0 auto 20px;
    position: relative;
    width: 80%;
    color: #ec407a;
    font-weight: bold;
}

.tp_ubox__tit span {
    background-color: #fff;
    display: inline-block;
    padding: 0 1em;
}

.tp_ubox__tit:before {
    content: "";
    display: block;
    width: 100%;
    height: 4px;
    border-bottom: 4px double #ec407a;
    position: absolute;
    top: 50%;
    left: 0;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    z-index: -1;
}

.tp_ubox__txt {
    line-height: 2.4rem;
    margin-bottom: 15px;
}

.tp_ubox__etxt {
    line-height: 2.4rem;
    font-weight: bold;
}

@media screen and (max-width:640px) {
        
    .tp_ubox__tit {
        width: 100%;
        font-size: 1.8rem;
    }

    .tp_ubox__tit span {
        background-color: #fff;
        display: inline-block;
        padding: 0 0.5em;
    }
    
}

.ft_bold {
    font-weight: bold;
}

.mrt_ol {
    margin-top: 1.6em;
}

.contents .editor .ol_omiai_img {
    margin-bottom: 10px;
}


.pagenavi {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  margin: 20px auto 0;
  position: relative;
  font-size: 13px;
}

.pagenavi a,
.pagenavi span {
  display: block;
  width: auto;
  margin: 4px;
  padding: 8px;
  border: 1px solid #000;
  background-color: #fff;
  text-decoration: none;
  text-align: center;
  line-height: 16px;
  font-size: 120%;
}

.pagenavi a {
    text-decoration: none;
    color: #000;
}

.pagenavi .current {
    background: rgba(236, 64, 122, .95);
    border:1px rgba(236, 64, 122, .95) solid;
    color: #fff;
}

.tp_party {
    width: 90%;
    margin: 0 auto 55px;
    padding: 25px;
    border: solid 3px #40b5ec;
    max-width: 600px;
    border-radius: .3em;
}

.tp_party_tit {
    text-align: center;
    font-size: 2.8rem;
    line-height: 3.4rem;
    margin: 0 auto 30px;
    position: relative;
    width: 80%;
    color: #fff;
    font-weight: bold;
    line-height: 60px;
    height: 60px;
    padding: 0 2rem;
    color: #fff;
    background: #00b7f1;
}

.tp_party_tit:before,
.tp_party_tit:after {
    position: absolute;
    top: 0;
    display: block;
    height: 48px;
    content: '';
    border: 30px solid #00b7f1;
    z-index: -1;
}

.tp_party_tit:before {
    left: -40px;
    border-left-width: 15px;
    border-left-color: transparent;
}

.tp_party_tit:after {
    right: -40px;
    border-right-width: 15px;
    border-right-color: transparent;
}

.tp_party_tit span {
    position: relative;
    display: block;
}

.tp_party_txt {
    text-align: center;
    font-size: 2.6rem;
    margin-bottom: 20px;
    font-weight: bold;
}

.tp_party_limit {
    text-align: center;
    margin-bottom: 25px;
    font-weight: bold;
    color: #f00;
}

.tp_party_btn {
    width: 90%;
    max-width: 300px;
    margin: 0 auto;
    text-align: center;
}

.tp_party_link {
    color: #fff;
    display: block;
    padding: 15px;
    background-color: #40b5ec;
    border-radius: .3em;
    font-weight: bold;
}

@media screen and (max-width:640px) {
    
    .tp_party {
        padding: 25px 15px;
    }
    
    .tp_party_tit {
        width: 90%;
        padding: 0;
        margin-bottom: 20px;
        font-size: 1.8rem;
    }
    
    .tp_party_tit:before {
        left: -15px;
    }
    
    .tp_party_tit:after {
        right: -15px;
    }
    
    .tp_party_txt {
        font-size: 1.8rem;
        margin-bottom: 10px;
    }
    
    .tp_party_limit {
        margin-bottom: 20px;
    }
    
}

.headline_lbnr {
    text-align: center;
    margin-bottom: 40px;
}

.headline_lbox {
    margin-bottom: 40px;
}

.headline_lmv {    
    width: 100%;
    max-width: 960px;
    margin: 0 auto;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

.headline_lmv iframe {
    width: 48%;
}

.headline_txt {
    text-align: center;
}

@media screen and (max-width:640px) {
    
    .headline_lbnr {
        width: 90%;
        margin: 0 auto 20px;
    }
    
    .headline_lbox {
        width: 90%;
        margin: 0 auto 20px;
    }
    
    .headline_lmv {
        height: 0;
        position: relative;
        padding-top: 56.25%;
        overflow: hidden;
        margin-bottom: 20px;
    }
    
    .headline_lmv:last-child {
        margin-bottom: 0;
    }
    
    .headline_lmv iframe {
        position: absolute;
        top: 0;
        left: 0;
        width: 100% !important;
        height: 100% !important;
    }
    
    .mv_list02 {
        border: 4px double #f48fb1;
        font-size: 24px;
        font-size: 2.4rem;
        line-height: 1.4;
        font-weight: 700;
        font-size: 14px;
        width: 90%;
        margin: 20px auto;
    }
    
    .mv_list02 ul {
        counter-reset: a;
        background-color: hsla(0, 0%, 100%, .75);
    }
    
    .mv_list02 ul li {
        padding: .6em 1em;
    }
    
    .mv_list02 ul li:not(:last-child) {
        border-bottom: 1px dotted #ccc;
    }
    
    .mv_list02 ul li:before {
        content: counter(a, decimal);
        counter-increment: a;
        font-family: Times New Roman, Times, serif;
        margin-right: .3em;
        font-size: 180%;
        text-align: center;
        font-style: italic;
        vertical-align: -.05em;
        display: inline-block;
        color: #f48fb1;
    }
    
    .mv_list02 ul li:before {
        font-size: 2rem;
    }
    
    .mv_tp .in .in_in {
        top: 50%;
    }
    
}

.single_contlink {
    display: block;
    padding: 10px;
    margin: 10px auto;
    background-color: #ec407a;
    color: #fff;
    border-radius: .3em;
    border: 1px solid #ec407a;
    text-align: center;
    font-weight: bold;
}

/*20210114*/

.ts-fab-wrapper {
    margin: 2em 0;
    clear: both;
    max-width: 855px;
}

.ts-fab-wrapper a {
    text-decoration: none !important
}

.ts-fab-wrapper img {
    border: none !important
}

.ts-fab-list {
    overflow: hidden;
    margin: 0 !important;
    padding: 0 !important
}

.ts-fab-list li {
    display: block;
    float: left;
    clear: none;
    list-style: none !important;
    margin: 0 5px 0 0 !important;
    padding: 0 !important;
    background: 0 0 !important
}

.ts-fab-list li:before {
    display: none !important
}

.ts-fab-list li a {
    display: block;
    line-height: 16px;
    height: 16px;
    pointer-events: none;
    ;
    padding: 8px 12px;
    background-color: #e9e9e9;
    border: 1px solid #e9e9e9;
    border-bottom: none !important;
    text-decoration: none;
    font-size: 13px;
    color: #333;
    font-weight: 700;
    -webkit-box-sizing: content-box;
    box-sizing: content-box;
    -moz-box-sizing: content-box;
    background-image: url(img/tab_icons.png)
}

.ts-fab-list li a:hover {
    color: #333
}

.ts-fab-list li.active a {
    background-color: #f48fb1;
    color: #fff;
    border-color: #f48fb1;
}

.ts-fab-list li.ts-fab-bio-link a {
    background-position: 8px 8px;
    background-repeat: no-repeat;
    padding-left: 27px
}

.ts-fab-list li.ts-fab-bio-link.active a {
    background-position: -279px 8px;
    background-repeat: no-repeat;
    padding-left: 27px
}

.ts-fab-list li.ts-fab-twitter-link a {
    background-position: 8px -42px;
    background-repeat: no-repeat;
    padding-left: 35px
}

.ts-fab-list li.ts-fab-twitter-link.active a {
    background-position: -270px -42px;
    background-repeat: no-repeat;
    padding-left: 35px
}

.ts-fab-list li.ts-fab-facebook-link a {
    background-position: 8px -92px;
    background-repeat: no-repeat;
    padding-left: 23px
}

.ts-fab-list li.ts-fab-facebook-link.active a {
    background-position: -284px -92px;
    background-repeat: no-repeat;
    padding-left: 23px
}

.ts-fab-list li.ts-fab-googleplus-link a {
    background-position: 8px -142px;
    background-repeat: no-repeat;
    padding-left: 30px
}

.ts-fab-list li.ts-fab-googleplus-link.active a {
    background-position: -276px -142px;
    background-repeat: no-repeat;
    padding-left: 30px
}

.ts-fab-list li.ts-fab-latest-posts-link a {
    background-position: 8px -192px;
    background-repeat: no-repeat;
    padding-left: 27px
}

.ts-fab-list li.ts-fab-latest-posts-link.active a {
    background-position: -280px -192px;
    background-repeat: no-repeat;
    padding-left: 27px
}

.ts-fab-widget .ts-fab-list li a {
    text-indent: -9999em;
    padding: 8px 12px !important
}

.ts-fab-widget .ts-fab-list li.ts-fab-bio-link a {
    width: 4px
}

.ts-fab-widget .ts-fab-list li.ts-fab-twitter-link a {
    width: 12px
}

.ts-fab-widget .ts-fab-list li.ts-fab-googleplus-link a {
    width: 8px
}

.ts-fab-widget .ts-fab-list li.ts-fab-facebook-link a {
    width: 0
}

.ts-fab-widget .ts-fab-list li.ts-fab-latest-posts-link a {
    width: 4px
}

.ts-fab-tab {
    display: none;
    border: 2px solid #f48fb1;
    padding: 15px;
    background: #fff;
    min-height: 80px;
    overflow: hidden
}

.ts-tab:first-child {
    display: block
}

.ts-fab-widget .ts-fab-tab {
    padding: 8px
}

.ts-fab-avatar {
    display: block;
    float: left;
    width: 80px
}

.ts-fab-no-float .ts-fab-avatar {
    float: none;
    margin: 0 0 12px
}

.ts-fab-text {
    margin-left: 96px;
    line-height: 1.5
}

.ts-fab-no-float .ts-fab-text {
    margin-left: 0
}

.ts-fab-avatar > img {
    width: 80px;
    max-width: 100% !important
}

.ts-fab-header {
    margin-bottom: 5px;
}

.ts-fab-text h4 {
    clear: none !important;
    font-size: 18px;
    line-height: 1.5 !important;
    font-weight: 700;
    margin: 0 0 .2em !important;
    padding: 0;
    color: #000;
}

.ts-fab-description,
.ts-fab-latest li span,
.ts-fab-twitter-time {
    font-size: 12px
}

.ts-fab-follow {
    margin-top: 10px
}

.ts-fab-social-links {
    margin: 5px 0 0;
    text-align: center
}

.ts-fab-social-links a {
    display: inline-block;
    margin: 0 1px;
    opacity: .5;
    transition: opacity .2s;
    -moz-transition: opacity .2s;
    -webkit-transition: opacity .2s;
    -o-transition: opacity .2s
}

.ts-fab-social-links a:hover {
    opacity: 1
}

.ts-fab-latest {
    margin: 0 !important;
    padding: 0 !important
}

.ts-fab-latest li {
    list-style: none !important;
    line-height: 1.2;
    margin: 0 0 .6em !important;
    clear: none !important
}

.ts-fab-latest li a {
    text-decoration: underline !important;
    color: #000;
}

.ts-fab-latest li a:hover {
    text-decoration: none !important;
    opacity: 0.6;
}

.latest-see-all {
    font-weight: 400
}

.screen-reader-text {
    clip: rect(1px, 1px, 1px, 1px);
    position: absolute !important;
    left: -9999px
}

.ts-fab-content {
    margin-bottom: 10px;
}

.ts-fab-content-btn {
    max-width: 240px;
}

.ts-fab-content-btn a {
    display: block;
    padding: 5px;
    text-align: center;
    background-color: #02C3B9;
    color: #fff;
}

.ts-fab-content-btn a:hover {
    opacity: 0.6;
}

.ts-fab-header-name {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

.ez-toc-section {
    padding: 5px 0;
    color: #000;
}

.ez-toc-section02 {
    padding: 5px;
    font-size: 85%;
    background-color: #f48fb1;
    color: #fff;
    font-weight: normal;
}

.ts-fab-avatar img {
    border-radius: 50%;
}