@charset "UTF-8";
/*
========================================================================= */
/*  ロゴの大きさ調整
========================================================================= */
.hd_logo {
  width: 45%;
}
.hd_logo a {
  display: block;
  width: 100%;
  height: 100%;
}
.hd_logo a img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}

.drawer_logo {
  width: 45%;
}

/*
========================================================================= */
/*  header
========================================================================= */
header {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  z-index: 2;
  width: auto;
  color: var(--cl-white);
  background: linear-gradient(to bottom, rgba(27, 27, 27, 0.8) 0%, rgba(27, 27, 27, 0.7) 60%, rgba(27, 27, 27, 0.6) 80%, rgba(27, 27, 27, 0.4) 90%, rgba(0, 0, 0, 0) 100%);
}
header .headline {
  padding: calc(var(--var-1) * 16) calc(var(--var-1) * 20) calc(var(--var-1) * 24);
}
header .headline .drawer_inner {
  background: url(../img/menu/menu_bg.png) no-repeat top/cover;
  color: var(--cl-black);
}
header .headline .drawer_inner .drawer_logo img {
  filter: brightness(0) saturate(100%) invert(12%) sepia(6%) saturate(9%) hue-rotate(324deg) brightness(100%) contrast(80%);
}
header .headline .drawer_inner .drawer_content .hd_btn {
  margin: calc(var(--var-1) * 48) auto 0;
}

/*
========================================================================= */
/*  footer
========================================================================= */
footer {
  padding: calc(var(--var-1) * 64) 0;
  background: url(../img/cmn/ft_bg.png) top/cover;
  color: var(--cl-white);
}
footer .ft_content .ft_content_top {
  flex-direction: column;
}
footer .ft_content .ft_content_top .ft_left .ft_logo {
  width: 60%;
  height: calc(var(--var-1) * 50);
  margin: 0 auto;
}
footer .ft_content .ft_content_top .ft_left .btn_wrap {
  display: flex;
  justify-content: center;
  align-items: center;
  margin-top: calc(var(--var-1) * 64);
  gap: calc(var(--var-1) * 32);
}
footer .ft_content .ft_content_top .ft_left .ft_btn {
  display: block;
  width: calc(var(--var-1) * 140);
  padding: calc(var(--var-1) * 10) 0 calc(var(--var-1) * 12);
  font-size: calc(var(--var-1) * 12);
}
footer .ft_content .ft_content_top .ft_left .btn_list {
  justify-content: center;
  gap: calc(var(--var-1) * 32);
}
footer .ft_content .ft_content_top .ft_right {
  gap: calc(var(--var-1) * 24);
  margin-top: calc(var(--var-1) * 72);
  font-size: calc(var(--var-1) * 12);
  font-weight: 400;
  line-height: 1.8;
  letter-spacing: 0.06em;
}
footer .ft_content .ft_content_top .ft_right em {
  flex-shrink: 0;
  width: calc(var(--var-1) * 64);
  font-weight: 400;
  margin-right: calc(var(--var-1) * 16);
  position: relative;
}
footer .ft_content .ft_content_top .ft_right em::before {
  content: "";
  position: absolute;
  top: calc(var(--var-1) * 5);
  right: 0;
  display: block;
  width: 1px;
  height: calc(var(--var-1) * 18);
  background: var(--cl-white);
}
footer .ft_content .ft_content_top .ft_right .ft_tel img {
  width: calc(var(--var-1) * 208);
  margin-top: calc(var(--var-1) * 5);
  margin-left: calc(var(--var-1) * 80);
}
footer .ft_content .ft_content_top .ft_gnav {
  margin-top: calc(var(--var-1) * 80);
}
footer .ft_content .ft_content_top .ft_gnav .ft_list {
  gap: calc(var(--var-1) * 48);
  flex-wrap: wrap;
  height: calc(var(--var-1) * 180);
}
footer .ft_content .ft_content_top .ft_gnav .ft_list .ft_item {
  font-size: calc(var(--var-1) * 14);
}
footer .ft_content .ft_content_btm {
  flex-direction: column;
  align-items: flex-end;
  margin-top: calc(var(--var-1) * 64);
}
footer .ft_content .ft_content_btm .ft_gnav_sub .ft_nav_list {
  padding-left: calc(var(--var-1) * 32);
  gap: calc(var(--var-1) * 24);
}
footer .ft_content .ft_content_btm .ft_gnav_sub .ft_nav_list .ft_nav_item {
  font-size: calc(var(--var-1) * 12);
  opacity: 0.7;
}

/*
========================================================================= */
/*  mv
========================================================================= */
.mv {
  background: url(../img/top/sp_bg.png) top/cover;
  padding: calc(var(--var-1-sub) * 390) calc(var(--var-1) * 32) calc(var(--var-1-sub) * 90);
  position: relative;
}
.mv .mv_ttl {
  text-align: right;
}
.mv .mv_ttl img {
  display: inline-block;
}
.mv .mv_deco {
  position: absolute;
  left: calc(var(--var-1) * 8);
  bottom: calc(var(--var-1) * 8);
  color: var(--cl-white);
  font: 500 calc(var(--var-1-sub) * 32)/1 var(--family-en1);
  letter-spacing: 0.05em;
  opacity: 0.2;
}

/*
========================================================================= */
/*  sv
========================================================================= */
.sb_mv {
  padding: calc(var(--var-1) * 100) 0 calc(var(--var-1) * 56);
  color: var(--cl-white);
  position: relative;
}
.sb_mv::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: calc(var(--var-1-sub) * 104);
  height: calc(var(--var-1-sub) * 160);
  background: url(../img/sv/deco.png) no-repeat top/100%;
}
.sb_mv .sv_ttl {
  color: var(--cl-white);
  font: 400 calc(var(--var-1-sub) * 24)/1 var(--family-serif);
  letter-spacing: 0.06em;
  padding-left: calc(var(--var-1) * 28);
}
.sb_mv .sv_ttl em {
  border-bottom: 1px solid;
  -o-border-image: linear-gradient(53deg, rgb(181, 139, 66) 0%, rgb(244, 222, 183) 19.5%, rgb(181, 139, 66) 39%, rgb(244, 222, 183) 54%, rgb(204, 161, 87) 81%) 1;
     border-image: linear-gradient(53deg, rgb(181, 139, 66) 0%, rgb(244, 222, 183) 19.5%, rgb(181, 139, 66) 39%, rgb(244, 222, 183) 54%, rgb(204, 161, 87) 81%) 1;
  background: transparent;
  padding-bottom: calc(var(--var-1-sub) * 16);
}
.sb_mv .sv_ttl .sv_ttl_en {
  margin-top: calc(var(--var-1-sub) * 14);
  display: inline-block;
  -webkit-background-clip: text;
          background-clip: text;
  color: transparent;
  font-family: var(--family-en1);
  font-size: calc(var(--var-1-sub) * 22);
}

/*
========================================================================= */
/*  下層の背景設定
========================================================================= */
.about_mv {
  background: url(../img/sv/about.png) no-repeat top/cover;
}

.menu_mv {
  background: url(../img/sv/menu.png) no-repeat top/cover;
}

.case_mv {
  background: url(../img/sv/case.png) no-repeat top/cover;
}

.voice_mv {
  background: url(../img/sv/voice.png) no-repeat top/cover;
}

.news_mv {
  background: url(../img/sv/news.png) no-repeat top/cover;
}

.contact_mv {
  background: url(../img/sv/contact.png) no-repeat top/cover;
}

.complete_mv {
  background: url(../img/sv/complete.png) no-repeat top/cover;
}

.privacy_mv {
  background: url(../img/sv/privacy.png) no-repeat top/cover;
}

.site_mv {
  background: url(../img/sv/site.png) no-repeat top/cover;
}

.notfound_mv {
  background: url(../img/sv/notfound.png) no-repeat top/cover;
}

/*
========================================================================= */
/*  top_ideal
========================================================================= */
.top_ideal {
  background: url(../img/top/ideal_bg.png) top/cover;
}
.top_ideal .top_ideal_content_wrap {
  background: var(--cl-white);
}
.top_ideal .top_ideal_content {
  padding: calc(var(--var-1) * 56) 0;
  flex-direction: column;
  margin-top: calc(var(--var-1) * 30);
  position: relative;
  z-index: 0;
  background: var(--cl-white);
}
.top_ideal .top_ideal_content .top_ideal_lead {
  gap: calc(var(--var-1) * 5);
  color: var(--cl-white);
  font: 600 calc(var(--var-1) * 20)/1 var(--family-serif);
  position: relative;
}
.top_ideal .top_ideal_content .top_ideal_lead .top_ideal_deco {
  position: absolute;
  top: calc(var(--var-1) * -40);
  left: calc(var(--var-1) * -12);
  background-clip: text;
  width: calc(var(--var-1) * 186);
  height: calc(var(--var-1) * 80);
  padding-top: calc(var(--var-1) * 8);
  line-height: 100px;
  -webkit-background-clip: text;
  color: transparent;
  font: 400 calc(var(--var-1) * 32)/1 var(--family-en2);
  letter-spacing: 0.05em;
  transform: rotate(-9deg);
}
.top_ideal .top_ideal_content .top_ideal_lead .bg {
  display: inline-block;
  padding: calc(var(--var-1) * 6) calc(var(--var-1) * 11);
  background: var(--cl-black);
}
.top_ideal .top_ideal_content .top_ideal_list {
  align-items: center;
  flex-direction: column;
  gap: calc(var(--var-1) * 32);
  margin-top: calc(var(--var-1) * 40);
}
.top_ideal .top_ideal_content .top_ideal_list .top_ideal_item {
  width: 88%;
  box-shadow: 0 0 calc(var(--var-1) * 4) calc(var(--var-1) * 4) rgba(0, 0, 0, 0.05);
}
.top_ideal .top_ideal_content .top_ideal_list .top_ideal_item .top_ideal_img_wrap .top_ideal_figure {
  margin: 0 auto;
  width: 100%;
  position: relative;
  z-index: -1;
}
.top_ideal .top_ideal_content .top_ideal_list .top_ideal_item .top_ideal_img_wrap .top_ideal_figure::before {
  content: "";
  position: absolute;
  bottom: calc(var(--var-1) * -2);
  left: 0;
  display: block;
  width: 100%;
  height: calc(var(--var-1) * 140);
  background: linear-gradient(to bottom, rgba(255, 255, 255, 0) 30%, rgb(255, 255, 255) 60%);
}
.top_ideal .top_ideal_content .top_ideal_list .top_ideal_item .top_ideal_img_wrap .top_ideal_figure_desc {
  margin-top: calc(var(--var-1) * -40);
  font: 600 calc(var(--var-1) * 16)/1.7 var(--family-serif);
  text-align: center;
  padding-bottom: calc(var(--var-1) * 24);
}

/*
========================================================================= */
/*  top_case
========================================================================= */
.top_case {
  padding-top: calc(var(--var-1) * 48);
  background: url(../img/top/case_bg_t.png) no-repeat top right 40%/240%, url(../img/top/case_bg_b.png) bottom;
}
.top_case .top_case_ttl {
  color: var(--cl-white);
}
.top_case .top_case_ttl::before {
  background: var(--cl-white);
}
.top_case .top_case_list {
  gap: calc(var(--var-1) * 40);
  margin-top: calc(var(--var-1) * 32);
}
.top_case .top_case_list .top_case_item {
  width: 100%;
  padding: calc(var(--var-1) * 32) calc(var(--var-1) * 40) calc(var(--var-1) * 35);
  background: var(--cl-white);
  position: relative;
}
.top_case .top_case_list .top_case_item .top_case_lead {
  padding-bottom: calc(var(--var-1) * 10);
  font: 600 calc(var(--var-1) * 17)/1.333 var(--family-serif);
  letter-spacing: 0.08em;
}
.top_case .top_case_list .top_case_item .top_case_figure_list {
  flex-direction: column;
  gap: calc(var(--var-1) * 30);
  margin-top: calc(var(--var-1) * 20);
  position: relative;
}
.top_case .top_case_list .top_case_item .top_case_figure_list::before {
  content: "";
  position: absolute;
  inset: 0;
  top: calc(var(--var-1) * 4);
  left: calc(var(--var-1) * 2);
  margin: auto;
  display: block;
  width: calc(var(--var-1) * 8);
  height: calc(var(--var-1) * 12);
  background: url(../img/cmn/arw_r_small.png) no-repeat top/100%;
  transform: rotate(90deg);
}
.top_case .top_case_list .top_case_item .top_case_figure_list .top_case_figure_item .top_case_img_wrap .top_case_figure_desc {
  background: var(--cl-black);
  color: var(--cl-white);
  padding: calc(var(--var-1) * 8) 0;
  font: 500 calc(var(--var-1) * 16)/1 var(--family-serif);
  text-align: center;
}
.top_case .top_case_list .top_case_item .top_case_figure_list .top_case_figure_item .top_case_img_wrap .after {
  background: linear-gradient(to right, rgb(215, 173, 99) 0%, rgb(181, 139, 66) 34%, rgb(215, 173, 99) 67%, rgb(181, 139, 66) 100%);
}
.top_case .top_case_list .top_case_item .top_case_figure_list .top_case_figure_item .top_case_img_wrap .top_case_figure::before {
  border-top: none;
}
.top_case .top_case_list .top_case_item .top_case_figure_list .top_case_figure_item .top_case_img_wrap .top_case_figure .top_case_img {
  width: 100%;
  height: calc(var(--var-1) * 164.5);
  -o-object-fit: cover;
     object-fit: cover;
}
.top_case .top_case_list .top_case_item .top_case_number {
  margin-top: calc(var(--var-1) * 25);
  font: 500 calc(var(--var-1) * 18)/1 var(--family-serif);
  letter-spacing: 0.06em;
  text-align: center;
}
.top_case .top_case_btn {
  margin: calc(var(--var-1) * 72) auto 0;
}

/*
========================================================================= */
/*  top_reason
========================================================================= */
.top_reason {
  background: url(../img/top/reason_deco.png) top no-repeat;
}
.top_reason .top_reason_ttl::before {
  background: linear-gradient(to bottom, rgb(0, 0, 0) 1%, rgb(0, 0, 0) 50%, rgb(255, 255, 255) 51%, rgb(255, 255, 255) 100%);
}
.top_reason .top_reason_content {
  width: 100%;
  padding: calc(var(--var-1) * 64) 0;
  margin: 0 auto;
  margin-top: calc(var(--var-1) * -10);
  background: url(../img/cmn/bg_black.png) top/cover;
}
.top_reason .top_reason_content .top_reason_list {
  flex-direction: column;
  counter-reset: number 0;
  gap: calc(var(--var-1) * 56) calc(var(--var-1) * 90);
}
.top_reason .top_reason_content .top_reason_list .top_reason_item {
  color: var(--cl-white);
  position: relative;
}
.top_reason .top_reason_content .top_reason_list .top_reason_item::before {
  counter-increment: number 1;
  content: "0" counter(number);
  position: absolute;
  top: calc(var(--var-1) * -48);
  right: calc(var(--var-1) * -10);
  padding-bottom: calc(var(--var-1) * 8);
  z-index: 1;
  display: block;
  background: linear-gradient(53deg, rgb(181, 139, 66) 0%, rgb(244, 222, 183) 19.5%, rgb(181, 139, 66) 39%, rgb(244, 222, 183) 54%, rgb(204, 161, 87) 81%);
  -webkit-background-clip: text;
          background-clip: text;
  color: transparent;
  font: 500 italic calc(var(--var-1) * 64)/1 var(--family-en1);
  letter-spacing: 0.05em;
}
.top_reason .top_reason_content .top_reason_list .top_reason_item .top_reason_figure {
  width: 100%;
  height: calc(var(--var-1) * 205);
}
.top_reason .top_reason_content .top_reason_list .top_reason_item .top_reason_figure::before {
  border: 1px solid;
  -o-border-image: linear-gradient(53deg, rgb(181, 139, 66) 0%, rgb(244, 222, 183) 19.5%, rgb(181, 139, 66) 39%, rgb(244, 222, 183) 54%, rgb(204, 161, 87) 81%) 1;
     border-image: linear-gradient(53deg, rgb(181, 139, 66) 0%, rgb(244, 222, 183) 19.5%, rgb(181, 139, 66) 39%, rgb(244, 222, 183) 54%, rgb(204, 161, 87) 81%) 1;
  background: transparent;
  inset: auto;
  top: calc(var(--var-1) * 8);
  left: calc(var(--var-1) * -8);
}
.top_reason .top_reason_content .top_reason_list .top_reason_item .top_reason_lead {
  margin-top: calc(var(--var-1) * 24);
  gap: calc(var(--var-1) * 5);
  font: 500 calc(var(--var-1) * 16)/1.8 var(--family-serif);
  letter-spacing: 0.1em;
  padding-bottom: calc(var(--var-1) * 12);
  border-bottom: 1px solid rgba(255, 255, 255, 0.3);
}
.top_reason .top_reason_content .top_reason_list .top_reason_item .top_reason_lead em {
  -webkit-background-clip: text;
          background-clip: text;
  color: transparent;
}
.top_reason .top_reason_content .top_reason_list .top_reason_item .top_reason_desc {
  margin-top: calc(var(--var-1) * 16);
}
.top_reason .top_reason_content .top_reason_btn {
  margin: calc(var(--var-1) * 72) auto 0;
}

/*
========================================================================= */
/*  top_bnr
========================================================================= */
.top_bnr .top_bnr_list {
  flex-direction: column;
}
.top_bnr .top_bnr_list .top_bnr_item .top_bnr_link {
  display: block;
  width: 100%;
  padding: calc(var(--var-1-sub) * 40) 0;
  background: url(../img/top/bnr1.png) top/cover;
  color: var(--cl-white);
}
.top_bnr .top_bnr_list .top_bnr_item .top_bnr_link .top_bnr_txt {
  width: calc(var(--var-1-sub) * 220);
  padding: calc(var(--var-1-sub) * 32) 0 calc(var(--var-1-sub) * 48);
  text-align: center;
  margin: 0 auto;
}
.top_bnr .top_bnr_list .top_bnr_item .top_bnr_link .top_bnr_txt::before {
  border: 1px solid;
  -o-border-image: linear-gradient(53deg, rgb(181, 139, 66) 0%, rgb(244, 222, 183) 19.5%, rgb(181, 139, 66) 39%, rgb(244, 222, 183) 54%, rgb(204, 161, 87) 81%) 1;
     border-image: linear-gradient(53deg, rgb(181, 139, 66) 0%, rgb(244, 222, 183) 19.5%, rgb(181, 139, 66) 39%, rgb(244, 222, 183) 54%, rgb(204, 161, 87) 81%) 1;
  background: transparent;
  pointer-events: none;
}
.top_bnr .top_bnr_list .top_bnr_item .top_bnr_link .top_bnr_txt::after {
  content: "";
  position: absolute;
  bottom: calc(var(--var-1-sub) * 24);
  right: calc(var(--var-1-sub) * 16);
  display: block;
  width: calc(var(--var-1-sub) * 32);
  height: calc(var(--var-1-sub) * 8);
  background: url(../img/cmn/arw_r_w.png) no-repeat top/100%;
}
.top_bnr .top_bnr_list .top_bnr_item .top_bnr_link .top_bnr_txt em {
  font: 400 calc(var(--var-1-sub) * 56)/1 var(--family-en2);
  -webkit-background-clip: text;
          background-clip: text;
  color: transparent;
  padding-top: calc(var(--var-1-sub) * 8);
  letter-spacing: 0.05em;
  transform: translateX(calc(var(--var-1-sub) * -4));
}
.top_bnr .top_bnr_list .top_bnr_item .top_bnr_link .top_bnr_txt em::before {
  padding-top: calc(var(--var-1-sub) * 20);
}
.top_bnr .top_bnr_list .top_bnr_item .top_bnr_link .top_bnr_txt .top_bnr_link_sub {
  margin-top: calc(var(--var-1-sub) * 0);
  font: 500 calc(var(--var-1-sub) * 18)/1 var(--family-serif);
  letter-spacing: 0.1em;
}
.top_bnr .top_bnr_list .top_bnr_item:nth-child(2) .top_bnr_link {
  background: url(../img/top/bnr2.png) top/cover;
}

/*
========================================================================= */
/*  top_beauty
========================================================================= */
.top_beauty {
  background: url(../img/top/beauty_bg.png) top left/cover;
}
.top_beauty .top_beauty_txt .top_beauty_ttl .top_beauty_ttl_sub {
  display: block;
  margin-top: calc(var(--var-1) * 18);
  font: 500 calc(var(--var-1) * 22)/1 var(--family-serif);
  letter-spacing: 0.1em;
  padding-left: calc(var(--var-1) * 4);
}
.top_beauty .top_beauty_txt .top_beauty_desc {
  margin-top: calc(var(--var-1) * 48);
  padding-left: calc(var(--var-1) * 4);
}

/*
========================================================================= */
/*  voice
========================================================================= */
.voice .voice_list {
  flex-direction: column;
  gap: calc(var(--var-1) * 30);
  margin-top: calc(var(--var-1) * 30);
}
.voice .voice_item {
  width: 100%;
  padding: calc(var(--var-1) * 32) calc(var(--var-1) * 24) calc(var(--var-1) * 32);
  background: var(--cl-white-light);
  box-shadow: 0 0 calc(var(--var-1) * 4) calc(var(--var-1) * 3) rgba(0, 0, 0, 0.07);
}
.voice .voice_profile {
  padding-bottom: calc(var(--var-1) * 14);
  font: 500 calc(var(--var-1) * 16)/1 var(--family-serif);
  letter-spacing: 0.1em;
}
.voice .voice_comment {
  margin-top: calc(var(--var-1) * 12);
}
.voice .voice_btn {
  margin: calc(var(--var-1) * 72) auto 0;
}

/*
========================================================================= */
/*  top_news
========================================================================= */
.top_news {
  background: url(../img/top/news_bg.png) top/cover;
  position: relative;
}
.top_news::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: calc(var(--var-1) * 100);
  height: calc(var(--var-1) * 274);
  background: url(../img/top/news_deco.png) no-repeat top/100%;
}
.top_news .inner {
  flex-direction: column;
  gap: calc(var(--var-1) * 48);
}
.top_news .inner .top_news_left {
  flex-direction: row;
  align-items: center;
  justify-content: space-between;
}
.top_news .inner .top_news_left .top_news_ttl {
  padding-bottom: 0;
}
.top_news .inner .top_news_left .top_news_ttl::before {
  content: none;
}
.top_news .inner .top_news_left .top_news_btn::after {
  content: none;
}
.top_news .inner .top_news_right .top_news_content {
  width: 100%;
  padding-bottom: calc(var(--var-1) * 18);
  border-bottom: 1px solid var(--cl-black);
}
.top_news .inner .top_news_right .top_news_content .top_news_top {
  flex-direction: column;
  gap: calc(var(--var-1) * 12);
  align-items: flex-start;
}
.top_news .inner .top_news_right .top_news_content .top_news_top time {
  flex-shrink: 0;
  padding: 0 calc(var(--var-1) * 6);
  letter-spacing: 0.06em;
  border: 1px solid var(--cl-black);
}
.top_news .inner .top_news_right .top_news_content .top_news_top .top_news_lead {
  width: 100%;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.top_news .inner .top_news_right .top_news_content .top_news_tag_list {
  margin-top: calc(var(--var-1) * 8);
  gap: calc(var(--var-1) * 8);
}
.top_news .inner .top_news_right .top_news_content .top_news_tag_list .top_news_tag_item {
  letter-spacing: 0.08em;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  font-size: calc(var(--var-1) * 12);
}
.top_news .inner .top_news_right .top_news_content .top_news_tag_list .top_news_tag_item em {
  color: var(--cl-gold);
}

/*
========================================================================= */
/*  about_concept
========================================================================= */
.about_concept {
  background: url(../img/cmn/deco_sv.png) no-repeat top/100%, url(../img/about/concrpt_bg.png) top/cover;
}
.about_concept .about_concept_ttl .about_concept_ttl_sub {
  background: var(--cl-black);
  color: var(--cl-white);
  padding: calc(var(--var-1) * 4) 0 calc(var(--var-1) * 7) calc(var(--var-1) * 12);
}
.about_concept .about_concept_desc {
  margin-top: calc(var(--var-1) * 32);
  text-align: center;
}
.about_concept .about_concept_figure {
  margin: calc(var(--var-1) * 56) auto 0;
  padding: calc(var(--var-1) * 16);
  padding-bottom: calc(var(--var-1) * 12);
  background: var(--cl-white);
  position: relative;
}
.about_concept .about_concept_figure .about_concept_deco {
  position: absolute;
  top: calc(var(--var-1) * -40);
  left: calc(var(--var-1) * -20);
  padding-top: calc(var(--var-1) * 10);
  padding-right: calc(var(--var-1) * 20);
  -webkit-background-clip: text;
          background-clip: text;
  color: transparent;
  font: 400 calc(var(--var-1) * 48)/1 var(--family-en2);
  letter-spacing: 0.1em;
  transform: rotate(-22.5deg);
  letter-spacing: normal;
}
.about_concept .about_concept_figure video {
  width: calc(var(--var-1) * 280);
}

/*
========================================================================= */
/*  about_reason
========================================================================= */
.about_reason {
  position: relative;
}
.about_reason::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: calc(var(--var-1) * 448);
  background: url(../img/about/reason_deco.png) no-repeat top/100%;
}
.about_reason .about_reason_content {
  width: 100%;
  margin: 0 auto;
  padding: calc(var(--var-1) * 48) 0;
  background: url(../img/cmn/bg_black.png) top/cover;
  color: var(--cl-white);
}
.about_reason .about_reason_content .about_reason_ttl::before {
  background: var(--cl-white);
}
.about_reason .about_reason_content .about_reason_list {
  flex-direction: column;
  gap: calc(var(--var-1) * 100);
  margin-top: calc(var(--var-1) * 48);
  counter-reset: number 0;
}
.about_reason .about_reason_content .about_reason_list .about_reason_item {
  gap: calc(var(--var-1) * 32);
  flex-direction: column;
  align-items: center;
}
.about_reason .about_reason_content .about_reason_list .about_reason_item .about_reason_figure {
  flex-shrink: 0;
  position: relative;
  width: 88%;
  height: calc(var(--var-1) * 245);
  -o-object-fit: cover;
     object-fit: cover;
}
.about_reason .about_reason_content .about_reason_list .about_reason_item .about_reason_figure::before {
  border: 1px solid;
  -o-border-image: linear-gradient(53deg, rgb(181, 139, 66) 0%, rgb(244, 222, 183) 19.5%, rgb(181, 139, 66) 39%, rgb(244, 222, 183) 54%, rgb(204, 161, 87) 81%) 1;
     border-image: linear-gradient(53deg, rgb(181, 139, 66) 0%, rgb(244, 222, 183) 19.5%, rgb(181, 139, 66) 39%, rgb(244, 222, 183) 54%, rgb(204, 161, 87) 81%) 1;
  background: transparent;
  inset: auto;
  top: calc(var(--var-1) * 12);
  left: calc(var(--var-1) * -10);
}
.about_reason .about_reason_content .about_reason_list .about_reason_item .about_reason_figure::after {
  counter-increment: number 1;
  content: "0" counter(number);
  position: absolute;
  top: calc(var(--var-1) * -48);
  right: calc(var(--var-1) * -10);
  padding-bottom: calc(var(--var-1) * 8);
  z-index: 1;
  display: block;
  background: linear-gradient(53deg, rgb(181, 139, 66) 0%, rgb(244, 222, 183) 19.5%, rgb(181, 139, 66) 39%, rgb(244, 222, 183) 54%, rgb(204, 161, 87) 81%);
  -webkit-background-clip: text;
          background-clip: text;
  color: transparent;
  font: 500 italic calc(var(--var-1) * 64)/1 var(--family-en1);
  letter-spacing: 0.05em;
}
.about_reason .about_reason_content .about_reason_list .about_reason_item .about_reason_figure img {
  height: calc(var(--var-1) * 245);
  -o-object-fit: cover;
     object-fit: cover;
}
.about_reason .about_reason_content .about_reason_list .about_reason_item .about_reason_txt .about_reason_lead {
  font: 500 calc(var(--var-1) * 19)/1.6 var(--family-serif);
  padding-bottom: calc(var(--var-1) * 16);
  letter-spacing: 0.1em;
}
.about_reason .about_reason_content .about_reason_list .about_reason_item .about_reason_txt .about_reason_lead em {
  -webkit-background-clip: text;
          background-clip: text;
  color: transparent;
}
.about_reason .about_reason_content .about_reason_list .about_reason_item .about_reason_txt .about_reason_desc {
  margin-top: calc(var(--var-1) * 24);
}

/*
========================================================================= */
/*  about_eq
========================================================================= */
.about_eq {
  background: url(../img/about/eq_bg.png) top/cover;
  position: relative;
}
.about_eq .border {
  position: absolute;
  top: calc(var(--var-1) * 8);
  height: calc(var(--var-1) * 1);
}
.about_eq .about_eq_ttl {
  text-align: center;
}
.about_eq .about_eq_list {
  gap: calc(var(--var-1) * 60);
  flex-direction: column;
  margin-top: calc(var(--var-1) * 45);
}
.about_eq .about_eq_list .about_eq_item {
  padding: calc(var(--var-1) * 32) calc(var(--var-1) * 24);
  box-shadow: 0 0 calc(var(--var-1) * 8) calc(var(--var-1) * 8) rgba(0, 0, 0, 0.05);
  background: var(--cl-white);
}
.about_eq .about_eq_list .about_eq_item .about_eq_figure {
  width: 100%;
  height: calc(var(--var-1) * 178);
  position: relative;
}
.about_eq .about_eq_list .about_eq_item .about_eq_figure .about_eq_deco {
  position: absolute;
  top: calc(var(--var-1) * -68);
  left: calc(var(--var-1) * -48);
  padding-top: calc(var(--var-1) * 10);
  padding-right: calc(var(--var-1) * 60);
  -webkit-background-clip: text;
          background-clip: text;
  color: transparent;
  font: 400 calc(var(--var-1) * 48)/1 var(--family-en2);
  letter-spacing: 0.1em;
  transform: rotate(-22.5deg);
  letter-spacing: 0.02em;
}
.about_eq .about_eq_list .about_eq_item .about_eq_figure .about_eq_lead {
  position: absolute;
  top: calc(var(--var-1) * 160);
  left: 0;
  right: 0;
  width: calc(var(--var-1) * 220);
  margin: 0 auto;
  padding: calc(var(--var-1) * 8) 0;
  background: var(--cl-black-dark);
  color: var(--cl-white);
  text-align: center;
  font: 500 calc(var(--var-1) * 18)/1.333 var(--family-serif);
  letter-spacing: 0.05em;
}
.about_eq .about_eq_list .about_eq_item .about_eq_desc {
  margin-top: calc(var(--var-1) * 48);
}
.about_eq .about_eq_list .about_eq_item:nth-child(2) .about_eq_desc {
  margin-top: calc(var(--var-1) * 72);
}

/*
========================================================================= */
/*  about_staff
========================================================================= */
.about_staff {
  position: relative;
}
.about_staff::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: calc(var(--var-1) * 160);
  height: calc(var(--var-1) * 448);
  background: url(../img/about/staff_deco.png) no-repeat top/100%;
}
.about_staff .about_staff_list {
  gap: calc(var(--var-1) * 80);
  margin-top: calc(var(--var-1) * 48);
}
.about_staff .about_staff_list .about_staff_item {
  flex-direction: column;
  gap: calc(var(--var-1) * 28);
  padding: calc(var(--var-1) * 32) calc(var(--var-1) * 24);
  background: var(--cl-white-light);
  box-shadow: 0 0 calc(var(--var-1) * 4) calc(var(--var-1) * 3) rgba(0, 0, 0, 0.1);
}
.about_staff .about_staff_list .about_staff_item .about_staff_figure {
  flex-shrink: 0;
}
.about_staff .about_staff_list .about_staff_item .about_staff_figure .about_staff_img {
  width: 100%;
  height: calc(var(--var-1) * 300.38);
  -o-object-fit: cover;
     object-fit: cover;
}
.about_staff .about_staff_list .about_staff_item .about_staff_txt .about_staff_lead {
  font: 500 calc(var(--var-1) * 22)/1.4 var(--family-serif);
  letter-spacing: 0.1em;
}
.about_staff .about_staff_list .about_staff_item .about_staff_txt .about_staff_qual {
  margin-top: calc(var(--var-1) * 28);
  padding-bottom: calc(var(--var-1) * 12);
}
.about_staff .about_staff_list .about_staff_item .about_staff_txt .about_staff_qual em {
  display: inline-block;
  padding: calc(var(--var-1) * 5) calc(var(--var-1) * 8) calc(var(--var-1) * 6);
  background: var(--cl-black-dark);
  color: var(--cl-white);
  margin-bottom: calc(var(--var-1) * 8);
  font: 500 calc(var(--var-1) * 15)/1 var(--family-serif);
  line-height: 1;
}
.about_staff .about_staff_list .about_staff_item .about_staff_txt .about_staff_comment {
  margin-top: calc(var(--var-1) * 24);
}

/*
========================================================================= */
/*  company(info)
========================================================================= */
.company {
  background: url(../img/about/info_bg.png) top/cover;
  padding-bottom: 0;
  position: relative;
}
.company .border {
  position: absolute;
  top: calc(var(--var-1) * 8);
  height: calc(var(--var-1) * 1);
}
.company .info_table {
  margin-top: calc(var(--var-1) * 48);
}
.company .info_table .company_table {
  width: 100%;
}
.company .info_table .company_table tbody {
  gap: calc(var(--var-1) * 24);
}
.company .info_table .company_table tbody .table_txt {
  letter-spacing: 0.1em;
  flex-direction: column;
}
.company .info_table .company_table tbody .table_txt .table_label {
  flex-shrink: 0;
  padding: calc(var(--var-1) * 14) 0;
  background: var(--cl-black-dark);
  color: var(--cl-white);
}
.company .info_table .company_table tbody .table_txt .table_desc {
  width: 100%;
  padding: calc(var(--var-1) * 14) 0;
  padding-inline: calc(var(--var-1) * 16);
  background: var(--cl-white);
  font-weight: 500;
}
.company .info_table .company_table tbody .table_txt .table_desc .tel_svg img {
  margin-top: calc(var(--var-1) * 4);
  display: block;
  width: calc(var(--var-1) * 240);
  filter: brightness(0) saturate(100%) invert(12%) sepia(6%) saturate(9%) hue-rotate(324deg) brightness(100%) contrast(80%);
}
.company .company_iframe {
  margin-top: calc(var(--var-1) * 72);
}
.company .company_iframe iframe {
  display: block;
  width: 100%;
  height: calc(var(--var-1) * 200);
  border: none;
}

/*
========================================================================= */
/*  menu_menu
========================================================================= */
.menu_menu {
  background: url(../img/cmn/deco_sv.png) no-repeat top/100%, url(../img/menu/menu_bg.png) top/cover;
}
.menu_menu .menu_menu_note {
  margin-top: calc(var(--var-1) * 32);
  text-align: center;
}
.menu_menu .menu_menu_wrap_list {
  gap: calc(var(--var-1) * 110);
  margin-top: calc(var(--var-1) * 48);
}
.menu_menu .menu_menu_wrap_list .menu_menu_img_wrap {
  position: relative;
}
.menu_menu .menu_menu_wrap_list .menu_menu_img_wrap .menu_menu_figure {
  width: 100%;
  height: calc(var(--var-1) * 111);
}
.menu_menu .menu_menu_wrap_list .menu_menu_img_wrap .menu_menu_figure_desc {
  position: absolute;
  bottom: calc(var(--var-1) * 12);
  left: calc(var(--var-1) * -16);
}
.menu_menu .menu_menu_wrap_list .menu_menu_img_wrap .menu_menu_figure_desc .menu_menu_deco {
  position: absolute;
  top: calc(var(--var-1) * -104);
  left: calc(var(--var-1) * -8);
  padding-top: calc(var(--var-1) * 10);
  padding-right: calc(var(--var-1) * 56);
  -webkit-background-clip: text;
          background-clip: text;
  color: transparent;
  font: 400 calc(var(--var-1) * 48)/1 var(--family-en2);
  letter-spacing: 0.1em;
  transform: rotate(-22.5deg);
  letter-spacing: normal;
}
.menu_menu .menu_menu_wrap_list .menu_menu_img_wrap .menu_menu_figure_desc .menu_menu_figure_lead {
  width: calc(var(--var-1) * 132);
  padding: calc(var(--var-1) * 4) 0 calc(var(--var-1) * 7);
  background: var(--cl-black-dark);
  color: var(--cl-white);
  font: 500 calc(var(--var-1) * 18)/1 var(--family-serif);
  text-align: center;
  letter-spacing: normal;
}
.menu_menu .menu_menu_wrap_list .menu_menu_desc {
  margin-top: calc(var(--var-1) * 48);
}
.menu_menu .menu_menu_wrap_list .menu_menu_list {
  margin-top: calc(var(--var-1) * 80);
  gap: calc(var(--var-1) * 40);
}
.menu_menu .menu_menu_wrap_list .menu_menu_list .menu_menu_item {
  width: 100%;
  padding: calc(var(--var-1) * 32) calc(var(--var-1) * 24);
  padding-bottom: calc(var(--var-1) * 48);
  background: var(--cl-white);
  box-shadow: 0 0 calc(var(--var-1) * 4) calc(var(--var-1) * 3) rgba(0, 0, 0, 0.1);
}
.menu_menu .menu_menu_wrap_list .menu_menu_list .menu_menu_item .menu_menu_lead {
  padding-bottom: calc(var(--var-1) * 16);
  font: 500 calc(var(--var-1) * 18)/1.6 var(--family-serif);
}
.menu_menu .menu_menu_wrap_list .menu_menu_list .menu_menu_item .menu_menu_price {
  margin-top: calc(var(--var-1) * 12);
  color: var(--cl-gold);
  font-size: calc(var(--var-1) * 16);
}
.menu_menu .menu_menu_wrap_list .menu_menu_list .menu_menu_item .menu_menu_item_desc {
  margin-top: calc(var(--var-1) * 12);
}

/*
========================================================================= */
/*  menu_flow
========================================================================= */
.menu_flow {
  position: relative;
}
.menu_flow::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: calc(var(--var-1) * 200);
  height: calc(var(--var-1) * 200);
  background: url(../img/menu/flow_deco.png) no-repeat top/100%;
}
.menu_flow .menu_flow_list {
  gap: calc(var(--var-1) * 55);
  margin-top: calc(var(--var-1) * 45);
  counter-reset: number 0;
}
.menu_flow .menu_flow_list .menu_flow_item {
  flex-direction: column;
  align-items: center;
  gap: calc(var(--var-1) * 24);
  padding: calc(var(--var-1) * 32) calc(var(--var-1) * 24);
  background: var(--cl-white-light);
  box-shadow: 0 0 calc(var(--var-1) * 4) calc(var(--var-1) * 3) rgba(0, 0, 0, 0.1);
  position: relative;
}
.menu_flow .menu_flow_list .menu_flow_item::after {
  content: "";
  position: absolute;
  bottom: calc(var(--var-1) * -36);
  left: 0;
  right: 0;
  margin: 0 auto;
  display: block;
  width: calc(var(--var-1) * 30);
  height: calc(var(--var-1) * 20);
  background: var(--cl-gold);
  clip-path: polygon(0% 0%, 100% 0%, 50% 100%);
}
.menu_flow .menu_flow_list .menu_flow_item:last-child::after {
  content: none;
}
.menu_flow .menu_flow_list .menu_flow_item .menu_flow_figure {
  flex-shrink: 0;
  width: calc(var(--var-1) * 230);
  height: calc(var(--var-1) * 230);
}
.menu_flow .menu_flow_list .menu_flow_item .menu_flow_figure img {
  width: calc(var(--var-1) * 230);
  height: calc(var(--var-1) * 230);
  -o-object-fit: cover;
     object-fit: cover;
}
.menu_flow .menu_flow_list .menu_flow_item .menu_flow_txt .menu_flow_lead {
  padding: calc(var(--var-1) * 8) 0;
  background: var(--cl-black);
  color: var(--cl-white);
  font: 500 calc(var(--var-1) * 20)/1 var(--family-serif);
  text-align: center;
  position: relative;
}
.menu_flow .menu_flow_list .menu_flow_item .menu_flow_txt .menu_flow_lead::before {
  counter-increment: number 1;
  content: "0" counter(number);
  position: absolute;
  top: calc(var(--var-1) * -32);
  left: calc(var(--var-1) * 10);
  z-index: 1;
  display: block;
  background: linear-gradient(53deg, rgb(181, 139, 66) 0%, rgb(244, 222, 183) 19.5%, rgb(181, 139, 66) 39%, rgb(244, 222, 183) 54%, rgb(204, 161, 87) 81%);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
  font: 500 italic calc(var(--var-1) * 48)/1 var(--family-en1);
  letter-spacing: 0.05em;
}
.menu_flow .menu_flow_list .menu_flow_item .menu_flow_txt .menu_flow_desc {
  margin-top: calc(var(--var-1) * 18);
}
.menu_flow .menu_flow_list .menu_flow_item .menu_flow_item_b {
  flex-direction: column;
  gap: calc(var(--var-1) * 28);
  margin-top: calc(var(--var-1) * 24);
}
.menu_flow .menu_flow_list .menu_flow_item .menu_flow_item_b .menu_flow_btn {
  display: block;
  color: var(--cl-white);
  margin: 0 auto;
  padding: calc(var(--var-1) * 14) 0;
}
.menu_flow .menu_flow_list .menu_flow_item .menu_flow_item_b .menu_flow_tel {
  align-items: center;
}

/*
========================================================================= */
/*  case
========================================================================= */
.case {
  background: url(../img/case/deco.png) no-repeat top/100%, url(../img/case/bg.png) top/cover;
}
.case .case_list {
  gap: calc(var(--var-1) * 50);
  flex-direction: column;
}
.case .case_list .case_item {
  width: 100%;
  padding: calc(var(--var-1) * 32) calc(var(--var-1) * 24);
  background: var(--cl-white);
  box-shadow: 0 0 calc(var(--var-1) * 4) calc(var(--var-1) * 3) rgba(0, 0, 0, 0.1);
}
.case .case_list .case_item .case_lead {
  padding-bottom: calc(var(--var-1) * 16);
  font: 600 calc(var(--var-1) * 18)/1 var(--family-serif);
  letter-spacing: 0.08em;
}
.case .case_list .case_item .case_item_figure_list {
  flex-direction: column;
  margin-top: calc(var(--var-1) * 16);
  gap: calc(var(--var-1) * 42);
  position: relative;
}
.case .case_list .case_item .case_item_figure_list::before {
  content: "";
  position: absolute;
  inset: 0;
  margin: auto;
  display: block;
  width: calc(var(--var-1) * 12);
  height: calc(var(--var-1) * 21);
  background: url(../img/case/arw.png) no-repeat top/100%;
  transform: rotate(90deg);
}
.case .case_list .case_item .case_item_figure_list .case_img_wrap .case_figure_desc {
  padding: calc(var(--var-1) * 12) 0 calc(var(--var-1) * 14);
  background: var(--cl-black);
  color: var(--cl-white);
  font: 500 calc(var(--var-1) * 18)/1 var(--family-serif);
  text-align: center;
  letter-spacing: 0.06em;
}
.case .case_list .case_item .case_item_figure_list .case_img_wrap .after {
  background: linear-gradient(to right, rgb(215, 173, 99) 0%, rgb(181, 139, 66) 34%, rgb(215, 173, 99) 67%, rgb(181, 139, 66) 100%);
}
.case .case_list .case_item .case_item_figure_list .case_img_wrap .case_figure::before {
  border: calc(var(--var-1) * 4) solid;
  -o-border-image: linear-gradient(53deg, rgb(181, 139, 66) 0%, rgb(244, 222, 183) 19.5%, rgb(181, 139, 66) 39%, rgb(244, 222, 183) 54%, rgb(204, 161, 87) 81%) 1;
  border-image: linear-gradient(53deg, rgb(181, 139, 66) 0%, rgb(244, 222, 183) 19.5%, rgb(181, 139, 66) 39%, rgb(244, 222, 183) 54%, rgb(204, 161, 87) 81%) 1;
  background: transparent;
}
.case .case_list .case_item .case_item_figure_list .case_img_wrap .case_figure .case_img {
  width: 100%;
  height: calc(var(--var-1) * 207.67);
  -o-object-fit: cover;
     object-fit: cover;
}
.case .case_list .case_item .case_number {
  margin-top: calc(var(--var-1) * 30);
  padding: calc(var(--var-1) * 8) 0 calc(var(--var-1) * 10);
  background: var(--cl-gray);
  font: 500 calc(var(--var-1) * 20)/1 var(--family-serif);
  text-align: center;
  letter-spacing: 0.06em;
}

/*
========================================================================= */
/*  voice_voice
========================================================================= */
.voice_voice {
  background: url(../img/case/deco.png) no-repeat top/100%, url(../img/case/bg.png) top/cover;
}
.voice_voice .voice_list {
  gap: calc(var(--var-1) * 50);
}
.voice_voice .voice_item {
  padding: calc(var(--var-1) * 32) calc(var(--var-1) * 24);
  background: var(--cl-white);
}
.voice_voice .voice_profile {
  font: 600 calc(var(--var-1) * 18)/1 var(--family-serif);
  letter-spacing: 0.08em;
  padding-bottom: calc(var(--var-1) * 16);
}
.voice_voice .voice_comment {
  margin-top: calc(var(--var-1) * 16);
}