@charset "utf-8";
.slick-slider {
  position: relative;
  display: block;
  box-sizing: border-box;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-touch-callout: none;
  -khtml-user-select: none;
  -ms-touch-action: pan-y;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent
}
.slick-list {
  position: relative;
  display: block;
  overflow: hidden;
  margin: 0;
  padding: 0
}
.slick-list:focus {
  outline: none
}
.slick-list.dragging {
  cursor: pointer;
  cursor: hand
}
.slick-slider .slick-track, .slick-slider .slick-list {
  -webkit-transform: translate3d(0, 0, 0);
  -moz-transform: translate3d(0, 0, 0);
  -ms-transform: translate3d(0, 0, 0);
  -o-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0)
}
.slick-track {
  position: relative;
  top: 0;
  left: 0;
  display: block;
  margin-left: auto;
  margin-right: auto
}
.slick-track:before, .slick-track:after {
  display: table;
  content: ''
}
.slick-track:after {
  clear: both
}
.slick-loading .slick-track {
  visibility: hidden
}
.slick-slide {
  display: none;
  float: left;
  height: 100%;
  min-height: 1px
}
[dir='rtl'] .slick-slide {
  float: right
}
.slick-slide img {
  display: block
}
.slick-slide.slick-loading img {
  display: none
}
.slick-slide.dragging img {
  pointer-events: none
}
.slick-initialized .slick-slide {
  display: block
}
.slick-loading .slick-slide {
  visibility: hidden
}
.slick-vertical .slick-slide {
  display: block;
  height: auto;
  border: 1px solid transparent
}
.slick-arrow.slick-hidden {
  display: none
}
abbr, acronym, address, applet, article, aside, audio, b, big, blockquote, body, canvas, caption, center, cite, code, dd, del, details, dfn, div, dl, dt, em, embed, fieldset, figcaption, figure, footer, form, h1, h2, h3, h4, h5, h6, header, hgroup, i, iframe, img, ins, kbd, label, legend, li, mark, menu, nav, object, ol, output, p, pre, q, ruby, s, samp, section, small, span, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, time, tr, tt, u, ul, var, video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
  box-sizing: border-box;
  word-break: break-all;
  word-wrap: break-word
}
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
  display: block
}
body {
  background-color: #fff;
  line-height: 1
}
blockquote, q {
  quotes: none
}
blockquote:after, blockquote:before, q:after, q:before {
  content: '';
  content: none
}
table {
  border-collapse: collapse;
  border-spacing: 0
}
body {
  position: relative;
  width: 100%;
  -webkit-text-size-adjust: 100%;
  font-family: "Noto Serif JP", serif;
  color: #181818;
  font-weight: 500
}
body > iframe, body > img {
  display: none
}
html {
  font-size: 10px;
  font-size: 1.3333vw
}
.sp {
  display: block !important
}
.pc {
  display: none !important
}
@media (min-width:751px) {
  html {
    font-size: .9259vw
  }
  .sp {
    display: none !important
  }
  .pc {
    display: block !important
  }
}
@media (min-width:1080px) {
  html {
    font-size: 10px
  }
}
ul, ol {
  list-style: none
}
img {
  width: 100%;
  height: auto;
  display: block
}
#wrapper {
  width: 100%;
  margin: 0 auto
}
#header {
  padding: 0 0 2.8rem;
  background-color: #700029;
  background-image: url(../img/page_deco_sp.png);
  background-repeat: repeat-x;
  background-position: center bottom;
  background-size: auto 2.8rem;
  overflow: hidden
}
.header_block {
  display: flex;
  justify-content: space-between
}
.header_logo {
  width: 20rem;
  margin: 2.2rem 2rem
}
.header_link {
  margin-right: 1.5rem;
  margin-bottom: .9rem;
  width: 15rem;
  display: flex;
  justify-content: space-between;
  align-items: center;
  color: #fff;
  font-size: 3.35rem;
  letter-spacing: .3rem
}
.header_link_en > a {
  color: #fff;
  text-decoration: none
}
.header_link_en > a:hover {
  color: #dabd80
}
.header_link_ja {
  color: #dabd80
}
#mv {
  width: 100%;
  overflow: hidden
}
.intro_ttl {
  margin: 0 auto 4rem;
  padding: 2.7rem 0;
  background-color: #700029;
  color: #fff;
  font-weight: 400;
  font-size: 2.6rem;
  line-height: 1;
  text-align: center
}
.intro_flex {
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 0 auto 4.2rem
}
.intro_flex p {
  width: 31.9rem;
  margin: 0 1.6rem
}
.intro_btn {
  width: 68.8rem;
  margin: 0 auto 1.8rem
}
.intro_btn .sp.on {
  display: none !important
}
.intro_btn:hover .sp.off {
  display: none !important
}
.intro_btn:hover .sp.on {
  display: block !important
}
.intro_txt01 {
  width: 66rem;
  margin: 0 auto 2rem;
  padding: 0 0 0 1em;
  text-indent: -1em;
  font-weight: 400;
  font-size: 1.8rem;
  line-height: 1.333;
  font-family: "Noto Sans JP", sans-serif
}
#about {
  background-color: #f4ebd9;
  background-image: url(../img/about_bg01_sp.png), url(../img/about_bg02_sp.png);
  background-repeat: no-repeat, no-repeat;
  background-position: center top, center bottom;
  background-size: 100% auto, 100% auto;
  overflow: hidden
}
.tel_area {
  margin: 1.8rem auto 2rem;
  padding: 2rem 0 2.6rem;
  background: #f2d28e;
}
.tel_area_main {
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: 60rem;
  margin: 0 auto 1.8rem
}
.tel_area_icon {
  width: 6.9rem
}
.tel_area_txt {
  font-weight: bold;
  font-size: 2.4rem;
  line-height: 1.0833333333;
  text-align: center
}
.tel_area_number {
  color: #700029;
  font-weight: bold;
  font-size: 6rem;
  font-family: 'Noto Serif JP', serif
}
.tel_area_number a {
  color: #700029;
  text-decoration: none
}
.tel_area_notes {
  width: 60rem;
  margin: 0 auto;
  font-weight: bold;
  font-size: 1.8rem;
  line-height: 1.2;
  font-family:"Yu Gothic", "游ゴシック", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
}
.tel_area_feature03 {
  width: 67rem;
  margin: 0 auto 5rem;
}
.tel_area_message {
  margin: 5rem auto 7.5rem;
}
.about_ttl {
  margin: 5rem auto;
  color: #700029;
  font-weight: 700;
  font-size: 4.4rem;
  line-height: 1.364;
  text-align: center
}
.about_txt01 {
  position: relative;
  width: 71rem;
  margin: 0 auto 6rem;
  padding: 3rem 0 3.8rem;
  background-color: #700029;
  color: #fff;
  font-weight: 600;
  font-size: 4.4rem;
  line-height: 1.318;
  text-align: center
}
.about_txt01:before {
  content: "";
  position: absolute;
  z-index: 2;
  top: 1rem;
  left: 1rem;
  width: 10rem;
  height: 10rem;
  border-top: .2rem solid #dabd80;
  border-left: .2rem solid #dabd80
}
.about_txt01:after {
  content: "";
  position: absolute;
  z-index: 2;
  bottom: 1rem;
  right: 1rem;
  width: 10rem;
  height: 10rem;
  border-bottom: .2rem solid #dabd80;
  border-right: .2rem solid #dabd80
}
.about_txt01 span {
  color: #dabd80
}
.achievement_ttl {
  width: 71rem;
  margin: 0 auto 4rem;
  padding: .5rem 0 1.1rem 3rem;
  background-image: url(../img/icon_head01_sp.png);
  background-repeat: no-repeat;
  background-position: left center;
  background-size: 1rem auto;
  font-weight: 700;
  font-size: 4.2rem;
  line-height: 1
}
.achievement_txt01 {
  width: 66.9rem;
  margin: 0 auto
}
.achievement_txt01 .sp {
  margin-bottom: 1.6rem
}
.achievement_txt02 {
  width: 71rem;
  margin: 0 auto 4rem;
  font-size: 1.8rem;
  line-height: 1;
  font-family: "Noto Sans JP", sans-serif;
  text-align: center
}
.achievement_img01 {
  width: 71rem;
  margin: 0 auto .8rem
}
.achievement_txt03 {
  width: 71rem;
  margin: 0 auto 8rem;
  font-weight: 500;
  font-size: 1.8rem;
  line-height: 1;
  font-family: "Noto Sans JP", sans-serif
}
.brand_ttl {
  width: 71rem;
  margin: 0 auto 3rem;
  padding: .5rem 0 1.1rem 3rem;
  background-image: url(../img/icon_head01_sp.png);
  background-repeat: no-repeat;
  background-position: left center;
  background-size: 1rem auto;
  font-weight: 700;
  font-size: 4.2rem;
  line-height: 1
}
.brand_txt01 {
  margin: 0 auto 2rem;
  color: #700029;
  font-weight: 700;
  font-size: 4.2rem;
  line-height: 1.571;
  text-align: center
}
.brand_txt01 span {
  background: linear-gradient(transparent 50%, #dabd80 50%, #dabd80 90%, transparent)
}
.brand_img01 {
  width: 59rem;
  margin: 0 auto 10rem
}
.feature01_ttl {
  margin: 0 auto 6rem;
  padding: 4rem 0 3.5rem;
  background-image: url(../img/ttl_bg.png);
  background-repeat: repeat;
  background-position: center center;
  background-size: 11.5rem auto;
  color: #fff;
  font-weight: 600;
  font-size: 4rem;
  line-height: 1.4;
  text-align: center
}
.feature01_ttl-img {
  display: block;
  width: 44.2rem;
  margin: 0 auto 2rem
}
.feature01_img01 {
  width: 67rem;
  margin: 0 auto 5rem
}
.feature01_txt01 {
  width: 67rem;
  margin: 0 auto 8rem;
  font-weight: 500;
  font-size: 2.4rem;
  line-height: 1.667
}
.store_ttl {
  width: 67rem;
  margin: 0 auto 4rem;
  padding: .4rem 0 .5rem 3rem;
  color: #700029;
  background-image: url(../img/icon_head02_sp.png);
  background-repeat: no-repeat;
  background-position: left center;
  background-size: 1rem auto;
  font-weight: 700;
  font-size: 4.2rem;
  line-height: 1
}
.store_ttl span {
  display: block;
  margin: 2.5rem 0 0;
  font-size: 3.2rem
}
.store_block01 {
  display: flex;
  width: 67rem;
  margin: 0 auto 2rem;
  padding: 2rem;
  background-color: #f4ebd9
}
.store_block02 {
  display: flex;
  width: 67rem;
  margin: 0 auto 10rem;
  padding: 2rem;
  background-color: #f4ebd9
}
.store_img01 {
  width: 31rem;
  margin: 0 3rem 0 0
}
.store_txt01 {
  margin: 3.5rem 0 2.5rem;
  color: #700029;
  font-weight: 700;
  font-size: 2.8rem;
  line-height: 1
}
.store_txt02 {
  font-weight: 500;
  font-size: 2.4rem;
  line-height: 1.667;
  font-family: "Noto Sans JP", sans-serif
}
.store_img02 {
  width: 10.9rem;
  margin: 0 auto 2rem
}
.feature02_ttl {
  margin: 0 auto;
  padding: 4rem 0 3.5rem;
  background-image: url(../img/ttl_bg.png);
  background-repeat: repeat;
  background-position: center center;
  background-size: 11.5rem auto;
  color: #fff;
  font-weight: 600;
  font-size: 4rem;
  line-height: 1.4;
  text-align: center
}
.feature02_ttl-img {
  display: block;
  width: 44.2rem;
  margin: 0 auto 2rem
}
.feature02_bg {
  background-color: #f4ebd9;
  background-image: url(../img/feature02_bg01_sp.png), url(../img/feature02_bg02_sp.png);
  background-repeat: no-repeat, no-repeat;
  background-position: center top, center bottom;
  background-size: 100% auto, 100% auto;
  overflow: hidden
}
.feature02_img01 {
  width: 67rem;
  margin: 6rem auto 3rem
}
.feature02_txt01 {
  width: 67rem;
  margin: 0 auto 4rem;
  font-weight: 500;
  font-size: 2.4rem;
  line-height: 1.667
}
.feature02_txt02 {
  width: 67rem;
  margin: 0 auto 7rem;
  font-weight: 500;
  font-size: 2.4rem;
  line-height: 1.667
}
.result_ttl {
  margin: 0 auto 4rem;
  color: #700029;
  font-weight: 700;
  font-size: 3.2rem;
  line-height: 1;
  text-align: center
}
.result_ttl-img {
  display: block;
  width: 47.1rem;
  margin: 0 auto 2rem
}
.result_ttl-small {
  font-size: 2.4rem
}
.result_list {
  width: 67rem;
  margin: 0 auto 10rem
}
.result_list li {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  margin: 0 auto 3rem
}
.result_list-block {
  width: 33rem
}
.result_list-block div {
  margin: 0 0 1rem
}
.result_list-block p {
  font-weight: 700;
  font-size: 1.8rem;
  line-height: 1
}
.feature03_ttl {
  margin: 0 auto 6rem;
  padding: 4rem 0 3.5rem;
  background-image: url(../img/ttl_bg.png);
  background-repeat: repeat;
  background-position: center center;
  background-size: 11.5rem auto;
  color: #fff;
  font-weight: 600;
  font-size: 4rem;
  line-height: 1.4;
  text-align: center
}
.feature03_ttl-img {
  display: block;
  width: 44.2rem;
  margin: 0 auto 2rem
}
.feature03_img01 {
  width: 100%;
  margin: 0 auto 3rem;
  overflow: hidden
}
.feature03_txt01 {
  width: 67rem;
  margin: 0 auto 2rem;
  color: #700029;
  font-weight: 700;
  font-size: 4.2rem;
  line-height: 1.429;
  text-align: center
}
.feature03_txt02 {
  width: 67rem;
  margin: 0 auto 4rem;
  font-weight: 500;
  font-size: 2.4rem;
  line-height: 1.667
}
.feature03_txt03 {
  width: 67rem;
  margin: 0 auto 7rem;
  font-weight: 500;
  font-size: 2.4rem;
  line-height: 1.667
}
.feature03_block01 {
  width: 67rem;
  margin: 0 auto;
  padding: 3rem 3rem 3.5rem;
  background-color: #f4ebd9
}
.feature03_img02 {
  width: 61rem;
  margin: 0 auto 3rem
}
.feature03_img03 {
  width: 43.4rem;
  margin: 0 auto 2rem
}
.feature03_txt04 {
  width: 61rem;
  margin: 0 auto;
  font-weight: 500;
  font-size: 2.4rem;
  line-height: 1.667
}
.feature04_ttl {
  margin: 0 auto;
  padding: 4rem 0 3.5rem;
  background-image: url(../img/ttl_bg.png);
  background-repeat: repeat;
  background-position: center center;
  background-size: 11.5rem auto;
  color: #fff;
  font-weight: 600;
  font-size: 4rem;
  line-height: 1.4;
  text-align: center
}
.feature04_ttl-img {
  display: block;
  width: 44.2rem;
  margin: 0 auto 2rem
}
.feature04_bg {
  background-color: #f4ebd9;
  background-image: url(../img/feature04_bg01_sp.png);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
  overflow: hidden
}
.feature04_txt01 {
  width: 67rem;
  margin: 5rem auto 3rem;
  font-weight: 500;
  font-size: 2.4rem;
  line-height: 1.667
}
.feature04_img01 {
  width: 67rem;
  margin: 0 auto 10rem
}
.feature05_ttl {
  margin: 0 auto 4.5rem;
  padding: 4rem 0 3.5rem;
  background-image: url(../img/ttl_bg.png);
  background-repeat: repeat;
  background-position: center center;
  background-size: 11.5rem auto;
  color: #fff;
  font-weight: 600;
  font-size: 4rem;
  line-height: 1.4;
  text-align: center
}
.feature05_ttl-img {
  display: block;
  width: 44.2rem;
  margin: 0 auto 2rem
}
.feature05_txt01 {
  margin: 0 auto 5rem;
  color: #700029;
  font-weight: 700;
  font-size: 4.2rem;
  line-height: 1.429;
  text-align: center
}
.option_ttl {
  width: 67rem;
  margin: 0 auto 3rem;
  padding: .5rem 0 1.3rem 1.5rem;
  background-image: url(../img/icon_head01_sp.png);
  background-repeat: no-repeat;
  background-position: left center;
  background-size: 1rem auto;
  font-weight: 700;
  font-size: 4rem;
  line-height: 1
}
.option_ttl span {
  font-size: 2.4rem
}
.option_slick {
  position: relative;
  width: 71rem;
  margin: 0 auto 13rem
}
.option_slick-slide {
  position: relative;
  width: 67rem !important;
  height: 76rem;
  margin: 0 2rem;
  background-color: #f4ebd9
}
.option_slick-slide:after {
  content: "";
  position: absolute;
  top: 1.5rem;
  left: 1.5rem;
  width: 64rem;
  height: calc(100% - 3rem);
  border: .2rem solid #dabd80
}
.option_slick-img {
  width: 58rem;
  margin: 4rem auto
}
.option_slick-ttl {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 35rem;
  height: 6.4rem;
  margin: 0 auto 2rem;
  background-color: #700029;
  color: #fff;
  font-weight: 700;
  font-size: 3rem;
  font-family: "Noto Sans JP", sans-serif
}
.option_slick-txt {
  width: 58rem;
  margin: 0 auto;
  color: #4c4c4c;
  font-weight: 500;
  font-size: 2.4rem;
  line-height: 1.833;
  font-family: "Noto Sans JP", sans-serif
}
.slick-arrow {
  position: absolute;
  z-index: 3;
  top: 50%;
  width: 5.2rem;
  cursor: pointer
}
.slider-prev {
  left: 0;
  transform: translate(0, -50%)
}
.slider-next {
  right: 0;
  transform: translate(0, -50%) scale(-1, 1)
}
.slick-dots {
  display: flex;
  justify-content: center;
  align-items: center;
  position: absolute;
  z-index: 2;
  bottom: -5.5rem;
  left: 0;
  width: 100%;
  cursor: pointer
}
.slick-dots li {
  width: 1.4rem;
  height: 1.4rem;
  margin: 0 2rem;
  background-color: #c6c6c6;
  border-radius: 50%
}
.slick-dots li.slick-active {
  background-color: #700029
}
.slick-dots li button {
  display: none
}
.order_ttl {
  width: 67rem;
  margin: 0 auto 2rem;
  padding: .9rem 0 .9rem 2.5rem;
  background-image: url(../img/icon_head01_sp.png);
  background-repeat: no-repeat;
  background-position: left center;
  background-size: 1rem auto;
  font-weight: 700;
  font-size: 4rem;
  line-height: 1
}
.order_txt01 {
  width: 67rem;
  margin: 0 auto 3rem;
  font-weight: 500;
  font-size: 2.4rem;
  line-height: 1.667
}
.order_img01 {
  width: 67rem;
  margin: 0 auto 2rem
}
.order_list {
  display: flex;
  justify-content: space-between;
  width: 67rem;
  margin: 0 auto 8rem
}
.order_list div {
  width: 16.3rem
}
.case_ttl {
  margin: 0 auto 3rem;
  color: #700029;
  font-weight: 700;
  font-size: 3.2rem;
  text-align: center
}
.case_ttl span {
  display: block;
  width: 47.1rem;
  margin: 0 auto 2rem
}
.case_txt01 {
  width: 67rem;
  margin: 0 auto 3rem;
  font-weight: 500;
  font-size: 2.4rem;
  line-height: 1.667
}
.case_img01 {
  width: 67rem;
  margin: 0 auto 10rem
}
.voice_bg {
  padding: 0 0 1rem;
  background-color: #dabd80;
  background-image: url(../img/voice_bg01_sp.png), url(../img/voice_bg02_sp.png);
  background-repeat: no-repeat, no-repeat;
  background-position: center top, center bottom;
  background-size: 100% auto, 100% auto;
  overflow: hidden
}
.voice_ttl {
  width: 67rem;
  margin: 0 auto
}
.voice_block {
  width: 71rem;
  margin: 0 auto 5rem;
  background-color: #fff;
  box-shadow: 0 0 1rem #b4914e;
  overflow: hidden
}
.voice_block-ttl {
  width: 61rem;
  margin: 0 auto 3rem;
  padding: 6rem 0 5.5rem 27rem;
  border-bottom: .2rem solid #4c4c4c;
  color: #700029;
  font-weight: 700;
  font-size: 3.4rem;
  line-height: 1.471;
  font-family: "Noto Sans JP", sans-serif
}
.voice_bg01 .voice_block-ttl {
  padding: 6rem 0 5.5rem 27rem;
  background-image: url(../img/voice_block01_sp.png);
  background-repeat: no-repeat;
  background-position: left bottom;
  background-size: 26rem auto
}
.voice_bg02 .voice_block-ttl {
  padding: 6rem 0 5.5rem 27rem;
  background-image: url(../img/voice_block02_sp.png);
  background-repeat: no-repeat;
  background-position: left bottom;
  background-size: 26rem auto
}
.voice_bg03 .voice_block-ttl {
  padding: 9rem 0 8rem 27rem;
  background-image: url(../img/voice_block03_sp.png);
  background-repeat: no-repeat;
  background-position: left bottom;
  background-size: 26rem auto
}
.voice_block-ttl span {
  background: linear-gradient(transparent 60%, #dabd80 60%, #dabd80 90%, transparent)
}
.voice_block-txt {
  width: 61rem;
  margin: 0 auto 4rem;
  color: #4c4c4c;
  font-weight: 500;
  font-size: 2.4rem;
  line-height: 1.833;
  font-family: "Noto Sans JP", sans-serif
}
.voice_block-txt span {
  color: #c6a152;
  font-weight: 700
}
.message_block {
  position: relative;
  margin: 12rem auto 0;
  padding: 10rem 0;
}
.message_block:before {
  content: "";
  position: absolute;
  z-index: 3;
  top: 0rem;
  left: 0;
  width: 63rem;
  height: 27.8rem;
  background-image: url(../img/message_block01.png);
  background-repeat: no-repeat;
  background-position: left top;
  background-size: 100% auto
}
.message_block:after {
  content: "";
  position: absolute;
  z-index: 3;
  bottom: 0;
  right: 0;
  width: 63rem;
  height: 27.8rem;
  background-image: url(../img/message_block02.png);
  background-repeat: no-repeat;
  background-position: right top;
  background-size: 100% auto
}
.message_txt {
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
  z-index: 1;
  width: 100%;
  height: 73rem;
  background-color: #700029;
  color: #dabd80;
  font-weight: 600;
  font-size: 3.6rem;
  line-height: 1.611;
  text-align: center
}
.message_txt:before {
  content: "";
  position: absolute;
  z-index: 2;
  bottom: 4rem;
  left: 4rem;
  width: 4rem;
  height: 47rem;
  border-bottom: .2rem solid #dabd80;
  border-left: .2rem solid #dabd80
}
.message_txt:after {
  content: "";
  position: absolute;
  z-index: 2;
  top: 4rem;
  right: 4rem;
  width: 4rem;
  height: 47rem;
  border-top: .2rem solid #dabd80;
  border-right: .2rem solid #dabd80
}
.message_ttl {
  width: 67rem;
  margin: 0 auto;
  border-top: .2rem solid #700029;
  overflow: hidden
}
.message_ttl img {
  width: 51.6rem;
  margin: 7rem auto
}
#fixed_btn {
  display: none;
  position: fixed;
  z-index: 9999;
  bottom: 0;
  left: 0;
  width: 100%;
  padding: 2.5rem 0 .6rem;
  background-color: rgba(112, 0, 41, .64)
}
.fixed_btn-main {
  width: 68.8rem;
  margin: 0 auto;
  transform: translateZ(0)
}
.fixed_btn-main .sp.on {
  display: none !important
}
.fixed_btn-main:hover .sp.off {
  display: none !important
}
.fixed_btn-main:hover .sp.on {
  display: block !important
}
#footer {
  margin: 0 auto 16rem;
  padding: 4rem 0 6.8rem;
  background-color: #4c4c4c;
  background-image: url(../img/page_deco_sp.png);
  background-repeat: no-repeat;
  background-position: center bottom;
  background-size: 100% auto
}
.footer_link {
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 0 auto 2rem
}
.footer_link li {
  position: relative;
  margin: 0 3.2rem
}
.footer_link li:after {
  content: "";
  position: absolute;
  z-index: 2;
  right: -3.3rem;
  top: 0;
  width: 0;
  height: 100%;
  border-right: .2rem solid #fff
}
.footer_link li:last-child:after {
  content: none
}
.footer_link a {
  color: #fff;
  font-weight: 500;
  font-size: 2rem;
  font-family: "Noto Sans JP", sans-serif;
  text-decoration: none
}
.footer_copyright {
  color: #fff;
  font-weight: 400;
  font-size: 1.8rem;
  font-family: "Noto Sans JP", sans-serif;
  text-align: center
}
.last-tel-area {
  margin: 2rem auto 18rem
}
@media (min-width:751px) {
  #wrapper {
    max-width: 1920px
  }
  #header {
    background-image: url(../img/page_deco_pc.png)
  }
  .header_block {
    width: 100rem;
    margin: 0 auto
  }
  .header_logo {
    width: 15.1rem;
    margin: 1.1rem 0 1.4rem
  }
  .header_link {
    margin-right: .5rem;
    margin-bottom: .6rem;
    width: 11.7rem;
    font-size: 2.62rem
  }
  #mv .pc {
    position: relative;
    z-index: 2;
    left: 50%;
    top: 0;
    width: 192rem;
    margin: 0 0 0 -96rem
  }
  #intro {
    position: relative;
    overflow: hidden
  }
  .intro_ttl {
    margin: 0 auto 3rem;
    padding: 1.7rem 0;
    font-weight: 500
  }
  .intro_flex {
    margin: 0 auto 3rem
  }
  .intro_flex p {
    width: 48.5rem
  }
  .intro_btn {
    width: 65.8rem;
    margin: 0 auto 1rem
  }
  .intro_btn .pc.on {
    display: none !important
  }
  .intro_btn:hover .sp.on {
    display: none !important
  }
  .intro_btn:hover .pc.off {
    display: none !important
  }
  .intro_btn:hover .pc.on {
    display: block !important
  }
  .intro_txt01 {
    width: 100rem;
    margin: 0 auto 6rem;
    font-size: 1.4rem;
    line-height: 1.429
  }
  #about {
    background-image: url(../img/about_bg01_pc.png), url(../img/about_bg02_pc.png);
    background-size: auto 71rem, auto 68.7rem;
    overflow: hidden
  }
  .about_ttl {
    margin: 6rem auto;
    font-size: 3.2rem;
    line-height: 1
  }
  .about_txt01 {
    width: 90rem;
    padding: 3.8rem 0 3.8rem;
    font-size: 3.4rem;
    line-height: 1.529
  }
  .about_txt01:before {
    width: 8rem;
    height: 8rem
  }
  .about_txt01:after {
    width: 8rem;
    height: 8rem
  }
  .achievement_ttl {
    width: 90rem;
    padding: .5rem 0 .9rem 3rem;
    background-image: url(../img/icon_head01_pc.png);
    font-size: 3.6rem
  }
  .achievement_txt01 {
    width: 54rem;
    margin: 0 auto
  }
  .achievement_txt01 .pc {
    margin-bottom: 1.2rem
  }
  .achievement_txt02 {
    margin-top: 0.9rem;
    margin-bottom: 4rem;
    width: 90rem;
    font-size: 1.4rem;
  }
  .achievement_img01 {
    width: 90rem
  }
  .achievement_txt03 {
    width: 90rem;
    margin: 0 auto 6rem;
    font-size: 1.4rem
  }
  .brand_ttl {
    width: 90rem;
    padding: .5rem 0 .9rem 3rem;
    background-image: url(../img/icon_head01_pc.png);
    font-size: 3.6rem
  }
  .brand_txt01 {
    width: 90rem;
    margin: 0 auto 4rem;
    font-size: 2.8rem;
    line-height: 1;
    text-align: left
  }
  .brand_img01 {
    width: 82.1rem;
    margin: 0 auto 10rem
  }
  .feature01_ttl {
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 4rem 0;
    font-size: 3.8rem;
    line-height: 1.421;
    text-align: left
  }
  .feature01_ttl-img {
    width: 35.8rem;
    margin: 0 3.7rem 0 0
  }
  .feature01_ttl-txt {
    width: 60.5rem
  }
  .feature01_img01 {
    margin: 0 auto 3rem
  }
  .feature01_txt01 {
    width: 90rem;
    margin: 0 auto 5rem;
    font-size: 2rem;
    line-height: 1.8
  }
  .store_ttl {
    width: 90rem;
    padding: .5rem 0 .9rem 3rem;
    background-image: url(../img/icon_head01_pc.png);
    font-size: 3.6rem;
    line-height: 1;
    white-space: nowrap
  }
  .store_ttl span {
    display: inline-block;
    margin: 0 0 0 2.5rem;
    font-size: 2.4rem
  }
  .store_flex {
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 0 auto 10rem
  }
  .store_block01 {
    display: block;
    width: 35rem;
    margin: 0
  }
  .store_block02 {
    display: block;
    width: 35rem;
    margin: 0
  }
  .store_img01 {
    width: 100%;
    margin: 0 auto
  }
  .store_txt01 {
    margin: 2.5rem 0 1rem;
    font-size: 2.6rem;
    text-align: center
  }
  .store_txt02 {
    font-weight: 400;
    font-size: 2rem;
    line-height: 1.8
  }
  .store_img02 {
    margin: 0 4.5rem
  }
  .feature02_ttl {
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 4rem 0;
    font-size: 3.8rem;
    line-height: 1.421;
    text-align: left
  }
  .feature02_ttl-img {
    width: 35.8rem;
    margin: 0 3.7rem 0 0
  }
  .feature02_ttl-txt {
    width: 60.5rem
  }
  .feature02_bg {
    background-image: url(../img/feature02_bg01_pc.png), url(../img/feature02_bg02_pc.png);
    background-size: auto 65.4rem, auto 86.8rem
  }
  .feature02_img01 {
    width: 90rem
  }
  .feature02_txt01 {
    width: 90rem;
    margin: 0 auto 4rem;
    font-size: 2rem;
    line-height: 1.8
  }
  .feature02_txt02 {
    width: 90rem;
    margin: 0 auto 6rem;
    font-size: 2rem;
    line-height: 1.8
  }
  .result_ttl {
    margin: 0 auto 4rem;
    font-size: 2.6rem
  }
  .result_ttl-img {
    width: 41.1rem
  }
  .result_ttl-small {
    font-size: 1.8rem
  }
  .result_list {
    display: flex;
    justify-content: space-between;
    width: 90rem;
    margin: 0 auto 8rem
  }
  .result_list li {
    display: block;
    margin: 0
  }
  .result_list-block {
    width: 29.6rem
  }
  .result_list-block div {
    margin: 0 0 .8rem
  }
  .result_list-block p {
    margin: 0 0 2rem;
    font-size: 1.4rem
  }
  .feature03_ttl {
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 4rem 0;
    font-size: 3.8rem;
    line-height: 1.421;
    text-align: left
  }
  .feature03_ttl-img {
    width: 35.8rem;
    margin: 0 3.7rem 0 0
  }
  .feature03_ttl-txt {
    width: 60.5rem
  }
  .feature03_img01 .pc {
    position: relative;
    z-index: 2;
    top: 0;
    left: 50%;
    margin: 0 auto 3rem -96rem;
    width: 192rem
  }
  .feature03_txt01 {
    width: 90rem;
    margin: 0 auto 2.5rem;
    font-size: 3.2rem;
    line-height: 1.5
  }
  .feature03_txt02 {
    width: 90rem;
    margin: 0 auto 4rem;
    font-size: 2rem;
    line-height: 1.8
  }
  .feature03_txt03 {
    width: 90rem;
    margin: 0 auto 5rem;
    font-size: 2rem;
    line-height: 1.8
  }
  .feature03_block01 {
    width: 90rem;
    padding: 4rem 4rem 3.5rem
  }
  .feature03_img02 {
    width: 82rem;
    margin: 0 auto 3rem
  }
  .feature03_block01-flex {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 82rem;
    margin: 0 auto
  }
  .feature03_img03 {
    width: 24.9rem;
    margin: 0 auto
  }
  .feature03_txt04 {
    width: 48rem;
    margin: 0;
    font-size: 1.9rem;
    line-height: 1.8
  }
  .feature04_ttl {
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 4rem 0;
    font-size: 3.8rem;
    line-height: 1.421;
    text-align: left
  }
  .feature04_ttl-img {
    width: 35.8rem;
    margin: 0 3.7rem 0 0
  }
  .feature04_ttl-txt {
    width: 60.5rem
  }
  .feature04_bg {
    background-image: url(../img/feature04_bg01_pc.png);
    background-size: 192rem auto
  }
  .feature04_txt01 {
    width: 90rem;
    margin: 5rem auto 3rem;
    font-size: 2rem;
    line-height: 1.8
  }
  .feature04_img01 {
    width: 90rem;
    margin: 0 auto 9rem
  }
  .feature05_ttl {
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 0 auto 6rem;
    padding: 4rem 0;
    font-size: 3.8rem;
    line-height: 1.421;
    text-align: left
  }
  .feature05_ttl-img {
    width: 35.8rem;
    margin: 0 3.7rem 0 0
  }
  .feature05_ttl-txt {
    width: 60.5rem
  }
  .feature05_txt01 {
    margin: 0 auto 6rem;
    font-size: 3.2rem;
    line-height: 1
  }
  .option_ttl {
    width: 90rem;
    margin: 0 auto 4rem;
    padding: .5rem 0 .9rem 2.5rem;
    background-image: url(../img/icon_head01_pc.png);
    font-size: 3.6rem;
    line-height: 1
  }
  .option_ttl span {
    font-size: 1.8rem
  }
  .option_slick {
    width: 100rem;
    margin: 0 auto 11rem
  }
  .option_slick:before {
    content: "";
    position: absolute;
    z-index: 2;
    top: 0;
    left: 0;
    width: 10.5rem;
    height: 100%;
    background: linear-gradient(to right, #fff, rgba(255, 255, 255, .5))
  }
  .option_slick:after {
    content: "";
    position: absolute;
    z-index: 2;
    top: 0;
    right: 0;
    width: 10.5rem;
    height: 100%;
    background: linear-gradient(to right, rgba(255, 255, 255, .5), #fff)
  }
  .option_slick-slide {
    width: 76rem !important;
    height: 37rem;
    margin: 0 1.5rem
  }
  .option_slick-slide:after {
    top: 1rem;
    left: 1rem;
    width: 73.6rem;
    height: calc(100% - 2.4rem)
  }
  .option_slick-flex {
    display: flex;
    align-items: center
  }
  .option_slick-img {
    width: 40rem;
    margin: 3rem
  }
  .option_slick-ttl {
    width: 27rem;
    height: 4rem;
    margin: 0 0 1rem;
    font-size: 2rem
  }
  .option_slick-txt {
    width: 27rem;
    margin: 0;
    font-size: 2rem;
    line-height: 1.8
  }
  .slick-arrow {
    width: 3.2rem
  }
  .slider-prev {
    left: 5rem
  }
  .slider-next {
    right: 5rem
  }
  .slick-dots {
    bottom: -5rem
  }
  .slick-dots li {
    width: 1rem;
    height: 1rem;
    margin: 0 1.5rem
  }
  .slick-dots li button {
    display: none
  }
  .order_ttl {
    width: 90rem;
    margin: 0 auto 3rem;
    padding: .5rem 0 .9rem 3rem;
    background-image: url(../img/icon_head01_pc.png);
    font-size: 3.6rem;
    line-height: 1
  }
  .order_txt01 {
    width: 90rem;
    margin: 0 auto 3rem;
    font-size: 2rem;
    line-height: 1.8
  }
  .order_img01 {
    width: 90rem;
    margin: 0 auto 1rem
  }
  .order_list {
    width: 90rem;
    margin: 0 auto 6rem
  }
  .order_list div {
    width: 22rem
  }
  .case_ttl {
    margin: 0 auto 3rem;
    font-size: 2.6rem
  }
  .case_ttl span {
    width: 41.1rem
  }
  .case_txt01 {
    width: 90rem;
    margin: 0 auto 3rem;
    font-size: 2rem;
    line-height: 1.8
  }
  .case_img01 {
    width: 90rem
  }
  .voice_bg {
    padding: 0 0 6rem;
    background-image: url(../img/voice_bg01_pc.png), url(../img/voice_bg02_pc.png);
    background-size: auto 56.5rem, auto 69.2rem
  }
  .voice_ttl {
    width: 90rem
  }
  .voice_block {
    width: 90rem;
    height: 32rem;
    margin: 0 auto 4rem;
    padding: 0 0 0 26rem
  }
  .voice_block-ttl {
    width: 60rem;
    font-size: 2.6rem;
    line-height: 1.461
  }
  .voice_bg01 .voice_block-ttl {
    margin: 3rem 0 2rem;
    padding: 0 0 3rem;
    background-image: none
  }
  .voice_bg02 .voice_block-ttl {
    margin: 3rem 0 1rem;
    padding: 0 0 1rem;
    background-image: none
  }
  .voice_bg03 .voice_block-ttl {
    margin: 3rem 0 3rem;
    padding: 0 0 2.5rem;
    background-image: none
  }
  .voice_bg01 {
    background-image: url(../img/voice_block01_pc.png);
    background-repeat: no-repeat;
    background-position: left 4rem bottom 4rem;
    background-size: 20.5rem auto
  }
  .voice_bg02 {
    background-image: url(../img/voice_block02_pc.png);
    background-repeat: no-repeat;
    background-position: left 4rem bottom 4rem;
    background-size: 20.5rem auto
  }
  .voice_bg03 {
    background-image: url(../img/voice_block03_pc.png);
    background-repeat: no-repeat;
    background-position: left 4rem bottom 4rem;
    background-size: 20.5rem auto
  }
  .voice_block-ttl span {
    background: linear-gradient(transparent 60%, #dabd80 60%, #dabd80 90%, transparent)
  }
  .voice_block-txt {
    width: 60rem;
    margin: 0;
    font-size: 1.8rem;
    line-height: 1.778
  }
  .message_block {
    width: 100rem;
    margin: 0 auto;
    padding: 20rem 0 10rem;
  }
  .message_block:before {
    top: 10rem
  }
  .message_txt {
    width: 82rem;
    height: 60rem;
    margin: 0 auto;
    font-size: 3.4rem;
    line-height: 1.588
  }
  .message_txt:before {
    width: 20rem;
    height: 34rem
  }
  .message_txt:after {
    width: 20rem;
    height: 34rem
  }
  .message_ttl {
    width: 100rem
  }
  .message_ttl img {
    width: 37.7rem;
    margin: 6rem auto
  }
  #fixed_btn {
    padding: 1.8rem 0 0
  }
  .fixed_btn-main {
    width: 65.8rem
  }
  .fixed_btn-main .pc.on {
    display: none !important
  }
  .fixed_btn-main:hover .sp.on {
    display: none !important
  }
  .fixed_btn-main:hover .pc.off {
    display: none !important
  }
  .fixed_btn-main:hover .pc.on {
    display: block !important
  }
  #footer {
    margin: 0 auto 12.7rem;
    background-image: url(../img/page_deco_pc.png);
    background-size: auto 2.8rem
  }
  .footer_link li {
    margin: 0 2.6rem
  }
  .footer_link li:after {
    right: -2.6rem;
    border-right: .1rem solid #fff
  }
  .footer_link a {
    font-size: 1.8rem
  }
  .footer_copyright {
    font-size: 1.4rem
  }
  .tel_area {
    max-width: 100rem;
    margin: 2rem auto 2.5rem;
    padding: 1.8rem 0 2rem;
  }
  .tel_area_feature03 {
    max-width: 90rem;
    margin: 0 auto 14.7rem
  }
  .tel_area_main {
    width: 37rem;
  }
  .tel_area_icon {
    width: 3rem;
  }
  .tel_area_txt {
    font-size: 2rem;
  }
  .tel_area_number {
    font-size: 2.5rem;
  }
  .tel_area_notes {
    width: 100%;
    font-size: 1.4rem;
    text-align: center;
  }
  .tel_area_feature03 {
    width: 100rem;
  }
}
