@charset "UTF-8";
/* CSS Document */
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100;200;300;400;500;600;700;800;900&display=swap");
* {
  box-sizing: border-box;
  padding: 0;
  margin: 0;
  font-style: normal;
  font-size: 100%;
  list-style: none;
  text-decoration: none; }

img, video, iframe {
  max-width: 100%;
  height: auto; }

body {
  font-size: 18px;
  font-family: "poppins", "yu-gothic-pr6n", "Yu Gothic", "游ゴシック", "YuGothic", "游ゴシック体", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, sans-serif;
  font-weight: 400;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  line-height: 1.6; }

a {
  color: #333;
  transition-duration: 0.5s; }

a:hover {
  opacity: 0.7; }

.font_j {
  font-family: "yu-gothic-pr6n","Yu Gothic", "游ゴシック","YuGothic", "游ゴシック体","ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, sans-serif; }

.container {
  width: 1080px;
  max-width: 92%;
  margin-left: auto;
  margin-right: auto; }

.fadeIn {
  opacity: 0;
  transform: translateY(2rem);
  transition-duration: 1.2s; }
  .fadeIn.inView {
    opacity: 1;
    transform: translateY(0); }

.d-header {
  position: sticky;
  top: 0;
  z-index: 100;
  background: rgba(255, 255, 255, 0.9); }
  .d-header .container {
    width: auto;
    display: flex;
    justify-content: space-between;
    align-items: center;
    height: 70px; }
  .d-header .header-logo {
    flex: 0 0 156px;
    display: flex;
    align-items: center;
    line-height: 0; }
  .d-header .header-navi {
    flex: 1;
    display: flex;
    justify-content: flex-end;
    align-items: center;
    font-size: .78em;
    line-height: 1.2; }
    .d-header .header-navi .header-navi-wrap {
      display: flex;
      justify-content: flex-end;
      align-items: center;
      gap: 1rem; }
    .d-header .header-navi ul {
      display: flex;
      justify-content: flex-end;
      gap: .5rem; }
    .d-header .header-navi li {
      position: relative; }
      .d-header .header-navi li a {
        display: block;
        padding: 4px 1rem;
        height: 70px;
        display: flex;
        align-items: center; }
      .d-header .header-navi li ul {
        display: block;
        background: black;
        background-blend-mode: multiply;
        padding: 1rem;
        border-radius: 0 0 20px 20px;
        position: absolute;
        width: 200%;
        top: 70px;
        left: 0%;
        transform: translate(-1em, 0);
        box-shadow: 0 4px 4px #111;
        display: none; }
      .d-header .header-navi li li {
        font-weight: 500; }
        .d-header .header-navi li li a {
          display: block;
          padding: 1rem 1rem;
          height: auto;
          color: #fff;
          white-space: nowrap; }
    .d-header .header-navi li.hasChild {
      padding-right: 1rem; }
      .d-header .header-navi li.hasChild::after {
        content: "";
        position: absolute;
        right: .8rem;
        top: calc(50% - 0.45em);
        width: .8em;
        height: .7em;
        display: block;
        background: #737571;
        clip-path: polygon(0 0, 100% 0, 50% 100%);
        transition-duration: 0.4s; }
      .d-header .header-navi li.hasChild.open::after {
        transform: scale(-1, -1); }
    .d-header .header-navi .storebtn {
      padding-bottom: 4px; }
      .d-header .header-navi .storebtn a {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        padding: 12px 12px 7px;
        background: #D62945;
        border-radius: 10px;
        color: #fff;
        letter-spacing: 0.05em; }

.d-footer {
  background: #000;
  padding: 4rem 0 1rem; }

.footer-logo {
  width: 256px;
  max-width: 60%;
  margin: 0 auto;
  padding: 0 0 3rem; }

.footer-navi {
  padding-bottom: 2rem; }
  .footer-navi ul {
    display: flex;
    justify-content: center; }
  .footer-navi li {
    border-right: 1px solid #fff;
    font-size: .8em;
    line-height: 1.1;
    padding: 0 1rem; }
  .footer-navi li:last-of-type {
    border-right: 0; }
  .footer-navi a {
    color: #fff; }

.footer-sns {
  padding-bottom: 1.5rem; }
  .footer-sns ul {
    display: flex;
    justify-content: center;
    align-items: center; }
  .footer-sns li {
    padding: 0 1rem;
    line-height: 1; }

.footer-txt {
  color: #fff;
  font-size: 11px;
  display: flex;
  justify-content: center;
  gap: 2rem;
  flex-wrap: wrap; }

/* ========================================================
  .pagetop
======================================================== */
.pagetop {
  position: sticky;
  z-index: 10;
  bottom: 24px;
  display: none; }
  .pagetop p {
    text-align: right;
    position: absolute;
    right: 8px;
    bottom: -20px;
    font-size: 12px; }
    .pagetop p a {
      display: flex;
      justify-content: center;
      align-items: center;
      position: relative;
      border-radius: 10px;
      padding: 8px;
      width: 40px;
      height: 40px;
      background: #fff;
      border-radius: 50%;
      border: 1px solid #F3EFE7;
      transition-duration: 0.4s; }
      .pagetop p a span {
        width: 8px;
        height: 8px;
        border-top: 1px solid #D62945;
        border-right: 1px solid #D62945;
        transform: rotate(-45deg) translate(-5%, 5%);
        transform-origin: center; }
      .pagetop p a::after {
        position: absolute;
        left: 50%;
        top: 50%;
        width: 16px;
        height: 12px;
        clip-path: polygon(0 100%, 50% 0, 100% 100%);
        background: #F3EFE7;
        transform: translate(-50%, -50%);
        transform-origin: center; }
      .pagetop p a:hover {
        opacity: 1;
        background: #D62945; }
        .pagetop p a:hover span {
          border-color: #fff; }
        .pagetop p a:hover::after {
          background: #fff; }

.kv {
  overflow: hidden;
  position: relative;
  z-index: 10; }
  .kv h1 {
    position: absolute;
    top: 16%;
    left: 6%;
    width: 48%; }

.kv_slider li {
  opacity: 0;
  transition-duration: 1s; }
.kv_slider.slick-initialized li {
  opacity: 1; }

.top-conent {
  padding: 6rem 0 4rem 0; }
  .top-conent h2 {
    font-size: 2.75em;
    font-weight: 400;
    letter-spacing: 0.1em;
    padding-bottom: 2.5rem; }
    .top-conent h2 span {
      display: block;
      font-weight: 400;
      font-size: .5em;
      letter-spacing: 0; }

.txt-right {
  text-align: right; }

.txt-center {
  text-align: center; }

.link {
  display: inline-block;
  padding: 0 30px 4px 0;
  position: relative; }
  .link::after {
    content: "";
    position: absolute;
    right: 0;
    bottom: 0;
    width: 100%;
    height: 1rem;
    background: url("../images/common/arw-link-red.svg") no-repeat right bottom/180px;
    transition-duration: 0.5s; }
  .link:hover::after {
    right: -8px; }

.notes {
  font-size: 11px; }

.top-conent-about .container {
  display: flex;
  justify-content: space-between; }

.top-conent-about-txt {
  flex: 0 0 64%; }
  .top-conent-about-txt h2 {
    font-size: 2.4em;
    font-weight: 500;
    padding-bottom: 1.5rem; }
  .top-conent-about-txt p {
    line-height: 2.1; }

.top-conent-about-img {
  flex: 0 0 31%; }
  .top-conent-about-img figure {
    padding-bottom: 1rem; }

.top-conent-products {
  background: #F3EFE7;
  border-radius: 40px 40px 0 0;
  margin-bottom: -40px;
  padding-bottom: calc(4rem + 40px); }

.top-conent-products-body {
  display: flex;
  justify-content: space-between; }

.top-conent-products-item {
  flex: 0 0 46%;
  display: flex;
  flex-direction: column;
  justify-content: space-between; }
  .top-conent-products-item figure {
    padding-bottom: 1rem; }
    .top-conent-products-item figure img {
      box-shadow: 0 2px 4px #aaa; }
  .top-conent-products-item p {
    flex: 1;
    font-weight: 500;
    padding-bottom: 4px; }

.top-conent-technology {
  background: #fff;
  border-radius: 40px 40px 0 0;
  margin-bottom: -40px;
  padding-bottom: calc(4rem + 40px); }

.top-conent-technology-body {
  display: flex;
  justify-content: space-between; }

.top-conent-technology-item {
  flex: 0 0 46%;
  text-align: center; }
  .top-conent-technology-item video {
    width: 100%;
    aspect-ratio: 500 / 332;
    object-fit: cover; }
  .top-conent-technology-item .technology-logo {
    padding: 1rem 0; }
    .top-conent-technology-item .technology-logo img {
      height: 4rem; }
  .top-conent-technology-item h3 {
    font-size: 1.3em;
    padding-bottom: 1rem;
    font-weight: 500; }

.technology-detail {
  padding-top: 2rem; }
  .technology-detail dt {
    position: relative;
    padding-bottom: 1rem;
    cursor: pointer; }
    .technology-detail dt::after {
      content: "";
      position: absolute;
      left: 50%;
      bottom: 0;
      width: 16px;
      height: 16px;
      border: 1px solid #c00;
      border-top: 0;
      border-left: 0;
      transform: rotate(45deg) translate(-50%, 50%);
      transition-duration: 0.5s; }
  .technology-detail dt.open::after {
    transform: rotate(45deg) translate(-50%, 50%) scale(-1, -1); }
  .technology-detail dd {
    display: none; }

.top-conent-features {
  background: #F3EFE7;
  border-radius: 40px 40px 0 0;
  margin-bottom: -40px;
  padding-bottom: calc(4rem + 40px); }
  .top-conent-features .notes {
    padding-top: 2rem;
    text-align: center; }
    .top-conent-features .notes p {
      display: inline-block;
      text-align: left;
      text-indent: -1.2em;
      padding-left: 1.2em; }

.top-conent-features-body {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  max-width: 850px;
  margin: 0 auto; }

.features-item {
  margin: 2% 2%;
  flex: 0 0 29%;
  aspect-ratio: 1 / 1;
  border-radius: 50%;
  position: relative;
  overflow: hidden;
  text-align: center;
  box-shadow: 0 3px 6px rgba(196, 181, 150, 0.5);
  font-weight: 500;
  font-size: .95em; }
  .features-item_off {
    background: #fff;
    aspect-ratio: 1 / 1;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center; }
    .features-item_off i img {
      height: 3rem; }
    .features-item_off em {
      padding-top: 1rem; }
  .features-item_on {
    background: #D62945;
    color: #fff;
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: 0;
    transition-duration: 1s; }
    .features-item_on sup {
      position: absolute;
      font-size: 0.6em;
      transform: translateY(-5%); }
  .features-item:hover .features-item_on {
    opacity: 1; }

.top-conent-why {
  background: #fff;
  border-radius: 40px 40px 0 0;
  margin-bottom: -40px;
  padding-bottom: calc(4rem + 40px); }
  .top-conent-why .notes {
    padding: 2rem 0 0 1rem; }

.comparison-table {
  width: 100%;
  border-collapse: separate;
  border-spacing: 12px 10px;
  text-align: center;
  margin-left: -10px; }

/* ヘッダーセル */
.comparison-table th {
  padding: 1.1rem 8px 1rem;
  font-weight: 500;
  color: #fff;
  border-radius: 2px;
  line-height: 1.1; }
  .comparison-table th.th-empty {
    background-color: #5d2521; }
  .comparison-table th.th-highlight {
    background-color: #be2137;
    font-weight: 600; }
  .comparison-table th.th-dark {
    background-color: #5d2521; }

/* 行見出し (左端) */
.comparison-table td.row-header {
  background-color: #5d2521;
  color: #fff;
  font-weight: bold;
  font-size: 1rem;
  padding: 14px 16px;
  text-align: center;
  border-radius: 2px;
  white-space: nowrap; }

/* データセル */
.comparison-table td.data-cell {
  background-color: #f7f5ef;
  padding: 14px 12px;
  font-size: 1.2rem;
  vertical-align: middle;
  border-radius: 2px; }

/* 注釈付きの記号レイアウト */
.mark-with-note {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 4px;
  position: relative; }

.note-sup {
  font-size: 0.75rem;
  position: absolute;
  top: -2px;
  left: 110%; }

/* ランニングコスト用セル */
.comparison-table td.cost-cell {
  background-color: #f7f5ef;
  padding: 20px 12px;
  vertical-align: middle;
  border-radius: 2px; }

.cost-main {
  font-size: 1.15rem;
  line-height: 1.6;
  margin-bottom: 12px; }

.cost-detail {
  font-size: 0.8rem;
  color: #555;
  line-height: 1.4; }

.top-conent-benefit {
  background: #F3EFE7;
  border-radius: 40px 40px 0 0;
  margin-bottom: -40px;
  padding-bottom: calc(4rem + 40px); }
  .top-conent-benefit .notes {
    padding-top: 2rem; }

.benefit-body {
  padding: 2rem 0 0; }
  .benefit-body dl {
    background: #F6F3ED;
    border-radius: 0 0 40px 40px;
    font-weight: 600; }
  .benefit-body dt {
    background: #D62945;
    color: #fff;
    text-align: center;
    padding: 1rem;
    border-radius: 1rem;
    cursor: pointer; }
    .benefit-body dt em {
      display: flex;
      flex-direction: column;
      justify-content: center;
      align-items: center;
      position: relative;
      font-size: 0.9em;
      padding: 1rem 0 0; }
      .benefit-body dt em::after {
        content: "";
        bottom: 0;
        width: 16px;
        height: 16px;
        border: 1px solid #fff;
        border-top: 0;
        border-left: 0;
        transform: rotate(45deg);
        transition-duration: 0.5s; }
    .benefit-body dt:hover {
      opacity: 0.9; }
  .benefit-body dt.open em::after {
    transform: rotate(45deg) scale(-1, -1); }
  .benefit-body dd {
    display: none;
    text-align: center; }
    .benefit-body dd .benefit-body-data {
      display: flex;
      justify-content: space-between;
      flex-wrap: wrap;
      padding: 2rem 1rem; }
    .benefit-body dd p {
      flex: 0 0 46%; }
      .benefit-body dd p em {
        font-size: 0.85em; }
    .benefit-body dd .notes {
      flex: 0 0 100%; }

.top-conent-banner {
  background: #F3EFE7;
  border-radius: 40px 40px 0 0;
  padding-bottom: calc(4rem + 40px); }

.top-banner ul {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem 1rem; }
.top-banner li {
  flex: 0 0 calc(50% - 1rem);
  color: #fff; }
  .top-banner li a {
    display: block;
    position: relative;
    color: #fff; }
    .top-banner li a::after {
      content: "";
      position: absolute;
      left: 0;
      top: 0;
      width: 100%;
      height: 100%;
      background: rgba(0, 0, 0, 0.5);
      z-index: 3; }
    .top-banner li a i {
      position: relative;
      z-index: 1;
      display: block;
      overflow: hidden;
      line-height: 0; }
      .top-banner li a i img {
        transition-duration: 0.4s; }
    .top-banner li a p {
      position: absolute;
      left: 1rem;
      bottom: 2rem;
      z-index: 5; }
      .top-banner li a p b {
        display: block;
        font-weight: 500;
        font-size: 1.6em;
        letter-spacing: 0.075em; }
      .top-banner li a p small {
        display: block;
        font-size: 0.6em; }
      .top-banner li a p em {
        font-size: 0.9em;
        display: block;
        line-height: 1.4; }
    .top-banner li a span {
      right: 1rem;
      bottom: 1.5rem;
      display: inline-block;
      padding: 0 30px 4px 0;
      position: absolute;
      z-index: 4; }
      .top-banner li a span::after {
        content: "";
        position: absolute;
        right: 0;
        bottom: 0;
        width: 100%;
        height: 1rem;
        background: url("../images/common/arw-link-white.svg") no-repeat right bottom/180px;
        transition-duration: 0.5s; }
  .top-banner li a:hover i img {
    transform: scale(1.05); }
  .top-banner li a:hover span::after {
    right: -4px; }

.top-conent-lineup {
  background: #fff;
  border-radius: 40px 40px 0 0;
  margin-bottom: -40px;
  padding-bottom: calc(4rem + 40px); }
  .top-conent-lineup .notes {
    padding: 2rem 0 0 1rem; }

.lineup-filter {
  font-family: "yu-gothic-pr6n", "Yu Gothic", "游ゴシック", "YuGothic", "游ゴシック体", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, sans-serif; }
  .lineup-filter ul {
    display: flex;
    text-align: center;
    line-height: 1.3;
    font-size: 0.9em;
    padding-bottom: 3rem; }
  .lineup-filter li {
    display: flex;
    align-items: center;
    padding: 0 1.5rem;
    border-right: 1px solid #333; }
    .lineup-filter li:last-child {
      border-right: 0; }
    .lineup-filter li a.on {
      color: #D62945;
      pointer-events: none; }

.lineup-list ul {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem 1rem; }
.lineup-list li {
  flex: 0 0 calc(25% - 1rem);
  font-size: .9em;
  padding-bottom: 1rem; }
  .lineup-list li em.font_j {
    font-family: "Noto Sans JP", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", sans-serif;
    font-weight: 400;
    font-size: .9em; }

.main {
  position: relative; }

.main_txt {
  position: absolute;
  left: 4%;
  bottom: 8%;
  color: #fff; }
  .main_txt h1 {
    font-size: 4em;
    line-height: 1.2;
    padding-bottom: 2rem; }
    .main_txt h1 small {
      display: block;
      font-size: 0.6em;
      font-weight: 400;
      padding-bottom: 4px; }
    .main_txt h1 em {
      font-weight: 500;
      display: block; }
  .main_txt h2 {
    font-size: 1.85em;
    padding-top: 2.5rem;
    padding-bottom: 1.5rem;
    font-weight: 500; }
  .main_txt p {
    line-height: 2;
    font-size: .9em;
    font-weight: 500; }

.page-conent {
  padding: 6.5rem 0 7.5rem; }
  .page-conent h2 {
    padding-bottom: 2rem; }
    .page-conent h2 span {
      display: block;
      font-weight: 400;
      color: #D62945;
      letter-spacing: 0.075em;
      padding-bottom: 8px; }
    .page-conent h2 em {
      display: block;
      font-weight: 500;
      font-size: 2em; }
  .page-conent .ti1 {
    text-indent: -1em;
    padding-left: 1em; }

.page-conent-bg2 {
  background: #F3EFE7;
  border-radius: 40px 40px 0 0; }

.page-conent-bg3 {
  background: #5F5F5F;
  color: #fff;
  border-radius: 40px 40px 0 0; }
  .page-conent-bg3 h2 span {
    color: #fff; }

.page-conent-radius0 {
  border-radius: 0; }

.btn {
  display: block;
  border-radius: 8px;
  text-align: center;
  padding: 8px; }
  .btn span {
    display: block;
    font-size: 12px; }
  .btn em {
    display: block;
    font-weight: 600; }

.btn-white {
  border: 1px solid #444; }

.btn-red {
  background: #D62945;
  color: #fff; }

.page-headline {
  background: #000;
  color: #fff;
  line-height: 1;
  letter-spacing: 0.1em;
  font-size: 1.3em; }
  .page-headline .container {
    display: flex;
    align-items: center;
    height: 62px;
    padding-top: 2px; }
  .page-headline a {
    color: #fff; }
  .page-headline small {
    padding-left: 1rem;
    font-size: 0.65em;
    letter-spacing: 0; }

.case-filter ul {
  display: flex;
  text-align: center;
  line-height: 1.3;
  font-size: 0.9em;
  padding-bottom: 3rem; }
.case-filter li {
  display: flex;
  align-items: center;
  padding: 0 1.5rem;
  border-right: 1px solid #333; }
  .case-filter li:first-of-type {
    padding-left: 0; }
  .case-filter li:last-child {
    border-right: 0; }
  .case-filter li a.on {
    color: #D62945;
    pointer-events: none; }

.case-list ul {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem 1rem; }
.case-list li {
  flex: 0 0 calc(33.33% - 1rem);
  font-size: .9em;
  padding-bottom: 1rem; }
  .case-list li a {
    display: block; }
  .case-list li em {
    font-size: .9em;
    display: block; }
  .case-list li span {
    display: block;
    font-size: .8em; }

.page-conent-case-detail {
  padding: 2rem 0 4rem; }

.case-detail-wrap {
  display: flex;
  justify-content: space-between;
  flex-direction: row-reverse;
  align-items: center;
  padding-bottom: 4rem; }

.case-detail-img {
  flex: 0 0 68%; }
  .case-detail-img .case-img-large img {
    width: 100%;
    aspect-ratio: 8 / 5;
    object-fit: cover; }
  .case-detail-img .case-img-thum {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between; }
    .case-detail-img .case-img-thum::after {
      content: "";
      width: 19%; }
    .case-detail-img .case-img-thum li {
      flex: 0 0 calc(20% - 1%);
      cursor: pointer;
      opacity: 0.25;
      transition-duration: 0.3s; }
    .case-detail-img .case-img-thum li:hover {
      opacity: 0.75; }
    .case-detail-img .case-img-thum li.on {
      pointer-events: none;
      cursor: default;
      opacity: 1; }

.case-detail-prd {
  flex: 0 0 28%; }
  .case-detail-prd h1 {
    padding: 0 0 2rem;
    font-size: 1.2em; }
  .case-detail-prd ul {
    padding-bottom: 1rem; }
  .case-detail-prd li {
    font-size: .9em;
    padding: 8px 0; }
  .case-detail-prd .thum ul {
    display: flex;
    gap: 1px; }
  .case-detail-prd .thum li {
    flex: 0 0 132px; }

.backbtn {
  display: inline-flex;
  position: relative;
  align-items: center;
  gap: 4px; }
  .backbtn::before {
    content: "";
    display: inline-block;
    width: .9em;
    height: .9em;
    margin-bottom: 2px;
    border-left: 1px solid #333;
    border-bottom: 1px solid #333;
    transform: rotate(45deg);
    transition-duration: 0.4s; }
  .backbtn:hover::before {
    transform: rotate(45deg) translate(-4px, 4px); }

.page-conent-showroom {
  background: #fff; }
  .page-conent-showroom .page-conent-showroom-wrap {
    display: flex;
    justify-content: space-between;
    padding: 0 0 3rem;
    margin: 0 0 3rem;
    border-bottom: 1px solid #333; }
    .page-conent-showroom .page-conent-showroom-wrap:last-of-type {
      margin-bottom: 0;
      border-bottom: 0; }
  .page-conent-showroom h2 em {
    font-weight: 200;
    line-height: 1.2;
    font-size: 2.4em; }
  .page-conent-showroom-txt {
    flex: 0 0 46%;
    display: flex;
    flex-direction: column;
    justify-content: space-between; }
    .page-conent-showroom-txt .showroom-detail {
      flex: 1; }
    .page-conent-showroom-txt table {
      font-size: .85em;
      font-family: "yu-gothic-pr6n", "Yu Gothic", "游ゴシック", "YuGothic", "游ゴシック体", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, sans-serif;
      line-height: 2;
      margin-bottom: 1rem; }
    .page-conent-showroom-txt th {
      font-weight: 600;
      padding: 5px 0;
      vertical-align: top;
      text-align: left;
      padding-right: 1rem;
      white-space: nowrap; }
    .page-conent-showroom-txt td {
      padding: 5px 8px; }
    .page-conent-showroom-txt .btn {
      font-weight: 600; }
  .page-conent-showroom-img {
    flex: 0 0 46%;
    display: flex;
    flex-direction: column;
    justify-content: space-between; }
    .page-conent-showroom-img iframe {
      width: 100%;
      height: auto;
      aspect-ratio: 16 / 9; }

.page-conent-about {
  background: #fff; }
  .page-conent-about .container {
    display: flex;
    justify-content: space-between;
    align-items: flex-end; }
  .page-conent-about-txt {
    flex: 1; }
    .page-conent-about-txt p {
      line-height: 2;
      padding: 0 8px; }
  .page-conent-about-img {
    flex: 0 0 25%; }

.page-conent-history dl {
  position: relative;
  padding-left: 2rem;
  padding-bottom: 2rem;
  border-left: 2px solid #D62945; }
  .page-conent-history dl::before {
    content: "";
    position: absolute;
    left: -7px;
    top: 0;
    width: 12px;
    height: 12px;
    border-radius: 50%;
    background: #D62945; }
.page-conent-history dt {
  line-height: 1.4;
  transform: translateY(-6px); }
  .page-conent-history dt b {
    color: #D62945;
    font-weight: 500;
    font-size: 14px;
    display: inline-block; }
  .page-conent-history dt em {
    font-weight: 600;
    font-size: 1.15em;
    display: inline-block;
    padding: 4px 0 0;
    font-family: "yu-gothic-pr6n", "Yu Gothic", "游ゴシック", "YuGothic", "游ゴシック体", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, sans-serif; }
.page-conent-history dd {
  font-size: 0.8em; }

.page-conent-result {
  padding: 2rem 0; }

.page-conent-result-numbers ul {
  display: flex;
  justify-content: space-around; }
.page-conent-result-numbers li {
  padding: 10px 1px 0 1px;
  border-right: 1px solid #111;
  text-align: center;
  flex: 0 0 25%;
  line-height: 1.4;
  letter-spacing: 0.05em; }
  .page-conent-result-numbers li em {
    font-size: 4em;
    font-weight: 200;
    display: block;
    line-height: 1.2;
    letter-spacing: 0.025em; }
    .page-conent-result-numbers li em.ls0 {
      letter-spacing: -0.025em; }
    .page-conent-result-numbers li em small {
      font-size: 1rem; }
  .page-conent-result-numbers li span {
    display: block;
    font-family: "yu-gothic-pr6n", "Yu Gothic", "游ゴシック", "YuGothic", "游ゴシック体", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, sans-serif; }
  .page-conent-result-numbers li small {
    display: inline-block;
    line-height: 1.4;
    white-space: nowrap;
    font-size: 9px;
    letter-spacing: 0;
    letter-spacing: -0.05em; }
.page-conent-result-numbers li:last-of-type {
  border-right: 0; }

.page-conent-beauty {
  display: flex;
  justify-content: space-between;
  align-items: flex-end; }
  .page-conent-beauty h2 em {
    font-family: "yu-gothic-pr6n", "Yu Gothic", "游ゴシック", "YuGothic", "游ゴシック体", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, sans-serif; }
  .page-conent-beauty-txt {
    flex: 1; }
    .page-conent-beauty-txt p {
      line-height: 2;
      padding-bottom: 1rem; }
  .page-conent-beauty-img {
    flex: 0 0 25%; }

.page-conent-comfort {
  display: flex;
  justify-content: space-between;
  align-items: flex-end; }
  .page-conent-comfort h2 em {
    font-family: "yu-gothic-pr6n", "Yu Gothic", "游ゴシック", "YuGothic", "游ゴシック体", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, sans-serif; }
  .page-conent-comfort-txt {
    flex: 1; }
    .page-conent-comfort-txt p {
      line-height: 2;
      padding-bottom: 1rem; }
  .page-conent-comfort-img {
    flex: 0 0 25%; }
    .page-conent-comfort-img video {
      width: 100%;
      aspect-ratio: 4 / 5;
      object-fit: cover; }

.page-conent-group {
  text-align: center; }
  .page-conent-group p {
    line-height: 2; }
  .page-conent-group .page-conent-result-numbers {
    padding-top: 4rem; }
    .page-conent-group .page-conent-result-numbers li {
      border-color: #fff; }
      .page-conent-group .page-conent-result-numbers li em {
        line-height: 1;
        position: relative; }
        .page-conent-group .page-conent-result-numbers li em small {
          display: block;
          position: absolute;
          width: 100%;
          top: -1.3em;
          font-weight: 500;
          font-size: 1rem;
          letter-spacing: 0.075em; }

.page-conent-contact h2 {
  color: #D62945;
  border-bottom: 1px solid #D62945;
  padding: 0 0 4px; }

.contact-lead {
  padding: 8px 0;
  border-bottom: 1px solid #D62945;
  font-size: .8em; }
  .contact-lead p {
    padding: 8px 0; }

.contact-info {
  padding: 2rem 0;
  font-size: 14px; }
  .contact-info a {
    text-decoration: underline; }

.contact-step {
  display: flex;
  justify-content: space-between;
  padding-bottom: 2rem; }
  .contact-step li {
    background: #E6E5DC;
    color: #717266;
    display: flex;
    align-items: center;
    flex: 0 0 32%;
    padding: 4px 8px 0;
    font-weight: 600; }
    .contact-step li i {
      flex: 0 0 3em;
      font-size: 1.1em; }
    .contact-step li span {
      flex: 1;
      text-align: center; }
  .contact-step li.now {
    color: #fff;
    background: #717266; }

.contact-form_input {
  font-weight: 500;
  font-size: 16px;
  font-family: "Noto Sans JP", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", sans-serif; }
  .contact-form_input a {
    text-decoration: underline; }
  .contact-form_input fieldset {
    border: 0; }
  .contact-form_input dl {
    display: flex;
    flex-wrap: wrap; }
  .contact-form_input dt {
    flex: 0 0 12em;
    margin-right: 2em;
    padding-bottom: 1rem; }
    .contact-form_input dt i {
      background: #D62945;
      color: #fff;
      line-height: 1;
      padding: 0 3px 1px;
      font-size: 11px;
      margin-left: 3px;
      display: inline-block; }
  .contact-form_input small {
    display: inline-block;
    line-height: 1.3;
    font-size: .8em; }
  .contact-form_input dd {
    flex: 0 0 calc(100% - 14em);
    padding-bottom: 2rem; }
  .contact-form_input dd.name {
    display: flex;
    justify-content: space-between; }
    .contact-form_input dd.name div {
      flex: 0 0 48%; }
  .contact-form_input dd.files .filefield__head {
    display: flex;
    align-items: center;
    gap: 8px; }
  .contact-form_input dd.files .filefield__row {
    border: 1px solid #ddd;
    padding: 8px;
    display: flex;
    justify-content: space-between;
    margin-bottom: 4px; }
  .contact-form_input dd.files .filefield__note {
    font-weight: 400;
    font-size: 12px; }
  .contact-form_input .error {
    color: #D62945 !important;
    font-size: .9em;
    background: none;
    padding: 0 0; }
  .contact-form_input .agree-text {
    font-size: 0.9em;
    padding-bottom: 2rem; }
    .contact-form_input .agree-text a {
      text-decoration: underline; }
  .contact-form_input .agree {
    text-align: center; }
  .contact-form_input .agree-text-confirm {
    display: none; }
  .contact-form_input .btn {
    display: flex;
    justify-content: center;
    padding: 2rem;
    gap: 2rem; }
    .contact-form_input .btn input,
    .contact-form_input .btn button {
      background: #D62945;
      color: #fff;
      border: 0;
      padding: 1rem 2rem;
      cursor: pointer;
      font-size: 1.2em; }
      .contact-form_input .btn input:hover,
      .contact-form_input .btn button:hover {
        background: #d11; }
  .contact-form_input textarea,
  .contact-form_input input[type="tel"],
  .contact-form_input input[type="text"],
  .contact-form_input input[type="email"],
  .contact-form_input select {
    padding: 8px 4px;
    background: #E6E5DC;
    color: #717266;
    width: 100%;
    border: 0; }
    .contact-form_input textarea::placeholder,
    .contact-form_input input[type="tel"]::placeholder,
    .contact-form_input input[type="text"]::placeholder,
    .contact-form_input input[type="email"]::placeholder,
    .contact-form_input select::placeholder {
      color: #aaa; }
    .contact-form_input textarea:focus::placeholder,
    .contact-form_input input[type="tel"]:focus::placeholder,
    .contact-form_input input[type="text"]:focus::placeholder,
    .contact-form_input input[type="email"]:focus::placeholder,
    .contact-form_input select:focus::placeholder {
      color: transparent; }

.contact-form_confirm textarea,
.contact-form_confirm input[type="tel"],
.contact-form_confirm input[type="text"],
.contact-form_confirm input[type="email"],
.contact-form_confirm select {
  background: none; }
.contact-form_confirm dt, .contact-form_confirm dd {
  border-bottom: 1px dashed #ddd;
  padding: 1rem; }
.contact-form_confirm dt i {
  visibility: hidden;
  display: none; }
.contact-form_confirm dd.name {
  justify-content: flex-start; }
  .contact-form_confirm dd.name div {
    flex: auto;
    padding-right: 1rem; }
.contact-form_confirm .note,
.contact-form_confirm .agree,
.contact-form_confirm .agree-text {
  display: none; }

.column {
  display: flex;
  justify-content: space-between;
  flex-direction: row-reverse; }
  .column .column__main {
    flex: 0 0 74%; }
  .column .archive-news__main a {
    padding: 20px 0;
    display: flex;
    align-items: center;
    width: 100%;
    position: relative;
    border-top: 1px solid #F3EFE7; }
    .column .archive-news__main a::after {
      position: absolute;
      content: '';
      width: 30px;
      height: 10px;
      background-position: center;
      background-repeat: no-repeat;
      background-size: contain;
      right: 0;
      top: 50%;
      transform: translateY(-50%); }
    .column .archive-news__main a:last-child {
      border-bottom: 1px solid #F3EFE7; }
  .column .archive-news__main--day {
    font-size: 14px;
    padding-top: 2px;
    flex: 0 0 7em; }
  .column .archive-news__main--cate {
    margin-right: 20px;
    display: inline-block;
    background: #D62945;
    color: #fff;
    font-size: 12px;
    padding: 0 4px 2px;
    font-family: "Noto Sans JP", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", sans-serif;
    margin-right: 1rem; }
  .column .archive-news__main--ttl {
    padding-top: 2px; }
  .column__sidebar {
    position: sticky;
    top: 60px;
    flex: 0 0 22%; }
    .column__sidebar .archive-news__sidebar--ttl {
      border-bottom: 1px solid #333;
      margin-bottom: 1rem; }
    .column__sidebar li {
      padding: 0 0 1rem 0;
      font-size: .85em; }
      .column__sidebar li a:hover {
        color: #D62945;
        opacity: 1; }
    .column__sidebar li.active {
      color: #D62945;
      position: relative; }
      .column__sidebar li.active::before {
        content: "";
        position: absolute;
        left: -0.8em;
        top: .4em;
        width: .4em;
        height: .6em;
        display: block;
        clip-path: polygon(0 0, 100% 50%, 0 100%);
        background: #D62945; }
      .column__sidebar li.active a {
        color: #D62945; }
    @media screen and (max-width: 767px) {
      .column__sidebar {
        width: 100%; } }

.pageder {
  padding: 2rem 0; }
  .pageder .nav-links {
    display: flex;
    justify-content: center;
    gap: 1rem; }
  .pageder .page-numbers {
    width: 1.5em;
    aspect-ratio: 1 / 1;
    display: flex;
    justify-content: center;
    align-items: center;
    padding-top: .2em; }
  .pageder .current {
    background: #D62945;
    color: #fff; }

.download-list {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between; }
  .download-list li i img {
    height: 16rem; }
  .download-list li em {
    display: block;
    font-weight: 500;
    font-size: .9em; }

.page-conent-manual_download h3 {
  margin-bottom: 1rem;
  font-size: 1.2em; }
.page-conent-manual_download table {
  width: 100%;
  border-collapse: collapse;
  margin-bottom: 6rem; }
.page-conent-manual_download th, .page-conent-manual_download td {
  padding: 1rem 1rem;
  border: 1px solid #555;
  white-space: nowrap; }
  .page-conent-manual_download th:first-child, .page-conent-manual_download td:first-child {
    border-left: 0; }
  .page-conent-manual_download th:last-child, .page-conent-manual_download td:last-child {
    border-right: 0; }
  .page-conent-manual_download th a, .page-conent-manual_download td a {
    color: #3E5DA8;
    display: inline-block;
    padding: 0 1rem; }
  .page-conent-manual_download th a:hover, .page-conent-manual_download td a:hover {
    text-decoration: underline; }
.page-conent-manual_download th {
  text-align: center;
  color: #111;
  background: #F3EFE7;
  white-space: nowrap; }
.page-conent-manual_download td:first-child {
  white-space: nowrap;
  width: 20em; }
.page-conent-manual_download td {
  width: auto; }

.page_shoplist h3 {
  font-weight: 500;
  padding-bottom: 1rem;
  font-family: "yu-gothic-pr6n", "Yu Gothic", "游ゴシック", "YuGothic", "游ゴシック体", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, sans-serif; }
.page_shoplist table {
  width: 100%;
  border-collapse: collapse;
  font-size: 14px;
  margin-bottom: 6rem; }
.page_shoplist th, .page_shoplist td {
  padding: 8px 1rem 3px;
  border: 1px solid #555; }
  .page_shoplist th:first-child, .page_shoplist td:first-child {
    border-left: 0; }
  .page_shoplist th:last-child, .page_shoplist td:last-child {
    border-right: 0; }
  .page_shoplist th a, .page_shoplist td a {
    text-decoration: underline; }
.page_shoplist th {
  text-align: center;
  color: #111;
  background: #F3EFE7; }
.page_shoplist td:nth-child(3), .page_shoplist td:nth-child(4) {
  text-align: center; }

.page-conent-pp {
  font-family: "yu-gothic-pr6n", "Yu Gothic", "游ゴシック", "YuGothic", "游ゴシック体", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, sans-serif; }
  .page-conent-pp h2 {
    padding-top: 1rem;
    padding-bottom: 8px;
    margin-bottom: 1rem;
    border-bottom: 1px solid #aaa; }

.policy__box {
  padding: 1rem;
  background: #F3EFE7; }

.page-conent-faq {
  font-family: "yu-gothic-pr6n", "Yu Gothic", "游ゴシック", "YuGothic", "游ゴシック体", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, sans-serif; }

.page_faq__sideber {
  position: sticky;
  top: 88px; }

.faq_cats {
  padding-bottom: 4rem; }

.page_faq__main h2 {
  padding-bottom: 1rem; }

.page_faq__main--item {
  border-bottom: 1px solid #ddd; }
  .page_faq__main--item:first-of-type {
    border-top: 1px solid #aaa; }
  .page_faq__main--item--ttl {
    display: flex;
    padding: 1rem 8px;
    position: relative;
    cursor: pointer; }
    .page_faq__main--item--ttl:hover {
      background: #f0f0f0; }
    .page_faq__main--item--ttl span {
      color: #c21;
      font-family: "poppins", sans-serif;
      padding-right: 1em; }
    .page_faq__main--item--ttl::after {
      content: "";
      position: absolute;
      width: 20px;
      height: 13px;
      right: 1rem;
      top: 50%;
      transform: translate(0, -50%);
      background: url("../images/common/faq-y.svg") no-repeat 0 0/contain; }
    .page_faq__main--item--ttl.open::after {
      transform: scale(-1, -1) translate(0, 50%); }
  .page_faq__main--item--content {
    display: none;
    border-top: 1px dashed #eee;
    background: #f9f9f9; }
    .page_faq__main--item--content--text {
      display: flex;
      padding: 1rem 2rem; }
      .page_faq__main--item--content--text span {
        color: #c21;
        font-family: "poppins", sans-serif;
        padding-right: 1em;
        padding-top: 4px; }
      .page_faq__main--item--content--text p {
        font-size: 0.85em;
        padding-top: .5rem; }
      .page_faq__main--item--content--text a {
        color: #D62945;
        text-decoration: underline; }

.page-conent-maintenance .annotation {
  font-size: .8em; }

.page_maintenance__user {
  padding-bottom: 5rem; }
  .page_maintenance__user--block {
    padding: 2rem;
    background-color: #f0f0f0; }
  .page_maintenance__user--list {
    display: flex;
    justify-content: space-between;
    font-family: "yu-gothic-pr6n", "Yu Gothic", "游ゴシック", "YuGothic", "游ゴシック体", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, sans-serif; }
    @media screen and (max-width: 1120px) {
      .page_maintenance__user--list {
        justify-content: center; } }
    .page_maintenance__user--list--item {
      width: 31%;
      position: relative; }
      @media screen and (max-width: 767px) {
        .page_maintenance__user--list--item:first-child::after {
          display: none; } }
      .page_maintenance__user--list--item::after {
        position: absolute;
        content: '';
        width: 1px;
        height: 100%;
        background-color: #000;
        right: -5.5%;
        top: 0; }
        @media screen and (max-width: 1120px) {
          .page_maintenance__user--list--item::after {
            right: -4.2%; } }
      .page_maintenance__user--list--item:last-child::after {
        display: none; }
      @media screen and (max-width: 1120px) {
        .page_maintenance__user--list--item:nth-child(2n) {
          margin-bottom: 30px; } }
      @media screen and (max-width: 1120px) {
        .page_maintenance__user--list--item:nth-child(2n)::after {
          display: none; } }
      .page_maintenance__user--list--item--ttl {
        background-color: #D62945;
        display: flex;
        align-items: center;
        justify-content: center;
        padding: 10px;
        color: #fff; }
      .page_maintenance__user--list--item--tel {
        display: flex;
        align-items: flex-end;
        justify-content: center;
        padding-top: 1rem; }
        .page_maintenance__user--list--item--tel01 {
          font-size: .8em; }
        .page_maintenance__user--list--item--tel02 {
          line-height: 1.1;
          font-size: 1.4em;
          font-weight: 600;
          padding-left: 5px; }
      .page_maintenance__user--list--item--eigyo {
        font-size: .8em;
        text-align: center;
        padding-top: 10px; }
.page_maintenance__period {
  padding-bottom: 5rem; }
  .page_maintenance__period__list {
    display: flex;
    justify-content: space-between;
    padding-top: 2rem; }
    @media screen and (max-width: 767px) {
      .page_maintenance__period__list {
        flex-direction: column;
        align-items: center; } }
    .page_maintenance__period__list--item {
      width: 31%;
      background-color: #f0f0f0;
      text-align: center;
      display: flex;
      flex-direction: column;
      justify-content: space-between;
      padding: 2rem;
      font-size: 1.2em;
      color: #D62945; }
      @media screen and (max-width: 767px) {
        .page_maintenance__period__list--item {
          width: 330px;
          padding: 20px; } }
      @media screen and (max-width: 480px) {
        .page_maintenance__period__list--item {
          width: 100%; } }
      @media screen and (max-width: 767px) {
        .page_maintenance__period__list--item:nth-child(1), .page_maintenance__period__list--item:nth-child(2) {
          margin-bottom: 30px; } }
      .page_maintenance__period__list--item--ttl.original {
        margin-bottom: 0;
        margin-top: 30px; }
      .page_maintenance__period__list--item--img {
        margin-bottom: 20px; }
        .page_maintenance__period__list--item--img img {
          width: 130px;
          max-width: 100%;
          height: 130px;
          max-height: 100%; }
          @media screen and (max-width: 480px) {
            .page_maintenance__period__list--item--img img {
              height: 100px;
              width: 100px; } }
      .page_maintenance__period__list--item--year span:nth-child(1) {
        font-size: 3em;
        font-weight: 600; }
      .page_maintenance__period__list--item--year span:nth-child(2) {
        font-size: 1.1em;
        font-weight: 500;
        padding-left: 5px; }
.page_maintenance__close__list {
  padding-top: 2rem; }
  .page_maintenance__close__list table {
    width: 100%; }
    .page_maintenance__close__list table tr:last-child th, .page_maintenance__close__list table tr:last-child td {
      border-bottom: 1px solid #222; }
    .page_maintenance__close__list table tr:first-child th, .page_maintenance__close__list table tr:first-child td {
      border-top: 1px solid #222; }
    .page_maintenance__close__list table tr th, .page_maintenance__close__list table tr td {
      line-height: 2;
      text-align: left;
      padding: 1rem;
      border-bottom: 1px solid #222; }
    .page_maintenance__close__list table tr th {
      width: 130px;
      color: #D62945;
      border-right: 1px solid #222; }
      @media screen and (max-width: 767px) {
        .page_maintenance__close__list table tr th {
          width: 110px; } }
      @media screen and (max-width: 480px) {
        .page_maintenance__close__list table tr th {
          width: 90px; } }
    .page_maintenance__close__list table tr td {
      width: calc(100% - 120px); }
  .page_maintenance__close__list .border {
    position: relative; }
  .page_maintenance__close__list .text {
    -webkit-writing-mode: vertical-rl;
    -moz-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    -ms-writing-mode: vertical-rl;
    writing-mode: vertical-rl;
    vertical-align: middle;
    text-align: center;
    line-height: 1.2;
    margin: auto; }
  .page_maintenance__close__list .vertical {
    text-orientation: upright;
    line-height: 1; }

.prd-wrap {
  width: 680px;
  max-width: 100%;
  margin: auto;
  padding: 2rem;
  background: #fff; }

.prd-kv {
  padding-bottom: 2rem; }

.prd-title {
  display: flex;
  justify-content: space-between; }
  .prd-title h1 {
    padding: 0 1rem 1rem 0; }
    .prd-title h1 b {
      font-weight: 400;
      font-size: 1.7em;
      display: block;
      white-space: nowrap; }
    .prd-title h1 b.font_j {
      font-weight: 600; }
    .prd-title h1 span {
      font-family: "yu-gothic-pr6n", "Yu Gothic", "游ゴシック", "YuGothic", "游ゴシック体", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, sans-serif; }
    .prd-title h1 em {
      font-weight: 300;
      font-size: .9em; }
  .prd-title figure {
    flex: 0 0 212px; }

.prd-spec h2 {
  font-weight: 500; }

.prd-spec-wrap {
  display: flex;
  padding-bottom: 3rem; }

.prd-spec-table {
  flex: 0 0 50%;
  padding: .5rem; }
  .prd-spec-table table {
    width: 100%;
    font-size: 12px;
    border-collapse: collapse;
    border-bottom: 1px solid #444; }
  .prd-spec-table th, .prd-spec-table td {
    font-weight: 400;
    padding: 8px 0;
    border-top: 1px solid #444;
    height: 5em;
    overflow: visible;
    text-align: left;
    line-height: 1.4;
    font-family: "yu-gothic-pr6n", "Yu Gothic", "游ゴシック", "YuGothic", "游ゴシック体", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, sans-serif; }

.prd-btn {
  padding-bottom: 2rem; }
  .prd-btn ul {
    display: flex;
    justify-content: space-around; }
  .prd-btn li {
    flex: 0 0 50%;
    padding: .5rem; }

.modaal-inner-wrapper {
  padding: 1rem; }

.modaal-container {
  width: auto; }

.modaal-content-container {
  padding: 0; }

.single-news {
  position: relative; }
  .single-news .single-news__inner__ttl {
    padding-bottom: 1rem; }
    .single-news .single-news__inner__ttl h1 {
      border: 1px solid #D62945;
      border-left: 0;
      border-right: 0;
      padding: 1.5rem 0 1rem;
      margin-bottom: 1rem;
      font-size: 1.5em;
      line-height: 1.3; }
  .single-news .single-news__inner__ttl--bottom {
    display: flex;
    gap: 1rem;
    font-size: .8em; }
  .single-news .single-news__inner__ttl--cate {
    font-size: 12px;
    background: #D62945;
    color: #fff;
    display: inline-flex;
    align-items: center;
    padding: .2em 8px 0; }
  .single-news .single-news__inner__content p {
    padding: 0 0 1.5em;
    text-align: justify; }
  .single-news .single-news__inner__content h3 {
    line-height: 3rem;
    padding-left: 20px; }
    @media screen and (max-width: 767px) {
      .single-news .single-news__inner__content h3 {
        font-size: 1.8rem;
        line-height: 2.5rem;
        padding-left: 10px; } }

.single__inner--pager {
  padding-top: 4rem;
  display: flex;
  justify-content: center;
  gap: 2rem;
  font-family: "yu-gothic-pr6n", "Yu Gothic", "游ゴシック", "YuGothic", "游ゴシック体", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, sans-serif; }

/*Humburg*/
.header-Btn {
  display: none; }

.menu-trigger,
.menu-trigger span {
  display: inline-block;
  transition: all .4s;
  box-sizing: border-box; }

.menu-trigger {
  position: relative;
  width: 24px;
  height: 18px; }

.menu-trigger span {
  position: absolute;
  left: 0;
  width: 100%;
  height: 2px;
  background-color: #666;
  border-radius: 0px; }

.menu-trigger span:nth-of-type(1) {
  top: 0; }

.menu-trigger span:nth-of-type(2) {
  top: 8px; }

.menu-trigger span:nth-of-type(3) {
  bottom: 0; }

.menu-trigger span:nth-of-type(1) {
  animation: menu-bar01 .75s forwards; }

@keyframes menu-bar01 {
  0% {
    transform: translateY(8px) rotate(45deg); }
  50% {
    transform: translateY(8px) rotate(0); }
  100% {
    transform: translateY(0) rotate(0); } }
.menu-trigger span:nth-of-type(2) {
  transition: all .25s .25s;
  opacity: 1; }

.menu-trigger span:nth-of-type(3) {
  animation: menu-bar02 .75s forwards; }

@keyframes menu-bar02 {
  0% {
    transform: translateY(-8px) rotate(-45deg); }
  50% {
    transform: translateY(-8px) rotate(0); }
  100% {
    transform: translateY(0) rotate(0); } }
.menu-trigger.active span:nth-of-type(1) {
  animation: active-menu-bar01 .75s forwards; }

@keyframes active-menu-bar01 {
  0% {
    transform: translateY(0) rotate(0); }
  50% {
    transform: translateY(8px) rotate(0); }
  100% {
    transform: translateY(8px) rotate(45deg); } }
.menu-trigger.active span:nth-of-type(2) {
  opacity: 0; }

.menu-trigger.active span:nth-of-type(3) {
  animation: active-menu-bar03 .75s forwards; }

@keyframes active-menu-bar03 {
  0% {
    transform: translateY(0) rotate(0); }
  50% {
    transform: translateY(-8px) rotate(0); }
  100% {
    transform: translateY(-8px) rotate(-45deg); } }
@media (max-width: 1080px) {
  .d-header .header-navi {
    font-size: .95em; }
    .d-header .header-navi .header-navi-wrap {
      position: fixed;
      overflow: auto;
      right: 0;
      top: 70px;
      height: calc(100vh - 70px);
      width: 100%;
      max-width: 440px;
      background: rgba(0, 0, 0, 0.8);
      background-blend-mode: multiply;
      color: #fff;
      padding: 4vw;
      opacity: 0;
      visibility: hidden;
      transform: translateX(101%);
      transition-duration: 0.5s;
      display: block;
      font-size: 1.1em; }
    .d-header .header-navi ul {
      display: block;
      padding-bottom: 4vw; }
      .d-header .header-navi ul li {
        padding: 1px 0; }
        .d-header .header-navi ul li a {
          padding: 8px 1rem;
          color: #fff;
          height: auto; }
        .d-header .header-navi ul li ul {
          display: block;
          position: static;
          background: none;
          box-shadow: none;
          border-radius: 0;
          padding: 0 1rem 2vw;
          width: auto;
          transform: translate(0, 0);
          font-size: .8em; }
          .d-header .header-navi ul li ul li {
            width: auto; }
          .d-header .header-navi ul li ul a {
            color: #fff;
            padding: 8px 1rem; }
      .d-header .header-navi ul li.hasChild::after {
        content: none; }
    .d-header .header-navi .storebtn a {
      display: flex;
      justify-content: center; }
  .d-header .header-Btn {
    display: block; }
  .d-header.active .header-navi .header-navi-wrap {
    visibility: visible;
    opacity: 1;
    transform: translateX(0); }

  .lineup-filter ul {
    flex-wrap: wrap;
    justify-content: center; }
    .lineup-filter ul li {
      padding: .5rem 1rem;
      font-size: .8em;
      margin-bottom: 1rem; }

  .comparison-table-wrapper {
    overflow-x: auto; }
    .comparison-table-wrapper th {
      white-space: nowrap; } }
.sp {
  display: none; }

@media (max-width: 736px) {
  .pc {
    display: none; }

  .sp {
    display: block; }

  br.sp {
    display: inline; }

  body {
    font-size: 16px; }

  .footer-logo {
    padding-bottom: 2rem; }

  .footer-txt {
    flex-direction: column-reverse;
    align-items: center;
    gap: 1rem;
    font-size: 10px; }

  .kv h1 {
    width: 60%;
    top: 10%; }
    .kv h1 picture {
      width: 100%; }
    .kv h1 img {
      width: 100%; }

  .top-conent {
    padding: 3rem 0 4rem; }
    .top-conent h2 {
      font-size: 2em; }
    .top-conent p {
      font-size: 0.875em; }

  .top-conent-about .container {
    display: block; }
  .top-conent-about-txt {
    padding-bottom: 2rem; }
    .top-conent-about-txt p {
      white-space: nowrap; }
  .top-conent-about-img {
    max-width: 70%;
    margin-left: auto; }

  .top-conent-products {
    padding: 4rem 1rem; }

  .top-conent-products-body {
    display: block; }

  .top-conent-products-item {
    padding-bottom: 2rem; }

  .top-conent-technology {
    padding: 4rem 1rem; }

  .top-conent-technology-body {
    display: block; }

  .top-conent-technology-item {
    padding-bottom: 2rem; }
    .top-conent-technology-item:last-child {
      padding-top: 2rem; }
    .top-conent-technology-item h3 {
      font-size: 1.1em; }
    .top-conent-technology-item p {
      font-size: .875em;
      white-space: nowrap;
      letter-spacing: -0.01em;
      width: 108%;
      transform: translateX(-4%); }

  .technology-detail {
    padding-top: 1rem; }

  .top-conent-why,
  .top-conent-features,
  .top-conent-benefit {
    padding: 4rem 1rem;
    padding-bottom: 5rem; }

  .features-item {
    flex: 0 0 46%;
    font-size: .8em; }

  .top-conent-why .notes {
    padding: 1rem 0 0; }

  .benefit-body dd .benefit-body-data {
    display: block; }
    .benefit-body dd .benefit-body-data p {
      margin-bottom: 1rem; }

  .top-conent-lineup {
    padding: 4rem 0 4rem 1rem; }

  .case-filter ul,
  .lineup-filter ul {
    flex-wrap: wrap;
    justify-content: flex-start; }
    .case-filter ul li,
    .lineup-filter ul li {
      padding: 0;
      flex: 0 0 50%;
      font-size: .875em;
      margin-bottom: 8px;
      border: 0;
      line-height: 1; }
      .case-filter ul li br,
      .lineup-filter ul li br {
        display: none; }
      .case-filter ul li a,
      .lineup-filter ul li a {
        display: block;
        padding: 4px 8px 2px;
        border-left: 2px solid #333; }
      .case-filter ul li a.on,
      .lineup-filter ul li a.on {
        border-color: #D62945; }

  .lineup-list ul {
    gap: 0;
    justify-content: space-between; }
  .lineup-list li {
    font-size: .875em;
    flex: 0 0 32%; } }
  @media (max-width: 736px) and (max-width: 480px) {
    .lineup-list li {
      flex: 0 0 48%; } }

@media (max-width: 736px) {
  .top-banner ul {
    display: block; }
    .top-banner ul li {
      margin-bottom: 1rem; }
      .top-banner ul li a span {
        display: none; }
      .top-banner ul li a p {
        bottom: 1rem; }

  .top-conent-banner {
    border-radius: 0;
    padding: 3rem 1rem 2rem; }

  .prd-wrap {
    max-width: 100%;
    width: auto;
    padding: 8px; }

  .prd-kv {
    line-height: 0;
    padding-bottom: 8px; }

  .prd-title {
    flex-direction: column-reverse; }
    .prd-title h1 {
      padding: 1rem; }
    .prd-title h1 b {
      font-size: 1.6em; }

  .prd-spec {
    padding: 1rem; }

  .prd-spec-wrap {
    display: block; }

  .prd-spec-table {
    padding: 0; }

  .prd-spec-table:first-child table {
    border-bottom: 0; }

  .prd-spec-table:last-child table {
    border-top: 0; }

  .prd-btn {
    padding-bottom: 4rem; }
    .prd-btn ul {
      display: block; }

  .page-conent {
    padding: 3rem 1rem; }
    .page-conent p {
      font-size: .875em; }

  .page-conent-bg2 {
    padding: 4rem 1rem 4rem 1rem; }

  .page-conent-about .container {
    display: block; }

  .page-conent-about-img {
    width: 72%;
    max-width: 332px;
    margin-top: 2rem;
    margin-left: auto; }
    .page-conent-about-img .notes {
      font-size: 10px; }

  .page-conent-history {
    padding-left: 1rem; }
    .page-conent-history dd {
      font-size: .95em; }

  .page-conent-result {
    padding: 2rem 0; }
    .page-conent-result .container {
      max-width: 100%; }

  .page-conent-result-numbers ul {
    flex-wrap: wrap; }
  .page-conent-result-numbers li {
    flex: 0 0 50%;
    margin-bottom: 1rem; }
    .page-conent-result-numbers li em {
      font-size: 3em; }
    .page-conent-result-numbers li span {
      font-size: .875em; }
    .page-conent-result-numbers li small {
      display: inline-block;
      line-height: 1.5; }
  .page-conent-result-numbers li:nth-child(even) {
    border-right: 0; }

  .page-conent-beauty,
  .page-conent-comfort {
    display: block; }
    .page-conent-beauty .notes,
    .page-conent-comfort .notes {
      padding-top: 1rem;
      font-size: .9em; }

  .page-conent-group h2 {
    white-space: nowrap; }
    .page-conent-group h2 em {
      font-size: 1.8em; }
  .page-conent-group p {
    white-space: nowrap;
    width: 108%;
    transform: translateX(-4%); }

  .page-conent-group .page-conent-result-numbers {
    width: 116%;
    transform: translateX(-8%); }
    .page-conent-group .page-conent-result-numbers li em {
      letter-spacing: 0; }
    .page-conent-group .page-conent-result-numbers li span {
      font-size: .8em; }

  .main-showroom,
  .main-case {
    display: flex;
    flex-direction: column-reverse; }
    .main-showroom .main_txt,
    .main-case .main_txt {
      position: static;
      color: #333;
      padding: 1rem;
      width: 92%;
      margin: 0 auto;
      font-size: .875em; }
      .main-showroom .main_txt h2,
      .main-case .main_txt h2 {
        padding-top: 0;
        padding-bottom: 1rem; }

  .page-conent-showroom .page-conent-showroom-wrap {
    flex-direction: column; }
    .page-conent-showroom .page-conent-showroom-wrap:last-child {
      margin-bottom: 0;
      padding-bottom: 0; }
    .page-conent-showroom .page-conent-showroom-wrap h2 {
      white-space: nowrap;
      order: 1;
      padding-bottom: 1rem; }
      .page-conent-showroom .page-conent-showroom-wrap h2 em {
        font-size: 2.2em; }
    .page-conent-showroom .page-conent-showroom-wrap div {
      order: 3; }
    .page-conent-showroom .page-conent-showroom-wrap figure {
      order: 2; }
    .page-conent-showroom .page-conent-showroom-wrap iframe {
      margin-top: 2rem;
      order: 10; }
  .page-conent-showroom .page-conent-showroom-img,
  .page-conent-showroom .page-conent-showroom-txt {
    display: contents; }

  .page-conent-case {
    padding-top: 2rem; }

  .case-filter ul {
    padding-bottom: 1rem; }

  .case-list ul {
    gap: 0;
    justify-content: space-between; }
  .case-list li {
    flex: 0 0 48%; } }
  @media (max-width: 736px) and (max-width: 480px) {
    .case-list li {
      flex: 0 0 100%; } }

@media (max-width: 736px) {
  .page-conent-case-detail {
    padding: 0 0 3rem; }
    .page-conent-case-detail .container {
      max-width: 100%; }

  .case-detail-wrap {
    flex-direction: column-reverse;
    align-items: flex-start;
    padding-bottom: 1rem; }

  .case-detail-img .case-img-thum {
    padding: 1rem;
    justify-content: flex-start; } }
  @media (max-width: 736px) and (max-width: 480px) {
    .case-detail-img .case-img-thum li {
      flex: 0 0 33%;
      padding: 4px; } }

@media (max-width: 736px) {
  .case-detail-prd {
    flex: auto;
    padding: 1.5rem; }
    .case-detail-prd h1 {
      padding-bottom: 1rem; }

  .case-back {
    padding: 0 1.5rem; }

  .download-list li {
    flex: 0 0 48%;
    padding-bottom: 2rem; }
    .download-list li i {
      display: flex;
      align-items: center;
      background: #f7f7f7;
      padding: 1px;
      margin-bottom: .5rem; }
      .download-list li i img {
        width: 100%;
        height: auto;
        aspect-ratio: 12 / 15;
        object-fit: contain; }

  .page-conent-manual_download td:first-child,
  .page-conent-manual_download th, .page-conent-manual_download td {
    white-space: normal;
    min-width: 40vw; }

  .column {
    flex-direction: column-reverse; }
    .column .column__sidebar {
      position: static;
      padding-bottom: 2rem; }
      .column .column__sidebar ul {
        display: flex;
        flex-wrap: wrap; }
      .column .column__sidebar li {
        margin-right: 15px; }
    .column .archive-news__main a {
      flex-wrap: wrap; }
    .column .archive-news__main--ttl {
      flex: 0 0 100%; }

  .page_shoplist .scroll-hint {
    margin-bottom: 4rem; }
    .page_shoplist .scroll-hint table {
      margin-bottom: 0; }
  .page_shoplist th {
    min-width: 10em; }

  .page_faq__main--item--ttl {
    padding-right: 3rem; }

  .page_maintenance__user--block {
    padding: 0; }

  .page_maintenance__user--list {
    display: block; }

  .page_maintenance__user--list--item {
    width: auto;
    padding-bottom: 1rem; }

  .page_maintenance__user--list--item:nth-child(2n) {
    margin-bottom: 0; }

  .page_maintenance__close__list table {
    font-size: .9em; }
    .page_maintenance__close__list table tr th,
    .page_maintenance__close__list table tr td {
      padding: 8px;
      line-height: 1.5; } }
