@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;700&family=Noto+Serif+JP:wght@400;700&family=Roboto:wght@400;700&display=swap");
*, :after, :before {
  border: 0;
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  vertical-align: baseline
}
html {
  -webkit-text-size-adjust: 100%;
  -webkit-tap-highlight-color: transparent
}
a {
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0)
}
img, svg {
  vertical-align: bottom
}
table {
  border-collapse: collapse;
  border-spacing: 0
}
caption {
  text-align: left
}
td, th {
  vertical-align: top
}
th {
  text-align: left
}
html {
  font-size: 2.6666666667vw;
  height: 100%
}
body {
  background-color: #fff;
  font-family: Noto Sans JP, sans-serif;
  font-size: 1.4rem;
  height: 100%;
  line-height: 1.8
}
body, h1, h2, h3, h4, h5, h6 {
  color: #333;
  letter-spacing: 0
}
h1, h2, h3, h4, h5, h6 {
  font-family: "Noto Serif JP", serif;
  font-size: inherit;
  font-weight: 700;
  line-height: 1.3
}
li, ul {
  list-style-type: none
}
strong {
  font-weight: 700
}
img {
  height: auto;
  width: 100%
}
a, a.js-hover {
  color: #333
}
.g-head {
  display: flex;
  justify-content: center
}
.g-head__button {
  display: block;
  padding-bottom: 1rem;
  padding-top: 1rem;
  width: 8rem
}
.g-main {
  margin-left: auto;
  margin-right: auto;
  max-width: 750px
}
.g-notes {
  font-size: 1.2rem;
  margin-top: 1rem
}
.g-notes li {
  padding-left: 1em;
  text-indent: -1em
}
.g-notes li:not(:first-child) {
  margin-top: .5rem
}
.g-notes_wide {
  font-size: 1.2rem;
  margin-top: 1rem
}
.g-notes_wide li {
  padding-left: 1em;
  text-indent: -1em
}
.g-notes_wide li:not(:first-child) {
  margin-top: 1rem
}
.g-copy-right {
  background-color: #333;
  color: #fff;
  font-size: 1.2rem;
  padding-bottom: 1rem;
  padding-top: 1rem;
  text-align: center
}
.g-img100 {
  width: 100%
}
br.is-down-lg, br.is-down-sm, br.is-down-xl, br.is-down-xs, br.is-lg, br.is-md, br.is-sm, br.is-up-lg, br.is-up-sm, br.is-up-xl, br.is-up-xxl, br.is-xl, br.is-xs, br.is-xxl {
  display: none
}
.d-flex {
  display: flex
}
.d-flex.flex-row {
  flex-direction: row
}
.d-flex.flex-row-reverse {
  flex-direction: row-reverse
}
.d-flex.flex-column {
  flex-direction: column
}
.d-flex.flex-column-reverse {
  flex-direction: column-reverse
}
.d-flex.justify-content-start {
  justify-content: flex-start
}
.d-flex.justify-content-end {
  justify-content: flex-end
}
.d-flex.justify-content-center {
  justify-content: center
}
.d-flex.justify-content-between {
  justify-content: space-between
}
.d-flex.justify-content-around {
  justify-content: space-around
}
.d-flex.justify-content-evenly {
  justify-content: space-evenly
}
.d-flex.align-items-start {
  align-items: flex-start
}
.d-flex.align-items-end {
  align-items: flex-end
}
.d-flex.align-items-center {
  align-items: center
}
.d-flex.align-items-baseline {
  align-items: baseline
}
.d-flex.align-items-stretch {
  align-items: stretch
}
.d-flex > .align-self-start {
  align-self: flex-start
}
.d-flex > .align-self-end {
  align-self: flex-end
}
.d-flex > .align-self-center {
  align-self: center
}
.d-flex > .align-self-baseline {
  align-self: baseline
}
.d-flex > .align-self-stretch {
  align-self: stretch
}
.d-flex.flex-fill {
  flex-basis: auto;
  flex-grow: 1;
  flex-shrink: 1
}
.d-flex > .flex-shrink-0 {
  flex-shrink: 0
}
.d-flex > .flex-shrink-1 {
  flex-shrink: 1
}
.d-flex > .flex-grow-0 {
  flex-grow: 0
}
.d-flex > .flex-grow-1 {
  flex-grow: 1
}
.d-flex.flex-nowrap {
  flex-wrap: nowrap
}
.d-flex.flex-wrap {
  flex-wrap: wrap
}
.d-flex.align-content-start {
  align-content: flex-start
}
.d-flex.align-content-end {
  align-content: flex-end
}
.d-flex.align-content-between, .d-flex.align-content-center {
  align-content: center
}
.d-flex.align-content-around {
  align-content: space-around
}
.d-flex.align-content-stretch {
  align-content: stretch
}
.overflow-auto {
  overflow: auto
}
.overflow-hidden {
  overflow: hidden
}
.overflow-visible {
  overflow: visible
}
.overflow-scroll {
  overflow: scroll
}
.overflow-scroll-x {
  overflow-x: scroll
}
.overflow-scroll-y {
  overflow-y: scroll
}
.position-static {
  position: static
}
.position-relative {
  position: relative
}
.position-absolute {
  position: absolute
}
.position-fixed {
  position: fixed
}
.position-sticky {
  position: sticky
}
.top-0 {
  top: 0
}
.top-50 {
  top: 50%
}
.top-100 {
  top: 100%
}
.end-0 {
  right: 0
}
.end-50 {
  right: 50%
}
.end-100 {
  right: 100%
}
.bottom-0 {
  bottom: 0
}
.bottom-50 {
  bottom: 50%
}
.bottom-100 {
  bottom: 100%
}
.start-0 {
  left: 0
}
.start-50 {
  left: 50%
}
.start-100 {
  left: 100%
}
.position-all-0 {
  bottom: 0;
  left: 0;
  right: 0;
  top: 0
}
.m-auto {
  margin: auto
}
.mx-auto {
  margin-left: auto;
  margin-right: auto
}

.mt-0 {margin-top: 0 !important;}
.mt-1 {margin-top: 0.5rem;}
.mt-2 {margin-top: 1rem;}
.mt-3 {margin-top: 2rem;}
.mt-4 {margin-top: 3rem;}
.mt-5 {margin-top: 4rem;}
.mt-6 {margin-top: 5rem;}

.mb-0{margin-bottom: 0;}
.mb-1{margin-bottom: 0.5rem;}
.mb-2 {margin-bottom: 1rem;}
.mb-3 {margin-bottom: 2rem;}
.mb-4{margin-bottom: 3rem;}
.mb-5{margin-bottom: 4rem;}
.mb-6{margin-bottom: 5rem;}

.px-2 {
  padding-left: 1rem;
  padding-right: 1rem
}
.px-3 {
  padding-left: 2rem;
  padding-right: 2rem
}
.py-4 {
  padding-bottom: 4rem;
  padding-top: 4rem
}
.pt-2 {
  padding-top: 1rem
}
.text-start {
  text-align: left
}
.text-center {
  text-align: center
}
.text-end {
  text-align: right
}
.line-h_1-4{line-height: 1.4;}
@font-face {
  font-family: swiper-icons;
  font-style: normal;
  font-weight: 400;
  src: url("data:application/font-woff;charset=utf-8;base64, d09GRgABAAAAAAZgABAAAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABGRlRNAAAGRAAAABoAAAAci6qHkUdERUYAAAWgAAAAIwAAACQAYABXR1BPUwAABhQAAAAuAAAANuAY7+xHU1VCAAAFxAAAAFAAAABm2fPczU9TLzIAAAHcAAAASgAAAGBP9V5RY21hcAAAAkQAAACIAAABYt6F0cBjdnQgAAACzAAAAAQAAAAEABEBRGdhc3AAAAWYAAAACAAAAAj//wADZ2x5ZgAAAywAAADMAAAD2MHtryVoZWFkAAABbAAAADAAAAA2E2+eoWhoZWEAAAGcAAAAHwAAACQC9gDzaG10eAAAAigAAAAZAAAArgJkABFsb2NhAAAC0AAAAFoAAABaFQAUGG1heHAAAAG8AAAAHwAAACAAcABAbmFtZQAAA/gAAAE5AAACXvFdBwlwb3N0AAAFNAAAAGIAAACE5s74hXjaY2BkYGAAYpf5Hu/j+W2+MnAzMYDAzaX6QjD6/4//Bxj5GA8AuRwMYGkAPywL13jaY2BkYGA88P8Agx4j+/8fQDYfA1AEBWgDAIB2BOoAeNpjYGRgYNBh4GdgYgABEMnIABJzYNADCQAACWgAsQB42mNgYfzCOIGBlYGB0YcxjYGBwR1Kf2WQZGhhYGBiYGVmgAFGBiQQkOaawtDAoMBQxXjg/wEGPcYDDA4wNUA2CCgwsAAAO4EL6gAAeNpj2M0gyAACqxgGNWBkZ2D4/wMA+xkDdgAAAHjaY2BgYGaAYBkGRgYQiAHyGMF8FgYHIM3DwMHABGQrMOgyWDLEM1T9/w8UBfEMgLzE////P/5//f/V/xv+r4eaAAeMbAxwIUYmIMHEgKYAYjUcsDAwsLKxc3BycfPw8jEQA/gZBASFhEVExcQlJKWkZWTl5BUUlZRVVNXUNTQZBgMAAMR+E+gAEQFEAAAAKgAqACoANAA+AEgAUgBcAGYAcAB6AIQAjgCYAKIArAC2AMAAygDUAN4A6ADyAPwBBgEQARoBJAEuATgBQgFMAVYBYAFqAXQBfgGIAZIBnAGmAbIBzgHsAAB42u2NMQ6CUAyGW568x9AneYYgm4MJbhKFaExIOAVX8ApewSt4Bic4AfeAid3VOBixDxfPYEza5O+Xfi04YADggiUIULCuEJK8VhO4bSvpdnktHI5QCYtdi2sl8ZnXaHlqUrNKzdKcT8cjlq+rwZSvIVczNiezsfnP/uznmfPFBNODM2K7MTQ45YEAZqGP81AmGGcF3iPqOop0r1SPTaTbVkfUe4HXj97wYE+yNwWYxwWu4v1ugWHgo3S1XdZEVqWM7ET0cfnLGxWfkgR42o2PvWrDMBSFj/IHLaF0zKjRgdiVMwScNRAoWUoH78Y2icB/yIY09An6AH2Bdu/UB+yxopYshQiEvnvu0dURgDt8QeC8PDw7Fpji3fEA4z/PEJ6YOB5hKh4dj3EvXhxPqH/SKUY3rJ7srZ4FZnh1PMAtPhwP6fl2PMJMPDgeQ4rY8YT6Gzao0eAEA409DuggmTnFnOcSCiEiLMgxCiTI6Cq5DZUd3Qmp10vO0LaLTd2cjN4fOumlc7lUYbSQcZFkutRG7g6JKZKy0RmdLY680CDnEJ+UMkpFFe1RN7nxdVpXrC4aTtnaurOnYercZg2YVmLN/d/gczfEimrE/fs/bOuq29Zmn8tloORaXgZgGa78yO9/cnXm2BpaGvq25Dv9S4E9+5SIc9PqupJKhYFSSl47+Qcr1mYNAAAAeNptw0cKwkAAAMDZJA8Q7OUJvkLsPfZ6zFVERPy8qHh2YER+3i/BP83vIBLLySsoKimrqKqpa2hp6+jq6RsYGhmbmJqZSy0sraxtbO3sHRydnEMU4uR6yx7JJXveP7WrDycAAAAAAAH//wACeNpjYGRgYOABYhkgZgJCZgZNBkYGLQZtIJsFLMYAAAw3ALgAeNolizEKgDAQBCchRbC2sFER0YD6qVQiBCv/H9ezGI6Z5XBAw8CBK/m5iQQVauVbXLnOrMZv2oLdKFa8Pjuru2hJzGabmOSLzNMzvutpB3N42mNgZGBg4GKQYzBhYMxJLMlj4GBgAYow/P/PAJJhLM6sSoWKfWCAAwDAjgbRAAB42mNgYGBkAIIbCZo5IPrmUn0hGA0AO8EFTQAA")
}
:root {
  --swiper-theme-color: #007aff
}
.swiper {
  list-style: none;
  margin-left: auto;
  margin-right: auto;
  overflow: hidden;
  padding: 0;
  position: relative;
  z-index: 1
}
.swiper-vertical > .swiper-wrapper {
  flex-direction: column
}
.swiper-wrapper {
  box-sizing: content-box;
  display: flex;
  height: 100%;
  position: relative;
  transition-property: transform;
  width: 100%;
  z-index: 1
}
.swiper-android .swiper-slide, .swiper-wrapper {
  transform: translateZ(0)
}
.swiper-pointer-events {
  touch-action: pan-y
}
.swiper-pointer-events.swiper-vertical {
  touch-action: pan-x
}
.swiper-slide {
  flex-shrink: 0;
  height: 100%;
  position: relative;
  transition-property: transform;
  width: 100%
}
.swiper-slide-invisible-blank {
  visibility: hidden
}
.swiper-autoheight, .swiper-autoheight .swiper-slide {
  height: auto
}
.swiper-autoheight .swiper-wrapper {
  align-items: flex-start;
  transition-property: transform, height
}
.swiper-backface-hidden .swiper-slide {
  backface-visibility: hidden;
  transform: translateZ(0)
}
.swiper-3d, .swiper-3d.swiper-css-mode .swiper-wrapper {
  perspective: 1200px
}
.swiper-3d .swiper-cube-shadow, .swiper-3d .swiper-slide, .swiper-3d .swiper-slide-shadow, .swiper-3d .swiper-slide-shadow-bottom, .swiper-3d .swiper-slide-shadow-left, .swiper-3d .swiper-slide-shadow-right, .swiper-3d .swiper-slide-shadow-top, .swiper-3d .swiper-wrapper {
  transform-style: preserve-3d
}
.swiper-3d .swiper-slide-shadow, .swiper-3d .swiper-slide-shadow-bottom, .swiper-3d .swiper-slide-shadow-left, .swiper-3d .swiper-slide-shadow-right, .swiper-3d .swiper-slide-shadow-top {
  height: 100%;
  left: 0;
  pointer-events: none;
  position: absolute;
  top: 0;
  width: 100%;
  z-index: 10
}
.swiper-3d .swiper-slide-shadow {
  background: rgba(0, 0, 0, .15)
}
.swiper-3d .swiper-slide-shadow-left {
  background-image: linear-gradient(270deg, rgba(0, 0, 0, .5), transparent)
}
.swiper-3d .swiper-slide-shadow-right {
  background-image: linear-gradient(90deg, rgba(0, 0, 0, .5), transparent)
}
.swiper-3d .swiper-slide-shadow-top {
  background-image: linear-gradient(0deg, rgba(0, 0, 0, .5), transparent)
}
.swiper-3d .swiper-slide-shadow-bottom {
  background-image: linear-gradient(180deg, rgba(0, 0, 0, .5), transparent)
}
.swiper-css-mode > .swiper-wrapper {
  -ms-overflow-style: none;
  overflow: auto;
  scrollbar-width: none
}
.swiper-css-mode > .swiper-wrapper::-webkit-scrollbar {
  display: none
}
.swiper-css-mode > .swiper-wrapper > .swiper-slide {
  scroll-snap-align: start start
}
.swiper-horizontal.swiper-css-mode > .swiper-wrapper {
  -ms-scroll-snap-type: x mandatory;
  scroll-snap-type: x mandatory
}
.swiper-vertical.swiper-css-mode > .swiper-wrapper {
  -ms-scroll-snap-type: y mandatory;
  scroll-snap-type: y mandatory
}
.swiper-centered > .swiper-wrapper:before {
  content: "";
  flex-shrink: 0;
  order: 9999
}
.swiper-centered.swiper-horizontal > .swiper-wrapper > .swiper-slide:first-child {
  -webkit-margin-start: var(--swiper-centered-offset-before);
  margin-inline-start: var(--swiper-centered-offset-before)
}
.swiper-centered.swiper-horizontal > .swiper-wrapper:before {
  height: 100%;
  min-height: 1px;
  width: var(--swiper-centered-offset-after)
}
.swiper-centered.swiper-vertical > .swiper-wrapper > .swiper-slide:first-child {
  -webkit-margin-before: var(--swiper-centered-offset-before);
  margin-block-start: var(--swiper-centered-offset-before)
}
.swiper-centered.swiper-vertical > .swiper-wrapper:before {
  height: var(--swiper-centered-offset-after);
  min-width: 1px;
  width: 100%
}
.swiper-centered > .swiper-wrapper > .swiper-slide {
  scroll-snap-align: center center
}
.swiper-virtual .swiper-slide {
  -webkit-backface-visibility: hidden;
  transform: translateZ(0)
}
.swiper-virtual.swiper-css-mode .swiper-wrapper:after {
  content: "";
  left: 0;
  pointer-events: none;
  position: absolute;
  top: 0
}
.swiper-virtual.swiper-css-mode.swiper-horizontal .swiper-wrapper:after {
  height: 1px;
  width: var(--swiper-virtual-size)
}
.swiper-virtual.swiper-css-mode.swiper-vertical .swiper-wrapper:after {
  height: var(--swiper-virtual-size);
  width: 1px
}
:root {
  --swiper-navigation-size: 44px
}
.swiper-button-next, .swiper-button-prev {
  align-items: center;
  color: var(--swiper-navigation-color, var(--swiper-theme-color));
  cursor: pointer;
  display: flex;
  height: var(--swiper-navigation-size);
  justify-content: center;
  margin-top: calc(0px - var(--swiper-navigation-size)/2);
  position: absolute;
  top: 50%;
  width: calc(var(--swiper-navigation-size)/44*27);
  z-index: 10
}
.swiper-button-next.swiper-button-disabled, .swiper-button-prev.swiper-button-disabled {
  cursor: auto;
  opacity: .35;
  pointer-events: none
}
.swiper-button-next.swiper-button-hidden, .swiper-button-prev.swiper-button-hidden {
  cursor: auto;
  opacity: 0;
  pointer-events: none
}
.swiper-navigation-disabled .swiper-button-next, .swiper-navigation-disabled .swiper-button-prev {
  display: none !important
}
.swiper-button-next:after, .swiper-button-prev:after {
  font-family: swiper-icons;
  font-size: var(--swiper-navigation-size);
  font-variant: normal;
  letter-spacing: 0;
  line-height: 1;
  text-transform: none !important
}
.swiper-button-prev, .swiper-rtl .swiper-button-next {
  left: 10px;
  right: auto
}
.swiper-button-prev:after, .swiper-rtl .swiper-button-next:after {
  content: "prev"
}
.swiper-button-next, .swiper-rtl .swiper-button-prev {
  left: auto;
  right: 10px
}
.swiper-button-next:after, .swiper-rtl .swiper-button-prev:after {
  content: "next"
}
.swiper-button-lock {
  display: none
}
.swiper-pagination {
  position: absolute;
  text-align: center;
  transform: translateZ(0);
  transition: opacity .3s;
  z-index: 10
}
.swiper-pagination.swiper-pagination-hidden {
  opacity: 0
}
.swiper-pagination-disabled > .swiper-pagination, .swiper-pagination.swiper-pagination-disabled {
  display: none !important
}
.swiper-horizontal > .swiper-pagination-bullets, .swiper-pagination-bullets.swiper-pagination-horizontal, .swiper-pagination-custom, .swiper-pagination-fraction {
  bottom: 10px;
  left: 0;
  width: 100%
}
.swiper-pagination-bullets-dynamic {
  font-size: 0;
  overflow: hidden
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  position: relative;
  transform: scale(.33)
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active, .swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-main {
  transform: scale(1)
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev {
  transform: scale(.66)
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev-prev {
  transform: scale(.33)
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next {
  transform: scale(.66)
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next-next {
  transform: scale(.33)
}
.swiper-pagination-bullet {
  background: var(--swiper-pagination-bullet-inactive-color, #000);
  border-radius: 50%;
  display: inline-block;
  height: var(--swiper-pagination-bullet-height, var(--swiper-pagination-bullet-size, 8px));
  opacity: var(--swiper-pagination-bullet-inactive-opacity, .2);
  width: var(--swiper-pagination-bullet-width, var(--swiper-pagination-bullet-size, 8px))
}
button.swiper-pagination-bullet {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border: none;
  box-shadow: none;
  margin: 0;
  padding: 0
}
.swiper-pagination-clickable .swiper-pagination-bullet {
  cursor: pointer
}
.swiper-pagination-bullet:only-child {
  display: none !important
}
.swiper-pagination-bullet-active {
  background: var(--swiper-pagination-color, var(--swiper-theme-color));
  opacity: var(--swiper-pagination-bullet-opacity, 1)
}
.swiper-pagination-vertical.swiper-pagination-bullets, .swiper-vertical > .swiper-pagination-bullets {
  right: 10px;
  top: 50%;
  transform: translate3d(0, -50%, 0)
}
.swiper-pagination-vertical.swiper-pagination-bullets .swiper-pagination-bullet, .swiper-vertical > .swiper-pagination-bullets .swiper-pagination-bullet {
  display: block;
  margin: var(--swiper-pagination-bullet-vertical-gap, 6px) 0
}
.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic, .swiper-vertical > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
  top: 50%;
  transform: translateY(-50%);
  width: 8px
}
.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet, .swiper-vertical > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  display: inline-block;
  transition: transform .2s, top .2s
}
.swiper-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet, .swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet {
  margin: 0 var(--swiper-pagination-bullet-horizontal-gap, 4px)
}
.swiper-horizontal > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic, .swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
  left: 50%;
  transform: translateX(-50%);
  white-space: nowrap
}
.swiper-horizontal > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet, .swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  transition: transform .2s, left .2s
}
.swiper-horizontal.swiper-rtl > .swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  transition: transform .2s, right .2s
}
.swiper-pagination-progressbar {
  background: rgba(0, 0, 0, .25);
  position: absolute
}
.swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
  background: var(--swiper-pagination-color, var(--swiper-theme-color));
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  transform: scale(0);
  transform-origin: left top;
  width: 100%
}
.swiper-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
  transform-origin: right top
}
.swiper-horizontal > .swiper-pagination-progressbar, .swiper-pagination-progressbar.swiper-pagination-horizontal, .swiper-pagination-progressbar.swiper-pagination-vertical.swiper-pagination-progressbar-opposite, .swiper-vertical > .swiper-pagination-progressbar.swiper-pagination-progressbar-opposite {
  height: 4px;
  left: 0;
  top: 0;
  width: 100%
}
.swiper-horizontal > .swiper-pagination-progressbar.swiper-pagination-progressbar-opposite, .swiper-pagination-progressbar.swiper-pagination-horizontal.swiper-pagination-progressbar-opposite, .swiper-pagination-progressbar.swiper-pagination-vertical, .swiper-vertical > .swiper-pagination-progressbar {
  height: 100%;
  left: 0;
  top: 0;
  width: 4px
}
.swiper-pagination-lock {
  display: none
}
.swiper-scrollbar {
  background: rgba(0, 0, 0, .1);
  border-radius: 10px;
  position: relative;
  -ms-touch-action: none
}
.swiper-scrollbar-disabled > .swiper-scrollbar, .swiper-scrollbar.swiper-scrollbar-disabled {
  display: none !important
}
.swiper-horizontal > .swiper-scrollbar, .swiper-scrollbar.swiper-scrollbar-horizontal {
  bottom: 3px;
  height: 5px;
  left: 1%;
  position: absolute;
  width: 98%;
  z-index: 50
}
.swiper-scrollbar.swiper-scrollbar-vertical, .swiper-vertical > .swiper-scrollbar {
  height: 98%;
  position: absolute;
  right: 3px;
  top: 1%;
  width: 5px;
  z-index: 50
}
.swiper-scrollbar-drag {
  background: rgba(0, 0, 0, .5);
  border-radius: 10px;
  height: 100%;
  left: 0;
  position: relative;
  top: 0;
  width: 100%
}
.swiper-scrollbar-cursor-drag {
  cursor: move
}
.swiper-scrollbar-lock {
  display: none
}
.swiper-zoom-container {
  align-items: center;
  display: flex;
  height: 100%;
  justify-content: center;
  text-align: center;
  width: 100%
}
.swiper-zoom-container > canvas, .swiper-zoom-container > img, .swiper-zoom-container > svg {
  max-height: 100%;
  max-width: 100%;
  -o-object-fit: contain;
  object-fit: contain
}
.swiper-slide-zoomed {
  cursor: move
}
.swiper-lazy-preloader {
  border: 4px solid var(--swiper-preloader-color, var(--swiper-theme-color));
  border-radius: 50%;
  border-top: 4px solid transparent;
  box-sizing: border-box;
  height: 42px;
  left: 50%;
  margin-left: -21px;
  margin-top: -21px;
  position: absolute;
  top: 50%;
  transform-origin: 50%;
  width: 42px;
  z-index: 10
}
.swiper-watch-progress .swiper-slide-visible .swiper-lazy-preloader, .swiper:not(.swiper-watch-progress) .swiper-lazy-preloader {
  -webkit-animation: swiper-preloader-spin 1s linear infinite;
  animation: swiper-preloader-spin 1s linear infinite
}
.swiper-lazy-preloader-white {
  --swiper-preloader-color: #fff
}
.swiper-lazy-preloader-black {
  --swiper-preloader-color: #000
}
@-webkit-keyframes swiper-preloader-spin {
  0% {
    transform: rotate(0deg)
  }
  to {
    transform: rotate(1turn)
  }
}
@keyframes swiper-preloader-spin {
  0% {
    transform: rotate(0deg)
  }
  to {
    transform: rotate(1turn)
  }
}
.swiper .swiper-notification {
  left: 0;
  opacity: 0;
  pointer-events: none;
  position: absolute;
  top: 0;
  z-index: -1000
}
.swiper-free-mode > .swiper-wrapper {
  margin: 0 auto;
  transition-timing-function: ease-out
}
.swiper-grid > .swiper-wrapper {
  flex-wrap: wrap
}
.swiper-grid-column > .swiper-wrapper {
  flex-direction: column;
  flex-wrap: wrap
}
.swiper-fade.swiper-free-mode .swiper-slide {
  transition-timing-function: ease-out
}
.swiper-fade .swiper-slide {
  pointer-events: none;
  transition-property: opacity
}
.swiper-fade .swiper-slide .swiper-slide {
  pointer-events: none
}
.swiper-fade .swiper-slide-active, .swiper-fade .swiper-slide-active .swiper-slide-active {
  pointer-events: auto
}
.swiper-cube {
  overflow: visible
}
.swiper-cube .swiper-slide {
  backface-visibility: hidden;
  height: 100%;
  pointer-events: none;
  transform-origin: 0 0;
  visibility: hidden;
  width: 100%;
  z-index: 1
}
.swiper-cube .swiper-slide .swiper-slide {
  pointer-events: none
}
.swiper-cube.swiper-rtl .swiper-slide {
  transform-origin: 100% 0
}
.swiper-cube .swiper-slide-active, .swiper-cube .swiper-slide-active .swiper-slide-active {
  pointer-events: auto
}
.swiper-cube .swiper-slide-active, .swiper-cube .swiper-slide-next, .swiper-cube .swiper-slide-next + .swiper-slide, .swiper-cube .swiper-slide-prev {
  pointer-events: auto;
  visibility: visible
}
.swiper-cube .swiper-slide-shadow-bottom, .swiper-cube .swiper-slide-shadow-left, .swiper-cube .swiper-slide-shadow-right, .swiper-cube .swiper-slide-shadow-top {
  backface-visibility: hidden;
  z-index: 0
}
.swiper-cube .swiper-cube-shadow {
  bottom: 0;
  height: 100%;
  left: 0;
  opacity: .6;
  position: absolute;
  width: 100%;
  z-index: 0
}
.swiper-cube .swiper-cube-shadow:before {
  background: #000;
  bottom: 0;
  content: "";
  -webkit-filter: blur(50px);
  filter: blur(50px);
  left: 0;
  position: absolute;
  right: 0;
  top: 0
}
.swiper-flip {
  overflow: visible
}
.swiper-flip .swiper-slide {
  backface-visibility: hidden;
  pointer-events: none;
  z-index: 1
}
.swiper-flip .swiper-slide .swiper-slide {
  pointer-events: none
}
.swiper-flip .swiper-slide-active, .swiper-flip .swiper-slide-active .swiper-slide-active {
  pointer-events: auto
}
.swiper-flip .swiper-slide-shadow-bottom, .swiper-flip .swiper-slide-shadow-left, .swiper-flip .swiper-slide-shadow-right, .swiper-flip .swiper-slide-shadow-top {
  backface-visibility: hidden;
  z-index: 0
}
.swiper-creative .swiper-slide {
  backface-visibility: hidden;
  overflow: hidden;
  transition-property: transform, opacity, height
}
.swiper-cards {
  overflow: visible
}
.swiper-cards .swiper-slide {
  backface-visibility: hidden;
  overflow: hidden;
  transform-origin: center bottom
}
.swiper {
  padding-bottom: 3.5rem;
  width: 100%
}
.swiper .swiper-pagination-bullet {
  background-color: #8e8e8e
}
.swiper .swiper-pagination-bullet-active {
  background-color: #999
}

.front .btn {
  align-items: center;
  border-style: solid;
  border-width: .1rem;
  display: flex;
  font-weight: 700;
  justify-content: center;
  padding-bottom: 1rem;
  padding-top: 1rem;
  position: relative;
  text-align: center;
  text-decoration: none;
  transition-duration: .3s;
  transition-property: letter-spacing
}
.front .btn_01 {
  background-image: linear-gradient(#86640f, #b8a22b);
  border-color: #86640f;
  border-radius: 20px;
  color: #fff;
  font-family: "Noto Serif JP", serif;
  font-size: 2rem;
  width: 35.5rem
}
@media screen and (max-width: 480px) {
    .front .btn_01 {
        border-radius: 10px;
}
}
.front .btn_01 .arrow {
  height: 2.6rem;
  width: 2.6rem
}
.front .btn_02 {
  color: #ad955f;
  font-size: 1.6rem;
  width: 33.5rem
}
.front .btn_02 .arrow {
  bottom: 0;
  height: 2.6rem;
  margin-bottom: auto;
  margin-top: auto;
  position: absolute;
  right: 1rem;
  top: 0;
  width: 2.6rem
}
.front .btn_02 .arrow img {
  display: block
}
.front .btn .icon-toggle {
  bottom: 0;
  height: 2.1rem;
  margin-bottom: auto;
  margin-top: auto;
  position: absolute;
  right: 1rem;
  top: 0;
  width: 2.1rem
}
.front .btn .icon-toggle:after, .front .btn .icon-toggle:before {
  background-color: #ad955f;
  bottom: 0;
  content: "";
  display: block;
  height: .1rem;
  left: 0;
  margin: auto;
  position: absolute;
  right: 0;
  top: 0;
  width: 1.5rem
}
.front .btn .icon-toggle:after {
  transform: rotate(90deg)
}
.front .btn.is-active .icon-toggle {
  transform: rotate(45deg)
}
.front .btn.js-hover {
  letter-spacing: .05em
}
.front .sec {
  margin-top: 6rem
}
.front .sec-head {
  margin-bottom: 5rem;
  overflow-x: hidden;
  overflow-y: visible;
  padding-bottom: 3rem;
  padding-top: 3rem;
  position: relative;
  width: 100%
}
.front .sec-head .deco {
  height: calc(100% - 2rem);
  left: -1rem;
  position: absolute;
  top: 0;
  width: calc(100% + 2rem)
}
.front .sec-head .deco:after, .front .sec-head .deco:before {
  content: "";
  display: block;
  height: 100%;
  left: 0;
  position: absolute;
  top: 1rem;
  width: 100%
}
.front .sec-head .deco:before {
  background-color: #aa202f;
  transform: rotate(-2deg)
}
.front .sec-head .deco:after {
  background-color: #fa2949;
  transform: rotate(2deg)
}
.front .sec-head .deco.c-reverse:before {
  background-color: #ffd0db
}
.front .sec-head .deco.c-reverse:after {
  background-color: #f7f7f7
}
.front .sec-head .sec-title {
  position: relative;
  text-align: center
}
.front .sec-head .sec-title__sub {
  color: #ffffbc;
  display: block;
  font-size: 1.4rem
}
.front .sec-head .sec-title__main {
  color: #fff;
  display: block;
  font-size: 2.4rem
}
.front .sec-head .sec-title__main.c-reverse {
  color: #fa2949
}
.front .sec-head .sec-title__main.f-large {
  font-size: 2.8rem
}
.front .sec-head .sec-title__main.f-small {
  font-size: 2.2rem
}
.front .sec-head .sec-title__main .f-xlarge {
  font-size: 3.2rem;
  margin-right: .2rem
}
.front .sec-head_min .sec-title {
  position: relative;
  text-align: center
}
.front .sec-head_min .sec-title:after {
  border-bottom: .1rem solid #333;
  content: "";
  display: block;
  margin-left: auto;
  margin-right: auto;
  margin-top: 1rem;
  width: 8rem
}
.front .sec-head_min .sec-title__sub {
  display: block;
  font-size: 1.4rem
}
.front .sec-head_min .sec-title__main {
  display: block;
  font-size: 2.4rem
}
.front .sec-head_min .sec-title__main.f-large {
  font-size: 2.8rem
}
.front .sec-head_min .sec-title__main.f-small {
  font-size: 2.2rem
}
.front .sec-head_min .sec-title__main strong {
  background-image: linear-gradient(transparent 60%, #fff 0);
  display: inline-block;
  padding-left: .5rem;
  padding-right: .5rem
}

.top_counter {
  background-color: #E4004A;
  color: #fff;
  margin-left: auto;
  margin-right: auto;
  padding-bottom: 1rem;
  padding-top: 1rem;
  text-align: center;
  line-height: 1;
  font-family: "Noto Serif JP", serif;
  font-size: 1.7rem;
  font-weight: 700;
}

.top_counter .num-block {
  font-size: 2.4rem;
  line-height: 1.3;
}
.top_counter .num-block strong {
  font-size: 3.2rem;
}
.line-white {
  border-bottom: 2px solid #fff;
  display: inline-block;
  padding-bottom: 10px;
    padding-left: 10px;
    padding-right: 10px;
}

/* ==========================================================================
    mv
    ========================================================================== */
.mv{
  position: relative;
}

/* ==========================================================================
    cv area
    ========================================================================== */
.front .cv_lg {
  color: #380000;
  font-family: "Noto Serif JP", serif;
  font-weight: 700;
  position: relative;
  padding-bottom: 1rem;
  background: linear-gradient(to bottom, #f3e0dc, #f1dad5);
}
.front .cv_lg.is-first .arrow-label.anime-zuruzuru{
  -webkit-animation-name: not_anime;
  animation-name: not_anime;
}
.front .cv_lg:not(.is-first) {
}
.front .cv_lg .lw-h1 {
  color: #fff;
  text-align: center
}
.front .cv_lg .lw-h1__sub {
  display: block;
  font-size: 1.4rem;
  margin-top: 1rem
}
.front .cv_lg .lw-h1__main {
  display: block;
  font-size: 2rem
}
.front .cv_lg .lw-h1__main strong {
  font-size: 2.4rem;
  margin-left: .05rem;
  margin-right: .05rem
}
.front .cv_lg .lw-h1__main .time {
  font-size: 2rem;
  margin-left: .5rem
}
.front .cv_lg .lw-h1__main .time span {
  font-size: 1.4rem
}
.front .cv_lg__obi {
  font-size: 1.8rem;
  padding-top: 1.5rem;
  text-align: center
}
.front .cv_lg .block-01 {
  align-items: center;
  display: flex;
  justify-content: center;
  margin-top: 2rem
}
.front .cv_lg .block-01 .kigen {
  align-items: center;
  border: .1rem solid #380000;
  border-radius: 3rem;
  display: flex;
  font-size: 1.6rem;
  height: 6rem;
  justify-content: center;
  line-height: 1.3;
  margin-left: 2rem;
  text-align: center;
  width: 6rem
}
.front .cv_lg .block-01 .kigen small {
  font-size: 1.4rem
}
.front .cv_lg .block-01 .terms {
  font-size: 1.4rem;
  line-height: 1.3
}
.front .cv_lg .block-01 .terms__title {
  position: relative
}
.front .cv_lg .block-01 .terms__title:before {
  border-bottom: .1rem solid #fff;
  bottom: 0;
  content: "";
  display: block;
  height: 0;
  margin-bottom: auto;
  margin-top: auto;
  position: absolute;
  top: 0;
  width: 100%
}
.front .cv_lg .block-01 .terms__title strong {
  background-color: #031548;
  color: #ffffbc;
  display: block;
  font-size: 1.6rem;
  margin-left: auto;
  margin-right: auto;
  position: relative;
  text-align: center;
  width: 12rem
}
.front .cv_lg .block-02 {
  align-items: center;
  display: flex;
  justify-content: center;
  margin-top: 1rem
}
.front .cv_lg .block-02 .arrow-label {
  color: #aa202f;
  font-size: 2.8rem;
  position: relative
}
.front .cv_lg .block-02 .arrow-label span {
  background-color: #380000;
  color: #fff;
  padding-left: .5rem;
  padding-right: .5rem
}
.front .cv_lg .block-02 .arrow-label:after {
  border-color: transparent transparent transparent #380000;
  border-style: solid;
  border-width: 3rem 0 3rem 2rem;
  content: "";
  display: block;
  height: 0;
  position: absolute;
  right: -2rem;
  top: -.5rem;
  width: 0
}
.front .cv_lg .block-02 .price {
  color: #E4004A;
  font-size: 5.2rem;
  line-height: 1.3;
  margin-left: 3rem
}
.front .cv_lg .block-02 .price-credit {
  color: #380000;
  display: flex;
  flex-direction: column-reverse;
  font-size: 2rem;
  line-height: 1.3;
  margin-left: .5rem;
  margin-top: 1rem;
  text-align: center
}
.front .cv_lg .block-02 .price-credit small {
  font-size: 1.2rem
}
.front .cv_lg .counter {
  background-color: #E4004A;
  border-radius: .5rem;
  color: #fff;
  margin-left: auto;
  margin-right: auto;
  margin-top: 2rem;
  padding-bottom: 1rem;
  padding-top: 1rem;
  text-align: center;
  width: 31.5rem
}
.front .cv_lg .counter .num-block {
  font-size: 2.4rem;
  line-height: 1.3
}
.front .cv_lg .counter .num-block strong {
  font-size: 3.2rem
}
.front .cv_lg .lead-block {
  font-family: "Noto Serif JP", serif;
  text-align: center;
  font-size: 1.7rem;
  margin-top: 0.4rem;
  line-height: 1.4;
}
.front .cv_lg .lead-block .fss{
  font-size: 1.5rem;
}
.front .cv_lg .button-block {
  display: flex;
  justify-content: center;
  position: relative
}
.front .cv_lg .notes-block {
  font-size: 1.2rem;
  text-align: left;
  margin-top: 1rem;
}
.front .cv_sm {
  background-color: #031548;
  color: #fff;
  font-family: "Noto Serif JP", serif;
  font-weight: 700;
  margin-top: 6rem;
  padding-bottom: 2rem;
  padding-top: 2rem
}
.front .cv_sm .lw-h-block1 {
  margin-bottom: 2rem
}
.front .cv_sm .lw-h1 {
  color: #fff;
  font-size: 2.2rem;
  line-height: 1.8;
  text-align: center
}
.front .cv_sm .button-block {
  display: flex;
  justify-content: center;
  position: relative
}
.front .cv_sm .button-block .button-attention {
  align-items: center;
  background-color: #fff;
  border-radius: .5rem;
  color: #aa202f;
  display: flex;
  font-size: 1.4rem;
  height: 3rem;
  line-height: 1.3;
  padding-left: 2rem;
  padding-right: 2rem;
  position: absolute;
  top: -3.5rem
}
.front .cv_sm .button-block .button-attention:after {
  border-color: #fff transparent transparent;
  border-style: solid;
  border-width: 1rem 1rem 0;
  bottom: -1rem;
  content: "";
  display: block;
  height: 0;
  left: 0;
  margin-left: auto;
  margin-right: auto;
  position: absolute;
  right: 0;
  width: 0
}

/*h1__main*/
.front .cv_lg .lw-h1__main{
  font-size: 2rem;
}
.front .cv_lg .lw-h1__main strong{
  font-size: 2rem;
}

/*lw-h1__sub*/
.front .cv_lg .lw-h1__sub{
  font-size: 2rem;
}

/*lw-h-block1*/
/*block-01*/
.front .cv_lg .block-01{
  margin-top: 0;
}
.front .cv_lg .block-01 .kigen{
  width: 7rem;
  height: 7rem;
  border-radius: 50%;
  font-size: 1.6rem;
  margin-right: 0.6rem;
}
.front .cv_lg .block-01 .terms{
  text-align: center;
}
.front .cv_lg .block-01 .terms strong{
  font-size: 100%;
  color: #ffffbc;
}
/*block-02*/
.front .cv_lg .block-02{
  margin-top: 0;
}
.front .cv_lg .block-02 .arrow-label{
  font-size: 1.8rem;
}
.front .cv_lg .block-02 .arrow-label span{
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
}
.front .cv_lg .block-02 .arrow-label:after{
  border-width: 2.5rem 0 2.5rem 2rem;
  top: -1.3rem;
}
.front .cv_lg .block-02 .price{
  font-size: 4.5rem;
}
/*counter*/
.front .cv_lg .counter{
  line-height: 1;
  margin-top: 0;
    margin-bottom: 2rem;
}
.front .cv_lg .counter .num-block{
  line-height: 1;
}
.front .cv_lg .counter .num-block strong{
  font-size: 3rem;
}

/*cv_lg_logo*/
.cv_lg_logo{
  max-width: 30.5rem;
  margin-left: auto;
  margin-right: auto;
  padding-top: 0.2rem;
  padding-bottom: 2.2rem;
  position: relative;
}
.cv_lg_logo::after{
  content: "";
  display: block;
  position: absolute;
  left: 0;
  right: 0;
  bottom: 1rem;
  width: 100%;
  height: 0.3rem;
  background: linear-gradient(to right, #E5003C, #FF6367);
  opacity: 0.7;
}

/* ==========================================================================
    commitment / 3つのこだわり
    ========================================================================== */
.front .commitment .slide-image {
  margin-bottom: 1rem;
  position: relative
}
.front .commitment .slide-image .obi {
  align-items: center;
  background-color: rgba(0, 0, 0, .85);
  display: flex;
  width: 100%
}
.front .commitment .slide-image .obi__num {
  background-color: #000;
  color: #d8c491;
  font-family: "Noto Serif JP", serif;
  font-size: 2.2rem;
  text-align: center;
  width: 6.6rem
}
.front .commitment .slide-image .obi__title {
  color: #fff;
  flex-grow: 1;
  font-size: 1.8rem;
  padding-bottom: .5rem;
  padding-top: .5rem;
  text-align: center
}

/* ==========================================================================
    faq / FAQ
    ========================================================================== */
.front .faq .question {
  align-items: center;
  display: flex;
  font-size: 1.6rem;
  margin-top: 4rem;
  padding-right: 3rem;
  position: relative
}
.front .faq .question .icon-q {
  color: #ad955f;
  font-family: "Noto Serif JP", serif;
  font-size: 2.4rem;
  font-weight: 700;
  line-height: 1;
  margin-right: 1.5rem
}
.front .faq .question .icon-circle {
  border: .1rem solid #ebebeb;
  border-radius: 1.05rem;
  bottom: 0;
  height: 2.1rem;
  margin-bottom: auto;
  margin-top: auto;
  position: absolute;
  right: 0;
  top: 0;
  width: 2.1rem
}
.front .faq .question .icon-circle:after, .front .faq .question .icon-circle:before {
  background-color: #8e8e8e;
  bottom: 0;
  content: "";
  display: block;
  height: .1rem;
  left: 0;
  margin: auto;
  position: absolute;
  right: 0;
  top: 0;
  width: 1.1rem
}
.front .faq .question .icon-circle:after {
  transform: rotate(90deg)
}
.front .faq .question.is-active .icon-circle:after {
  transform: rotate(0)
}
.front .faq .answer {
  background-color: #f7f7f7;
  border: .1rem solid #ebebeb;
  margin-top: 2rem;
  padding: 1.5rem
}
.front .faq .answer:not(.is-active) {
  display: none
}
.front .faq .question {
  align-items: center;
  display: flex;
  font-size: 1.6rem;
  margin-top: 4rem;
  padding-right: 3rem;
  position: relative
}
.front .faq .question .icon-q {
  color: #b41b1b;
  font-family: "Noto Serif JP", serif !important;
  font-size: 2.4rem;
  font-weight: 700;
  line-height: 1;
  margin-right: 1.5rem
}
.front .faq .question .icon-circle {
  border: .1rem solid #ebebeb;
  border-radius: 1.05rem;
  bottom: 0;
  height: 2.1rem;
  margin-bottom: auto;
  margin-top: auto;
  position: absolute;
  right: 0;
  top: 0;
  width: 2.1rem
}
.front .faq .question .icon-circle:after, .front .faq .question .icon-circle:before {
  background-color: #8e8e8e;
  bottom: 0;
  content: "";
  display: block;
  height: .1rem;
  left: 0;
  margin: auto;
  position: absolute;
  right: 0;
  top: 0;
  width: 1.1rem
}
.front .faq .question .icon-circle:after {
  transform: rotate(90deg)
}
.front .faq .question.is-active .icon-circle:after {
  transform: rotate(0)
}
.front .faq .answer {
  background-color: #f7f7f7;
  border: .1rem solid #ebebeb;
  margin-top: 2rem;
  padding: 1.5rem
}
.front .faq .answer:not(.is-active) {
  display: none
}

/* ==========================================================================
    about / footer
    ========================================================================== */
.front .about .lw-h-block1 {
  border-left: .5rem solid #E4004A;
  border-right: .5rem solid #E4004A;
  margin-bottom: 2rem;
  margin-top: 4rem;
  padding-bottom: 1rem;
  padding-top: 1rem;
}
.front .about .lw-h1 {
  font-size: 1.8rem;
  text-align: center
}
.front .about .lw-h-block2 {
  margin-bottom: 1rem;
  margin-top: 2rem
}
.front .about .lw-h2 {
  align-items: center;
  color: #ad955f;
  display: flex;
  font-size: 1.8rem;
  justify-content: center;
  text-align: center;
  width: 100%
}
.front .about .lw-h2 .num {
  display: inline-block;
  font-size: 2.6rem;
  margin-left: .5rem;
  padding-bottom: .4rem
}

/* ==========================================================================
    footer
    ========================================================================== */
.front .attention {
  background-color: #f7f7f7;
  margin-top: 12rem
}

/* ==========================================================================
    anime
    ========================================================================== */
@-webkit-keyframes guruguru {
  0% {
    transform: rotate(0deg)
  }
  to {
    transform: rotate(1turn)
  }
}
@keyframes guruguru {
  0% {
    transform: rotate(0deg)
  }
  to {
    transform: rotate(1turn)
  }
}
.anime-guruguru {
  -webkit-animation-duration: 8s;
  animation-duration: 8s;
  -webkit-animation-iteration-count: infinite;
  animation-iteration-count: infinite;
  -webkit-animation-name: guruguru;
  animation-name: guruguru;
  -webkit-animation-timing-function: linear;
  animation-timing-function: linear
}
@-webkit-keyframes zomezome {
  0% {
    transform: scale(1)
  }
  25% {
    transform: scale(.9)
  }
  50% {
    transform: scale(1)
  }
  75% {
    transform: scale(1.2)
  }
  to {
    transform: scale(1)
  }
}
@keyframes zomezome {
  0% {
    transform: scale(1)
  }
  25% {
    transform: scale(.9)
  }
  50% {
    transform: scale(1)
  }
  75% {
    transform: scale(1.2)
  }
  to {
    transform: scale(1)
  }
}
.anime-zomezome {
  -webkit-animation-duration: 1.2s;
  animation-duration: 1.2s;
  -webkit-animation-iteration-count: infinite;
  animation-iteration-count: infinite;
  -webkit-animation-name: zomezome;
  animation-name: zomezome;
  -webkit-animation-timing-function: linear;
  animation-timing-function: linear
}
@-webkit-keyframes zuruzuru {
  0% {
    transform: translateX(0)
  }
  25% {
    transform: translateX(-.2rem)
  }
  50% {
    transform: translateX(0)
  }
  75% {
    transform: translateX(.2rem)
  }
  to {
    transform: translateX(0)
  }
}
@keyframes zuruzuru {
  0% {
    transform: translateX(0)
  }
  25% {
    transform: translateX(-.2rem)
  }
  50% {
    transform: translateX(0)
  }
  75% {
    transform: translateX(.2rem)
  }
  to {
    transform: translateX(0)
  }
}
.anime-zuruzuru {
  -webkit-animation-duration: 1.2s;
  animation-duration: 1.2s;
  -webkit-animation-iteration-count: infinite;
  animation-iteration-count: infinite;
  -webkit-animation-name: zuruzuru;
  animation-name: zuruzuru;
  -webkit-animation-timing-function: linear;
  animation-timing-function: linear
}
@-webkit-keyframes dokudoku {
  0% {
    transform: scale(1)
  }
  50% {
    transform: scale(1.05)
  }
  to {
    transform: scale(1)
  }
}
@keyframes dokudoku {
  0% {
    transform: scale(1)
  }
  50% {
    transform: scale(1.05)
  }
  to {
    transform: scale(1)
  }
}
.anime-dokudoku {
  -webkit-animation-duration: .7s;
  animation-duration: .7s;
  -webkit-animation-iteration-count: infinite;
  animation-iteration-count: infinite;
  -webkit-animation-name: dokudoku;
  animation-name: dokudoku;
  -webkit-animation-timing-function: ease-in-out;
  animation-timing-function: ease-in-out
}
.js-anime_active .delay-1 {
  transition-delay: .3s
}
.js-anime_active .delay-2 {
  transition-delay: .6s
}
.js-anime_active .delay-3 {
  transition-delay: .9s
}
.js-anime_active .delay-4 {
  transition-delay: 1.2s
}
.js-anime_active .delay-5 {
  transition-delay: 1.5s
}
.js-anime_active .delay-6 {
  transition-delay: 1.8s
}

/* ==========================================================================
    etc
    ========================================================================== */
@media (min-width:750px) {
  html {
    font-size: 20px
  }
  br.is-sm, br.is-up-md {
    display: none
  }
}
@media (max-width:749.98px) {
  br.is-down-md, br.is-md {
    display: none
  }
}

.g-main{
  overflow: hidden;
}

/* ==========================================================================
    inview
    ========================================================================== */
.inview_tgt.tg_vl,
.inview_tgt.tg_vr,
.inview_tgt.tg_vb,
.inview_tgt.tg_vt,
.inview_tgt.vl,
.inview_tgt.vr,
.inview_tgt.vb,
.inview_tgt.vt{
	opacity: 0 !important;
  -webkit-transition: 0.8s;
  -moz-transition: 0.8s;
  -ms-transition: 0.8s;
  -o-transition: 0.8s;
  transition: 0.8s;
}
.inview_tgt.inview-mv.tg_vl,
.inview_tgt.inview-mv.tg_vr,
.inview_tgt.inview-mv.tg_vb,
.inview_tgt.inview-mv.tg_vt,
.inview_tgt.inview-mv.vl,
.inview_tgt.inview-mv.vr,
.inview_tgt.inview-mv.vb,
.inview_tgt.inview-mv.vt{
	opacity: 1 !important;
}

/* ----- left in ----- */
.tg_vl,
.vl{
  -webkit-transform: translate(-60px, 0);
  -moz-transform: translate(-60px, 0);
  -ms-transform: translate(-60px, 0);
  -o-transform: translate(-60px, 0);
  transform: translate(-60px, 0);
}

/* ----- right in ----- */
.tg_vr,
.vr{
  -webkit-transform: translate(60px, 0);
  -moz-transform: translate(60px, 0);
  -ms-transform: translate(60px, 0);
  -o-transform: translate(60px, 0);
  transform: translate(60px, 0);
}
/* ----- bottom in ----- */
.tg_vb,
.vb{
  -webkit-transform: translate(0, 60px);
  -moz-transform: translate(0, 60px);
  -ms-transform: translate(0, 60px);
  -o-transform: translate(0, 60px);
  transform: translate(0, 60px);
}
/* ----- top in ----- */
.tg_vt,
.vt{
  -webkit-transform: translate(0, -60px);
  -moz-transform: translate(0, -60px);
  -ms-transform: translate(0, -60px);
  -o-transform: translate(0, -60px);
  transform: translate(0, -60px);
}

/* ----- in common ----- */
.inview-mv.tg_vl,
.inview-mv.tg_vr,
.inview-mv.tg_vb,
.inview-mv.tg_vt,
.inview-mv.vl,
.inview-mv.vr,
.inview-mv.vb,
.inview-mv.vt{
  -webkit-transform: translate(0, 0);
  -moz-transform: translate(0, 0);
  -ms-transform: translate(0, 0);
  -o-transform: translate(0, 0);
  transform: translate(0, 0);
}


/* ==========================================================================
    9/00まで_EDM
    ========================================================================== */
.btn_01_smallsize{
  font-size: 50%;
  display: block;
  line-height: 1;
}

.btnWrap .btn_01_smallsize{
  left: 3rem;
}
.front .btn_01_add{
  display: block;
  font-size: 2.2rem;
  padding-bottom: 0.6rem;
}
.front .btn_01 .arrow{
  vertical-align: middle;
  margin-right: -1.2rem;
}

.hand_sanmple{
  background-color: #f9f2e8;
  padding: 1em 2rem;
  display: inline-block;
  font-size: 2rem;
  text-align: center;
  font-weight: 700;
  width: 100%;
  margin-bottom: 1.5rem;
  margin-top: 1rem;
}

.front .non-pd .lw-sec{
  padding-top: 0!important;
}

/* copy============================================

/* ============================================
調整
=============================================*/	

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

.fs_14{font-size: 1.4rem;}
.fs_16{font-size: 1.6rem;}

.fss{font-size: 65%;}
.fsl{font-size: 110%;}
.fsll{font-size: 120%;}

.fc_gold{color: #d8c491;}
.fc_ye{color: #FFEC74;}
.fc_pink{color: #E4004A;}

.under_line{
  display: inline;
  padding-bottom: 1px;
  background: -moz-linear-gradient(top, transparent 60%, #ffffbc 0);
  background: -webkit-linear-gradient(top, transparent 60%, #ffffbc 0);
  background: linear-gradient(to bottom, transparent 60%, #ffffbc 0);
}

.display-bl{display: block;}

/* ============================================
img
=============================================*/	
.w-60{
  width: 60%;
  margin-left: auto;
  margin-right: auto;
}
.w-80{
  width: 80%;
  margin-left: auto;
  margin-right: auto;
}

/* ============================================
sup
=============================================*/	
sup{
  position: relative;
  bottom: .6em;
  font-size: 50%;
}


/* ============================================
main_ttlBox
=============================================*/	
.main_ttlBox{
  position: relative;
  font-size: 2rem;
  margin-top: 4rem;
  margin-bottom: 4rem;
  padding: 2rem 0;
}
.main_ttlBox::before,
.main_ttlBox::after{
  content: "";
  display: block;
  position: absolute;
  z-index: 1;
  width: 100%;
  height: 104%;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
}
.main_ttlBox::before{
  background-color: #E4004A;
  -webkit-transform: skewY(3deg);
  -ms-transform: skewY(3deg);
  -o-transform: skewY(3deg);
  transform: skewY(3deg);
  z-index: 2;
}
.main_ttlBox::after{
  left: auto;
  background-color: #FBE3DE;
  -webkit-transform: skewY(-1deg);
  -ms-transform: skewY(-1deg);
  -o-transform: skewY(-1deg);
  transform: skewY(-1deg);
  z-index: 1;
}
.main_ttlBox.main_ttlBox_gold .main_ttlBox_in{
  color: #333;
}
.main_ttlBox.main_ttlBox_gold::before{
  background-color: #d7ccc8;
}
.main_ttlBox.main_ttlBox_gold::after{
  background-color: #f2ecea;
}
.main_ttlBox .inner{
  position: relative;
  z-index: 3;
}
.main_ttlBox .main_ttlBox_in{
  display: block;
  padding: 0.5rem 0rem;
  text-align: center;
  color: #fff;
  position: relative;
}
/*mttl_3dpoint*/
.main_ttlBox .main_ttlBox_in .mttl_3dpoint{
  display: block;
  font-family: Noto Sans JP, sans-serif;
  font-size: 1.2rem;
  font-weight: 700;
  margin-bottom: 1.4rem;
}
.main_ttlBox .main_ttlBox_in .mttl_3dpoint img{
  width: 100%;
  max-width: 16rem;
}
.main_ttlBox .main_ttlBox_in .mttl_3dpoint i{
  font-style: normal;
  position: relative;
  display: inline-block;
  margin-right: 0.5rem;
}
.main_ttlBox .main_ttlBox_in .mttl_3dpoint i::after{
  content: "";
  display: block;
  position: absolute;
  left: 0;
  right: 0;
  bottom: -0.7rem;
  width: 100%;
  height: 0.2rem;
  background-color: #fff;
  opacity: 0.7;
}
/*.main_ttlBox .main_ttlBox_in .mttl_3dpoint span{
  position: relative;
  top: -0.8rem;
}*/
/*mttl_small*/
.main_ttlBox .main_ttlBox_in .mttl_small{
   font-size: 1.5rem; 
  display: inline-block;
}
.main_ttlBox .main_ttlBox_in .mttl_big{
  font-size: 2.7rem;
}
/*mttl_space*/
.main_ttlBox .main_ttlBox_in .mttl_space{
  display: block;
}
/*mttl_rubi*/
.main_ttlBox .main_ttlBox_in .mttl_rubi{
  position: relative;
  display: inline-block;
  margin-top: 0.5rem;
}
.main_ttlBox .main_ttlBox_in .mttl_rubi i{
  position: absolute;
  top: -1.2rem;
  left: 0;
  right: 0;
  width: 100%;
  display: block;
  line-height: 1;
  color: #FFEC74;
}
/*mttl_redtag*/
.main_ttlBox .main_ttlBox_in .mttl_redtag{
  position: absolute;
  top: -2.8rem;
  left: 1rem;
  display: inline-block;
  background-color: #ff1d40;
  padding: 0.5rem 2rem;
  color: #fff;
  font-weight: 700;
  -webkit-transform: rotate(-10deg);
  -ms-transform: rotate(-10deg);
  -o-transform: rotate(-10deg);
  transform: rotate(-10deg);
  box-shadow: 5px 5px 10px rgb(0 0 0 / 10%);
  border-radius: 5px;
}

/*mttl_underline*/
.main_ttlBox .main_ttlBox_in .mttl_underline{
  background: -moz-linear-gradient(top, transparent 87%, #ffe498 0);
  background: -webkit-linear-gradient(top, transparent 87%, #ffe498 0);
  background: linear-gradient(to bottom, transparent 87%, #ffe498 0);
  padding-bottom: 0.4rem;
}

/*inview*/
.main_ttlBox.inview_tgt::before,
.main_ttlBox.inview_tgt::after{
  opacity: 0.5;
  width: 0;
  -webkit-transition: all .6s;
  transition: all .6s;
}
.main_ttlBox.inview_tgt .inner{
  opacity: 0;
  -webkit-transition: all .6s;
  transition: all .6s;
}
.main_ttlBox.inview_tgt.inview-mv::before,
.main_ttlBox.inview_tgt.inview-mv::after{
  opacity: 1;
  width: 100%;
}
.main_ttlBox.inview_tgt.inview-mv .inner{
  opacity: 1;
}

/*main_ttlBox_now*/
.main_ttlBox.main_ttlBox_now .main_ttlBox_in{
  text-align: left;
  padding-left: 1rem;
}
.main_ttlBox.main_ttlBox_now .mttl_3dpoint{
  font-family: "Noto Serif JP", serif;
  font-size: 1.7rem;
  padding-left: 2rem;
  /*margin-bottom: 0;*/
}
.main_ttlBox.main_ttlBox_now .mttl_3dpoint img{
  max-width: 23.4rem;
  margin-right: 0.5rem;
}
.main_ttlBox.main_ttlBox_now .mttl_big{
  font-size: 2.5rem;
}
.main_ttlBox.main_ttlBox_now .mttl_big i{
  font-style: normal;
}
.main_ttlBox.main_ttlBox_now .mttl_big i.big{
  font-size: 3.25rem;
}
.main_ttlBox.main_ttlBox_now .mttl_big i.mini{
  font-size: 1.7rem;
}
.main_ttlBox.main_ttlBox_now .mttl_now{
  font-family: Noto Sans JP, sans-serif;
  color: #E4004A;
  font-size: 1.7rem;
  position: absolute;
  right: -0.2rem;
  top: 43%;
  -webkit-transform: translateY(-50%) rotate(15deg);
  -ms-transform: translateY(-50%) rotate(15deg);
  -o-transform: translateY(-50%) rotate(15deg);
  transform: translateY(-50%) rotate(15deg);
  background-color: #FFEC74;
  border-radius: 50%;
  width: 7rem;
  height: 7rem;
  text-align: center;
  padding-top: 1.3rem;
}

/* ============================================
mid_ttl
=============================================*/	
.mid_ttl{
  border-left: 0.5rem solid #E4004A;
  border-right: 0.5rem solid #E4004A;
  margin-bottom: 2rem;
  margin-top: 3rem;
  padding-bottom: 1rem;
  padding-top: 1rem;
  font-size: 1.8rem;
  text-align: center;
}

/* ============================================
three_technic_info
脱！のっぺり 間延び顔
骨格に着目したケアで顔印象チェンジ！
=============================================*/	
.three_technic_info .inner{
  position: relative;
  z-index: 2;
}
.three_technic_info_box{
  position: relative;
  z-index: 1;
}
.three_technic_info .three_technic_info_box::after{
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  width: 0;
  height: 0;
  border-style: solid;
  border-top-width: 0px;
  border-top-color: transparent;
  border-bottom-width: 20rem;
  border-right-width: 0px;
  border-right-color: transparent;
  border-left-width: 100vw;
  border-left-color: transparent;
  display: none;
}

/* ----- 01 ----- */
.three_technic_info .three_technic_info_box:nth-child(1){
  padding-bottom: 3rem;
}
.three_technic_info .three_technic_info_box:nth-child(1)::after{
  border-bottom-color: #F8EFEB;
  display: block;
}

/* ----- 02 ----- */
.three_technic_info .three_technic_info_box:nth-child(2){
  background-color: #F8EFEB;
  padding-bottom: 3rem;
}
.three_technic_info .three_technic_info_box:nth-child(2)::after{
  border-bottom-color: #fff;
  display: block;
}

/* ----- three_technic_num ----- */
.three_technic_num{
  text-align: center;
  background-image: url("../img/three_technic_num_bg.svg");
  background-position: center center;
  background-size: contain;
  background-repeat: no-repeat;
  width: 10.4rem;
  height: 9.0rem;
  margin-left: auto;
  margin-right: auto;
  padding-top: 1.8rem;
  font-family: 'Roboto', sans-serif;
  font-size: 1.2rem;
  color: #8F8F8F;
  font-weight: 400;
  line-height: 1;
}
.three_technic_num.three_technic_num_wh{
  background-image: url("../img/three_technic_num_bg_wh.svg");
}
.three_technic_num i{
  font-size: 2rem;
  color: #E4004A;
  display: block;
  font-style: normal;
  margin-top: 0.4rem;
}

/* ----- three_technic_ttl ----- */
.three_technic_ttl{
  display: block;
  font-family: "Noto Serif JP", serif;
  text-align: center;
  margin-top: -3rem;
  margin-bottom: 2rem;
}
.three_technic_ttl p{
  font-size: 2rem;
  color: #E4004A;
  font-weight: 700;
  line-height: 1.425;
}
.three_technic_ttl span{
  display: inline-block;
  position: relative;
  font-size: 1.5rem;
  padding: 0 1.5rem;
}
.three_technic_ttl span::before,
.three_technic_ttl span::after{
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  -o-transform: translateY(-50%);
  transform: translateY(-50%);
  width: 1rem;
  height: 0.1rem;
  background-color: #E4004A;
}
.three_technic_ttl span::before{
  left: 0;
}
.three_technic_ttl span::after{
  right: 0;
}

/* ----- three_technic_img ----- */
.three_technic_img{
  display: -webkit-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  -webkit-align-items: center;
  align-items: center;
  -webkit-justify-content: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  -moz-box-pack: center;
  justify-content: center;
  margin-bottom: 1rem;
}
.three_technic_img li{
  width: 50%;
  margin-right: 0.5rem;
}
.three_technic_img li:nth-child(2n){
  margin-right: 0;
}

/*three_technic_txt*/
.three_technic_txt{
  font-size: 1.6rem;
}
.ttt_f_sup{
  margin-left: -0.07em;
  font-feature-settings : "palt";
}

/* ============================================
onayami
あなたのお悩みを
まるっとケアできる!？
=============================================*/	
#onayami .main_ttlBox:first-child{
  margin-bottom: 0;
}

/* ----- onayami_article ----- */
.onayami_article{
  background-color: #EFEFEF;
  padding-top: 6rem;
  padding-bottom: 5rem;
}
.onayami_article .fsw_line{
  font-weight: 700;
  color: #E4004A;
  padding-bottom: 1px;
  background: -moz-linear-gradient(top, transparent 60%, #FFEC74 0);
  background: -webkit-linear-gradient(top, transparent 60%, #FFEC74 0);
  background: linear-gradient(to bottom, transparent 60%, #FFEC74 0);
}
/*onayami_subTtl*/
.onayami_subTtl{
  color: #E4004A;
  position: relative;
  margin-top: 3rem;
  margin-bottom: 1rem;
  padding-left: 1rem;
  font-weight: 700;
  font-size: 1.6rem;
  line-height: 1.47;
}
.onayami_subTtl::before{
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 0.5rem;
  height: 100%;
  background-color: #E4004A;
}
/*onayami_img*/
.onayami_img{
  margin-bottom: 1rem;
}
/*onayami_txt*/
.onayami_txt{
  font-size: 1.6rem;
}
/*onayami_toggle*/
/*onayami_toggle_btn*/
.onayami_toggle .onayami_toggle_btn{
  font-weight: 700;
  text-align: center;
  font-size: 1.6rem;
  background-color: #fff;
  color: #E4004A;
  border: 0.2rem solid #E4004A;
  padding: 1rem 2.8rem;
  position: relative;
  z-index: 3;
  line-height: 1;
}
.onayami_toggle .onayami_toggle_btn i{
  display: block;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%) rotate(0deg);
  -ms-transform: translateY(-50%) rotate(0deg);
  -o-transform: translateY(-50%) rotate(0deg);
  transform: translateY(-50%) rotate(0deg);
  right: 1rem;
  width: 1.8rem;
  height: 1.8rem;
  -webkit-transition: all .6s;
  transition: all .6s;
}
.onayami_toggle .onayami_toggle_btn i::before,
.onayami_toggle .onayami_toggle_btn i::after{
  content: "";
  display: block;
  background-color: #E4004A;
  position: absolute;
}
.onayami_toggle .onayami_toggle_btn i::before{
  width: 100%;
  height: 0.2rem;
  top: 0.8rem;
}
.onayami_toggle .onayami_toggle_btn i::after{
  width: 0.2rem;
  height: 100%;
  left: 0.8rem;
}
/*active*/
.onayami_toggle_active .onayami_toggle_btn i{
  -webkit-transform: translateY(-50%) rotate(45deg);
  -ms-transform: translateY(-50%) rotate(45deg);
  -o-transform: translateY(-50%) rotate(45deg);
  transform: translateY(-50%) rotate(45deg);
}
/*onayami_toggle_more */
.onayami_toggle .onayami_toggle_more {
  display: none;
  background-color: #fff;
  margin-top: 1rem;
  padding: 2rem;
  font-size: 1.4rem;
}

/* ----- onayami_care_head ----- */
.onayami_care_head{
  background-color: #fff;
  margin-bottom: 4rem;
  padding-top: 3rem;
  padding-bottom: 3rem;
  position: relative;
}
.onayami_care_head::after{
  content: "";
  display: block;
  position: absolute;
  z-index: 1;
  bottom: 7rem;
  left: 0;
  right: 0;
  margin: 0 auto;
  width: 18rem;
  height: 18rem;
  background: linear-gradient(45deg, transparent 50%, #d8c491);
  -webkit-transform: rotate(135deg);
  -ms-transform: rotate(135deg);
  -o-transform: rotate(135deg);
  transform: rotate(135deg);
  opacity: 0;
  -webkit-transition: all .6s;
  transition: all .6s;
}
.onayami_care_head.inview-mv::after{
  opacity: 1;
  bottom: 1rem;
}
.onayami_care_nayami_catch{
  text-align: center;
  margin-bottom: 1rem;
  color: #E4004A;
  font-weight: 700;
  font-size: 1.7rem;
}
.onayami_care_nayami{
  display: -webkit-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-box-align: start;
  -ms-flex-align: start;
  -webkit-align-items: start;
  align-items: start;
  -webkit-justify-content: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  -moz-box-pack: center;
  justify-content: center;
  text-align: center;
  position: relative;
  z-index: 2;
  /*-webkit-transition: all .6s;
  transition: all .6s;
  opacity: 0;*/
}
/*.inview-mv .onayami_care_nayami{
  opacity: 1;
  -webkit-transform: translate(0, 0);
  -moz-transform: translate(0, 0);
  -ms-transform: translate(0, 0);
  -o-transform: translate(0, 0);
  transform: translate(0, 0);
}*/
.onayami_care_nayami li{
  font-size: 2.2rem;
  font-weight: 700;
  margin: 0 1rem;
  width: calc(70% / 3);
  line-height: 1;
}
.onayami_care_nayami li p{
  display: inline-block;
  color: #E4004A;
  padding: 0 1rem 0.2rem;
  background: -moz-linear-gradient(top, transparent 50%, #FFEC74 0);
  background: -webkit-linear-gradient(top, transparent 50%, #FFEC74 0);
  background: linear-gradient(to bottom, transparent 50%, #FFEC74 0);
}
.onayami_care_nayami li span{
  display: block;
  font-size: 1.2rem;
  font-weight: 400;
  margin-top: 0.1rem;
}
/*onayami_care_marutto*/
.onayami_care_marutto{
  text-align: center;
  font-size: 2.3rem;
  font-weight: 700;
  position: relative;
  z-index: 2;
  font-family: "Noto Serif JP", serif;
  line-height: 1.4;
  margin-top: 2rem;
  -webkit-transition: all 1.0s;
  transition: all 1.0s;
  opacity: 0;
  -webkit-transform: translate(0, -60px);
  -moz-transform: translate(0, -60px);
  -ms-transform: translate(0, -60px);
  -o-transform: translate(0, -60px);
  transform: translate(0, -60px);
}
.onayami_care_marutto span{
  color: #E4004A;
  border-bottom: 0.2rem solid #E4004A;
}
.inview-mv .onayami_care_marutto{
  opacity: 1;
  -webkit-transform: translate(0, 0);
  -moz-transform: translate(0, 0);
  -ms-transform: translate(0, 0);
  -o-transform: translate(0, 0);
  transform: translate(0, 0);
}

/* ----- onayami_care ----- */
.onayami_care_logo{
  width: 80%;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 2rem;
}
.onayami_care_ttl{
  font-weight: 700;
  margin-bottom: 1rem;
  color: #E4004A;
  font-size: 2.1rem;
  text-align: center;
}
.onayami_care .notes-block{
  font-size: 1.2rem;
  text-align: right;
  margin-top: 1rem;
  color: #380000;
  font-family: "Noto Serif JP", serif;
  font-weight: 700;
}

/* ----- onayami_3ddesignface  ----- */
.onayami_3ddesignface {
  background: linear-gradient(to bottom, transparent , #f1dad5);
  padding-bottom: 3rem;
}

/* ----- onayami_3ddesignface_txt ----- */
.onayami_3ddesignface_txt{
  font-size: 1.6rem;
}

/* ============================================
exclusive_care
コースの効果をさらに高める
サロン専用ケア!
=============================================*/	
/* ----- exclusive_care_con ----- */
/*exclusive_care_box*/
.exclusive_care_box {
  padding-top: 1rem;
}
/*exclusive_care_head*/
.exclusive_care_head{
  position: relative;
  margin-bottom: 1rem;
  min-height: 15rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  -webkit-align-items: center;
  align-items: center;
  -webkit-justify-content: start;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  -moz-box-pack: start;
  justify-content: start;
  -webkit-transition: all .8s;
  transition: all .8s;
  opacity: 0;
}
.inview-mv.exclusive_care_head{
  opacity: 1;
}
.exclusive_care_head::after{
  content: "";
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  width: 0%;
  height: 100%;
  z-index: -1;
  background-color: #F8EFEB;
  -webkit-transition: all .8s;
  transition: all .8s;
}
.inview-mv.exclusive_care_head::after{
  width: 100%;
}
.exclusive_care_box:nth-child(even) .inview-mv.exclusive_care_head::after{
  left: auto;
  right: 0;
}
.exclusive_care_box:nth-child(even) .exclusive_care_head{
  -webkit-justify-content: flex-end;
  -webkit-box-pack: flex-end;
  -ms-flex-pack: flex-end;
  -moz-box-pack: flex-end;
  justify-content: flex-end;
}
.exclusive_care_head .att{
  font-size: 1.2rem;
  display: block;
  position: absolute;
  bottom: 1rem;
  text-align: right;
  font-style: normal;
  width: calc(100% - 16.5rem);
  padding-left: 1rem;
  padding-right: 1rem;
}
/*exclusive_care_ttl*/
.exclusive_care_ttl{
  text-align: center;
  font-family: "Noto Serif JP", serif;
  font-weight: 400;
  width: calc(100% - 16.5rem);
  padding-left: 1rem;
  padding-right: 1rem;
  position: relative;
}
.exclusive_care_ttl p{
  color: #E4004A;
  font-size: 2rem;
  display: block;
  line-height: 1.25;
}
.exclusive_care_ttl span{
  font-size: 1.6rem;
  display: block;
  line-height: 1.438;
}
/*exclusive_care_img*/
.exclusive_care_img{
  width: 16.5rem;
  position: absolute;
  bottom: 1rem;
  right: -16.5rem;
  -webkit-transition: all .8s;
  transition: all .8s;
  opacity: 0;
}
.inview-mv .exclusive_care_img{
  right: 0;
  opacity: 1;
}
.exclusive_care_box:nth-child(even) .exclusive_care_img{
  right: auto;
  left: -16.5rem;
}
.exclusive_care_box:nth-child(even) .inview-mv .exclusive_care_img{
  left: 0;
}
/*exclusive_care_txt*/
.exclusive_care_txt{
  font-size: 1.6rem;
}
.exclusive_care_txt .att{
  font-size: 1.4rem;
}

/* ============================================
menu
=============================================*/	

#menu .lw-h-block1 {
  margin-bottom: 2rem
}
#menu .lw-h1 {
  text-align: center;
  font-weight: 400;
}
#menu .lw-h1__sub {
  display: block;
  font-size: 1.6rem;
}
#menu .lw-h1__main {
  display: block;
  font-size: 2.5rem;
}
#menu .lw-h1__main .time {
  font-size: 2.5rem;
  margin-left: .5rem;
}
#menu .lw-h1__main .time span {
  font-size: 2rem;
}
#menu .lw-h2 {
  align-items: center;
  color: #E4004A;
  display: flex;
  font-size: 1.8rem;
  justify-content: center;
  padding-left: 2rem;
  padding-right: 2rem;
  position: relative;
  width: 100%;
}
#menu .lw-h2 .num {
  display: inline-block;
  font-size: 2.6rem;
  margin-left: .5rem;
  margin-top: .1rem;
  padding-bottom: .4rem
}
#menu .lw-h3 {
  font-size: 1.8rem;
  text-align: center
}
#menu .details {
  background-color: #f7f1e5;
  margin-top: 4rem;
  padding-bottom: 2rem;
  padding-top: 2rem
}
#menu .details:not(.is-active) {
  display: none
}
#menu .details .list-item {
  background-color: #fff;
  padding-bottom: 2rem;
  padding-top: 2rem
}
#menu .details .list-item:not(:first-of-type) {
  margin-top: 2rem
}
#menu .menu_mv{
  max-width: 20rem;
  margin-left: auto;
  margin-right: auto;
}

/* ============================================
commitment / 3つのこだわり
=============================================*/	
/* ----- sub_ttlBox_in ----- */
.sub_ttlBox{
  position: relative;
  font-size: 2rem;
  margin-bottom: 3rem;
}
.sub_ttlBox .sub_ttlBox_in{
  position: relative;
  text-align: center;
  padding: 1rem 3rem;
  display: block;
  color: #fff;
}
.sub_ttlBox .sub_ttlBox_in::before{
  background: linear-gradient(to right, #43b4d0 0%,#1c5699 100%);
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  width: 100%;
  height: 100%;
  transform-origin: left top;
  z-index: 1;
  opacity: 0;
  -webkit-transition: all .6s;
  transition: all .6s;
  -webkit-transform: scaleY(0) translateY(-5%);
  -ms-transform: scaleY(0) translateY(-5%);
  -o-transform: scaleY(0) translateY(-5%);
  transform: scaleY(0) translateY(-5%);
  box-shadow: 0 0 0 rgba(20,119,181,0.30);
}
.sub_ttlBox.inview-mv .sub_ttlBox_in::before{
  -webkit-transform: scaleY(1) translateY(0);
  -ms-transform: scaleY(1) translateY(0);
  -o-transform: scaleY(1) translateY(0);
  transform: scaleY(1) translateY(0);
  opacity: 1;
  box-shadow: 0 5px 10px rgba(20,119,181,0.30);
}
.sub_ttlBox .sub_ttlBox_in > span{
  position: relative;
  z-index: 2;
  color: #fff;
  display: inline-block;
}

.sub_ttlBox .sub_ttlBox_in .sttl_small{
  font-size: 1.5rem;
  display: inline-block;
}
.sub_ttlBox .sub_ttlBox_in .sttl_big{
  font-size: 4rem;
}
.sub_ttlBox .sub_ttlBox_in .sttl_big .sttl_big{
  font-size: 3.6rem;
}

 /* ----- slider ----- */
.front .commitment .slide-image .obi{
  -webkit-box-align: center;
  -ms-flex-align: stretch;
  -webkit-align-items: stretch;
  align-items: stretch;
}
.front .commitment .slide-image .obi__num{
  width: 5rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  line-height: 1;
  -webkit-box-align: center;
  -ms-flex-align: center;
  -webkit-align-items: center;
  align-items: center;
  -webkit-justify-content: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  -moz-box-pack: center;
  justify-content: center;
}
.front .commitment .slide-image .obi__title{
  font-size: 2rem;
  padding-bottom: 1rem;
  padding-top: 1rem;
}

.commitment{
  overflow: hidden;
}
.commitment .slide_txt{
  text-align: justify;
}
.commitment .slick-slide{
  opacity: 0.4;
  -webkit-transition: all .6s;
  transition: all .6s;
}
.commitment .slick-slide.slick-current{
  opacity: 1;
}

/* ============================================
flow / 初回体験の流れ
=============================================*/	
.flow_box .lw-h-block1 {
  position: absolute;
  top: -1rem;
  left: 0.8rem;
  color: #b39f66;
  font-weight: 500;
  font-family: Libre Baskerville;
  font-size: 5rem;
  font-style: italic;
  line-height: 1;
}
.flow_box .lw-h-block2 {
  margin-bottom: 1rem;
  font-size: 1.8rem;
  text-align: center;
}
.trialFlow_slider_con{
  overflow: hidden;
}
.trialFlow_slider_box{
  position: relative;
}
.trialFlow_slider_inner{
  position: relative;
  margin-top: 1rem;
  margin-bottom: 1.8rem;
  padding-top: 1rem;
  padding-bottom: 1rem;
  background-color: #fff;
  box-shadow: 2px 2px 20px rgb(0 0 0 / 6%);
}

/* ----- slick ----- */
.trialFlow_slider.slick-dotted.slick-slider{
  margin-bottom: 5rem;
}
.trialFlow_slider_box.slick-slide{
  opacity: 0.4;
  -webkit-transition: all .6s;
  transition: all .6s;
}
.trialFlow_slider_box.slick-slide.slick-current{
  opacity: 1;
}


/* ============================================
package_plan / パッケージプラン
=============================================*/	
.package_plan {
  padding-top: 6rem;
  padding-bottom: 6rem;
  background-color: #fffbee;
}

/* ----- pp_ttl ----- */
.pp_ttl_box{
  text-align: center;
  font-size: 1.4rem;
  line-height: 1.3;
  margin-bottom: 2rem;
}
.pp_ttl_box .pp_ttl_in{
  position: relative;
  display: inline-block;
}
.pp_ttl_box .pp_ttl_in::before,
.pp_ttl_box .pp_ttl_in::after{
  content: "";
  display: inline-block;
  position: absolute;
  width: 0.2rem;
  height: 0%;
  bottom: 0;
  background-color: #ca4112;
  border-radius: 9999px;
  transform-origin: bottom;
  -webkit-transition: all .6s;
  transition: all .6s;
  opacity: 0;
}
.pp_ttl_box.inview-mv .pp_ttl_in::before,
.pp_ttl_box.inview-mv .pp_ttl_in::after{
  opacity: 1;
  height: 90%;
}

.pp_ttl_box .pp_ttl_in::before{
  -webkit-transform: rotate(20deg);
  -ms-transform: rotate(20deg);
  -o-transform: rotate(20deg);
  transform: rotate(20deg);
  left: -0.5rem;
}
.pp_ttl_box.inview-mv .pp_ttl_in::before{
  -webkit-transform: rotate(-20deg);
  -ms-transform: rotate(-20deg);
  -o-transform: rotate(-20deg);
  transform: rotate(-20deg);
}

.pp_ttl_box .pp_ttl_in::after{
  -webkit-transform: rotate(-20deg);
  -ms-transform: rotate(-20deg);
  -o-transform: rotate(-20deg);
  transform: rotate(-20deg);
  right: -0.5rem;
}
.pp_ttl_box.inview-mv .pp_ttl_in::after{
  -webkit-transform: rotate(20deg);
  -ms-transform: rotate(20deg);
  -o-transform: rotate(20deg);
  transform: rotate(20deg);
}

.pp_ttl_box .pp_ttl_in p{
  -webkit-transform: translateY(10%);
  -ms-transform: translateY(10%);
  -o-transform: translateY(10%);
  transform: translateY(10%);
  -webkit-transition: all .6s;
  transition: all .6s;
  opacity: 0;
  padding: 10px 0;
}
.pp_ttl_box.inview-mv .pp_ttl_in p{
  -webkit-transform: translateY(0%);
  -ms-transform: translateY(0%);
  -o-transform: translateY(0%);
  transform: translateY(0%);
  opacity: 01;
}

.pp_ttl_box .pp_ttl_in span{
  font-size: 2rem;
  font-weight: 700;
  display: inline;
  background: -moz-linear-gradient(top, transparent 60%, #FFEC73 0);
  background: -webkit-linear-gradient(top, transparent 60%, #FFEC73 0);
  background: linear-gradient(to bottom, transparent 60%, #FFEC73 0);
  color: #ca4112;
}

/* ----- pp_subTtl ----- */
.pp_subTtl{
  text-align: center;
  font-size: 2.5rem;
  font-weight: 700;
  line-height: 1.3;
}
.pp_subTtl span{
  font-size: 60%;
}

 /* ----- pp_special  ----- */
.pp_special dl{
  display: -webkit-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-box-align: start;
  -ms-flex-align: start;
  -webkit-align-items: start;
  align-items: start;
  -webkit-justify-content: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  -moz-box-pack: center;
  justify-content: center;
}
.pp_special dt{
  display: inline-block;
  position: relative;
  overflow: hidden;
  margin-right: 1rem;
  padding-right: 1rem;
  top: 1.1rem;
}
.pp_special dt::after{
  content: "";
  display: block;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 1.8rem 0 1.8rem 1rem;
  border-color: transparent transparent transparent #ca4112;
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  z-index: 1;
}
.pp_special dt span{
  background-color: #ca4112;
  color: #fff;
  font-weight: 700;
  display: inline-block;
  position: relative;
  z-index: 2;
  padding: 0.5rem 1rem;
}
.pp_special dd{
  font-size: 5rem;
  font-weight: 700;
  position: relative;
  line-height: 1;
  text-align: right;
}
.pp_special dd > .pp_s_in{
  position: relative;
  display: inline-block;
  color: #ca4112;
}
.pp_special dd .yen{
  font-size: 2.9rem;
  font-weight: 700;
  margin-left: 0.8rem;
  color: #444;
  position: relative;
}
.pp_special dd .tax{
  font-size: 1rem;
  position: absolute;
  top: -0.3rem;
  right: 0.1rem;
  color: #444;
}
.pp_special .g-notes{
  text-align: right;
  color: #444;
  font-weight: 400;
}

/* ----- pp_att ----- */
.pp_att{
  line-height: 1.5;
}

/* ----- hearing_staff ----- */
.hearing_staff{
  text-align: center;
  color: #b39f66;
  font-size: 1.6rem;
  font-weight: 700;
}

/* ==========================================================================
    期間煽り
    ========================================================================== */
.time_left_box{
  position: absolute;
  top: 8.5rem;
  left: 0rem;
  z-index: 2;
  font-size: 2rem;
  color: #E4004A;
  font-weight: 700;
  text-align: center;
  transform: rotate(-15deg);
  width: 8rem;
  height: 8rem;
} 
.time_left_box_in{
  position: relative;
  z-index: 2;
  width: 100%;
  height: 100%;
}
.time_left{
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1;
  position: relative;
  z-index: 2;
  top: 48%;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  -o-transform: translateY(-50%);
  transform: translateY(-50%);
  left: -0.2rem;
}
.time_left.time_left_last{
  left: 0rem;
}
.time_left span{
  font-size: 190%;
}
.time_left.time_left_last span{
  font-size: 120%;
}
.time_left_box .giza {
  position: absolute;
  left: 0;
  top: 0;
  width: 8rem;
  height: 8rem;
}
.anime-lasttime {
  -webkit-animation-duration: 1.2s;
  animation-duration: 1.2s;
  -webkit-animation-iteration-count: infinite;
  animation-iteration-count: infinite;
  -webkit-animation-name: lasttime;
  animation-name: lasttime;
  -webkit-animation-timing-function: linear;
  animation-timing-function: linear
}
@-webkit-keyframes lasttime {
  0% {
    transform: scale(1.00) rotate(-15deg);
  }
  50% {
    transform: scale(1.1) rotate(-15deg);
  }
  to {
    transform: scale(1.00) rotate(-15deg);
  }
}
@keyframes lasttime {
  0% {
    transform: scale(1.00) rotate(-15deg);
  }
  50% {
    transform: scale(1.1) rotate(-15deg);
  }
  to {
    transform: scale(1.00) rotate(-15deg);
  }
}

/*anime-kirarin*/
.anime-kirarin{
  position: relative;
  overflow: hidden;
}
.anime-kirarin::after{
  content: '';
  position: absolute;
  top: -100px;
  left: -100px;
  width: 50px;
  height: 50px;
  background-image: linear-gradient(100deg,  rgba(255, 255, 255, 0) 10%, rgba(255, 255, 255, 1) 100%, rgba(255, 255, 255, 0) 0%);
  /* アニメーション */
  animation-name: anime-kirarin;
  animation-duration: 2s;
  animation-timing-function: ease-in-out;
  animation-iteration-count: infinite;
}
@keyframes anime-kirarin {
  0% {
    transform: scale(0) rotate(25deg);
    opacity: 0;
  }
  50% {
    transform: scale(1) rotate(25deg);
    opacity: 1;
  }
  100% {
    transform: scale(50) rotate(25deg);
    opacity: 0;
  }
}

/* ==========================================================================
    下部fixボタン
    ========================================================================== */
#js-fixed_btn {
  position: fixed;
  bottom: 0;
  width: 100%;
  max-width: 750px;
  background-color: rgba(0, 0, 0, 0.7);
  z-index: 1001;
  left: 0;
  right: 0;
  margin: 0 auto;
  display: none;
}
#js-fixed_btn .btnWrap {
  padding: 1rem;
  width: 100%;
}
#js-fixed_btn .btn {
  display: block;
  width: 100%;
  margin: 0 auto;
  padding: 6px 8px 2px 8px;
  border-radius: 3px;
  text-align: center;
  text-decoration: none;
  line-height: 54px;
  outline: none;
  position: relative;
  z-index: 2;
  background-image: -moz-linear-gradient( -135deg, rgb(134, 100,15) 0%, rgba(184,162,43,0.97) 50%, rgba(134, 100,15,0.90196) 100%);
  background-image: -webkit-linear-gradient( -135deg, rgb(134, 100,15) 0%, rgba(184,162,43,0.97) 50%, rgba(134, 100,15,0.90196) 100%);
  background-image: -ms-linear-gradient( -135deg, rgb(134, 100,15) 0%, rgba(184,162,43,0.97) 50%, rgba(134, 100,15,0.90196) 100%);
  border: 2px solid #86640f;
  color: #fff;
  line-height: 1.6;
  font-family: "Noto Serif JP", serif;
  font-size: 16px;
  font-size: 1.6rem;
}
#js-fixed_btn .btn .arrow {
  position: absolute;
  right: 1rem;
  top: 50%;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  -o-transform: translateY(-50%);
  transform: translateY(-50%);
  height: 2.6rem;
  width: 2.6rem;
}
#js-fixed_btn .btn .trial_endcan{
  margin-bottom: -2px;
}