/*! --------------------------------------------------------------
　　このCSSファイルは .scssファイルからコンパイルされたものです。
　　修正する際はscssファイルを編集するように注意してください。
--------------------------------------------------------------- */
.clearfix:after {
  content: "";
  display: block;
  clear: both
}

li {
  list-style: none
}

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

a {
  color: inherit;
  text-decoration: none
}

.min {
  font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif
}

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

td input {
  max-width: 100%
}

i,
em {
  font-style: normal
}

.inner {
  width: 100%;
  position: relative
}

@media(min-width: 1200px) {
  .inner {
    max-width: 1120px;
    padding: 0 20px;
    margin: 0 auto
  }
}

@media(min-width: 768px)and (max-width: 1199px) {
  .inner {
    padding: 0 4vw
  }
}

@media(max-width: 767px) {
  .inner {
    padding: 0 8%
  }
}

.pc-only {
  display: unset
}

@media(min-width: 768px)and (max-width: 1199px) {
  .pc-only {
    display: none
  }
}

@media(max-width: 767px) {
  .pc-only {
    display: none
  }
}

.tab-only {
  display: none
}

@media(min-width: 768px)and (max-width: 1199px) {
  .tab-only {
    display: unset
  }
}

@media(max-width: 767px) {
  .tab-only {
    display: none
  }
}

.sp-only {
  display: none
}

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

@media(max-width: 767px) {
  .sp-only {
    display: unset
  }
}

.pctab-only {
  display: unset
}

@media(min-width: 768px)and (max-width: 1199px) {
  .pctab-only {
    display: unset
  }
}

@media(max-width: 767px) {
  .pctab-only {
    display: none
  }
}

.tabsp-only {
  display: none
}

@media(min-width: 768px)and (max-width: 1199px) {
  .tabsp-only {
    display: unset
  }
}

@media(max-width: 767px) {
  .tabsp-only {
    display: unset
  }
}

a.tellink {
  pointer-events: none
}

@media(max-width: 767px) {
  a.tellink {
    pointer-events: inherit
  }
}

@media(max-width: 767px) {
  :root {
    font-size: 4.26666vw !important
  }
}

html,
body {
  font-size: 1rem;
  line-height: 2;
  color: #333;
  font-family: "游ゴシック", "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif
}

html {
  overflow: auto
}

body {
  overflow: hidden
}

.zen {
  font-family: "Zen Maru Gothic", serif
}

.quic {
  font-family: "Quicksand", sans-serif
}

header {
  width: 100%;
  position: relative;
  z-index: 3
}

@media(max-width: 767px) {
  header {
    display: flex;
    flex-wrap: nowrap;
    justify-content: space-between;
    align-items: stretch;
    align-content: stretch;
    height: 16vw
  }
}

header .topline {
  height: 80px;
  background-color: #fff;
  display: flex;
  flex-wrap: nowrap;
  justify-content: space-between;
  align-items: stretch;
  align-content: stretch
}

@media(max-width: 767px) {
  header .topline {
    height: 16vw
  }
}

header .head_logo {
  height: 100%;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: center;
  align-content: unset;
  padding-left: 4vw
}

@media(min-width: 1200px)and (max-width: 1399px) {
  header .head_logo {
    width: 18%
  }
}

@media(max-width: 767px) {
  header .head_logo {
    width: 84vw;
    height: 16vw;
    padding: 0rem 0 0rem 4vw;
    z-index: 12
  }
}

header .head_logo a:hover {
  opacity: .8
}

@media(max-width: 767px) {
  header .head_logo img {
    width: 18.4vw
  }
}

header .gnav {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  align-content: unset
}

@media(min-width: 768px)and (max-width: 1199px) {
  header .gnav {
    display: none;
    width: 100%;
    min-width: unset;
    position: absolute;
    top: 80px;
    z-index: 11
  }
}

@media(max-width: 767px) {
  header .gnav {
    display: none;
    width: 100%;
    min-width: unset;
    position: absolute;
    top: 16vw;
    z-index: 11
  }
}

@media(min-width: 768px)and (max-width: 1199px) {
  header .gnav.open {
    display: block
  }
}

@media(max-width: 767px) {
  header .gnav.open {
    display: block
  }
}

header .gnav .ul_one {
  display: flex;
  flex-wrap: nowrap;
  justify-content: space-between;
  align-items: center;
  align-content: unset
}

@media(min-width: 1200px) {
  header .gnav .ul_one {
    margin-right: 10vw
  }
}

@media(min-width: 768px)and (max-width: 1199px) {
  header .gnav .ul_one {
    width: 100%;
    max-width: unset;
    display: block;
    border-top: 1px solid #fff
  }
}

@media(max-width: 767px) {
  header .gnav .ul_one {
    width: 100%;
    display: block;
    border-top: 1px solid #fff
  }
}

header .gnav .right {
  width: 240px;
  height: 100%;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: stretch;
  align-content: unset
}

@media(min-width: 768px)and (max-width: 1199px) {
  header .gnav .right {
    width: 100%;
    background-color: #fcfbf9;
    padding: 2rem 18vw
  }
}

@media(max-width: 767px) {
  header .gnav .right {
    width: 100%;
    background-color: #fcfbf9;
    padding: 1.8rem 8vw
  }
}

header .gnav .right .btn_head {
  width: 50%
}

@media(min-width: 768px)and (max-width: 1199px) {
  header .gnav .right .btn_head {
    width: 100%
  }
}

@media(max-width: 767px) {
  header .gnav .right .btn_head {
    width: 100%
  }
}

@media(min-width: 768px)and (max-width: 1199px) {
  header .gnav .right .btn_head:not(:last-child) {
    margin-bottom: 1.8rem
  }
}

@media(max-width: 767px) {
  header .gnav .right .btn_head:not(:last-child) {
    margin-bottom: 1.8rem
  }
}

header .gnav .right .btn_head a {
  width: 100%;
  height: 100%;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  flex-direction: column
}

@media(min-width: 768px)and (max-width: 1199px) {
  header .gnav .right .btn_head a {
    height: 4rem;
    flex-direction: row
  }
}

@media(max-width: 767px) {
  header .gnav .right .btn_head a {
    height: 4rem;
    flex-direction: row
  }
}

header .gnav .right .btn_head.contact a {
  background-color: #f591b8;
  color: #fff
}

header .gnav .right .btn_head.contact a:hover {
  background-color: #9d4f6e;
  transition: .3s ease
}

header .gnav .right .btn_head.store a {
  background-color: #b55078;
  color: #fff
}

header .gnav .right .btn_head.store a:hover {
  background-color: #722a47;
  transition: .3s ease
}

header .gnav .right .btn_head i {
  font-size: 1rem;
  line-height: 1.5;
  margin-bottom: .1em
}

@media(min-width: 768px)and (max-width: 1199px) {
  header .gnav .right .btn_head i {
    margin: 0 .6em 0 0
  }
}

@media(max-width: 767px) {
  header .gnav .right .btn_head i {
    margin: 0 .4em 0 0
  }
}

header .gnav .right .btn_head p {
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.3
}

@media(min-width: 1200px)and (max-width: 1399px) {
  header .gnav .right .btn_head p {
    font-size: 0.8125rem
  }
}

@media(min-width: 768px)and (max-width: 1199px) {
  header .gnav>ul {
    width: 100%;
    background-color: #fcfbf9
  }
}

@media(max-width: 767px) {
  header .gnav>ul {
    width: 100%;
    background-color: #fcfbf9
  }
}

header .gnav>ul>li>a {
  width: 100%;
  display: flex;
  flex-wrap: nowrap;
  justify-content: center;
  align-items: center;
  align-content: unset;
  padding: 1rem 1rem;
  position: relative
}

@media(min-width: 1200px)and (max-width: 1399px) {
  header .gnav>ul>li>a {
    padding: 1rem .8rem
  }
}

@media(min-width: 768px)and (max-width: 1199px) {
  header .gnav>ul>li>a {
    justify-content: flex-start;
    padding: 1.2rem 6vw;
    border-bottom: 1px solid #dd8aab
  }
}

@media(max-width: 767px) {
  header .gnav>ul>li>a {
    height: 8vh;
    justify-content: flex-start;
    padding: .5rem 8vw;
    border-bottom: 1px solid #dd8aab
  }
}

header .gnav>ul>li>a:hover p {
  position: relative;
  transition: .3s ease
}

header .gnav>ul>li>a:hover p::before {
  opacity: 1;
  transition: .3s ease
}

@media(min-width: 768px)and (max-width: 1199px) {
  .ul_one li:not(.li_parent_sp) a::after {
    content: "";
    font-size: 0.625rem;
    font-weight: 900;
    font-family: "Font Awesome 5 Free";
    position: absolute;
    top: 50%;
    right: 8vw;
    transform: translateY(-50%)
  }
}

@media(max-width: 767px) {
  .ul_one li:not(.li_parent_sp) a::after {
    content: "";
    font-size: 0.625rem;
    font-weight: 900;
    font-family: "Font Awesome 5 Free";
    position: absolute;
    top: 50%;
    right: 8vw;
    transform: translateY(-50%)
  }
}

header .gnav>ul>li>a p {
  font-size: 1.125rem;
  font-weight: 700;
  line-height: 1.5;
  text-align: center;
  position: relative
}

@media(min-width: 768px)and (max-width: 1199px) {
  header .gnav>ul>li>a p {
    text-align: left
  }
}

@media(max-width: 767px) {
  header .gnav>ul>li>a p {
    font-size: 1.25rem;
    text-align: left
  }
}

.icn_menu {
  width: 16vw;
  height: 16vw;
  position: absolute;
  top: 0;
  right: 0;
  z-index: 13
}

@media(min-width: 768px)and (max-width: 1199px) {
  .icn_menu {
    width: 74px;
    height: 74px
  }
}

.icn_menu .menu-trigger,
.icn_menu .menu-trigger span {
  display: inline-block;
  transition: all .4s
}

.icn_menu .menu-trigger {
  width: 100%;
  height: 100%;
  background: #f591b8;
  padding: 1rem
}

.icn_menu .menu-trigger .spanwrap {
  height: 100%;
  position: relative
}

.icn_menu .menu-trigger span {
  position: absolute;
  left: 0;
  width: 100%;
  height: .15rem;
  background-color: #fff;
  border-radius: 9999px
}

.icn_menu .menu-trigger span:nth-of-type(1) {
  top: 0
}

.icn_menu .menu-trigger span:nth-of-type(2) {
  top: calc(50% - .075rem)
}

.icn_menu .menu-trigger span:nth-of-type(3) {
  bottom: 0
}

.icn_menu .menu-trigger.active span:nth-of-type(1) {
  transform: translateY(-50%) rotate(-45deg);
  top: 50%
}

.icn_menu .menu-trigger.active span:nth-of-type(2) {
  opacity: 0
}

.icn_menu .menu-trigger.active span:nth-of-type(3) {
  transform: translateY(-50%) rotate(45deg);
  top: 50%
}

.main_home {
  height: calc(100vh - 80px);
  background: url(https://test3zaqrobacca.xyz/wp-content/uploads/2024/05/pc_back.png) center center/cover no-repeat;
  position: relative
}

@media(min-width: 768px)and (max-width: 1199px) {
  .main_home {
    background: url(https://test3zaqrobacca.xyz/wp-content/uploads/2024/05/sp_back.png) center center/cover no-repeat
  }
}

@media(max-width: 767px) {
  .main_home {
    height: calc(100vh - 16vw);
    background: url(https://test3zaqrobacca.xyz/wp-content/uploads/2024/05/sp_back.png) center center/cover no-repeat
  }
}

.main_home .inner {
  height: 100%;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: center;
  z-index: 1
}

.main_home .inner .txt {
  position: relative;
  z-index: 1
}

@media(max-width: 767px) {
  .main_home .inner .txt {
    padding-top: 5vh
  }
}

.main_home .ttl01 {
  font-size: 3rem;
  font-weight: 700;
  line-height: 1.5;
  margin-bottom: 3vh
}

@media(max-width: 767px) {
  .main_home .ttl01 {
    font-size: 1.375rem;
    letter-spacing: -0.02em;
    margin-bottom: 4vh
  }
}

.main_home .ttl01 span {
  display: inline-block;
  background-color: #fff;
  border-radius: 5px;
  padding: .2em .6em
}

@media(max-width: 767px) {
  .main_home .ttl01 span {
    padding: .2em .3em
  }
}

.main_home .ttl01 span:not(:last-child) {
  margin-bottom: 1.5vh
}

@media(max-width: 767px) {
  .main_home .ttl01 span:not(:last-child) {
    margin-bottom: .6rem
  }
}

.main_home .ttl01 b {
  color: #f591b8
}

.main_home p.txt01 {
  width: -moz-fit-content;
  width: fit-content;
  max-width: 510px;
  background-color: #fff;
  border-radius: 5px;
  padding: .4em .8em;
  margin-bottom: 6vh
}

@media(max-width: 767px) {
  .main_home p.txt01 {
    font-size: 0.875rem;
    margin-bottom: 25vh
  }
}

.main_home .neko_l,
.main_home .neko_r {
  position: absolute;
  bottom: 0
}

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

  .main_home .neko_l,
  .main_home .neko_r {
    display: none
  }
}

@media(max-width: 767px) {

  .main_home .neko_l,
  .main_home .neko_r {
    display: none
  }
}

.main_home .neko_l {
  width: 422px;
  max-width: 21.9791666667vw;
  right: calc(100% - 100px);
  transform: translateY(25%)
}

.main_home .neko_r {
  width: 546px;
  max-width: 28.4375vw;
  left: 100%;
  transform: translateY(50%)
}

.section_cmn {
  padding: 5rem 0
}

@media(max-width: 767px) {
  .section_cmn {
    padding: 3rem 0
  }
}

.section_cmn.t_narrow {
  padding-top: 3.5rem
}

@media(max-width: 767px) {
  .section_cmn.t_narrow {
    padding-top: 2.5rem
  }
}

.section_cmn.b_narrow {
  padding-bottom: 3.5rem
}

@media(max-width: 767px) {
  .section_cmn.b_narrow {
    padding-bottom: 2.5rem
  }
}

.section_cmn.t_wide {
  padding-top: 7.5rem
}

@media(max-width: 767px) {
  .section_cmn.t_wide {
    padding-top: 3.5rem
  }
}

.section_cmn.b_wide {
  padding-bottom: 7.5rem
}

@media(max-width: 767px) {
  .section_cmn.b_wide {
    padding-bottom: 3.5rem
  }
}

.section_cmn.b_none {
  padding-bottom: 0
}

.ttl_cmn {
  margin-bottom: 3.5rem
}

@media(max-width: 767px) {
  .ttl_cmn {
    margin-bottom: 1.5rem
  }
}

.ttl_cmn span,
.ttl_cmn em,
.ttl_cmn b {
  display: block;
  width: -moz-fit-content;
  width: fit-content
}

.ttl_cmn em {
  font-size: 3.75rem;
  font-weight: 700;
  line-height: 1.3;
  letter-spacing: .1em
}

@media(max-width: 767px) {
  .ttl_cmn em {
    font-size: 1.5rem
  }
}

.ttl_cmn span {
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 1.6
}

@media(max-width: 767px) {
  .ttl_cmn span {
    font-size: 1rem
  }
}

.ttl_cmn.tac {
  text-align: center
}

.ttl_cmn.tac em,
.ttl_cmn.tac span,
.ttl_cmn.tac b {
  margin: 0 auto
}

.ttl_cmn.color_w {
  color: #fff
}

.ttl_cmn.color_pp {
  color: #f591b8
}

.ttl_cmn2 {
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 1.66;
  margin-bottom: .5em
}

@media(min-width: 768px)and (max-width: 1199px) {
  .ttl_cmn2 {
    font-size: 1.1875rem
  }
}

@media(max-width: 767px) {
  .ttl_cmn2 {
    font-size: 1.125rem
  }
}

.ttl_cmn2.medium {
  font-weight: 500
}

.ttl_cmn2.tac {
  text-align: center
}

.ttl_cmn2.color_w {
  color: #fff
}

.ttl_cmn2.color_pp {
  color: #f591b8
}

.ttl_cmn2.small {
  font-size: 1.25rem
}

@media(max-width: 767px) {
  .ttl_cmn2.small {
    font-size: 1rem
  }
}

.ttl_cmn2.small2 {
  font-size: 1.75rem
}

@media(min-width: 768px)and (max-width: 1199px) {
  .ttl_cmn2.small2 {
    font-size: 1.25rem
  }
}

@media(max-width: 767px) {
  .ttl_cmn2.small2 {
    font-size: 1.1875rem
  }
}

.ttl_cmn2.mdl {
  font-size: 2rem
}

@media(min-width: 768px)and (max-width: 1199px) {
  .ttl_cmn2.mdl {
    font-size: 1.375rem
  }
}

@media(max-width: 767px) {
  .ttl_cmn2.mdl {
    font-size: 1.25rem
  }
}

.ttl_cmn2.large {
  font-size: 2.25rem
}

@media(min-width: 768px)and (max-width: 1199px) {
  .ttl_cmn2.large {
    font-size: 1.5rem
  }
}

@media(max-width: 767px) {
  .ttl_cmn2.large {
    font-size: 1.375rem
  }
}

.ttl_cmn2.mb0 {
  margin-bottom: 0
}

.txt_cmn {
  font-size: 1rem;
  font-weight: 500;
  line-height: 2
}

@media(max-width: 767px) {
  .txt_cmn {
    font-size: 0.875rem
  }
}

.txt_cmn.lh_w {
  line-height: 2.5
}

@media(max-width: 767px) {
  .txt_cmn.lh_w {
    line-height: 2.25
  }
}

.txt_cmn.lh_n {
  line-height: 1.66
}

.txt_cmn.tac {
  text-align: center
}

.txt_cmn.bold {
  font-weight: 700
}

.txt_cmn.color_pp {
  color: #f591b8
}

.txt_cmn.color_w {
  color: #fff
}

.txt_cmn.large {
  font-size: 1.125rem
}

@media(max-width: 767px) {
  .txt_cmn.large {
    font-size: 1rem
  }
}

.txt_cmn.mdl {
  font-size: 0.875rem
}

@media(max-width: 767px) {
  .txt_cmn.mdl {
    font-size: 0.75rem
  }
}

.txt_cmn.small {
  font-size: 0.75rem
}

@media(max-width: 767px) {
  .txt_cmn.small {
    font-size: 0.625rem
  }
}

.btn_cmn {
  width: -moz-fit-content;
  width: fit-content;
  max-width: 100%
}

.btn_cmn a {
  width: 280px;
  height: 70px;
  max-width: 100%;
  border-radius: 999px;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  position: relative
}

@media(max-width: 767px) {
  .btn_cmn a {
    width: 84vw;
    height: 3rem
  }
}

.btn_cmn a p {
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 1.5
}

@media(max-width: 767px) {
  .btn_cmn a p {
    font-size: 1.125rem
  }
}

.btn_cmn a p i {
  font-size: 1.125rem;
  margin-right: .4em
}

.btn_cmn a>i {
  font-size: 0.625rem;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 6%
}

.btn_cmn.large a {
  width: 304px;
  height: 83px
}

@media(max-width: 767px) {
  .btn_cmn.large a {
    width: 84vw;
    height: 3.5rem
  }
}

.btn_cmn.large a p {
  font-size: 1rem
}

@media(max-width: 767px) {
  .btn_cmn.large a p {
    font-size: 1rem
  }
}

.btn_cmn.small a {
  width: 240px;
  height: 64px
}

@media(max-width: 767px) {
  .btn_cmn.small a {
    width: 84vw;
    height: 3rem
  }
}

.btn_cmn.thin a {
  height: 48px
}

@media(max-width: 767px) {
  .btn_cmn.thin a {
    height: 2.5rem
  }
}

.btn_cmn.thin a p {
  font-size: 1.125rem
}

@media(max-width: 767px) {
  .btn_cmn.thin a p {
    font-size: 0.875rem
  }
}

.btn_cmn.angular a {
  border-radius: 5px
}

@media(max-width: 767px) {
  .btn_cmn.angular a {
    height: 4rem
  }
}

.btn_cmn.angular a p {
  font-size: 1.25rem
}

.btn_cmn.center {
  margin: 0 auto
}

.btn_cmn.bg_pp a {
  background-color: #f591b8;
  box-shadow: 0 5px #b55078;
  color: #fff
}

.btn_cmn.bg_pp a:hover {
  background-color: #9d4f6e;
  box-shadow: none;
  transform: translate3d(0, 5px, 0);
  transition: .5s ease
}

.btn_cmn.bg_pp2 a {
  background-color: #f591b8;
  color: #fff
}

.btn_cmn.bg_pp2 a:hover {
  background-color: #9d4f6e;
  transition: .5s ease
}

.btn_cmn.bg_k2 a {
  background-color: #333;
  color: #fff
}

.btn_cmn.bg_k2 a:hover {
  background-color: #666;
  transition: .5s ease
}

.side_cmn {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  align-content: unset
}

.side_cmn figure {
  width: 50%;
  text-align: center
}

@media(max-width: 767px) {
  .side_cmn figure {
    width: 100%;
    margin-bottom: 1rem
  }
}

.side_cmn .txt {
  width: 45.3703703704%
}

@media(max-width: 767px) {
  .side_cmn .txt {
    width: 100%
  }
}

.side_cmn.reverse {
  flex-direction: row-reverse
}

.side_cmn.a_start {
  align-items: flex-start
}

.side_cmn.product figure {
  width: 44.4444444444%
}

@media(min-width: 768px)and (max-width: 1199px) {
  .side_cmn.product figure {
    width: 100%
  }
}

@media(max-width: 767px) {
  .side_cmn.product figure {
    width: 100%
  }
}

.side_cmn.product .txt {
  width: 50%
}

@media(min-width: 768px)and (max-width: 1199px) {
  .side_cmn.product .txt {
    width: 100%
  }
}

@media(max-width: 767px) {
  .side_cmn.product .txt {
    width: 100%
  }
}

.over_cmn {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  align-content: unset;
  padding: 0rem calc(50vw - 50%) 0rem 0;
  margin: 0 calc(50% - 50vw);
  position: relative
}

@media(max-width: 767px) {
  .over_cmn {
    padding: 0
  }
}

.over_cmn figure {
  width: calc(100% - 640px);
  text-align: right
}

@media(min-width: 768px)and (max-width: 1199px) {
  .over_cmn figure {
    width: 49.0740740741%
  }
}

@media(max-width: 767px) {
  .over_cmn figure {
    width: 100%;
    margin-bottom: 1rem
  }
}

.over_cmn .txt {
  width: 580px
}

@media(min-width: 768px)and (max-width: 1199px) {
  .over_cmn .txt {
    width: 47.2222222222%
  }
}

@media(max-width: 767px) {
  .over_cmn .txt {
    width: 100%;
    padding: 0 8%
  }
}

@media(max-width: 767px) {
  .over_cmn:not(.reverse) figure {
    margin-right: 8vw
  }
}

.over_cmn.reverse {
  flex-direction: row-reverse;
  padding: 0rem 0 0rem calc(50vw - 50%)
}

@media(max-width: 767px) {
  .over_cmn.reverse {
    padding: 0
  }
}

.over_cmn.reverse figure {
  text-align: left
}

@media(max-width: 767px) {
  .over_cmn.reverse figure {
    margin-left: 8vw
  }
}

.over_cmn.a_start {
  align-items: flex-start
}

.over_cmn.concept {
  align-items: flex-start
}

.over_cmn.concept figure {
  width: calc(100% - 580px);
  text-align: right
}

@media(min-width: 768px)and (max-width: 1199px) {
  .over_cmn.concept figure {
    width: 50%
  }
}

@media(max-width: 767px) {
  .over_cmn.concept figure {
    width: 100%
  }
}

.over_cmn.concept .txt {
  width: 540px
}

@media(min-width: 768px)and (max-width: 1199px) {
  .over_cmn.concept .txt {
    width: 46.2962962963%
  }
}

@media(max-width: 767px) {
  .over_cmn.concept .txt {
    width: 100%
  }
}

.btn_naked {
  width: -moz-fit-content;
  width: fit-content;
  max-width: 100%
}

.btn_naked a {
  max-width: 100%;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  position: relative;
  color: #f591b8
}

.btn_naked a p {
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 1.5
}

@media(min-width: 768px)and (max-width: 1199px) {
  .btn_naked a p {
    font-size: 1.125rem
  }
}

@media(max-width: 767px) {
  .btn_naked a p {
    font-size: 1.125rem
  }
}

.btn_naked a>i {
  font-size: 0.625rem;
  line-height: 1;
  margin-left: 1em;
  position: relative;
  top: .2em
}

.btn_naked.small a p {
  font-size: 1rem
}

@media(max-width: 767px) {
  .btn_naked.small a p {
    font-size: 0.75rem
  }
}

.btn_naked.color_k a {
  color: #333
}

.btn_naked.right {
  margin: 0 0 0 auto
}

.home_second {
  height: 40vh;
  background: url(images/index/bg_second01.jpg) center center/cover no-repeat;
  position: relative
}

@media(min-width: 768px)and (max-width: 1199px) {
  .home_second {
    background-position: right 40% center
  }
}

@media(max-width: 767px) {
  .home_second {
    background-position: right 40% center
  }
}

.home_second .poa_cat {
  width: 346px;
  max-width: 18.0208333333vw;
  position: absolute;
  top: 40%;
  left: 18.0208333333vw
}

@media(min-width: 768px)and (max-width: 1199px) {
  .home_second .poa_cat {
    width: 30vw;
    max-width: unset;
    top: 55%;
    left: 4vw
  }
}

@media(max-width: 767px) {
  .home_second .poa_cat {
    width: 30vw;
    max-width: unset;
    top: 55%;
    left: 4vw
  }
}

.home_concept {
  padding: 35vh 0 7.5rem;
  position: relative;
  overflow: hidden
}

@media(min-width: 768px)and (max-width: 1199px) {
  .home_concept {
    padding: 12vh 0 5rem
  }
}

@media(max-width: 767px) {
  .home_concept {
    padding: 12vh 0 3rem
  }
}

.home_concept .inner {
  z-index: 1
}

.home_concept p.txt01 {
  margin-bottom: 3.5rem
}

@media(max-width: 767px) {
  .home_concept p.txt01 {
    margin-bottom: 1.8rem
  }
}

.home_concept .oval01 {
  max-width: 40.3645833333vw;
  position: absolute;
  top: 0;
  right: 1.5vw;
  transform: translateY(-30%)
}

.home_concept .oval02 {
  max-width: 25.625vw;
  position: absolute;
  bottom: 0;
  left: 0;
  transform: translate(-20%, 20%)
}

.home_slide {
  padding-bottom: 5rem
}

@media(max-width: 767px) {
  .home_slide {
    padding-bottom: 2.5rem
  }
}

.home_slide .loopslider {
  height: 280px;
  display: flex;
  align-items: center;
  overflow: hidden
}

@media(max-width: 767px) {
  .home_slide .loopslider {
    height: 37.3333333333vw
  }
}

.home_slide .loopslider ul {
  display: flex;
  animation: loop-slide 20s infinite linear 1s both
}

.home_slide .loopslider ul li {
  width: 394px;
  height: 280px;
  margin-right: 10px
}

@media(max-width: 767px) {
  .home_slide .loopslider ul li {
    width: 52.5333333333vw;
    height: 37.3333333333vw
  }
}

@keyframes loop-slide {
  from {
    transform: translateX(0)
  }

  to {
    transform: translateX(-100%)
  }
}

.home_slide .loopslider.slide-paused:hover ul {
  animation-play-state: paused
}

.home_feature {
  background: url(images/index/bg_feature01.jpg) center center/cover no-repeat
}

.home_feature .side_cmn:not(:last-child) {
  margin-bottom: 5rem
}

@media(max-width: 767px) {
  .home_feature .side_cmn:not(:last-child) {
    margin-bottom: 3rem
  }
}

.home_feature .side_cmn .num {
  font-size: 6.25rem;
  color: #f591b8;
  font-weight: 700;
  line-height: .9;
  margin-bottom: .1em
}

@media(min-width: 768px)and (max-width: 1199px) {
  .home_feature .side_cmn .num {
    font-size: 3.75rem
  }
}

@media(max-width: 767px) {
  .home_feature .side_cmn .num {
    font-size: 3rem
  }
}

.home_product {
  position: relative;
  overflow: hidden
}

.home_product .inner {
  z-index: 1
}

.home_product .unit:not(:last-child) {
  margin-bottom: 7rem
}

@media(min-width: 768px)and (max-width: 1199px) {
  .home_product .unit:not(:last-child) {
    margin-bottom: 4rem
  }
}

@media(max-width: 767px) {
  .home_product .unit:not(:last-child) {
    margin-bottom: 3rem
  }
}

.home_product .unit .ttl01 {
  background-color: #f591b8;
  border-radius: 999px;
  padding: .4em 1.5em;
  margin-bottom: 1.5em
}

@media(max-width: 767px) {
  .home_product .unit .ttl01 {
    padding: .4em .8em;
    margin-bottom: 1em
  }
}

.home_product .unit ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: stretch;
/*   margin-bottom: 4rem */
}

@media(min-width: 768px)and (max-width: 1199px) {
  .home_product .unit ul {
    margin-bottom: 2rem
  }
}

@media(max-width: 767px) {
  .home_product .unit ul {
    margin-bottom: 2rem
  }
}

.home_product .unit ul::after {
  content: "";
  width: 29.6296296296%
}

.home_product .unit ul li {
  width: 29.6296296296%;
	padding-bottom:3rem
}

@media(max-width: 767px) {
  .home_product .unit ul li {
    width: 100%
  }
}

@media(max-width: 767px) {
  .home_product .unit ul li:not(:last-child) {
    margin-bottom: 2rem
  }
}

.home_product .unit ul li figure {
  text-align: center;
  margin-bottom: .7rem
}

@media(max-width: 767px) {
  .home_product .unit ul li figure {
    margin-bottom: .3rem
  }
}

.home_product .unit ul li .ttl02 {
  margin-bottom: 1.5em
}

@media(max-width: 767px) {
  .home_product .unit ul li .ttl02 {
    margin-bottom: .8em
  }
}

.home_product .unit ul li .under {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center
}

.home_product .unit ul li .under .price {
  font-size: 1rem;
  font-weight: 700;
  line-height: 1
}

@media(min-width: 768px)and (max-width: 1199px) {
  .home_product .unit ul li .under .price {
    font-size: 0.875rem
  }
}

@media(max-width: 767px) {
  .home_product .unit ul li .under .price {
    font-size: 0.875rem
  }
}

.home_product .unit ul li .under .price em {
  font-size: 2rem
}

@media(min-width: 768px)and (max-width: 1199px) {
  .home_product .unit ul li .under .price em {
    font-size: 1.25rem
  }
}

@media(max-width: 767px) {
  .home_product .unit ul li .under .price em {
    font-size: 1.25rem
  }
}

.home_product .oval01,
.home_product .oval02,
.home_product .oval03,
.home_product .oval04 {
  position: absolute
}

.home_product .oval01 {
  max-width: 40.0520833333vw;
  top: 25%;
  right: 0;
  transform: translate(50%, -50%)
}

.home_product .oval02 {
  max-width: 21.1979166667vw;
  top: 35%;
  left: 8%;
  transform: translate(-50%, -50%)
}

.home_product .oval03 {
  max-width: 19.3229166667vw;
  top: 60%;
  right: 5%;
  transform: translate(50%, -50%)
}

.home_product .oval04 {
  max-width: 46.5104166667vw;
  top: 65%;
  left: 0;
  transform: translate(-50%, -50%)
}

.home_contact {
  background: url(images/index/bg_contact01.jpg) center center/cover no-repeat
}

.home_contact .colwrap {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-around;
  align-items: stretch
}

.home_contact .colwrap .col {
  width: 43.8888888889%;
  background-color: #fff;
  border: 5px solid #f591b8;
  border-radius: 1.5rem;
  padding: 2rem 3% 2.8rem
}

@media(max-width: 767px) {
  .home_contact .colwrap .col {
    width: 100%;
    padding: 1.5rem 4% 2rem
  }
}

@media(max-width: 767px) {
  .home_contact .colwrap .col:not(:last-child) {
    margin-bottom: 2rem
  }
}

.home_contact .colwrap .col p.txt01 {
  margin-bottom: 1.2rem
}

.home_contact .colwrap .col p.txt_sub {
  margin-top: .4rem;
  margin-bottom: 2rem
}

footer .fmain .snswrap {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center
}

footer .fmain .snswrap .icn:not(:last-child) {
  margin-right: 2.8rem
}

@media(max-width: 767px) {
  footer .fmain .snswrap .icn:not(:last-child) {
    margin-right: 1.5rem
  }
}

footer .fnav {
  background-color: #f591b8;
  padding: 1.5rem 0
}

@media(max-width: 767px) {
  footer .fnav {
    padding: 1rem 0
  }
}

footer .fnav ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center
}

footer .fnav ul li:not(:last-child) {
  margin-right: 1.5rem
}

@media(max-width: 767px) {
  footer .fnav ul li:not(:last-child) {
    margin-right: .8rem
  }
}

footer .fnav ul li a p {
  font-size: 1.125rem;
  color: #fff;
  font-weight: 700;
  line-height: 1.5
}

@media(max-width: 767px) {
  footer .fnav ul li a p {
    font-size: 0.75rem
  }
}

/*# sourceMappingURL=style.css.map */