html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline
}
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
  display: block
}
body {
  line-height: 1
}
ol, ul {
  list-style: none
}
blockquote, q {
  quotes: none
}
blockquote:before, blockquote:after, q:before, q:after {
  content: "";
  content: none
}
table {
  border-collapse: collapse;
  border-spacing: 0
}
*, *::before, *::after {
  box-sizing: border-box
}
html {
  background: #333;
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  -ms-overflow-style: scrollbar
}
body {
  background: #fff;
  color: #333;
  font-family: "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
  position: relative;
}
main {
  display: block
}
p {
  margin-bottom: 10px;
  line-height: 28px
}
dfn {
  font-style: italic
}
a, button {
  cursor: pointer
}
a {
  color: inherit;
  text-decoration: none
}
b, strong {
  font-weight: bolder
}
small {
  font-size: 80%
}
sub, sup {
  position: relative;
  font-size: 75%;
  line-height: 0;
  vertical-align: baseline
}
sub {
  bottom: -0.25em
}
sup {
  top: -0.5em
}
img {
  border-style: none;
  vertical-align: middle;
  max-width: 100%;
  height: auto
}
svg {
  overflow: hidden;
  vertical-align: middle
}
label {
  display: block
}
button {
  border-radius: 0
}
input, button, select, optgroup, textarea {
  margin: 0;
  font-family: inherit;
  font-size: inherit;
  line-height: inherit
}
button, input {
  overflow: visible;
  cursor: pointer
}
button, select {
  text-transform: none
}
button, html [type=button], [type=reset], [type=submit] {
  -webkit-appearance: button
}
button::-moz-focus-inner, [type=button]::-moz-focus-inner, [type=reset]::-moz-focus-inner, [type=submit]::-moz-focus-inner {
  padding: 0;
  border-style: none
}
input[type=radio], input[type=checkbox] {
  box-sizing: border-box;
  padding: 0
}
input[type=date], input[type=time], input[type=datetime-local], input[type=month] {
  -webkit-appearance: listbox
}
textarea {
  overflow: auto;
  resize: vertical
}
::-webkit-file-upload-button {
  font: inherit;
  -webkit-appearance: button
}
@media only screen and (max-width: 1023px) {
  [data-pc-only] {
    display: none
  }
}
@media only screen and (min-width: 1024px) {
  [data-sp-only] {
    display: none
  }
}
@media only screen and (max-width: 1023px) {
  .column-sp-2 {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    column-gap: 15px;
    row-gap: 15px
  }
  .column-sp-2 > * {
    width: calc((100% - 15px) / 2)
  }
}
@media only screen and (min-width: 1024px) {
  .column-pc-2, .column-pc-3, .column-pc-4 {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    column-gap: 40px;
    row-gap: 40px
  }
  .column-pc-2 > * {
    width: calc((100% - 40px) / 2)
  }
  .column-pc-3 > * {
    width: calc((100% - 40px * 2) / 3)
  }
  .column-pc-4 > * {
    width: calc((100% - 40px * 3) / 4)
  }
}
@media only screen and (max-width: 1023px) {
  .container, .container-640, .container-800, .container-1000, .container-1100, .container-full {
    padding: 0 15px
  }
}
@media only screen and (min-width: 1024px) {
  .container, .container-640, .container-800, .container-1000, .container-1100, .container-full {
    margin: 0 auto;
    padding: 0 40px;
    max-width: calc(1200px + 40px * 2)
  }
}
.container-full {
  max-width: 100%
}
@media only screen and (min-width: 1024px) {
  .container-1100 {
    max-width: calc(1100px + 40px * 2)
  }
}
@media only screen and (min-width: 1024px) {
  .container-1000 {
    max-width: calc(1000px + 40px * 2)
  }
}
@media only screen and (min-width: 1024px) {
  .container-800 {
    max-width: calc(800px + 40px * 2)
  }
}
@media only screen and (min-width: 1024px) {
  .container-640 {
    max-width: calc(640px + 40px * 2)
  }
}
.section {
  padding: 40px 0
}
@media only screen and (min-width: 1024px) {
  .section {
    padding: 80px 0
  }
}
.badge-white, .badge-primary {
  border-width: 1px;
  border-style: solid;
  padding: 3px 4px;
  font-size: .75rem;
  font-weight: 700;
  display: inline-block;
  border-color: #333
}
@media only screen and (min-width: 1024px) {
  .badge-white, .badge-primary {
    padding: 4px 6px;
    font-size: .875rem
  }
}
.badge-primary {
  border-color: #dd9c9c;
  background: #dd9c9c;
  color: #fff
}
.badge-white {
  border-color: #fff;
  background: #fff
}
.button-secondary-outline, .button-secondary, .button-primary {
  border: none;
  font-size: 1.125rem;
  font-weight: 700;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 60px;
  transition: .3s;
  appearance: none;
  margin-top: 30px;
}
@media only screen and (min-width: 1024px) {
  .button-secondary-outline, .button-secondary, .button-primary {
    margin-left: auto;
    margin-right: auto;
    max-width: 360px;
    width: 360px
  }
}
.button-primary {
  background: #dd9c9c;
  color: #fff
}
.button-primary:hover {
  background: #fff;
  border: 1px solid #dd9c9c;
  color: #dd9c9c
}
.button-secondary {
  background: #333;
  color: #fff
}
.button-secondary:hover {
  background: #dd9c9c;
  color: #fff
}
.button-secondary-outline {
  border: 1px solid #333;
  background: #fff
}
.button-secondary-outline:hover {
  background: #333;
  color: #fff
}
.form-textarea, .form-control {
  border: 1px solid #ddd;
  border-radius: .25rem;
  padding: .5em .75em;
  background-color: #fff;
  font-size: 1rem;
  line-height: 1.5;
  display: block;
  width: 100%;
  max-width: 100%
}
.form {
  margin-left: auto;
  margin-right: auto;
  max-width: 480px
}
.form-group br {
  display: none
}
.form-label {
  margin-top: 1.5rem;
  margin-bottom: .5rem;
  font-weight: 700;
  line-height: 1.5
}
@media only screen and (min-width: 1024px) {
  .form-label {
    margin-top: 40px;
    margin-bottom: 10px
  }
}
.form-required::after, .form-option::after {
  margin-left: .5rem;
  padding: 2px 4px;
  font-size: .75rem;
  font-weight: 700;
  line-height: 1;
  display: inline-block
}
.form-required::after {
  content: "必須";
  background: rgba(255, 0, 0, .75);
  color: #fff
}
.form-option::after {
  content: "任意";
  background: #818181;
  color: #fff
}
.form-control {
  height: calc(1em * 1.5 + .5em * 2 + 2px)
}
.form-inline {
  display: inline;
  width: auto
}
.form-checkbox, .form-radio {
  font-size: 1rem;
  line-height: 1.5
}
.form-checkbox .wpcf7-list-item, .form-radio .wpcf7-list-item {
  margin-left: 0;
  display: block
}
.form-checkbox .wpcf7-list-item:not(:last-child), .form-radio .wpcf7-list-item:not(:last-child) {
  margin-bottom: .5rem
}
.form-checkbox .wpcf7-list-item-label, .form-radio .wpcf7-list-item-label {
  margin-left: .25rem
}
.form-textarea {
  height: calc(4em * 1.5 + .5em * 2 + 2px)
}
.form-policy {
  margin-top: 1.5rem
}
.form-policy .mwform-checkbox-field {
  margin-top: 1rem;
  display: block
}
.heading-2 {
  margin-bottom: 30px;
  padding-bottom: 24px;
  font-size: 24px;
  text-align: center;
  line-height: 1.3333;
  position: relative
}
@media only screen and (min-width: 1024px) {
  .heading-2 {
    margin-bottom: 70px;
    padding-bottom: 30px;
    font-size: 32px
  }
}
.heading-2::before {
  content: "";
  background: #dd9c9c;
  width: 100px;
  height: 4px;
  position: absolute;
  bottom: 0;
  left: calc(50% - 50px)
}
.heading-2 strong {
  color: #dd9c9c;
  font-weight: 700
}
.list, .list-decimal, .list-square, .list-circle, .list-disc {
  line-height: 1.5
}
.list li, .list-decimal li, .list-square li, .list-circle li, .list-disc li {
  padding-left: 1em;
  position: relative
}
.list li:not(:last-child), .list-decimal li:not(:last-child), .list-square li:not(:last-child), .list-circle li:not(:last-child), .list-disc li:not(:last-child) {
  margin-bottom: .5em
}
.list li::before, .list-decimal li::before, .list-square li::before, .list-circle li::before, .list-disc li::before {
  content: "";
  position: absolute;
  top: calc(1em * 1.5 / 2);
  left: 0;
  transform: translate3d(0, -50%, 0)
}
.list-disc li::before {
  border-radius: 50%;
  background: #333;
  width: .375em;
  height: .375em
}
.list-circle li::before {
  border: 1px solid #333;
  border-radius: 50%;
  width: .375em;
  height: .375em
}
.list-square li::before {
  background: #333;
  width: .375em;
  height: .375em
}
.list-decimal {
  counter-reset: i
}
.list-decimal li {
  padding-left: 1.25em
}
.list-decimal li::before {
  counter-increment: i;
  content: counter(i) "."
}
.notification {
  padding: 20px;
  background: #f6f4ef
}
@media only screen and (min-width: 1024px) {
  .notification {
    padding: 20px
  }
}
.table-border, .table {
  line-height: 1.5;
  width: 100%
}
.table-border th, .table th, .table-border td, .table td {
  padding: .5rem .5rem
}
@media only screen and (min-width: 1024px) {
  .table-border th, .table th, .table-border td, .table td {
    padding: .75rem 1rem
  }
}
.table-border th, .table th {
  font-weight: 700
}
.table-border td, .table-border th {
  border: 1px solid #ddd
}
.table-border thead th {
  border-color: #fff;
  background-color: #dd9c9c;
  color: #fff
}
@media only screen and (max-width: 1023px) {
  .table-scroll {
    overflow-x: auto;
    word-break: keep-all;
    white-space: nowrap;
    -webkit-overflow-scrolling: touch
  }
  .table-scroll table {
    margin-bottom: 1rem
  }
}
.breadcrumb {
  color: #333;
  font-size: .75rem;
  line-height: 1;
  overflow-x: scroll;
  word-break: keep-all;
  white-space: nowrap;
  -webkit-overflow-scrolling: touch
}
@media only screen and (min-width: 1024px) {
  .breadcrumb {
    font-size: .75rem
  }
}
.breadcrumb .container, .breadcrumb .container-full, .breadcrumb .container-1100, .breadcrumb .container-1000, .breadcrumb .container-800, .breadcrumb .container-640 {
  white-space: nowrap;
  overflow: hidden
}
.breadcrumb .container > span, .breadcrumb .container-full > span, .breadcrumb .container-1100 > span, .breadcrumb .container-1000 > span, .breadcrumb .container-800 > span, .breadcrumb .container-640 > span {
  margin-left: -1em
}
.breadcrumb a {
  padding: 1em;
  color: inherit;
  display: inline-block;
  position: relative
}
@media only screen and (min-width: 1024px) {
  .breadcrumb a {
    padding: 14px 1em
  }
}
.breadcrumb a:hover {
  text-decoration: underline
}
.breadcrumb a::after {
  content: "";
  border-top: 2px solid #dd9c9c;
  border-right: 2px solid #dd9c9c;
  width: .75em;
  height: .75em;
  position: absolute;
  top: calc(50% - .75em / 2 * 1.4 + 2px);
  right: -0.375em;
  transform: rotate(45deg)
}
.breadcrumb .breadcrumb_last {
  margin-right: .5em;
  padding: 1em;
  display: inline-block
}
@media only screen and (min-width: 1024px) {
  .breadcrumb .breadcrumb_last {
    padding: 14px 1em
  }
}
.editor {
  line-height: 2;
  word-break: break-word
}
.editor > *:first-child {
  margin-top: 0
}
.editor > *:last-child {
  margin-bottom: 0
}
.editor p, .editor h1, .editor h2, .editor h3, .editor h4, .editor h5, .editor h6, .editor blockquote, .editor ol, .editor ul, .editor dl, .editor table, .editor .wp-caption, .editor .wp-block-image, .editor .wp-block-table, .editor .crayon-syntax {
  margin-bottom: 1.5rem
}
.editor .fb_iframe_widget, .editor .twitter-tweet, .editor .instagram-media {
  margin-left: auto !important;
  margin-right: auto !important;
  margin-bottom: 1.5rem !important
}
.editor h2 {
  font-size: 1.25rem
}
@media only screen and (min-width: 1024px) {
  .editor h2 {
    font-size: 1.5rem
  }
}
.editor h3 {
  font-size: 1.125rem
}
@media only screen and (min-width: 1024px) {
  .editor h3 {
    font-size: 1.25rem
  }
}
.editor h2, .editor h3, .editor h4 {
  margin-top: 2em;
  line-height: 1.5
}
.editor h2, .editor h2 span, .editor h3, .editor h3 span, .editor h4, .editor h4 span {
  font-weight: 700
}
.editor blockquote {
  border-radius: .25rem;
  padding: 1rem 1rem 1rem 2.5rem;
  background: #eee;
  position: relative
}
.editor blockquote::before {
  content: "";
  color: #fff;
  font-family: "Font Awesome 5 Free";
  font-size: 1.25rem;
  font-weight: 900;
  line-height: 1;
  display: inline-block;
  position: absolute;
  top: .75rem;
  left: .75rem
}
.editor blockquote cite {
  display: block;
  text-align: right;
  color: #666
}
.editor blockquote > *:last-child {
  margin-bottom: 0
}
.editor ul, .editor ol {
  padding-left: 0;
  list-style: none
}
.editor ul > li {
  margin-top: 1em;
  padding-left: 1em;
  position: relative
}
.editor ul > li::before {
  content: "";
  border-radius: 50%;
  background-color: #999;
  display: block;
  width: .375em;
  height: .375em;
  position: absolute;
  left: 0;
  top: calc((1em * 2 - .375em) / 2)
}
.editor ol {
  counter-reset: counter
}
.editor ol > li {
  margin-top: .5em;
  padding-left: 1.5em;
  position: relative
}
.editor ol > li::before {
  content: counter(counter) ".";
  counter-increment: counter;
  line-height: 1.5;
  display: block;
  width: 1.5em;
  height: 1.5em;
  position: absolute;
  top: calc((1em * 2 - 1em * 1.5) / 2);
  left: 0
}
.editor ul ul, .editor ul ol, .editor ol ul, .editor ol ol {
  margin-bottom: 0;
  margin-left: 1.5em
}
.editor dt {
  font-weight: bold
}
.editor dd {
  padding-left: 2em;
  position: relative
}
.editor dd::before {
  content: "";
  background: #999;
  display: block;
  width: 1.25em;
  height: 1px;
  position: absolute;
  top: calc(1em * 2 / 2);
  left: 0
}
.editor table {
  width: 100%
}
.editor table th, .editor table td {
  border: 1px solid #ccc;
  padding: 1em .5em;
  min-width: 5em
}
.editor table thead th {
  text-align: center
}
.editor table tbody th {
  text-align: left;
  vertical-align: middle;
  min-width: 6em
}
.editor pre {
  overflow: scroll
}
.editor img {
  max-width: 100%
}
.editor a:not(.button) {
  color: #dd9c9c;
  text-decoration: underline
}
.editor code {
  border-radius: .125rem;
  padding: .125em .5em;
  background: #eee
}
.editor img.aligncenter {
  margin-left: auto;
  margin-right: auto;
  display: block
}
.editor .alignleft, .editor .has-text-align-left {
  text-align: left
}
.editor .aligncenter, .editor .has-text-align-center {
  text-align: center
}
.editor .alignright, .editor .has-text-align-right {
  text-align: right
}
.editor .wp-caption {
  max-width: 100%
}
.editor .wp-caption-text {
  margin-top: .5rem;
  color: #999;
  font-size: .875em;
  font-style: italic;
  text-align: center
}
.editor .wp-block-image {
  text-align: center
}
.editor .wp-block-image.u-border {
  border: none !important
}
.editor .wp-block-image.u-border img {
  border: 1px solid #ccc;
  border-radius: .125rem;
  overflow: hidden
}
.editor .wp-block-image figcaption {
  color: #aaa;
  font-size: .875em;
  font-style: italic
}
.form-heading {
  margin-top: 10px;
  margin-bottom: 5px;
  display: block
}
.form-name {
  width: calc(6em + .75em * 2)
}
.form-age {
  width: calc(4em + .75em * 2)
}
.form-no-br br {
  display: none
}
.form-note {
  margin-top: 15px;
  line-height: 26px
}
@media only screen and (min-width: 1024px) {
  .form-note {
    margin: 40px auto;
    width: 480px
  }
}
.form-note-agree {
  margin: 20px 0;
  text-align: center
}
.form__action {
  margin-top: 20px;
  text-align: center
}
.form__action li {
  margin-top: 20px
}
.pagination {
  display: flex;
  flex-wrap: wrap;
  justify-content: center
}
@media only screen and (max-width: 1023px) {
  .pagination {
    margin: 2rem -15px;
    padding: 0 .5rem
  }
}
@media only screen and (min-width: 1024px) {
  .pagination {
    margin: 40px 0
  }
}
.pagination .page-numbers {
  margin: 0;
  color: #818181;
  font-family: "Antonio", sans-serif;
  font-weight: 700;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 44px;
  position: relative;
  transition: .3s
}
@media only screen and (min-width: 1024px) {
  .pagination .page-numbers {
    margin: 0 4px;
    font-size: 18px;
    width: 50px;
    height: 50px
  }
}
.pagination .page-numbers:hover {
  background: #f6f4ef;
  color: #dd9c9c
}
.pagination .page-numbers.current {
  color: #333
}
.pagination .page-numbers.prev::before, .pagination .page-numbers.prev::after, .pagination .page-numbers.next::before, .pagination .page-numbers.next::after {
  content: "";
  background: #818181;
  width: 8px;
  height: 2px;
  position: absolute;
  left: calc(50% - 8px / 2);
  top: calc(50% - 2px / 1)
}
.pagination .page-numbers.next::before, .pagination .page-numbers.next::after {
  margin-right: 2px
}
.pagination .page-numbers.prev::before {
  transform: rotate(-45deg);
  transform-origin: bottom left
}
.pagination .page-numbers.prev::after {
  transform: rotate(45deg);
  transform-origin: top left
}
.pagination .page-numbers.next::before {
  transform: rotate(45deg);
  transform-origin: bottom right
}
.pagination .page-numbers.next::after {
  transform: rotate(-45deg);
  transform-origin: top right
}
.pagination .page-numbers.dots:hover {
  background: inherit;
  color: inherit
}
@media only screen and (min-width: 1024px) {
  .slick-dotted {
    margin-bottom: 50px
  }
}
.slick-dots {
  bottom: -30px
}
@media only screen and (min-width: 1024px) {
  .slick-dots {
    bottom: -50px
  }
}
.slick-dots li {
  width: 10px;
  height: 10px
}
.slick-dots li button {
  width: 10px;
  height: 10px
}
.slick-dots li button::before {
  content: "";
  border-radius: 50%;
  background: #dd9c9c;
  display: block;
  width: 10px;
  height: 10px
}
.step-list__item {
  margin-top: 40px;
  padding-left: calc(60px + 10px);
  position: relative
}
@media only screen and (min-width: 1024px) {
  .step-list__item {
    margin-top: 60px;
    padding-left: calc(320px + 40px + 86px + 20px);
    min-height: 214px
  }
}
.step-list__item:not(:last-child)::before {
  content: "";
  background: url(img/step-list-dot.png) 50% 0/6px auto repeat-y;
  width: 6px;
  height: 100%;
  position: absolute;
  top: 60px;
  left: calc((60px - 6px) / 2)
}
@media only screen and (min-width: 1024px) {
  .step-list__item:not(:last-child)::before {
    background-size: 8px auto;
    width: 8px;
    top: 86px;
    left: calc(320px + 40px + (86px - 8px) / 2)
  }
}
.step-list__number {
  border: 2px solid #dd9c9c;
  border-radius: 50%;
  background: #fff;
  color: #dd9c9c;
  font-family: "Antonio", sans-serif;
  font-size: 14px;
  font-weight: 600;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  align-content: center;
  justify-content: center;
  width: 60px;
  height: 60px;
  position: absolute;
  left: 0
}
@media only screen and (min-width: 1024px) {
  .step-list__number {
    font-size: 22px;
    width: 86px;
    height: 86px;
    left: calc(320px + 40px)
  }
}
.step-list__number span {
  margin-top: 5px;
  font-size: 18px;
  text-align: center;
  display: block;
  width: 100%
}
@media only screen and (min-width: 1024px) {
  .step-list__number span {
    font-size: 28px
  }
}
.step-list__heading {
  padding-top: 2px;
  margin-bottom: 20px;
  font-size: 20px;
  line-height: 28px
}
@media only screen and (min-width: 1024px) {
  .step-list__heading {
    padding-top: 5px;
    font-size: 28px;
    line-height: 38px
  }
}
.step-list__heading strong {
  color: #dd9c9c
}
.step-list__image {
  margin-bottom: 10px
}
@media only screen and (min-width: 1024px) {
  .step-list__image {
    width: 320px;
    position: absolute;
    top: 0;
    left: 0
  }
}
@media only screen and (min-width: 1024px) {
  .step-list__desc p {
    margin-bottom: 20px
  }
}
.clearfix {
  display: block
}
.clearfix::before, .clearfix::after {
  content: "";
  display: block;
  clear: both
}
.embed-youtube {
  padding-top: 52.5%;
  position: relative
}
.embed-youtube > iframe {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0
}
.embed-googlemaps {
  padding-top: 300px;
  width: 100%;
  position: relative
}
.embed-googlemaps > iframe {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0
}
.image-circle {
  border-radius: 50%
}
.shadow {
  box-shadow: .125rem .125rem .5rem rgba(51, 51, 51, .1)
}
@media only screen and (min-width: 1024px) {
  .shadow {
    box-shadow: 5px 5px 20px rgba(51, 51, 51, .1)
  }
}
.header, .header--fixed {
  border-bottom: 1px solid #eee;
  display: flex;
  align-items: center;
  justify-content: space-between;
  position: relative;
  z-index: 11
}
.page-id-8627 .header,
.page-id-11065 .header{/*NEWロゴお問い合わせ*/
    border-bottom: none;
}
@media only screen and (max-width: 1023px) {
  .header, .header--fixed {
    padding: 0 15px;
    height: 50px
  }
}
@media only screen and (min-width: 1024px) {
  .header, .header--fixed {
    padding: 0 40px;
    height: 100px
  }
}
.home .header, .home .header--fixed {
  border-bottom: none
}
.header__logo-area {
  border-top: 5px solid #dd9c9c;
  padding: 12px 2px 0;
  height: 100%
}
@media only screen and (min-width: 1024px) {
  .header__logo-area {
    border-top-width: 10px;
    padding: 25px 10px 0
  }
}
@media only screen and (max-width: 1023px) {
  .header__logo {
    height: 24px
  }
}
@media only screen and (min-width: 1024px) {
  .header__logo {
    height: 39px
  }
}


.header__logo-area-new {
  border-top: 5px solid #dd9c9c;
  padding: 8px 2px 0;
  height: 100%
}
@media only screen and (min-width: 1024px) {
  .header__logo-area-new {
    border-top-width: 10px;
    padding: 15px 10px 0
  }
}
@media only screen and (max-width: 1023px) {
  .header__logo-area-new .header__logo {
    height: 40px
  }
}
@media only screen and (min-width: 1024px) {
  .header__logo-area-new .header__logo {
    height: 65px
  }
}

@media only screen and (max-width: 1023px) {
  .header__nav-toggle {
    margin-right: -7px;
    width: 44px;
    height: 44px;
    position: relative
  }
}
@media only screen and (max-width: 1023px) {
  .header__nav-toggle-bar {
    margin-top: -1px;
    margin-left: calc(30px / 2 * -1);
    background-color: #dd9c9c;
    display: block;
    width: 30px;
    height: 4px;
    position: absolute;
    top: 50%;
    left: 50%;
    z-index: 11;
    transition: .3s
  }
  .header__nav-toggle-bar:first-child {
    margin-top: -12px
  }
  .header__nav-toggle-bar:last-child {
    margin-top: 10px
  }
}
[data-is-nav-visible=true] .header__nav-toggle-bar:first-child {
  margin-top: 0;
  transform: rotate(45deg)
}
[data-is-nav-visible=true] .header__nav-toggle-bar:nth-child(2) {
  margin-left: 0;
  width: 0
}
[data-is-nav-visible=true] .header__nav-toggle-bar:last-child {
  margin-top: 0;
  transform: rotate(-45deg)
}
.header--fixed {
  background: #fff;
  width: 100%;
  position: fixed;
  top: 0;
  left: 0;
  box-shadow: 0 3px 3px rgba(0, 0, 0, .16);
  transition: .3s;
  transform: translateY(-120%)
}
@media only screen and (min-width: 1024px) {
  .header--fixed {
    height: 60px
  }
}
@media only screen and (min-width: 1024px) {
  .header--fixed .header__logo-area {
    padding-top: 10px
  }
}
@media only screen and (min-width: 1024px) {
  .header--fixed .header__logo {
    height: 32px
  }
}
.header--fixed.is-show {
  transform: translateY(0)
}
.hamburger-menu {
  padding-top: 100px;
  padding-bottom: 20px;
  background: #fff;
  position: fixed;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 10;
  overflow: auto;
  visibility: hidden;
  opacity: 0;
  transition: .3s
}
[data-is-nav-visible=true] .hamburger-menu {
  visibility: visible;
  opacity: 1
}
.hamburger-menu__heading {
  margin-bottom: 20px;
  color: #dd9c9c;
  font-family: "Antonio", sans-serif;
  font-size: 24px;
  text-align: center
}
.hamburger-menu__item {
  margin-top: 1px
}
.hamburger-menu__link {
  background: #eee;
  padding: 20px 10px;
  font-size: 18px;
  font-weight: 700;
  text-align: center;
  display: block
}
.hamburger-menu__contact {
  margin-top: 20px;
  text-align: center
}
.hamburger-menu__contact img {
  filter: drop-shadow(0 3px 3px rgba(51, 51, 51, 0.2))
}
[data-is-nav-visible=true] {
  overflow: hidden
}
.global-menu {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  height: 100%
}
@media only screen and (max-width: 1023px) {
  .global-menu {
    display: none
  }
}
.global-menu__item {
  margin-left: 30px;
  font-weight: 700;
  text-align: center;
  display: flex;
  align-items: center;
  height: 100%;
  transition: .3s
}
.global-menu__item:hover {
  color: #dd9c9c
}
/*
.fixed-cta {
  position: fixed;
  bottom: 20px;
  right: 5px;
  z-index: 9;
  transition: .3s;
 }
@media only screen and (min-width: 1024px) {
  .fixed-cta {
    right: 0
  }
} 
*/ 
.fixed-cta {
  position: fixed;
  bottom: 0px;
  right: 0px;
  z-index: 9;
  transition: .3s;
  overflow: hidden;
  width: 200px;
}
.fixed-cta a {
}
.fixed-cta__button {
  transition: .3s
}
.fixed-cta__button:hover {
  opacity: .5
}
.fixed-cta__button img {
  filter: drop-shadow(0 2px 4px rgba(51, 51, 51, 0.2));
  margin-top: 10px;
}
@media only screen and (max-width: 767px) {
.fixed-cta {
  width: 100%;
}
.fixed-cta a {
  float: left;
  width: 50%;
}
.fixed-cta__button img {
  margin-top: 0px;
  width: 100%;  
}
}


.fixed-cta__icon {
  display: flex;
  align-items: center
}
.fixed-cta__text {
  color: #fff;
  font-size: 12px;
  font-weight: 700;
  text-align: center;
  display: block
}
.fixed-cta__text strong {
  margin-top: 4px;
  font-size: 18px;
  display: block
}
.cta {
  margin-top: 40px;
  margin-bottom: -40px;
  padding: 30px 0 40px;
  position: relative
}
@media only screen and (min-width: 1024px) {
  .cta {
    margin-top: 120px;
    margin-bottom: -120px;
    padding: 80px 0;
    height: 720px
  }
}
.cta::before {
  content: "";
  background: url(img/cta-bg.jpg) 50% 50%/cover no-repeat;
  width: 100vw;
  height: calc(30px + 20px + 36vw * 501 / 403);
  position: absolute;
  top: 0;
  left: 0
}
@media only screen and (min-width: 1024px) {
  .cta::before {
    height: 100%
  }
}
.cta .container, .cta .container-full, .cta .container-1100, .cta .container-1000, .cta .container-800, .cta .container-640 {
  position: relative
}
.cta__catch {
  float: left
}
@media only screen and (max-width: 1023px) {
  .cta__catch {
    margin-bottom: 20px
  }
}
@media only screen and (max-width: 1023px) {
  .cta__catch img {
    width: 36vw
  }
}
@media only screen and (min-width: 1024px) {
  .cta__catch img {
    width: 420px
  }
}
.cta__lead {
  color: #fff;
  font-weight: 700;
  line-height: 1.75;
  text-shadow: 0 0 4px rgba(0, 0, 0, .5)
}
@media only screen and (max-width: 1023px) {
  .cta__lead {
    margin-bottom: 0;
    padding-top: calc((36vw * 198 / 149 - 4.5vw * 1.75 * 2) / 2);
    font-size: 4.5vw;
    float: right
  }
}
@media only screen and (min-width: 1024px) {
  .cta__lead {
    margin-bottom: 40px;
    margin-left: 500px;
    padding-top: 40px;
    font-size: 36px;
    line-height: 54px
  }
}
.cta__desc {
  font-weight: 700
}
@media only screen and (max-width: 1023px) {
  .cta__desc {
    padding-top: 20px;
    clear: both
  }
}
@media only screen and (min-width: 1024px) {
  .cta__desc {
    margin-left: 500px;
    color: #fff
  }
}
.cta__action {
  margin-top: 20px
}
@media only screen and (min-width: 1024px) {
  .cta__action {
    margin-top: 80px;
    margin-left: 500px
  }
}
.post-type-archive-store .cta {
  margin-top: 0
}
.footer {
  margin-top: 40px
}
@media only screen and (min-width: 1024px) {
  .footer {
    margin-top: 120px
  }
}
.footer__top {
  padding: 40px 0;
  background: #eee;
  color: #818181
}
@media only screen and (max-width: 1023px) {
  .footer__area-list {
    margin-top: -15px
  }
}
.footer__area-list > li {
  border-bottom: 1px solid #ddd;
  padding: 15px 0;
  font-size: 18px;
  font-weight: 700
}
@media only screen and (min-width: 1024px) {
  .footer__area-list > li {
    padding: 20px 0;
    display: flex
  }
}
@media only screen and (max-width: 1023px) {
  .footer__area-name {
    margin-bottom: 15px;
    display: inline-block
  }
}
@media only screen and (min-width: 1024px) {
  .footer__area-name {
    width: 160px
  }
}
.footer__store-list {
  margin-top: -15px;
  font-size: 16px;
  font-weight: 400;
  display: flex;
  flex-wrap: wrap
}
@media only screen and (min-width: 1024px) {
  .footer__store-list {
    width: calc(100% - 160px)
  }
}
.footer__store-list > li {
  margin-top: 15px
}
.footer__store-list li:not(:last-child)::after {
  content: "|";
  margin: 0 10px
}
@media only screen and (min-width: 1024px) {
  .footer__store-list li:not(:last-child)::after {
    margin: 0 20px
  }
}
.footer__store-list a:hover {
  color: #333;
  text-decoration: underline
}
.footer__bottom {
  padding: 40px;
}
@media only screen and (max-width: 1023px) {
  .footer__bottom .container-1000 {
    padding: 0 40px
  }
}
@media only screen and (min-width: 1024px) {
  .footer__bottom .container-1000 {
    display: flex;
    align-items: center;
    justify-content: space-between
  }
}
@media only screen and (max-width: 1023px) {
  .footer__logo {
    margin-bottom: 40px;
    width: 150px
  }
}
@media only screen and (min-width: 1024px) {
  .footer__logo {
    width: 150px
  }
}
@media only screen and (max-width: 1023px) {
  .footer__menu {
    margin-top: -10px
  }
}
@media only screen and (min-width: 1024px) {
  .footer__menu {
    margin-right: -20px;
    width: calc(100% - 150px - 40px + 20px)
  }
}
@media only screen and (max-width: 1023px) {
  .footer__menu a {
    padding: 10px 0;
    display: block;
    font-size: 14px;
  }
}
@media only screen and (min-width: 1024px) {
  .footer__menu a {
    margin: 15px 15px 15px 0;
    display: inline-block;
    font-size: 15px;    
  }
}
.footer__menu a:hover {
  text-decoration: underline
}
.footer__copyright {
  padding: 10px 0 80px 0;
  background: #333;
  color: #fff;
  font-size: 12px;
  text-align: center
}
@media only screen and (min-width: 1024px) {
  .footer__copyright {
    padding: 30px 0 30px 0;
    font-size: 14px
  }
}
.footer__copyright a:hover {
  text-decoration: underline
}
.page-header {
  margin-bottom: 40px
}
@media only screen and (min-width: 1024px) {
  .page-header {
    margin-bottom: 80px;
    height: calc(40px + 320px);
    position: relative
  }
}
@media only screen and (min-width: 1024px) {
  .page-header > .container, .page-header > .container-full, .page-header > .container-1100, .page-header > .container-1000, .page-header > .container-800, .page-header > .container-640 {
    margin-right: calc(50vw + 160px);
    padding: 0 50px;
    max-width: calc((1200px / 2) - 160px)
  }
}
.page-header__catch {
  margin-top: 30px;
  padding-bottom: 16px;
  color: #818181;
  font-family: "Antonio", sans-serif;
  font-size: 40px;
  font-weight: 300;
  text-transform: capitalize;
  position: relative
}
@media only screen and (min-width: 1024px) {
  .page-header__catch {
    margin-top: 70px;
    padding-bottom: 30px;
    font-size: 60px
  }
}
.page-header__catch:first-letter {
  color: #dd9c9c;
  font-size: 60px
}
@media only screen and (min-width: 1024px) {
  .page-header__catch:first-letter {
    font-size: 80px
  }
}
.page-header__catch::after {
  content: "";
  background: #dd9c9c;
  width: 72%;
  height: 4px;
  position: absolute;
  bottom: 0;
  left: 0
}
@media only screen and (min-width: 1024px) {
  .page-header__catch::after {
    width: 100%
  }
}
.page-header__title {
  margin-top: 10px;
  font-size: 18px;
  font-weight: 700
}
@media only screen and (min-width: 1024px) {
  .page-header__title {
    margin-top: 20px;
    font-size: 20px
  }
}
@media only screen and (max-width: 1023px) {
  .page-header__image {
    margin-top: 40px;
    height: 40vw
  }
}
@media only screen and (min-width: 1024px) {
  .page-header__image {
    max-width: calc(800px + 160px);
    height: 320px;
    position: absolute;
    top: 40px;
    left: calc(50vw - 160px);
    right: 0
  }
}
.page-header__image img {
  object-fit: cover;
  width: 100%;
  height: 100%
}
.page-header + .section {
  margin-top: -40px
}
@media only screen and (min-width: 1024px) {
  .page-header + .section {
    margin-top: -80px
  }
}
.post-type-archive-store .page-header + .section {
  margin-top: 0
}
.editor .no_bullets {
  background: #fbfbfb;
  padding: 40px
}
.editor .toc_title {
  display: inline-block;
  padding: 0 10px;
  margin-bottom: 10px
}
.editor .toc_list a:not(.button) {
  color: #2e2e2e;
  text-decoration: none
}
.editor .toc_list li {
  line-height: 1.5
}
.editor .toc_list li::before {
  display: none
}
.editor .toc_list li a .toc_number toc_depth_1 {
  font-weight: bold
}
.editor .toc_list span {
  background: pink;
  padding: 4px 8px;
  border-radius: 4px;
  color: #fff
}
@media screen and (max-width: 768px) {
  .editor .no_bullets {
    padding: 20px
  }
}
@media only screen and (max-width: 1023px) {
  .summary {
    padding-bottom: 0
  }
}
@media only screen and (min-width: 1024px) {
  .summary {
    padding-top: 60px;
    position: relative
  }
}
@media only screen and (min-width: 1024px) {
  .summary .heading-2 {
    margin-bottom: 60px;
    margin-right: 50%;
    margin-left: auto;
    max-width: 640px
  }
}
@media only screen and (max-width: 1023px) {
  .summary__image {
    padding-top: calc(100vw * 4 / 5);
    position: relative;
    overflow: hidden
  }
}
@media only screen and (min-width: 1024px) {
  .summary__image {
    width: 50%;
    max-width: 800px;
    height: 524px;
    position: absolute;
    top: 0;
    left: 50%
  }
}
@media only screen and (max-width: 1023px) {
  .summary__image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    position: absolute;
    top: 0;
    left: 0;
    transform: scale(1.2);
    transform-origin: 50% 75%
  }
}
@media only screen and (min-width: 1024px) {
  .summary__image img {
    width: 100%;
    height: 100%;
    object-fit: cover
  }
}
.summary__box {
  background: #f6f4ef;
  padding: 40px 15px 60px
}
@media only screen and (min-width: 1024px) {
  .summary__box {
    padding: 60px 40px;
    margin-right: 50%;
    margin-left: auto;
    max-width: 640px
  }
}
.summary__box p {
  margin-bottom: 20px;
  line-height: 1.75
}
.summary__box .button-secondary {
  margin-top: 40px
}
@media only screen and (min-width: 1024px) {
  .summary__box .button-secondary {
    /*margin-top:60px*/
  }
}
.monitor__desc {
  margin-bottom: 40px
}
@media only screen and (min-width: 1024px) {
  .monitor__desc {
    margin-top: -40px;
    text-align: center
  }
}
.monitor__action {
  margin-top: 20px
}
@media only screen and (min-width: 1024px) {
  .monitor__action {
    margin-top: 80px;
    display: flex;
    justify-content: center
  }
}
@media only screen and (max-width: 1023px) {
  .monitor__action a {
    margin-top: 20px
  }
}
@media only screen and (min-width: 1024px) {
  .monitor__action a {
    margin: 0 10px
  }
}
/*
.top-first-view{position:relative}@media only screen and (min-width: 1024px){.top-first-view{margin-bottom:120px;height:calc(100vh - 100px);overflow:hidden}}@media only screen and (max-width: 1023px){.top-first-view__image-list{margin-bottom:50px !important}}@media only screen and (min-width: 1024px){.top-first-view__image-list{margin-bottom:0 !important;width:calc(50% + 140px);max-width:calc(800px + 140px);position:absolute;top:0;bottom:60px;right:calc(50% - 140px);z-index:3}}.top-first-view__image-list>.slick-list,.top-first-view__image-list>.slick-list *{height:100%}.top-first-view .slick-dots{bottom:-20px}@media only screen and (min-width: 1024px){.top-first-view .slick-dots{left:35px;text-align:left}}.top-first-view__image img{width:100%;height:100%;object-fit:cover}.top-first-view__catch{color:#fff;font-family:"Antonio",sans-serif;font-size:26px;font-weight:500;position:absolute;text-shadow:0 0 .25rem rgba(51,51,51,.5)}@media only screen and (max-width: 1023px){.top-first-view__catch{margin-top:-0.625em;margin-left:15px}}@media only screen and (min-width: 1024px){.top-first-view__catch{font-size:50px;bottom:calc(500px + 40px);left:calc(50% + 100px + 80px);z-index:2}}.top-first-view__box{padding:40px 5px;background:#eee;display:flex;justify-content:center}@media only screen and (max-width: 1023px){.top-first-view__box{margin-left:15px}}@media only screen and (min-width: 1024px){.top-first-view__box{margin-right:-40px;padding:120px 80px;position:absolute;bottom:0;left:calc(50% + 100px);right:calc(50% - 640px);z-index:1}}.top-first-view .heading-2{margin-bottom:20px;padding-bottom:0;text-align:left}.top-first-view .heading-2::before{content:none}.top-first-view p{margin-bottom:0;line-height:26px}
*/
.top-first-view {
  /*height: calc(100vh - 100px);*/
}
@media only screen and (max-width: 767px) {
  .top-first-view_bg {
    position: relative;
    z-index: 1;
    width: 100%;
    height: calc(65vh - 100px);
    background-image: url(https://www.shapes-international.co.jp/wp-content/uploads/2023/02/first-view_20230301_sp.jpg);
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center top;
  }
}
@media only screen and (min-width: 768px) {
  .top-first-view_bg {
    position: relative;
    z-index: 1;
    width: 100%;
    background-image: url(https://www.shapes-international.co.jp/wp-content/uploads/2023/02/first-view_20230301.jpg);
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center top;
    padding-top: 52.08333%;
  }
}
@media only screen and (min-width: 1920px) {
  .top-first-view_bg {
    position: relative;
    z-index: 1;
    width: 100%;
    height: calc(80vh - 100px);
    background-image: url(https://www.shapes-international.co.jp/wp-content/uploads/2023/02/first-view_20230301.jpg);
    background-size: auto 100%;
    background-repeat: no-repeat;
    background-position: center top;
    padding-top: 0;
  }
}
@media only screen and (max-width: 767px) {
  .top-first-view_bg_cp {
    position: relative;
    z-index: 1;
    width: 100%;
    /*height: calc(65vh - 100px);*/
    /*height: calc(100vw / 1023 * 1558);*/
    height: calc(100vw / 1023 * 1186);
    /*background-image: url(https://www.shapes-international.co.jp/wp-content/themes/reborn/img/first-view_202405_CP_sp.jpg);*/
    background-image: url(https://www.shapes-international.co.jp/wp-content/themes/reborn/img/first-view_CPbg_sp.jpg);
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center top;
  }
  .top-first-view_bg_cp .bt a {
    width: 70%;
    position: absolute;
    right: 15%;
    /*bottom: 3%;*/
    bottom: 5%;
  }
 .top-first-view_bg_cp .cp_img .pc_only {
     display: none;
}
 .top-first-view_bg_cp .cp_img a {
    width: 100%;
    position: absolute;
    right: 0%;
    bottom: 0%; 
  }
 .top-first-view_bg_cp .cp_img a img {
     width: 100%;
     height: auto;
}  
}
@media only screen and (min-width: 768px) {
  .top-first-view_bg_cp {
    position: relative;
    z-index: 1;
    width: 100%;
    /*background-image: url(https://www.shapes-international.co.jp/wp-content/themes/reborn/img/first-view_202405_CP.jpg);*/
    background-image: url(https://www.shapes-international.co.jp/wp-content/themes/reborn/img/first-view_CPbg.jpg);
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center top;
    /*padding-top: 52.08333%;*/
    height: calc(100vw / 1920 * 1000);
  }
  .top-first-view_bg_cp .bt a {
    /*width: 25%;*/
    width: 19.5%;
    position: absolute;
    right: 1.5%;
    /*bottom: 20px;*/
    bottom: 70px;
  }
 .top-first-view_bg_cp .cp_img .sp_only {
     display: none;
}  
 .top-first-view_bg_cp .cp_img a {
    width: auto;
    height: 100%;
    position: absolute;
    right: 0%;
    bottom: 0%;
  } 
 .top-first-view_bg_cp .cp_img a img {
     width: auto;
     height: 100%;
}
}
@media only screen and (min-width: 1920px) {
  .top-first-view_bg_cp {
    position: relative;
    z-index: 1;
    width: 100%;
    height: calc(80vh - 100px);
    /*background-image: url(https://www.shapes-international.co.jp/wp-content/themes/reborn/img/first-view_202405_CP.jpg);*/
    background-image: url(https://www.shapes-international.co.jp/wp-content/themes/reborn/img/first-view_CPbg.jpg);
    background-size: auto 100%;
    background-repeat: no-repeat;
    background-position: center top;
    padding-top: 0;
  }
}
.top-first-view_bg_cp a:hover {
  opacity: 0.85;
}
.top-first-view__copy {
  width: 80%;
  z-index: 2;
  position: absolute;
  bottom: 5%;
  left: 50%;
  transform: translate(-50%, 0);
}
@media only screen and (max-width: 767px) {
  .top-first-view__copy .display-pc_only {
    display: none;
  }
}
@media only screen and (min-width: 768px) {
  .top-first-view__copy .display-m_only {
    display: none;
  }
}
@media only screen and (min-width: 1024px) {
  .top-first-view__copy {
    max-width: 700px;
  }
}
@media only screen and (max-width: 767px) {
  .top-first-view .bnr_wrap {
    margin: 20px auto;
  }
  .top-first-view .bnr_wrap .bnr_w2 {
    margin: 20px auto 0 auto;
    width: 85%;
  }
  .top-first-view .bnr_wrap .bnr_w2 li {
    width: 90%;
    margin: 0px auto 20px auto;
  }
  .top-first-view .bnr_wrap .bnr_w1 {
    margin: 0px auto 0 auto;
    width: 85%;
    text-align: center;
  }
  .top-first-view .bnr_wrap .bnr_w1 li {
    width: 90%;
    margin: 0px auto 0 auto;
  }
}
@media only screen and (min-width: 768px) {
  .top-first-view .bnr_wrap {
    margin: 40px auto;
    max-width: 1000px;
    width: 80%;
  }
  .top-first-view .bnr_wrap .bnr_w2 {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: baseline;
    margin: 0 auto 0 auto;
    width: 85%;
  }
  .top-first-view .bnr_wrap .bnr_w2 li {
    width: 48%;
    margin: 0px auto 0px auto;
  }
  .top-first-view .bnr_wrap .bnr_w1 {
    margin: 0px auto 0 auto;
    width: 44%;
    text-align: center;
  }
  .top-first-view .bnr_wrap .bnr_w1 li {
    width: 100%;
    margin: 0 auto;
  }
}
.top-first-view .bnr_wrap img {
  width: 100%;
}
.top-first-view p.kome {
  margin: 5px 0 0 0;
  text-align: left;
  font-size: 10px;
}
.top-first-view p.kome2 {
  width: 88%;
  margin: 10px auto 0 auto;
  text-align: left;
  font-size: 10px;
  line-height: 140%;
}
.top-first-view p.kome2 br {
  display: none;
}
@media only screen and (min-width: 768px) {
  .top-first-view p.kome2 {
    text-align: right;
  }
  .top-first-view p.kome2 br {
    display: block;
  }
}
/*FV下ボタン*/
.bnr_wrap .bt {
  width: 80%;
  max-width: 360px;
  margin: 20px auto;
  text-align: center;
}
@media only screen and (min-width: 768px) {
  .bnr_wrap .bt {
    margin: 40px auto;
  }
}
.bnr_wrap .bt a {
  width: 100%;
  background: #333;
  color: #fff;
  border: none;
  font-size: 1.125rem;
  font-weight: 700;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: .3s;
  appearance: none;
  text-align: center;
  text-decoration: none;
  color: #FFF;
  padding: 10px 0;
  border-radius: 10px;
}
.bnr_wrap .bt a img {
  width: 90%;
  max-width: 340px;
  height: auto;
}
@media only screen and (min-width: 768px) {
  .bnr_wrap .bt a img {}
}
.bnr_wrap .bt a.pink {
  background-color: #E22C6D;
}
.bnr_wrap .bt a.green {
  /*background-color: #47D030;*/
  background-color: #00B050;
}
.bnr_wrap .css_btn_class:hover {
  opacity: 0.7;
}
/*リニューアル トップ 2023/04/01〜 */
@media only screen and (min-width: 768px) {
  .summary_top_new {
    background: #eeeeee;
  }
  .summary_top_new .container {
    position: relative;
  }
  .summary_top_new .summary__image {
    width: 50%;
    max-width: 600px;
    height: 430px;
    position: absolute;
    top: 0;
    left: 50%;
  }
  .summary_top_new .summary__box {
    margin-right: 50%;
    margin-left: auto;
    max-width: 600px;
    background: #eee;
    padding: 0px 15px 0px 15px;
  }
  .summary_top_new .summary__box::before {
    content: "By Woman,";
    font-family: 'Antonio', sans-serif;
    font-size: 120px;
    color: #fff;
    line-height: 80%;
    margin: 0;
    padding: 0;
    opacity: 0.5;
  }
  .summary_top_new .summary__box::after {
    content: "For Woman.";
    font-family: 'Antonio', sans-serif;
    font-size: 120px;
    color: #fff;
    line-height: 80%;
    margin: 0;
    padding: 0;
    opacity: 0.5;
  }
  .summary_top_new .summary__box p {
    margin-bottom: 0px;
    line-height: 1.75;
  }
  .summary_top_new h2.summary_h2 {
    color: #e73278;
    font-size: 36px;
    text-align: left;
    font-weight: bold;
    margin: 10px 0 10px 0;
    line-height: 140%;
  }
  .summary_top_new h2.summary_h2 span {
    font-size: 25px;
  }
  .summary_top_new .button-secondary {
    margin-top: 40px;
  }
  .summary_top_new .button-secondary:hover {
    background: #e73278;
    color: #fff;
  }
}
@media only screen and (max-width: 767px) {
  .summary_top_new {
    background: #eeeeee;
  }
  .summary_top_new .container {
    position: relative;
  }
  .summary_top_new .summary__image {
    padding-top: calc(100vw * 4 / 6);
    position: relative;
    overflow: hidden;
  }
  .summary_top_new .summary__image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    position: absolute;
    top: 0;
    left: 0;
    transform: scale(1.0);
    transform-origin: 50% 75%;
  }
  .summary_top_new .summary__box {
    /*max-width:600px;*/
    width: 100%;
    background: #eee;
    padding: 0px 0px 0px 0px;
    margin: 0px auto 0px auto;
    text-align: center;
  }
  .summary_top_new .summary__box::before {
    content: "By Woman,";
    font-family: 'Antonio', sans-serif;
    font-size: 4.5rem;
    color: #fff;
    line-height: 80%;
    margin: 0;
    padding: 0;
    opacity: 0.5;
  }
  .summary_top_new .summary__box::after {
    content: "For Woman.";
    font-family: 'Antonio', sans-serif;
    font-size: 4.5rem;
    color: #fff;
    line-height: 80%;
    margin: 0;
    padding: 0;
    opacity: 0.5;
  }
  .summary_top_new .summary__box p {
    margin-bottom: 0px;
    line-height: 1.75;
    font-size: 0.7rem;
  }
  .summary_top_new h2.summary_h2 {
    color: #e73278;
    font-size: 1.8rem;
    /*text-align: left;*/
    font-weight: bold;
    margin: 10px 0 10px 0;
    line-height: 140%;
  }
  .summary_top_new h2.summary_h2 span {
    font-size: 0.9rem;
  }
  .summary_top_new .button-secondary {
    margin-top: 40px;
  }
  .summary_top_new .button-secondary:hover {
    background: #e73278;
    color: #fff;
  }
}
@media only screen and (min-width: 768px) {
  .feature.feature_top_new h2.heading-2 span {
    font-size: 25px;
    margin-left: 0;
    margin-right: 0;
    color: #333333;
    font-weight: normal;
    font-family: "Antonio", sans-serif;
    -webkit-text-stroke: 0;
    text-stroke: 0;
    text-shadow: none;
  }
  .feature.feature_top_new .feature__item {
    padding: 0px 0px 0px 0px;
    border-top: 10px solid #8f8f8f;
    background: #f0cecb;
    border-left: 0;
    border-right: 0;
    border-bottom: 0;
  }
  .feature.feature_top_new .feature__item p {
    line-height: 26px;
  }
  .feature.feature_top_new .feature__item p:last-child {
    margin-bottom: 0;
  }
  .feature.feature_top_new .feature__item-number {
    margin: 20px 20px 20px 20px;
    font-size: 20px;
    text-align: right;
    position: relative;
    color: #ffffff;
    font-family: "Antonio", sans-serif;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    line-height: 100%;
    padding: 0;
  }
  .feature.feature_top_new .feature__item-number span {
    margin: 0px;
    padding: 0px 0px 0 10px;
    font-family: "Antonio", sans-serif;
    font-size: 50px;
  }
  .feature.feature_top_new .feature__item-number::after {
    content: "";
    display: none;
  }
  .feature.feature_top_new .feature__item-img {
    width: 100%;
    text-align: center;
  }
  .feature.feature_top_new .feature__item-heading {
    color: #333333;
    font-size: 22px;
    font-weight: 700;
    text-align: center;
    margin: 20px auto;
    line-height: 140%;
    display: flex;
    align-items: center;
    justify-content: center;
    height: 130px;
  }
  .feature.feature_top_new .feature__item-heading h3 {
    color: #333333;
    font-size: 22px;
    font-weight: 700;
    text-align: center;
    margin: 0px auto;
    line-height: 140%;
  }
  .feature.feature_top_new .feature__item-heading .pink {
    font-size: 30px;
    color: #e73278;
  }
  .feature.feature_top_new .feature__item-heading .up {
    font-size: 30px;
  }
}
@media only screen and (max-width: 767px) {
  .feature.feature_top_new h2.heading-2 span {
    font-size: 25px;
    margin-left: 0;
    margin-right: 0;
    color: #333333;
    font-weight: normal;
    font-family: "Antonio", sans-serif;
    -webkit-text-stroke: 0;
    text-stroke: 0;
    text-shadow: none;
  }
  .feature.feature_top_new .feature__item {
    padding: 0px 0px 10px 0px;
    border-top: 10px solid #8f8f8f;
    background: #f0cecb;
    border-left: 0;
    border-right: 0;
    border-bottom: 0;
  }
  .feature.feature_top_new .feature__item p {
    line-height: 26px;
  }
  .feature.feature_top_new .feature__item p:last-child {
    margin-bottom: 0;
  }
  .feature.feature_top_new .feature__item-number {
    margin: 20px 20px 20px 20px;
    font-size: 20px;
    text-align: right;
    position: relative;
    color: #ffffff;
    font-family: "Antonio", sans-serif;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    line-height: 100%;
    padding: 0;
  }
  .feature.feature_top_new .feature__item-number span {
    margin: 0px;
    padding: 0px 0px 0 10px;
    font-family: "Antonio", sans-serif;
    font-size: 50px;
  }
  .feature.feature_top_new .feature__item-number::after {
    content: "";
    display: none;
  }
  .feature.feature_top_new .feature__item-img {
    width: 80%;
    margin: 0 auto;
    text-align: center;
  }
  .feature.feature_top_new .feature__item-heading {
    color: #333333;
    font-size: 22px;
    font-weight: 700;
    text-align: center;
    margin: 20px auto;
    line-height: 140%;
    display: flex;
    align-items: center;
    justify-content: center;
    height: 130px;
  }
  .feature.feature_top_new .feature__item-heading h3 {
    color: #333333;
    font-size: 22px;
    font-weight: 700;
    text-align: center;
    margin: 0px auto;
    line-height: 140%;
  }
  .feature.feature_top_new .feature__item-heading .pink {
    font-size: 30px;
    color: #e73278;
  }
  .feature.feature_top_new .feature__item-heading .up {
    font-size: 30px;
  }
}
@media only screen and (min-width: 768px) {
  .media_top {
    max-width: 700px;
    margin: 0px auto;
  }
  .media_top .movie {
    margin: 10px auto;
    padding: 0;
    width: 90%;
    text-align: center;
  }
  .media_top .movie .movie_top {
    /*background: url("../image/movie_top01.png") top right no-repeat;*/
    background-size: 30%;
    padding: 30px 30px 0px 0px;
  }
  .media_top .movie .movie_bottom {
    /*background: url("../image/movie_bottom01.png") left bottom no-repeat;*/
    background-size: 30%;
    padding: 0px 0px 30px 30px;
  }
  .media_top .movie video {
    margin: 0px auto;
    text-align: center;
    height: 560px;
    width: 560px;
  }
  .media_top .slide_block {
    width: 100%;
    margin: 30px auto;
    padding: 0;
    overflow: hidden;
  }
  .media_top .fukidashi01 {
    width: 50%;
    margin: 0px 0px 0px auto;
  }
  .media_top .fukidashi01 img {
    width: 100%;
  }
  .media_top .slick01 {
    margin: 0px auto 0 auto;
    padding: 0;
    width: 100%;
  }
  .media_top .slick01 li {
    margin: 0 5px;
  }
  .media_top .slick01 li img {
    height: auto;
    width: 100%;
  }
  /*-----------矢印表示----------*/
  .media_top .slick01 .slick-next {
    right: 5% !important;
  }
  .media_top .slick01 .slick-prev {
    left: 5% !important;
  }
  .media_top .slick01 .slick-arrow {
    z-index: 2 !important;
  }
  .media_top .button-secondary {
    margin: 40px auto 40px auto;
  }
  .media_top .button-secondary:hover {
    background: #e73278;
    color: #fff;
  }
}
@media only screen and (max-width: 767px) {
  .media_top {
    max-width: 700px;
    margin: 0px auto;
  }
  .media_top .movie {
    margin: 10px auto;
    padding: 0;
    width: 100%;
    text-align: center;
  }
  .media_top .movie video {
    margin: 0px auto;
    text-align: center;
    height: 300px;
    width: 300px;
  }
  .media_top .slide_block {
    width: 100%;
    margin: 30px auto;
    padding: 0;
    overflow: hidden;
  }
  .media_top .fukidashi01 {
    width: 50%;
    margin: 0px 0px 0px auto;
  }
  .media_top .fukidashi01 img {
    width: 100%;
  }
  .media_top .slick01 {
    margin: 0px auto 0 auto;
    padding: 0;
    width: 100%;
  }
  .media_top .slick01 li {
    margin: 0 5px;
  }
  .media_top .slick01 li img {
    height: auto;
    width: 100%;
  }
  /*-----------矢印表示----------*/
  .media_top .slick01 .slick-next {
    right: 5% !important;
  }
  .media_top .slick01 .slick-prev {
    left: 5% !important;
  }
  .media_top .slick01 .slick-arrow {
    z-index: 2 !important;
  }
  .media_top .button-secondary {
    margin: 40px auto 40px auto;
  }
  .media_top .button-secondary:hover {
    background: #e73278;
    color: #fff;
  }
}
@media only screen and (min-width: 768px) {
  .menu_top_new {
    background: #f6f4ee;
    overflow: hidden;
    position: relative;
  }
  .menu_top_new .top_check {
    margin: 0px auto 30px auto;
  }
  .menu_top_new .top_check .check_list {
    text-align: left;
    margin: 0px auto 30px auto;
    /*width: 800px;*/
    width: 90%;
    padding: 0;
    position: relative;
  }
  .menu_top_new .top_check .check_list li {
    text-align: left;
    margin: 0px 0px;
    padding: 15px 0px 15px 40px;
    font-size: 24px;
    background: url(/wp-content/themes/reborn/img/check_icon01.png) left no-repeat;
    background-size: 30px;
    border-bottom: 1px solid #ccc;
    font-weight: bold;
  }
  .menu_top_new .top_point {
    max-width: 800px;
    margin: 0px auto 30px auto;
    /*padding: 50px;*/
    padding: 30px;
    position: relative;
    background: #fff;
  }
  .menu_top_new .top_point .fukidashi_title_gray {
    background: #8f8f8f;
    /*width: 800px;*/
    max-width: 600px;
    margin: 20px auto 30px auto;
    padding: 10px 0px 20px 0px;
    text-align: center;
    position: relative;
  }
  .menu_top_new .top_point .fukidashi_title_gray::before {
    content: "";
    /* borderで三角形を作る */
    border-width: 10px;
    border-style: solid;
    border-color: #8f8f8f transparent transparent transparent;
    /* 配置する */
    position: absolute;
    top: 100%;
    left: 50%;
    transform: translateX(-50%);
  }
  .menu_top_new .top_point .fukidashi_title_gray h2 {
    color: #fff;
    font-size: 35px;
    font-weight: bold;
    line-height: 120%;
    font-family: "Antonio", YuGothic, "Yu Gothic medium", "Hiragino Sans", Meiryo, "sans-serif";
  }
  .menu_top_new .top_point .fukidashi_title_gray h2 span {
    font-size: 28px;
  }
  .menu_top_new .top_point h2 .tit_cn {
    font-size: 28px;
  }
  .menu_top_new .top_point h2 .orange {
    font-size: 25px;
    background: #ea7300;
    padding: 2px 3px;
  }
  .menu_top_new .top_point .point_block {
    border: 1px solid #dc9c9b;
    position: relative;
    margin: 0px auto 20px auto;
    padding: 50px 0px;
  }
  .menu_top_new .top_point .point_block .point_box, .menu_top_new .top_point .point_block_triple .point_box {
    border-top: 8px solid #f4e7e5;
    text-align: right;
    color: #dc9c9b;
    font-family: "Antonio", sans-serif;
    padding: 10px 20px 10px 10px;
    position: absolute;
    right: 0;
    top: 0;
    width: 100%;
    font-size: 20px;
    font-weight: bold;
    display: flex;
    align-items: center;
    justify-content: flex-end;
  }
  .menu_top_new .top_point .point_block .point_box span, .menu_top_new .top_point .point_block_triple .point_box span {
    font-size: 50px;
    margin-left: 10px;
  }
  .menu_top_new .top_point .point_block h3 {
    text-align: center;
    line-height: 120%;
    font-size: 24px;
    color: #333333;
    font-weight: 600;
    padding: 0px 0px 10px 0px;
    margin: 0px auto 20px auto;
  }
  .menu_top_new .top_point .point_block h3 span {
    font-size: 24px;
  }
  .menu_top_new .point_block .plan_table_flex {
    position: relative;
    /*width:800px;*/
    width: 90%;
    margin: 0px auto 50px auto;
    padding: 0;
    overflow: hidden;
  }
  .menu_top_new .point_block .first_table {
    display: flex;
    flex-wrap: wrap;
    float: left;
    width: 30%;
  }
  .menu_top_new .point_block .first_table dt {
    width: 100%;
    border: 1px solid #c7b190;
    border-right: 1px solid #fff;
    background: #c7b190;
    color: #fff;
    font-weight: bold;
    font-size: 18px;
    padding: 10px;
    text-align: center;
  }
  .menu_top_new .point_block .first_table dt:last-child {
    border-right: 1px solid #c7b190;
  }
  .menu_top_new .point_block .first_table dd {
    width: 100%;
    border: 1px solid #c7b190;
    text-align: center;
    font-size: 16px;
    padding: 10px;
  }
  .menu_top_new .point_block .pink_table {
    display: flex;
    flex-wrap: wrap;
    float: right;
    /*width: 250px;*/
    width: 40%;
  }
  .menu_top_new .point_block .pink_table dt {
    width: 100%;
    border: 1px solid #dc9c9b;
    background: #dc9c9b;
    color: #fff;
    font-weight: bold;
    text-align: center;
    font-size: 18px;
    padding: 10px;
  }
  .menu_top_new .point_block .pink_table dd {
    width: 100%;
    border: 1px solid #dc9c9b;
    text-align: center;
    font-size: 16px;
    padding: 10px;
  }
  .menu_top_new .top_point .point_block h4 {
    width: 100%;
    text-align: center;
    font-size: 28px;
    font-weight: bold;
    color: #dc9c9b;
    margin: 0px auto 15px auto;
  }
  .menu_top_new .top_point .point_block h4 img {
    width: 100%;
  }
  .menu_top_new .top_point .point_block p.center_cap {
    text-align: center;
    font-size: 16px;
    line-height: 160%;
  }
  .menu_top_new .top_point .point_block .tag_list {
    margin: 10px auto;
    padding: 0;
    display: flex;
    justify-content: center;
    /*width: 80%;*/
    width: 100%;
    text-align: center;
  }
  .menu_top_new .top_point .point_block .tag_list li {
    color: #dc9c9b;
    border: 1px solid #dc9c9b;
    margin: 0px 5px;
    padding: 5px;
    font-weight: bold;
  }
  .menu_top_new .top_point .point_block .plan_table {
    display: flex;
    flex-wrap: wrap;
    /*width: 800px;*/
    width: 90%;
    margin: 10px auto;
    border-top: 1px solid #dc9c9b;
  }
  .menu_top_new .top_point .point_block .plan_table dt {
    width: 30%;
    border-bottom: 1px solid #fff;
    background: #dc9c9b;
    color: #fff;
    font-weight: bold;
    text-align: center;
    font-size: 18px;
    padding: 20px 0;
    display: flex;
    align-items: center;
    justify-content: center;
  }
  .menu_top_new .top_point .point_block .plan_table dd {
    width: 70%;
    border-right: 1px solid #dc9c9b;
    border-bottom: 1px solid #dc9c9b;
    text-align: center;
    font-size: 16px;
    padding: 20px 0;
    line-height: 160%;
  }
  .menu_top_new .top_point .point_block .plan_table_store_th {
    display: flex;
    flex-wrap: wrap;
    width: 800px;
    margin: 10px auto 0 auto;
  }
  .menu_top_new .top_point .point_block .plan_table_store_th dt {
    border-bottom: 1px solid #fff;
    border-left: 1px solid #fff;
    font-weight: bold;
    text-align: center;
    font-size: 18px;
    padding: 20px 0;
    display: flex;
    align-items: center;
    justify-content: center;
  }
  .menu_top_new .top_point .point_block .plan_table_store_th dt:nth-child(1) {
    width: 30%;
  }
  .menu_top_new .top_point .point_block .plan_table_store_th dt:nth-child(n+2) {
    width: 35%;
    background: #dc9c9b;
    color: #fff;
  }
  .menu_top_new .top_point .point_block .plan_table_store {
    display: flex;
    flex-wrap: wrap;
    width: 800px;
    margin: 0px auto 10px auto;
    border-top: 1px solid #dc9c9b;
  }
  .menu_top_new .top_point .point_block .plan_table_store dt {
    width: 30%;
    border-bottom: 1px solid #fff;
    background: #dc9c9b;
    color: #fff;
    font-weight: bold;
    text-align: center;
    font-size: 18px;
    padding: 20px 0;
    display: flex;
    align-items: center;
    justify-content: center;
  }
  .menu_top_new .top_point .point_block .plan_table_store dd {
    width: 35%;
    border-right: 1px solid #dc9c9b;
    border-bottom: 1px solid #dc9c9b;
    text-align: center;
    font-size: 16px;
    padding: 20px 0;
    line-height: 140%;
  }
  .menu_top_new .top_point .point_block .price_up {
    font-size: 22px;
    font-weight: bold;
  }
  .menu_top_new .top_point .point_block .kome {
    /*width: 800px;*/
    width: 90%;
    text-align: left;
    font-size: 12px;
    line-height: 120%;
    margin: 0px auto 50px auto;
  }
  .menu_top_new .top_point .point_block .kome br.pc_only {}
  .menu_top_new .top_point .point_block .kome br.sp_only {
    display: none;
  }
  .menu_top_new .point_block .option_table_flex {
    position: relative;
    /*width:800px;*/
    width: 90%;
    margin: 0px auto 10px auto;
    padding: 0;
    overflow: hidden;
    display: flex;
    justify-content: center;
  }
  .menu_top_new .point_block .option_table {
    display: flex;
    flex-wrap: wrap;
    width: 20%;
  }
  .menu_top_new .point_block .option_table dt {
    width: 100%;
    border: 1px solid #c7b190;
    border-right: 1px solid #fff;
    background: #c7b190;
    color: #fff;
    font-weight: bold;
    font-size: 18px;
    padding: 10px;
    text-align: center;
  }
  .menu_top_new .point_block .option_table dt:last-child {
    border-right: 1px solid #c7b190;
  }
  .menu_top_new .point_block .option_table dd {
    width: 100%;
    border: 1px solid #c7b190;
    text-align: center;
    font-size: 16px;
    padding: 10px;
    position: relative;
  }
  .menu_top_new .top_point .point_block .kome_cap {
    font-size: 12px;
    position: relative;
    top: -10px;
  }
  .line-banner_new {
    /*width: 600px;*/
    max-width: 700px;
    width: 100%;
    margin: 30px auto 0 auto;
  }
  .summary_top_new .line-banner_new {
    margin: 50px auto 0px auto;
    padding: 30px 0 30px 0;
  }
  .menu_top_new .top_point .point_block_flex {
    position: relative;
    width: 100%;
    margin: 10px auto 10px auto;
    padding: 0;
    overflow: hidden;
    display: flex;
    justify-content: space-between;
  }
  .menu_top_new .top_point .point_block_triple {
    width: 31%;
    border: 1px solid #dc9c9b;
    position: relative;
    margin: 0px 0 20px 0;
    padding: 50px 0px 10px 0px;
  }
  .menu_top_new .top_point .point_block_triple h3 {
    text-align: center;
    line-height: 120%;
    font-size: 20px;
    color: #333333;
    font-weight: 500;
    padding: 0px 0px 10px 0px;
    margin: 20px auto 10px auto;
  }
  .menu_top_new .top_point .point_block_triple .point_flex_img {
    width: 90%;
    margin: 0px auto 10px auto;
    padding: 0;
  }
  .menu_top_new .top_point .point_block_triple img {
    width: 100%;
  }
  .menu_top_new .top_point .point_block_triple h4 {
    text-align: center;
    font-size: 15px;
    font-weight: 600;
    line-height: 140%;
    margin: 0px auto 10px auto;
    padding: 0;
    color: #dc9c9b;
  }
  .menu_top_new .top_point .point_block_triple .point_flex {
    display: flex;
    margin: 0 auto;
    width: 90%;
  }
  .menu_top_new .top_point .point_block_triple .point_flex .point_flex_img_half {
    width: 42%;
    margin: 0px 5px;
    padding: 0;
  }
  .menu_top_new .top_point .point_block_triple .point_flex .point_flex_cap {
    width: 55%;
    margin: 0px 0;
    padding: 0;
    position: relative;
  }
  .menu_top_new .top_point .point_block_triple .point_flex .point_flex_cap p {
    text-align: left;
    font-size: 12px;
    line-height: 160%;
  }
  .menu_top_new .top_point .point_block_triple .point_flex .point_flex_cap .point04_02 {
    width: 100%;
    position: relative;
    right: 0;
    top: 10px;
  }
  .menu_top_new .top_point h2.point_h2 {
    margin: 0px auto 40px auto;
    padding: 0;
    text-align: center;
    font-size: 35px;
    font-weight: bold;
    color: #dc9c9b;
    line-height: 140%;
  }
  .menu_top_new .top_point h2.point_h2 span {
    margin: 0px auto 10px auto;
    padding: 0;
    text-align: center;
    font-size: 28px;
    font-weight: bold;
    color: #dc9c9b;
  }
  .menu_top_new .top_point .point_img_list {
    width: 100%;
    margin: 0px auto;
    display: flex;
    justify-content: space-between;
    padding: 0;
    position: relative;
  }
  .menu_top_new .top_point .point_img_list li {
    width: 31%;
    margin: 0px;
    padding: 0;
    position: relative;
  }
  .menu_top_new .top_point .point_img_list li img {
    width: 100%;
  }
  .menu_top_new .top_point .point_img_list li h4 {
    width: 100%;
    height: 65px;
    background: hsla(1, 48%, 74%, 0.80);
    text-align: center;
    font-size: 20px;
    font-weight: bold;
    color: #fff;
    position: absolute;
    bottom: 0;
    display: flex;
    justify-content: center;
    align-items: center;
  }
  .menu_top_new .button-secondary {
    margin: 40px auto 40px auto;
  }
  .menu_top_new .button-secondary:hover {
    background: #e73278;
    color: #fff;
  }
}
@media only screen and (min-width: 1024px) {
  .menu_top_new .top_point {
    /*max-width: 800px;*/
    max-width: 1000px;
    width: 96%;
    margin: 0px auto 0px auto;
  }
}
@media only screen and (max-width: 767px) {
  .menu_top_new {
    background: #f6f4ee;
    overflow: hidden;
    position: relative;
  }
  .menu_top_new .top_check {
    margin: 0px auto 50px auto;
  }
  .menu_top_new .top_check .check_list {
    text-align: left;
    margin: 0px auto 30px auto;
    width: 90%;
    padding: 0;
    position: relative;
  }
  .menu_top_new .top_check .check_list li {
    text-align: left;
    margin: 0px 0px;
    padding: 15px 0px 15px 20px;
    font-size: 16px;
    background: url(/wp-content/themes/reborn/img/check_icon01.png) left no-repeat;
    background-size: 20px;
    border-bottom: 1px solid #ccc;
    font-weight: bold;
  }
  .menu_top_new .top_point {
    width: 90%;
    margin: 0px auto 30px auto;
    position: relative;
    background: #fff;
  }
  .menu_top_new .top_point .fukidashi_title_gray {
    background: #8f8f8f;
    width: 90%;
    margin: 20px auto 30px auto;
    padding: 10px 0px 20px 0px;
    text-align: center;
    position: relative;
  }
  .menu_top_new .top_point .fukidashi_title_gray::before {
    content: "";
    /* borderで三角形を作る */
    border-width: 10px;
    border-style: solid;
    border-color: #8f8f8f transparent transparent transparent;
    /* 配置する */
    position: absolute;
    top: 100%;
    left: 50%;
    transform: translateX(-50%);
  }
  .menu_top_new .top_point .fukidashi_title_gray h2 {
    color: #fff;
    font-size: 20px;
    font-weight: bold;
    line-height: 120%;
    font-family: "Antonio", YuGothic, "Yu Gothic medium", "Hiragino Sans", Meiryo, "sans-serif";
  }
  .menu_top_new .top_point .fukidashi_title_gray h2 span {
    font-size: 18px;
  }
  .menu_top_new .top_point {
    width: 90%;
    margin: 0px auto 50px auto;
    padding: 10px;
    position: relative;
    background: #fff;
  }
  .menu_top_new .top_point h2 .tit_cn {
    font-size: 18px;
  }
  .menu_top_new .top_point h2 .orange {
    font-size: 15px;
    background: #ea7300;
    padding: 2px 3px;
  }
  .menu_top_new .top_point .point_block {
    border: 1px solid #dc9c9b;
    position: relative;
    margin: 0px auto 20px auto;
    padding: 0px 0px;
  }
  .menu_top_new .top_point .point_block .point_box, .menu_top_new .top_point .point_block_triple .point_box {
    border-top: 8px solid #f4e7e5;
    text-align: center;
    color: #dc9c9b;
    font-family: "Antonio", sans-serif;
    padding: 10px 0px 10px 0px;
    position: relative;
    right: 0;
    top: 0;
    width: 100%;
    font-size: 20px;
    font-weight: bold;
    display: flex;
    align-items: center;
    justify-content: center;
  }
  .menu_top_new .top_point .point_block .point_box span, .menu_top_new .top_point .point_block_triple .point_box span {
    font-size: 50px;
    margin-left: 10px;
  }
  .menu_top_new .top_point .point_block h3 {
    text-align: center;
    line-height: 120%;
    font-size: 18px;
    color: #333333;
    font-weight: 600;
    padding: 0px 0px 10px 0px;
    margin: 20px auto 20px auto;
  }
  .menu_top_new .top_point .point_block h3 span {
    font-size: 24px;
  }
  .menu_top_new .point_block .plan_table_flex {
    position: relative;
    width: 90%;
    margin: 0px auto 50px auto;
    padding: 0;
    overflow: hidden;
  }
  .menu_top_new .point_block .first_table {
    display: flex;
    flex-wrap: wrap;
    width: 100%;
    margin: 0px auto 0px auto;
  }
  .menu_top_new .point_block .first_table dt {
    width: 35%;
    border: 1px solid #c7b190;
    border-bottom: 1px solid #fff;
    background: #c7b190;
    color: #fff;
    font-weight: bold;
    font-size: 12px;
    padding: 10px 0;
    text-align: center;
  }
  .menu_top_new .point_block .first_table dt:last-child {
    border-bottom: 1px solid #c7b190;
  }
  .menu_top_new .point_block .first_table dd {
    width: 65%;
    border-right: 1px solid #c7b190;
    border-left: 1px solid #c7b190;
    border-top: 1px solid #c7b190;
    border-bottom: 0px;
    text-align: center;
    font-size: 13px;
    padding: 10px 0;
    display: flex;
    align-items: center;
    justify-content: center;
  }
  .menu_top_new .point_block .first_table dd:last-child {
    border-bottom: 1px solid #c7b190;
  }
  .menu_top_new .point_block .pink_table {
    display: flex;
    flex-wrap: wrap;
    width: 100%;
    margin: 10px auto 0px auto;
  }
  .menu_top_new .point_block .pink_table dt {
    width: 35%;
    border: 1px solid #dc9c9b;
    background: #dc9c9b;
    color: #fff;
    font-weight: bold;
    text-align: center;
    font-size: 13px;
    padding: 10px 0;
  }
  .menu_top_new .point_block .pink_table dd {
    width: 65%;
    border: 1px solid #dc9c9b;
    text-align: center;
    font-size: 13px;
    padding: 10px 0;
    display: flex;
    align-items: center;
    justify-content: center;
  }
  .menu_top_new .top_point .point_block h4 {
    width: 100%;
    text-align: center;
    font-size: 25px;
    font-weight: bold;
    color: #dc9c9b;
    margin: 0px auto 15px auto;
  }
  .menu_top_new .top_point .point_block h4 img {
    width: 100%;
  }
  .menu_top_new .top_point .point_block p.center_cap {
    margin: 0px auto;
    width: 90%;
    text-align: left;
    font-size: 13px;
    line-height: 160%;
  }
  .menu_top_new .top_point .point_block .tag_list {
    margin: 10px auto;
    padding: 0;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    width: 90%;
  }
  .menu_top_new .top_point .point_block .tag_list li {
    color: #dc9c9b;
    border: 1px solid #dc9c9b;
    margin: 0px auto 5px auto;
    padding: 5px;
    font-size: 13px;
    font-weight: bold;
  }
  .menu_top_new .top_point .point_block .plan_table {
    display: flex;
    flex-wrap: wrap;
    width: 90%;
    margin: 10px auto;
    border-top: 1px solid #dc9c9b;
  }
  .menu_top_new .top_point .point_block .plan_table dt {
    width: 35%;
    border-bottom: 1px solid #fff;
    background: #dc9c9b;
    color: #fff;
    font-weight: bold;
    text-align: center;
    font-size: 14px;
    padding: 20px 0;
    display: flex;
    align-items: center;
    justify-content: center;
  }
  .menu_top_new .top_point .point_block .plan_table dd {
    width: 65%;
    border-right: 1px solid #dc9c9b;
    border-bottom: 1px solid #dc9c9b;
    text-align: center;
    font-size: 14px;
    padding: 20px 0;
    line-height: 140%;
  }
  .menu_top_new .top_point .point_block .plan_table_store_th {
    display: flex;
    flex-wrap: wrap;
    width: 90%;
    margin: 10px auto 0 auto;
  }
  .menu_top_new .top_point .point_block .plan_table_store_th dt {
    border-bottom: 1px solid #fff;
    border-left: 1px solid #fff;
    font-weight: bold;
    text-align: center;
    font-size: 18px;
    padding: 20px 0;
    display: flex;
    align-items: center;
    justify-content: center;
  }
  .menu_top_new .top_point .point_block .plan_table_store_th dt:nth-child(1) {
    width: 20%;
  }
  .menu_top_new .top_point .point_block .plan_table_store_th dt:nth-child(n+2) {
    width: 40%;
    background: #dc9c9b;
    color: #fff;
  }
  .menu_top_new .top_point .point_block .plan_table_store {
    display: flex;
    flex-wrap: wrap;
    width: 90%;
    margin: 0px auto 10px auto;
    border-top: 1px solid #dc9c9b;
  }
  .menu_top_new .top_point .point_block .plan_table_store dt {
    width: 20%;
    border-bottom: 1px solid #fff;
    background: #dc9c9b;
    color: #fff;
    font-weight: bold;
    text-align: center;
    font-size: 14px;
    padding: 20px 0;
    display: flex;
    align-items: center;
    justify-content: center;
  }
  .menu_top_new .top_point .point_block .plan_table_store dd {
    width: 40%;
    border-right: 1px solid #dc9c9b;
    border-bottom: 1px solid #dc9c9b;
    text-align: center;
    font-size: 14px;
    padding: 20px 0;
    line-height: 140%;
  }
  .menu_top_new .top_point .point_block .price_up {
    font-size: 18px;
    font-weight: bold;
  }
  .menu_top_new .top_point .point_block .kome {
    width: 90%;
    text-align: left;
    font-size: 12px;
    line-height: 120%;
    margin: 0px auto 20px auto;
  }
  .menu_top_new .top_point .point_block .kome br.pc_only {
    display: none;
  }
  .menu_top_new .top_point .point_block .kome br.sp_only {}
  .menu_top_new .point_block .option_table_flex {
    position: relative;
    width: 90%;
    margin: 0px auto 10px auto;
    padding: 0;
    overflow: hidden;
    display: flex;
    flex-wrap: wrap;
  }
  .menu_top_new .point_block .option_table {
    display: flex;
    flex-wrap: wrap;
    width: 100%;
  }
  .menu_top_new .point_block .option_table dt {
    width: 35%;
    border: 1px solid #c7b190;
    border-bottom: 1px solid #fff;
    background: #c7b190;
    color: #fff;
    font-weight: bold;
    font-size: 14px;
    padding: 10px;
    text-align: center;
  }
  .menu_top_new .point_block .option_table dt:last-child {
    border-right: 1px solid #c7b190;
  }
  .menu_top_new .point_block .option_table dd {
    width: 65%;
    border: 1px solid #c7b190;
    text-align: center;
    font-size: 16px;
    padding: 10px;
    position: relative;
  }
  .menu_top_new .top_point .point_block .kome_cap {
    font-size: 12px;
    position: relative;
    top: -10px;
  }
  .line-banner_new {
    width: 96%;
    margin: 20px auto 20px auto;
  }
  .summary_top_new .line-banner_new {
    margin: 50px auto 0px auto;
    padding: 20px 0 50px 0;
  }
  .menu_top_new .top_point .point_block_flex {
    position: relative;
    width: 100%;
    margin: 10px auto 10px auto;
    padding: 0;
    overflow: hidden;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  .menu_top_new .top_point .point_block_triple {
    width: 100%;
    border: 1px solid #dc9c9b;
    position: relative;
    margin: 0px 0 20px 0;
    padding: 0px 0px 10px 0px;
  }
  .menu_top_new .top_point .point_block_triple h3 {
    text-align: center;
    line-height: 120%;
    font-size: 20px;
    color: #333333;
    font-weight: 500;
    padding: 0px 0px 10px 0px;
    margin: 20px auto 10px auto;
  }
  .menu_top_new .top_point .point_block_triple .point_flex_img {
    width: 90%;
    margin: 0px auto 10px auto;
    padding: 0;
  }
  .menu_top_new .top_point .point_block_triple img {
    width: 100%;
  }
  .menu_top_new .top_point .point_block_triple h4 {
    text-align: center;
    font-size: 16px;
    font-weight: 600;
    line-height: 140%;
    margin: 0px auto 10px auto;
    padding: 0;
    color: #dc9c9b;
  }
  .menu_top_new .top_point .point_block_triple .point_flex {
    display: flex;
    margin: 0 auto;
    width: 90%;
  }
  .menu_top_new .top_point .point_block_triple .point_flex .point_flex_img_half {
    width: 42%;
    margin: 0px 5px;
    padding: 0;
  }
  .menu_top_new .top_point .point_block_triple .point_flex .point_flex_cap {
    width: 55%;
    margin: 0px 0;
    padding: 0;
    position: relative;
  }
  .menu_top_new .top_point .point_block_triple .point_flex .point_flex_cap p {
    text-align: left;
    font-size: 12px;
    line-height: 160%;
  }
  .menu_top_new .top_point .point_block_triple .point_flex .point_flex_cap .point04_02 {
    width: 100%;
    position: relative;
    right: 0;
    top: 10px;
  }
  .menu_top_new .top_point h2.point_h2 {
    margin: 0px auto 10px auto;
    padding: 0;
    text-align: center;
    font-size: 20px;
    font-weight: bold;
    color: #dc9c9b;
    line-height: 140%;
  }
  .menu_top_new .top_point h2.point_h2 span {
    margin: 0px auto 10px auto;
    padding: 0;
    text-align: center;
    font-size: 16px;
    font-weight: bold;
    color: #dc9c9b;
  }
  .menu_top_new .top_point .point_img_list {
    width: 100%;
    margin: 0px auto;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    padding: 0;
    position: relative;
  }
  .menu_top_new .top_point .point_img_list li {
    width: 100%;
    margin: 0px auto 10px auto;
    padding: 0;
    position: relative;
  }
  .menu_top_new .top_point .point_img_list li img {
    width: 100%;
  }
  .menu_top_new .top_point .point_img_list li h4 {
    width: 100%;
    height: 65px;
    background: hsla(1, 48%, 74%, 0.80);
    text-align: center;
    font-size: 20px;
    font-weight: bold;
    color: #fff;
    position: absolute;
    bottom: 0;
    display: flex;
    justify-content: center;
    align-items: center;
  }
  .menu_top_new .button-secondary {
    /*margin:40px auto 100px auto;*/
    margin: 40px auto 40px auto;
  }
  .menu_top_new .button-secondary:hover {
    background: #e73278;
    color: #fff;
  }
}
@media only screen and (min-width: 768px) {
  .top_flow {
    background: #f4e7e5;
    position: relative;
    overflow: hidden;
  }
  .top_flow .contentBox {
    width: 700px;
    margin: 0px auto 100px auto;
  }
  .top_flow h3.nagare_hd {
    margin: 10px auto 20px auto;
    width: 50%;
    position: relative;
    height: 50px;
    line-height: 50px;
    padding: 0 1rem;
    background-color: #dc9c9b;
    color: #fff;
    font-size: 26px;
    font-weight: bold;
    text-align: center;
  }
  .top_flow h3.nagare_hd::before, .top_flow h3.nagare_hd::after {
    position: absolute;
    top: 0;
    width: 0px;
    height: 0px;
    border-color: #dc9c9b transparent;
    border-style: solid;
    content: '';
  }
  .top_flow h3.nagare_hd::before {
    left: -15px;
    border-width: 25px 0px 25px 15px;
  }
  .top_flow h3.nagare_hd::after {
    right: -15px;
    border-width: 25px 15px 25px 0px;
  }
  .top_flow .stepBox {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    flex-wrap: wrap;
    align-items: center;
    background: #fff;
    max-width: 100%;
    margin: 0 auto 20px auto;
    border: 2px solid #8f8f8f;
  }
  .top_flow .bottom0 {
    margin-bottom: 0;
  }
  .top_flow .step_number {
    width: 8%;
    padding: 20px 10px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    text-align: center;
    font-size: 40px;
    color: #8f8f8f;
    line-height: 100%;
    font-weight: 600;
    font-family: "Antonio", "sans-serif";
    border-right: 1px solid #8f8f8f;
  }
  .top_flow .step_number span {
    color: #868686;
    font-size: 20px;
  }
  .top_flow .stepTxt {
    width: 50%;
    margin: 20px 0px 10px 0px;
  }
  .top_flow .stepTxt h3 {
    font-size: 24px;
    font-weight: 600;
    line-height: 1.66rem;
    color: #dc9c9b;
    text-align: left;
    margin: 0px 0px 10px 0px;
  }
  .top_flow .stepTxt h3 span {
    font-size: 16px;
  }
  .top_flow .stepTxt p {
    line-height: 140%;
    font-size: 15px;
  }
  .top_flow .stepTxt p span {
    font-size: 0.8rem;
    color: #4d4d4d;
    border: 1px solid #4d4d4d;
    padding: 2px 5px;
  }
  .top_flow .stepImg {
    width: 35%;
    position: relative;
  }
  .top_flow .stepImg img {
    width: 100%;
  }
  .top_flow .step_hdimg {
    width: 100%;
    position: relative;
    margin: 0px auto 20px auto;
  }
  .top_flow .step_hdimg img {
    width: 100%;
  }
  .top_flow .step_cap {
    width: 96%;
    margin: 10px auto;
    background: #f4e7e5;
    display: flex;
    align-items: center;
  }
  .top_flow .step_cap p {
    font-size: 15px;
    line-height: 160%;
    padding: 10px 20px;
    margin: 0;
  }
  .top_flow .step_cap dl {
    width: 46%;
    margin: 20px 10px;
    color: #4d4d4d;
  }
  .top_flow .step_cap dl dt {
    text-align: left;
    font-size: 15px;
    font-weight: bold;
    margin: 0px 0px 10px 0px;
  }
  .top_flow .step_cap dl dd {
    text-align: left;
    font-size: 15px;
    line-height: 160%;
  }
  .top_flow .step_cap .step_cap_img {
    width: 25%;
  }
  .top_flow .step_cap .step_cap_img img {
    width: 100%;
  }
  .top_flow .button-secondary:hover {
    background: #e73278;
    color: #fff;
  }
}
@media only screen and (max-width: 767px) {
  .top_flow {
    background: #f4e7e5;
  }
  .top_flow h2 {
    font-size: 20px;
  }
  .top_flow h3.nagare_hd {
    margin: 10px auto 10px auto;
    width: 100%;
    position: relative;
    height: 50px;
    line-height: 50px;
    padding: 0 1rem;
    background-color: #dc9c9b;
    color: #fff;
    font-size: 26px;
    font-weight: bold;
    text-align: center;
  }
  .top_flow h3.nagare_hd::before, .top_flow h3.nagare_hd::after {
    position: absolute;
    top: 0;
    width: 0px;
    height: 0px;
    border-color: #dc9c9b transparent;
    border-style: solid;
    content: '';
  }
  .top_flow h3.nagare_hd::before {
    left: -15px;
    border-width: 25px 0px 25px 15px;
  }
  .top_flow h3.nagare_hd::after {
    right: -15px;
    border-width: 25px 15px 25px 0px;
  }
  .top_flow .contentBox {
    width: 90%;
    margin: 0px auto;
  }
  .top_flow .stepBox {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    flex-wrap: wrap;
    align-items: center;
    background: #fff;
    max-width: 100%;
    margin: 0 auto 20px auto;
    border: 2px solid #8f8f8f;
  }
  .top_flow .bottom0 {
    margin-bottom: 0;
  }
  .top_flow .step_number {
    width: 90%;
    display: block;
    text-align: center;
    font-size: 26px;
    color: #8f8f8f;
    line-height: 100%;
    font-weight: 600;
    margin: 10px auto;
    padding: 0px 0px 10px 0px;
    font-family: "Antonio", "sans-serif";
    border-bottom: 1px solid #8f8f8f;
  }
  .top_flow .step_number span {
    color: #8f8f8f;
    font-size: 16px;
  }
  .top_flow .stepTxt {
    width: 90%;
    margin: 0px auto 15px auto;
  }
  .top_flow .stepTxt h3 {
    font-size: 24px;
    font-weight: 600;
    line-height: 1.66rem;
    color: #dc9c9b;
    text-align: center;
    margin: 0px 0px 10px 0px;
  }
  .top_flow .stepTxt h3 span {
    font-size: 16px;
  }
  .top_flow .stepTxt p {
    line-height: 140%;
    font-size: 15px;
  }
  .top_flow .stepTxt p span {
    font-size: 0.8rem;
    color: #4d4d4d;
    border: 1px solid #4d4d4d;
    padding: 2px 5px;
  }
  .top_flow .stepImg {
    width: 100%;
    position: relative;
  }
  .top_flow .stepImg img {
    width: 100%;
  }
  .top_flow .step_hdimg {
    width: 100%;
    position: relative;
    margin: 0px auto 20px auto;
  }
  .top_flow .step_hdimg img {
    width: 100%;
  }
  .top_flow .step_cap {
    width: 96%;
    margin: 10px auto;
    background: #f4e7e5;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
  }
  .top_flow .step_cap p {
    font-size: 15px;
    line-height: 160%;
    padding: 10px 20px;
    margin: 0;
  }
  .top_flow .step_cap dl {
    width: 90%;
    margin: 10px auto;
    color: #4d4d4d;
  }
  .top_flow .step_cap dl dt {
    text-align: left;
    font-size: 15px;
    font-weight: bold;
    margin: 0px 0px 10px 0px;
  }
  .top_flow .step_cap dl dd {
    text-align: left;
    font-size: 15px;
    line-height: 160%;
  }
  .top_flow .step_cap .step_cap_img {
    width: 100%;
  }
  .top_flow .step_cap .step_cap_img img {
    width: 100%;
  }
  .top_flow .button-secondary:hover {
    background: #e73278;
    color: #fff;
  }
}
@media only screen and (min-width: 768px) {
  .monitor .monitor-list_new {
    margin: 0 auto 40px auto;
    display: flex;
    justify-content: space-between;
  }
  .monitor .monitor-list_new li.monitor-list__item {
    width: 23%;
    margin: 0;
    padding: 0;
    position: relative;
  }
  .monitor .monitor-list_new li .monitor-list__weight-diff {
    border-radius: 0px;
    background: #e73278;
    color: #fff;
    font-size: 15px;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    padding: 3px 0;
    margin: 0px auto 3px auto;
    position: relative;
    top: 0px;
    bottom: 5px;
    right: 0px;
  }
  .monitor .monitor-list_new .monitor-list__weight-diff-inner {
    padding-top: 4px;
    text-align: center;
    line-height: 1.2;
  }
  .monitor .monitor-list_new .monitor-list__weight-diff-inner span {
    margin-right: 1px;
    font-size: 18px;
    font-weight: 700;
  }
  .monitor .monitor-list_new .monitor-list__weight-before, .monitor-list__weight-after {
    padding: 10px 15px;
    width: 50%;
    position: relative;
  }
  .monitor .monitor-list_new .monitor-list__weight-before {
    background: #ececec;
  }
  .monitor .monitor-list_new .monitor-list__weight-before::after {
    content: "";
    border-width: 30px 10px;
    border-style: solid;
    border-color: #dd9c9c #dd9c9c #dd9c9c #ececec;
    background: #ececec;
    position: absolute;
    top: 0;
    right: 0;
    transform: translateX(100%);
  }
  .monitor .monitor-list_new .monitor-list__weight-after {
    background: #dd9c9c;
    padding-right: calc(15px + 60px + 10px);
  }
  .monitor .monitor-list_new .monitor-list__weight-after::before {
    content: "";
    border-width: 32.5px 10px;
    border-style: solid;
    border-color: transparent transparent transparent #ececec;
    position: absolute;
    top: 0;
    left: 0;
  }
  .monitor .monitor-list_new .monitor-list__weight-after .monitor-list__weight-value {
    color: #fff;
    text-align: center;
  }
}
@media only screen and (max-width: 767px) {
  .monitor .monitor-list_new {
    margin: 0 auto 40px auto;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  .monitor .monitor-list_new li.monitor-list__item {
    width: 100%;
    margin: 0 auto 10px auto;
    padding: 0;
    position: relative;
  }
  .monitor .monitor-list_new li .monitor-list__weight-diff {
    border-radius: 0px;
    background: #e73278;
    color: #fff;
    font-size: 15px;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    padding: 3px 0;
    margin: 0px auto 3px auto;
    position: relative;
    top: 0px;
    bottom: 5px;
    right: 0px;
  }
  .monitor .monitor-list_new .monitor-list__weight-diff-inner {
    padding-top: 4px;
    text-align: center;
    line-height: 1.2;
  }
  .monitor .monitor-list_new .monitor-list__weight-diff-inner span {
    margin-right: 1px;
    font-size: 18px;
    font-weight: 700;
  }
  .monitor .monitor-list_new .monitor-list__weight-before, .monitor-list__weight-after {
    padding: 10px 15px;
    width: 50%;
    position: relative;
  }
  .monitor .monitor-list_new .monitor-list__weight-before {
    background: #ececec;
  }
  .monitor .monitor-list_new .monitor-list__weight-before::after {
    content: "";
    border-width: 30px 10px;
    border-style: solid;
    border-color: #dd9c9c #dd9c9c #dd9c9c #ececec;
    background: #ececec;
    position: absolute;
    top: 0;
    right: 0;
    transform: translateX(100%);
  }
  .monitor .monitor-list_new .monitor-list__weight-after {
    background: #dd9c9c;
    padding-right: calc(15px + 60px + 10px);
  }
  .monitor .monitor-list_new .monitor-list__weight-after::before {
    content: "";
    border-width: 32.5px 10px;
    border-style: solid;
    border-color: transparent transparent transparent #ececec;
    position: absolute;
    top: 0;
    left: 0;
  }
  .monitor .monitor-list_new .monitor-list__weight-after .monitor-list__weight-value {
    color: #fff;
    text-align: center;
  }
}
@media only screen and (min-width: 768px) {
  .faq.gray_bg {
    background: #eeeeee;
  }
  .faq.gray_bg .faq-list__item {
    border-bottom: 1px solid #8f8f8f;
  }
  .faq.gray_bg .faq-list__item .faq-list__q, .faq.gray_bg .faq-list__item .faq-list__a {
    padding-top: 8px;
    padding-left: 60px;
  }
  .faq.gray_bg .faq-list__item .faq-list__q::before, .faq.gray_bg .faq-list__item .faq-list__a::before {
    padding-left: 13px;
  }
  .faq.gray_bg .faq-list__item .faq-list__q {
    position: relative;
    cursor: pointer;
    margin-bottom: 10px;
    transition: transform .4s;
  }
  .faq.gray_bg .faq-list__item .faq-list__a {
    position: relative;
    border: transparent; /*borderを非表示の状態にする*/
    line-height: 0; /* 非表示時、0*/
    display: none;
  }
  .faq.gray_bg .faq-list__item .faq-list__a.is-open {
    line-height: 1.5;
    display: block;
    transition: transform .4s;
  }
  .faq.gray_bg .faq-list__item .faq-list__q a, .faq.gray_bg .faq-list__item .faq-list__a a {
    text-decoration: underline;
  }
}
@media only screen and (max-width: 767px) {
  .faq.gray_bg {
    background: #eeeeee;
  }
  .faq.gray_bg .faq-list__item {
    border-bottom: 1px solid #8f8f8f;
  }
  .faq.gray_bg .faq-list__item .faq-list__q, .faq.gray_bg .faq-list__item .faq-list__a {
    padding-top: 5px;
    padding-left: 40px;
  }
  .faq.gray_bg .faq-list__item .faq-list__q::before, .faq.gray_bg .faq-list__item .faq-list__a::before {
    padding-left: 10px;
  }
  .faq.gray_bg .faq-list__item .faq-list__q {
    position: relative;
    cursor: pointer;
    margin-bottom: 10px;
    transition: transform .4s;
  }
  .faq.gray_bg .faq-list__item .faq-list__a {
    position: relative;
    border: transparent; /*borderを非表示の状態にする*/
    line-height: 0; /* 非表示時、0*/
    display: none;
  }
  .faq.gray_bg .faq-list__item .faq-list__a.is-open {
    line-height: 1.5;
    display: block;
  }
  .faq.gray_bg .faq-list__item .faq-list__q a, .faq.gray_bg .faq-list__item .faq-list__a a {
    text-decoration: underline;
  }
}
@media only screen and (min-width: 768px) {
  .cta__action_new .button-secondary {
    margin-top: 80px;
    /*margin-left: 570px;*/
    margin-left: 55%;
  }
  .cta__action_new .button-secondary:hover {
    background: #e73278;
    color: #fff;
  }
}
@media only screen and (max-width: 767px) {
  .cta__action_new .button-secondary {
    margin: 20px auto 0px auto;
  }
  .cta__action_new .button-secondary:hover {
    background: #e73278;
    color: #fff;
  }
}
.feature .heading-2 span {
  margin-left: .05em;
  margin-right: .1em;
  color: #fff;
  font-family: "Antonio", sans-serif;
  font-size: 3.875rem;
  font-weight: 500;
  -webkit-text-stroke: 1px #333;
  text-stroke: 1px #333;
  text-shadow: 3px 2px 0 #dd9c9c
}
.feature__item {
  padding: 40px 20px;
  border-width: 10px 1px 1px;
  border-style: solid;
  border-color: #333
}
@media only screen and (max-width: 1023px) {
  .feature__item:not(:last-child) {
    margin-bottom: 20px
  }
}
@media only screen and (min-width: 1024px) {
  .feature__item {
    padding: 30px 30px 60px
  }
}
.feature__item p {
  line-height: 26px
}
.feature__item p:last-child {
  margin-bottom: 0
}
.feature__item-number {
  margin-bottom: 30px;
  font-size: 14px;
  text-align: center;
  position: relative
}
.feature__item-number span {
  margin-top: 5px;
  padding-bottom: 20px;
  font-family: "Antonio", sans-serif;
  font-size: 26px;
  line-height: 1;
  display: block
}
.feature__item-number::after {
  content: "";
  background: #333;
  width: 28px;
  height: 2px;
  position: absolute;
  bottom: 0;
  left: calc((100% - 28px) / 2)
}
.feature__item-heading {
  color: #dd9c9c;
  font-size: 24px;
  font-weight: 700;
  text-align: center
}
@media only screen and (min-width: 1024px) {
  .feature__item-heading {
    margin: 0 -5px
  }
}
.feature__item-catch {
  margin-top: 10px;
  margin-bottom: 40px;
  color: #818181;
  font-size: 20px;
  font-family: "Antonio", sans-serif;
  text-align: center
}
.target {
  background: #f6f4ef
}
@media only screen and (min-width: 1024px) {
  .target__container {
    display: flex
  }
}
.target__image {
  position: relative
}
@media only screen and (max-width: 1023px) {
  .target__image {
    margin-left: -15px;
    margin-right: 60px;
    height: calc((100vw - (60px + 15px)) * 4 / 3)
  }
}
@media only screen and (min-width: 1024px) {
  .target__image {
    margin-left: -40px;
    margin-right: 80px;
    text-align: right;
    width: calc(50vw - 190px)
  }
}
.target__image img {
  width: 100%;
  height: 100%;
  object-fit: cover
}
@media only screen and (min-width: 1024px) {
  .target__image img {
    max-width: 610px
  }
}
@media only screen and (max-width: 1023px) {
  .target__list {
    margin-top: 40px
  }
}
@media only screen and (min-width: 1024px) {
  .target__list {
    width: 710px
  }
}
.target__item {
  margin-bottom: 20px;
  border: 1px solid #818181;
  padding: 20px 15px;
  background: #fff;
  display: flex;
  flex-wrap: wrap
}
@media only screen and (min-width: 1024px) {
  .target__item {
    padding: 20px
  }
}
.target__item:last-child {
  margin-bottom: 0
}
.target__item-point {
  padding-right: 15px;
  color: #dd9c9c;
  font-family: "Antonio", sans-serif;
  font-weight: 500;
  text-align: center;
  line-height: 0;
  width: 40px;
  position: relative
}
@media only screen and (min-width: 1024px) {
  .target__item-point {
    margin: -10px 0 -20px -10px;
    padding-right: 10px
  }
}
.target__item-point::before {
  content: "";
  background: #818181;
  display: block;
  width: 1px;
  height: 50px;
  position: absolute;
  top: 0;
  right: 0
}
@media only screen and (min-width: 1024px) {
  .target__item-point::before {
    height: 100%
  }
}
.target__item-point span {
  margin-top: 18px;
  font-size: 28px;
  display: block
}
.target__item-heading {
  padding-left: 20px;
  font-size: 18px;
  font-weight: 700
}
@media only screen and (max-width: 1023px) {
  .target__item-heading {
    margin-top: -5px;
    margin-bottom: 15px;
    line-height: 28px
  }
}
@media only screen and (min-width: 1024px) {
  .target__item-heading {
    line-height: 31px;
    display: flex;
    align-items: center
  }
}
.target__item p {
  margin-bottom: 0
}
@media only screen and (max-width: 1023px) {
  .target__item p {
    padding-left: 60px;
    width: 100%;
    line-height: 24px
  }
}
@media only screen and (min-width: 1024px) {
  .target__item p {
    margin-left: auto;
    max-width: 380px;
    line-height: 28px
  }
}
.target__action {
  margin-top: 40px
}
@media only screen and (min-width: 1024px) {
  .target__action {
    margin-top: 80px
  }
}
.menu {
  position: relative
}
.menu__about {
  padding-bottom: 0
}
.menu__program {
  padding-bottom: 0
}
@media only screen and (min-width: 1024px) {
  .menu .container-full {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between
  }
}
@media only screen and (min-width: 1024px) {
  .menu__text, .menu__action {
    width: calc(50% - 90px - 20px);
    max-width: 480px
  }
}
@media only screen and (min-width: 1024px) {
  .menu .heading-2 {
    padding-top: 60px;
    margin-bottom: 60px
  }
}
.menu p {
  margin-bottom: 10px;
  line-height: 28px
}
@media only screen and (max-width: 1023px) {
  .menu__image {
    margin: 40px 0
  }
}
@media only screen and (min-width: 1024px) {
  .menu__image {
    width: calc(50vw + 90px);
    height: 480px;
    position: relative
  }
}
@media only screen and (min-width: 1024px) {
  .menu__image::before {
    content: "";
    width: 120px;
    height: 100%;
    position: absolute;
    top: 0
  }
}
@media only screen and (min-width: 1024px) {
  .menu__image img {
    width: 100%;
    max-width: calc(800px + 90px);
    height: 100%;
    object-fit: cover
  }
}
@media only screen and (min-width: 1024px) {
  .menu__action {
    margin-top: -30px
  }
}
@media only screen and (min-width: 1024px) {
  .menu__about .menu__text {
    margin-left: auto;
    margin-right: 20px
  }
}
@media only screen and (min-width: 1024px) {
  .menu__about .menu__image {
    margin-right: -40px
  }
}
@media only screen and (min-width: 1024px) {
  .menu__about .menu__image::before {
    background: linear-gradient(-90deg, rgba(255, 255, 255, 0), white);
    left: 0
  }
}
@media only screen and (min-width: 1024px) {
  .menu__about .menu__action {
    margin-left: auto;
    margin-right: calc(50% + 90px + 20px)
  }
}
@media only screen and (min-width: 1024px) {
  .menu__program .menu__text {
    margin-left: 20px;
    margin-right: auto;
    order: 2
  }
}
@media only screen and (min-width: 1024px) {
  .menu__program .menu__image {
    margin-left: -40px;
    text-align: right;
    order: 1
  }
}
@media only screen and (min-width: 1024px) {
  .menu__program .menu__image::before {
    background: linear-gradient(90deg, rgba(255, 255, 255, 0), white);
    right: 0
  }
}
@media only screen and (min-width: 1024px) {
  .menu__program .menu__action {
    margin-right: auto;
    margin-left: calc(50% + 90px + 20px);
    order: 3
  }
}
.top-useful__heading {
  margin-bottom: 40px;
  font-size: 20px;
  text-align: center;
  position: relative
}
@media only screen and (min-width: 1024px) {
  .top-useful__heading {
    font-size: 24px
  }
}
.top-useful__heading::before, .top-useful__heading::after {
  content: "";
  background: url(img/top-useful-heading-sp.svg) 50% 50%/auto no-repeat;
  width: 100px;
  height: 6px;
  position: absolute;
  top: 50%;
  transform: translateY(-50%)
}
@media only screen and (min-width: 1024px) {
  .top-useful__heading::before, .top-useful__heading::after {
    background-image: url(img/top-useful-heading-pc.svg);
    width: 200px
  }
}
.top-useful__heading::before {
  right: calc(50% + 3em + 10px)
}
@media only screen and (min-width: 1024px) {
  .top-useful__heading::before {
    right: calc(50% + 3em + 20px)
  }
}
.top-useful__heading::after {
  left: calc(50% + 3em + 10px)
}
@media only screen and (min-width: 1024px) {
  .top-useful__heading::after {
    left: calc(50% + 3em + 20px)
  }
}
.top-useful .slick-arrow {
  width: auto;
  height: 200px;
  top: 0;
  transform: none;
  filter: drop-shadow(0 0 6px rgba(0, 0, 0, 0.3))
}
.top-useful .slick-arrow::before {
  content: none
}
@media only screen and (min-width: 1024px) {
  .top-useful .slick-arrow img {
    width: 30px
  }
}
.top-useful .slick-prev {
  left: 5px;
  z-index: 9
}
@media only screen and (min-width: 1024px) {
  .top-useful .slick-prev {
    left: 20px
  }
}
.top-useful .slick-next {
  right: 5px
}
@media only screen and (min-width: 1024px) {
  .top-useful .slick-next {
    right: 20px
  }
}
.top-useful__item {
  margin-bottom: 20px;
  padding: 0 20px;
  width: 340px
}
.top-useful__item img {
  width: 300px;
  height: 200px;
  object-fit: cover
}
.top-useful__image {
  margin-bottom: 20px
}
.top-useful__image a {
  display: block;
  transition: .3s
}
.top-useful__image a:hover {
  opacity: .5
}
.top-useful__image img {
  border-radius: 10px;
  width: 100%
}
.top-useful__title {
  border-left: 4px solid #818181;
  padding-left: 10px
}
.top-useful__link {
  margin-top: 20px;
  text-align: right
}
.top-useful__link a {
  padding-left: 20px;
  background: url(img/top-useful-link.svg) 0% 50%/auto no-repeat;
  font-weight: 700;
  display: inline-block;
  transition: .3s
}
.top-useful__link a:hover {
  padding-left: 15px;
  text-decoration: underline
}
.top-news {
    margin-bottom: 0px;
  /*margin-bottom: -40px;*/
  /*background: #f6f4ef;*/
    padding: 20px 0;
}
@media only screen and (min-width: 1024px) {
  .top-news {
    /*margin-bottom: -120px*/
    margin-bottom: 0px;
    padding: 40px 0
  }
}
.top-news__link {
  margin-top: 20px;
  text-align: right
}
.top-news__link a {
  padding-right: 80px;
  background: url(img/top-news-link.svg) 100% 0/auto no-repeat;
  font-weight: 700;
  display: inline-block
}
@media only screen and (min-width: 1024px) {
  .top-news__link a {
    transition: .3s
  }
  .top-news__link a:hover {
    transform: translateX(20px)
  }
}
@media only screen and (min-width: 1024px) {
  .feature-strength__list {
    display: flex;
    justify-content: space-between
  }
}
@media only screen and (max-width: 1023px) {
  .feature-strength__item {
    margin-top: 40px;
  }
}
@media only screen and (min-width: 1024px) {
  .feature-strength__item {
    width: calc((100% - 60px) / 2)
  }
}
.feature-strength__catch {
  margin-bottom: 20px;
  color: #dd9c9c;
  font-family: "Antonio", sans-serif;
  font-size: 32px;
  font-weight: 300;
  text-align: center;
  position: relative
}
@media only screen and (min-width: 1024px) {
  .feature-strength__catch {
    margin-bottom: 40px;
    font-size: 40px
  }
}
.feature-strength__catch::before, .feature-strength__catch::after {
  content: "";
  position: absolute;
  z-index: 0
}
.feature-strength__catch::before {
  background: #dd9c9c;
  width: 100%;
  height: 2px;
  left: 0;
  top: calc(50% + 2px)
}
@media only screen and (min-width: 1024px) {
  .feature-strength__catch::before {
    width: calc(100% - 100px);
    top: calc(50% + 3px);
    left: 50px
  }
}
.feature-strength__catch::after {
  background: #fff;
  width: 120px;
  height: 100%;
  top: 0;
  left: 50%;
  transform: translateX(-50%)
}
@media only screen and (min-width: 1024px) {
  .feature-strength__catch::after {
    width: 140px
  }
}
.feature-strength__catch span {
  position: relative;
  z-index: 1
}
.feature-strength__heading {
  margin: 40px 0 30px;
  font-size: 20px;
  text-align: center
}
@media only screen and (min-width: 1024px) {
  .feature-strength__heading {
    font-size: 28px
  }
}
@media only screen and (min-width: 1024px) {
  .feature-concept {
    position: relative
  }
}
@media only screen and (min-width: 1024px) {
  .feature-concept .heading-2 {
    margin-bottom: 60px;
    margin-right: 50%;
    margin-left: auto;
    max-width: 640px
  }
}
@media only screen and (max-width: 1023px) {
  .feature-concept__image {
    padding-top: calc(100vw * 4 / 5);
    position: relative;
    overflow: hidden
  }
}
@media only screen and (min-width: 1024px) {
  .feature-concept__image {
    width: 50%;
    max-width: 800px;
    height: 584px;
    position: absolute;
    top: 0;
    left: 50%
  }
}
@media only screen and (max-width: 1023px) {
  .feature-concept__image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: 50% 0%;
    position: absolute;
    top: 0;
    left: 0
  }
}
@media only screen and (min-width: 1024px) {
  .feature-concept__image img {
    width: 100%;
    height: 100%;
    object-fit: cover
  }
}
.feature-concept__box {
  background: #f6f4ef;
  padding: 40px 15px 60px
}
@media only screen and (min-width: 1024px) {
  .feature-concept__box {
    padding: 60px 40px;
    margin-right: 50%;
    margin-left: auto;
    max-width: 640px
  }
}
.feature-concept__box p {
  margin-bottom: 20px
}
@media only screen and (min-width: 1024px) {
  .feature-concept__box p {
    line-height: 32px
  }
}
.feature-concept__box p:last-child {
  margin-bottom: 0
}
.feature-training {
  background: #f6f4ef
}
.feature-training .step-list__item:first-child .step-list__heading {
  padding-top: 14px
}
@media only screen and (min-width: 1024px) {
  .feature-training .step-list__item:first-child .step-list__heading, .feature-training .step-list__item:last-child .step-list__heading {
    padding-top: 22px
  }
}
.feature-training .step-list__number {
  background: #f6f4ef
}
.feature-training__notification {
  border: 1px solid #dd9c9c;
  padding: 15px 20px;
  background: #fff;
  color: #dd9c9c;
  font-weight: 700
}
.feature-training__notification .list-disc li::before {
  background: #dd9c9c;
  width: 4px;
  height: 4px
}
.feature-meal__desc {
  margin: 40px auto 0
}
@media only screen and (min-width: 1024px) {
  .feature-meal__desc {
    max-width: 640px
  }
}
@media only screen and (min-width: 1024px) {
  .feature-meal .step-list__item .step-list__heading {
    padding-top: 22px
  }
}
.feature-promise {
  background: #f6f4ef
}
@media only screen and (min-width: 1024px) {
  .feature-promise .heading-2, .feature-promise .list-decimal {
    width: calc(100% - 500px - 50px);
    float: right
  }
}
@media only screen and (max-width: 1023px) {
  .feature-promise__image {
    margin-bottom: 20px
  }
}
@media only screen and (min-width: 1024px) {
  .feature-promise__image {
    width: 500px;
    height: 375px;
    float: left
  }
  .feature-promise__image img {
    width: 100%;
    height: 100%;
    object-fit: cover
  }
}
.feature-promise .list-decimal {
  line-height: 26px
}
.feature-promise .list-decimal li {
  margin-bottom: 20px
}
/*▼紹介キャンペーン*/
.campaign_new .img_w80 {
  width: 100%;
  margin: 0 auto 50px auto;
  max-width: 900px;
}
.campaign_new img {
  width: 100%;
}
.campaign_new .bg_o {
  background-color: #F6F4EE;
  padding: 50px auto;
}
.campaign_new .bg_wh {
  background-color: #FFF;
}
.campaign_new .text_o {
  color: #dd9c9c;
}
.campaign_new .text_wh {
  color: #333;
  font-size: 2.5rem;
  line-height: 100%;
  font-weight: bold;
  padding-top: 50px;
}
@media screen and (max-width: 767px) {
  .campaign_new .text_wh {
    font-size: 1.5rem;
  }
}
.campaign_new h3.line_border {
  font-size: 1.8rem;
  line-height: 160%;
  font-weight: bold;
  border-bottom: 2px solid #dd9c9c;
  text-align: left;
  margin-bottom: 30px;
}
@media screen and (max-width: 767px) {
  .campaign_new h3.line_border {
    font-size: 1.3rem;
    line-height: 140%;
    padding-bottom: 5px;
  }
}
.campaign_new .introduction {
  text-align: center;
}
.campaign_new .introduction_box {
  padding-bottom: 50px;
}
.campaign_new .introduction_box li {
  margin-top: 30px;
  padding: 30px;
}
.campaign_new .send_box dl {
  padding: 10px;
  width: 80%;
  max-width: 400px;
  margin: 0 auto;
}
.campaign_new .send_box dt {
  font-size: 18px;
  color: #666;
  margin-bottom: 20px;
}
.campaign_new .campaign__button {
  margin-top: 0px !important;
  padding-bottom: 50px;
}
@media only screen and (min-width: 1024px) {
  .campaign_new .campaign__button {
    margin-top: 0px !important;
    padding-bottom: 100px;
  }
}
/*▲紹介キャンペーン*/
.store-list {
  background: url(img/store-list-bg.png) 100% 0/100px no-repeat #eee;
  overflow: hidden
}
@media only screen and (min-width: 1024px) {
  .store-list {
    background-size: 344px auto
  }
}
.store-list__tab {
  display: flex
}
@media only screen and (max-width: 1023px) {
  .store-list__tab {
    margin-left: -1rem;
    margin-right: calc(-1rem - 1px);
    flex-wrap: wrap
  }
}
@media only screen and (min-width: 1024px) {
  .store-list__tab {
    margin-right: -1px
  }
}
.store-list__tab-item {
  border-right: 1px solid #fff;
  background: #818181;
  color: #fff;
  font-weight: 700;
  text-align: center;
  position: relative;
  transition: .3s
}
@media only screen and (max-width: 1023px) {
  .store-list__tab-item {
    border-top: 1px solid #fff;
    padding: 15px 0;
    font-size: 14px;
    flex-basis: calc(100% / 3)
  }
}
@media only screen and (min-width: 1024px) {
  .store-list__tab-item {
    padding: 25px 10px;
    font-size: 1.125rem;
    flex-basis: calc(100% / 3)
  }
}
.store-list__tab-item::after {
  content: "";
  margin-left: -2px;
  border-style: solid;
  border-color: #fff transparent transparent transparent;
  position: absolute;
  left: 50%;
  opacity: 0;
  transition: .3s
}
@media only screen and (max-width: 1023px) {
  .store-list__tab-item::after {
    border-width: 6px 4px;
    bottom: -1px
  }
}
@media only screen and (min-width: 1024px) {
  .store-list__tab-item::after {
    border-width: 8px 4px;
    bottom: 1px
  }
}
.store-list__tab-item.active {
  background: #dd9c9c;
  font-weight: 700
}
.store-list__tab-item.active::after {
  opacity: 1
}
.store-list__tab-item:not(.active) {
  cursor: pointer
}
.store-list__tab-item:not(.active):hover {
  opacity: .75
}
@media only screen and (min-width: 1024px) {
  .store-list__container {
    margin: 0 -20px;
    display: flex;
    flex-wrap: wrap
  }
}
.store-list__item {
  margin-top: 20px
}
@media only screen and (min-width: 1024px) {
  .store-list__item {
    margin-top: 60px;
    padding: 0 20px;
    width: calc(100% / 3)
  }
}
.store-list__item:not([data-area=tokyo]) {
  display: none
}
.store-list__link {
  border: 1px solid #818181;
  background: #fff;
  display: block;
  position: relative;
  transition: .3s
}
.store-list__link:hover .storeList__thumb img {
  transform: scale(1.05)
}
@media only screen and (min-width: 1024px) {
  .store-list__link {
    height: 100%
  }
}
.store-list__link::after {
  content: "";
  background: rgba(221, 156, 156, .1);
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  opacity: 0;
  transition: .3s
}
.store-list__link:hover::after {
  opacity: 1
}
.store-list__thumb {
  padding-top: 52.5%;
  position: relative;
  overflow: hidden
}
.store-list__thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  position: absolute;
  top: 0;
  transition: .3s
}
.store-list__text {
  padding: 20px
}
.store-list__name {
  margin-bottom: .5rem;
  border-bottom: 1px solid #000;
  padding-bottom: .5em;
  font-weight: 700;
  line-height: 1.5;
  position: relative
}
.store-list__name::before {
  content: "";
  background: #dd9c9c;
  display: block;
  width: 4rem;
  height: 1px;
  position: absolute;
  bottom: -1px;
  left: 0
}
.store-list__address {
  font-size: .875rem;
  line-height: 1.5
}
.store-list__access {
  margin-top: .25rem;
  font-size: .875rem;
  line-height: 1.5
}
.store-list__options {
  margin-right: -0.5rem
}
.store-list__options .badge {
  margin-top: .5em;
  margin-right: .5em
}
@media only screen and (min-width: 1024px) {
  .store-list__options .badge {
    font-size: .75rem
  }
}
/*-------------LINE--------------*/
.store-list-line__container {
  background: rgba(229, 229, 229, 0.6);
}
@media only screen and (max-width: 1023px) {
  .store-list-line__container {
    margin: 0 -1rem;
    padding: 1rem 1rem 1px;
  }
}
@media only screen and (min-width: 1024px) {
  .store-list-line__container {
    padding: 40px 20px;
    display: flex;
    flex-wrap: wrap;
  }
}
.store-list-line__item {
  margin-bottom: 0rem;
  background: #fff;
  border-bottom: dotted #ccc 1px;
  padding: 10px 20px;
}
@media only screen and (min-width: 1024px) {
  .store-list-line__item {
    margin-bottom: 0px;
    padding: 0 20px;
    width: 100%;
  }
}
/*.store-list-line__item:not([data-area=tokyo-23ku]) {*/
.store-list-line__item:not([data-area=tokyo]) {
  display: none;
}
.store-list-line__link {
  padding: 0px;
  background: #fff;
  display: block;
  position: relative;
  transition: 0.3s;
}
.store-list-line__link:hover .storeList__thumb img {
  transform: scale(1.05);
}
@media only screen and (min-width: 1024px) {
  .store-list-line__link {
    height: 100%;
  }
}
.store-list-line__link::after {
  content: "";
  /*background: rgba(236, 143, 38, 0.1);*/
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  opacity: 0;
  transition: 0.3s;
}
.store-list-line__link:hover::after {
  /*opacity: 1;*/
}
.store-list-line__text {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  margin: 10px auto;
  padding: 0;
  width: 100%;
}
@media only screen and (min-width: 1024px) {
  .store-list-line__text {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin: 20px auto;
    padding: 0;
    width: 100%;
  }
}
.store-list-line__text .store-list-line__name {
  width: 100%;
  margin: 0 auto 10px auto;
  font-weight: 600;
}
.store-list-line__text .store-list-line__address {
  width: 100%;
  margin: 0 auto 5px auto;
  text-align: left;
}
.store-list-line__text .store-list-line__access {
  width: 100%;
  margin: 0;
  text-align: left;
  font-size: 14px;
  line-height: 140%;
}
.store-list-line__text .store-list-line__line {
  width: 50%;
  margin: 0 auto;
  text-align: center;
}
.store-list-line__text .store-list-line__line .line_yoyaku_btn {
  margin: 10px auto 0 auto;
}
.store-list-line__text .store-list-line__line .line_yoyaku_btn a {
  background: #47D030;
  color: #fff;
  font-weight: 800;
  font-size: 1rem;
  display: block;
  width: 100%;
  height: 100%;
  padding: 15px 10px;
  border-radius: 30px;
}
@media only screen and (min-width: 1024px) {
  .store-list-line__text .store-list-line__name {
    width: 15%;
    margin: 0;
    font-weight: 600;
  }
  .store-list-line__text .store-list-line__address {
    width: 70%;
    margin: 0;
    text-align: left;
  }
  .store-list-line__text .store-list-line__access {
    width: 25%;
    margin: 0;
    text-align: left;
    font-size: 14px;
    line-height: 140%;
  }
  .store-list-line__text .store-list-line__line {
    width: 15%;
    margin: 0;
    text-align: center;
  }
  .store-list-line__text .store-list-line__line .line_yoyaku_btn {
    margin: 0;
  }
  .store-list-line__text .store-list-line__line .line_yoyaku_btn a {
    background: #47D030;
    box-shadow: 0px 0px 5px #ccc;
    color: #fff;
    font-weight: 800;
    font-size: 0.9rem;
    display: block;
    width: 100%;
    height: 100%;
    padding: 10px 5px 10px 5px;
    border-radius: 30px;
  }
}
.store-campaign {
  padding-top: 0
}
.store-campaign__box {
  border: 3px solid #dd9c9c;
  padding: 25px 20px 20px;
  position: relative;
  z-index: 0
}
@media only screen and (min-width: 1024px) {
  .store-campaign__box {
    margin: 0 auto;
    border-width: 4px;
    padding: 50px 40px 40px
  }
}
.store-campaign__heading {
  margin-top: -0.5em;
  color: #dd9c9c;
  font-size: 18px;
  font-weight: 700;
  text-align: center;
  width: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1
}
@media only screen and (min-width: 1024px) {
  .store-campaign__heading {
    font-size: 24px
  }
}
.store-campaign__heading::before {
  content: "";
  background: #fff;
  display: block;
  height: 100%;
  width: 10em;
  position: absolute;
  left: 50%;
  z-index: -1;
  transform: translate3d(-50%, 0, 0)
}
.store-campaign__title {
  margin-bottom: .5rem;
  font-size: 1.125rem;
  font-weight: 700;
  line-height: 1.5
}
@media only screen and (min-width: 1024px) {
  .store-campaign__title {
    font-size: 1.5rem
  }
}
.store-campaign__desc p {
  margin-bottom: 10px;
  line-height: 1.5
}
@media only screen and (min-width: 1024px) {
  .store-campaign__desc p {
    margin-bottom: 20px
  }
}
.store-campaign__desc p:last-child {
  margin-bottom: 0
}
@media only screen and (min-width: 1024px) {
  .store-header {
    height: auto
  }
}
.store-header + .section {
  margin-top: 0
}
@media only screen and (min-width: 1024px) {
  .store-header > .container, .store-header > .container-full, .store-header > .container-1100, .store-header > .container-1000, .store-header > .container-800, .store-header > .container-640 {
    margin-right: auto;
    display: flex;
    justify-content: space-between;
    max-width: 1200px
  }
}
@media only screen and (min-width: 1024px) {
  .store-header .page-header__catch::after {
    max-width: 340px
  }
}
.store-header .page-header__lead {
  margin-top: 10px;
  margin-bottom: -2px
}
@media only screen and (min-width: 1024px) {
  .store-header .page-header__lead {
    margin-top: 20px;
    margin-bottom: -10px
  }
}
.store-header .page-header__desc {
  margin-top: 40px;
  font-size: 16px;
  line-height: 28px
}
.store-header .page-header__image {
  padding: 0 15px;
  height: auto
}
.store-header__text {
  max-width: 420px
}
.store-header_bg {
  width: 100%;
  background-image: url(https://www.shapes-international.co.jp/wp-content/themes/reborn/img/store_fv_bg+.jpg);
  background-size: auto 100%;
  background-repeat: no-repeat;
  background-position: center top;
}
.store-header_bg .container {
  /*background-image: url(https://www.shapes-international.co.jp/wp-content/themes/reborn/img/store_fv.png);*/
}
.store-header_bg .container {
  background-size: auto 100%;
  background-repeat: no-repeat;
  background-position: right bottom;
}
.store-header_bg .container .page-header__catch {
  max-width: 420px
}
.store-header_bg .container .store-header__text {
  width: 55%;
  max-width: 55%;
  margin: 10px auto 0px 5% !important;
  padding-bottom: 30px;
}
.store-header_bg .container .page-header__desc {
  width: 100%;
  margin-left: 0;
  margin-right: auto;
  text-align: justify;
}
@media only screen and (max-width: 767px) {
  .store-header_bg .container {
    /*background-image: url(https://www.shapes-international.co.jp/wp-content/themes/reborn/img/store_fv_sp.png);*/
    background-size: auto 100%;
    background-repeat: no-repeat;
    background-position: right bottom;
  }
  .store-header_bg .container .store-header__text {
    width: 70%;
    max-width: 70%;
    margin: 10px auto 0px 0 !important;
    padding-bottom: 30px;
  }
  .store-header_bg .container .page-header__desc {
    width: 100%;
    margin-left: 0;
    margin-right: auto;
    text-align: justify;
  }
}
.store-header_bg .container .page-header__catch {
  margin-top: 0px !important;
}
.store-header_bg .container .page-header__lead, .store-header_bg .container .page-header__title, .store-header_bg .container .page-header__desc {
  text-shadow:
    3px 3px 3px #FFF, -3px -3px 3px #FFF, -3px 3px 3px #FFF, 3px -3px 3px #FFF, 3px 0px 3px #FFF, -3px -0px 3px #FFF, 0px 3px 3px #FFF, 0px -3px 3px #FFF;
}
.store-campaign_img {
  margin-top: -40px;
  margin-bottom: 40px;
}
@media only screen and (max-width: 1023px) {
  .store-header__image {
    margin-top: 40px
  }
  .store-detail__inner .store-header__image, .store-campaign_img .store-header__image {
    margin: 30px auto 0px auto;
  }
  .store-campaign_img .store-header__image {
    width: 80%;
  }
}
@media only screen and (min-width: 1024px) {
  .store-header__image {
    max-width: 640px
  }
  .store-detail__inner .store-header__image, .store-campaign_img .store-header__image {
    width: 80%;
    max-width: 640px;
    margin: 50px auto 0px auto;
  }
}
.store-header__photo {
  margin-bottom: 20px
}
.store-header__photo-thumb {
  margin: 0 -5px
}
@media only screen and (min-width: 1024px) {
  .store-header__photo-thumb .slick-track {
    margin-left: 0
  }
}
.store-header__photo-thumb-wrap {
  padding: 0 5px
}
.store-header__photo-thumb-wrap img {
  border: 1px solid #ddd
}
.store-header__photo-thumb-wrap.slick-current img {
  border: 2px solid #dd9c9c
}
.store-detail {
  padding: 40px 0;
  background: #eee
}
@media only screen and (min-width: 1024px) {
  .store-detail {
    padding: 80px 0
  }
}
@media only screen and (min-width: 1024px) {
  .store-detail .container, .store-detail .container-full, .store-detail .container-1100, .store-detail .container-1000, .store-detail .container-800, .store-detail .container-640 {
    max-width: calc(1100px + 40px * 2)
  }
}
.store-detail__inner {
  padding: 40px 20px;
  background: #fff
}
@media only screen and (min-width: 1024px) {
  .store-detail__inner {
    padding: 80px 50px
  }
}
.store-detail__heading {
  padding: 10px 0;
  font-size: 20px;
  font-weight: 700;
  line-height: 28px;
  text-align: center;
  position: relative
}
@media only screen and (min-width: 1024px) {
  .store-detail__heading {
    margin-bottom: 80px;
    padding: 15px 0;
    font-size: 28px;
    line-height: 42px
  }
}
.store-detail__heading::before, .store-detail__heading::after {
  content: "";
  background: #dd9c9c;
  width: 100%;
  height: 2px;
  position: absolute;
  transform: translateX(-50%);
  left: 50%
}
@media only screen and (min-width: 1024px) {
  .store-detail__heading::before, .store-detail__heading::after {
    width: 400px
  }
}
.store-detail__heading::before {
  top: 0
}
.store-detail__heading::after {
  bottom: 0
}
@media only screen and (min-width: 1024px) {
  .store-detail__container {
    display: flex;
    justify-content: space-between
  }
}
@media only screen and (min-width: 1024px) {
  .store-detail__text {
    width: 50%
  }
}
.store-detail__text th, .store-detail__text td {
  line-height: 28px
}
.store-detail__text th {
  font-weight: 700
}
@media only screen and (max-width: 1023px) {
  .store-detail__text table {
    margin-bottom: 40px
  }
  .store-detail__text th, .store-detail__text td {
    text-align: left;
    display: block
  }
  .store-detail__text th {
    margin-top: 20px
  }
}
@media only screen and (min-width: 1024px) {
  .store-detail__text th {
    text-align: left;
    width: 7em
  }
  .store-detail__text td {
    padding-bottom: 20px
  }
}
@media only screen and (min-width: 1024px) {
  .store-detail__link {
    display: flex;
    justify-content: space-between
  }
}
.store-detail__button {
  margin-top: 20px
}
@media only screen and (min-width: 1024px) {
  .store-detail__button {
    width: calc(100% / 2 - 10px)
  }
}
.store-detail__button a {
  margin: 0 auto;
  border: 1px solid #dd9c9c;
  padding: 0 20px;
  color: #dd9c9c;
  font-weight: 700;
  display: flex;
  align-items: center;
  height: 60px;
  position: relative
}
.store-detail__button a::before, .store-detail__button a::after {
  content: "";
  background: #dd9c9c;
  height: 1px;
  position: absolute;
  bottom: 25px;
  right: 10px
}
.store-detail__button a::before {
  width: 50px
}
.store-detail__button a::after {
  width: 15px;
  transform: rotate(45deg);
  transform-origin: right top
}
@media only screen and (max-width: 1023px) {
  .store-detail__button a {
    max-width: 250px
  }
}
.store-detail__button a img {
  margin-left: -10px;
  margin-right: 5px
}
.store-detail__credit {
  margin-top: 40px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 700
}
@media only screen and (min-width: 1024px) {
  .store-detail__credit {
    justify-content: left
  }
}
.store-detail__credit img {
  width: 50px;
  margin-left: 10px
}
@media only screen and (min-width: 1024px) {
  /*.store-detail__credit img:not(:last-child){margin-left:20px}*/
}
.store-detail__tokushoho {
  margin-top: 40px
}
.store-detail__tokushoho-link {
  cursor: pointer
}
.store-detail__tokushoho-link:hover {
  text-decoration: underline
}
.store-detail__tokushoho-modal {
  display: none
}
.store-detail__tokushoho-heading {
  margin: 20px 0;
  font-size: 18px;
  text-align: center
}
@media only screen and (min-width: 1024px) {
  .store-detail__tokushoho-heading {
    margin: 40px 0;
    font-size: 22px
  }
}
.store-detail__tokushoho-table {
  font-size: 14px;
  line-height: calc(4 / 3);
  max-width: 800px
}
@media only screen and (max-width: 1023px) {
  .store-detail__tokushoho-table th, .store-detail__tokushoho-table td {
    display: block
  }
}
@media only screen and (min-width: 1024px) {
  .store-detail__tokushoho-table th, .store-detail__tokushoho-table td {
    border: 1px solid #ddd;
    padding: 15px 20px
  }
}
.store-detail__tokushoho-table th {
  text-align: left
}
@media only screen and (max-width: 1023px) {
  .store-detail__tokushoho-table th {
    margin-top: 10px;
    margin-bottom: 5px;
    font-weight: 700
  }
}
@media only screen and (min-width: 1024px) {
  .store-detail__tokushoho-table th {
    width: calc(20px * 2 + 14em)
  }
}
@media only screen and (max-width: 1023px) {
  .store-detail__map {
    margin-top: 40px
  }
}
@media only screen and (min-width: 1024px) {
  .store-detail__map {
    width: calc(50% - 50px)
  }
}
@media only screen and (min-width: 1024px) {
  .store-detail__map .embed-googlemaps {
    height: 100%
  }
}
@media only screen and (min-width: 1024px) {
  .store-introduction__list {
    display: flex;
    flex-wrap: wrap
  }
}
@media only screen and (max-width: 1023px) {
  .store-introduction__item:not(:first-child) {
    margin-top: 40px
  }
}
@media only screen and (min-width: 1024px) {
  .store-introduction__item {
    margin-right: 40px;
    width: calc((100% - 40px * 2) / 3)
  }
  .store-introduction__item:nth-child(3n) {
    margin-right: 0
  }
}
.store-introduction__image {
  margin-bottom: 20px;
  padding-bottom: 34px;
  background: url(img/store-introduction-separator.svg) 50% 100%/auto no-repeat
}
.store-staff {
  background: #eee
}
.store-staff__item:not(:first-child) {
  margin-top: 40px
}
@media only screen and (min-width: 1024px) {
  .store-staff__item {
    display: flex;
    justify-content: space-between;
    align-items: flex-start
  }
}
@media only screen and (min-width: 1024px) {
  .store-staff__people {
    width: 300px
  }
}
.store-staff__image {
  margin-bottom: 20px
}
@media only screen and (max-width: 1023px) {
  .store-staff__image {
    padding: 0 20px
  }
}
.store-staff__image img {
  width: 100%
}
.store-staff__name {
  font-weight: 700;
  text-align: center
}
.store-staff__comment {
  margin-bottom: 0;
  border-radius: 4px;
  padding: 20px;
  background: #fff;
  line-height: 28px
}
@media only screen and (max-width: 1023px) {
  .store-staff__comment {
    margin-top: 20px
  }
}
@media only screen and (min-width: 1024px) {
  .store-staff__comment {
    padding: 40px;
    width: calc(100% - 300px - 30px)
  }
}
@media only screen and (max-width: 1023px) {
  .store-food__list {
    margin: 0 -15px
  }
}
@media only screen and (min-width: 1024px) {
  .store-food__list {
    padding: 0 30px
  }
}
.store-food__item {
  margin: 0 35px;
  border: 2px solid #ddd;
  border-radius: 8px;
  padding: 20px
}
@media only screen and (min-width: 1024px) {
  .store-food__item {
    margin: 0 20px
  }
}
.store-food__image {
  margin-bottom: 20px;
  padding: 0 20px;
  text-align: center
}
.store-food__image img {
  display: inline
}
.store-food .slick-arrow {
  width: auto;
  height: 100%;
  filter: drop-shadow(0 0 6px rgba(0, 0, 0, 0.3))
}
.store-food .slick-arrow::before {
  content: none
}
@media only screen and (min-width: 1024px) {
  .store-food .slick-arrow img {
    width: 30px
  }
}
.store-food .slick-prev {
  left: 5px;
  z-index: 9
}
@media only screen and (min-width: 1024px) {
  .store-food .slick-prev {
    left: 0
  }
}
.store-food .slick-next {
  right: 5px
}
@media only screen and (min-width: 1024px) {
  .store-food .slick-next {
    right: 0
  }
}
.store-food__title {
  margin-bottom: 20px;
  border-top: 5px solid #f6f4ef;
  border-bottom: 5px solid #f6f4ef;
  padding: 10px 0;
  font-size: 18px;
  font-weight: 700;
  line-height: 28px;
  text-align: center
}
.store-food__desc {
  margin-bottom: 20px;
  line-height: 26px
}
.store-food__shop-info {
  border-top: 1px solid #ddd;
  padding-top: 20px;
  font-size: 14px;
  line-height: 20px
}
.store-food__shop-info li:not(:last-child) {
  margin-bottom: 5px
}
@media only screen and (min-width: 1024px) {
  .store-access__list {
    display: flex;
    flex-wrap: wrap
  }
}
@media only screen and (max-width: 1023px) {
  .store-access__item {
    display: flex;
    justify-content: space-between
  }
  .store-access__item:not(:last-child) {
    margin-bottom: 10px;
    padding-bottom: 30px;
    background: url(img/arrow-bottom-pink.svg) 60px 100%/auto no-repeat
  }
}
@media only screen and (min-width: 1024px) {
  .store-access__item {
    margin-left: 50px;
    width: calc((100% - 50px * 3) / 4)
  }
  .store-access__item:not(:first-child) {
    background: url(img/arrow-right-pink.svg) -60px 20px/auto no-repeat
  }
  .store-access__item:nth-child(4n+1) {
    margin-left: 0
  }
}
@media only screen and (max-width: 1023px) {
  .store-access__image {
    width: 160px
  }
}
@media only screen and (min-width: 1024px) {
  .store-access__image {
    margin-bottom: 10px
  }
}
@media only screen and (min-width: 1024px) {
  .store-access__item:not(:last-child) .store-access__image {
    margin-right: -35px;
    padding-right: 35px;
    background: url(img/arrow-right-pink.svg) 100% 50%/auto no-repeat
  }
}
.store-access__desc {
  margin-bottom: 0;
  line-height: 22px
}
@media only screen and (max-width: 1023px) {
  .store-access__desc {
    width: calc(100% - 10px - 160px)
  }
}
@media only screen and (min-width: 1024px) {
  .store-access__desc {
    line-height: 26px
  }
}
.program-personal__heading {
  margin: 0 auto 20px;
  border: 4px solid #d39f9d;
  border-radius: 30px;
  background: #dd9c9c;
  color: #fff;
  font-size: 20px;
  line-height: 54px;
  text-align: center;
  max-width: 640px;
  height: 60px
}
@media only screen and (min-width: 1024px) {
  .program-personal__heading {
    margin-bottom: 40px;
    font-size: 28px
  }
}
.program-personal .notification {
  margin-left: auto;
  margin-right: auto;
  max-width: 640px
}
.program-personal .notification p {
  margin-bottom: 0
}
.program-personal__price-list {
  margin-top: 40px;
  display: flex;
  justify-content: space-between
}
.program-personal__price-heading {
  padding-top: calc(90px + 20px - 10px);
  width: 70px
}
@media only screen and (min-width: 1024px) {
  .program-personal__price-heading {
    width: 200px
  }
}
.program-personal__price-heading-cell {
  margin: 20px 0;
  background: #eee;
  font-size: 18px;
  font-weight: 700;
  line-height: 24px;
  text-align: center;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 80px
}
.program-personal__price-heading-cell:last-child {
  margin-bottom: 10px
}
.program-personal__course {
  padding: 10px;
  text-align: center;
  width: calc(100% - 70px - 10px);
  box-shadow: 2px 2px 6px rgba(0, 0, 0, .16)
}
@media only screen and (min-width: 1024px) {
  .program-personal__course {
    width: calc((100% - 200px - 20px * 3) / 3)
  }
}
.program-personal__course-name {
  margin: -10px -10px 20px;
  background: #dd9c9c;
  font-size: 20px;
  font-weight: 700;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  align-content: center;
  justify-content: center;
  height: 90px;
  position: relative
}
.program-personal__course-name::after {
  content: "";
  background: url(img/course-name-arrow.svg) 50% 100%/cover no-repeat;
  width: 100%;
  height: 20px;
  position: absolute;
  bottom: 0;
  left: 0;
  transform: translateY(100%)
}
.program-personal__course-name span {
  margin-top: 5px;
  color: #fff;
  font-family: "Antonio", sans-serif;
  font-size: 32px;
  display: block;
  width: 100%
}
.program-personal__course-value {
  line-height: 22px;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 100px
}
.program-personal__course-value:not(:last-child) {
  border-bottom: 1px solid #ddd
}
.program-personal__course-value:last-child {
  margin-bottom: -10px
}
.program-personal__course-value.price {
  font-size: 24px;
  font-weight: 700;
  flex-wrap: wrap;
  align-content: center
}
.program-personal__course-value.price div {
  line-height: 1.3333;
  width: 100%
}
.program-personal__course-value.price span {
  margin-left: 2px;
  padding-top: 4px;
  font-size: 16px
}
.program-personal__note {
  margin-top: 20px;
  font-size: 14px
}
@media only screen and (min-width: 1024px) {
  .program-personal__note {
    margin-left: calc(200px + 20px)
  }
}
.program-service {
  background: #f6f4ef
}
@media only screen and (min-width: 1024px) {
  .program-service__list {
    display: grid;
    grid-template-columns: repeat(3, calc((100% - 40px * 2) / 3));
    column-gap: 40px;
    row-gap: 60px
  }
}
@media only screen and (max-width: 1023px) {
  .program-service__item {
    margin-top: 40px
  }
}
.program-service__image {
  margin-bottom: 10px
}
.program-service__name {
  margin-bottom: 0;
  background: #957373;
  color: #fff;
  font-size: 18px;
  font-weight: 700;
  text-align: center;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 60px
}
@media only screen and (min-width: 1024px) {
  .program-option__list {
    display: grid;
    grid-template-columns: repeat(3, calc((100% - 40px * 2) / 3));
    column-gap: 40px;
    row-gap: 60px
  }
}
.program-option__item {
  background: #fff;
  box-shadow: 2px 2px 6px rgba(0, 0, 0, .16)
}
@media only screen and (max-width: 1023px) {
  .program-option__item {
    margin-top: 20px
  }
}
.program-option__name {
  background: #eee;
  font-size: 18px;
  font-weight: 700;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 60px
}
.program-option__content {
  padding: 0 10px;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  align-content: center;
  justify-content: center;
  height: 120px
}
.program-option__price {
  font-size: 24px;
  font-weight: 700;
  line-height: 1.333
}
@media only screen and (min-width: 1024px) {
  .program-option__price {
    font-size: 28px
  }
}
.program-option__price span {
  font-size: 20px
}
.program-option__note {
  margin-top: 5px;
  font-size: 14px;
  line-height: 20px;
  width: 100%
}
.program-maintenance__heading {
  margin: 0 auto 20px;
  border: 4px solid #d39f9d;
  border-radius: 30px;
  background: #dd9c9c;
  color: #fff;
  font-size: 20px;
  line-height: 54px;
  text-align: center;
  max-width: 640px;
  height: 60px
}
@media only screen and (min-width: 1024px) {
  .program-maintenance__heading {
    margin-bottom: 40px;
    font-size: 28px
  }
}
.program-maintenance__heading span {
  font-size: 14px
}
@media only screen and (min-width: 1024px) {
  .program-maintenance__heading span {
    font-size: 20px
  }
}
.program-maintenance .notification {
  margin-left: auto;
  margin-right: auto;
  max-width: 640px
}
.program-maintenance .notification p {
  margin-bottom: 0
}
@media only screen and (max-width: 1023px) {
  .program-maintenance__item {
    margin-top: 20px;
    box-shadow: 2px 2px 2px rgba(0, 0, 0, .16)
  }
}
@media only screen and (min-width: 1024px) {
  .program-maintenance__item {
    margin-top: 40px;
    display: flex;
    justify-content: space-between
  }
}
.program-maintenance__times {
  background: #eee;
  font-size: 18px;
  font-weight: 700;
  line-height: 80px;
  text-align: center;
  height: 80px;
  position: relative
}
@media only screen and (min-width: 1024px) {
  .program-maintenance__times {
    width: 300px
  }
}
.program-maintenance__times::before {
  content: "";
  border-width: 10px;
  border-style: solid;
  border-color: #fff transparent transparent #fff;
  position: absolute;
  top: 0;
  left: 0
}
.program-maintenance__price {
  background: #fff;
  font-size: 24px;
  font-weight: 700;
  line-height: 80px;
  text-align: center;
  height: 80px
}
@media only screen and (min-width: 1024px) {
  .program-maintenance__price {
    font-size: 28px;
    width: 480px;
    box-shadow: 2px 2px 6px rgba(0, 0, 0, .16)
  }
}
.program-maintenance__price span {
  font-size: 16px
}
@media only screen and (min-width: 1024px) {
  .program-maintenance__price span {
    font-size: 20px
  }
}
.program-maintenance__note {
  margin-top: 20px;
  font-size: 14px;
  line-height: 26px
}
@media only screen and (min-width: 1024px) {
  .program-maintenance__note {
    margin-left: 320px
  }
}
@media only screen and (min-width: 1024px) {
  .program-payment__list {
    display: grid;
    grid-template-columns: repeat(2, calc((100% - 40px) / 2));
    column-gap: 40px
  }
}
.program-payment__item {
  padding: 20px;
  background: #eee
}
@media only screen and (max-width: 1023px) {
  .program-payment__item {
    margin-top: 20px
  }
}
.program-payment__heading {
  padding-bottom: 20px;
  font-size: 20px;
  font-weight: 700;
  text-align: center
}
.program-payment__content {
  padding: 20px;
  background: #fff;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center
}
.program-payment__content p {
  margin-bottom: 10px
}
.program-payment__content p:last-child {
  margin-bottom: 0
}
.program-payment__price {
  font-size: 28px;
  font-weight: 700;
  text-align: center;
  width: 100%
}
.program-payment__price span {
  font-size: 16px
}
.program-counseling {
  background: #f6f4ef
}
.program-counseling .heading-2 span {
  font-size: 20px
}
@media only screen and (min-width: 1024px) {
  .program-counseling .heading-2 span {
    font-size: 24px
  }
}
@media only screen and (min-width: 1024px) {
  .program-counseling__list {
    display: grid;
    grid-template-columns: repeat(3, calc((100% - 50px * 2) / 3));
    column-gap: 50px;
    row-gap: 20px
  }
}
.program-counseling__item {
  position: relative
}
@media only screen and (max-width: 1023px) {
  .program-counseling__item {
    margin-top: 20px;
    padding-bottom: 40px
  }
}
.program-counseling__item:not(:last-child)::after {
  content: "";
  position: absolute
}
@media only screen and (max-width: 1023px) {
  .program-counseling__item:not(:last-child)::after {
    background: url(img/arrow-bottom.svg) 50% 100%/auto no-repeat;
    width: 100%;
    height: 20px;
    bottom: 0
  }
}
@media only screen and (min-width: 1024px) {
  .program-counseling__item:not(:last-child)::after {
    background: url(img/arrow-right.svg) 100% 50%/auto no-repeat;
    width: 20px;
    height: 260px;
    top: 0;
    right: -35px
  }
}
.program-counseling__step {
  padding: 5px 20px;
  background: #dd9c9c;
  color: #fff;
  font-family: "Antonio", sans-serif;
  font-size: 22px;
  font-weight: 600
}
.program-counseling__step span {
  font-size: 28px
}
.program-counseling__image {
  margin-bottom: 20px
}
.program-counseling__heading {
  margin-bottom: 15px;
  color: #dd9c9c;
  font-size: 20px;
  font-weight: 700
}
.program-counseling__desc {
  margin-bottom: 0
}
.program-entry .step-list__item .step-list__heading {
  padding-top: 14px
}
@media only screen and (min-width: 1024px) {
  .program-entry .step-list__item .step-list__heading {
    padding-top: 22px
  }
}
.program-entry__heading-4 {
  margin: 20px 0 10px;
  font-size: 18px;
  font-weight: 700
}
.program-entry__heading-4 span {
  padding: 0 10px;
  background: linear-gradient(transparent 40%, #ddd 40%)
}
.program-entry__notification {
  margin-bottom: 10px;
  border: 1px solid #dd9c9c;
  padding: 15px 20px;
  background: #fff;
  color: #dd9c9c;
  font-weight: 700
}
.program-entry__notification .list-disc li::before {
  background: #dd9c9c;
  width: 4px;
  height: 4px
}
.program-entry__step-up {
  margin-top: 40px;
  border: 4px solid #efeae9;
  padding: 15px;
  background: #f0eae9
}
@media only screen and (min-width: 1024px) {
  .program-entry__step-up {
    padding: 36px
  }
}
.program-entry__step-up .step-list__item {
  margin-top: 0
}
@media only screen and (max-width: 1023px) {
  .program-entry__step-up .step-list__item {
    padding-left: 0
  }
}
@media only screen and (min-width: 1024px) {
  .program-entry__step-up .step-list__item {
    padding-left: calc(280px + 40px + 86px + 20px)
  }
}
.program-entry__step-up .step-list__number {
  background: #dd9c9c;
  color: #fff
}
@media only screen and (min-width: 1024px) {
  .program-entry__step-up .step-list__number {
    left: calc(280px + 40px)
  }
}
@media only screen and (max-width: 1023px) {
  .program-entry__step-up .step-list__heading {
    padding-left: calc(60px + 10px)
  }
}
@media only screen and (max-width: 1023px) {
  .program-entry__step-up .step-list__image {
    margin-top: 40px
  }
}
@media only screen and (min-width: 1024px) {
  .program-entry__step-up .step-list__image {
    width: 280px
  }
}
.monitor__notification {
  margin-bottom: 20px
}
.monitor__notification .wh_bg {
    background-color: #FFF;
    padding: 10px;
}
.monitor__notification span {
    text-align: center;
    display: block;    
}
.monitor__notification b {
    text-align: center;
    text-decoration: underline;
    display: block;
    margin: 10px auto;
}
.monitor__notification small {
    display: block;
    margin-top: 10px;
    line-height: 140%;
}
@media only screen and (min-width: 1024px) {
.monitor__notification {
}
.monitor__notification .wh_bg {
    display:flex;
    flex-wrap:wrap;
}
.monitor__notification span {
    text-align: left;
    width: 80%;
}
.monitor__notification b {
    text-align: right;
    width: 20%;
    margin: 0px auto;
}
.monitor__notification small {
}
}
.monitor-list-tab {
  margin: 20px 0;
  margin-right: -1px;
  display: flex;
  flex-wrap: wrap
}
@media only screen and (min-width: 1024px) {
  .monitor-list-tab {
    margin: 40px 0
  }
}
.monitor-list-tab__item {
  border-right: 1px solid #fff;
  border-bottom: 1px solid #fff;
  width: calc(100% / 3)
}
@media only screen and (min-width: 1024px) {
  .monitor-list-tab__item {
    width: calc(100% / 6)
  }
}
.monitor-list-tab__item a {
  background: #818181;
  color: #fff;
  font-weight: 700;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 40px
}
@media only screen and (min-width: 1024px) {
  .monitor-list-tab__item a {
    font-size: 20px;
    height: 60px
  }
}
.monitor-list-tab__item.current a {
  background-color: #dd9c9c
}
@media only screen and (max-width: 1023px) {
  .monitor-list {
    margin: 0 -15px 40px
  }
}
@media only screen and (min-width: 1024px) {
  .monitor-list {
    margin-top: -30px;
    display: flex;
    flex-wrap: wrap
  }
}
@media only screen and (max-width: 1023px) {
  .monitor-list__item:not(:last-child) {
    margin-top: 15px
  }
}
@media only screen and (min-width: 1024px) {
  .monitor-list__item {
    margin-top: 30px;
    margin-right: 30px;
    width: calc((100% - 30px * 2) / 3)
  }
  .monitor-list__item:nth-child(3n) {
    margin-right: 0
  }
}
.monitor-list__link {
  padding: 15px;
  background-color: #f6f4ef;
  display: block;
  transition: .3s
}
@media only screen and (min-width: 1024px) {
  .monitor-list__link {
    height: 100%
  }
}
.monitor-list__link:hover {
  opacity: .5
}
.monitor-list__image {
  display: flex;
  justify-content: space-between
}
.monitor-list__image-before, .monitor-list__image-after {
  width: calc(50% - 1px)
}
.monitor-list__image-before img {
  filter: grayscale(1)
}
.monitor-list__weight {
  display: flex
}
.monitor-list__weight-before, .monitor-list__weight-after {
  padding: 10px 15px;
  width: 50%;
  position: relative
}
.monitor-list__weight-before {
  background: #fff
}
.monitor-list__weight-before::after {
  content: "";
  border-width: 30px 10px;
  border-style: solid;
  border-color: #dd9c9c #dd9c9c #dd9c9c #fff;
  background: #fff;
  position: absolute;
  top: 0;
  right: 0;
  transform: translateX(100%)
}
.monitor-list__weight-after {
  background: #dd9c9c;
  padding-right: calc(15px + 60px + 10px)
}
.monitor-list__weight-after::before {
  content: "";
  border-width: 32.5px 10px;
  border-style: solid;
  border-color: transparent transparent transparent #fff;
  position: absolute;
  top: 0;
  left: 0
}
.monitor-list__weight-heading {
  margin-bottom: 5px;
  font-size: 12px
}
.monitor-list__weight-heading span {
  padding-bottom: 4px;
  display: inline-block;
  position: relative
}
.monitor-list__weight-heading span::before {
  content: "";
  background: #333;
  width: 100%;
  height: 1px;
  position: absolute;
  bottom: 0;
  left: 0
}
.monitor-list__weight-value {
  font-size: 24px;
  font-weight: 700;
  text-align: center
}
.monitor-list__weight-value .unit {
  margin-left: 5px;
  margin-right: -20px;
  font-size: 12px;
  font-weight: 400
}
.monitor-list__weight-diff {
  border-radius: 4px;
  background: #fff;
  color: #dd9c9c;
  font-size: 12px;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 60px;
  position: absolute;
  top: 5px;
  bottom: 5px;
  right: 10px
}
.monitor-list__weight-diff-inner {
  padding-top: 4px;
  text-align: center;
  line-height: 1.2
}
.monitor-list__weight-diff-inner span {
  margin-right: 1px;
  font-size: 18px;
  font-weight: 700
}
.monitor-list__heading {
  margin-top: 15px;
  font-size: 18px;
  font-weight: 700;
  line-height: 28px
}
.monitor-detail__figure {
  margin: 0 -15px 40px;
  padding: 15px;
  background: #f6f4ef
}
@media only screen and (min-width: 1024px) {
  .monitor-detail__figure {
    margin: 0 0 40px;
    padding: 60px;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between
  }
}
.monitor-detail__before-after {
  margin-bottom: 15px;
  display: flex;
  align-items: center
}
@media only screen and (min-width: 1024px) {
  .monitor-detail__before-after {
    margin-bottom: 30px
  }
  .monitor-detail__before-after:first-child {
    width: 100%
  }
  .monitor-detail__before-after:not(:first-child) {
    width: calc((100% - 60px) / 2)
  }
}
.monitor-detail__before-image, .monitor-detail__after-image {
  width: calc((100% - 30px) / 2);
  position: relative
}
.monitor-detail__before-image img, .monitor-detail__after-image img {
  width: 100%
}
.monitor-detail__before-image .badge-primary, .monitor-detail__before-image .badge-white, .monitor-detail__after-image .badge-primary, .monitor-detail__after-image .badge-white {
  padding: 0;
  width: 60px;
  height: 16px;
  line-height: 16px;
  text-align: center;
  position: absolute;
  top: 0;
  left: 0
}
@media only screen and (min-width: 1024px) {
  .monitor-detail__before-image .badge-primary, .monitor-detail__before-image .badge-white, .monitor-detail__after-image .badge-primary, .monitor-detail__after-image .badge-white {
    width: 100px;
    height: 20px;
    font-size: 14px;
    line-height: 20px
  }
}
@media only screen and (min-width: 1024px) {
  .monitor-detail__before-after:first-child .monitor-detail__before-image, .monitor-detail__before-after:first-child .monitor-detail__after-image {
    width: calc((100% - 60px) / 2)
  }
}
.monitor-detail__image-arrow {
  content: "";
  margin: 0 5px;
  border-width: 7px 10px;
  border-style: solid;
  border-color: transparent transparent transparent #dd9c9c;
  width: 20px;
  transform: translateX(25%)
}
@media only screen and (min-width: 1024px) {
  .monitor-detail__before-after:first-child .monitor-detail__image-arrow {
    margin: 0 10px;
    border-width: 13px 20px
  }
}
@media only screen and (max-width: 1023px) {
  .monitor-detail__data {
    font-size: 14px
  }
}
@media only screen and (min-width: 1024px) {
  .monitor-detail__data {
    width: 100%
  }
}
@media only screen and (min-width: 1024px) {
  .monitor-detail__data table {
    width: 100%
  }
}
.monitor-detail__data th, .monitor-detail__data td {
  border: 1px solid #f6f4ef;
  padding: 5px 10px;
  line-height: 1.5;
  text-align: center;
  vertical-align: middle
}
.monitor-detail__data td {
  background: #fff
}
@media only screen and (max-width: 1023px) {
  .monitor-detail__data table {
    margin-bottom: 0
  }
  .monitor-detail__data th, .monitor-detail__data td {
    height: 50px
  }
  .monitor-detail__data th:first-child {
    background: #d6c8c4;
    font-weight: 700;
    position: sticky;
    left: 0
  }
  .monitor-detail__data th:last-child {
    background: #dd9c9c;
    color: #fff;
    font-weight: 700;
    position: sticky;
    right: 0
  }
}
@media only screen and (min-width: 1024px) {
  .monitor-detail__data th, .monitor-detail__data td {
    height: 60px
  }
  .monitor-detail__data td {
    height: 40px
  }
  .monitor-detail__data thead th {
    background: #d6c8c4;
    font-weight: 700
  }
  .monitor-detail__data tfoot th {
    background: #dd9c9c;
    color: #fff;
    font-weight: 700
  }
}
.monitor-detail__title {
  margin-bottom: 20px;
  font-size: 18px;
  font-weight: 700;
  line-height: 28px
}
@media only screen and (min-width: 1024px) {
  .monitor-detail__title {
    font-size: 24px;
    line-height: 34px
  }
}
.monitor-detail__image {
  margin-bottom: 20px
}
@media only screen and (min-width: 1024px) {
  .monitor-detail__image {
    width: 40%;
    float: left
  }
}
.monitor-detail__profile {
  margin-bottom: 20px;
  border: 2px solid #ddd
}
@media only screen and (min-width: 1024px) {
  .monitor-detail__profile {
    margin-left: calc(40% + 40px)
  }
}
.monitor-detail__name {
  border-bottom: 2px solid #ddd;
  padding: 20px;
  font-size: 24px
}
.monitor-detail__age-height {
  padding: 10px 20px;
  background: #f6f4ef;
  font-size: 20px
}
@media only screen and (min-width: 1024px) {
  .monitor-detail__content {
    clear: both
  }
}
.monitor-detail__note {
  margin-top: 40px;
  border-top: 1px solid #ddd;
  padding-top: 40px;
  font-size: 14px;
  line-height: 22px
}
.faq-list {
  margin-top: -20px
}
.faq-list__item {
  border-bottom: 1px solid #eee;
  padding: 20px 0
}
.faq-list__q, .faq-list__a {
  padding-top: 2px;
  padding-left: 40px;
  position: relative
}
@media only screen and (min-width: 1024px) {
  .faq-list__q, .faq-list__a {
    padding-top: 8px;
    padding-left: 60px
  }
}
.faq-list__q::before, .faq-list__a::before {
  border-radius: 50%;
  padding-left: 6px;
  color: #fff;
  font-family: "Antonio", sans-serif;
  font-weight: 300;
  font-size: 22px;
  line-height: 30px;
  width: 30px;
  height: 30px;
  position: absolute;
  top: 0;
  left: 0
}
@media only screen and (min-width: 1024px) {
  .faq-list__q::before, .faq-list__a::before {
    padding-left: 8px;
    font-size: 30px;
    line-height: 40px;
    width: 40px;
    height: 40px
  }
}
.faq-list__q {
  margin-bottom: 20px;
  line-height: 26px
}
.faq-list__q::before {
  content: "Q";
  background-color: #dd9c9c
}
.faq-list__a::before {
  content: "A";
  background-color: #818181
}
.faq-list__a p {
  line-height: 26px
}
.top-news__link.--faqLink a {
  display: inline;
  text-decoration: none;
  color: inherit
}
.campaign__heading {
  margin-bottom: 40px;
  font-size: 24px;
  font-weight: 700;
  line-height: 32px;
  text-align: center
}
@media only screen and (min-width: 1024px) {
  .campaign__heading {
    font-size: 32px;
    line-height: 48px
  }
}
.campaign__note {
  margin-top: 10px;
  font-size: 14px;
  text-align: center
}
@media only screen and (min-width: 1024px) {
  .campaign__note {
    margin-top: 20px
  }
}
.campaign__flow {
  background: #eee
}
.campaign__button {
  margin-top: 40px
}
@media only screen and (min-width: 1024px) {
  .campaign__button {
    margin-top: 80px
  }
}
@media only screen and (min-width: 1024px) {
  .post-layout .container, .post-layout .container-full, .post-layout .container-1100, .post-layout .container-1000, .post-layout .container-800, .post-layout .container-640 {
    display: flex;
    justify-content: space-between;
    align-items: flex-start
  }
}
@media only screen and (min-width: 1024px) {
  .post-layout__main {
    width: 710px
  }
}
@media only screen and (min-width: 1024px) {
  .post-layout__aside {
    width: 405px
  }
}
.post-list__item {
  margin-bottom: 20px;
  position: relative
}
@media only screen and (min-width: 1024px) {
  .post-list__item {
    margin-bottom: 40px
  }
}
.post-list__item::before, .post-list__item::after {
  content: "";
  border: 0 solid #818181;
  display: block;
  width: 60px;
  height: 60px;
  position: absolute;
  z-index: 1
}
.post-list__item::before {
  border-top-width: 1px;
  border-left-width: 1px;
  top: 0;
  left: 0
}
.post-list__item::after {
  border-right-width: 1px;
  border-bottom-width: 1px;
  bottom: 0;
  right: 0
}
.post-list__link {
  padding: 10px;
  display: flex;
  justify-content: space-between;
  position: relative;
  transition: .3s
}
@media only screen and (min-width: 1024px) {
  .post-list__link {
    padding: 20px
  }
}
.post-list__link:hover {
  background-color: #f6f4ef
}
.post-list__image {
  width: 120px
}
@media only screen and (min-width: 1024px) {
  .post-list__image {
    width: 200px
  }
}
.post-list__text {
  width: calc(100% - 120px - 10px)
}
@media only screen and (min-width: 1024px) {
  .post-list__text {
    width: calc(100% - 200px - 40px)
  }
}
.post-list__title {
  margin-bottom: 10px;
  font-size: 18px;
  font-weight: 700;
  line-height: 24px
}
@media only screen and (min-width: 1024px) {
  .post-list__title {
    font-size: 24px;
    line-height: 34px;
    position: relative
  }
}
.post-list__date {
  color: #aaa5a5;
  font-family: "Antonio", sans-serif;
  font-weight: 500;
  text-align: right;
  display: block
}
@media only screen and (min-width: 1024px) {
  .post-list__date {
    margin-bottom: 10px;
    text-align: right
  }
}
.post-list__desc p {
  margin-bottom: 0
}
.post-list__heading {
  margin-bottom: 20px;
  font-size: 24px;
  font-weight: 700;
  text-align: center;
  position: relative
}
@media only screen and (min-width: 1024px) {
  .post-list__heading {
    margin-bottom: 40px
  }
}
.post-list__heading::before {
  content: "";
  background: #818181;
  width: 100%;
  height: 1px;
  position: absolute;
  top: 50%;
  left: 0
}
@media only screen and (min-width: 1024px) {
  .post-list__heading::before {
    width: 360px;
    left: 50%;
    transform: translateX(-50%)
  }
}
.post-list__heading span {
  padding: 0 10px;
  background: #fff;
  position: relative
}
@media only screen and (min-width: 1024px) {
  .post-list__heading span {
    padding: 20px
  }
}
.post-aside {
  margin: 0 -15px;
  padding: 40px 15px;
  background: #f6f4ef
}
@media only screen and (min-width: 1024px) {
  .post-aside {
    padding: 40px 20px
  }
}
.post-aside__heading {
  margin-bottom: 20px;
  font-size: 20px;
  font-weight: 700;
  text-align: center;
  position: relative
}
.post-aside__heading::before, .post-aside__heading::after {
  content: "";
  position: absolute
}
.post-aside__heading::before {
  background: #818181;
  width: 100%;
  height: 1px;
  position: absolute;
  top: 50%;
  left: 0
}
.post-aside__heading::after {
  background: #f6f4ef;
  width: 150px;
  height: 100%;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%)
}
.post-aside__heading span {
  position: relative;
  z-index: 1
}
.post-aside__post-list-item {
  border-bottom: 1px solid #ddd
}
.post-aside__post-list-link {
  padding: 10px 0;
  display: flex;
  justify-content: space-between
}
.post-aside__post-list-link:hover {
  text-decoration: underline
}
.post-aside__post-list-image {
  width: 90px
}
.post-aside__post-list-title {
  width: calc(100% - 90px - 15px);
  line-height: calc(4 / 3)
}
.post-article {
  margin-bottom: 40px
}
@media only screen and (min-width: 1024px) {
  .post-article {
    margin-bottom: 80px
  }
}
.post-article__header {
  margin-bottom: 20px;
  padding: 20px;
  position: relative
}
@media only screen and (min-width: 1024px) {
  .post-article__header {
    margin-bottom: 40px
  }
}
.post-article__header::before, .post-article__header::after {
  content: "";
  border: 0 solid #818181;
  display: block;
  width: 60px;
  height: 60px;
  position: absolute;
  z-index: 1
}
.post-article__header::before {
  border-top-width: 1px;
  border-left-width: 1px;
  top: 0;
  left: 0
}
.post-article__header::after {
  border-right-width: 1px;
  border-bottom-width: 1px;
  bottom: 0;
  right: 0
}
.post-article__title {
  margin-bottom: 10px;
  font-size: 24px;
  font-weight: 700;
  line-height: 36px
}
@media only screen and (min-width: 1024px) {
  .post-article__title {
    font-size: 36px;
    line-height: 44px
  }
}
.post-article__date {
  color: #aaa5a5;
  font-family: "Antonio", sans-serif;
  font-weight: 500
}
@media only screen and (min-width: 1024px) {
  .post-article__date {
    font-size: 28px
  }
}
.post-article__eyecatch {
  margin-bottom: 20px
}
@media only screen and (min-width: 1024px) {
  .post-article__eyecatch {
    margin-bottom: 40px
  }
}
.post-article__eyecatch img {
  width: 100%
}
.post-article__content h2 {
  padding-bottom: .25em;
  border-bottom: 4px solid #dd9c9c;
  font-size: 24px
}
@media only screen and (min-width: 1024px) {
  .post-article__content h2 {
    font-size: 32px
  }
}
.post-article__content h3 {
  padding: 15px 20px;
  border-radius: 10px;
  background: #dd9c9c;
  color: #fff;
  font-size: 20px
}
@media only screen and (min-width: 1024px) {
  .post-article__content h3 {
    font-size: 28px
  }
}
.post-article__content h4 {
  color: #dd9c9c;
  font-size: 20px;
  font-weight: 700;
  position: relative
}
@media only screen and (min-width: 1024px) {
  .post-article__content h4 {
    font-size: 22px
  }
}
.post-share {
  margin-top: 1.5rem
}
@media only screen and (min-width: 1024px) {
  .post-share {
    margin-top: 40px
  }
}
.post-share__action {
  display: flex
}
.post-share__link, .post-share__link--share, .post-share__link--hatebu, .post-share__link--line, .post-share__link--twitter, .post-share__link--facebook {
  color: #fff;
  text-align: center;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 25%;
  height: 44px;
  transition: .3s
}
.post-share__link:hover, .post-share__link--share:hover, .post-share__link--hatebu:hover, .post-share__link--line:hover, .post-share__link--twitter:hover, .post-share__link--facebook:hover {
  opacity: .5
}
.post-share__link i, .post-share__link--share i, .post-share__link--hatebu i, .post-share__link--line i, .post-share__link--twitter i, .post-share__link--facebook i {
  font-size: 1.125rem
}
.post-share__link--facebook {
  background-color: #0076fb
}
.post-share__link--twitter {
  background-color: #1da1f3
}
.post-share__link--line {
  background-color: #00b900
}
.post-share__link--hatebu {
  background-color: #00a4de
}
.post-share__link--share {
  background-color: #eee;
  color: #818181
}
@media only screen and (max-width: 1023px) {
  .post-share__label {
    display: none
  }
}
@media only screen and (min-width: 1024px) {
  .post-share__label {
    margin-left: 10px;
    font-size: 14px;
    font-weight: 700
  }
}
.news-list {
  border-bottom: 1px solid #ddd
}
.news-list__item {
  border-top: 1px solid #ddd
}
.news-list__link {
  /*padding: 15px 0;*/
  padding: 10px 0;
  display: block
}
@media only screen and (min-width: 1024px) {
  .news-list__link {
    /*padding: 25px 0;*/
    padding: 15px 0;
    display: flex;
    align-items: flex-start
  }
}
.news-list__date {
  margin-right: 20px;
  color: #818181;
  font-family: "Antonio", sans-serif;
  font-size: 18px
}
@media only screen and (max-width: 1023px) {
  .news-list__date {
    display: block;
    float: left
  }
}
@media only screen and (min-width: 1024px) {
  .news-list__date {
    line-height: 24px;
    width: 80px
  }
}
.news-list .badge-primary {
  font-size: 14px;
  text-align: center;
  width: 100px
}
@media only screen and (max-width: 1023px) {
  .news-list .badge-primary {
    margin-top: -2px
  }
}
@media only screen and (min-width: 1024px) {
  .news-list .badge-primary {
    margin-right: 30px
  }
}
.news-list__title {
  margin-bottom: 0;
  line-height: 24px
}
@media only screen and (max-width: 1023px) {
  .news-list__title {
    margin-top: 10px;
    clear: left
  }
}
@media only screen and (min-width: 1024px) {
  .news-list__title {
    width: calc(100% - 80px - 20px - 100px - 30px)
  }
}
.news-list__link:hover .news-list__title {
  text-decoration: underline
}
.news-article__title {
  margin-bottom: 20px;
  font-size: 24px;
  font-weight: 700;
  line-height: 34px
}
@media only screen and (min-width: 1024px) {
  .news-article__title {
    font-size: 32px;
    line-height: 40px
  }
}
.news-article .badge-primary {
  margin-right: 20px;
  font-size: 14px;
  text-align: center;
  display: block;
  width: 100px;
  float: left
}
@media only screen and (min-width: 1024px) {
  .news-article .badge-primary {
    margin-right: 30px
  }
}
.news-article__date {
  color: #818181;
  font-family: "Antonio", sans-serif;
  font-size: 20px
}
.news-article__content {
  margin-top: 20px
}
@media only screen and (min-width: 1024px) {
  .news-article__content {
    margin-top: 40px
  }
}
@media only screen and (min-width: 1024px) {
  .company-list {
    margin: 0 auto;
    max-width: 660px
  }
}
@media only screen and (min-width: 1024px) {
  .company-list dl {
    display: flex;
    flex-wrap: wrap
  }
}
.company-list dt {
  color: #957373;
  font-weight: 700;
  line-height: 24px
}
@media only screen and (max-width: 1023px) {
  .company-list dt {
    margin-bottom: 5px
  }
}
@media only screen and (min-width: 1024px) {
  .company-list dt {
    margin-right: 60px;
    text-align: right;
    width: 6em
  }
}
.company-list dd {
  margin-bottom: 20px;
  line-height: 24px
}
@media only screen and (min-width: 1024px) {
  .company-list dd {
    margin-bottom: 40px;
    width: calc(100% - 6em - 60px)
  }
}
/* ---------- 20221116 mod p3 ---------- */
p.form-notes {
  margin-top: 0.75em;
  margin-bottom: 0;
}
.link-below a {
  color: #dd9c9c;
  text-decoration: none;
}
.link-below:before {
  font-family: "Font Awesome 5 Free";
  content: "\f107";
  margin-right: 0.25em;
}
.form__action.list-style-none > li:before {
  content: none;
}
.cta-contact {
  padding: 80px 0 40px;
  margin-top: 80px;
  background-color: #EEE;
  border-bottom: solid 1px #999;
}
.cta-contact p:last-child {
  margin-bottom: 0;
}
.cta-contact h5 {
  font-size: 24px !important;
  font-weight: bold;
  line-height: 2.4rem;
  margin-bottom: 10px;
}
.cta-contact + footer {
  margin-top: 0;
}
.top-first-view-appendix {
  text-align: center;
}
@media (max-width: 1023px) {
  .display-pc {
    display: none;
  }
  .display-m.top-first-view-appendix {
    padding: 15px;
  }
}
@media (min-width: 1024px) {
  .display-m {
    display: none;
  }
  .top-first-view-appendix + .top-first-view {
    margin-bottom: 60px;
  }
  .top-first-view + .top-first-view-appendix {
    margin-bottom: 60px;
  }
}

/*****************************
NEWロゴverフォーム
******************************/
#form-head {
}
#form-head .hgroup {
    color: #432a28;
    line-height: 1.4;
    text-align: center;
}
#form-head .title-lv02 {
    font-family: "Playfair Display", serif;
    font-optical-sizing: auto;
    font-weight: 400;
    font-style: normal;
    display: block;
    margin-block-start: 0px;/*0.83em*/
    margin-block-end: 0px;/*0.83em*/
    margin-inline-start: 0px;
    margin-inline-end: 0px;
    unicode-bidi: isolate;

    font-size: min(5.625vw, 72px);
}
#form-head .title-sub {
    font-family: "Shippori Mincho B1", serif;
    font-weight: 600;
    
    font-size: min(1.328vw, 17px);
}
#form-head .logo-new {
    text-align: center;
}

@media screen and (min-width: 760px) {
        #form-head .title-lv02 {
            font-size: min(5.625vw, 72px);
        }
        #form-head .title-sub {
            font-size: min(1.328vw, 17px);
            font-weight: 600;
        }
}



/*
        <div id="form-head">
                <div class="hgroup">
                <h2 class="title-lv02">Contact </h2>
                <p class="title-sub">無料カウンセリング・体験のご予約 </p>
                </div>
        </div>
/*****************************
hain ピラティス用フォーム
******************************/
.header_hain {
  border-bottom: 1px solid #ccc;
}
.header_hain .header__logo-area_hain {
  border-top: none;
  padding: 5px 5px;
}
@media only screen and (min-width: 1024px) {
.header_hain .header__logo-area_hain {
      padding: 10px 10px;
  }
}
.header_hain .header__logo-area_hain img {
  width: auto;
  height: 80px;
 }

.page-header_hain {
  margin-bottom: 20px
}
@media only screen and (min-width: 1024px) {
  .page-header_hain {
    margin-bottom: 30px;
  }
}
@media only screen and (min-width: 1024px) {
 .page-header_hain > .container,
 .page-header_hain > .container-full,
 .page-header_hain > .container-1100,
 .page-header_hain > .container-1000,
 .page-header_hain > .container-800,
 .page-header_hain > .container-640 {
    padding: 0 50px;
  }
}
.page-header_hain .tit_hain {
  margin-top: 10px;
  font-size: 22px;
  line-height: 2;
  font-weight: 700;
  text-align: center;
  margin: 30px auto;
  color: #888;
}
/*
#hain .page-header_hain + .section {
  margin-top: -40px
}
@media only screen and (min-width: 1024px) {
  #hain .page-header_hain + .section {
    margin-top: -80px
  }
}
*/




