/*! --------------------------------------------------------------
　　このCSSファイルは .scssファイルからコンパイルされたものです。
　　修正する際はscssファイルを編集するように注意してください。
--------------------------------------------------------------- */
.main_page {
  height: 30vh;
  background-color: #fcfbf9
}

@media(max-width: 767px) {
  .main_page {
    height: 30vw
  }
}

.main_page .inner {
  height: 100%;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  align-content: unset
}

.main_page .pagettl {
  color: #f591b8;
  font-weight: 700;
  line-height: 1.5;
  text-align: center
}

.main_page .pagettl em {
  font-size: 2rem;
  text-transform: uppercase
}

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

.main_page .pagettl span {
  display: block;
  font-size: 1rem
}

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

.breadcrumbs {
  padding: 1rem 0
}

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

.breadcrumbs ul {
  display: flex;
  flex-wrap: nowrap;
  justify-content: flex-start
}

.breadcrumbs ul li {
  font-size: 1rem;
  font-weight: 500;
  line-height: 1.5;
  text-transform: uppercase;
  margin-right: .8em
}

@media(max-width: 767px) {
  .breadcrumbs ul li {
    font-size: 0.75rem;
    margin-right: .4em
  }
}

.concept_first {
  position: relative
}

.concept_first .inner {
  z-index: 2
}

.concept_first .oval01 {
  max-width: 40.3645833333vw;
  position: absolute;
  bottom: 0;
  right: 0;
  transform: translate(50%, 30%);
  z-index: 1
}

.concept_first .oval02 {
  max-width: 19.8958333333vw;
  position: absolute;
  bottom: 0;
  left: 0;
  transform: translate(-20%, 50%);
  z-index: 1
}

.concept_support {
  background-color: #fcfbf9;
  position: relative
}

.concept_support::before,
.concept_support::after {
  content: "";
  width: 100vw;
  height: 37.3590982287vw;
  background: url(images/concept/footprint01.svg) center center/100% auto no-repeat;
  position: absolute
}

.concept_support::before {
  top: 0;
  left: 0;
  transform: translateX(-50%)
}

@media(max-width: 767px) {
  .concept_support::before {
    transform: translateX(-25%)
  }
}

.concept_support::after {
  bottom: 0;
  right: 0;
  transform: translateX(50%)
}

@media(max-width: 767px) {
  .concept_support::after {
    transform: translateX(25%)
  }
}

.concept_support .inner {
  z-index: 1
}

.concept_support ul li {
  background-color: #fff;
  border-radius: 1.2rem;
  padding: 1.8rem 2%
}

@media(max-width: 767px) {
  .concept_support ul li {
    padding: 1.2rem 4%
  }
}

.concept_support ul li:not(:last-child) {
  margin-bottom: 3.5rem
}

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

.concept_support ul li:nth-child(odd) {
  margin-right: 6.6666666667%
}

@media(max-width: 767px) {
  .concept_support ul li:nth-child(odd) {
    margin-right: 0
  }
}

.concept_support ul li:nth-child(even) {
  margin-left: 6.6666666667%
}

@media(max-width: 767px) {
  .concept_support ul li:nth-child(even) {
    margin-left: 0
  }
}

.concept_slide {
  padding: 5rem 0 0
}

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

.concept_history .over_cmn:not(:last-child) {
  margin-bottom: 3.5rem
}

@media(max-width: 767px) {
  .concept_history .over_cmn:not(:last-child) {
    margin-bottom: 2.5rem
  }
}

.concept_history .over_cmn .txt {
  padding-top: 2rem
}

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

.features_first .side_cmn:not(:last-child) {
  margin-bottom: 4.5rem
}

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

.features_first .side_cmn h3.ttl_cmn {
  margin-bottom: .7em
}

.blog_list ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: stretch;
  gap: 4rem 2.7777777778%;
  margin-bottom: 4.5rem
}

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

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

.blog_list ul li {
  width: 31.4814814815%
}

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

.blog_list ul li figure {
  text-align: center;
  margin-bottom: .5rem
}

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

.blog_list ul li figure img {
  width: 100%;
  -o-object-fit: cover;
  object-fit: cover
}

.blog_list ul li time {
  color: #b55078;
  font-weight: 500
}

.blog_list ul li .ttl02 {
  margin-bottom: .5em
}

.wp-pagenavi {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  align-content: unset;
  text-align: center
}

.wp-pagenavi a,
.wp-pagenavi span {
  font-size: 1rem;
  font-weight: 500;
  white-space: nowrap;
  text-align: center;
  margin: 0 15px
}

@media(max-width: 767px) {

  .wp-pagenavi a,
  .wp-pagenavi span {
    margin: 0 5px
  }
}

.wp-pagenavi a:hover {
  opacity: .7
}

.wp-pagenavi span.current {
  color: #b55078
}

.wp-pagenavi .previouspostslink,
.wp-pagenavi .nextpostslink {
  font-size: 0.75rem;
  line-height: 1;
  text-align: center
}

.top_article {
  padding-top: 5rem
}

@media(max-width: 767px) {
  .top_article {
    padding-top: 2rem
  }
}

.top_article .ttlwrap {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: flex-end;
  padding-bottom: 1.5rem;
  border-bottom: 2px solid #f691b8
}

@media(max-width: 767px) {
  .top_article .ttlwrap {
    padding-bottom: 1rem
  }
}

.top_article .ttlwrap .ttl_post {
  width: 80%
}

@media(max-width: 767px) {
  .top_article .ttlwrap .ttl_post {
    width: 100%;
    margin-bottom: .5rem
  }
}

@media(max-width: 767px) {
  .top_article .ttlwrap time {
    width: 100%;
    text-align: right
  }
}

.post_content_wrap {
  padding-top: 2rem;
  padding-bottom: 7rem;
  position: relative
}

@media(min-width: 768px)and (max-width: 1199px) {
  .post_content_wrap {
    padding-bottom: 3.5rem
  }
}

@media(max-width: 767px) {
  .post_content_wrap {
    padding-top: 1.5rem;
    padding-bottom: 3rem
  }
}

.post_content_wrap>.inner {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: stretch
}

.post_content_wrap main {
  width: 61.1111111111%
}

@media(max-width: 767px) {
  .post_content_wrap main {
    width: 100%;
    margin-bottom: 2.5rem
  }
}

.post_content_wrap aside {
  width: 25.9259259259%
}

@media(max-width: 767px) {
  .post_content_wrap aside {
    width: 100%
  }
}

.post_content_wrap aside .lump:not(:last-child) {
  margin-bottom: 2.5rem
}

@media(max-width: 767px) {
  .post_content_wrap aside .lump:not(:last-child) {
    margin-bottom: 1.5rem
  }
}

.post_content_wrap .ttl_side01 {
  border-left: .25em solid currentColor;
  padding-left: .5em;
  font-size: 1.25rem;
  color: #685d5d;
  font-weight: 700;
  line-height: 1.5;
  margin-bottom: 1.2em
}

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

.post_content_wrap .ul_side_post li:not(:last-child) {
  margin-bottom: 3rem
}

@media(max-width: 767px) {
  .post_content_wrap .ul_side_post li:not(:last-child) {
    margin-bottom: 1.5rem
  }
}

.post_content_wrap .ul_side_post li figure {
  margin-bottom: .4rem
}

.blog_single:not(:last-child) {
  margin-bottom: 2.5rem
}

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

.blog_single article>figure {
  text-align: center
}

.blog_single article>figure:not(:last-child) {
  margin-bottom: 1.8rem
}

@media(max-width: 767px) {
  .blog_single article>figure:not(:last-child) {
    margin-bottom: 1rem
  }
}

.blog_single article>p:not(:last-child) {
  margin-bottom: 2.5rem
}

@media(max-width: 767px) {
  .blog_single article>p:not(:last-child) {
    margin-bottom: 1.8rem
  }
}

.blog_single h2,
.blog_single h3,
.blog_single h4,
.blog_single p,
.blog_single figcaption {
  font-family: "Zen Maru Gothic", serif
}

.blog_single h2:not(.ttl_post) {
  background-color: #f691b8;
  padding: .4em .8em;
  font-size: 1.75rem;
  color: #fff;
  font-weight: 700;
  line-height: 1.5;
  margin-bottom: 1em
}

@media(max-width: 767px) {
  .blog_single h2:not(.ttl_post) {
    font-size: 1.25rem
  }
}

.blog_single h3:not(.ttl01) {
  background-color: #fcfbf9;
  padding: .3em .7em;
  font-size: 1.5rem;
  color: #f691b8;
  font-weight: 700;
  line-height: 1.5;
  margin-bottom: 1em
}

@media(max-width: 767px) {
  .blog_single h3:not(.ttl01) {
    font-size: 1.125rem
  }
}

.blog_single h4 {
  border-left: .25em solid currentColor;
  padding-left: .5em;
  font-size: 1.25rem;
  color: #685d5d;
  font-weight: 700;
  line-height: 1.5;
  margin-bottom: .8em
}

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

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

@media(max-width: 767px) {
  .blog_single p {
    font-size: 0.8125rem
  }
}

.product_single .slick-mainview {
  margin-bottom: 1.8rem
}

@media(max-width: 767px) {
  .product_single .slick-mainview {
    margin-bottom: 1rem
  }
}

.product_single .slick-slider {
  line-height: 0
}

.product_single .side_cmn:not(:last-child) {
  margin-bottom: 6rem
}

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

.product_single .side_cmn h4.txt_cmn {
  margin-bottom: .4em
}

.product_single h2.ttl_cmn2 {
  margin-bottom: 1.2em
}

.product_single .lump_price {
  font-size: 1rem;
  font-weight: 700;
  line-height: 1;
  margin-bottom: 1.2rem
}

@media(min-width: 768px)and (max-width: 1199px) {
  .product_single .lump_price {
    font-size: 0.875rem
  }
}

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

.product_single .lump_price em {
  font-size: 2rem
}

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

@media(max-width: 767px) {
  .product_single .lump_price em {
    font-size: 1.25rem
  }
}

.product_single .lump_size {
  margin-bottom: 1.8rem
}

@media(max-width: 767px) {
  .product_single .lump_size {
    margin-bottom: 1.2rem
  }
}

.product_single .lump_size .boxwrap {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: stretch
}

.product_single .lump_size .boxwrap .box {
  border: 1px solid #e3e3e3;
  border-radius: 5px;
  padding: .2rem 1rem;
  font-size: 1rem;
  font-weight: 500;
  line-height: 1.3
}

@media(max-width: 767px) {
  .product_single .lump_size .boxwrap .box {
    font-size: 0.75rem
  }
}

.product_single .lump_size .boxwrap .box:not(:last-child) {
  margin-right: 10px
}

.product_single .lump_size .boxwrap .box em {
  font-size: 2rem;
  line-height: 1;
  font-weight: 700;
  margin: 0 .1em 0 .2em
}

@media(max-width: 767px) {
  .product_single .lump_size .boxwrap .box em {
    font-size: 1.25rem
  }
}

.product_single .lump_size .boxwrap .box b {
  font-weight: 700
}

.product_single .lump_color {
  margin-bottom: 2.5rem
}

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

.product_single .lump_color .color_wrap {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: center
}

.product_single .lump_color .color_wrap a {
  display: inline-block;
  width: 36px;
  height: 36px;
  border-radius: 50%
}

.product_single .lump_color .color_wrap a:not(:last-child) {
  margin-right: 10px
}

.product_single .lump_color .color_wrap a.color_ash {
  background-color: #ebebeb
}

.product_single .lump_color .color_wrap a.color_gr {
  background-color: #4a4a4a
}

.product_single .lump_color .color_wrap a.color_br {
  background-color: #76573C
}

.product_single .lump_color .color_wrap a.color_wh {
  background-color: #ffffe0
}

.product_single .lump_color .color_wrap a.color_bk {
  background-color: #000000
}

.product_single .lump_color .color_wrap a.color_light_natural {
  background-color: #F5DEB3
}

.product_single .lump_color .color_wrap a.color_natural {
  background-color: #deb887
}

.product_single .lump_color .color_wrap a.color_deep_br {
  background-color: #57462B
}

.product_single .ttl01 {
  margin-bottom: .5em
}

.product_single .tbl_product {
  margin-bottom: 3.5rem
}

@media(max-width: 767px) {
  .product_single .tbl_product {
    margin-bottom: 2rem
  }
}

.product_single .btnwrap {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  margin-bottom: 3.3rem
}

@media(max-width: 767px) {
  .product_single .btnwrap {
    margin-bottom: 1px/8rem
  }
}

.product_single .btnwrap .btn_cmn:not(:last-child) {
  margin-right: 2rem
}

@media(max-width: 767px) {
  .product_single .btnwrap .btn_cmn:not(:last-child) {
    margin: 0 0 1rem 0
  }
}

.product_single .btn_back {
  width: -moz-fit-content;
  width: fit-content;
  margin: 0 auto
}

.product_single .btn_back a p {
  font-size: 1rem;
  color: #f591b8;
  font-weight: 700;
  line-height: 1.5
}

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

.tbl_product th,
.tbl_product td {
  font-size: 1rem;
  font-weight: 500;
  line-height: 2;
  padding: 1rem 0;
  border-bottom: 1px solid #e3e3e3
}

@media(max-width: 767px) {

  .tbl_product th,
  .tbl_product td {
    font-size: 0.75rem;
    padding: .5rem 0
  }
}

.tbl_product th {
  width: 20%;
  -moz-text-align-last: left;
  text-align-last: left;
  vertical-align: top
}

@media(max-width: 767px) {
  .tbl_product th {
    width: 25%
  }
}

.tbl_product td {
  width: 80%
}

@media(max-width: 767px) {
  .tbl_product td {
    width: 75%
  }
}

.tbl_contact {
  width: 100%;
  table-layout: fixed;
  border-collapse: separate;
  border-spacing: 0 3.5rem
}

@media(max-width: 767px) {
  .tbl_contact {
    border-spacing: 0 1.5rem
  }
}

.tbl_contact .col_th {
  width: 30%
}

@media(max-width: 767px) {
  .tbl_contact .col_th {
    display: none
  }
}

.tbl_contact .col_td {
  width: 70%
}

@media(max-width: 767px) {
  .tbl_contact .col_td {
    display: none
  }
}

.tbl_contact th {
  font-size: 1rem;
  font-weight: 700;
  text-align: left;
  position: relative
}

@media(max-width: 767px) {
  .tbl_contact th {
    display: block;
    font-size: 0.875rem
  }
}

.tbl_contact td {
  font-size: 1rem;
  font-weight: 500
}

@media(max-width: 767px) {
  .tbl_contact td {
    display: block;
    font-size: 0.875rem
  }
}

.tbl_contact .required::before,
.tbl_contact .any::before {
  border-radius: 2px;
  font-size: 0.8125rem;
  font-weight: 500;
  line-height: 1;
  padding: .2rem .8rem;
  margin-right: .8rem;
  position: relative;
  top: -0.1rem
}

@media(max-width: 767px) {

  .tbl_contact .required::before,
  .tbl_contact .any::before {
    padding: .1rem .5rem;
    margin-right: .6rem
  }
}

.tbl_contact .required::before {
  content: "必須";
  background-color: #f591b8;
  color: #fff
}

.tbl_contact .any::before {
  content: "任意";
  background-color: #9b9b9b;
  color: #fff
}

.tbl_contact td input[type=text],
.tbl_contact td input[type=tel],
.tbl_contact td input[type=email],
.tbl_contact td input[type=date],
.tbl_contact td select {
  background: #fcfbf9;
  border-radius: 5px;
  padding: 3px 5px
}

.tbl_contact td input[type=text],
.tbl_contact td input[type=email] {
  width: 100%
}

.tbl_contact td input[type=tel] {
  width: 100%
}

.tbl_contact td input[type=date] {
  width: 30%
}

.tbl_contact td select {
  width: 40%
}

.tbl_contact td textarea {
  width: 100%;
  height: 270px;
  background: #fcfbf9;
  border-radius: 5px;
  padding: 5px
}

.tbl_contact td span.wpcf7-list-item {
  margin: 0 2em 0 0
}

.th_textarea {
  vertical-align: top
}

.th_textarea.required::before,
.th_textarea.any::before {
  top: .8rem
}

@media(max-width: 767px) {

  .th_textarea.required::before,
  .th_textarea.any::before {
    top: .5rem
  }
}

.btn_submit {
  display: table;
  margin: 0 auto;
  font-size: 1.5rem;
  color: #fff;
  font-weight: 700;
  line-height: 1.5;
  position: relative
}

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

.btn_submit input[type=submit] {
  width: 240px;
  height: 64px;
  background-color: #f591b8;
  border-radius: 999px;
  text-align: center
}

@media(max-width: 767px) {
  .btn_submit input[type=submit] {
    width: 84vw;
    height: 3rem
  }
}

.btn_submit i {
  font-size: 0.625rem;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 8%
}

.btn_submit input[type=submit][disabled] {
  opacity: .3
}

.btn_submit input[type=submit]:not([disabled]):hover {
  cursor: pointer;
  opacity: .8
}

.ajax-loader {
  display: none !important
}

.wpcf7-spinner {
  display: none !important
}

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

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

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