@charset "UTF-8";
/* common--------------------------*/
:root {
  --c_rd: #C00;
  --c_bl: #004caa;
  --c_aq: #00b1e7;
  --c_ye: #FDC602;
  --c_or: #E45B1C;
  --c_gr: #06C755;
  --c_gy: #C8C8C8;
  --c_be: #F6F4EE;
  --c_wh: #fff;
  --c_bk: #000;
  --font_oswald: "oswald", sans-serif;
  --font_helvetica: "helvetica-neue-lt-pro", sans-serif;
}

.fo-inter {
  font-family: "Inter", "Noto Sans JP", sans-serif;
  font-weight: 700;
}

.fo-din {
  font-family: "din-2014", sans-serif;
  font-weight: 700;
  font-style: normal;
  line-height: 0.8;
}

.fo-oswald {
  font-family: var(--font_oswald);
  font-weight: 600;
  font-style: normal;
  line-height: 1;
  letter-spacing: 0.05em;
}

.fo-helvetica {
  font-family: var(--font_helvetica);
  font-weight: 700;
  font-style: normal;
  line-height: 1;
}

* {
  margin: 0px;
  padding: 0px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
}

html {
  font-size: 10px;
  /*	visibility: hidden;*/
}

html.wf-active {
  visibility: visible;
}

body {
  font-family: "source-han-sans-japanese", sans-serif;
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 1.5;
  text-align: center;
  color: #000;
  min-width: 340px;
  /* font-feature-settings: "palt"; */
}

#top {
  position: absolute;
  top: 0;
  left: 0;
  height: 0;
  width: 0;
  visibility: hidden;
  opacity: 0;
}

a {
  color: #000;
  outline: none;
  text-decoration: none;
  transition: 0.2s;
}

a,
area {
  outline: none;
}

a img {
  border: 0px;
  vertical-align: bottom;
  transition: 0.4s;
}

article > section {
  padding: 8rem 0;
  overflow: hidden;
}

.container {
  width: 90%;
  max-width: 1000px;
  margin: 0 auto;
}

.container._w95 {
  width: 95%;
}

.container._800 {
  max-width: 800px;
}

.container._1100 {
  max-width: 1100px;
}

.container._1200 {
  max-width: 1200px;
}

a.blank::after {
  content: "";
  display: inline-block;
  background: url("../img/blank_bk.svg") center center no-repeat;
  background-size: contain;
  width: 1.2rem;
  height: 1.2rem;
  margin-left: 0.7rem;
}

a.blank._wh::after {
  background-image: url("../img/blank_wh.svg");
}

.fw500 {
  font-weight: 500;
}

b,
.fw600 {
  font-weight: 600;
}

.fw700 {
  font-weight: 700;
}

.txt-lh {
  line-height: 1.8;
}

.txt-rl {
  text-align: left;
  -webkit-writing-mode: vertical-rl;
  -ms-writing-mode: tb-rl;
  -o-writing-mode: vertical-rl;
  writing-mode: vertical-rl;
  /*text-orientation: upright;*/
}

.txt-rl .num-tb {
  -webkit-writing-mode: horizontal-tb;
  -ms-writing-mode: lr-tb;
  writing-mode: horizontal-tb;
  line-height: 1;
}

@media screen and (max-width: 768px) {
  /* .txt-rl {
  	-webkit-writing-mode:horizontal-tb;
  	-ms-writing-mode:lr-tb;
  	writing-mode:horizontal-tb;
  } */
}
.txt-palt {
  font-feature-settings: "palt";
}

img {
  vertical-align: bottom;
  margin: auto;
  max-width: 100%;
  height: auto;
  width: auto;
}

@media screen and (min-width: 768px) {
  img {
    image-rendering: -webkit-optimize-contrast;
  }
  _::-webkit-full-page-media,
  _:future,
  :root img {
    image-rendering: inherit;
  }
}
iframe {
  width: 100%;
}

video {
  width: 100%;
  height: auto;
}

/*character setting-----------*/
small {
  font-size: 75%;
}

strong {
  font-weight: 800;
}

em,
address {
  font-style: normal;
}

sup {
  font-size: 75%;
  vertical-align: 0.35em;
}

/*list-------------------*/
ul,
ol {
  list-style-type: none;
}

/* table---------------------*/
table {
  border-collapse: collapse;
  border-spacing: 0;
  width: 100%;
}

tbody {
  -webkit-text-size-adjust: 100%;
}

caption {
  text-align: left;
}

/*form---------------------*/
button,
input[type=submit] {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  padding: 0;
  border: none;
  outline: none;
  background: transparent;
  cursor: pointer;
  transition: 0.2s;
}

input[type=radio],
input[type=checkbox] {
  margin: 0 5px 0 0;
  width: auto;
}

select {
  cursor: pointer;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border: none;
  outline: none;
  background: transparent;
}

label {
  display: inline-block;
  cursor: pointer;
  margin: 0 5px 5px 0;
}

label:hover {
  background: #f1f1f1;
}

/*align---------------------*/
.alnleft {
  text-align: left;
}

.alncenter {
  text-align: center;
}

.alnright {
  text-align: right;
}

@media screen and (max-width: 768px) {
  .splft {
    text-align: left;
  }
}
/*margin--------------------*/
.ma30 {
  margin: 3rem;
}

.ma20 {
  margin: 2rem;
}

.ma10 {
  margin: 1rem;
}

.ma05 {
  margin: 0.5rem;
}

.mt60 {
  margin-top: 6rem;
}

.mt50 {
  margin-top: 5rem;
}

.mt40 {
  margin-top: 4rem;
}

.mt30 {
  margin-top: 3rem;
}

.mt20 {
  margin-top: 2rem;
}

.mt15 {
  margin-top: 1.5rem;
}

.mt10 {
  margin-top: 1rem;
}

.mt05 {
  margin-top: 0.5rem;
}

.mb60 {
  margin-bottom: 6rem;
}

.mb50 {
  margin-bottom: 5rem;
}

.mb40 {
  margin-bottom: 4rem;
}

.mb30 {
  margin-bottom: 3rem;
}

.mb20 {
  margin-bottom: 2rem;
}

.mb15 {
  margin-bottom: 1.5rem;
}

.mb10 {
  margin-bottom: 1rem;
}

.mb05 {
  margin-bottom: 0.5rem;
}

.mr20 {
  margin-right: 2rem;
}

.mr10 {
  margin-right: 1rem;
}

.mr05 {
  margin-right: 0.5rem;
}

.ml20 {
  margin-left: 2rem;
}

.ml15 {
  margin-left: 1.5rem;
}

.ml10 {
  margin-left: 1rem;
}

.ml05 {
  margin-left: 0.5rem;
}

/*padding----*/
.pa30 {
  padding: 3rem;
}

.pa20 {
  padding: 2rem;
}

.pa10 {
  padding: 1rem;
}

.pa05 {
  padding: 0.5rem;
}

.pt30 {
  padding-top: 3rem;
}

.pt20 {
  padding-top: 2rem;
}

.pt15 {
  padding-top: 1.5rem;
}

.pt10 {
  padding-top: 1rem;
}

.pt05 {
  padding-top: 0.5rem;
}

.pb30 {
  padding-bottom: 3rem;
}

.pb20 {
  padding-bottom: 2rem;
}

.pb15 {
  padding-bottom: 1.5rem;
}

.pb10 {
  padding-bottom: 1rem;
}

.pb05 {
  padding-bottom: 0.5rem;
}

.pr20 {
  padding-right: 2rem;
}

.pr10 {
  padding-right: 1rem;
}

.pr05 {
  padding-right: 0.5rem;
}

.pl20 {
  padding-left: 2rem;
}

.pl10 {
  padding-left: 1rem;
}

.pl05 {
  padding-left: 0.5rem;
}

.pt00 {
  padding-top: 0px;
}

.pl00 {
  padding-left: 0px;
}

.pb00 {
  padding-bottom: 0px;
}

.pr00 {
  padding-right: 0px;
}

/*----ディスプレイ----*/
.slick-slide {
  outline: none;
}

.fontmincho {
  font-family: "ヒラギノ明朝 Pro W6", "Hiragino Mincho Pro", "HGS明朝E", "ＭＳ Ｐ明朝", serif;
}

.block {
  display: block;
}

.inline {
  display: inline;
}

.inlineblock {
  display: inline-block;
}

.onlysp,
.none {
  display: none;
}

a:hover img {
  opacity: 0.8;
}

@media screen and (max-width: 768px) {
  .onlypc {
    display: none;
  }
  .onlysp {
    display: block;
  }
  .d-sp-block {
    display: block !important;
  }
  .w-sp-100 {
    width: 100% !important;
  }
}
/*-----------Flexbox-----------*/
.d-flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.f-wrap {
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.f-nowrap {
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
}

.jc-start {
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
}

.jc-end {
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
}

.jc-center {
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}

.jc-between {
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

.ai-start {
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
}

.ai-end {
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: flex-end;
}

.ai-center {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.ac-center {
  -ms-flex-line-pack: center;
  align-content: center;
}

.order-1 {
  -webkit-box-ordinal-group: 2;
  -ms-flex-order: 1;
  order: 1;
}

.order-0 {
  -webkit-box-ordinal-group: 1;
  -ms-flex-order: 0;
  order: 0;
}

.box-borderbox {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
}

.flex-center {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -ms-flex-line-pack: center;
  align-content: center;
}

.flex-center > * {
  width: 100%;
}

.row-r {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -ms-flex-direction: row-reverse;
  flex-direction: row-reverse;
}

.text-L {
  font-size: 120%;
  font-weight: 700;
  text-align: center;
}

.clr-rd {
  color: var(--c_rd) !important;
}

.clr-bl {
  color: var(--c_bl) !important;
}

.clr-aq {
  color: var(--c_aq) !important;
}

.clr-ye {
  color: var(--c_ye) !important;
}

.clr-or {
  color: var(--c_or) !important;
}

.clr-gr {
  color: var(--c_gr) !important;
}

.clr-gy {
  color: var(--c_gy) !important;
}

.clr-be {
  color: var(--c_be) !important;
}

.clr-wh {
  color: var(--c_wh) !important;
}

.clr-bk {
  color: var(--c_bk) !important;
}

.bg-rd {
  background-color: var(--c_rd) !important;
}

.bg-bl {
  background-color: var(--c_bl) !important;
}

.bg-aq {
  background-color: var(--c_aq) !important;
}

.bg-ye {
  background-color: var(--c_ye) !important;
}

.bg-or {
  background-color: var(--c_or) !important;
}

.bg-gr {
  background-color: var(--c_gr) !important;
}

.bg-gy {
  background-color: var(--c_gy) !important;
}

.bg-wh {
  background-color: var(--c_wh) !important;
}

.bg-bk {
  background-color: var(--c_bk) !important;
}

.bg-be {
  background-color: var(--c_be) !important;
}

html {
  font-size: 2.7777777vw;
}

body {
  font-size: 1.4rem;
  line-height: 1.5;
}

.pageArea {
  padding-top: 7.058rem;
  background: #fff;
}

article > section {
  padding: 4rem 0;
}

/*header
---------------------------------------------------------*/
#header {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 9999;
  background: #004caa;
}

#header.scrollCrass {
  box-shadow: 0 0.5rem 0.5rem -0.5rem rgba(0, 0, 0, 0.1);
}

.headerWrap {
  width: 100%;
  max-width: 95%;
  margin: 0 auto;
  padding: 0.7rem 0;
  position: relative;
}

.hLogo {
  max-width: 10rem;
}

.hTxt {
  font-size: 1.1rem;
  text-align: left;
}

.hIcon {
  position: absolute;
  bottom: 0.7rem;
  right: 2.5%;
  z-index: 1;
  gap: 0 0.5rem;
}

.hIcon li {
  width: 4.5rem;
  color: #353535;
  aspect-ratio: 1;
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 50%;
}

.hTel {
  background: var(--c_ye);
}

.hTel img {
  width: 2.5rem;
}

/*nav
---------------------------------------------------------*/
.menuIconWrap {
  display: block;
  z-index: 9999;
  cursor: pointer;
  border-radius: 50%;
  border: 0.2rem solid var(--c_aq);
  background: var(--c_aq);
  transition: 0.4s;
  margin-left: auto;
  position: relative;
}

.menuIconWrap.active {
  background: #fff;
}

.menuIcon {
  width: 2.2rem;
  height: 1.8rem;
  position: relative;
}

.menuIcon span {
  position: absolute;
  left: 0;
  right: 0;
  margin: 0 auto;
  width: 2rem;
  height: 0.2rem;
  background: var(--c_ye);
  z-index: 10;
  border-radius: 10rem;
  transition: 0.2s;
  transform-origin: center;
}

.menuIcon span:nth-of-type(1) {
  top: 0px;
}

.menuIcon span:nth-of-type(2) {
  top: calc(50% - 0.1rem);
}

.menuIcon span:nth-of-type(3) {
  bottom: 0px;
}

.menuIconWrap.active span {
  background: var(--c_bl);
}

.menuIconWrap.active span:nth-of-type(1) {
  -webkit-transform: translateY(0.8rem) rotate(45deg);
  transform: translateY(0.8rem) rotate(45deg);
}

.menuIconWrap.active span:nth-of-type(2) {
  opacity: 0;
}

.menuIconWrap.active span:nth-of-type(3) {
  -webkit-transform: translateY(-0.85rem) rotate(-45deg);
  transform: translateY(-0.85rem) rotate(-45deg);
}

#nav {
  position: fixed;
  top: 0;
  bottom: 0;
  right: 0;
  z-index: 10;
  width: 100%;
  height: 100%;
  transition: all 0.3s ease-in-out;
  overflow-y: auto;
  overflow-x: hidden;
  -webkit-overflow-scrolling: touch;
  display: block;
  padding: 8rem 0 0;
  background: #F6F4EE;
  transform: translateY(-2rem);
  visibility: hidden;
  opacity: 0;
}

#nav .container {
  padding-top: 2rem;
}

#nav.active {
  transform: translateY(0);
  opacity: 1;
  visibility: visible;
  z-index: 9990;
}

.mainnavi01 {
  padding: 2rem 0;
}

.mainnavi01 li {
  flex-basis: 48%;
  text-align: left;
}

.mainnavi01 li a {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  font-weight: 600;
  background: #fff;
  padding: 1rem;
  margin: 0 0 1rem;
  border-radius: 10px;
}

.mainnavi01 li._bl a {
  background: var(--c_rd);
  color: #fff;
}

.mainnavi01 li._100 {
  flex-basis: 100%;
}

.mainnavi01 li._100 a {
  justify-content: center;
}

.mainnavi01 li figure {
  padding: 0 1rem 0 0;
}

.mainnavi02 {
  margin: 0 0 2rem;
}

.mainnavi02 li a {
  display: block;
  padding: 1rem 0;
  border-bottom: 1px solid var(--c_gy);
  text-align: left;
  font-weight: 600;
  position: relative;
}

.mainnavi02 li a::after {
  content: "";
  display: block;
  background: url(../img/arrow_ye.svg) center center no-repeat var(--c_bl);
  background-size: 25% auto;
  border-radius: 50%;
  width: 2rem;
  height: 2rem;
  position: absolute;
  right: 0rem;
  top: 50%;
  transform: translateY(-50%);
  z-index: 1;
}

.memuclose {
  background: #fff;
  padding: 1rem;
  border-radius: 10px;
  font-size: 1.6rem;
  margin: 0 0 2rem;
  font-weight: 600;
  cursor: pointer;
}

.consultSec {
  background: var(--c_be);
  padding: 0;
}

.consultSec h2 {
  position: relative;
  background: var(--c_bl);
  color: #fff;
  padding: 0.7rem;
  letter-spacing: 0.05em;
}

.consultSec.bg-ye h2 {
  background: var(--c_rd);
}

.consultSec.bg-ye li.bg-ye {
  background: var(--c_aq) !important;
}

.consultSec.bg-ye .contactBtn {
  display: none;
}

.consultSec.ttlBgOr h2 {
  background: var(--c_or);
}

.freeCont {
  width: 90%;
  max-width: 1000px;
  margin: 0 auto;
  padding: 1.8rem 0 2rem;
}

.freeTxtWrap {
  position: relative;
  padding-bottom: 1rem;
}

.freeTxt {
  gap: 0.5rem;
  margin-bottom: 0;
  white-space: nowrap;
}

.freeTxt li {
  padding: 0.5rem 0.3rem 0.7rem;
  font-size: 2.2rem;
  color: #fff;
  font-weight: 600;
  line-height: 1.2;
  letter-spacing: 0.2em;
  text-indent: 0.3em;
}

.freeTxtWrap ._free {
  background: none;
  color: var(--c_rd);
  font-size: 5rem;
  font-weight: 800;
  padding: 0;
  letter-spacing: 0.2em;
  text-align: left;
  margin-left: 5rem;
  line-height: 1.3;
}

.freeTxtWrap .img {
  position: absolute;
  right: 0;
  bottom: 0;
  width: 13rem;
}

.telArea {
  background: var(--c_or);
  border-radius: 10px;
  padding: 1rem;
  box-shadow: 0px 0.6rem 0px 0px #ad4515;
  display: block;
}

.telArea:hover {
  opacity: 0.8;
}

.telArea .ttl {
  font-size: 1.6rem;
  font-weight: 600;
  padding: 0.5rem;
  background: #fff;
  color: var(--c_bl);
  margin-bottom: 0.5rem;
}

.telArea .ttl:before,
.telArea .ttl:after {
  content: "▼▼▼";
  color: var(--c_ye);
  letter-spacing: 0.2em;
  font-size: 70%;
  margin: 0 0.5rem;
  vertical-align: 0.2rem;
}

.telnum {
  display: inline-block;
  font-size: 3.8rem;
  color: #fff;
  white-space: nowrap;
  background: url(../img/icon_fd.svg) left center no-repeat;
  background-size: 5.3rem auto;
  padding-left: 5.5rem;
  line-height: 1.2;
}
@media screen and (max-width: 767px) {
  .telnum {
    font-size: 2.8rem;
  }
}

.teltime {
  font-size: 1.2rem;
  letter-spacing: 0.05em;
  color: #fff;
}

.contactBtn {
  margin-top: 1.5rem;
}

.contactBtn li {
  width: 49%;
}

.contactBtn li img {
  width: 100%;
  border-radius: 1rem;
}

/*footer
---------------------------------------------------------*/
.lastSec {
  padding: 2.8rem 0;
}

.lastSec h2 {
  font-size: 2rem;
  padding: 1rem;
  margin-bottom: 1rem;
  background: var(--c_bl);
  color: var(--c_ye);
}

.lastSec .txt {
  text-align: left;
  line-height: 1.6;
}

.lastSec .txt p + p {
  margin-top: 1.4rem;
}

.lastSec .logoRow {
  margin: 3.2rem 0 1.6rem;
  gap: 1.6rem;
  align-items: flex-end;
  justify-content: center;
}

.lastSec .logoRow .logo {
  flex: 1;
}
.lastSec .logoRow .logo img {
  max-width: 300px;
}

.lastSec .logoRow .name {
  font-size: 2rem;
  margin-bottom: -0.3rem;
  font-weight: 500;
}

.fNavBtnWrap {
  background: url(../img/btn_grad.svg) top center no-repeat;
  background-size: 100% 45%;
  background-color: var(--c_rd);
  cursor: pointer;
  padding: 1.5rem 1rem 1rem;
  color: #fff;
  font-weight: 400;
}

.fNavBtn {
  font-size: 2.6rem;
  letter-spacing: 0.05em;
  gap: 1rem;
  margin-bottom: 0.5rem;
}

.fNavBtn strong {
  font-weight: 600;
}

.fNavBtnIconWrap {
  width: 4.5rem;
  height: 4.5rem;
  background: rgba(155, 1, 1, 0.7);
  border-radius: 50%;
  display: flex;
  justify-content: center;
  align-items: center;
}

#fNav {
  display: none;
  background: #F6F4EE;
}

.fNavBtnWrap.act span:nth-of-type(1) {
  -webkit-transform: translateY(0.8rem) rotate(45deg);
  transform: translateY(0.8rem) rotate(45deg);
}

.fNavBtnWrap.act span:nth-of-type(2) {
  opacity: 0;
}

.fNavBtnWrap.act span:nth-of-type(3) {
  -webkit-transform: translateY(-0.85rem) rotate(-45deg);
  transform: translateY(-0.85rem) rotate(-45deg);
}

#footer {
  background: url("../img/bg_footer.png") no-repeat right bottom var(--c_bl);
}

.footerBnrPage {
  padding-bottom: 9.2rem;
}

.fWrap {
  padding: 1.6rem 0 2rem;
  position: relative;
  text-align: left;
}

.pageTop {
  position: absolute;
  right: 0;
  top: 1rem;
  font-size: 1.2rem;
  text-align: center;
  display: block;
  color: var(--c_wh);
  padding-top: 5rem;
  line-height: 1.2;
  z-index: 10;
}

.pageTop::before {
  content: "";
  display: block;
  width: 4.4rem;
  height: 4.4rem;
  background: url(../img/arrow02_wh.svg) center center no-repeat;
  background-size: 44% auto;
  background-color: var(--c_ye);
  border-radius: 50%;
  transform: rotate(-90deg);
  margin: 0 auto;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
}

.fLogo {
  max-width: 22.4rem;
  margin-bottom: 2.5rem;
}
.fLogo img {
  width: 60%;
  margin-inline: auto;
}

.fLogo span {
  display: inline-block;
  background: var(--c_bl);
  color: #fff;
  font-size: 1.1rem;
  padding: 0.2rem 0.5rem;
  margin-bottom: 0.5rem;
}

.fAdd {
  font-size: 1.2rem;
  color: var(--c_wh);
}

.copyRight {
  color: var(--c_wh);
  margin-top: 1.5rem;
  font-size: 1rem;
  letter-spacing: 0.1em;
}

.footerBnr {
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  margin-inline: auto;
  z-index: 999;
  background-color: #fff;
  box-shadow: 0 0 0.8rem rgba(0, 0, 0, 0.1);
}

/*共通
---------------------------------------------------------*/
:root {
  --flex-direction: column;
}

.d-grid {
  display: grid;
}

.d-grid._column1 {
  grid-template-columns: repeat(1, 1fr) !important;
}

.d-block {
  display: block;
}

._margin {
  margin: 0 -6%;
}

/* ボタン */
.btnWrap.d-grid {
  gap: 1.4rem;
  margin-top: 2rem;
  grid-template-columns: repeat(1, 1fr);
}

.btnWrap.d-grid .btn {
  margin: 0;
}

.btn {
  max-width: 32rem;
  margin: 3rem auto 0;
}

.btn a,
.formBtn input {
  display: block;
  background-color: var(--c_ye);
  padding: 1.4rem 3.6rem 1.4rem 3rem;
  border-radius: 1rem;
  color: var(--c_bl);
  font-weight: 700;
  font-size: 2.2rem;
  line-height: 1.2;
  position: relative;
  box-shadow: 0 0.5rem 0 0 #E2AD0D;
}

.formBtn .inputWrap {
  position: relative;
}

.btn a::after,
.formBtn .inputWrap::after {
  content: "";
  display: block;
  background: #fff url(../img/arrow_bl.svg) 54% 50% no-repeat;
  background-size: 34% auto;
  border-radius: 50%;
  width: 2.4rem;
  height: auto;
  aspect-ratio: 1;
  position: absolute;
  right: 1.2rem;
  top: 50%;
  transform: translateY(-50%);
  z-index: 1;
}

.btn._small a {
  font-size: 2rem;
  padding-right: 4rem;
}

.btn._small02 a {
  font-size: 1.9rem;
  text-align: left;
}

.btn._small03 {
  width: 24rem;
}

.btn._small03 a {
  font-size: 1.8rem;
}

.btn._wh a {
  background-color: #fff;
  box-shadow: 0 0.5rem 0 0 #DCDCDC;
  border: 0.1rem solid #DCDCDC;
}

.btn._wh a::after {
  background-color: var(--c_ye);
}

.btn._or a {
  background-color: var(--c_or);
  box-shadow: 0 0.5rem 0 0 #AE4717;
  color: #fff;
}

.btn._bl a {
  background-color: var(--c_bl);
  box-shadow: 0 0.5rem 0 0 #003560;
  color: #fff;
}

.btn._bl._fontYe a {
  color: var(--c_ye);
}

.btn._bl._fontYe a::after {
  background-image: url(../img/arrow_ye.svg);
}

.btn._arrowYe a::after {
  background-image: url("../img/arrow_ye.svg");
}

.btn a:hover,
.formBtn input:hover {
  transform: translateY(0.5rem);
  box-shadow: none;
}

.formBtn .inputWrap::after {
  transition: 0.2s;
}

.formBtn .inputWrap:hover::after {
  transform: translateY(-30%);
}

.btn._arrowBtm a::after {
  transform: translateY(-50%) rotate(90deg);
}

.btn02 {
  max-width: 32rem;
  margin: 1.4rem auto 0;
}

.btn02 a,
.btn02 .txt {
  display: block;
  background-color: var(--c_aq);
  padding: 1.2rem 5.2rem 1.2rem 3rem;
  border-radius: 5rem;
  color: var(--c_wh);
  font-weight: 700;
  font-size: 1.6rem;
  line-height: 1.2;
  position: relative;
  text-align: left;
}

.btn02 a::after,
.btn02 .txt::after {
  content: "";
  display: block;
  background: var(--c_ye) url(../img/arrow_bl.svg) 54% 50% no-repeat;
  background-size: 34% auto;
  border-radius: 50%;
  width: 4.8rem;
  height: auto;
  aspect-ratio: 1;
  position: absolute;
  right: 1rem;
  top: 50%;
  transform: translateY(-50%);
  z-index: 1;
}

.btn02._tr a,
.btn02._tr .txt {
  background-color: rgba(255, 255, 255, 0.5);
  color: #353535;
  padding-top: 0.9rem;
}

.btn02._tr a .clr-rd,
.btn02._tr .txt .clr-rd {
  font-size: 150%;
}

.btn02._tr a:hover {
  background-color: var(--c_ye);
}

.btn03 {
  display: block;
  background-color: var(--c_or);
  padding: 0.5rem 1.2rem;
  border-radius: 0.5rem;
  color: #fff;
  font-weight: 700;
  font-size: 1.4rem;
  line-height: 1.2;
  position: relative;
  margin-top: 1rem;
}

.btn03::after {
  content: "";
  display: inline-block;
  background: #fff url(../img/arrow_or.svg) 54% 50% no-repeat;
  background-size: 34% auto;
  border-radius: 50%;
  width: 1.4rem;
  height: auto;
  aspect-ratio: 1;
  margin-left: 0.3rem;
  vertical-align: -0.2rem;
}

.btn03._rd {
  background-color: var(--c_rd);
}

/* タイトル */
.ttlBox {
  margin-bottom: 3rem;
  position: relative;
  display: inline-block;
}

.ttlBox::before,
.ttlBox::after {
  content: "";
  width: 5rem;
  height: auto;
  aspect-ratio: 50/53;
  background: url("../img/icon_roller.png") center no-repeat;
  background-size: contain;
  display: inline-block;
  position: absolute;
  top: 0;
  left: -6.2rem;
}

.ttlBox::after {
  background-image: url("../img/icon_paint.png");
  left: auto;
  right: -6.6rem;
}

.ttlBox h2 {
  font-size: 2.4rem;
  line-height: 1.4;
  margin-bottom: 0.5rem;
  color: var(--c_bl);
  font-weight: 900;
  letter-spacing: 0.05em;
}

.ttlBox .fo-din {
  font-size: 1.6rem;
  color: var(--c_ye);
  line-height: 1;
  letter-spacing: 0.05em;
}

/* 装飾 */
.c_dot {
  color: var(--c_ye);
  display: inline-block;
  position: relative;
}

.c_dot::before {
  content: "・";
  position: absolute;
  left: 0;
  right: 0;
  top: -0.75em;
  font-size: 80%;
}

.c_dot._bl {
  color: var(--c_bl);
}

.c_dot._or {
  color: var(--c_or);
}

.c_dot._rd {
  color: var(--c_rd);
}

.c_dot._bk {
  color: var(--c_bk);
}

.c_speech {
  position: relative;
  background-color: var(--c_bl);
  color: #fff;
  margin-inline: auto;
  padding: 0.8rem 1rem;
  font-size: 2rem;
  text-align: center;
  display: block;
  margin-bottom: 2rem;
  font-weight: 700;
  line-height: 1.4;
}

.c_speech::after {
  content: "";
  position: absolute;
  bottom: 0;
  right: 0;
  left: 0;
  margin-inline: auto;
  width: 2.4rem;
  height: auto;
  aspect-ratio: 1.7;
  clip-path: polygon(0 0, 100% 0, 50% 100%);
  background-color: var(--c_bl);
  transform: translateY(96%);
}

.c_speech._or,
.c_speech._or::after {
  background-color: var(--c_or);
}

.c_speech._ye {
  color: var(--c_bl);
}

.c_speech._ye,
.c_speech._ye::after {
  background-color: var(--c_ye);
}

.c_speech._wh {
  color: #000;
}

.c_speech._wh,
.c_speech._wh::after {
  background-color: #fff;
}

.c_speech._gr,
.c_speech._gr::after {
  background-color: var(--c_gr);
}

.c_speech._d-ib {
  display: inline-block;
}

.c_speech._round {
  border-radius: 5rem;
}

.c_speech .bgRoundClr {
  background-color: #fff;
  color: var(--c_or);
  border-radius: 3rem;
  padding: 0.5rem;
  font-size: 1.6rem;
  margin-bottom: 0.2rem;
  display: block;
  width: 19rem;
  margin-inline: auto;
  font-weight: 700;
}

.c_diagonal {
  position: relative;
  font-size: 2rem;
  display: inline-block;
  font-weight: 700;
}

.c_diagonal._or {
  color: var(--c_ye);
}

.c_diagonal._or::before,
.c_diagonal._or::after {
  background-color: var(--c_ye);
}

.c_diagonal._bl {
  color: var(--c_bl);
}

.c_diagonal._bl::before,
.c_diagonal._bl::after {
  background-color: var(--c_bl);
}

.c_diagonal._bk::before,
.c_diagonal._bk::after {
  background-color: var(--c_bk);
}

.c_bgTrape {
  position: relative;
  z-index: 1;
}

.c_bgTrape::before {
  content: "";
  width: 100%;
  height: 18rem;
  background-color: var(--c_be);
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  clip-path: polygon(0% 0%, 100% 0%, 100% 44%, 0% 100%);
}

.c_underline {
  text-decoration: underline;
  text-underline-offset: 0.3rem;
  font-weight: 700;
}

.c_wave {
  background: url("../img/wave_ye.svg") center bottom repeat-x;
  background-size: auto 0.6rem;
  padding-bottom: 0.2rem;
  font-feature-settings: "palt";
  letter-spacing: 0.05em;
}

/* 縁取り文字 */
.c_borderTxt {
  font-size: 3.6rem;
  font-weight: 900;
  color: var(--c_bl);
  paint-order: stroke fill;
  -webkit-text-stroke: 0.7rem #fff;
  display: block;
}

.c_borderTxt._rd {
  color: var(--c_rd);
}

.c_postTtl {
  font-size: 1.6rem;
  background-color: var(--c_be);
  border-left: 0.6rem solid var(--c_bl);
  padding: 0.3rem 0.9rem;
  font-weight: 500;
}

.c_marker {
  background: linear-gradient(0deg, var(--c_ye) 30%, transparent 30%);
  color: var(--c_bl);
  display: inline-block;
}

.c_marker._wh {
  background: linear-gradient(0deg, var(--c_wh) 30%, transparent 30%);
  color: var(--c_bk);
}

.scrollWrap {
  overflow: auto;
}

.scrollWrap .img {
  width: 58rem;
}

/*toppage
---------------------------------------------------------*/
.mainArea {
  position: relative;
  z-index: 1;
  padding: 1rem 0 2rem;
  /* margin-bottom: 2rem; */
}

.mainArea .container {
  background-color: rgba(255, 255, 255, 0.6);
  border-radius: 2rem;
  padding: 2rem 2rem 1rem;
}

.mainArea .txt {
  border-radius: 0.5rem;
  background: var(--c_rd);
  padding: 0.8rem 1rem 0.5rem;
  color: #fff;
  font-weight: 700;
  margin-bottom: 0.6rem;
}

.mainArea .mvImg{
  display: block;
  margin: 0 auto;
  width: 90%;
}
.mainArea .mvImg img{
  margin: 0 auto;
  width: 100%;
  height: auto;
  display: block;
}

.mainArea .mvBg {
  grid-template-columns: repeat(3, 1fr);
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  height: 100%;
}

.mainArea .mvBg li img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.mainBtmSlier .img {
  margin: 0 0.5rem;
}

.mainBtmSlier .img:not(:first-of-type) {
  display: none !important;
}

.mainBtmSlier.slick-initialized .img:not(:first-of-type) {
  display: block !important;
}

.postNav {
  display: flex;
  justify-content: center;
  align-items: center;
  margin-top: -1.4rem;
  position: relative;
  z-index: 8;
  gap: 0 19rem;
}

.postNav._wide {
  gap: 0 26rem;
}

.postNav div {
  display: block;
  background: url(../img/arrow_bk.svg) center center no-repeat;
  background-size: contain;
  width: 1rem;
  height: 1.8rem;
  cursor: pointer;
}

.postNav div.prev {
  transform: rotate(180deg);
}

.slick-dots {
  position: relative;
  margin: 0.8rem auto 0;
  z-index: 9;
  display: inline-block;
}

.slick-slider .slick-dots li {
  margin: 0 0.5rem;
  cursor: pointer;
}

.slick-slider .slick-dots button {
  width: 1em;
}

.contSlider.dot_wh.slick-slider .slick-dots li button::before {
  color: #fff;
}

.slick-slider .slick-dots li.slick-active button::before {
  color: var(--c_bl) !important;
}

#mainBtmSlier {
  margin-bottom: 2rem;
}

.c_awards {
  background: url("../img/c_awards_bg.jpg") center no-repeat;
  background-size: cover;
  padding: 2.2rem 0;
}

.c_awards .row {
  grid-template-columns: repeat(4, 1fr);
  align-items: center;
  justify-content: center;
  gap: 1.4rem;
}
.c_awards_img {
  width: 100%;
}
.c_awards_img img{
  width: 100%;
  height: auto;
  display: block;
  margin-inline: auto;
}

/* .c_awards li {
  position: relative;
  width: 11rem;
  filter: drop-shadow(0 0 0.3rem rgba(0, 0, 0, 0.8));
  background: url("../img/c_awards_star.svg") center bottom no-repeat;
  background-size: 1.9rem auto;
}

.c_awards li::before,
.c_awards li::after {
  content: "";
  width: 4.6rem;
  height: auto;
  aspect-ratio: 4.6/7.6;
  background: url("../img/c_awards_leaf.svg") center no-repeat;
  background-size: contain;
  display: inline-block;
  position: absolute;
  top: 0;
  left: 0;
}

.c_awards li::after {
  transform: scale(-1, 1);
  left: auto;
  right: 0;
}

.c_awards li .ttl::before {
  content: "";
  width: 1.5rem;
  height: auto;
  aspect-ratio: 15/9;
  background: url("../img/c_awards_crown.svg") center no-repeat;
  background-size: contain;
  display: block;
  margin-bottom: 0.2rem;
  margin-inline: auto;
} */

.c_awards li .ttl,
.c_awards li .txt {
  background: linear-gradient(135deg, #D4A041 15.43%, #F7D14E 31.73%, #FCFBE7 48.33%, #FBE67B 63.22%, #8C421D 86.26%);
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  font-weight: 700;
}

.c_awards li .ttl {
  font-size: 1.4rem;
  line-height: 1;
}

.c_awards li .ttl .small {
  font-size: 71.4%;
}

.c_awards li .txt {
  font-size: 2.2rem;
  line-height: 1.1;
  padding-bottom: 0.6rem;
}

.c_awards li .txt .big {
  font-size: 120.7%;
  letter-spacing: -0.1em;
  margin-right: 0.5rem;
  margin-top: 0.4rem;
  display: inline-block;
}

.c_awards li .txt .middle {
  font-size: 54.2%;
}

.c_awards li .txt .small {
  font-size: 45.8%;
}

.c_awards li .txt .small02 {
  font-size: 41.7%;
}

.c_awards li .txt._02 {
  font-size: 1.4rem;
  padding-top: 0.4rem;
}

.c_awards li .txt._02 .small {
  font-size: 1.1rem;
  padding-top: 0.2rem;
}

.topNews {
  padding: 3rem 0;
}

.c_postList li {
  text-align: left;
  padding: 1.2rem 1rem;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 0 1rem;
  border-bottom: 0.1rem solid var(--c_gy);
}

.c_postList li:first-child {
  border-top: 0.1rem solid var(--c_gy);
}

.c_postList li a {
  width: 100%;
  display: block;
  margin-top: 1rem;
  font-size: 125%;
  font-weight: 600;
  text-overflow: ellipsis;
  overflow: hidden;
  white-space: nowrap;
  color: #353535;
}

#formSec {
  background: url("../img/formSec_bg.jpg") top center no-repeat;
  background-size: cover;
}

.formWrap {
  text-align: left;
  font-size: 112.5%;
  font-weight: 500;
}

.formBox dt,
.formBox dd {
  padding: 1rem 1.2rem;
}

.formBox dt {
  background-color: var(--c_bl);
  color: #fff;
}

.formBox dd {
  background-color: #fff;
  padding-top: 1.6rem;
  padding-bottom: 1.6rem;
}

.formBox input[type=text],
.formBox input[type=tel],
.formBox input[type=email],
.formBox input[type=date],
.formBox select,
.formBox textarea {
  width: 100%;
  padding: 0.575em;
  border: 1px solid #ccc;
  border-radius: 3px;
}

.formWrap select {
  background: url("../img/arrow_gy_btm.svg") center right 1rem no-repeat;
  background-size: 1.6rem;
  position: relative;
  padding: 1rem 6rem 1rem 1.4rem;
  font-weight: 500;
  width: 100%;
}

.formWrap .formDay {
  background: url("../img/calendar.svg") center right 1rem no-repeat;
  background-size: 1.6rem;
  position: relative;
  padding: 1rem 6rem 1rem 1.4rem;
  font-weight: 500;
  margin-bottom: 0.5rem;
  width: 20rem !important;
}

.chekWrap {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem 2%;
}

.chekWrap span {
  /* width: 49%; */
  margin: 0 !important;
}

.chekWrap label {
  margin: 0;
  font-weight: 600;
}

.formBtn {
  gap: 1rem;
  margin-top: 2rem;
  margin: 2rem 0 4rem;
}

.formBtn > div {
  width: 32rem;
}

.formBtn input[type=submit],
.formBtn input[type=button],
.formBtn button.button._grey {
  width: 100%;
}

.formBtn input[type=submit].btn_back,
.formBtn button.button._grey {
  background: #ddd;
  color: #333;
  box-shadow: 0 0.5rem 0 0 #949494;
}

.formBtn input[type=submit]:hover,
.formBtn input[type=button]:hover,
.formBtn button.button._grey:hover {
  opacity: 0.7;
}

.formTtl {
  gap: 0.6rem;
  margin: 0 -3% 0 0;
}

.formTtl .ttl {
  padding-bottom: 2.7rem;
}

.formTtl .img {
  width: 7.4rem;
}

.formTtl .img._02 {
  width: 8.6rem;
}

.formTtl .img img {
  width: 100%;
}

.formTtl span {
  padding: 0.4rem 1.7rem;
}

.formTtl h2 {
  font-size: 3rem;
  font-weight: 800;
  line-height: 1;
  color: var(--c_bl);
}

.formArea .closeword {
  font-size: 1.8rem;
  color: var(--c_rd);
  margin-top: 2.6rem;
  font-weight: 600;
}

.freeTxtWrap .img {
  position: absolute;
  right: 0;
  bottom: 0;
  width: 13rem;
}

#formSec .formSec {
  padding-top: 3rem;
}

.thxBox {
  line-height: 1.8;
  padding: 3rem 1.5rem;
  border: 1px solid #999;
  background: #fff;
  color: #1a1a1a;
}

.thxBox .ttl {
  font-size: 1.7rem;
  margin-bottom: 0.5rem;
}

.thxBox .btn {
  margin-top: 2rem;
}

.thxBox .btn a {
  font-size: 1.8rem;
}

.date {
  color: #A5A5A5;
  font-weight: 400;
}

.tags {
  display: inline-block;
  background: var(--c_ye);
  padding: 0.1rem 0.7rem;
  color: #fff;
  font-size: 1.2rem;
}

.c_postList li:nth-of-type(2) .tags {
  background: var(--c_or);
}

.c_postList li:nth-of-type(3) .tags {
  background: var(--c_bl);
}

.c_postList li a:hover {
  color: var(--c_or);
}

#formSec {
  background: url("../img/formSec_bg.jpg") top center no-repeat;
  background-size: cover;
}

.formWrap {
  text-align: left;
  font-size: 112.5%;
  font-weight: 500;
}

.formBox dt,
.formBox dd {
  padding: 1rem 1.2rem;
}

.formBox dt {
  background-color: var(--c_aq);
  color: #fff;
}

.formBox dd {
  background-color: #fff;
  padding-top: 1.6rem;
  padding-bottom: 1.6rem;
}

.formBox input[type=text],
.formBox input[type=tel],
.formBox input[type=email],
.formBox input[type=date],
.formBox select,
.formBox textarea {
  width: 100%;
  padding: 0.575em;
  border: 1px solid #ccc;
  border-radius: 3px;
}

.formWrap select {
  background: url("../img/arrow_gy_btm.svg") center right 1rem no-repeat;
  background-size: 1.6rem;
  position: relative;
  padding: 1rem 6rem 1rem 1.4rem;
  font-weight: 500;
  width: 100%;
}

.formWrap .formDay {
  background: url("../img/calendar.svg") center right 1rem no-repeat;
  background-size: 1.6rem;
  position: relative;
  padding: 1rem 6rem 1rem 1.4rem;
  font-weight: 500;
  margin-bottom: 0.5rem;
  width: 20rem !important;
}

.chekWrap {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem 2%;
}

.chekWrap span {
  /* width: 100%; */
  margin: 0 !important;
}

.chekWrap label {
  margin: 0;
  font-weight: 600;
}

.formBtn {
  gap: 1rem;
  margin-top: 2rem;
}

.formBtn > div {
  width: 32rem;
}

.formBtn input[type=submit],
.formBtn input[type=button],
.formBtn button.button._grey {
  width: 100%;
}

.formBtn input[type=submit].btn_back,
.formBtn button.button._grey {
  background: #ddd;
  color: #333;
  box-shadow: 0 0.5rem 0 0 #949494;
}

.formBtn input[type=submit]:hover,
.formBtn input[type=button]:hover,
.formBtn button.button._grey:hover {
  opacity: 0.7;
}

.formTtl {
  gap: 0.6rem;
  margin: 0 -3% 0 0;
}

.formTtl .ttl {
  padding-bottom: 2.7rem;
}

.formTtl .img {
  width: 7.4rem;
}

.formTtl .img._02 {
  width: 8.6rem;
}

.formTtl .img img {
  width: 100%;
}

.formTtl span {
  padding: 0.4rem 1.7rem;
}

.formTtl h2 {
  font-size: 3rem;
  font-weight: 800;
  line-height: 1;
  color: var(--c_bl);
}

.freeTxtWrap .img {
  position: absolute;
  right: 0;
  bottom: 0;
  width: 13rem;
}

.thxBox {
  line-height: 1.8;
  padding: 3rem 1.5rem;
  border: 1px solid #999;
  background: #fff;
  color: #1a1a1a;
}

.thxBox .ttl {
  font-size: 1.7rem;
  margin-bottom: 0.5rem;
}

.thxBox .btn {
  margin-top: 2rem;
}

.thxBox .btn a {
  font-size: 1.8rem;
}

.topReason {
  background-color: var(--c_ye);
}

.topReason .ttlImg {
  padding-bottom: 3rem;
  width: 100%;
}

.topReason .ttlImg img {
  width: 100%;
}

.topReason .logo {
  position: relative;
  filter: drop-shadow(0 0 0.4rem #fff);
}

.topReason .logo a {
  filter: drop-shadow(0 0 0.4rem #fff);
  display: block;
}

.topReason .logo img {
  display: block;
  filter: drop-shadow(0 0 0.4rem #fff);
  transform: translateZ(0);
  width: 47%;
}

.topReason .ttl {
  background-color: var(--c_bl);
  color: #fff;
  font-size: 1.8rem;
  padding: 0.6rem;
  margin: 1.2rem 0 2rem;
}

.contSliderArea {
  margin: 0 calc(-50vw + 50%) 3rem;
}

.contSlider .img:not(:first-of-type) {
  display: none !important;
}

.contSlider.slick-initialized .img:not(:first-of-type) {
  display: block !important;
}

.contSlider .slick-track {
  display: flex !important;
}

.slideBox {
  height: auto !important;
  margin: 0 0.5rem 1rem;
  background: #fff;
  border: 1px solid var(--c_gy);
}
#designFlow .slideBox {
  border: 3px solid var(--c_bl);
  border-radius: 10px;
  overflow: hidden;
}

.slideBox dl {
  padding: 1.4rem 1rem 2rem;
  text-align: left;
  font-size: 1.2rem;
}

.slideBox dt {
  text-align: center;
  margin-bottom: 0.8rem;
  padding-bottom: 1rem;
  border-bottom: 1px solid #000;
}

.slideBox dt .num {
  font-size: 1.6rem;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 0 1rem;
  margin-bottom: 0.5rem;
}

.slideBox dt .num strong {
  font-size: 187.5%;
  color: var(--c_bl);
  font-weight: 700;
}

.slideBox dt h3 {
  font-size: 1.6rem;
  font-weight: 600;
  line-height: 1.3;
  color: var(--c_bl);
}

.slideBox dd {
  line-height: 1.6;
}

.topMenu {
  padding-top: 0;
}

.topMenu .ttl {
  background: url("../img/top/menu_bg.jpg") center no-repeat;
  background-size: cover;
  padding: 3rem;
  color: #fff;
  font-size: 2.8rem;
}

.topMenu .ttl .clr-ye {
  font-size: 57.1%;
  text-decoration: underline;
  text-decoration-thickness: 0.2rem;
  text-underline-offset: 0.6rem;
  display: block;
  margin-bottom: 0.5rem;
}

.topMenu .rowWrap {
  grid-template-columns: repeat(1, 1fr);
  gap: 1rem;
  padding-top: 3rem;
}

.topMenu .row {
  border: 0.1rem solid var(--c_gy);
}

.topMenu .row .img {
  width: 11rem;
  max-width: 100%;
}

.topMenu .row .box {
  flex: 1;
  text-align: left;
  background-color: #fff;
}

.topMenu .row .boxTtl {
  font-size: 1.6rem;
  padding: 0.8rem 1rem;
  background-color: var(--c_aq);
  color: #fff;
  position: relative;
  min-height: 5.4rem;
  display: flex;
  align-items: center;
  justify-content: space-between;
  line-height: 1.3;
}

.topMenu .row .boxTtl::after {
  content: "";
  display: block;
  background: var(--c_ye) url(../img/arrow_bl.svg) 55% 50% no-repeat;
  background-size: 34% auto;
  border-radius: 50%;
  width: 2.4rem;
  height: auto;
  aspect-ratio: 1;
}

.topMenu .row .item {
  padding: 1rem;
  background-color: #fff;
}

.topMenu .row .item .txt {
  font-size: 1.3rem;
}

.topMenu .row .item .price {
  color: var(--c_rd);
  margin-top: 0.8rem;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  font-weight: 700;
}

.topMenu .row .item .price .round {
  font-size: 78.6%;
  border: 0.1rem solid var(--c_rd);
  border-radius: 0.5rem;
  padding: 0.3rem 0.3rem;
  display: inline-block;
  margin-right: 0.9rem;
  line-height: 1;
}

.topMenu .row .item .price .fo-din {
  font-size: 171.4%;
  margin-right: 0.3rem;
}

.topMenu .row:hover {
  opacity: 0.8;
}

.topMenu .row:hover img {
  opacity: 1;
}

.topWorks {
  padding-bottom: 4.8rem;
}

.c_worksRow {
  grid-template-columns: repeat(2, 1fr);
  gap: 3rem 2rem;
}

.c_worksBox {
  border: 0.1rem solid var(--c_gy);
  position: relative;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  box-shadow: 8px 8px 1px var(--c_bl);
}
.c_worksBox .date {
  background: #fff;
}
.c_worksBox .cate {
  background: #fff;
  padding-bottom: 1rem;
  color: var(--c_bl);
}

.c_worksBox .img {
  flex: 1;
}

.c_worksBox .img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.c_worksBox._recom .img {
  border-top: 0.5rem solid #70C5A6;
}

.c_worksBox .recomTxt {
  background-color: #70C5A6;
  clip-path: polygon(0% 0%, 100% 0%, 100% 100%, 50% 90%, 0% 100%);
  color: #fff;
  font-size: 1.3rem;
  font-weight: 700;
  position: absolute;
  top: 0;
  right: 0.6rem;
  padding: 0.6rem 0.4rem 1.7rem;
}

.c_worksBox .ttl {
  padding: 0.6rem 1rem 1.1rem;
  background-color: #fff;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  text-align: left;
  font-size: 1.2rem;
}

.postBtn {
  display: flex;
  justify-content: center;
  background-color: var(--c_or);
  padding: 0.8rem 1.7rem;
  color: #fff;
  line-height: 1.2;
  position: relative;
  gap: 0.7rem;
  text-align: left;
  display: block;
}

.postBtn::after {
  content: "";
  display: block;
  background: rgba(0, 32, 58, 0.7) url(../img/arrow_wh.svg) 60% 50% no-repeat;
  background-size: 34% auto;
  border-radius: 50%;
  width: 1.6rem;
  height: auto;
  aspect-ratio: 1;
  position: absolute;
  right: 0.8rem;
  top: 50%;
  transform: translateY(-50%);
  z-index: 1;
}

.c_worksBox:hover {
  opacity: 0.8;
}

.c_worksBox img:hover {
  opacity: 1;
}

.noPost {
  white-space: nowrap;
  margin: 1rem 0;
}

.topYoutube .ttlBox {
  margin-bottom: 2rem;
}

.topYoutube .row {
  display: grid;
  gap: 0.5rem;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  grid-template-rows: auto;
  grid-template-areas: "a a" "b c" "d d";
}

/* 配置だけをクラスで割り当て */
.topYoutube .row .movieBox._01 {
  grid-area: a;
}

.topYoutube .row .movieBox._02 {
  grid-area: b;
}

.topYoutube .row .movieBox._03 {
  grid-area: c;
}

.topYoutube .row .bnr {
  grid-area: d;
}

.topPoint {
  padding-top: 2rem;
}

.topPoint .row {
  gap: 1.4rem;
  flex-direction: var(--flex-direction);
}

.topPoint .row .box .ttl {
  border-bottom: 0.1rem solid var(--c_gy);
  padding-bottom: 0.8rem;
  margin-bottom: 1.3rem;
  font-size: 1.6rem;
  font-weight: 500;
}

.topPoint .row .box .ttl .clr-bl,
.topPoint .row .box .ttl span {
  font-size: 187.53%;
  display: block;
  font-weight: 900;
  letter-spacing: 0.07em;
}

.topPoint .row .box .txt {
  text-align: left;
}

.topPoint .row .box .btn {
  margin-top: 2.4rem;
}

.c_review {
  padding-bottom: 5rem;
}

.c_reviewRow {
  grid-template-columns: repeat(2, 1fr);
  gap: 2rem;
}
.c_reviewRow a {
  box-shadow: 0.9rem 0.9rem 1px var(--c_gy);
}

.c_reviewRow .box .img img {
  max-height: 9.4rem;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 50% 18%;
}

.c_reviewRow .box .txt {
  font-size: 1.3rem;
  color: #fff;
  background-color: var(--c_bl);
  padding: 0.3rem 0.5rem;
  position: relative;
  text-align: left;
  overflow: hidden;
  font-weight: 500;
}

.c_reviewRow .box .txt::after {
  content: "";
  width: 1.3rem;
  height: auto;
  aspect-ratio: 1;
  clip-path: polygon(100% 100%, 100% 0, 0 100%);
  background-color: var(--c_ye);
  display: block;
  position: absolute;
  bottom: -0.1rem;
  right: -0.1rem;
}

.c_reviewRow .box:hover {
  opacity: 0.8;
}

.c_reviewRow .box img:hover {
  opacity: 1;
}

.c_bgTrape.topRelief {
  padding-top: 4rem;
}

.c_bgTrape.topRelief::before {
  top: 2rem;
}

.topRelief .row {
  gap: 2rem;
  flex-direction: var(--flex-direction);
}

.topRelief .row .box {
  flex: 1;
}

.topRelief .row .box .ttl {
  font-size: 2.4rem;
  padding-bottom: 1rem;
  text-align: left;
  color: var(--c_ye);
}

.topRelief .row .box .txt {
  text-align: left;
}

.topRelief .row .box .btn {
  margin-top: 2rem;
}

.c_staffBox {
  border: 0.1rem solid var(--c_gy);
  position: relative;
  margin: 0 1rem;
  height: 24rem !important;
}

a.c_staffBox:hover {
  opacity: 0.8;
}

a.c_staffBox:hover img {
  opacity: 1;
}

.c_staffBox .img {
  height: 100%;
}

.c_staffBox img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.c_staffBox .item {
  background-color: var(--c_ye);
  color: var(--c_bl);
  clip-path: polygon(0% 40%, 100% 0%, 100% 100%, 0% 100%);
  padding: 4.2rem 1rem 1.2rem;
  /* margin-top: -5.6rem; */
  position: absolute;
  left: 0;
  bottom: -0.1rem;
  width: 100%;
}

.c_staffBox .item .name {
  font-size: 1.6rem;
  font-weight: 700;
}

.c_staffBox .item .part {
  font-size: 1.2rem;
  text-align: left;
}

.staffSlide .slick-dots {
  margin-top: 2rem;
}

.subsidyBnr {
  padding: 2rem 0;
}

.subsidyBnr a {
  background: url("../img/top/subsidy_bg.jpg") center no-repeat;
  background-size: cover;
  border-radius: 2rem;
  overflow: hidden;
  display: block;
  padding: 4rem 1rem 1.8rem 2rem;
}

.subsidyBnr .ttl {
  color: var(--c_bl);
  font-size: 2rem;
  position: relative;
  z-index: 2;
  line-height: 1.4;
}

.subsidyBnr .ttl .small {
  font-size: 80%;
}

.subsidyBnr .ttl .c_borderTxt {
  filter: drop-shadow(0 0.4rem 0.4rem rgba(76, 172, 228, 0.4));
}

.subsidyBnr .ttl .middle {
  font-size: 120%;
  display: block;
  font-weight: 900;
}

.subsidyBnr .ttl::before,
.subsidyBnr .ttl::after {
  content: "";
  width: 6rem;
  height: auto;
  aspect-ratio: 1;
  background: url("../img/top/subsidy_icon01.svg") center no-repeat;
  background-size: contain;
  display: inline-block;
  position: absolute;
  top: -2.2rem;
  left: -1.3rem;
  z-index: -1;
}

.subsidyBnr .ttl::after {
  background-image: url("../img/top/subsidy_icon02.svg");
  width: 7.4rem;
  height: auto;
  aspect-ratio: 7.4/6;
  top: auto;
  left: auto;
  right: -0.5rem;
  bottom: -0.7rem;
}

.subsidyBnr .btn02 {
  position: relative;
}

.subsidyBnr .btn02 img {
  width: 8.8rem;
  position: absolute;
  bottom: -1.8rem;
  left: -3.8rem;
  z-index: 1;
}

.subsidyBnr .btn02 span {
  padding-left: 5.7rem;
  line-height: 1.4;
}

.subsidyBnr a:hover {
  opacity: 0.8;
}

.subsidyBnr a img:hover {
  opacity: 1;
}

.topSimulate {
  background: url("../img/top/simulate_bg.jpg") center no-repeat;
  background-size: cover;
  padding-bottom: 5rem;
}

.topSimulate .ttl {
  color: var(--c_bl);
  font-size: 2rem;
  margin-bottom: 2rem;
  line-height: 1.3;
}

.topSimulate .ttl .clr-or {
  font-size: 130%;
  display: block;
  font-weight: 900;
}

.topSimulate .rowWrap {
  flex-direction: var(--flex-direction);
  gap: 1rem;
}

.topSimulate .row {
  background-color: #fff;
  padding: 1rem 1rem 1rem 1.4rem;
  border-radius: 1.5rem 0rem;
}

.topSimulate .row .img {
  width: 8rem;
  max-width: 100%;
}

.topSimulate .row .box {
  flex: 1;
  text-align: left;
}

.topSimulate .row .boxTtl {
  font-size: 1.8rem;
  padding-bottom: 0.6rem;
  margin-bottom: 0.8rem;
  border-bottom: 0.1rem solid var(--c_gy);
  color: var(--c_bl);
}

.topSimulate .row .boxTtl .fo-din {
  font-size: 133.3%;
  margin-right: 1.1rem;
  color: var(--c_ye);
  vertical-align: -0.15rem;
}

.topSimulate .row .boxTxt {
  font-size: 1.3rem;
}

.c_message .areaLead {
  display: block;
  font-size: 1.6rem;
  font-weight: 600;
  color: #333;
}

.c_message .text-L {
  font-size: 150%;
  font-weight: 700;
  text-align: center;
}

.c_message .ttl {
  background: right 5% center/50% no-repeat url("../img/reason/about_message_img.png");
  padding: 5rem 3rem 5.6rem;
  margin: 0 -6%;
  text-align: left;
  margin-bottom: 2rem;
}

.c_message .ttl img {
  width: 17rem;
  margin-left: -2%;
}

.c_message .txt {
  text-align: left;
  line-height: 1.6;
}

.c_message .txt p + p {
  margin-top: 2.2rem;
}

.c_message .sign {
  margin: 3rem 0 0 auto;
  font-weight: 500;
  width: 18.4rem;
}

.c_message .sign .company {
  font-size: 1.6rem;
}

.c_message .sign .name span {
  font-size: 142.9%;
  font-weight: 700;
  margin-left: 1.3rem;
}

.c_message .imgStaff {
  margin-top: 2rem;
}

.c_message._reason .imgStaff {
  margin-left: -6%;
  margin-right: -6%;
}

.c_message .movieWrap {
  margin-top: 3rem;
}

.movieBox {
  padding-top: 56.25%;
  position: relative;
}

.movieBox iframe {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}

.topDiagnosis {
  background: url("../img/top/diagnosis_bg.jpg") center no-repeat;
  background-size: cover;
}

.topDiagnosis .ttl {
  font-size: 1.8rem;
  text-align: left;
  position: relative;
}

.topDiagnosis .ttl::before {
  content: "";
  width: 7.2rem;
  height: auto;
  aspect-ratio: 1;
  background: url("../img/icon_glass.svg") center no-repeat;
  background-size: contain;
  display: inline-block;
  position: absolute;
  top: 1rem;
  left: 1rem;
}

.topDiagnosis .ttl span {
  display: block;
  padding: 0.8rem 2rem 0.8rem 9.5rem;
}

.topDiagnosis .ttl .clr-or {
  font-size: 177.8%;
  line-height: 1.3;
}

.topDiagnosis .img {
  position: relative;
}

.topDiagnosis .img .staff {
  position: absolute;
  bottom: 0;
  right: 1rem;
  width: 11.2rem;
}

.topDiagnosis .btn {
  margin-top: 2rem;
}

.c_area {
  padding-bottom: 1rem;
}

.c_area .ttl {
  color: #fff;
  padding: 1rem 0;
  font-size: 2rem;
  line-height: 1.2;
}

.c_area .ttl .big {
  font-size: 120%;
}

.c_area .row {
  gap: 1.6rem;
  flex-direction: var(--flex-direction);
}

.c_area .row .img {
  position: relative;
}

.c_area .row .img .item {
  border: 0.1rem solid var(--c_bl);
  padding: 1rem 1.3rem;
  border-radius: 0.5rem;
  position: absolute;
  bottom: 1rem;
  left: 1rem;
  background-color: #fff;
  font-feature-settings: "palt";
  letter-spacing: 0.05em;
}

.c_area .row .img .item h4 {
  font-size: 1.4rem;
  color: #fff;
  background-color: #353535;
  border-radius: 0.5rem;
  padding: 0.3rem;
  margin-bottom: 0.4rem;
}

.c_area .row .img .item h4:nth-of-type(n+2) {
  margin-top: 1.2rem;
}

.c_area .row .img .item p {
  font-size: 1.3rem;
  color: #353535;
  font-weight: 700;
}

.c_area .row .img .staff {
  width: 11rem;
  position: absolute;
  bottom: 0;
  right: 1rem;
  z-index: 1;
}

.c_area .row .box {
  flex: 1;
}

.c_area .row .box .txt {
  text-align: left;
}

.c_area .speechRow {
  margin-top: 2rem;
  align-items: center;
}

.c_area .speechTxt {
  position: relative;
  background-color: #D1E2FA;
  color: var(--c_bl);
  padding: 1.3rem 1.7rem;
  border-radius: 1rem;
  font-size: 1.6rem;
  text-align: center;
  display: inline-block;
  margin-bottom: 3.6rem;
  font-weight: 700;
  text-align: left;
  line-height: 1.3;
}

.c_area .speechTxt::after {
  content: "";
  width: 2.7rem;
  height: auto;
  aspect-ratio: 27/23;
  background: url("../img/c_area_speech.svg") center no-repeat;
  background-size: contain;
  display: inline-block;
  position: absolute;
  bottom: -1.6rem;
  right: 2.1rem;
}

.c_area .speechImg {
  width: 10.6rem;
  margin-left: -1.8rem;
  position: relative;
  z-index: 2;
}

.topSupport .row {
  grid-template-columns: repeat(1, 1fr);
  gap: 2rem;
}

.topSupport .row .box {
  background: url("../img/top/support_bg01.jpg") center no-repeat;
  background-size: cover;
  padding: 2.5rem 1.5rem;
  border-radius: 2rem;
  overflow: hidden;
}

.topSupport .row .box:hover {
  opacity: 0.8;
}

.topSupport .row .box .btn {
  margin-top: 1.6rem;
}

.topSupport .row .box._follow {
  color: #fff;
}

.topSupport .row .box._follow .ttl {
  font-size: 2rem;
  padding-bottom: 1rem;
  line-height: 1.4;
}

.topSupport .row .box._follow .ttl span {
  font-size: 150%;
  font-feature-settings: "palt";
}

.topSupport .row .box._follow .txt {
  font-size: 1.6rem;
}

.topSupport .box._follow .btn {
  position: relative;
}

.topSupport .box._follow .btn img {
  position: absolute;
  bottom: -2.6rem;
  left: 0rem;
  width: 8.8rem;
}

.topSupport .box._follow .btn span {
  width: 21.8rem;
  margin-left: auto;
  display: inline-block;
  display: block;
  background-color: var(--c_wh);
  padding: 1.4rem 3.6rem 1.4rem 3rem;
  border-radius: 1rem;
  color: var(--c_bl);
  font-weight: 700;
  font-size: 2.2rem;
  line-height: 1.2;
  position: relative;
  box-shadow: 0 0.5rem 0 0 #dcdcdc;
}

.topSupport .box._follow .btn span::after {
  content: "";
  display: block;
  background: var(--c_ye) url(../img/arrow_bl.svg) 54% 50% no-repeat;
  background-size: 34% auto;
  border-radius: 50%;
  width: 2.4rem;
  height: auto;
  aspect-ratio: 1;
  position: absolute;
  right: 1.2rem;
  top: 50%;
  transform: translateY(-50%);
  z-index: 1;
}

.topSupport .row .box._all {
  background-image: url("../img/top/support_bg02.jpg");
  padding-bottom: 1.4rem;
}

.topSupport .row .box._all .c_borderTxt {
  font-size: 2.6rem;
  -webkit-text-stroke-width: 0.6rem;
}

.topSupport .row .box._all ul {
  gap: 0.8rem;
  margin: 1.7rem 0;
  justify-content: center;
  font-weight: 700;
  font-size: 1.5rem;
}

.topSupport .row .box._all li {
  color: #fff;
  padding: 0.2rem 0.6rem;
}

.topSupport .row .box._all li._sekisui {
  background: linear-gradient(90deg, #2255A4 50%, #FA0026 50%, #FA0026 100%);
}

.topSupport .row .box._all li._hebel {
  background-color: #4D4D4D;
}

.topSupport .row .box._all li._misawa {
  background-color: #0872BE;
}

.topSupport .row .box._all li._toyota {
  background: linear-gradient(90deg, #006F8A 33.3333%, #EC6C00 33.3333%, #EC6C00 66.66666%, #E85383 66.66666%, #E85383 100%);
}

.topSupport .row .box._all li._mitsui {
  background-color: #A6192E;
}

.topSupport .row .box._all li._sumitomo {
  background-color: #019B63;
}

.topSupport .row .box._all li._pana {
  background-color: #172A88;
}

.topSupport .row .box._all li._daiwa {
  background-color: #D0002A;
}

.topSupport .box._all .btn02 {
  position: relative;
}

.topSupport .box._all .btn02 img {
  position: absolute;
  bottom: -1.6rem;
  left: 1rem;
  width: 7.4rem;
  z-index: 1;
}

.topSupport .box._all .btn02 .txt {
  padding-left: 8.4rem;
  border-radius: 3rem;
}

.topSupport .box._all .btn02 .txt::after {
  width: 2.8rem;
}

.topFlow {
  padding-bottom: 6rem;
}

.c_flowRow {
  gap: 3.8rem;
  flex-direction: var(--flex-direction);
  margin-top: 3rem;
}

.c_flowBox {
  position: relative;
}

.c_flowBox::after,
.c_flowBox._arrowBef::before {
  content: "";
  position: absolute;
  bottom: -1.1rem;
  left: 0;
  right: 0;
  transform: translateY(99%);
  margin-inline: auto;
  width: 2.7rem;
  height: auto;
  aspect-ratio: 2/1.3;
  clip-path: polygon(0 0, 100% 0, 50% 100%);
  background-color: var(--c_ye);
  display: block;
}

.c_flowBox._arrowBef::before {
  bottom: auto;
  top: -4.4rem;
}

.c_flowBox:last-child:after {
  display: none;
}

.c_flowBox .item {
  background-color: #fff;
  padding: 1.6rem 2rem 2rem;
  text-align: left;
}

.c_flowBox .ttl {
  font-size: 1.8rem;
  padding-bottom: 0.6rem;
  margin-bottom: 0.8rem;
  border-bottom: 0.1rem solid var(--c_gy);
  color: var(--c_bl);
}

.c_flowBox .ttl .fo-din {
  font-size: 131%;
  margin-right: 1.1rem;
  color: var(--c_ye);
  vertical-align: -0.15rem;
}

.c_flowBox .txt {
  font-size: 1.3rem;
}

.topRank {
  background: url("../img/top/rank_bg.jpg") center bottom no-repeat;
  background-size: cover;
}

.topRank .ttl {
  color: #4187BF;
  font-size: 3rem;
  margin-bottom: 1.3rem;
  display: flex;
  align-items: center;
  gap: 0.5rem;
  justify-content: center;
}

.topRank .ttl .line {
  font-size: 53.3%;
  padding: 0.5rem;
  border-top: 0.1rem solid;
  border-bottom: 0.1rem solid;
  flex: 1;
}

.topRank .row {
  grid-template-columns: repeat(2, 1fr);
}

.topRank .row .img {
  position: relative;
}

.topRank .row .img figcaption {
  color: #FFF;
  font-size: 1.6rem;
  padding: 0.3rem;
  background-color: #2E2E2E;
  position: absolute;
  top: 0;
  left: 0;
  font-weight: 700;
  min-width: 7.5rem;
}

.topRank .btn {
  margin-top: 2rem;
}

.topRank .btn {
  position: relative;
}

.topRank .btn img {
  position: absolute;
  bottom: -4rem;
  left: 0;
  width: 8.7rem;
}

.topRank .btn a {
  width: 21.8rem;
  margin-left: auto;
}

.topLink .row {
  grid-template-columns: repeat(2, 1fr);
  gap: 1rem;
}

.topLink .box {
  background: url("../img/top/link_estimate_bg.jpg") center no-repeat;
  background-size: cover;
  display: block;
  color: #fff;
  border-radius: 0.8rem;
  border: 1px solid var(--c_gy);
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  padding: 2rem 0.8rem 0.8rem;
}

.topLink .box._estimate {
  padding: 1.3rem 0.8rem 0.8rem;
}

.topLink .box._estimate .ttl {
  font-size: 3.5rem;
  line-height: 1.3;
}

.topLink .box._estimate .ttl .middle {
  font-size: 80%;
  display: block;
}

.topLink .box._estimate .ttl .small {
  font-size: 51.4%;
  margin-top: 1rem;
  display: block;
}

.topLink .box._paint {
  background-image: url("../img/top/link_paint_bg.jpg");
  padding-top: 0;
}

.topLink .box._paint .bgClr {
  color: var(--c_ye);
  background-color: var(--c_bl);
  padding: 0.2rem 1.8rem;
  display: inline-block;
  font-weight: 700;
  font-size: 1.6rem;
}

.topLink .box._paint .ttl,
.topLink .box._paint .month,
.topLink .box._paint .num,
.topLink .box._paint .tax .yen {
  filter: drop-shadow(0 0.2rem 0.2rem rgba(0, 0, 0, 0.5));
}

.topLink .box._paint .ttl {
  font-size: 2rem;
  font-weight: 900;
  letter-spacing: 0.05em;
  margin: 0.4rem 0;
}

.topLink .box._paint .month {
  color: #fff;
  background-color: var(--c_rd);
  border-radius: 50%;
  width: 4.4rem;
  height: auto;
  aspect-ratio: 1;
  border: 0.2rem solid #fff;
  line-height: 1.1;
  display: grid;
  place-content: center;
  font-weight: 700;
  letter-spacing: -0.1em;
}

.topLink .box._paint .num {
  font-size: 5rem;
}

.topLink .box._paint .tax {
  font-size: 1rem;
  text-align: left;
  line-height: 1.3;
  font-feature-settings: "palt";
}

.topLink .box._paint .tax .yen {
  font-size: 200%;
}

.topLink .box._paint .txt {
  color: #FFF;
  font-size: 1.6rem;
  font-weight: 700;
}

.topLink .box:hover {
  opacity: 0.8;
}

.topLink .faqRow {
  margin-top: 2rem;
  border: 0.1rem solid var(--c_gy);
}

.topLink .faqImg {
  width: 14.6rem;
  max-width: 100%;
}

.topLink .faqImg img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.topLink .faqBox {
  flex: 1;
  text-align: left;
  position: relative;
  padding: 1.3rem 1rem 1rem;
}

.topLink .faqBox:after {
  content: "";
  width: 2rem;
  height: auto;
  aspect-ratio: 1;
  clip-path: polygon(100% 100%, 100% 0, 0 100%);
  background-color: var(--c_ye);
  display: block;
  position: absolute;
  bottom: -0.1rem;
  right: -0.1rem;
}

.topLink .faqTtl {
  font-size: 1.8rem;
  padding-bottom: 0.8rem;
  margin-bottom: 1rem;
  border-bottom: 0.1rem solid var(--c_gy);
  color: var(--c_bl);
}

.topLink .faqTtl::after {
  content: "";
  width: 3.5rem;
  height: auto;
  aspect-ratio: 3.5/2.2;
  background: url("../img/icon_faq.svg") center no-repeat;
  background-size: contain;
  display: inline-block;
  margin-left: 1rem;
  vertical-align: -0.3rem;
}

.topLink .faqTxt {
  font-size: 1.2rem;
}

.topLink .faqBox:hover {
  opacity: 0.8;
}

.topLink .faqBox:hover img {
  opacity: 1;
}

/*下層 共通
---------------------------------------------------------*/
.pageTtlArea {
  height: 15rem;
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  color: #fff;
  z-index: 1;
}

.pageTtl h1 {
  font-size: 2.6rem;
  margin-bottom: 0.2rem;
}

.pageTtl h1 .small {
  font-size: 73.3%;
  display: block;
  line-height: 1;
}

.pageTtl .fo-din {
  display: block;
  font-size: 1.8rem;
}

.pageTtlArea figure {
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  z-index: -1;
}

.pageTtlArea figure img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.pankz {
  padding: 0.5rem 0;
}

.pankz ol {
  text-align: left;
  font-size: 1.2rem;
}

.pankz ol li {
  display: inline;
}

.pankz ol li a {
  text-decoration: underline;
  text-underline-offset: 0.3rem;
}

.pankz ol li a::after {
  content: ">";
  margin: 0 0.5em;
  display: inline-block;
  text-decoration: none;
}

.pankz ol li,
.pankz ol li a,
.pankz ol li a::after {
  color: #B8B8B8;
}

.pankz ol li a:hover {
  opacity: 0.7;
}

#subPage article > section:first-of-type {
  padding-top: 2rem;
}

#subPage article > section.pt00:first-of-type {
  padding-top: 0;
}

.c_pickup .ttl {
  font-size: 3.6rem;
  color: var(--c_bl);
  margin-bottom: 2.4rem;
}

.c_pickup .row {
  gap: 1rem;
  flex-direction: var(--flex-direction);
}

.c_pickup .row .link {
  border-radius: 2rem;
  background: #FFF;
  padding: 1.6rem 2.2rem;
  font-size: 2.1rem;
  border: 0.2rem solid var(--c_aq);
  position: relative;
  text-align: left;
  display: flex;
  align-items: center;
  font-weight: 700;
}

.c_pickup .row .link::before {
  content: "";
  width: 3.6rem;
  height: auto;
  aspect-ratio: 1;
  background: url("../img/c_pickup_reason.svg") center no-repeat;
  background-size: contain;
  display: inline-block;
  margin-right: 2rem;
}

.c_pickup .row .link._works::before {
  background-image: url("../img/c_pickup_works.svg");
}

.c_pickup .row .link._faq::before {
  background-image: url("../img/c_pickup_faq.svg");
}

.c_pickup .row .link._menu::before {
  background-image: url("../img/c_pickup_menu.svg");
}

.c_pickup .row .link._about::before {
  background-image: url("../img/c_pickup_about.svg");
}

.c_pickup .row .link._degradation::before {
  background-image: url("../img/c_pickup_degradation.svg");
}

.c_pickup .row .link._review::before {
  background-image: url("../img/c_pickup_review.svg");
}

.c_pickup .row .link._housebuilder::before {
  background-image: url("../img/c_pickup_housebuilder.svg");
}

.c_pickup .row .link._quotation::before {
  background-image: url("../img/c_pickup_quotation.svg");
}

.c_pickup .row .link._flow::before {
  background-image: url("../img/c_pickup_flow.svg");
}

.c_pickup .row .link::after {
  content: "";
  display: block;
  background: var(--c_ye) url(../img/arrow_bl.svg) 54% 50% no-repeat;
  background-size: 34% auto;
  border-radius: 50%;
  width: 2.4rem;
  height: auto;
  aspect-ratio: 1;
  position: absolute;
  right: 2rem;
  top: 50%;
  transform: translateY(-50%);
  z-index: 1;
}

.c_pickup .row .link:hover {
  opacity: 0.7;
}

/* pager */
.pager {
  width: 100%;
  text-align: center;
  margin-top: 3.2rem;
}

.pager span,
.pager a {
  padding: 0;
  margin: 0 0.6rem;
  transition: 0.1s;
  width: 1.8rem;
  height: auto;
  aspect-ratio: 1.6/2.3;
  vertical-align: middle;
  display: inline-grid;
  place-content: center;
  color: var(--c_bl);
}

.pager .current {
  background-color: var(--c_bl);
  color: #fff;
}

.pager a {
  cursor: pointer;
}

.pager a:hover {
  color: var(--c_or);
  opacity: 1;
}

.prev.page-numbers,
.next.page-numbers {
  background-color: var(--c_bl);
  border-radius: 50%;
  width: 2.4rem;
  height: auto;
  aspect-ratio: 1;
}

.prev.page-numbers {
  transform: rotate(180deg);
}

/* 前後の記事 */
.pageset {
  margin-top: 4.5rem;
  gap: 1.2rem;
}

.pagesetBtn {
  display: inline-flex;
  color: #fff;
  padding: 0.9rem;
  background-color: var(--c_bl);
  width: 10rem;
  align-items: center;
  gap: 0.5rem;
  justify-content: center;
}

.pagesetBtn.prev::before,
.pagesetBtn.next::after {
  content: "";
  display: inline-block;
  background: var(--c_ye) url(../img/arrow_bl.svg) 54% 50% no-repeat;
  background-size: 34% auto;
  border-radius: 50%;
  width: 1.6rem;
  height: auto;
  aspect-ratio: 1;
}

.pagesetBtn.prev::before {
  transform: rotate(180deg);
}

.pagesetBtn.next::after {
  background-position: 58% 50%;
}

.pagesetBtn:hover {
  opacity: 0.8;
}

/*review 一覧
---------------------------------------------------------*/
.reviewGoogle {
  padding-top: 0;
}

.reviewGoogle .ttl {
  background-color: var(--c_bl);
  padding: 1.6rem;
  font-size: 2rem;
  color: #fff;
  margin-bottom: 2rem;
}

.reviewGoogle .ttl .clr-ye {
  font-size: 120%;
}

.ti-footer-filter-text {
  display: none !important;
}

.ti-widget.ti-goog .ti-controls {
  display: block !important;
}

.ti-widget.ti-goog .ti-controls .ti-next {
  right: -0.8rem !important;
}

.ti-widget.ti-goog .ti-controls .ti-prev {
  left: -0.8rem !important;
}

/*review 詳細
---------------------------------------------------------*/
.reviewSingle .ttl {
  color: #FFF;
  font-size: 1.9rem;
  background-color: var(--c_bl);
  padding: 1.2rem 1.4rem;
  text-align: left;
  font-weight: 500;
}

.reviewSingle .date {
  text-align: right;
  font-weight: 500;
  margin: 1rem 0;
}

.reviewSingle .contWrap {
  margin-top: 3.4rem;
  text-align: left;
}

.reviewSingle .cont + .cont {
  margin-top: 2.2rem;
}

.reviewSingle .cont .txt {
  font-size: 1.5rem;
}

.reviewSingle .cont .txt._01 {
  font-weight: 500;
  margin: 0.5rem 0 0;
}

/*works 一覧
---------------------------------------------------------*/
.worksCateAll {
  text-align: left;
  margin-bottom: 3.8rem;
}

.worksCateAll > li > p.toggleBtn,
.worksCateAll > li > a.all {
  background-color: var(--c_aq);
  color: #FFF;
  font-size: 1.6rem;
  font-weight: 500;
  padding: 0.5rem 3.4rem 0.5rem 1rem;
  display: inline-block;
  width: 100%;
  cursor: pointer;
  position: relative;
}

.worksCateAll > li > p.toggleBtn:hover,
.worksCateAll > li > a.all:hover {
  background-color: var(--c_bl);
}

.worksCateAll > li:not(:last-child) {
  margin-bottom: 1rem;
}

.worksCateAll > li > p.toggleBtn::after,
.worksCateAll > li > a.all::after {
  content: "";
  display: inline-block;
  background: #fff url(../img/arrow_bl.svg) 54% 50% no-repeat;
  background-size: 34% auto;
  border-radius: 50%;
  width: 1.6rem;
  height: auto;
  aspect-ratio: 1;
  vertical-align: -0.2rem;
  position: absolute;
  top: 50%;
  right: 1rem;
  transform: translateY(-50%);
}

.worksCateAll > li > p.toggleBtn.active::after {
  transform: translateY(-50%) rotate(90deg);
}

.worksCateAll .child {
  gap: 0.7rem;
  margin: 1.2rem 0;
}

.worksCateAll .child a {
  display: inline-block;
  background: rgba(255, 205, 23, 0.4);
  font-size: 1.3rem;
  font-weight: 500;
  padding: 0.4rem 1rem;
}

.worksCateAll .child a:hover {
  background: #ddd;
}

/*works 詳細
---------------------------------------------------------*/
.worksSingle .ttlArea {
  padding: 2.2rem 0 2.7rem;
}

.c_singleTtl {
  padding: 2.2rem 0;
  color: #fff;
}

.c_singleTtl .ttl {
  font-size: 2.4rem;
  margin-bottom: 0.6rem;
}

.c_singleTtl .date {
  color: #fff;
}

.worksSingle .worksImgWrap {
  margin-top: 2rem;
}

.worksSingle .imgRow {
  gap: 1.4rem;
  flex-direction: var(--flex-direction);
  justify-content: center;
}

.worksSingle .worksImgWrap .imgRow:nth-of-type(n+2) {
  margin-top: 4rem;
}

.worksSingle .imgRow .box {
  display: flex;
  flex-direction: column;
}

.worksSingle .imgRow .box .enTxt {
  font-size: 2.5rem;
  padding-bottom: 1rem;
}

.worksSingle .imgRow .box .enTxt.clr-rd {
  font-size: 3.7rem;
}

.worksSingle .imgRow .box figure {
  flex: 1;
}

.worksSingle .imgRow .box img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.worksImgWrap h4 {
  text-align: left;
  font-size: 1.8rem;
  margin: 2rem 0 0.4rem;
}

.worksImgWrap .txt {
  text-align: left;
  margin: 0.6rem 0;
}

.worksSingle .data {
  margin-top: 2.4rem;
}

.worksSingle .data .ttl {
  font-size: 1.7rem;
  margin-bottom: 1rem;
  font-weight: 500;
}

.worksSingle .data .profile dt,
.worksSingle .data .profile dd {
  padding: 1rem 1.2rem;
  width: 72%;
  border-bottom: 0.1rem solid var(--c_gy);
  align-content: center;
}

.worksSingle .data .profile dt:first-of-type,
.worksSingle .data .profile dd:first-of-type {
  border-top: 0.1rem solid var(--c_gy);
}

.worksSingle .data .profile dt {
  width: 28%;
  background-color: var(--c_bl);
  color: #fff;
}

.worksSingle .data .profile dd {
  text-align: left;
  background-color: #fff;
  font-size: 1.5rem;
}

.worksSingle .contArea {
  padding: 2.4rem 0 4.5rem;
}

.worksSingle .contRow {
  gap: 2.3rem;
  flex-direction: var(--flex-direction);
}

.worksSingle .contRow .box {
  border: 0.1rem solid var(--c_gy);
}

.worksSingle .contRow .box .ttl {
  color: #FFF;
  font-size: 1.8rem;
  padding: 1rem;
  background-color: var(--c_bl);
}

.worksSingle .contRow .box .txt {
  background-color: var(--c_be);
  text-align: left;
  padding: 1rem;
}

/*campaign 一覧
---------------------------------------------------------*/
.campaignArchive .c_speech {
  font-size: 2.4rem;
  padding: 1.1rem 1rem;
  margin-bottom: 2.5rem;
}

.campaignArchive .row {
  grid-template-columns: repeat(1, 1fr);
  gap: 1.5rem;
}

.campaignArchive .box {
  border: 0.1rem solid var(--c_gy);
}

.campaignArchive .item {
  padding: 1.2rem 1.5rem 2rem;
  background-color: var(--c_be);
}

.campaignArchive .item .ttl {
  font-size: 2.2rem;
  padding-bottom: 1rem;
  font-weight: 500;
  text-align: left;
}

.campaignArchive .item .txt {
  font-size: 1.8rem;
}

.c_campaignProfile {
  margin: 1.7rem 0 2.8rem;
}

.c_campaignProfile dt,
.c_campaignProfile dd {
  padding: 0.7rem 1.2rem;
  width: 65%;
  border-bottom: 0.1rem solid var(--c_gy);
  align-content: center;
}

.c_campaignProfile dt:first-of-type,
.c_campaignProfile dd:first-of-type {
  border-top: 0.1rem solid var(--c_gy);
}

.c_campaignProfile dt {
  width: 35%;
  background-color: var(--c_aq);
  color: #fff;
}

.c_campaignProfile dd {
  text-align: left;
  background-color: #fff;
  font-size: 1.5rem;
}

.campaignArchive .item .btn {
  margin-top: 1.4rem;
}

/*campaign 詳細
---------------------------------------------------------*/
.campaignSingle .status {
  background-color: var(--c_ye);
  color: var(--c_bl);
  border-radius: 3rem;
  padding: 0.4rem;
  width: 11rem;
  margin: 1rem 0;
  margin-inline: auto;
  font-weight: 500;
}

.campaignSingle .status._end {
  background-color: #353535;
  color: #fff;
}

.c_campaignProfile .map {
  font-size: 1.3rem;
  border-radius: 0.5rem;
  padding: 0.3rem 0.3rem 0.4rem;
  display: inline-block;
  color: var(--c_bl);
  border: 0.1rem solid var(--c_bl);
  font-weight: 500;
  margin-top: 0.3rem;
}

.c_campaignProfile .map:hover {
  opacity: 0.8;
}

.campaignSingle .cont {
  text-align: left;
  font-weight: 500;
  margin-bottom: 2.8rem;
  font-size: 1.6rem;
}

.campaignSingle .row {
  gap: 2.4rem;
  flex-direction: var(--flex-direction);
  text-align: left;
}

.campaignSingle .row .box .ttl {
  background-color: var(--c_be);
  font-size: 2rem;
  font-weight: 700;
  padding: 0.8rem 2.2rem 0.8rem 5.2rem;
  position: relative;
  line-height: 1.4;
  margin-bottom: 1rem;
}

.campaignSingle .row .box .ttl .num {
  background-color: var(--c_ye);
  color: var(--c_bl);
  font-size: 120%;
  align-content: center;
  letter-spacing: 0.05em;
  width: 4rem;
  position: absolute;
  left: 0;
  top: 0;
  height: 100%;
  text-align: center;
  padding-bottom: 0.2rem;
}

.campaignSingle .row .box .txt {
  font-size: 1.5rem;
  margin-top: 1rem;
}

.campaignSingle .access {
  margin-top: 4.2rem;
}

.campaignSingle .access .ttl {
  color: #FFF;
  font-size: 1.8rem;
  background-color: var(--c_bl);
  padding: 0.9rem;
}

.campaignSingle .access .txt {
  text-align: left;
  margin: 1rem 0;
}

.mapEmbed {
  position: relative;
  padding-bottom: 52%;
  width: 100%;
  height: 0;
  overflow: hidden;
  margin-inline: auto;
}

.mapEmbed iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

/*blog
---------------------------------------------------------*/
.blogArchiveTtl {
  padding: 1.7rem 1.6rem;
}

.blogArchiveTtl .ribbon {
  background: url("../img/bg_ribbon.svg") center no-repeat;
  background-size: contain;
  color: var(--c_bl);
  font-size: 1.5rem;
  font-weight: 900;
  height: 3.1rem;
  line-height: 1.7;
}

.blogArchiveTtl .ttl {
  font-size: 2.7rem;
  margin-top: 0.3rem;
}

.blogArchiveTtl .ttl .small {
  font-size: 74.1%;
}

.blogArchiveTtl .ttl .clr-bl {
  font-weight: 900;
}

.blogCateAll {
  padding: 1rem 0;
  border-top: 0.1rem solid var(--c_gy);
  border-bottom: 0.1rem solid var(--c_gy);
  gap: 0.6rem;
  margin: 1.5rem 0 2.4rem;
}

.blogCateAll .blogTag {
  display: inline-block;
  color: #fff;
  font-size: 1.6rem;
  font-weight: 500;
  padding: 0.4rem 1rem;
}

.blogTag {
  background: #666;
}

.blogTag._construction {
  background: var(--c_ye);
}

.blogTag._works {
  background: var(--c_or);
}

.blogTag._paint-trivia {
  background: var(--c_bl);
}

.blogTag._other {
  background: #aaa;
}

.displayName {
  color: var(--c_or);
  font-size: 1.6rem;
  margin-bottom: 1rem;
  font-weight: 700;
}

.c_blogRow {
  grid-template-columns: repeat(2, 1fr);
  gap: 1rem;
}

.c_blogBox {
  border: 0.1rem solid var(--c_gy);
  position: relative;
  display: flex;
  overflow: hidden;
  flex-direction: column;
}

.c_blogBox .img {
  flex: 1;
}

.c_blogBox .img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.c_blogBox .cont {
  text-align: left;
  padding: 1rem 1rem 0.8rem;
  font-size: 1.2rem;
}

.c_blogBox .ttl {
  background-color: #fff;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  margin: 0.5rem 0;
}

.c_blogBox:hover {
  opacity: 0.8;
}

.c_blogBox img:hover {
  opacity: 1;
}

/*blog 詳細
---------------------------------------------------------*/
.blogSingle {
  text-align: left;
}

.blogSingle .img {
  margin-bottom: 1.2rem;
  max-width: 80rem;
}

.blogSingle .tags {
  font-size: 1.6rem;
  padding: 0.5rem 0.9rem;
}

.blogSingle .ttl {
  font-size: 2.2rem;
  margin: 1rem 0 0.6rem;
  font-weight: 500;
}

.blogSingle .cont {
  font-size: 1.5rem;
  margin-top: 1rem;
}

.blogSingle .detail {
  margin-top: 3rem;
}

.blogSingle dl {
  font-size: 1.5rem;
}

.blogSingle dt {
  margin: 1.5rem 0 0.6rem;
  font-weight: 700;
  padding: 0.2rem 2.2rem 0.2rem 3.3rem;
  position: relative;
  line-height: 1.4;
}

.blogSingle dt .num {
  background-color: var(--c_bl);
  color: #fff;
  align-content: center;
  letter-spacing: 0.05em;
  width: 2.6rem;
  position: absolute;
  left: 0;
  top: 0;
  height: 100%;
  text-align: center;
  font-weight: 500;
}

/*staff
---------------------------------------------------------*/
.staffCateAll ul {
  padding: 2.5rem 0;
  gap: 1rem 3%;
  text-align: left;
}

.staffCateAll li {
  width: 48.5%;
}

.staffCateAll li a {
  background-color: var(--c_or);
  color: #FFF;
  font-size: 1.6rem;
  font-weight: 500;
  padding: 0.6rem 0.9rem;
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: 100%;
  gap: 0.5rem;
}

.staffCateAll li a::after {
  content: "";
  display: inline-block;
  background: #fff url(../img/arrow_or.svg) 54% 50% no-repeat;
  background-size: 34% auto;
  border-radius: 50%;
  width: 1.6rem;
  height: auto;
  aspect-ratio: 1;
  transform: rotate(90deg);
}

.c_staffArea {
  padding: 2.6rem 0 4.2rem;
}

.c_staffArea:nth-of-type(even) {
  background-color: var(--c_be);
}

.c_staffTtl {
  font-size: 2.4rem;
  color: var(--c_bl);
  margin-bottom: 2.2rem;
}

.c_staffRow {
  grid-template-columns: repeat(2, 1fr);
  gap: 2rem;
}

.staffArchive .c_staffBox {
  margin: 0;
  height: 69rem !important;
}

.c_staffItem .btn {
  margin-top: 1rem;
}

.c_staffItem .btn a {
  font-size: 1.3rem;
  padding: 1rem;
  display: flex;
  justify-content: space-between;
  align-items: center;
  box-shadow: 0 0.3rem 0 0 #003560;
  border-radius: 0.5rem;
}

.c_staffItem .btn a::after {
  width: 1.1rem;
  position: static;
  transform: none;
  display: inline-block;
  background-position: 50%;
}

.c_staffItem .btn a:hover {
  transform: translateY(0.3rem);
  box-shadow: none;
}

.c_access .row {
  gap: 1.5rem;
  flex-direction: var(--flex-direction);
  background-color: #fff;
}

.c_access .row .box h3 {
  background-color: var(--c_aq);
  color: #fff;
  font-size: 2rem;
  padding: 0.7rem;
  font-weight: 600;
  letter-spacing: 0.2em;
}

.c_access .row dl {
  padding: 0 1.5rem 1.5rem;
}

.c_access .row dl dt,
.c_access .row dl dd {
  padding: 1rem 0;
  text-align: left;
  width: 70%;
  border-bottom: 0.1rem solid var(--c_gy);
}

.c_access .row dl dt:first-of-type,
.c_access .row dl dd:first-of-type {
  border-top: 0.1rem solid var(--c_gy);
}

.c_access .row dl dt {
  width: 30%;
  color: var(--c_bl);
  font-weight: 600;
}

.c_access .row dl dd {
  position: relative;
}

.c_access .row dl dd .link {
  background-color: var(--c_or);
  color: #fff;
  padding: 0.5rem 0.7rem;
  border-radius: 0.5rem;
  display: inline-block;
  margin-top: 0.4rem;
}

.c_access .row dl dd .link:hover {
  background-color: var(--c_bk);
}

/*staff 詳細
---------------------------------------------------------*/
.staffSingle {
  position: relative;
  z-index: 1;
}

.staffSingle::before {
  content: "";
  width: 100%;
  height: 33rem;
  background-color: var(--c_ye);
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  clip-path: polygon(0% 0%, 100% 0%, 100% 52%, 0% 100%);
}

.staffSingle .ttl {
  margin: 2rem 0;
}

.staffSingle .ttl .name {
  font-size: 2.4rem;
  color: var(--c_bl);
}

.staffSingle .ttl .part {
  color: var(--c_bl);
  margin: 0.4rem 0 0.8rem;
}

.staffSingle .ttl .tags {
  background: var(--c_bl);
  font-size: 1.4rem;
  padding: 0.3rem 1rem;
}

.staffSingle .img {
  border: 0.1rem solid var(--c_gy);
  position: relative;
  width: 65.5%;
  margin-inline: auto;
  margin-bottom: 5rem;
}

.staffSingle .img::after {
  content: "";
  width: 11.8rem;
  height: auto;
  aspect-ratio: 2;
  background: url("../img/bg_paint.svg") center no-repeat;
  background-size: contain;
  display: inline-block;
  position: absolute;
  bottom: -1.6rem;
  right: -6.5rem;
}

.staffSingle dl {
  text-align: left;
  width: 80%;
  margin-inline: auto;
}

.staffSingle dt {
  font-size: 1.7rem;
  background-color: var(--c_bl);
  color: #fff;
  border-left: 0.5rem solid var(--c_ye);
  padding: 0.7rem 1.2rem;
  font-weight: 500;
  margin: 3rem 0 1rem;
}

/*faq
---------------------------------------------------------*/
.faqSec .ttl {
  padding: 2.4rem 0;
  font-size: 2.4rem;
  color: var(--c_wh);
}

.faqSec .ttl img {
  width: 24.5rem;
  margin: 0 0.6rem 0.5rem 0;
}

.faqSec .ttl .clr-bl {
  display: block;
  font-weight: 900;
}

.faqWrap {
  text-align: left;
  margin-top: 2rem;
  border-bottom: 0.1rem solid var(--c_gy);
}

.faqWrap dt,
.faqWrap dd {
  padding: 1rem;
  display: flex;
  align-items: flex-start;
  gap: 1rem;
}

.faqWrap dt p,
.faqWrap dd p {
  flex: 1;
}

.faqWrap dt::before,
.faqWrap dd::before {
  content: "Q";
  font-family: var(--font_oswald);
  font-weight: 500;
  font-size: 2.1rem;
  color: #fff;
  background-color: var(--c_bl);
  min-width: 3rem;
  height: auto;
  aspect-ratio: 1;
  display: grid;
  place-content: center;
  padding-bottom: 0.3rem;
}

.faqWrap dd::before {
  content: "A";
  background-color: var(--c_ye);
}

.faqWrap dt::after {
  content: "";
  display: block;
  background: var(--c_ye) url(../img/arrow_bl.svg) 54% 50% no-repeat;
  background-size: 34% auto;
  border-radius: 50%;
  min-width: 2.4rem;
  height: auto;
  aspect-ratio: 1;
  transform: rotate(90deg);
}

.faqWrap dt.active::after {
  transform: rotate(270deg);
}

.faqWrap dt {
  transition: 0.2s;
  cursor: pointer;
  font-size: 1.6rem;
  line-height: 1.4;
  border-top: 0.1rem solid var(--c_gy);
  font-weight: 700;
}

.faqWrap dt:hover {
  color: var(--c_or);
}

.faqWrap dd {
  background-color: var(--c_be);
}

/*flow
---------------------------------------------------------*/
.flowSec {
  padding-bottom: 2.5rem;
}

.flowSec .flowTtl {
  font-size: 2.4rem;
  padding-bottom: 1.8rem;
  font-weight: 900;
  line-height: 1.3;
}

.flowSec .flowTtl .c_diagonal {
  margin-bottom: 0.4rem;
  font-size: 79.2%;
}

.flowSec .area {
  padding: 2rem 0;
}

.flowSec .c_speech {
  font-size: 2.6rem;
  font-weight: 900;
  padding: 1.2rem;
}

.flowSec .c_speech .clr-or {
  background-color: #fff;
  padding: 0.2rem 0;
  font-size: 61.5%;
  margin-bottom: 0.3rem;
  display: block;
  width: 14rem;
  margin-inline: auto;
}

.flowSec .free {
  font-size: 2.1rem;
  font-weight: 900;
  padding: 1.8rem 1.6rem 1.4rem;
  margin: 1rem 0 5rem;
}

.flowSec .free .c_dot {
  font-size: 133.3%;
}

.flowSec .how {
  padding: 3rem 0 3.6rem;
}

.flowSec .how .ttl {
  padding: 0.8rem;
  background-color: #fff;
  border-left: 0.6rem solid var(--c_bl);
  border-right: 0.6rem solid var(--c_bl);
  font-size: 2.3rem;
  font-weight: 900;
  margin-bottom: 2.6rem;
  color: var(--c_bl);
  line-height: 1.3;
}

.contSliderArea._num {
  margin-bottom: 0;
}

._num .slideBox {
  background-color: var(--c_be);
}

._num .slideBox dl {
  font-size: 1.4rem;
}

._num .slideBox dl dt {
  display: flex;
  gap: 0.8rem;
  font-size: 1.8rem;
  color: var(--c_bl);
  align-items: center;
  font-weight: 700;
  border-color: var(--c_gy);
  text-align: left;
}

._num .slideBox dl dt .num {
  font-size: 111.1%;
  display: inline-grid;
  place-content: center;
  width: 4rem;
  height: auto;
  aspect-ratio: 1;
  border-radius: 50%;
  background-color: var(--c_bl);
  color: #fff;
  font-weight: 500;
  margin: 0;
  padding-bottom: 0.25rem;
}

.flowSec .quality {
  padding: 4rem 0;
  background: var(--c_bl);
}

.flowSec .quality .c_diagonal {
  font-size: 2.4rem;
  color: var(--c_wh);
  margin-bottom: 2rem;
}

.flowSec .quality .c_diagonal::before,
.flowSec .quality .c_diagonal::after {
  width: 0.3rem;
}

.flowSec .quality .c_diagonal img {
  width: 21.7rem;
  margin: 0 0.6rem 0.5rem 0;
}

.flowSec .quality .c_diagonal .clr-bl,
.flowSec .quality .c_diagonal .clr-ye {
  display: block;
  font-weight: 900;
}

/*line
---------------------------------------------------------*/
.lineLead {
  padding-bottom: 0;
}

.lineLead .row {
  gap: 1rem;
  align-items: center;
  margin-bottom: 2rem;
}

.lineLead .row .img._logo {
  width: 22.2rem;
}

.lineLead .row .img._cross {
  width: 2.7rem;
  height: auto;
  aspect-ratio: 1;
  border-radius: 50%;
  background: var(--c_aq) url("../img/icon_cross.svg") center no-repeat;
  background-size: 40% auto;
  display: block;
}

.lineLead .row .img._line {
  width: 5.1rem;
}

.lineLead .area {
  padding: 2.2rem 0 1.6rem;
}

.lineLead .area .bg-or {
  color: #FFF;
  font-size: 2.4rem;
  font-weight: 900;
  display: inline-block;
  padding: 0.3rem 1rem;
  margin-bottom: 0.2rem;
}

.lineLead .area strong {
  font-size: 2.8rem;
  font-weight: 900;
  display: block;
  font-feature-settings: "palt";
  letter-spacing: 0.1em;
}

.c_line {
  background-color: var(--c_bl);
  padding: 3.6rem 0;
}

.c_line .area {
  width: 83%;
  margin-inline: auto;
}

.c_line .area .ttl01 {
  color: #fff;
  font-size: 2.8rem;
  margin-bottom: 1.7rem;
  line-height: 1.2;
}

.c_line .area .ttl01 ._ye {
  font-size: 135.7%;
  color: #FFFB00;
}

.c_line .area .ttl01::before {
  content: "";
  width: 6.8rem;
  height: auto;
  aspect-ratio: 1;
  background: url("../img/icon_line.svg") center no-repeat;
  background-size: contain;
  display: block;
  margin-bottom: 1rem;
  border: 0.2rem solid #fff;
  border-radius: 1.5rem;
  margin-inline: auto;
}

.c_line .area .c_speech {
  padding: 1.4rem;
  line-height: 1.2;
}

.c_lineQR .qr {
  width: 14.1rem;
  margin-bottom: 1.5rem;
  margin-inline: auto;
}

.c_lineQR .logo {
  padding: 0 1.4rem;
}

.c_lineQR .ttl {
  color: var(--c_gr);
  background-color: #fff;
  font-size: 2.4rem;
  padding: 0.6rem;
  border-radius: 3rem;
  margin-top: 1.2rem;
  font-feature-settings: "palt";
  display: block;
  font-weight: 700;
}

.c_lineQR .ttl:hover {
  opacity: 0.8;
}

.c_line .row {
  grid-template-columns: repeat(1, 1fr);
  gap: 3rem;
  background-color: #fff;
  border-radius: 3rem;
  padding: 2rem;
  margin-top: 3.5rem;
}

.c_line .row .box .c_speech {
  font-size: 2.2rem;
}

.c_line .row .box .img {
  width: 20.6rem;
  margin-inline: auto;
}

.c_line .row .box .txt {
  font-size: 2rem;
  font-weight: 700;
  margin-top: 1.6rem;
}

.c_line .txt02 {
  color: #FFF;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.3;
  margin-top: 1.6rem;
}

.c_line .txt02 .big {
  font-size: 144.4%;
}

.c_line .btn {
  margin-top: 1rem;
}

.contactMerit {
  background-color: var(--c_rd);
}

.c_numRow {
  grid-template-columns: repeat(1, 1fr);
  gap: 2rem;
}

.c_numBox {
  position: relative;
  overflow: hidden;
}

.c_numBox .enTxt {
  font-size: 1.2rem;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  margin-inline: auto;
  background-color: var(--c_bl);
  width: 9.5rem;
  height: auto;
  aspect-ratio: 1;
  border-radius: 50%;
  color: #fff;
  font-weight: 500;
  transform: translateY(-50%);
  display: flex;
  align-items: center;
  flex-direction: column;
  justify-content: flex-end;
  padding-bottom: 1rem;
}

.c_numBox .enTxt .num {
  font-size: 166.7%;
  display: block;
  margin-top: 0.2rem;
  letter-spacing: 0.07em;
  font-weight: 600;
}

.c_numBox .cont {
  background-color: #fff;
  text-align: left;
  padding: 1rem;
}

.c_numBox .ttl {
  font-size: 2.4rem;
  margin-bottom: 0.6rem;
  line-height: 1.2;
  font-feature-settings: "palt";
  letter-spacing: 0.03em;
}

.c_numBox .id {
  font-size: 1.6rem;
  color: #fff;
  padding: 0.5rem 1rem;
  display: inline-block;
  margin-top: 0.8rem;
}

.c_numBox .note {
  font-size: 1.2rem;
}

.linePR {
  padding: 2rem 0;
}

.linePR .ttl {
  grid-template-columns: repeat(2, 1fr);
  gap: 0.4rem;
  margin-bottom: 1rem;
}

.linePR .ttl .bgClr {
  color: #FFF;
  font-size: 3rem;
  font-weight: 900;
  padding: 0.3rem 1rem;
  background-color: #1398D6;
}

.linePR .txt {
  font-size: 1.6rem;
  font-weight: 500;
}

.c_lineQR._bnr {
  border-radius: 2rem;
  padding: 3rem 4.5rem;
  margin-top: 2rem;
}

.c_lineQR._bnr .logo {
  padding: 0;
}

.lineFunc {
  padding: 3rem 0;
}

.lineFunc .txt {
  text-align: left;
  margin-bottom: 2rem;
  font-size: 1.6rem;
  font-weight: 500;
  padding: 0 1rem;
}

.lineFunc ul li {
  text-align: justify;
  font-size: 2.1rem;
  padding: 1.3rem 1.7rem;
  border: 0.2rem solid var(--c_bl);
  gap: 1rem;
  align-items: center;
  font-weight: 700;
  border-radius: 0.5rem;
  line-height: 1.1;
}

.lineFunc ul li .num {
  color: var(--c_aq);
  background-color: var(--c_ye);
  display: inline-grid;
  place-content: center;
  min-width: 4rem;
  height: auto;
  aspect-ratio: 1;
  border-radius: 50%;
  padding-bottom: 0.6rem;
}

.lineFunc ul li + li {
  margin-top: 1rem;
}

/*inspection
---------------------------------------------------------*/
.inspeLead {
  background: url("../img/inspection/lead_bg.jpg") center no-repeat;
  background-size: cover;
  margin-top: 5.4rem;
  overflow: visible;
  padding-bottom: 2rem;
}

.inspeLead .ttlWrap {
  position: relative;
}

.inspeLead .ttl {
  color: #fff;
  font-size: 2rem;
  text-align: left;
  padding-bottom: 1rem;
  font-feature-settings: "palt";
  letter-spacing: 0.02em;
  line-height: 1.7;
}

.inspeLead .ttl .bg-or {
  font-size: 120%;
  padding: 0.2rem 0.9rem;
  margin-right: 0.4rem;
}

.inspeLead .img {
  position: absolute;
  bottom: 0;
  right: 0;
  width: 12.2rem;
}

.inspeLead .row {
  grid-template-columns: repeat(2, 1fr);
  gap: 1.5rem 2rem;
  padding: 2rem;
  background-color: rgba(4, 58, 103, 0.7);
}

.inspeLead .row .txt {
  color: #fff;
  margin-top: 0.8rem;
  line-height: 1.3;
}

.inspeUse {
  padding: 1.8rem 0 1.6rem;
}

.inspeUse .ttl {
  font-size: 2.4rem;
  font-weight: 900;
  line-height: 1.2;
}

.inspeUse .txt {
  font-size: 2rem;
  font-weight: 700;
}

.inspeItem .ttlBox {
  margin-bottom: 1.5rem;
}

.inspeItem .ttl {
  font-size: 2rem;
  margin-bottom: 2rem;
  line-height: 1.2;
}

.inspeItem .c_marker {
  font-size: 120%;
  font-weight: 900;
  margin-bottom: 0.6rem;
}

.inspeItem .row {
  display: flex;
  gap: 1rem 3%;
}

.inspeItem .row li {
  width: 48.5%;
  display: flex;
  flex-direction: column;
}

.inspeItem .row .txt {
  background-color: var(--c_bl);
  color: #fff;
  padding: 0.6rem;
  font-weight: 700;
  flex: 1;
  align-content: center;
  line-height: 1.3;
}

.inspeGive {
  padding: 2rem 0;
}

.inspeGive .ttl {
  color: #fff;
  font-size: 2.4rem;
  margin-bottom: 1.6rem;
  line-height: 1.3;
}

.inspeGive .row {
  gap: 1rem;
  flex-direction: var(--flex-direction);
}

.inspeGive .row .txt {
  color: #fff;
  text-align: left;
}

.inspeFlow {
  padding-bottom: 0;
}

.c_orderRow {
  flex-direction: var(--flex-direction);
}

.c_orderBox {
  padding: 2rem;
  text-align: left;
}

.c_orderBox .ttl01Row {
  justify-content: space-between;
  position: relative;
  z-index: 1;
  padding-right: 0.6rem;
  align-items: center;
}

.c_orderBox .ttl01 {
  font-size: 1.6rem;
  color: var(--c_or);
  padding-bottom: 1rem;
  font-feature-settings: "palt";
}

.c_orderBox .num {
  font-size: 6rem;
  font-weight: 600;
  letter-spacing: 0;
}

.c_orderBox .num::before {
  content: "";
  width: 2rem;
  height: auto;
  aspect-ratio: 2;
  background: url("../img/c_order_icon.svg ") center no-repeat;
  background-size: contain;
  display: inline-block;
  margin: 0 0.4rem 2.8rem 0;
  vertical-align: middle;
}

.c_orderBox .img {
  margin: -1rem 0 2rem;
}

.c_orderBox .ttl02 {
  font-size: 2.4rem;
  color: var(--c_bl);
  margin-bottom: 1rem;
  line-height: 1.3;
}

.c_orderBox .note {
  font-size: 1.2rem;
}

.c_orderBox .btn {
  text-align: center;
  margin-top: 2rem;
}

._arrow .c_orderBox {
  position: relative;
  padding-top: 4rem;
}

._arrow .c_bgTrape::before {
  top: 2rem;
}

._arrow .c_orderBox:nth-of-type(odd) {
  background-color: var(--c_be);
}

.c_arrowBtm {
  position: relative;
}

._arrow .c_orderBox:not(:last-child)::after,
.c_arrowBtm::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  transform: translateY(94%);
  margin-inline: auto;
  width: 4.9rem;
  height: auto;
  aspect-ratio: 2/0.8;
  clip-path: polygon(0 0, 100% 0, 50% 100%);
  background-color: #fff;
  display: block;
}

._arrow .c_orderBox:nth-of-type(odd)::after {
  background-color: var(--c_be);
}

.c_arrowBtm::after {
  background-color: var(--c_ye);
}

.c_orderBox._onlyNum {
  padding-top: 1rem;
}

.c_orderBox._onlyNum .ttl01Row {
  justify-content: flex-end;
}

.c_orderBox._onlyNum .ttl01Row .num::before {
  display: none;
}

.c_orderBox._onlyNum .img {
  margin: -4rem 0 2rem;
}

.c_inspeSec {
  padding: 2rem 3rem 2.4rem;
}

.c_inspeSec .ttl {
  color: var(--c_rd);
  margin-bottom: 1.6rem;
  font-size: 2.8rem;
  font-weight: 900;
  line-height: 1.3;
}

.c_inspeSec .row {
  flex-direction: var(--flex-direction);
  gap: 1rem;
}

.c_inspeSec .row .txt {
  text-align: left;
  padding: 0 1rem;
}

.c_inspeSec._free {
  margin-bottom: 2rem;
}

.inspeTrouble {
  padding-bottom: 0;
}

.inspeTrouble .c_diagonal {
  line-height: 1.3;
  padding: 0 1.4rem;
  margin-bottom: 1.3rem;
}

.inspeTrouble .c_diagonal .clr-rd {
  font-size: 120%;
  font-weight: 900;
}

.inspeTrouble .bgClr {
  color: #fff;
  padding: 1rem;
  font-size: 1.8rem;
}

.inspeTrouble .area {
  padding-top: 2.2rem;
}

.inspeTrouble .row {
  gap: 1rem;
  align-items: flex-end;
}

.inspeTrouble .row .img {
  width: 8.9rem;
  max-width: 100%;
}

.inspeTrouble .row .box {
  font-size: 1.6rem;
  text-align: left;
  font-weight: 700;
  padding-bottom: 1.5rem;
}

.inspeTrouble .box li::before {
  content: "";
  width: 2rem;
  height: auto;
  aspect-ratio: 1;
  background: var(--c_bl) url("../img/icon_check.svg") center no-repeat;
  background-size: 65% auto;
  display: inline-block;
  margin-right: 0.4rem;
  border-radius: 50%;
  vertical-align: -0.4rem;
}

.inspeTrouble .box li + li {
  margin-top: 0.7rem;
}

.inspeTrouble .box .txt {
  margin-top: 1.1rem;
}

.c_band {
  padding: 1rem;
  position: relative;
  color: #fff;
  font-weight: 700;
  line-height: 1.4;
}

.c_band .txt {
  text-align: left;
  font-size: 1.6rem;
  font-feature-settings: "palt";
  letter-spacing: 0.02em;
}

.c_band .img {
  position: absolute;
  bottom: 0;
  right: 0.7rem;
  width: 10.6rem;
}

.formBox dt {
  display: flex;
  justify-content: space-between;
}

.formBox dt::after {
  content: "任意";
  font-size: 90%;
  font-weight: 700;
  padding: 0.6rem 0.8rem;
  display: inline-block;
  background-color: #F6F4EE;
  line-height: 0.9;
  border-radius: 0.5rem;
  color: #353535;
  letter-spacing: 0.1em;
}

.formBox dt.req::after {
  content: "必須";
  background-color: var(--c_or);
  color: #fff;
}

.formBox dt.privacy::after {
  content: "要確認";
  background-color: var(--c_or);
  color: #fff;
  padding-right: 0.4rem;
  padding-left: 0.4rem;
}

._itemNone .formBox dt::after {
  display: none;
}

.privacyTxt {
  overflow: auto;
  width: 100%;
  height: 20rem;
  white-space: normal;
  padding: 0.7rem 1rem;
  font-size: 1.3rem;
  text-align: left;
  border-radius: 0.3rem;
  font-feature-settings: "palt";
  letter-spacing: 0.02em;
  border: 0.1rem solid var(--c_gy);
  font-weight: 400;
  color: #353535;
}

.privacyTxt p + p {
  margin-top: 1rem;
}

.privacyCheck {
  text-align: center;
  margin-top: 1rem;
}

.formBox .confirm {
  margin-top: 1.6rem;
}

.formBox .confirm .ttl {
  font-size: 1.6rem;
  font-weight: 700;
  margin-bottom: 0.4rem;
}

.formBox .confirm li {
  text-align: left;
  font-weight: 400;
}

.formBox .confirm li::before {
  content: "●";
  display: inline-block;
  margin-right: 0.3rem;
}

/*contact
---------------------------------------------------------*/
.contactTel {
  padding-bottom: 2.4rem;
}

.contactTel .c_diagonal {
  font-size: 1.6rem;
  margin-bottom: 1.3rem;
  line-height: 1.4;
  padding: 0 0.7rem;
}

.contactTel h2 .clr-rd {
  font-size: 150%;
  font-weight: 900;
}

.contactReason {
  padding-bottom: 0;
}

.c_reserveTtl {
  padding: 2.7rem 1rem 3.4rem;
  position: relative;
  color: var(--c_bl);
  font-weight: 700;
  line-height: 1.4;
  background: var(--c_ye);
  background-size: cover;
  z-index: 3;
}

.c_reserveTtl .ttl {
  text-align: left;
  font-size: 2.4rem;
  font-weight: 900;
}

.c_reserveTtl .ttl .c_borderTxt {
  filter: drop-shadow(0 0.4rem 0.4rem rgba(76, 172, 228, 0.4));
}

.c_reserveTtl .img {
  position: absolute;
  bottom: 0;
  right: 0.7rem;
  width: 10.6rem;
  z-index: -1;
}

.contactReason .c_orderRow {
  padding: 2rem 0;
  background-color: #EAFAFF;
  gap: 2rem;
}

/*estimate
---------------------------------------------------------*/
.estimLead {
  padding-bottom: 0;
}

.estimLead .ttl {
  padding: 2rem 0;
  font-size: 1.8rem;
  color: #fff;
  line-height: 1.2;
}

.estimLead .ttl .clr-ye {
  font-size: 277.8%;
  display: block;
}

.estimLead .txt {
  font-size: 1.8rem;
  font-weight: 700;
  margin: 1rem 0;
}

.estimLead .speechRow {
  align-items: flex-start;
}

.estimLead .speechTxt {
  position: relative;
  background-color: var(--c_or);
  color: #fff;
  padding: 0.6rem 1.4rem 1rem;
  border-radius: 5rem;
  font-size: 2.2rem;
  display: inline-block;
  font-weight: 900;
  line-height: 1.2;
  min-width: 19.6rem;
  margin-top: 1rem;
  position: relative;
  z-index: 1;
}

.estimLead .speechTxt::after {
  content: "";
  position: absolute;
  bottom: 3.6rem;
  right: -0.6rem;
  margin-inline: auto;
  width: 1.9rem;
  height: auto;
  aspect-ratio: 1/2;
  clip-path: polygon(0 0, 100% 0, 50% 100%);
  background-color: var(--c_or);
  transform: translateY(96%) rotate(290deg);
  z-index: -1;
}

.estimLead .speechImg {
  width: 13.3rem;
  margin-left: 0.7rem;
  z-index: 2;
}

/*about
---------------------------------------------------------*/
.aboutSelect {
  padding-bottom: 0;
}

.aboutSelect .ttl {
  font-size: 2.4rem;
  font-weight: 900;
  margin: 2.4rem 0 2rem;
}

.aboutSelect .bg-bl {
  padding: 0.4rem 1rem;
  display: inline-block;
  margin-right: 0.4rem;
}

.aboutSelect .txt {
  padding: 2rem;
  text-align: left;
}

.aboutSelect .img {
  margin-top: 3.2rem;
}

.aboutAnchor {
  background: url("../img/about/anchor_bg.jpg") center no-repeat;
  background-size: cover;
  padding: 2rem 0;
}

.aboutAnchor h2 {
  font-size: 1.8rem;
  margin-bottom: 1.6rem;
}

.aboutAnchor h2 .clr-bl {
  display: block;
  font-size: 4rem;
}

.aboutAnchor h2 .clr-bl {
  display: block;
  font-size: 4rem;
  font-weight: 900;
  line-height: 1;
}

.aboutAnchor h2 .clr-bl .big {
  font-size: 150%;
}

.aboutAnchor ul li {
  width: 100%;
}

.aboutAnchor ul li + li {
  margin-top: 0.5rem;
}

.aboutAnchor ul li a {
  background-color: var(--c_bl);
  padding: 1rem;
  font-size: 1.8rem;
  color: #fff;
  display: block;
  text-align: left;
  font-weight: 700;
  position: relative;
  display: flex;
  align-items: center;
}

.aboutAnchor ul li a span {
  font-size: 78%;
  color: var(--c_bl);
  background-color: var(--c_ye);
  display: inline-block;
  padding: 0.4rem 0.6rem;
  margin-right: 1rem;
  font-weight: 600;
  border-radius: 0.3rem;
}

.aboutAnchor ul li a::after {
  content: "";
  width: 2rem;
  height: auto;
  aspect-ratio: 1;
  background: var(--c_ye) url("../img/arrow_bl.svg") 60% 50% no-repeat;
  background-size: 38% auto;
  display: inline-block;
  border-radius: 50%;
  position: absolute;
  top: 1.3rem;
  right: 1rem;
  transform: rotate(90deg);
}

.aboutAnchor ul li a:hover {
  background-color: var(--c_or);
}

.c_about {
  padding: 0;
}

.c_aboutTtl {
  background: url("../img/about/c_aboutTtl_bg.jpg") center no-repeat;
  background-size: cover;
  padding: 3rem 0 2.6rem;
}

.c_aboutTtl .enTxt {
  font-size: 1.4rem;
  color: var(--c_bl);
  background-color: var(--c_ye);
  display: inline-block;
  padding: 0.4rem 0.6rem;
  font-weight: 600;
  border-radius: 0.3rem;
  margin-bottom: 0.3rem;
}

.c_aboutTtl .jaTxt {
  color: #FFF;
  font-size: 2.8rem;
}

.c_aboutArea {
  padding: 2rem 0 4rem;
}

.c_aboutArea .ttl01 {
  padding: 1rem 2rem;
  color: var(--c_bl);
  background-color: var(--c_ye);
  font-size: 2rem;
  line-height: 1.3;
}

.c_aboutArea .ttl01:nth-of-type(n+2) {
  margin-top: 2rem;
}

.c_aboutRow {
  flex-direction: var(--flex-direction);
}

.c_aboutRow .box {
  padding: 2rem;
  text-align: left;
}

.c_aboutRow .box .ttl02 {
  font-size: 2.4rem;
  padding-bottom: 1.6rem;
  color: var(--c_bl);
  font-feature-settings: "palt";
  line-height: 1.3;
  letter-spacing: 0.02em;
}

.c_aboutArea .graph {
  padding: 0 2rem 2rem;
}

.c_aboutArea .graph .note {
  text-align: left;
  font-size: 1.2rem;
  margin: 0.4rem 0 2rem;
}

.c_aboutArea .graph .note a {
  text-decoration: underline;
  text-underline-offset: 0.2rem;
}

.c_aboutArea .graph .note a:hover {
  color: var(--c_rd);
}

.c_aboutArea .graph .txt {
  text-align: left;
}

.c_aboutPoint {
  padding-top: 2rem;
}

.c_about .c_speech {
  line-height: 1.2;
}

.c_aboutPoint .row {
  grid-template-columns: repeat(1, 1fr);
  gap: 3.2rem;
  text-align: left;
}

.c_aboutPoint .box .ttl {
  font-size: 2rem;
  padding: 1.6rem 0 0.4rem;
  color: var(--c_bl);
  display: flex;
  align-items: center;
}

.c_aboutPoint .box .ttl .num {
  font-size: 70%;
  color: var(--c_ye);
  background-color: var(--c_or);
  display: inline-block;
  padding: 0.5rem 0.6rem;
  margin-right: 0.8rem;
  font-weight: 600;
}

.c_table {
  border-radius: 0.5rem;
  border: 0.1rem solid var(--c_gy);
  border-collapse: separate;
  border-spacing: 0;
  overflow: hidden;
  margin-top: 2rem;
  font-feature-settings: "palt";
  letter-spacing: 0.02em;
  background-color: #fff;
}

.c_table th,
.c_table td {
  padding: 1rem 1.3rem;
  border-right: 0.1rem solid var(--c_gy);
  border-bottom: 0.1rem solid var(--c_gy);
}

.c_table th:last-child,
.c_table td:last-child {
  border-right: none;
}

.c_table tbody tr:last-child th,
.c_table tr:last-child td {
  border-bottom: none;
}

.c_table thead th {
  background-color: #E6E6E6;
  font-weight: 700;
  padding-left: 1rem;
  padding-right: 1rem;
}

.c_table tbody {
  text-align: left;
}

.c_table tbody th {
  background-color: var(--c_be);
  font-weight: 400;
  width: 11.9rem;
}

.c_table td {
  line-height: 1.7;
}

.c_table tbody td p {
  font-size: 1.6rem;
  font-weight: 700;
}

.c_table tbody td a {
  text-decoration: underline;
  text-underline-offset: 0.2rem;
}

.c_table tbody td li::before {
  content: "●";
  display: inline-block;
}

.aboutFlow {
  margin-bottom: 4rem;
}

.c_aboutArea .check {
  padding: 2rem 0;
  margin-top: 2rem;
}

.c_aboutArea .check .row {
  gap: 2rem;
  flex-direction: var(--flex-direction);
  text-align: left;
}

.c_aboutArea .check .row .box .ttl {
  font-size: 2.4rem;
  padding-bottom: 1.8rem;
  color: var(--c_bl);
  font-feature-settings: "palt";
}

.aboutCare .exampleArea {
  padding-top: 2rem;
}

.aboutCare .exampleTtl {
  color: #fff;
  font-size: 2rem;
  padding: 1.1rem;
  line-height: 1.3;
}

.aboutCare .exampleRow {
  gap: 2rem;
  flex-direction: var(--flex-direction);
  text-align: left;
}

.aboutCare .exampleRow .box .ttl {
  font-size: 2rem;
  padding: 0 1rem 1rem;
  color: var(--c_bl);
}

.aboutCare .exampleRow .box ul {
  padding: 1rem;
}

.aboutCare .exampleRow .box li {
  padding: 1.5rem 0;
  border-bottom: 0.1rem solid var(--c_gy);
  font-weight: 500;
}

.aboutCare .exampleRow .box li:first-of-type {
  border-top: 0.1rem solid var(--c_gy);
}

.aboutCare .band {
  position: relative;
  margin: 2.6rem 0 2rem;
}

.aboutCare .band .txt {
  font-size: 2rem;
  font-weight: 900;
  text-align: left;
  padding-right: 11.4rem;
  font-feature-settings: "palt";
  letter-spacing: 0.02em;
  line-height: 1.2;
}

.aboutCare .band .txt._02 {
  padding: 1.4rem 1.2rem;
  margin: 1rem -3% 0;
  letter-spacing: 0.1em;
}

.aboutCare .band .img {
  width: 18rem;
  position: absolute;
  bottom: 0;
  right: -3.6rem;
}

.aboutCare .caution {
  padding: 1.2rem 0 2rem;
  margin-top: 2rem;
}

.aboutCare .caution ._ye {
  color: #FFF200;
}

.aboutCare .caution .ttl {
  font-size: 4rem;
  font-weight: 900;
  margin-bottom: 0.2rem;
  display: flex;
  align-items: center;
  justify-content: center;
}

.aboutCare .caution .ttl::before {
  content: "";
  width: 4rem;
  height: auto;
  aspect-ratio: 4/3.5;
  background: url("../img/icon_caution.svg") center no-repeat;
  background-size: contain;
  display: inline-block;
  margin-right: 1rem;
}

.aboutCare .caution .txt {
  text-align: left;
  color: #fff;
  font-size: 2rem;
  font-weight: 700;
  font-feature-settings: "palt";
  line-height: 1.3;
}

.caseRow {
  grid-template-columns: repeat(1, 1fr);
  gap: 2rem;
}

.caseBox {
  padding: 1rem 1rem 1.6rem;
  background-color: #F2F2F2;
}

.caseBox .ttl {
  font-size: 2rem;
  padding: 0.7rem;
  background-color: #353535;
  color: #fff;
  border-radius: 0.3rem;
  margin-bottom: 1.6rem;
}

.caseArea .c_speech {
  margin-top: 2rem;
}

.caseBox._03 .scrollWrap .img {
  width: 103rem;
}

.caseBox._04 {
  margin-top: 2rem;
}

.aboutWork .good .ttl {
  color: #FFF;
  font-size: 2.2rem;
  display: flex;
  gap: 1rem;
  margin: 2rem 0 0.8rem;
}

.aboutWork .good .ttl span {
  display: inline-block;
  width: calc((100% - 2rem) / 3);
  padding: 0.2rem 0;
}

.aboutWork .good .txt {
  text-align: left;
}

.aboutWork .good .txt .clr-rd {
  font-weight: 700;
}

.Adr {
  position: relative;
  z-index: 0;
  padding: 13.3333333333vw 0;
  background-color: #f0f0f0;
}

/*reason
---------------------------------------------------------*/
.reasonAnchor .ttl {
  position: relative;
  padding-bottom: 3rem;
}

.reasonAnchor .ttl .c_speech {
  font-size: 1.6rem;
  text-align: left;
  padding: 1.6rem 2rem 1.9rem;
  margin-bottom: 0;
}

.reasonAnchor .ttl .c_speech .clr-ye {
  font-size: 2.6rem;
  display: block;
  margin-top: 0.8rem;
}

.reasonAnchor .ttl .c_speech .clr-ye .num {
  font-size: 192.3%;
}

.reasonAnchor .ttl .c_speech::after {
  left: 7.5rem;
  right: auto;
}

.reasonAnchor .ttl .img {
  width: 18rem;
  position: absolute;
  bottom: 0;
  right: -1rem;
}

.reasonAnchor ul li {
  width: 100%;
}

.reasonAnchor ul li + li {
  margin-top: 1rem;
}

.reasonAnchor ul li a {
  border-top: 0.2rem solid var(--c_bl);
  padding: 1.4rem;
  font-size: 1.8rem;
  text-align: left;
  font-weight: 700;
  position: relative;
  display: flex;
  align-items: center;
  background-color: #fff;
  line-height: 1.3;
}

.reasonAnchor ul li a .enTxt {
  text-align: left;
  -webkit-writing-mode: vertical-rl;
  -ms-writing-mode: tb-rl;
  -o-writing-mode: vertical-rl;
  writing-mode: vertical-rl;
  color: var(--c_ye);
  font-size: 1.2rem;
}

.reasonAnchor ul li a .num {
  font-size: 3.2rem;
  color: var(--c_bl);
  margin: 0 1.2rem 0 0.5rem;
}

.reasonAnchor ul li a::after {
  content: "";
  width: 1.3rem;
  height: auto;
  aspect-ratio: 1;
  clip-path: polygon(100% 100%, 100% 0, 0 100%);
  background-color: var(--c_ye);
  display: block;
  position: absolute;
  bottom: -0.1rem;
  right: -0.1rem;
}

.reasonAnchor ul li a:hover {
  transform: translateY(-0.3rem);
  box-shadow: 0 0.3rem 0 rgba(0, 0, 0, 0.2);
}

.reasonOrder._01 .ttl img {
  margin: 1rem 0 2rem;
}

.reasonOrder .c_orderRow {
  gap: 3.6rem;
}

/*company
---------------------------------------------------------*/
.companyLead .ttl {
  width: 24rem;
  margin-inline: auto;
  margin-bottom: 2rem;
}

.c_message._reason .img {
  margin: 0 -3% 2.4rem;
}

.companyAchiev .row {
  grid-template-columns: repeat(2, 1fr);
  gap: 2rem;
}

.companyAchiev .row .txt {
  margin-top: 0.4rem;
}

.companySec .img {
  margin-top: 2rem;
}

.companySec .c_table {
  margin: 0;
  border-radius: 0;
}

.companySec .c_table tbody th {
  font-weight: 500;
}

/*showroom
---------------------------------------------------------*/
.showroomLead {
  padding-bottom: 0;
}

.showroomLead .band {
  position: relative;
  margin: 0 0 2rem;
  background: url("../img/showroom/lead_band_bg.jpg") center no-repeat;
  background-size: cover;
  text-align: left;
}

.showroomLead .band .ttl,
.showroomLead .band .txt {
  padding: 1.1rem 2rem;
}

.showroomLead .band .ttl {
  font-size: 1.7rem;
  font-feature-settings: "palt";
  letter-spacing: 0.02em;
  padding-top: 2rem;
  padding-bottom: 0.3rem;
}

.showroomLead .band .ttl img {
  width: 21rem;
  margin: 0 0.7rem 0.4rem 0;
}

.showroomLead .band .txt {
  font-size: 1.9rem;
  font-weight: 700;
}

.showroomLead .band .img {
  width: 10rem;
  position: absolute;
  bottom: 0;
  right: 1rem;
}

.showroomLead .bnrArea {
  padding: 4rem 0;
  margin-top: 2.8rem;
}

.showroomLead .bnrBox {
  background: url("../img/showroom/lead_bnr_bg.jpg") center no-repeat;
  background-size: cover;
  padding: 1rem 1rem 1.6rem;
  text-align: left;
  white-space: nowrap;
}

.showroomLead .bnrBox .ttlRow,
.showroomLead .bnrBox .txtRow {
  filter: drop-shadow(0.3rem 0.3rem 0.2rem rgba(0, 0, 0, 0.3));
}

.showroomLead .bnrBox .ttlRow {
  gap: 0.6rem;
  align-items: center;
  margin-bottom: 0.5rem;
}

.showroomLead .bnrBox .ribbon {
  background-color: var(--c_or);
  clip-path: polygon(0% 0%, 100% 0%, 90% 50%, 100% 100%, 0% 100%);
  color: #fff;
  font-size: 1.2rem;
  font-weight: 700;
  padding: 0.4rem 1.7rem 0.4rem 1.2rem;
  line-height: 1.3;
}

.showroomLead .bnrBox .ttl {
  font-size: 3rem;
  font-weight: 900;
}

.showroomLead .bnrBox .txtRow {
  gap: 0.7rem;
  align-items: flex-end;
}

.showroomLead .bnrBox .gift {
  color: #fff;
  font-weight: 900;
  line-height: 1.3;
}

.showroomLead .bnrBox .price {
  color: var(--c_rd);
  font-size: 3.9rem;
}

.showroomLead .bnrBox .price .comma {
  font-size: 73.2%;
}

.showroomLead .bnrBox .price .yen {
  /*safariのみ*/
  font-size: 34.1%;
  -webkit-writing-mode: vertical-lr;
  -ms-writing-mode: tb-lr;
  -o-writing-mode: vertical-lr;
  writing-mode: vertical-lr;
  -webkit-text-stroke: 0.5rem #fff;
  margin-left: 0.2rem;
  vertical-align: -0.2rem;
}

@supports (-webkit-hyphens: none) {
  .showroomLead .bnrBox .price .yen {
    margin-right: 1rem;
  }
}
.showroomLead .bnrBox .txt {
  color: var(--c_or);
  font-size: 2rem;
  -webkit-text-stroke: 0.5rem #fff;
}

.showroomLead .btn {
  margin-top: 2rem;
}

.showroomMerit {
  padding: 0;
}

.showroomTtl {
  background-color: var(--c_bl);
  font-size: 2.8rem;
  padding: 2.7rem 0;
  color: #fff;
  margin-bottom: 2rem;
}

.c_paintRow {
  gap: 2rem;
  flex-direction: var(--flex-direction);
}

.c_paintBox {
  padding: 2rem 1.5rem;
  background-color: var(--c_be);
  text-align: left;
  overflow: hidden;
  position: relative;
  z-index: 1;
  box-shadow: 8px 8px 1px var(--c_aq);
}

.c_paintBox._imgNone {
  padding-top: 8rem;
}

.c_paintBox .enTtl {
  font-size: 1.1rem;
  font-weight: 700;
  color: var(--c_ye);
  position: absolute;
  top: 0rem;
  left: 0;
  z-index: 1;
  padding: 1rem 0.4rem;
}

.c_paintBox .enTtl .num {
  font-size: 363.6%;
  display: inline-block;
  vertical-align: -1rem;
  letter-spacing: 0;
  margin-left: 0.2rem;
}

.c_paintBox .enTtl::after {
  content: "";
  width: 14rem;
  height: auto;
  aspect-ratio: 42/30;
  background: url("../img/c_paint_blue.svg") center right no-repeat;
  background-size: contain;
  position: absolute;
  top: -1.2rem;
  left: -3.3rem;
  z-index: -1;
}

.c_paintBox .img {
  position: relative;
}

.c_paintBox .img::after {
  content: "";
  width: 14rem;
  height: auto;
  aspect-ratio: 42/30;
  background: url("../img/c_paint_yellow.svg") center right no-repeat;
  background-size: contain;
  position: absolute;
  bottom: -3rem;
  right: -7rem;
  z-index: -1;
}

.c_paintBox .ttl {
  font-size: 1.8rem;
  margin: 1rem 0 0.8rem;
  color: var(--c_or);
}

.c_paintBox .txt {
  font-size: 1.3rem;
}

.c_paintBox._paintReverse .enTtl::after {
  background-image: url("../img/c_paint_blue.svg");
}

.c_paintBox._paintReverse .img::after {
  background-image: url("../img/c_paint_yellow.svg");
}

.c_paintBox._paintReverse.bg-ye .img::after {
  background-image: url("../img/c_paint_blue.svg");
}

.showroomReserve {
  padding-top: 2rem;
}

.showroomReserve .c_reserveTtl {
  padding: 1.2rem 1.6rem;
  margin-bottom: 2rem;
}

.showroomReserve .c_orderRow {
  gap: 2rem;
}

/*loan-credit
---------------------------------------------------------*/
.loanAnchor .c_speech {
  font-size: 2.6rem;
  font-weight: 900;
  padding: 1.4rem;
  margin-bottom: 3rem;
}

.loanAnchor .c_speech .clr-bk {
  font-size: 61.5%;
  display: block;
}

.loanAnchor .linkRow {
  gap: 0.8rem;
  flex-direction: var(--flex-direction);
}

.loanAnchor .link {
  border-radius: 1.3rem;
  padding: 1rem 2rem;
  font-size: 1.6rem;
  border: 0.1rem solid var(--c_aq);
  position: relative;
  text-align: left;
  display: flex;
  align-items: center;
  font-weight: 700;
  color: var(--c_aq);
}

.loanAnchor .link::before {
  content: "";
  width: 3.25rem;
  height: auto;
  aspect-ratio: 3.25/2.6;
  background: url("../img/loan-credit/icon_affiliatedloan.svg") center no-repeat;
  background-size: contain;
  display: inline-block;
  margin-right: 1rem;
}

.loanAnchor .link._creditcard::before {
  background-image: url("../img/loan-credit/icon_creditcard.svg");
}

.loanAnchor .link._bankloan::before {
  background-image: url("../img/loan-credit/icon_bankloan.svg");
}

.loanAnchor .link._cash::before {
  background-image: url("../img/loan-credit/icon_cash.svg");
}

.loanAnchor .link::after {
  content: "";
  display: block;
  background: var(--c_ye) url(../img/arrow_bl.svg) 54% 50% no-repeat;
  background-size: 34% auto;
  border-radius: 50%;
  width: 2rem;
  height: auto;
  aspect-ratio: 1;
  position: absolute;
  right: 2rem;
  top: 50%;
  transform: translateY(-50%) rotate(90deg);
  z-index: 1;
}

.loanAnchor .link:hover {
  opacity: 0.7;
}

.c_person {
  padding: 3rem 0 2rem;
}

.c_personRow {
  gap: 1.4rem;
  align-items: center;
}

.c_personRow + .c_personRow {
  margin-top: 1rem;
}

.c_personRow:nth-child(even) {
  flex-direction: row-reverse;
}

.c_personRow .img {
  width: 7.6rem;
  max-width: 100%;
}

.c_personRow .txt {
  flex: 1;
  background-color: var(--c_be);
  border-radius: 1rem;
  padding: 1.2rem 1rem;
  font-size: 1.3rem;
  text-align: left;
}

.loanAnchor .cont {
  text-align: left;
}

.loanAnchor .cont ul {
  margin: 0.8rem 0;
}

.loanAnchor .cont li {
  text-align: left;
  line-height: 1.6;
  text-indent: -0.3em;
  padding-left: 0.6em;
  font-weight: 700;
}

.loanAnchor .cont li::before {
  content: "●";
  display: inline-block;
  font-size: 0.8rem;
  vertical-align: 0.1rem;
  margin-right: 0.6rem;
  color: var(--c_or);
}

.loanAffili {
  padding-top: 3rem;
}

.ttlIcon {
  margin-bottom: 2.8rem;
  letter-spacing: 0.05em;
}

.ttlIcon .icon {
  display: block;
  margin-bottom: 1rem;
}

.ttlIcon .icon img {
  width: 3.25rem;
}

.ttlIcon h2 .enTxt {
  display: block;
  color: var(--c_aq);
  font-size: 1.4rem;
}

.ttlIcon h2 .jaTxt {
  color: var(--c_bl);
  font-size: 3.2rem;
  font-weight: 900;
}

.c_loanTtl {
  font-size: 2rem;
  font-weight: 900;
  background-color: var(--c_bl);
  color: #fff;
  padding: 0.7rem;
  letter-spacing: 0.06em;
}

.loanAffili .row {
  flex-direction: var(--flex-direction);
  gap: 2.4rem;
}

.loanAffili .itemRow {
  flex-direction: var(--flex-direction);
}

.loanAffili .item {
  background-color: #fff;
  padding: 1.6rem;
}

.loanAffili .item .ttl {
  font-size: 2rem;
  color: var(--c_bl);
  margin-bottom: 2rem;
  font-weight: 900;
}

.loanAffili .item dl {
  margin-bottom: 1rem;
}

.loanAffili .item dt,
.loanAffili .item dd {
  padding: 0.4rem 1rem;
  text-align: left;
  width: 65%;
  font-feature-settings: "palt";
  letter-spacing: 0.02em;
}

.loanAffili .item dt:nth-of-type(n+2),
.loanAffili .item dd:nth-of-type(n+2) {
  margin-top: 1rem;
}

.loanAffili .item dt {
  width: 35%;
  background-color: var(--c_ye);
  font-weight: 700;
  padding: 0.8rem;
  align-content: center;
  text-align: center;
}

.loanAffili .item dd {
  color: var(--c_bl);
  font-weight: 700;
  padding-right: 0;
  align-content: center;
}

.loanAffili .item dd .num {
  font-size: 3rem;
  position: relative;
}

.loanAffili .item dd .num .small {
  font-size: 66.7%;
}

.loanAffili .item dd .speech {
  color: #fff;
  padding: 1rem 1.1rem 1.2rem;
  font-size: 1.1rem;
  text-align: center;
  display: inline-block;
  background: url("../img/loan-credit/speech_bg.svg") center no-repeat;
  background-size: 6.7rem auto;
  line-height: 1.2;
  font-weight: 500;
  position: absolute;
  top: -1.8rem;
  right: -7.7rem;
}

.loanAffili .item dd .txt {
  font-size: 1.2rem;
  font-weight: 500;
}

.loanAffili .item dd .big {
  font-size: 114.3%;
  font-weight: 900;
}

.loanAffili .note {
  font-size: 1.2rem;
  text-align: left;
}

.loanAffili .item .ttl02 {
  font-size: 1.6rem;
  color: var(--c_bl);
  margin-bottom: 1rem;
  text-align: left;
  font-weight: 900;
}

.loanAffili .item .ttl02 .small {
  font-size: 87.5%;
}

.loanAffili ul {
  margin-top: 2.4rem;
  text-align: left;
}

.loanAffili li + li {
  margin-top: 1.6rem;
}

.loanAffili li h5 {
  font-size: 1.4rem;
  text-indent: -1.2em;
  padding-left: 1.4em;
  line-height: 1.3;
  margin-bottom: 0.8rem;
}

.loanAffili li h5::before {
  content: "";
  font-size: 0.6rem;
  margin-right: 0.6rem;
  width: 1.1rem;
  height: auto;
  aspect-ratio: 1.2/1.7;
  clip-path: polygon(0 0, 100% 50%, 0 100%);
  background-color: var(--c_bl);
  display: inline-block;
  vertical-align: -0.3rem;
}

.loanAffili .simulation {
  margin-top: 2.4rem;
}

.loanAffili .tableTtl {
  font-weight: 700;
  margin-top: 2rem;
  text-align: left;
}

.loanAffili .scrollWrap {
  margin: 1.4rem 0 1.6rem;
}

.loanAffili .c_table {
  border-radius: 0;
  width: 133.7rem;
  margin: 0;
}

.loanAffili .c_table thead th {
  font-weight: 700;
}

.loanAffili .c_table tbody {
  text-align: center;
}

.loanAffili .c_table tbody th {
  background-color: #FFF6D7;
  width: 12.2rem;
  font-weight: 500;
}

.loanAffili .c_table tbody td {
  font-weight: 500;
}

.loanAffili .c_table span {
  display: block;
  font-weight: 400;
}

.loanCredit .row {
  gap: 1rem;
  flex-direction: var(--flex-direction);
  padding: 1rem 1rem 3rem;
}

.loanCredit .row .txt {
  text-align: left;
}

.loanCredit .band {
  text-align: left;
  color: #fff;
  font-size: 1.6rem;
  position: relative;
  padding: 1rem 1rem 1.2rem;
}

.loanCredit .band .txt {
  font-weight: 700;
}

.loanCredit .band .txt .clr-rd {
  font-size: 156.3%;
  display: inline-block;
  padding: 0.3rem 0.6rem;
  line-height: 1.1;
  margin: 0.4rem 0.4rem 0 0;
}

.loanCredit .band .img {
  width: 7.3rem;
  position: absolute;
  bottom: 0;
  right: 1.5rem;
}

.c_loanTtl02 {
  background-color: var(--c_or);
  color: #fff;
  font-size: 1.6rem;
  text-align: left;
  padding: 1rem 1.6rem;
  font-feature-settings: "palt";
  letter-spacing: 0.05em;
}

.loanBank {
  padding-bottom: 0;
}

.loanBank .list {
  grid-template-columns: repeat(2, 1fr);
  gap: 1rem;
  margin: 1.6rem 0;
}

.loanBank .list li {
  color: var(--c_bl);
  background-color: #fff;
  padding: 1rem;
  border-radius: 0.5rem;
  border: 0.1rem solid var(--c_bl);
  text-align: left;
  font-size: 1.6rem;
  display: flex;
  align-items: center;
  gap: 0.8rem;
  font-weight: 700;
}

.loanBank .list li .num {
  font-size: 87.5%;
  display: inline-grid;
  place-content: center;
  width: 3.8rem;
  height: auto;
  aspect-ratio: 1;
  border-radius: 50%;
  background-color: var(--c_aq);
  color: #fff;
}

.loanBank .txt {
  text-align: left;
}

.loanBank .c_table {
  border-radius: 0;
}

.loanBank .c_table tbody th {
  background-color: #FFF6D7;
  width: 8.2rem;
  font-weight: 500;
  padding: 1rem;
}

.loanBank .cont {
  text-align: left;
  margin: 1.6rem 0 4rem;
}

.loanBank .cont p + p {
  margin-top: 2rem;
}

.loanBank .cont p .clr-rd {
  font-weight: 700;
}

.loanBank .band {
  text-align: left;
  color: #fff;
  font-size: 1.6rem;
  position: relative;
  padding: 1rem 11rem 1.2rem 1rem;
  font-weight: 700;
}

.loanBank .band .img {
  width: 9.4rem;
  position: absolute;
  bottom: 0;
  right: 1.5rem;
}

.loanCash .row {
  gap: 1.6rem;
  padding: 1.6rem;
  flex-direction: var(--flex-direction);
}

.loanCash .row .txt {
  text-align: left;
}

/*follow
---------------------------------------------------------*/
.followLead {
  padding-bottom: 2rem;
  /* margin-top: 2rem; */
}

.followLead .ttl {
  font-size: 2rem;
  padding: 0.7rem;
  margin: 0.7rem 0;
  color: #fff;
}

.followLead .txt {
  font-size: 1.8rem;
  text-align: left;
  font-weight: 700;
  font-feature-settings: "palt";
  letter-spacing: 0.02em;
}

.followPoint {
  padding-bottom: 0;
}

.followPoint .c_speech {
  text-align: left;
  font-size: 1.8rem;
  padding: 1rem 4.9rem;
  font-feature-settings: "palt";
  letter-spacing: 0.05em;
  margin-bottom: 3rem;
}

.c_paintTtl {
  background: var(--c_bl);
  background-size: cover;
  padding: 2.8rem;
  outline: 0.1rem solid #fff;
  outline-offset: -1rem;
  font-size: 1.6rem;
  color: #fff;
  line-height: 1.4;
}

.c_paintTtl .big {
  font-size: 3.4rem;
  display: block;
}

.c_paintTtl .small {
  font-size: 82.4%;
}

.followPoint .c_diagonal {
  font-size: 1.6rem;
  text-align: justify;
  margin: 2rem 2.6rem 1.6rem;
  line-height: 1.3;
  font-feature-settings: "palt";
  letter-spacing: 0.02em;
}

.followPoint .c_diagonal::before,
.followPoint .c_diagonal::after {
  transform: rotate(-15deg);
}

.followPoint .c_diagonal::after {
  transform: rotate(15deg);
}

.followPoint ._02 .c_paintBox .img {
  padding: 1.8rem 1.5rem;
  background-color: #fff;
}

.followPoint .c_paintBox .img::after {
  bottom: auto;
  top: 9rem;
}

.followPoint .c_paintBox .txt {
  font-size: 1.4rem;
}

.followPoint .img02 {
  margin-top: 1rem;
}

.followPoint .human {
  gap: 1.2rem;
  margin-top: 2rem;
  align-items: center;
}

.followPoint .human .img {
  width: 10.5rem;
  max-width: 100%;
}

.followPoint .human .box {
  flex: 1;
  font-feature-settings: "palt";
  letter-spacing: 0.02em;
  text-align: left;
  line-height: 1.3;
}

.followPoint .human .ttl {
  font-size: 1.6rem;
  color: #fff;
  padding: 0.7rem 1rem;
  display: block;
  margin-bottom: 1rem;
}

.followPoint .human .txt {
  font-size: 1.6rem;
  font-weight: 500;
}

.followReview {
  margin-bottom: 3rem;
}

/*degradation
---------------------------------------------------------*/
.degraCheck .checkTtl {
  background: url("../img/degradation/check_ttl_bg.jpg") center no-repeat;
  background-size: cover;
  font-size: 2.8rem;
  font-weight: 900;
  line-height: 1.2;
  padding: 2rem;
  color: var(--c_wh);
}

.degraCheck .checkTtl .c_speech {
  font-size: 67.9%;
  width: 27rem;
  font-weight: 900;
  margin-bottom: 1.2rem;
  padding: 0.5rem;
}

.degraCheck .checkTtl .clr-bl {
  font-size: 132.1%;
}

.degraCheck .checkTtl .small {
  font-size: 89.3%;
}

.degraCheck .area {
  padding: 3rem 0;
}

.degraCheck .areaTtl {
  background-color: var(--c_bl);
  color: var(--c_wh);
  padding: 0.4rem;
  font-size: 2.2rem;
  margin-bottom: 1.6rem;
}

.degraCheck .row {
  gap: 1rem 2%;
}

.degraCheck .row .box {
  width: 49%;
  border: 0.1rem solid var(--c_bl);
  background-color: var(--c_be);
  border-radius: 10px;
  overflow: hidden;
}

.degraCheck .row .box .ttl {
  font-size: 1.4rem;
  display: flex;
  align-items: center;
  color: var(--c_wh);
  background-color: var(--c_aq);
  padding: 1rem 0.7rem 1rem 0.9rem;
  text-align: left;
  height: 4.3rem;
  line-height: 1.2;
}

.degraCheck .row .box .ttl::before {
  content: "";
  width: 2rem;
  height: auto;
  aspect-ratio: 1;
  background: var(--c_ye) url("../img/icon_check.svg") center no-repeat;
  background-size: 70% auto;
  display: inline-block;
  margin-right: 0.8rem;
  border-radius: 50%;
}

.degraCheck .row .box .txt {
  font-size: 1.3rem;
  text-align: left;
  padding: 0.8rem;
  line-height: 1.3;
}

.degraCheck .area:nth-of-type(even) {
  background-color: var(--c_be);
}

.degraCheck .area:nth-of-type(even) .box {
  background-color: #fff;
}

.degraTake {
  background: url("../img/degradation/take_bg.jpg") center no-repeat;
  background-size: cover;
  text-align: left;
  padding: 2.5rem 0 0;
}

.degraTake .takeTtl {
  font-size: 2rem;
  font-weight: 900;
  margin-bottom: 1rem;
  line-height: 1.3;
}

.degraTake .takeTtl .big {
  font-size: 120%;
}

.degraTake .takeTtl .clr-bl {
  font-size: 140%;
}

.degraTake .row {
  gap: 0.7rem;
  align-items: center;
}

.degraTake .txt {
  text-align: left;
  font-size: 1.5rem;
  flex: 1;
  line-height: 1.5;
  font-weight: 500;
}

.degraTake .row .txt .c_marker {
  font-size: 1.6rem;
  color: #000;
  margin-bottom: 0.4rem;
}

.degraTake .txt .c_marker .big {
  font-weight: 700;
  font-size: 118.8%;
}

.degraTake .row .img {
  width: 10.9rem;
  max-width: 100%;
}

.degraHurt {
  padding: 2.4rem 0 0;
  margin-bottom: 4rem;
}

.degraHurt .c_speech {
  font-size: 1.9rem;
  margin-bottom: 3.8rem;
}

.degraHurt .c_speech .big {
  font-size: 131.6%;
}

.degraHurt .box {
  width: 80%;
  margin-inline: auto;
}

.degraHurt .box::after {
  content: "";
  width: 3.8rem;
  height: auto;
  aspect-ratio: 3.8/5;
  background: url("../img/degradation/hurt_arrow.svg") center no-repeat;
  background-size: contain;
  display: block;
  margin: 3rem 0;
  margin-inline: auto;
}

.degraHurt ul {
  flex-direction: var(--flex-direction);
  margin-top: 3rem;
}

.degraHurt li {
  border-bottom: 0.2rem solid var(--c_gy);
  padding: 1.4rem 0;
  font-size: 1.6rem;
  font-weight: 700;
  text-align: left;
}

.degraHurt li::before {
  content: "";
  width: 2rem;
  height: auto;
  aspect-ratio: 1;
  background: var(--c_bl) url("../img/icon_check.svg") center no-repeat;
  background-size: 65% auto;
  display: inline-block;
  margin-right: 0.8rem;
  border-radius: 50%;
  vertical-align: -0.4rem;
}

.degraHurt li:nth-child(even)::before {
  background-color: #66859E;
}

.degraHurt .row {
  padding: 1.8rem 0;
  align-items: center;
}

.degraHurt .row .txt {
  color: #fff;
  text-align: left;
  font-size: 1.9rem;
  font-weight: 700;
  flex: 1;
  line-height: 1.4;
  white-space: nowrap;
}

.degraHurt .row .txt .clr-ye {
  font-size: 142.1%;
}

.degraHurt .row .txt .big {
  font-size: 110.5%;
}

.degraHurt .row .img {
  width: 8.6rem;
  max-width: 100%;
}

.degraOrder .orderTtl {
  color: var(--c_bl);
  font-size: 1.8rem;
  margin-bottom: 2.4rem;
}

.degraOrder .orderTtl .big {
  font-size: 161.1%;
  font-weight: 900;
  display: block;
}

.degraOrder .c_orderRow {
  gap: 3rem;
}

.degraOrder .c_orderBox .ttl02 {
  color: var(--c_bk);
}

.degraBlog .c_blogBox .cont {
  background-color: #fff;
}

/*design
---------------------------------------------------------*/
.designTrouble .ttl {
  font-size: 2rem;
  font-weight: 900;
  color: var(--c_bl);
  margin: 1rem 0 1rem;
}

.designTrouble .ttl .clr-or {
  font-size: 120%;
}

.c_checkList li {
  border-bottom: 0.1rem solid var(--c_gy);
  padding: 1rem;
  text-align: left;
  padding-left: 2em;
  text-indent: -2em;
  font-weight: 500;
}

.c_checkList li::before {
  content: "";
  width: 2rem;
  height: auto;
  aspect-ratio: 1;
  background: var(--c_ye) url("../img/icon_check.svg") 50% 50% no-repeat;
  background-size: 65% auto;
  display: inline-block;
  margin-right: 0.8rem;
  border-radius: 50%;
  vertical-align: -0.5rem;
}

.c_checkList._bl li::before {
  background-color: var(--c_bl);
}

.designPoint .c_speech {
  font-size: 1.8rem;
}

.designPoint .c_speech .clr-ye {
  font-size: 144.4%;
}

.designPoint .pointTtl {
  font-size: 1.8rem;
  margin-bottom: 2rem;
}

.designPoint .pointTtl .big {
  font-size: 122.2%;
}

.designPoint .pointTtl img {
  width: 85%;
}

.designPoint .pointTtl .big {
  font-size: 122.2%;
}

.designNew {
  padding-bottom: 2.4rem;
}

.designNew .ttl01 {
  background-color: #fff;
  color: var(--c_bl);
  font-size: 1.4rem;
  border-radius: 3rem;
  padding: 0.5rem 1.4rem;
  display: inline-block;
  margin-top: 2.6rem;
}

.designNew .ttl02 {
  font-size: 1.4rem;
  font-weight: 500;
  margin: 1rem 0 2rem;
}

.designNew .ttl02 .clr-or {
  font-size: 1rem;
  white-space: nowrap;
  display: inline-block;
  margin-bottom: 0.6rem;
}

.designNew .ttl02 .clr-or .fo-oswald {
  font-size: 300%;
  font-weight: 500;
  vertical-align: -0.7rem;
}

.designNew .row {
  gap: 1.7rem;
  justify-content: center;
}

.designNew .row .box {
  flex: 1;
}

.designNew .row .img {
  width: calc((100% - 3.4rem) / 3);
}

.c_design {
  padding: 2.2rem 0;
}

.c_designTtl {
  font-size: 1.7rem;
  background-color: var(--c_or);
  color: #fff;
  border-left: 1rem solid rgb(93, 11, 11);
  padding: 0.8rem 0.8rem 0.8rem 1.4rem;
  margin-bottom: 2rem;
  text-align: left;
  line-height: 1.5;
  display: flex;
  align-items: center;
  gap: 0 0.8rem;
  flex-wrap: wrap;
}

.c_designTtl .small {
  font-size: 76.5%;
  font-weight: 500;
}

.c_designTtl .small.w100 {
  width: 100%;
}

.c_design .txt {
  text-align: left;
}

.c_design .txt .clr-or {
  font-weight: 700;
}

.designPerform .txt p + p {
  margin-top: 2rem;
}

.designPerform .ttl {
  background-color: var(--c_bl);
  padding: 0.9rem;
  font-size: 1.7rem;
  margin-top: 2.6rem;
  color: #fff;
}

.designPerform .row {
  gap: 2rem;
  flex-direction: var(--flex-direction);
  background-color: #fff;
  padding: 2rem;
}

.designPerform .row .img {
  width: 80%;
  margin-inline: auto;
}

.designPerform .row .box dt,
.designPerform .row .box dd {
  border-top: 0.1rem solid var(--c_gy);
  border-bottom: 0.1rem solid var(--c_gy);
  align-content: center;
  padding: 0.8rem 1rem;
  font-weight: 500;
  margin-bottom: 1rem;
}

.designPerform .row .box dt {
  width: 12rem;
  background-color: var(--c_bl);
  color: #fff;
}

.designPerform .row .box dd {
  flex: 1;
  color: var(--c_bl);
  text-align: left;
}

.designColor .txt {
  margin-bottom: 2rem;
}

.designColor .img {
  margin: 1rem 0;
}

.ttlEnJa {
  font-size: 1.2rem;
  margin-bottom: 1.6rem;
  font-weight: 400;
}

.ttlEnJa span {
  display: block;
  font-size: 2.6rem;
  line-height: 1;
  margin-bottom: 0.5rem;
  color: var(--c_bl);
  font-weight: 500;
}

.galleryArea {
  background-color: #fff;
  padding: 2.2rem 0.8rem 3.4rem;
}

.gallerySlide li {
  margin: 0 0.5rem;
}

.c_designTtl02 {
  font-size: 1.6rem;
  text-align: left;
  color: var(--c_bl);
  margin-bottom: 0.6rem;
}

.designWeather .txt02 {
  font-size: 1.2rem;
  text-align: left;
}

.designWeather .img {
  margin: 1rem 0;
}

.designChalk .row {
  gap: 2rem;
  flex-direction: var(--flex-direction);
  background-color: #fff;
  padding: 2.8rem 1.5rem;
  margin-top: 2.1rem;
}

.designChalk .box .ttl {
  font-size: 1.6rem;
  padding: 0.4rem;
  color: #fff;
  background-color: var(--c_rd);
}

.designChalk .box .txt02 {
  font-size: 1.3rem;
  text-align: left;
  margin-top: 0.4rem;
}

.designChalk .box._our .ttl {
  width: 75%;
}

.designChalk .box._other .ttl {
  font-size: 1.4rem;
  background-color: #353535;
}

.designChalk .box .itemRow {
  grid-template-columns: repeat(2, 1fr);
  gap: 1.2rem;
}

.designRain .row {
  gap: 2rem;
  flex-direction: var(--flex-direction);
  background-color: #fff;
  padding: 2.8rem 1.5rem;
  margin-top: 2.1rem;
}

.designRain .box .ttl {
  font-size: 1.6rem;
  padding-bottom: 0.7rem;
  color: var(--c_bl);
}

.designRain .box .itemRow {
  grid-template-columns: repeat(2, 1fr);
  gap: 1.2rem;
}

.designRain .box._pollution {
  width: 80%;
  margin-inline: auto;
}

.designRecom .c_speech .clr-ye {
  font-size: 130%;
}

.designRecom .row {
  grid-template-columns: repeat(1, 1fr);
  gap: 1rem;
  margin-bottom: 2rem;
}

.designRecom .box {
  border-radius: 1rem;
  border: 0.4rem solid #F1E8C9;
  background-color: #FFF;
  gap: 2rem;
}

.designRecom .row .box:nth-of-type(even) {
  flex-direction: row-reverse;
  gap: 0;
  padding-left: 1.3rem;
}

.designRecom .box .img {
  max-width: 11.7rem;
  padding-top: 1rem;
}

.designRecom .box .img img {
  height: 8.6rem;
  object-fit: contain;
}

.designRecom .box .txt {
  font-weight: 500;
  font-size: 1.6rem;
  flex: 1;
  align-content: center;
  line-height: 1.3;
}

.designRecom .box .txt .clr-or {
  font-size: 125%;
  font-weight: 700;
}

.designRecom .workRow {
  grid-template-columns: repeat(1, 1fr);
  gap: 2rem;
  margin: 2rem 0;
}

.designRecom .workBox .ttl {
  background-color: var(--c_or);
  font-size: 1.6rem;
  color: #fff;
  padding: 0.4rem;
}

/*support
---------------------------------------------------------*/
.supportLead {
  position: relative;
  z-index: 1;
  padding-bottom: 2.6rem;
}

.supportLead .ttl01 {
  color: #fff;
  padding: 1rem;
  font-size: 2rem;
  margin-bottom: 1.2rem;
}

.supportLead .ttl02 {
  font-size: 1.8rem;
  line-height: 1.3;
  margin-bottom: 2.5rem;
}

.supportLead .ttl02 .middle {
  font-size: 133.3%;
}

.supportLead .ttl02 .c_marker {
  font-size: 177.8%;
  color: var(--c_bk);
}

.supportConfirm .c_checkList {
  margin-bottom: 3rem;
}

.supportConfirm .c_checkList li {
  font-size: 1.6rem;
}

.supportConfirm .ttl {
  background-color: var(--c_be);
  font-size: 2rem;
  padding: 2rem 0;
  border-top: 4px solid var(--c_or);
  border-bottom: 4px solid var(--c_or);
}

.supportConfirm .ttl .bg-or {
  color: #fff;
  font-size: 110%;
  display: inline-block;
  padding: 0.4rem 0.6rem;
  margin: 0.4rem 0;
}

.supportConfirm .row {
  gap: 2rem;
  flex-direction: var(--flex-direction);
  margin: 2rem 0;
}

.supportConfirm .txt {
  text-align: left;
}

.supportConfirm .txt span {
  font-size: 114.3%;
  font-weight: 700;
}

.supportConsul {
  padding-top: 0;
}

.c_consul {
  padding: 3rem 0;
}

.c_consul .c_speech {
  font-size: 1.8rem;
  padding: 0.8rem 0.4rem;
}

.c_consul .txt {
  font-size: 2rem;
  font-weight: 700;
  line-height: 1.1;
  margin-top: 2rem;
}

.c_consul .txt .big {
  font-size: 150%;
}

.supportConsul .ConsulTtl {
  font-size: 1.8rem;
  padding: 2rem 0;
  color: #fff;
}

.supportConsul .ConsulTtl::after {
  content: "";
  width: 12rem;
  height: auto;
  aspect-ratio: 12;
  background: url("../img/support/icon_triangle.svg") center no-repeat;
  background-size: contain;
  display: block;
  margin-top: 0.8rem;
  margin-inline: auto;
}

.supportConsul .c_personRow .txt {
  background-color: #fff;
}

.supportConsul .c_personRow .txt .clr-or {
  font-weight: 700;
}

.supportConsul .cont .ttl {
  font-size: 1.8rem;
  color: var(--c_bl);
  text-align: left;
  margin-top: 3rem;
}

.supportConsul .cont .txt {
  margin: 1rem 0;
}

.supportConsul .cont .recom {
  font-weight: 700;
  padding: 1rem;
}

.supportUse {
  position: relative;
  z-index: 1;
  padding: 2.6rem 0 0;
}

.supportUse::after {
  content: "";
  width: 100%;
  height: 16rem;
  background-color: var(--c_ye);
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
}

.supportUse .useTtl {
  font-size: 2rem;
  line-height: 1.3;
  margin-bottom: 2rem;
}

.supportUse .useTtl .big {
  font-size: 150%;
}

.supportUse .area {
  background-color: #fff;
  padding: 1rem;
}

.supportUse .area .ttl {
  font-size: 1.4rem;
  margin-bottom: 1rem;
}

.supportUse .area .ttl .clr-or {
  font-size: 128.6%;
}

.supportUse .row {
  grid-template-columns: repeat(3, 1fr);
  gap: 0.5rem;
}

.supportUse .row .box .txt {
  font-size: 1.2rem;
  background-color: var(--c_be);
  display: block;
  font-weight: 700;
  padding: 0.4rem;
}

.supportUse .row .box .txt .small {
  font-size: 75%;
}

.supportCase {
  padding: 2rem 0 0;
}

.supportCase .caseTtl {
  font-size: 2rem;
  margin-bottom: 2.2rem;
}

.supportCase .caseTtl .clr-rd {
  font-size: 120%;
}

.supportCase .c_speech {
  margin: 0 2rem 2rem;
  line-height: 1.3;
}

.supportCase .row {
  grid-template-columns: repeat(1, 1fr);
}

.supportCase .row .box {
  background-color: #FFE8E8;
  padding: 3rem 2rem;
}

.supportCase .row .box .ttl01 {
  color: #FFF;
  font-size: 1.8rem;
  background-color: #E83820;
  border-radius: 3rem;
  padding: 0.8rem;
}

.supportCase .row .box .ttl02 {
  font-size: 1.8rem;
  margin: 1.6rem 0 1rem;
}

.supportCase .row .box .ttl02::before {
  content: "";
  width: 2.7rem;
  height: auto;
  aspect-ratio: 1;
  background: url("../img/support/icon_ok.svg") center no-repeat;
  background-size: contain;
  display: inline-block;
  margin-right: 0.8rem;
  vertical-align: -0.6rem;
}

.supportCase .row .box .txt {
  margin-bottom: 1.2rem;
}

.supportCase .row .box .txt ._rd {
  color: #E83820;
  font-weight: 700;
}

.supportCase .row .box._NG {
  background-color: #D1EDFF;
}

.supportCase .row .box._NG .ttl01 {
  background-color: #0068B7;
}

.supportCase .row .box._NG .ttl02::before {
  background-image: url("../img/support/icon_ng.svg");
  width: 2.5rem;
  height: auto;
  aspect-ratio: 25/21;
}

.supportCase .cmtRow {
  gap: 1rem;
  padding: 1.6rem 3rem 0;
  align-items: center;
  text-align: left;
}

.supportCase .cmtRow .txt {
  flex: 1;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.4;
}

.supportCase .cmtRow .txt .c_underline {
  text-decoration-thickness: 0.2rem;
}

.supportCase .cmtRow .img {
  width: 12rem;
  max-width: 100%;
}

.supportPlan .planTtl {
  background-color: var(--c_or);
  padding: 0.5rem;
  font-size: 2rem;
  color: #fff;
}

.supportPlan .row .box {
  flex: 1;
  padding: 1rem;
}

.supportPlan .row .box .ttl01,
.supportPlan .row .box .num {
  filter: drop-shadow(0 0.2rem 0.2rem rgba(0, 0, 0, 0.5));
}

.supportPlan .row .box .ttl01 {
  font-size: 3.4rem;
  color: #353535;
}

.supportPlan .row .box .ttl02 {
  font-size: 1.35rem;
  background-color: var(--c_rd);
  color: #fff;
  padding: 0.3rem;
  margin: 1rem 0 0.8rem;
}

.supportPlan .row .box .price {
  gap: 0.6rem;
  align-items: flex-end;
}

.supportPlan .row .box .tax {
  background-color: #353535;
  border-radius: 0.5rem;
  padding: 0.6rem;
  color: #fff;
  font-size: 1.25rem;
  font-weight: 700;
}

.supportPlan .row .box .num {
  font-size: 5.8rem;
}

.supportPlan .row .box .num .small {
  font-size: 61.7%;
}

.supportPlan .row .box .num .yen {
  font-size: 21%;
  text-align: left;
  -webkit-writing-mode: vertical-rl;
  -ms-writing-mode: tb-rl;
  -o-writing-mode: vertical-rl;
  writing-mode: vertical-rl;
  color: #353535;
  display: inline-block;
  margin-left: 0.4rem;
  vertical-align: 0.2rem;
}

.supportPlan .row .box .note {
  font-size: 1rem;
  color: #353535;
  text-align: left;
  margin-top: 0.8rem;
}

.supportPlan .row .img {
  width: 18rem;
  max-width: 100%;
}

.supportPlan .row .img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.c_paintItem {
  padding: 1rem 0 2rem;
}

.c_paintItem .ttl {
  font-size: 3rem;
  color: var(--c_ye);
  font-weight: 800;
  margin-bottom: 1rem;
  line-height: 1.2;
}

.c_paintItem .ttl .c_diagonal {
  font-size: 53.3%;
  color: #FFF;
}

.c_paintItem ul {
  gap: 0.5rem;
  margin-bottom: 0.8rem;
  font-size: 1.6rem;
}

.c_paintItem ul li {
  padding: 0.1rem 0.6rem;
  border-radius: 0.5rem;
  background-color: #FFF6B5;
  color: var(--c_bl);
  font-weight: 700;
  align-content: center;
}

.c_paintItem .note {
  color: #FFF;
  font-size: 1rem;
  font-weight: 500;
}

.supportCaution {
  padding: 2.4rem 0 3rem;
}

.supportCaution .ttl01 {
  font-size: 1.6rem;
}

.supportCaution .ttl02 {
  font-size: 1.4rem;
  background-color: #EDEDED;
  padding: 0.6rem;
  margin: 1rem 0;
  font-weight: 500;
}

.supportCaution .txt {
  font-size: 1.3rem;
}

.supportCaution .bandRow {
  padding: 1rem 1.6rem;
  position: relative;
  color: #fff;
  font-weight: 700;
  line-height: 1.4;
  margin-top: 2.5rem;
}

.supportCaution .bandTxt {
  text-align: left;
  font-size: 1.7rem;
}

.supportCaution .bandImg {
  position: absolute;
  bottom: 0;
  right: 0.7rem;
  width: 9rem;
}

.supportCaution .list {
  background-color: #FFF6B5;
  padding: 2rem 1.4rem;
  text-align: left;
}

.supportCaution li {
  display: flex;
  align-items: center;
  border-bottom: 0.1rem solid #DBD0A5;
  padding: 1rem;
  padding-left: 0;
  gap: 1rem;
}

.supportCaution li .fo-din {
  display: inline-grid;
  place-content: center;
  width: 3rem;
  height: auto;
  aspect-ratio: 1;
  border-radius: 50%;
  font-size: 2rem;
  color: #fff;
  background-color: var(--c_or);
}

.supportCaution li .txt02 {
  flex: 1;
}

.supportCaution li .clr-or {
  font-weight: 700;
}

.supportRecom .row {
  grid-template-columns: repeat(1, 1fr);
  gap: 1rem;
}

.supportRecom .box {
  background: #fff;
  border-radius: 1rem;
  overflow: hidden;
}

.supportRecom .box dl {
  padding: 1.8rem 2rem 2rem;
}

.supportRecom .box dt {
  margin-bottom: 0.8rem;
  padding-bottom: 1rem;
  border-bottom: 1px solid var(--c_gy);
}

.supportRecom .box dt .enTxt {
  font-size: 1.5rem;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 0 1rem;
  margin-bottom: 1rem;
  color: var(--c_aq);
  background-color: #FFF6B5;
  padding: 0.8rem;
  border-radius: 3rem;
  width: 24rem;
  margin-inline: auto;
}

.supportRecom .box dt .enTxt .num {
  font-size: 173.3%;
  color: var(--c_bl);
  font-weight: 700;
}

.supportRecom .box dt h3 {
  font-size: 1.8rem;
  font-weight: 600;
  line-height: 1.3;
  color: var(--c_bl);
}

.supportRecom .box dd {
  line-height: 1.6;
  font-size: 1.3rem;
}

/*builder
---------------------------------------------------------*/
.builLead .c_diagonal {
  font-size: 1.6rem;
  padding: 0 1.4rem;
  margin-bottom: 1rem;
}

.builLead .area {
  background: var(--c_bl);
  padding: 1.4rem 0;
  position: relative;
}

.builLead .area .ttl {
  background-color: #fff;
  color: var(--c_or);
  font-size: 1.6rem;
  padding: 0.4rem;
  border-radius: 3rem;
  margin-bottom: 1rem;
}

.builLead .area .txt {
  font-size: 2.2rem;
  text-align: left;
  font-weight: 700;
  color: var(--c_wh);
}

.builLead .area .txt img {
  width: 80%;
  margin-right: 0.4rem;
}

.builLead .area .txt .middle {
  font-size: 86.4%;
}

.builLead .area .txt .c_dot {
  font-size: 113.6%;
  font-weight: 900;
  margin-top: 1rem;
}

.builLead .area .txt .small {
  font-size: 77.3%;
}

.builLead .area .img {
  position: absolute;
  bottom: 0;
  right: 2rem;
  width: 7.4rem;
}

.builMaker {
  padding-top: 2rem;
}

.builMaker .ttl {
  font-size: 1.8rem;
  padding: 1rem;
  color: #fff;
}

.builMaker .c_checkList {
  background-color: #fff;
  padding: 1rem 4rem 2rem;
  font-size: 1.6rem;
}

.builMaker .txt {
  text-align: left;
  margin-top: 1.5rem;
  font-size: 1.5rem;
}

.builAnchor {
  padding: 2.5rem 0;
}

.builAnchor .linkRow {
  gap: 0.8rem;
  flex-direction: var(--flex-direction);
}

.builAnchor .link {
  border-radius: 1.3rem;
  padding: 1rem 2rem;
  font-size: 1.6rem;
  border: 0.1rem solid var(--c_bl);
  position: relative;
  text-align: left;
  display: flex;
  align-items: center;
  font-weight: 700;
  color: var(--c_wh);
  background-color: var(--c_aq);
}

.builAnchor .link::after {
  content: "";
  display: block;
  background: #fff url(../img/arrow_bl.svg) 54% 50% no-repeat;
  background-size: 34% auto;
  border-radius: 50%;
  width: 2rem;
  height: auto;
  aspect-ratio: 1;
  position: absolute;
  right: 2rem;
  top: 50%;
  transform: translateY(-50%) rotate(90deg);
  z-index: 1;
}

.builAnchor .link:hover {
  opacity: 0.7;
}

.c_builderTtl {
  color: #FFF;
  font-size: 2.3rem;
  font-weight: 500;
  padding: 0.6rem 1.4rem;
  border-left: 0.7rem solid var(--c_ye);
  clip-path: polygon(0% 0%, 100% 0%, 93% 50%, 100% 100%, 0% 100%);
  background-color: var(--c_bl);
  text-align: left;
  margin-bottom: 1.4rem;
}

.c_builder .area .img {
  border: 0.1rem solid var(--c_gy);
}

.c_builder .area .ttl {
  color: var(--c_bl);
  font-size: 1.6rem;
  margin: 1.4rem 0 0.7rem;
  text-align: left;
}

.c_builder .area .txt {
  text-align: left;
}

.c_builder.builFollow .area .img {
  padding: 2rem;
}

.c_builderRowBox {
  margin: 2.7rem 0 3.5rem;
}

.c_builderRowTtl {
  font-size: 1.5rem;
  padding: 1rem;
  color: #fff;
  background-color: var(--c_bl);
}

.c_builderAbout .c_speech {
  padding: 1.4rem;
}

.c_builderAbout .img {
  width: 80%;
  margin-inline: auto;
}

.c_builderAbout .ttl {
  font-size: 1.6rem;
  background-color: #FFECA7;
  padding: 1rem;
  border-top: 0.1rem solid var(--c_gy);
  border-bottom: 0.1rem solid var(--c_gy);
  font-weight: 500;
  margin: 2rem 0 1rem;
}

.c_builderAbout .ttl .clr-bl {
  font-size: 118.8%;
  font-weight: 700;
}

.c_builderAbout .ttl .small {
  font-size: 87.5%;
}

.c_builderAbout .txt {
  text-align: left;
}

.c_builderAbout .txt p + p {
  margin-top: 1rem;
}

.c_builderAbout .txt .clr-or {
  font-weight: 700;
}

.c_builder.builQual .area .img {
  border: none;
}

.builQual .system .c_speech {
  color: var(--c_wh);
  padding: 1.4rem 0;
  margin: 2.6rem 0 3.2rem;
}

.builQual .system .c_speech .c_diagonal {
  font-size: 90%;
}

.builQual .system .c_speech img {
  width: 60%;
  margin-inline: auto;
  margin-bottom: 0.3rem;
}

.builQual .system .row {
  grid-template-columns: repeat(2, 1fr);
  gap: 2rem;
}

.builQual .system .box .ttl {
  font-size: 1.4rem;
  margin-bottom: 1rem;
  color: #353535;
  min-height: 4.4rem;
  line-height: 1.2;
  align-content: center;
}

.builQual .system .box .ttl .small {
  font-size: 71.4%;
}

.builQual .system .box li {
  background-color: #717171;
  padding: 1rem;
  border-radius: 0.5rem;
  color: #fff;
  font-size: 1.1rem;
  position: relative;
  height: 5.4rem;
  align-content: center;
}

.builQual .system .box li:last-child {
  font-size: 1.2rem;
}

.builQual .system .box li + li {
  margin-top: 1.7rem;
}

.builQual .system .box .list {
  height: 25rem;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}

.builQual .system .box._other li:first-child::after {
  content: "";
  width: 2rem;
  height: 13rem;
  background-position: center;
  background-repeat: repeat-y;
  background-size: 0.8rem 1.4rem;
  background-image: radial-gradient(circle, var(--c_gy) 0.3rem, transparent 0.3rem);
  display: block;
  position: absolute;
  top: 6rem;
  left: 0;
  right: 0;
  margin-inline: auto;
}

.builQual .system .box._our li {
  background-color: var(--c_bl);
}

.builQual .system .box._our li:nth-child(3) {
  height: auto;
}

.builQual .system .box._our li:not(:last-child)::after {
  content: "";
  position: absolute;
  bottom: -0.3rem;
  left: 0;
  right: 0;
  transform: translateY(99%);
  margin-inline: auto;
  width: 1.5rem;
  height: auto;
  aspect-ratio: 1.5;
  clip-path: polygon(0 0, 100% 0, 50% 100%);
  background-color: var(--c_ye);
  display: block;
}

.builQual .system .box .txt {
  font-size: 1.2rem;
  text-align: left;
  margin-top: 1rem;
}

.builQual .system .box .txt .clr-or {
  font-weight: 700;
}

.builCase .c_speech {
  margin-bottom: 3rem;
}

.builCase .c_speech .small {
  font-size: 80%;
  display: block;
}

.builCase .row {
  grid-template-columns: repeat(1, 1fr);
  gap: 2.4rem;
}

.builCase .row .box .ttl {
  font-size: 1.8rem;
  padding: 0.9rem;
  color: var(--c_bl);
  background-color: var(--c_ye);
  margin-bottom: 2rem;
}

.builCase .row .box._other .ttl {
  color: #fff;
  background-color: #757575;
}

.builCase .txt {
  text-align: left;
  margin-top: 3.6rem;
}

.builMethod .methodTtl {
  background: url("../img/builder/method_ttl_bg.jpg") center no-repeat;
  background-size: cover;
  padding: 2rem 0;
}

.builMethod .methodTtl .ttl01 {
  font-size: 1.8rem;
  color: var(--c_or);
  background-color: #fff;
  padding: 0.4rem 1.2rem;
  margin-bottom: 0.8rem;
  display: inline-block;
}

.builMethod .methodTtl .ttl02 {
  font-size: 3.2rem;
  font-weight: 900;
  line-height: 1.3;
}

.builMethod .methodTtl .ttl02 .small {
  font-size: 78.1%;
}

.builMethod .area {
  padding: 3rem 0;
}

.builMethod .areaTtl {
  background-color: var(--c_bl);
  color: #fff;
  padding: 0.7rem;
  font-size: 1.7rem;
  margin-bottom: 1.5rem;
  border-radius: 0.5rem;
}

.builMethod .row {
  gap: 1rem 2%;
}

.builMethod .row .box {
  width: 49%;
  border: 0.1rem solid var(--c_gy);
  background-color: #fff;
}

.builMethod .row .box .ttl {
  font-size: 1.4rem;
  color: var(--c_bl);
  background-color: var(--c_ye);
  padding: 0.8rem 1rem;
  text-align: left;
}

.builMethod .row .box .txt {
  font-size: 1.3rem;
  text-align: left;
  padding: 0.8rem;
  line-height: 1.3;
}

.builMethod .area:nth-of-type(odd) {
  background-color: #fff;
}

.builMethod .area:nth-of-type(odd) .box {
  background-color: var(--c_be);
}

/*menu
---------------------------------------------------------*/
.c_anchor {
  padding: 2.5rem 0;
}

.c_anchorRow {
  gap: 0.8rem;
  flex-direction: var(--flex-direction);
}

.c_anchorRow .link {
  border-radius: 1.3rem;
  padding: 1rem 2rem;
  font-size: 1.6rem;
  border: 0.1rem solid var(--c_bl);
  position: relative;
  text-align: left;
  display: flex;
  align-items: center;
  font-weight: 700;
  color: var(--c_bl);
  background-color: #fff;
}

.c_anchorRow .link::after {
  content: "";
  display: block;
  background: var(--c_ye) url(../img/arrow_bl.svg) 54% 50% no-repeat;
  background-size: 34% auto;
  border-radius: 50%;
  width: 2rem;
  height: auto;
  aspect-ratio: 1;
  position: absolute;
  right: 2rem;
  top: 50%;
  transform: translateY(-50%) rotate(90deg);
  z-index: 1;
}

.c_anchorRow .link:hover {
  opacity: 0.7;
}

.menuPrice {
  padding-top: 0 !important;
}

.menuPrice .priceTtl {
  padding: 2rem;
}

.menuPrice .priceTtl .c_speech {
  font-size: 1.8rem;
}

.menuPrice .priceTtl .ttl {
  font-size: 1.6rem;
}

.menuPrice .priceTtl .ttl .clr-rd {
  font-size: 162.5%;
  font-weight: 900;
}

.menuPrice .area {
  padding: 3rem 0 0;
}

.c_cardRow {
  gap: 1rem;
}

.c_cardBox {
  width: calc((100% - 1rem) / 2);
  background-color: var(--c_be);
  padding: 1rem;
  border: 0.1rem solid var(--c_gy);
  border-radius: 0.5rem;
  min-height: 14.4rem;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}

.c_cardBox .txt {
  color: var(--c_bl);
  font-weight: 700;
  display: grid;
  align-content: center;
  flex: 1;
  padding-top: 1rem;
  line-height: 1.3;
}

.menuRelief {
  padding: 2.4rem 0;
}

.c_menuBand {
  background-color: #fff;
  padding: 1.4rem 1.5rem 1rem;
  border-radius: 0.5rem;
  position: relative;
  margin-bottom: 2rem;
}

.c_menuBand .ttl {
  font-size: 2rem;
  text-align: left;
  line-height: 1.3;
}

.c_menuBand .img {
  position: absolute;
  bottom: -0.5rem;
  right: 1rem;
  width: 7.2rem;
}

.menuRelief .txt {
  text-align: left;
}

.menuReport {
  padding-top: 2rem;
}

.menuReport .ttl01 {
  font-size: 2.2rem;
  padding: 1.4rem;
  color: #fff;
}

.menuReport .ttl02 {
  margin: 2rem 0;
  font-size: 1.6rem;
}

.menuReport .row {
  gap: 1.6rem;
  flex-direction: var(--flex-direction);
}

.menuReport .row .img {
  border: 0.1rem solid #C8C8C8;
}

.menuReport .row .txt {
  text-align: left;
}

.menuReport .rowImg {
  grid-template-columns: repeat(1, 1fr);
  gap: 2rem;
  margin-top: 3rem;
}

.menuReport .rowImg .img {
  border: 0.1rem solid #C8C8C8;
}

.c_menuArea {
  padding: 2rem 0;
}

.c_menuRow {
  gap: 2rem;
  flex-direction: var(--flex-direction);
}

.c_menuBox {
  background-color: #fff;
  border-radius: 1rem;
  border: 0.1rem solid var(--c_gy);
  overflow: hidden;
  padding-bottom: 3rem;
}

.c_menuBox .ttl01 {
  font-size: 2.4rem;
  padding: 1rem;
  color: var(--c_bl);
}

.c_menuBox .ttl01 .num {
  font-size: 108.3%;
  color: #fff;
  margin-right: 1rem;
}

.c_menuBox .ttl02 {
  font-size: 2rem;
  margin: 1.8rem 0 1rem;
}

.c_menuBox .ttl02 .small {
  font-weight: 500;
  font-size: 70%;
}

.c_menuBox dl {
  padding: 0 1.5rem;
}

.c_menuBox dt,
.c_menuBox dd {
  padding: 1rem 1.2rem;
  text-align: left;
  width: 62%;
  border-bottom: 0.1rem solid var(--c_gy);
  font-weight: 500;
  align-content: center;
  line-height: 1.3;
}

.c_menuBox dt:first-of-type,
.c_menuBox dd:first-of-type {
  border-top: 0.1rem solid var(--c_gy);
}

.c_menuBox dt {
  width: 38%;
  background-color: #FFF6B5;
}

.c_menuBox dd {
  font-size: 1.8rem;
  font-weight: 700;
  padding-right: 0;
}

.c_menuBox dd img {
  width: 13rem;
}

.c_menuBox dt:last-of-type {
  color: var(--c_or);
  font-weight: 700;
}

.c_menuBox dd:last-of-type {
  font-size: 2rem;
  color: var(--c_rd);
}

.c_menuBox dd:last-of-type .num {
  font-size: 4rem;
  vertical-align: -0.2rem;
  margin-right: 0.3rem;
}

.c_menuBox dd:last-of-type .num .small {
  font-size: 75%;
}

.c_menuBox dd:last-of-type .tax {
  font-size: 70%;
  color: var(--c_bk);
  font-weight: 400;
}

.c_menuBox .btn {
  margin-top: 2rem;
}

.c_menuOption {
  padding: 2rem;
  border: 0.1rem solid var(--c_gy);
  border-radius: 1rem;
  background-color: #fff;
  margin-top: 2rem;
}

.c_menuOption .ttl {
  padding: 0.8rem;
  font-size: 1.6rem;
}

.c_menuOption .row {
  background-color: var(--c_be);
  gap: 1.5rem;
  padding: 1rem;
  font-weight: 700;
  justify-content: center;
  align-items: center;
}

.c_menuOption .row .txt {
  font-size: 2rem;
}

.c_menuOption .row .txt .fo-din {
  font-size: 200%;
}

.c_menuOption .note {
  font-size: 1.2rem;
  margin-top: 0.8rem;
}

.menuApart .c_menuBand {
  margin: 2rem auto 0;
  padding-left: 2.6rem;
}

.menuApart .c_menuBand .img {
  right: 2.4rem;
}

.menuLeak .c_menuArea {
  padding-top: 0;
}

.menuLeak .area {
  margin: 3.4rem 0;
}

.menuLeak .areaTtl {
  font-size: 2.4rem;
  padding: 0.6rem;
  color: #fff;
  border-radius: 0.5rem;
  background-color: var(--c_bl);
  margin-bottom: 2rem;
}

.menuLeak .area .btn {
  font-size: 2rem;
  font-weight: 700;
}

.menuLeak .area .btn a {
  margin-top: 0.6rem;
}

.menuLeak .area .c_table td .clr-rd {
  font-size: 114.3%;
  font-weight: 700;
  display: block;
}

.menuLeak .area .c_table td .note {
  font-size: 85.7%;
}

.menuLeak .area .comp {
  padding: 1rem;
}

.menuLeak .area .comp .ttl {
  color: #fff;
  padding: 1rem;
  border-radius: 0.5rem;
  font-size: 1.4rem;
  margin-bottom: 1.2rem;
}

.menuLeak .area .comp .price {
  font-size: 2rem;
  color: var(--c_rd);
  border-bottom: 0.1rem solid var(--c_gy);
  padding-bottom: 1rem;
  margin-bottom: 1rem;
  font-weight: 700;
}

.menuLeak .area .comp .price .num {
  font-size: 4rem;
  vertical-align: -0.2rem;
  margin-right: 0.3rem;
}

.menuLeak .area .comp .price .num .small {
  font-size: 75%;
}

.menuLeak .area .comp .txt {
  text-align: left;
  font-feature-settings: "palt";
  margin-bottom: 0.3rem;
}

.menuLeak .area .comp .note {
  text-align: left;
  font-size: 1.2rem;
}

/*paint
---------------------------------------------------------*/
.c_menuDetail {
  padding: 3rem 0 !important;
}

.c_menuBox._detail {
  padding-bottom: 0;
}

.c_menuBox._detail .ttl01 {
  font-size: 2.6rem;
  display: flex;
  align-items: center;
  gap: 0.5rem;
  justify-content: center;
}

.c_menuBox._detail .ttl01 .small {
  font-size: 1.8rem;
}

.c_menuBox._detail .ttl01 .bgClr {
  font-size: 1.6rem;
  border-radius: 3rem;
  padding: 0.6rem 1rem;
  display: inline-block;
  line-height: 1;
}

.c_menuBox._detail .item {
  padding: 2rem 1.5rem 3.2rem;
}

.c_menuBox._detail .ttl02 {
  margin: 0 0 1.6rem;
}

.c_menuBox._detail .itemRow {
  flex-direction: var(--flex-direction);
}

.c_menuBox._detail .img {
  font-size: 2rem;
  margin-bottom: 3rem;
}

.c_menuBox._detail dl {
  padding: 0;
}

.c_menuBox._detail .checkRow {
  gap: 1.4rem;
  text-align: left;
  margin: 2.6rem 0;
}

.c_menuBox._detail .checkTtl {
  font-size: 1.6rem;
  padding-bottom: 0.7rem;
}

.c_menuBox._detail .checkTtl::before {
  content: "";
  width: 1.8rem;
  height: auto;
  aspect-ratio: 1;
  background: var(--c_or) url("../img/icon_check.svg") center no-repeat;
  background-size: 50% auto;
  display: inline-block;
  margin-right: 0.6rem;
  border-radius: 50%;
  vertical-align: -0.3rem;
}

.c_paintSec .c_speech {
  font-size: 2.6rem;
  font-weight: 900;
  line-height: 1.2;
  padding: 1.2rem 1rem 1.5rem;
}

.c_paintSec .c_speech .small {
  font-size: 84.6%;
}

.c_paintSec .ribbonTtl {
  font-size: 1.7rem;
  clip-path: polygon(0% 0%, 100% 0%, 97% 50%, 100% 100%, 0% 100%, 3% 50%);
  color: #fff;
  line-height: 1.3;
  padding: 1rem;
  margin-bottom: 1.2rem;
}

.c_paintSec .ribbonTtl .clr-ye {
  font-size: 129.4%;
}

.c_paintSec .area + .area {
  margin-top: 3.4rem;
}

/*roof
---------------------------------------------------------*/
.c_menuDetail._roof {
  padding: 1rem 0 !important;
}

.c_menuDetail._roof#high-design-inorganic-paint {
  padding-bottom: 2.4rem !important;
}

.roofSec {
  padding: 2rem 0;
}

.roofSec#roof-replacement {
  padding-bottom: 4rem;
}

.roofSec.pt00 {
  padding-top: 0;
}

.roofSec .roofTtl {
  font-size: 3rem;
  line-height: 1.3;
  color: #fff;
  padding: 0.5rem 0 1.8rem;
  margin-bottom: 2.5rem;
}

.roofSec .roofTtl .c_diagonal {
  font-size: 53.3%;
  color: #FFF64A;
}

.roofSec .row {
  gap: 1rem;
  flex-direction: var(--flex-direction);
  margin-bottom: 2.5rem;
}

.roofSec .row .txt {
  flex: 1;
  text-align: left;
}

.roofSec .c_menuBox {
  border: none;
  padding: 0;
}

.roofSec .c_menuBox._radiusNone {
  border-radius: 0;
}

.roofSec .c_menuBox + .c_menuBox {
  margin-top: 3rem;
}

.roofSec .row02 {
  gap: 3rem;
  flex-direction: var(--flex-direction);
}

.roofSec .c_menuBox dl {
  padding: 0;
}

.roofSec .c_paintItem {
  padding: 1.8rem 1.2rem 1.4rem;
  border-top: 0.1rem solid var(--c_gy);
  border-bottom: 0.1rem solid var(--c_gy);
}

.roofSec .c_paintItem .ttl {
  font-size: 1.9rem;
  font-weight: 700;
}

.roofSec .c_paintItem li {
  background-color: var(--c_ye);
}

.roofSec .c_paintItem .note {
  color: #000;
  font-feature-settings: "palt";
  letter-spacing: 0.02em;
}

.roofSec .c_menuBox .ttl01 {
  font-size: 1.9rem;
}

/*option
---------------------------------------------------------*/
#page-option .menuLeak .area {
  margin-bottom: 0;
}

.menuLeak .c_menuBox {
  padding-bottom: 0;
}

.menuLeak .c_menuBox .item {
  padding: 1.5rem;
}

.menuLeak .c_menuBox .img {
  margin-bottom: 1.5rem;
}

.menuLeak .c_menuBox .item dl {
  padding: 0;
}

/*apartment
---------------------------------------------------------*/
.apartSec {
  padding: 0 0 4rem;
}

.apartSec .apartTtl {
  font-size: 3rem;
  font-weight: 900;
  padding: 2rem;
  margin-bottom: 2rem;
}

.apartSec .apartTtl .fo-din {
  color: #FFF6B5;
  font-size: 53.3%;
  display: block;
  margin-top: 0.4rem;
}

.apartSec .apartRow {
  flex-direction: var(--flex-direction);
  gap: 2rem;
}

.menuApart .c_menuBox,
.apartSec .c_menuBox {
  padding-bottom: 0;
}

.menuApart .c_menuBox .item,
.apartSec .c_menuBox .item {
  padding: 1.5rem;
}

.menuApart .c_menuBox .img,
.apartSec .c_menuBox .img {
  margin-bottom: 1.5rem;
}

.menuApart .c_menuBox .item dl {
  padding: 0;
}

.c_priceRow {
  grid-template-columns: repeat(1, 1fr);
}

.c_priceBox:not(:last-child) {
  border-bottom: 0.1rem solid var(--c_gy);
  padding-bottom: 1rem;
  margin-bottom: 1rem;
}

.c_priceBox .ttl {
  font-size: 2rem;
  margin-bottom: 0.4rem;
}

.c_priceBox .ttl .small {
  font-size: 75%;
}

.c_price {
  vertical-align: -0.2rem;
  font-size: 2rem;
  color: var(--c_rd);
  font-weight: 700;
}

.c_price .num {
  font-size: 4rem;
  vertical-align: -0.2rem;
  margin-right: 0.3rem;
}

.c_price .num .small {
  font-size: 75%;
}

.c_price .unit {
  font-size: 85%;
  color: var(--c_bk);
  font-weight: 500;
}

.c_price .tax {
  font-size: 70%;
  color: var(--c_bk);
  font-weight: 400;
  display: block;
}

.apartConsul .row {
  gap: 0.6rem;
  padding: 0 0.4rem;
}

.apartConsul .row .img {
  width: 10.3rem;
  max-width: 100%;
  margin-top: -1.4rem;
}

.apartConsul .row .txt {
  text-align: left;
  font-size: 1.4rem;
  font-weight: 700;
  padding: 2rem 0 0;
  line-height: 1.5;
}

.apartConsul .row .txt .bgClr {
  background-color: var(--c_bl);
  color: #fff;
  padding: 0.2rem 0.7rem;
  font-size: 107%;
  border-radius: 0.3rem;
  overflow: hidden;
  margin: 0 0.2rem;
}

.apartConsul .row .txt .big {
  font-size: 135.7%;
  font-weight: 900;
}

.apartDesign .c_paintTtl {
  line-height: 1.2;
}

.apartDesign .c_paintTtl .big {
  font-size: 3rem;
}

.apartDesign .lead {
  margin: 3.2rem 0;
}

.apartDesign .lead h3 {
  font-size: 1.6rem;
  padding: 0.5rem;
}

.apartDesign .aboutTtl {
  background-color: #FFF6B5;
  padding: 2rem;
  margin: 0 -6% 2.5rem;
}

.apartDesign .aboutTtl .c_diagonal {
  font-size: 1.6rem;
  padding: 0 1rem;
  margin-bottom: 1.5rem;
}

.apartDesign .aboutTtl .ttl {
  font-size: 2.4rem;
}

.apartDesign .aboutTtl .ttl .small {
  font-size: 75%;
}

.apartDesign .aboutTtl .ttl .c_dot {
  color: var(--c_bk);
}

.apartDesign .aboutTtl .ttl .c_dot::before {
  color: var(--c_or);
}

.apartDesign .row {
  gap: 2rem;
  flex-direction: var(--flex-direction);
}

.apartDesign .row .box {
  padding: 1.3rem 1.3rem 1.8rem;
  position: relative;
  background-color: var(--c_be);
  border: 0.1rem solid var(--c_gy);
  border-radius: 0.3rem;
}

.apartDesign .row .box .num {
  position: absolute;
  top: 0.2rem;
  left: 1rem;
  font-size: 4.5rem;
}

.apartDesign .row .box .ttl {
  font-size: 1.8rem;
  padding-top: 1rem;
  color: #353535;
}

.apartDesign .row .box .ttl .clr-or {
  font-size: 125%;
}

.apartDesign .row .boxWrap .need {
  font-size: 1.8rem;
  padding: 0.7rem;
  font-weight: 700;
  line-height: 1.7;
}

.apartDesign .row .boxWrap .need .c_dot {
  font-size: 133%;
  font-weight: 900;
}

.apartPoint h2 {
  font-size: 2.2rem;
  line-height: 1.1;
  color: #353535;
  margin-bottom: 1.8rem;
}

.apartPoint h2 .big {
  font-size: 3.1rem;
  font-weight: 900;
}

.apartPoint h2 .big .num {
  font-size: 142%;
}

.apartPoint ul {
  position: relative;
  padding-bottom: 1rem;
  margin-bottom: 3rem;
  display: inline-block;
}

.apartPoint ul::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  transform: translateY(99%);
  margin-inline: auto;
  width: 2.1rem;
  height: auto;
  aspect-ratio: 1.5/1.1;
  clip-path: polygon(0 0, 100% 0, 50% 100%);
  background-color: var(--c_ye);
  display: block;
}

.apartPoint li {
  display: flex;
  gap: 0.9rem;
  align-items: center;
}

.apartPoint li + li {
  margin-top: 0.8rem;
}

.apartPoint li .point {
  background-color: var(--c_ye);
  color: #fff;
  width: 7.3rem;
  border-radius: 3rem;
  font-size: 1.1rem;
  justify-content: center;
  padding: 0.7rem;
  display: flex;
  align-items: center;
}

.apartPoint li .point span {
  font-size: 132.7%;
  margin-left: 0.4rem;
  vertical-align: -0.2rem;
}

.apartPoint li .txt {
  font-size: 2.3rem;
  font-weight: 700;
}

.apartPoint li .txt span {
  color: var(--c_or);
}

.apartPoint .box {
  border-radius: 1rem;
  overflow: hidden;
  border: 0.1rem solid var(--c_gy);
}

.apartPoint .box h3 {
  background-color: var(--c_or);
  color: #fff;
  font-size: 1.6rem;
  padding: 0.8rem;
}

.apartPoint .box h3 ._ye {
  font-size: 112.5%;
  color: #FFF6B5;
}

.apartPoint .box .txt {
  background-color: #fff;
  padding: 1rem 1.3rem;
  text-align: left;
}

.apartPoint .box .txt .clr-rd {
  font-weight: 600;
}

.apartWhy .ttl {
  font-size: 2.4rem;
  font-weight: 900;
  padding: 2rem;
  margin-bottom: 1.4rem;
}

.apartWhy table {
  margin: 0 -3%;
}

.apartWhy caption {
  font-size: 1.4rem;
  color: var(--c_bl);
  text-align: left;
  margin-bottom: 0.8rem;
  font-weight: 500;
}

.apartWhy caption span {
  font-size: 1.2rem;
  display: block;
  font-weight: 400;
  color: #000;
  font-feature-settings: "palt";
}

.apartWhy table th,
.apartWhy table td {
  border: 0.1rem solid #D9D9D9;
  padding: 1.4rem 0.8rem;
  min-width: 5.73rem;
  background-color: var(--c_be);
}

.apartWhy table th {
  background-color: var(--c_bl);
  color: #fff;
  font-weight: 500;
}

.apartWhy table tr td:nth-of-type(n+5) {
  background-color: #FFF6B5;
}

.c_apartList {
  margin: 2.4rem 0 2rem;
}

.c_apartList li {
  text-align: left;
  text-indent: -0.5em;
  padding-left: 1.4em;
}

.c_apartList li::before {
  content: "●";
  display: inline-block;
  font-size: 1rem;
  vertical-align: 0.2rem;
  margin-right: 0.4rem;
  color: var(--c_ye);
}

.apartWhy .txt {
  text-align: left;
  padding: 1.6rem;
  line-height: 1.7;
}

.apartPropose h2 {
  font-size: 2.8rem;
  font-weight: 900;
  margin-bottom: 2rem;
}

.apartPropose h2 .small {
  font-size: 75%;
}

.apartPropose h2 .c_diagonal {
  color: #000;
  font-size: 1.5rem;
  padding: 0 1rem;
}

.c_priceTable + .c_priceTable {
  margin-top: 2rem;
}

.c_priceTable caption {
  color: #fff;
  padding: 1.4rem;
  text-align: center;
  font-weight: 600;
}

.c_priceTable th,
.c_priceTable td {
  border: 0.1rem solid #D9D9D9;
  padding: 1.2rem 0.8rem;
  font-size: 1.3rem;
  font-weight: 400;
  background-color: #fff;
}

.c_priceTable tr:nth-of-type(3) td,
.c_priceTable tr:last-of-type td:nth-of-type(1) {
  background-color: #FFF6B5;
  color: var(--c_rd);
  font-weight: 500;
}

.c_priceTable tr:last-of-type td:nth-of-type(1) {
  font-size: 1.6rem;
}

.c_priceTable tr:last-of-type th:first-of-type {
  font-weight: 500;
}

.apartPropose .txt {
  text-align: left;
  margin-top: 1.8rem;
  line-height: 1.6;
}

.apartLeave {
  padding: 2rem 0 0;
}

.apartLeave h2 {
  position: relative;
  background-color: var(--c_bl);
  color: #fff;
  margin-inline: auto;
  padding: 1rem;
  font-size: 2.2rem;
  text-align: center;
  margin-bottom: 3.2rem;
}

.apartLeave h2 .small {
  font-size: 1.8rem;
}

.apartLeave .box .img {
  width: 9rem;
  margin-bottom: 1rem;
  margin-inline: auto;
}

.apartLeave .box h3 {
  font-size: 1.4rem;
  font-weight: 500;
  padding-bottom: 0.5rem;
  line-height: 1.2;
}

.apartLeave .box h3 .clr-bl {
  font-weight: 700;
}

.apartLeave .box .txt {
  font-size: 1.2rem;
  margin-top: 0.8rem;
  line-height: 1.2;
}

.apartLeave .row {
  grid-template-columns: repeat(3, 1fr);
  gap: 1.3rem;
  margin: 1rem -2% 0;
}

.apartLeave .row .box::before {
  content: "";
  width: 1.7rem;
  height: auto;
  aspect-ratio: 1.7/4;
  background: url("../img/menu/apartment/arrow.svg") center no-repeat;
  background-size: contain;
  display: inline-block;
}

.apartLeave .row .box h3 {
  background-color: var(--c_bl);
  color: #fff;
  padding: 0.6rem 1rem;
  border-radius: 0.4rem;
  display: inline-block;
}

.apartLeave .c_apartList {
  padding: 2rem 1.8rem;
  margin: 2rem -6% 0;
}

.apartHelp .ttlRow {
  gap: 1rem;
  justify-content: center;
  padding: 1rem 0 0;
  align-items: center;
}

.apartHelp .ttlRow .img {
  width: 10rem;
  max-width: 100%;
}

.apartHelp .ttlRow .ttl {
  font-size: 2.1rem;
  font-weight: 900;
  text-align: left;
  line-height: 1.4;
}

.apartHelp .ttlRow .ttl .bgClr {
  display: block;
  font-size: 76.2%;
  border-radius: 3rem;
  width: 19rem;
  margin-bottom: 0.6rem;
  font-weight: 700;
  text-align: center;
  padding: 0.2rem;
}

.apartHelp .ttlRow .ttl .big {
  font-size: 114.3%;
}

.apartHelp .ttl02 {
  font-size: 1.6rem;
  margin: 2.4rem 0 2rem;
}

.apartHelp .ttl02 .clr-rd {
  font-size: 137.5%;
}

.apartHelp .row {
  grid-template-columns: repeat(2, 1fr);
  gap: 2.4rem;
  margin-bottom: 2.4rem;
}

.apartHelp .row .box {
  position: relative;
}

.apartHelp .row .box:first-of-type::after {
  content: "";
  width: 2.8rem;
  height: auto;
  aspect-ratio: 1;
  background: var(--c_ye) url("../img/plus_or.svg") center no-repeat;
  background-size: 50% auto;
  display: inline-block;
  position: absolute;
  bottom: 0;
  right: -2.6rem;
  z-index: 2;
  border-radius: 50%;
}

.apartHelp .row .box .txt {
  font-size: 1.3rem;
  padding: 0.6rem;
  border-radius: 0.5rem;
  font-weight: 700;
  margin-top: 1rem;
}

.apartHelp .txt02 {
  text-align: left;
}

.apartGuaran .c_speech {
  font-size: 2.3rem;
  padding: 1.3rem 1rem;
  margin-bottom: 3rem;
}

.apartGuaran .c_speech .small {
  font-size: 87%;
}

.apartGuaran .lead {
  text-align: left;
  line-height: 1.8;
}

.apartGuaran .lead p + p {
  margin-top: 1.6rem;
}

.apartGuaran .c_table {
  border-radius: 0;
}

.apartGuaran .c_table thead th {
  background-color: var(--c_or);
  color: #fff;
}

.apartGuaran .c_table thead th,
.apartGuaran .c_table tbody td {
  text-align: center;
  width: 50%;
}

.apartGuaran .cont {
  margin-top: 4rem;
}

.apartGuaran .cont .ttl01 {
  font-size: 2.5rem;
  padding: 1.3rem;
  margin-bottom: 2.3rem;
}

.apartGuaran .cont .row {
  grid-template-columns: repeat(1, 1fr);
  gap: 2.3rem;
  max-width: 85%;
  margin-inline: auto;
}

.apartGuaran .cont .row .box .ttl02 {
  font-size: 1.7rem;
  padding-bottom: 0.6rem;
}

.apartGuaran .cont::after {
  content: "";
  margin-inline: auto;
  width: 2.6rem;
  height: auto;
  aspect-ratio: 1.5/1.1;
  clip-path: polygon(0 0, 100% 0, 50% 100%);
  background-color: var(--c_or);
  display: block;
  margin: 2rem auto;
}

.apartGuaran .conc {
  padding: 2.4rem 2rem 2rem;
  justify-content: center;
  margin: 0 -6%;
}

.apartGuaran .conc .txt {
  flex: 1;
  text-align: left;
  font-size: 1.5rem;
  font-weight: 500;
}

.apartGuaran .conc .txt .c_underline {
  font-size: 113.3%;
  text-decoration-thickness: 0.4rem;
  text-underline-offset: 0.1rem;
  text-decoration-color: #FFF6B5;
}

.apartGuaran .conc .txt .clr-rd {
  font-size: 146.7%;
  font-weight: 900;
  line-height: 1.9;
}

.apartGuaran .conc .img {
  width: 9rem;
  max-width: 100%;
  margin-left: -1rem;
}

.apartGuaran .btn {
  margin-top: -3rem;
}

/*simulation
---------------------------------------------------------*/
.simuSec {
  padding-bottom: 0;
}

.simuSec .row {
  flex-direction: var(--flex-direction);
}

.chatBot {
  width: 100%;
  margin-inline: auto;
}

.chatBot iframe {
  width: 100%;
  height: 40rem;
  border: none;
}

.simuSec .row .c_awards {
  margin: 0 -6%;
}

/*point
---------------------------------------------------------*/
.pointHow {
  padding-top: 0 !important;
}

.pointHow .ttl01 {
  font-size: 1.7rem;
  padding: 0.8rem;
  font-weight: 700;
}

.pointHow .ttlRow {
  gap: 1rem;
  background: url("../img/point/how_ttl_bg.jpg") center no-repeat;
  background-size: cover;
  margin-bottom: 1.7rem;
  align-items: flex-end;
  justify-content: center;
}

.pointHow .ttlRow .ttl02 {
  font-size: 3.5rem;
  font-weight: 900;
  padding: 1.2rem 0;
}

.pointHow .ttlRow .ttl02 .c_speech {
  font-size: 74.3%;
  border-radius: 3rem;
  margin-bottom: 0;
  display: inline-block;
  padding: 0.3rem 2.3rem;
}

.pointHow .ttlRow .ttl02 .c_speech::after {
  width: 1.5rem;
  transform: translateY(88%);
}

.pointHow .ttlRow .ttl02 .small {
  font-size: 74.3%;
}

.pointHow .ttlRow .img {
  width: 10rem;
  max-width: 100%;
}

.pointHow .txt {
  text-align: left;
  line-height: 1.6;
}

.pointLead .rowImg {
  flex-direction: var(--flex-direction);
  gap: 1.5rem;
  margin: 4rem 0;
}

.c_anchorRow .num {
  font-size: 1.8rem;
  background-color: var(--c_bl);
  color: #fff;
  border-radius: 0.2rem;
  padding: 0.5rem 0.6rem 0.7rem;
  margin-right: 1rem;
}

.c_pointTtl {
  background: url("../img/point/c_pointTtl_bg.jpg") center no-repeat;
  background-size: cover;
  font-size: 2.5rem;
  position: relative;
  padding: 4.6rem 2rem 2.2rem;
  margin: 0 -6% 2.2rem;
}

.c_pointTtl._small {
  font-size: 2.1rem;
}

.c_pointTtl .num {
  font-size: 3.4rem;
  background-color: var(--c_bl);
  color: #fff;
  border-radius: 0.3rem;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  margin-inline: auto;
  width: 5.6rem;
  height: auto;
  aspect-ratio: 1;
  display: grid;
  place-content: center;
  transform: translateY(-50%);
  font-weight: 500;
}

.c_pointTtl .bgClr {
  background-color: #fff;
  color: var(--c_or);
  font-size: 1.6rem;
  border-radius: 3rem;
  padding: 0.4rem 1rem;
  margin-bottom: 1rem;
  display: inline-block;
}

.c_point .lead {
  text-align: left;
  margin-bottom: 2.4rem;
  line-height: 1.7;
}

.pointCost.c_point .lead {
  margin-bottom: 1.4rem;
  line-height: 1.6;
}

.c_table._paint {
  border-radius: 0;
  margin-bottom: 2.4rem;
}

.c_table._paint thead th {
  background-color: var(--c_aq);
  color: var(--c_wh);
  font-weight: 500;
}

.c_table._paint th,
.c_table._paint td {
  text-align: center;
  width: 30%;
  padding: 1.6rem 1rem;
}

.c_table._paint td:last-of-type {
  width: 55%;
}

.c_point .txt {
  text-align: left;
  line-height: 1.8;
}

.c_pointCheck {
  border: 0.1rem solid var(--c_gy);
  border-radius: 0.5rem;
  margin-top: 2.7rem;
}

.c_pointCheckTtl {
  background-color: var(--c_or);
  color: #fff;
  font-size: 2.1rem;
  padding: 0.9rem 1rem 1.2rem;
}

.c_pointCheckTtl::before {
  content: "";
  width: 1.8rem;
  height: auto;
  aspect-ratio: 1;
  background: url("../img/icon_check02.svg") center no-repeat;
  background-size: contain;
  display: inline-block;
  margin-right: 0.6rem;
}

.c_pointCheckTxt {
  background-color: var(--c_be);
  padding: 1.2rem 1.4rem;
  text-align: left;
}

.pointPrice .c_table {
  border-radius: 0;
}

.pointPrice .c_table th {
  background-color: var(--c_aq);
  color: #fff;
  font-weight: 500;
  width: 15rem;
}

.pointPrice .c_table th,
.pointPrice .c_table td {
  padding: 1.4rem 1rem;
}

.pointPrice .c_table td {
  background-color: var(--c_be);
}

.pointPrice .c_table tr:nth-of-type(even) th {
  background-color: rgba(10, 114, 146, 0.9);
}

.pointPrice .c_table tr:nth-of-type(even) td {
  background-color: #fff;
}

.pointUnit .row {
  grid-template-columns: repeat(1, 1fr);
  gap: 1.7rem;
}

.pointUnit .row .box {
  background: rgba(204, 0, 0, 0.1);
  padding: 1.5rem;
  text-align: left;
}

.pointUnit .row .box .ttlRow {
  display: flex;
  gap: 1rem;
  align-items: center;
  border-bottom: 0.1rem solid var(--c_gy);
  padding-bottom: 1rem;
  margin-bottom: 1rem;
  font-weight: 700;
}

.pointUnit .row .box .ttlRow .enTxt {
  color: #fff;
  font-size: 1.7rem;
  padding: 1rem;
  display: grid;
  place-content: center;
  border-radius: 0.5rem;
  background-color: var(--c_rd);
}

.pointUnit .row .box .ttl {
  font-size: 1.6rem;
  font-feature-settings: "palt";
  letter-spacing: 0.02em;
}

.pointUnit .row .box._ng {
  background-color: rgba(0, 104, 183, 0.1);
}

.pointUnit .row .box._ng .ttlRow .enTxt {
  background-color: #0068B7;
}

.pointUnit .row .box._ng .ttl ._bl {
  color: #0068B7;
}

.pointUnit .c_table {
  border-radius: 0;
  margin-top: 3rem;
}

.c_pointCaption {
  font-size: 1.6rem;
  font-weight: 700;
  text-align: center;
  margin-bottom: 1rem;
}

.pointUnit .c_table thead th {
  background-color: var(--c_aq);
  color: #fff;
  font-weight: 500;
}

.pointUnit .c_table tbody th {
  background-color: #E6E6E6;
  color: var(--c_aq);
  width: 6.4rem;
  font-weight: 900;
  text-align: center;
  height: 9rem;
}

.pointUnit .c_table th,
.pointUnit .c_table td {
  padding: 1.6rem 1rem;
}

.pointPaint .row {
  grid-template-columns: repeat(2, 1fr);
  gap: 5.5rem;
  padding: 2.6rem 3rem;
}

.pointPaint .row .box {
  position: relative;
}

.pointPaint .row .box:first-child::after {
  content: "";
  width: 4.5rem;
  height: auto;
  aspect-ratio: 45/32;
  background: url("../img/point/paint_noteqal.svg") center no-repeat;
  background-size: contain;
  display: inline-block;
  position: absolute;
  top: 27%;
  right: -5.1rem;
}

.pointPaint .row .box .img {
  width: 6rem;
  margin-bottom: 1.2rem;
  margin-inline: auto;
}

.pointPaint .row .box .ttl {
  font-size: 1.2rem;
  padding: 0.4rem 1rem;
  background-color: var(--c_bl);
  color: #fff;
  border-radius: 3rem;
  margin-bottom: 0.6rem;
}

.pointPaint .row .box .txt {
  font-size: 1.4rem;
}

.pointPaint .row .box .txt .num {
  font-size: 178.6%;
}

.pointWarranty .graph {
  margin-top: 3.8rem;
}

.pointWarranty .graph .ttl {
  background-color: var(--c_aq);
  color: #fff;
  padding: 0.8rem 3rem;
  border-radius: 0.4rem;
  margin-bottom: 0.2rem;
  display: inline-block;
  font-size: 2.2rem;
}

.pointWarranty .graph .txt {
  font-size: 1.6rem;
  text-align: center;
  font-weight: 700;
  letter-spacing: 0.05em;
}

.pointWarranty .graph .txt .big {
  font-size: 156.3%;
  font-weight: 900;
}

.pointWarranty .graph .source {
  font-size: 1.1rem;
  margin-bottom: 1rem;
  font-weight: 400;
}

.pointWarranty .graph .img {
  border: 0.1rem solid var(--c_gy);
  width: 60rem;
}

.pointConc {
  padding-top: 2rem;
}

.pointConc .ttlWrap {
  margin-bottom: 2rem;
}

.pointConc .ttlRow {
  gap: 1rem;
  align-items: flex-end;
  justify-content: center;
  width: 100%;
  padding-top: 1.4rem;
}

.pointConc .ttlRow .img {
  width: 10.5rem;
  max-width: 100%;
}

.pointConc .ttlRow .ttl {
  font-size: 2.1rem;
  padding-bottom: 1rem;
  text-align: left;
}

.pointConc .ttlRow .ttl .bgClr {
  background-color: #fff;
  color: var(--c_bl);
  font-size: 81%;
  padding: 0.2rem 1.3rem;
  border-radius: 3rem;
  font-weight: 900;
  margin-bottom: 0.4rem;
  display: inline-block;
}

.pointConc .ttlRow .ttl .big {
  font-size: 119%;
}

.pointConc .ttlRow .ttl .c_dot {
  font-size: 138.1%;
  font-weight: 900;
}

/*paint-diagnosis
---------------------------------------------------------*/
.paintDiag_q .ttlRow {
  gap: 0.4rem;
  align-items: flex-end;
  position: relative;
  margin: 0 -6%;
  position: relative;
  z-index: 1;
  justify-content: center;
}

.paintDiag_q .ttlRow::after {
  content: "";
  width: 100%;
  height: 100%;
  background-color: #ffea9c;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  clip-path: polygon(0% 0%, 92% 0%, 0% 82%);
}

.paintDiag_q .ttlRow .ttl {
  font-size: 1.8rem;
  text-align: left;
  padding: 1.2rem 0 0.7rem;
  line-height: 1.8;
}

.paintDiag_q .ttlRow .ttl .c_dot {
  font-size: 133.3%;
  font-weight: 900;
}

.paintDiag_q .ttlRow .ttl .c_dot:first-of-type {
  margin-left: 1em;
}

.paintDiag_q .ttlRow .img {
  width: 9rem;
  max-width: 100%;
  margin-top: -2rem;
}

.paintDiag_q .lead {
  text-align: left;
  margin: 1.7rem 0 2.7rem;
  line-height: 1.8;
}

.paintDiag_q .question .ttl {
  background-color: var(--c_be);
  border-top: 0.1rem solid var(--c_gy);
  border-bottom: 0.1rem solid var(--c_gy);
  margin: 0 -3% 2rem;
  padding: 1rem;
  display: flex;
  align-items: center;
  gap: 1rem;
  font-size: 1.6rem;
  text-align: left;
}

.paintDiag_q .question .ttl .num {
  color: #fff;
  background-color: var(--c_bl);
  font-size: 2.1rem;
  padding: 0.6rem 0.6rem 0.8rem;
  font-weight: 500;
}

.paintDiag_q .question .select {
  flex-direction: var(--flex-direction);
  gap: 0.5rem;
}

.paintDiag_q .question .select p {
  font-size: 1.7rem;
  background-color: var(--c_aq);
  padding: 1.8rem 1rem;
  border-radius: 0.5rem;
  color: #fff;
  font-weight: 500;
  cursor: pointer;
  transition: 0.2s;
}

.paintDiag_q .question .select p.back {
  background-color: var(--c_ye);
  color: var(--c_bl);
  padding: 1rem;
}

.paintDiag_q .question .select p:hover {
  opacity: 0.7;
}

.paintDiag_a .c_diagonal {
  font-size: 2rem;
  padding: 0 2rem;
  margin-bottom: 1.3rem;
}

.paintDiag_a .c_diagonal .small {
  font-size: 80%;
}

.paintDiag_a .c_diagonal .c_dot::before {
  color: var(--c_ye);
}

.paintDiag_a .c_menuBox._detail .img {
  margin-bottom: 2rem;
}

.paintDiag_a .c_menuBox dt,
.paintDiag_a .c_menuBox dd {
  color: #000 !important;
  font-weight: 500;
}

.paintDiag_a .c_menuBox dd {
  font-size: 1.8rem;
  font-weight: 700;
}

.paintDiag_a .answer .btn a {
  font-size: 1.8rem;
  padding: 1.4rem 3.6rem 1.4rem 2rem;
}
.wpcf7-list-item{
  width: 49.5%;
}

/*********************************/
/* PC用のスタイル記述 */
/*********************************/
@media screen and (min-width: 769px) {
  /*全体レイアウト
  ---------------------------------------------------------*/
  html {
    font-size: max(0.5208333vw, 10px);
  }
  body {
    font-size: 1.6rem;
  }
  .pageArea {
    overflow: hidden;
    padding-top: 0;
  }
  article > section {
    padding: 6rem 0;
  }
  .btnWrap.d-grid {
    margin-top: 3rem;
  }
  .btnWrap.d-grid._column3 {
    grid-template-columns: repeat(3, 1fr);
  }
  .btn {
    max-width: 40rem;
  }
  .btn a {
    padding: 2rem 3rem;
    font-size: 2rem;
  }
  .btn a::after {
    width: 2.5rem;
    height: 2.5rem;
    right: 1.5rem;
  }
  .btn a.blank::after {
    right: auto;
    width: 1.5rem;
    height: 1.5rem;
  }
  :root {
    --flex-direction: row;
  }
  .container,
  .freeCont {
    max-width: 100rem;
  }
  /*header
  ---------------------------------------------------------*/
  #header {
    position: relative;
    z-index: auto;
  }
  .headerWrap {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 90%;
    max-width: 100rem;
    padding-bottom: 1rem;
  }
  .hPcBox {
    display: flex;
    align-items: center;
    text-align: left;
    gap: 1rem;
    text-align: center;
  }
  .hPcBox .telArea {
    width: auto;
    box-shadow: 0px 0.5rem 0px 0px #ad4515;
    padding-bottom: 0.5rem;
  }
  .hPcBox .telArea .ttl {
    font-size: 1.1rem;
    text-align: center;
    padding: 0.3rem;
    letter-spacing: normal;
    white-space: nowrap;
    font-weight: 300;
    padding: 0;
    margin: 0 0 0.3rem 0;
  }
  .telArea .ttl:before,
  .telArea .ttl:after {
    content: "▼▼";
  }
  .hPcBox .telnum {
    font-size: 2.8rem;
    line-height: 1;
    background-size: 3rem auto;
    padding-left: 3.5rem;
    margin-bottom: 0;
    font-family: "Inter", "Noto Sans JP", sans-serif;
    font-weight: 700;
  }
  .hPcBox .teltime {
    font-size: 1rem;
  }
  .hBtn {
    display: flex;
    gap: 0 1rem;
  }
  .hBtn img {
    height: 8.35rem;
    margin-bottom: -0.5rem;
  }
  .hLogo {
    max-width: 18rem;
  }
  .hTxt {
    font-size: 1.4rem;
  }
  .hIcon .hTel {
    display: none;
  }
  .hIcon {
    z-index: 9999;
  }
  .menuIconWrap {
    padding: 0 0 1.5rem 0;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
    transition: 0.2s;
    z-index: 999;
    position: fixed;
    top: 1rem;
    right: 1rem;
    z-index: 99999;
    width: 7.2rem !important;
    height: 7.2rem;
    border-radius: 5px !important;
    box-shadow: 0.3rem 0.3rem 0.6rem rgba(0, 0, 0, 0.2);
  }
  .menuIconWrap::after {
    content: "MENU";
    font-family: "Inter", "Noto Sans JP", sans-serif;
    font-weight: 700;
    font-style: normal;
    font-size: 1.4rem;
    line-height: 0.8;
    letter-spacing: 0.05em;
    text-align: center;
    border-radius: 0;
    position: absolute;
    left: 0;
    right: 0;
    bottom: 1rem;
    z-index: 1;
    color: var(--c_wh);
  }
  .menuIconWrap.active {
    background: var(--c_aq);
  }
  .menuIconWrap.active::after {
    content: "CLOSE";
  }
  .menuIconWrap.active span {
    background: var(--c_ye);
  }
  .menuIconWrap:hover {
    opacity: 0.8;
  }
  /*nav
  ---------------------------------------------------------*/
  #nav {
    width: 40rem;
    position: fixed;
    top: 0;
    bottom: 0;
    display: block !important;
    box-shadow: -0.3rem 0 1rem rgba(0, 0, 0, 0.1);
    overflow: auto;
    transition: 0.2s;
    -ms-overflow-style: none;
    scrollbar-width: none;
    z-index: 999;
    transform: none;
    padding: 1rem 2rem;
    right: -40rem;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
  }
  #nav::-webkit-scrollbar {
    display: none;
  }
  #nav.active {
    opacity: 1;
    visibility: visible;
    right: 0;
    transform: none;
    pointer-events: all;
  }
  #nav .container {
    padding: 0;
    width: 100%;
  }
  #nav .telArea {
    width: auto;
    margin-right: 8.2rem;
    padding-bottom: 0.5rem;
  }
  #nav .telArea .ttl {
    font-size: 1rem;
    padding: 0.1rem;
    letter-spacing: 0.05em;
  }
  #nav .telnum {
    font-size: 2.5rem;
    background-size: 3.5rem auto;
    padding-left: 3.8rem;
    line-height: 1;
  }
  #nav .teltime {
    font-size: 1rem;
  }
  .mainnavi01 {
    padding-bottom: 0;
  }
  .mainnavi02 li a {
    padding: 1rem;
  }
  .mainnavi02 li a::after {
    right: 1rem;
  }
  .mainnavi01 li a:hover {
    background: var(--c_ye);
  }
  .mainnavi01 li._bl a:hover {
    color: #000;
  }
  .mainnavi01 li._bl a:hover img {
    filter: brightness(0);
  }
  .mainnavi02 li a:hover {
    background: var(--c_ye);
  }
  .memuclose {
    transition: 0.2s;
  }
  .memuclose:hover {
    background: var(--c_bl);
    color: var(--c_ye);
  }
  /*footer
  ---------------------------------------------------------*/
  .lastSec {
    padding: 6rem 0;
  }
  .lastSec h2 {
    font-size: 3.4rem;
    margin-bottom: 2rem;
  }
  .lastSec .txt {
    /* line-height: 1.6; */
  }
  .lastSec .txt p + p {
    margin-top: 2.4rem;
  }
  .lastSec .logoRow {
    margin: 5.2rem 0 2rem;
    gap: 3.2rem;
  }
  .lastSec .logoRow .logo {
    flex: none;
  }
  .lastSec .logoRow .name {
    font-size: 4rem;
    margin-bottom: -0.8rem;
  }
  #footer {
    background-size: 12rem auto;
  }
  .footerBnrPage {
    padding-bottom: 14rem;
  }
  .fWrap {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 3rem;
  }
  .fLogo {
    max-width: 26rem;
    margin-bottom: 0;
  }
  .fAdd {
    font-size: 1.4rem;
  }
  .copyRight {
    width: 100%;
    text-align: center;
    margin-top: 0;
    font-size: 1.2rem;
  }
  .pageTop::before {
    transition: 0.2s;
  }
  .pageTop:hover::before {
    background-color: #000;
  }
  .footerBnr .img {
    max-width: 100rem;
    margin-inline: auto;
    padding: 1rem 0;
  }
  /*toppage
  ---------------------------------------------------------*/
  .mainArea {
    overflow: hidden;
    padding: 4rem 0 4rem;
    margin-bottom: 0;
  }
  .mainArea .container {
    padding: 3rem;
  }
  .mainArea h1 {
    max-width: 80rem;
    margin: 0 auto;
  }
  .mainArea .txt {
    font-size: 3rem;
    margin-bottom: 2rem;
    padding: 1.2rem 1rem 1rem;
  }
  .mainArea .mvImg{
    display: block;
    margin: 0 auto;
    width: 55%;
  }
  .mainArea .mvImg img{
    margin: 0 auto;
    width: 100%;
    height: auto;
    display: block;
  }
  .mainArea .mvBg {
    right: 0;
    bottom: 0;
  }
  .mainArea .mvBg li {
    overflow: hidden;
  }
  #mainBtmSlier {
    width: 90%;
    margin: 0 auto 3rem;
  }
  .mainBtmSlier {
    opacity: 0;
    height: 14.6163215vw;
  }
  .mainBtmSlier.slick-initialized {
    height: auto;
  }
  .c_awards {
    padding: 6rem 0;
  }
  .c_awards .row{
    grid-template-columns: repeat(4, 1fr);
    gap: 5%;
  }
  .c_awards li {
    width: 100%;
    background-size: 6rem auto;
    padding-bottom: 1rem;
  }

  .c_awards .c_awards_img {
    width: 100%;
  }
  .c_awards_img img{
    width: 100%;
    height: auto;
    display: block;
    margin-inline: auto;
  }

  .c_awards li .ttl {
    font-size: 3rem;
  }
  .c_awards li .ttl::before {
    width: 3rem;
    margin-bottom: 0.5rem;
  }
  .c_awards li .txt {
    font-size: 6rem;
  }
  .c_awards li::before,
  .c_awards li::after {
    width: 10rem;
  }
  .c_awards li .txt .small02 {
    font-size: 35%;
  }
  .c_awards li .txt._02 {
    font-size: 3.8rem;
    padding-top: 1rem;
  }
  .c_awards li .txt._02 .small {
    font-size: 2.4rem;
    padding-top: 0.4rem;
  }
  .topNews {
    padding: 6rem;
  }
  .c_speech {
    font-size: 3rem;
  }
  .c_speech .bgRoundClr {
    font-size: 1.8rem;
    width: 24rem;
  }
  .c_diagonal {
    font-size: 3rem;
  }
  .freeCont {
    padding: 4rem 0;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 2rem;
  }
  .freeTxtWrap {
    width: 40rem;
    padding-bottom: 0;
  }
  .freeTxt {
    width: 100%;
    flex-wrap: wrap;
    gap: 0.8rem;
  }
  .freeTxtWrap ._free {
    font-size: 6rem;
    margin-left: 8rem;
  }
  .freeTxt li {
    width: 9rem;
    font-size: 3rem;
  }
  .telArea {
    width: 40rem;
  }
  .contactBtn {
    margin: 0 0 0 1rem;
  }
  .contactBtn img {
    height: 12.9rem;
    margin-bottom: -0.6rem;
  }
  .formTtl .img {
    width: 10rem;
  }
  .formTtl .img._02 {
    width: 9.2rem;
  }
  .formWrap {
    max-width: 80rem;
    margin: 0 auto;
    padding: 3rem;
  }
  .formBox dt,
  .formBox dd {
    padding: 2rem;
  }
  .formBox dt {
    padding-block: 1rem;
  }
  .formBtn > div {
    width: auto;
  }
  .formBtn input[type=submit],
  .formBtn input[type=button],
  .formBtn button.button._grey {
    width: 24rem;
  }
  .thxBox .ttl {
    font-size: 2rem;
  }
  .topReason .ttlImg {
    padding-bottom: 4rem;
  }
  .topReason .ttl {
    max-width: 47.2rem;
    margin: 2rem auto 4rem;
    font-size: 2.4rem;
  }
  .slick-slide img {
    width: 100%;
  }
  .slideBox dl {
    font-size: 1.6rem;
    padding: 2rem;
  }
  .slideBox dt .num {
    font-size: 2rem;
  }
  .slideBox dt h3 {
    font-size: 2rem;
  }
  .topMenu .rowWrap {
    grid-template-columns: repeat(2, 1fr);
    gap: 2rem;
  }
  .topMenu .row .img {
    width: 14rem;
  }
  .topMenu .row .img img {
    width: 100%;
    object-fit: cover;
    height: 100%;
    width: 100%;
  }
  .topMenu .row .box {
    display: flex;
    flex-direction: column;
    background: #fff;
  }
  .topMenu .row .boxTtl {
    padding: 2rem;
  }
  .topMenu .row .item .txt {
    font-size: 1.6rem;
  }
  .topMenu .row .item {
    padding: 2rem;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    flex: 1;
  }
  .topMenu .row .item .price {
    font-size: 2rem;
  }
  .ttlBox {
    margin-bottom: 4rem;
  }
  .ttlBox h2 {
    font-size: 3.6rem;
  }
  .ttlBox .fo-din {
    font-size: 2rem;
  }
  .displayName {
    font-size: 2.2rem;
    margin-bottom: 2.6rem;
  }
  .c_worksRow {
    grid-template-columns: repeat(3, 1fr);
    gap: 2rem 2rem;
  }
  .c_worksBox._recom .img img {
    width: 100%;
  }
  .c_worksBox .recomTxt {
    font-size: 2rem;
    right: 1.5rem;
    padding-top: 1rem;
  }
  .c_worksBox .ttl {
    font-size: 1.6rem;
  }
  .c_works .btn {
    max-width: none;
    display: inline-block;
  }
  .c_works .btn a {
    padding: 2rem 5rem 2rem 3rem;
  }
  .topYoutube .row {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    grid-template-rows: 1fr 1fr;
    gap: 1rem;
    grid-template-areas: "a a d d" "a a b c";
  }
  .topPoint .row .img,
  .topRelief .row .img {
    width: 50rem;
  }
  .topPoint .row .box {
    flex: 1;
  }
  .topPoint {
    padding-top: 6rem;
  }
  .topPoint .row .box .ttl {
    font-size: 2.4rem;
    border-bottom-color: var(--c_bl);
    color: var(--c_ye);
  }
  .c_reviewRow {
    grid-template-columns: repeat(3, 1fr);
  }
  .c_reviewRow .box .img img {
    max-height: 20.5rem;
    object-position: 50% 14%;
  }
  .c_reviewRow .box .txt {
    font-size: 1.6rem;
    padding: 1rem;
  }
  .c_reviewRow .box .img img {
    width: 100%;
  }
  .c_bgTrape::before {
    height: 35rem;
  }
  .c_bgTrape.topRelief {
    padding: 6rem 0;
  }
  .c_bgTrape.topRelief::before {
    top: 0;
  }
  .c_staffBox {
    height: 30rem !important;
  }
  .c_staffBox .item .name {
    font-size: 2rem;
  }
  .c_staffBox .item .part {
    font-size: 1.6rem;
  }
  .subsidyBnr .ttl {
    font-size: 3rem;
    position: static;
  }
  .subsidyBnr .ttl .c_borderTxt {
    display: inline-block;
  }
  .subsidyBnr .ttl .middle {
    display: inline-block;
  }
  .subsidyBnr .btn02 span br {
    display: none;
  }
  .subsidyBnr .btn02 {
    max-width: 60rem;
    margin-top: 2rem;
  }
  .subsidyBnr .btn02 span {
    font-size: 2rem;
    padding-left: 7rem;
  }
  .btn02 a::after,
  .btn02 .txt::after {
    width: 4rem;
  }
  .subsidyBnr .btn02 img {
    width: 13rem;
    left: -10rem;
  }
  .subsidyBnr .ttl::before {
    width: 10rem;
    z-index: 1;
    top: 1rem;
    left: 1rem;
  }
  .subsidyBnr .ttl::after {
    width: 12rem;
    right: 3rem;
    bottom: 1rem;
    z-index: 1;
  }
  .subsidyBnr a {
    position: relative;
  }
  .topSimulate .ttl {
    font-size: 3rem;
    margin-bottom: 4rem;
  }
  .topSimulate .ttl .clr-or {
    display: inline-block;
  }
  .topSimulate .row .boxTtl {
    font-size: 2rem;
    text-align: center;
  }
  .topSimulate .row .boxTxt {
    font-size: 1.6rem;
    text-align: center;
  }
  .topSimulate .row {
    flex: 1;
    flex-direction: column-reverse;
    padding: 2rem;
  }
  .topSimulate .row .img {
    width: 10rem;
    margin: 0 auto 1rem;
  }
  .c_message .areaLead {
    font-size: 2rem;
  }
  .c_message .ttl {
    max-width: 100%;
    margin: 0 auto 4rem;
    padding: 12rem 8rem;
    background: right 20% center/contain no-repeat url("../img/reason/about_message_img.png");
  }
  .c_message .ttl img {
    width: 37rem;
  }
  .c_message .movieWrap {
    margin-top: 6rem;
  }
  .c_message .sign {
    width: 23rem;
  }
  .c_message .imgStaff {
    margin-top: 4rem;
  }
  #topDiagnosis .container {
    max-width: 80rem;
  }
  .topDiagnosis .ttl {
    font-size: 2rem;
    text-align: center;
  }
  .topDiagnosis .ttl span {
    padding: 0.8rem;
  }
  .topDiagnosis .ttl .clr-or {
    font-size: 175%;
    text-align: center;
    line-height: 1;
    padding-bottom: 1rem;
  }
  .topDiagnosis .ttl::before {
    left: 18rem;
    width: 8rem;
  }
  .topDiagnosis .img img {
    width: 100%;
  }
  .topDiagnosis .img .staff {
    right: 1rem;
    width: 20rem;
  }
  .wpcf7-form-control-wrap{
    width: 100%;
  }
  .wpcf7-form-control-wrap > span{
    width: 100%;
  }
  .wpcf7-list-item{
    width: 49.5%;
  }
  .c_area {
    padding-bottom: 6rem;
  }
  .c_area .row {
    gap: 5rem;
    padding: 5rem 0 0;
    align-items: center;
    font-size: 1.8rem;
  }
  .c_area .row .img {
    width: 45rem;
  }
  .c_area .row .img .item {
    padding: 1rem 1.3rem;
    bottom: 1.6rem;
    left: 2rem;
  }
  .c_area .row .img .item h4 {
    font-size: 2rem;
  }
  .c_area .row .img .item p {
    font-size: 1.6rem;
  }
  .c_area .row .img .staff {
    width: 18rem;
  }
  .c_area .speechRow {
    margin-top: 4rem;
    justify-content: center;
  }
  .c_area .speechImg {
    width: 18rem;
  }
  .c_area .speechTxt {
    font-size: 2.4rem;
    margin: -15rem 0 0 0;
  }
  .topSupport .row .box._follow .ttl {
    font-size: 2.4rem;
  }
  .topSupport .row .box._follow .ttl span {
    margin-right: 0.2em;
  }
  .topSupport .row .box._follow .txt {
    font-size: 1.8rem;
  }
  .topSupport .box._follow .btn img {
    left: 2rem;
    width: 9.8rem;
  }
  .topSupport .box._follow .btn span {
    width: 25.8rem;
  }
  .topSupport .row .box._all .c_borderTxt {
    font-size: 3rem;
  }
  .topSupport .box._all .btn02 img {
    left: 0rem;
    width: 7.8rem;
  }
  .topSupport .box._all .btn02 a {
    padding-left: 8.4rem;
  }
  .topSupport .box._all .btn02 a::after {
    width: 3.2rem;
  }
  .c_flowRow {
    flex-wrap: wrap;
    gap: 2rem 5%;
  }
  .c_flowBox {
    width: 30%;
    background: #fff;
  }
  .c_flowBox::after,
  .c_flowBox._arrowBef::before {
    clip-path: polygon(100% 50%, 0 0, 0 100%);
    bottom: auto;
    top: 50%;
    transform: translateY(-50%);
    width: 3rem;
    height: auto;
    aspect-ratio: 3/4;
    left: 100%;
    left: calc(100% + 1rem);
    right: auto;
    z-index: 10;
  }
  .c_flowBox .txt {
    font-size: 1.4rem;
    text-align: justify;
    line-height: 1.6;
  }
  .c_flowBox .img img {
    width: 100%;
  }
  .topRank .ttl {
    font-size: 3.6rem;
    margin-bottom: 4rem;
  }
  .topRank .ttl .line {
    flex: none;
    font-size: 2rem;
    padding: 0.5rem 2rem;
    margin-right: 1rem;
  }
  .topRank .row {
    gap: 5rem;
  }
  .topRank .row .img img {
    width: 100%;
  }
  .topRank .btn img {
    bottom: -6rem;
    width: 11.7rem;
  }
  .topRank .btn a {
    width: 24.8rem;
  }
  .topLink .box {
    background-size: 107% auto;
    padding-inline: 2rem !important;
    padding-bottom: 2rem !important;
  }
  .topLink .box._estimate .ttl {
    font-size: 3rem;
  }
  .topLink .box._estimate .ttl .middle {
    display: inline-block;
    font-size: 100%;
  }
  .topLink .box._estimate .ttl .small {
    font-size: 2rem;
  }
  .topLink .btn03 {
    font-size: 2rem;
    padding: 0.8rem;
  }
  .topLink .box .txtWrap {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    gap: 1rem;
    padding-top: 2rem;
  }
  .topLink .box._paint .month {
    width: 6rem;
  }
  .topLink .box .price {
    width: 20rem;
  }
  .topLink .box._paint .num {
    font-size: 7rem;
  }
  .topLink .box._paint .tax {
    font-size: 1.5rem;
    white-space: nowrap;
  }
  .topLink .box._paint .txt {
    font-size: 2.4rem;
  }
  .topLink .box._estimate {
    padding-top: 4rem;
  }
  .topLink .faqRow {
    margin-top: 4rem;
  }
  .topLink .faqTxt {
    font-size: 1.6rem;
  }
  .topLink .faqTtl {
    font-size: 2.4rem;
    padding-bottom: 2rem;
    margin-bottom: 2rem;
  }
  .topLink .faqImg {
    width: 25rem;
  }
  .topLink .faqBox {
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 4rem;
  }
  .topLink .faqBox:after {
    width: 4rem;
  }
  /*subpage
  ---------------------------------------------------------*/
  .pageTtlArea {
    height: 20rem;
  }
  .pageTtl h1 {
    font-size: 3.6rem;
  }
  #subPage article > section:first-of-type {
    padding-top: 4rem;
  }
  .pankz ol {
    font-size: 1.4rem;
  }
  .pankz ol a:hover {
    text-decoration: none;
    color: var(--c_or);
  }
  /*about
  ---------------------------------------------------------*/
  .aboutSelect {
    padding-bottom: 6rem;
  }
  .aboutSelect .ttl {
    font-size: 3rem;
    margin: 7.2rem 0 2rem;
  }
  .aboutSelect .txt {
    font-size: 1.8rem;
    text-align: center;
  }
  .aboutAnchor ul {
    justify-content: flex-start;
    gap: 1rem 1.333333%;
  }
  .aboutAnchor ul li {
    width: 32%;
    margin-top: 0 !important;
  }
  .c_aboutTtl .jaTxt {
    font-size: 3rem;
  }
  .c_aboutTtl .enTxt {
    font-size: 1.8rem;
  }
  .c_aboutArea .ttl01 {
    font-size: 2.4rem;
  }
  .c_aboutArea {
    padding: 4rem 0;
  }
  .c_aboutRow .box .ttl02 {
    font-size: 1.8rem;
  }
  .c_aboutRow {
    padding: 3rem 2rem;
  }
  .scrollWrap .img {
    width: 100%;
  }
  .c_aboutArea .graph .note {
    font-size: 1.4rem;
  }
  .c_aboutPoint .row {
    grid-template-columns: repeat(2, 1fr);
  }
  .c_table tbody th {
    width: 30rem;
    text-align: center;
  }
  .c_table thead th {
    font-size: 112.5%;
  }
  .c_table th,
  .c_table td {
    padding: 1rem 2rem;
  }
  .c_aboutArea .check .row {
    align-items: center;
  }
  .c_aboutPoint {
    padding-top: 4rem;
  }
  .c_aboutArea .ttl01:nth-of-type(n+2) {
    margin-top: 4rem;
  }
  .aboutCare .exampleTtl {
    margin-bottom: 2rem;
    font-size: 2.4rem;
  }
  .aboutCare .exampleArea {
    padding-top: 4rem;
  }
  .aboutCare .exampleRow .img {
    width: 56rem;
  }
  .aboutCare .exampleRow .box {
    flex: 1;
  }
  .aboutCare .exampleRow .box li {
    padding: 1rem;
  }
  .aboutCare .band {
    margin-top: 8rem;
  }
  .aboutCare .band .txt {
    font-size: 2.4rem;
  }
  .aboutCare .band .txt._01 {
    padding-inline: 3rem;
  }
  .aboutCare .band .txt._02 {
    padding: 1.5rem 3rem;
    margin: 1rem 0 3rem;
  }
  .aboutCare .caution {
    margin-top: 6rem;
  }
  .aboutCare .caution .txt {
    text-align: center;
  }
  .caseRow {
    grid-template-columns: repeat(2, 1fr);
  }
  .caseArea .c_speech {
    margin-top: 4rem;
  }
  .caseBox._03 .scrollWrap .img {
    width: 100%;
  }
  .caseBox._04 img {
    max-height: 20rem;
  }
  .c_pickup .row {
    justify-content: center;
    gap: 1rem 1.333333%;
    flex-wrap: wrap;
  }
  .c_pickup .row .link {
    width: 32%;
    margin-top: 0 !important;
    justify-content: center;
    padding-right: 5rem;
  }
  .Adr {
    padding: 80px 0;
  }
  /*reason
  ---------------------------------------------------------*/
  #subPage .c_awards {
    padding: 4rem 0;
  }
  .reasonAnchor .ttl .c_speech {
    text-align: center;
    font-size: 2.4rem;
    padding-right: 20rem;
  }
  .reasonAnchor .ttl .c_speech .clr-ye {
    display: inline-block;
    font-size: 3rem;
  }
  .reasonAnchor .ttl .img {
    width: 21rem;
    right: 2rem;
  }
  .reasonAnchor ul li a br {
    display: none;
  }
  .reasonAnchor ul li a {
    font-size: 2.4rem;
    padding-left: 3rem;
  }
  .reasonAnchor ul li a .num {
    font-size: 4rem;
  }
  .reasonOrder._01 .ttl img {
    display: block;
    margin: 1rem auto 3rem;
  }
  .reasonOrder .c_orderRow {
    max-width: 80rem;
    width: 90%;
    margin: 0 auto;
    display: grid;
    grid-template-columns: 1fr;
  }
  .reasonOrder .c_orderRow .img {
    width: 80%;
    margin-inline: auto;
  }
  .reasonOrder .c_orderRow .img img {
    display: block;
  }
  .c_orderBox {
    flex: 1;
  }
  #reason03 {
    max-width: 80rem;
    margin: 0 auto;
  }
  .reasonNote {
    background: #dfdfdf;
    padding: 2rem;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    align-items: center;
    gap: 2rem;
    margin-top: 2rem;
    border-radius: 1rem;
  }
  .reasonNote-dtl {
    font-size: 1.4rem;
  }
  .reasonNote-dtl-ttl {
    font-size: 2rem;
    font-weight: 700;
    color: var(--c_bl);
    text-align: center;
    margin-bottom: 1rem;
  }
  .reasonNote-img {
    width: 90%;
    margin-inline: auto;
  }
  #reason03 {
    max-width: 80rem;
    margin: 0 auto;
  }
  /*company
  ---------------------------------------------------------*/
  .companyLead .ttl {
    width: 35rem;
    margin-bottom: 4rem;
    font-size: 4.4rem;
    font-family: serif;
    font-weight: 500;
  }
  .movieWrap {
    max-width: 70rem;
    margin: 0 auto;
  }
  .c_message._reason .img {
    margin: 0 auto 4rem;
    max-width: 70rem;
  }
  .companyAchiev .row img {
    width: 100%;
  }
  .companySec .row {
    margin-top: 4rem;
    grid-template-columns: repeat(2, 1fr);
  }
  .c_access .row .box {
    width: 42rem;
  }
  .c_access .row dl {
    flex: 1;
    padding: 0;
  }
  .c_access .row dl dt,
  .c_access .row dl dd {
    display: flex;
    justify-content: center;
    flex-direction: column;
    align-items: flex-start;
    padding: 1rem 0 1rem 1.5rem;
    width: 75%;
  }
  .c_access .row dl dt {
    width: 25%;
  }
  /*review
  ---------------------------------------------------------*/
  .pager {
    margin-top: 6rem;
  }
  .pager span,
  .pager a {
    width: 2.2rem;
    aspect-ratio: 4/3;
    margin: 0 1rem;
  }
  .reviewGoogle .ttl {
    font-size: 3rem;
    margin-bottom: 3rem;
  }
  #reviewGoogle {
    margin-top: 6rem;
  }
  #reviewSingle .img {
    margin: 0 auto 6rem;
  }
  #reviewSingle .img img {
    max-height: 90rem;
  }
  .reviewSingle .ttl {
    font-size: 2.4rem;
  }
  #reviewSingle .sheet {
    max-width: 70rem;
    margin: 0 auto;
  }
  .pagesetBtn {
    white-space: nowrap;
    width: 15rem;
  }
  .c_postTtl {
    font-size: 1.8rem;
    padding: 0.5rem 1.5rem;
  }
  .reviewSingle .cont + .cont {
    margin-top: 4rem;
  }
  .reviewSingle .cont .txt {
    padding: 0 2rem;
  }
  /*works
  ---------------------------------------------------------*/
  .worksCateAll .child a {
    font-size: 1.4rem;
  }
  .c_singleTtl .ttl {
    font-size: 3rem;
  }
  .worksSingle .worksImgWrap {
    margin-top: 4rem;
  }
  .worksSingle .imgRow {
    gap: 2rem;
    /* justify-content: flex-start; */
  }
  .worksSingle .worksImgWrap .imgRow:nth-of-type(n+2) {
    margin-top: 6rem;
  }
  .worksSingle .imgRow .box {
    width: 49%;
  }
  .worksSingle .imgRow .box .enTxt {
    font-size: 3.7rem;
    height: 5rem;
  }
  .worksImgWrap h4 {
    font-size: 2.2rem;
    margin: 2rem 0 0.4rem;
  }
  .worksImgWrap .txt {
    margin: 0.6rem 0;
  }
  .worksSingle .data .ttl {
    font-size: 2.4rem;
  }
  .worksSingle .data {
    margin-top: 4rem;
  }
  .worksSingle .data .profile dt,
  .worksSingle .data .profile dd {
    font-size: 1.6rem;
  }
  /*campaign
  ---------------------------------------------------------*/
  .campaignArchive .row {
    grid-template-columns: repeat(2, 1fr);
    gap: 2rem;
  }
  .campaignArchive .item .ttl {
    font-size: 1.8rem;
    padding-bottom: 0;
  }
  .campaignSingle .status {
    width: 15rem;
    margin: 3rem auto;
    padding: 0.6rem;
  }
  .campaignSingle .cont {
    margin-bottom: 6rem;
  }
  .campaignSingle .row {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
  }
  .campaignSingle .access .txt {
    margin: 2rem 0;
  }
  /*blog
  ---------------------------------------------------------*/
  .blogArchiveTtl .ribbon {
    font-size: 2.4rem;
    height: 5rem;
  }
  .blogArchiveTtl .ttl {
    font-size: 3rem;
  }
  .c_blogRow {
    grid-template-columns: repeat(3, 1fr);
  }
  .c_blogBox .cont {
    font-size: 1.4rem;
  }
  .postBtn {
    text-align: center;
    padding: 1rem;
  }
  .c_blogBox .ttl {
    font-size: 1.8rem;
  }
  .tags {
    font-size: 1.4rem;
  }
  .blogSingle .img {
    margin-bottom: 4rem;
    text-align: center;
  }
  .blogSingle .cont {
    margin-top: 3rem;
    font-size: 1.6rem;
  }
  .blogSingle .detail {
    margin-top: 5rem;
  }
  .blogSingle dt {
    font-size: 1.8rem;
    padding: 1rem 1rem 1rem 5.5rem;
  }
  .blogSingle dt .num {
    width: 4.5rem;
    height: auto;
    font-size: 2.6rem;
    padding-bottom: 0.1em;
    aspect-ratio: 1;
  }
  .blogSingle dd + dt {
    margin-top: 3rem;
  }
  /*showroom
  ---------------------------------------------------------*/
  .flowSec .area {
    padding: 4rem 0;
  }
  .flowSec .flowTtl {
    font-size: 3rem;
    margin-bottom: 3rem;
  }
  .flowSec .c_speech {
    font-size: 3rem;
  }
  .flowSec .free.onlypc {
    width: 65%;
    font-size: 3rem;
    margin: 0;
    padding: 5rem 1rem;
    line-height: 1.6;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    position: relative;
    border: 0.5rem solid var(--c_ye);
    background: #fff;
  }
  .flowSec .free::before {
    content: "";
    position: absolute;
    clip-path: polygon(100% 50%, 0 0, 0 100%);
    bottom: auto;
    top: 50%;
    transform: translateY(-50%);
    width: 3rem;
    height: auto;
    aspect-ratio: 3/4;
    left: 100%;
    left: calc(100% + 1.5rem);
    right: auto;
    z-index: 10;
    background-color: var(--c_ye);
    display: block;
  }
  .flowSec .free.onlypc p {
    display: inline-block;
    padding: 0 1em;
    background: linear-gradient(0deg, var(--c_ye) 2.5rem, #fff 2.5rem);
  }
  .c_flowBox._arrowBef::before {
    right: calc(100% + 1rem);
    left: auto;
  }
  .flowSec .free + .c_flowRow .c_flowBox._arrowBef::before {
    display: none;
  }
  .flowSec .quality .c_diagonal img {
    width: 32rem;
  }
  .flowSec .quality .c_diagonal {
    font-size: 3rem;
  }
  .flowSec .how {
    padding: 6rem 0;
  }
  .flowSec .how .ttl {
    font-size: 3rem;
    margin-bottom: 4rem;
  }
  /*showroom
  ---------------------------------------------------------*/
  #showroomLead {
    position: relative;
    padding-top: 2rem !important;
    z-index: 1;
  }
  .showroomLead .band {
    text-align: center;
    max-width: 100rem;
    margin: 0 auto 4rem;
    position: relative;
    background: none;
  }
  .showroomLead .band .ttl {
    font-size: 2.4rem;
    padding: 4rem 0 3rem;
    position: relative;
  }
  .showroomLead .band .ttl img {
    width: 25rem;
    z-index: 5;
  }
  .showroomLead .band .txt {
    font-size: 3rem;
    position: relative;
  }
  .showroomLead .band .img {
    width: 16rem;
    right: -2rem;
    z-index: 5;
  }
  .showroomLead .band .ttl::before,
  .showroomLead .band .txt::before {
    content: "";
    display: block;
    position: absolute;
    z-index: -1;
    top: 0;
    bottom: 0;
    left: -50vw;
    right: -50vw;
    background: #E2CE48;
  }
  .showroomLead .band .ttl::before {
    background: url(../img/showroom/lead_band_bg.jpg) left bottom -32rem repeat-x;
    background-size: 100% auto;
  }
  .showroomLead .band .txt::before {
    background: var(--c_or);
  }
  .btn._small02 a {
    font-size: 2rem;
    text-align: center;
  }
  .showroomLead .bnrBox .ribbon {
    font-size: 2rem;
    padding-block: 0.7rem;
    padding-right: 3rem;
    margin-right: 1rem;
  }
  .showroomLead .bnrBox .ttl {
    font-size: 4rem;
    line-height: 1;
    margin-bottom: 0.5rem;
  }
  .showroomLead .bnrBox .gift {
    font-size: 2.4rem;
    margin-right: 1rem;
  }
  .showroomLead .bnrBox .price {
    font-size: 7rem;
  }
  .showroomLead .bnrBox .price .yen {
    font-size: 39%;
    margin-left: 0.05em;
    vertical-align: -0.5rem;
  }
  @supports (-webkit-hyphens: none) {
    /*safariのみ*/
    .showroomLead .bnrBox .price .yen {
      margin-right: 3rem;
    }
  }
  .showroomLead .bnrBox .txt {
    font-size: 4rem;
  }
  .showroomLead .bnrBox {
    padding: 2rem;
    max-width: 70rem;
    margin: 0 auto 3rem;
  }
  .showroomLead .bnrBox .ttlRow,
  .showroomLead .bnrBox .txtRow {
    justify-content: center;
  }
  .showroomLead .bnrBox .ttlRow {
    margin-bottom: 1rem;
  }
  .c_paintRow {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
  }
  #showroomPoint .c_paintRow {
    grid-template-columns: repeat(2, 1fr);
  }
  .c_paintBox .txt {
    font-size: 1.6rem;
    line-height: 1.6;
  }
  .c_paintBox .ttl {
    font-size: 2rem;
    min-height: 7rem;
    display: flex;
    align-items: center;
  }
  .showroomTtl {
    font-size: 3rem;
  }
  /*staff
  ---------------------------------------------------------*/
  .staffCateAll ul {
    padding: 4rem 0;
    gap: 1rem 2%;
  }
  .staffCateAll li {
    width: 32%;
  }
  .staffCateAll li a {
    padding: 1rem 2rem;
  }
  .staffCateAll li a:hover {
    background: var(--c_bl);
  }
  .c_staffItem .btn a {
    font-size: 1.8rem;
    padding-left: 2rem;
  }
  .c_staffItem .btn a::after {
    width: 2.5rem;
  }
  .staffSingle::before {
    height: 45rem;
  }
  .staffHeader {
    display: flex;
    flex-direction: row-reverse;
    text-align: left;
    padding-top: 4rem;
    max-width: 80rem;
    margin: 0 auto 6rem;
    font-size: 1.8rem;
  }
  .staffSingle .img {
    width: 40rem;
    margin: 0 5rem 0 0;
  }
  .staffSingle .img img {
    width: 100%;
  }
  .staffSingle .ttl {
    flex: 1;
    margin: 0;
    padding-top: 7rem;
  }
  .staffSingle .ttl .name {
    font-size: 3rem;
    letter-spacing: 0.1em;
  }
  .staffSingle .ttl .tags {
    font-size: 1.6rem;
  }
  .staffSingle dt {
    font-size: 1.8rem;
  }
  /*faq
  ---------------------------------------------------------*/
  .faqSec .ttl {
    font-size: 3rem;
  }
  .faqSec .ttl img {
    width: 32rem;
  }
  .faqWrap dt,
  .faqWrap dd {
    padding: 1.5rem;
  }
  .faqWrap dt::before,
  .faqWrap dd::before {
    font-size: 3rem;
    min-width: 5rem;
  }
  .faqWrap dt {
    font-size: 1.8rem;
    position: relative;
  }
  .faqWrap dt::after {
    width: 3rem;
    position: absolute;
    right: 1rem;
    top: 2.2rem;
  }
  .faqWrap {
    margin-top: 4rem;
  }
  /*estimate
  ---------------------------------------------------------*/
  .estimLead .ttl .clr-ye {
    display: inline-block;
    line-height: 1.1;
    margin-top: -0.1em;
  }
  .estimLead .ttl {
    font-size: 2.4rem;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 1rem;
  }
  .estimLead .txt {
    font-size: 2rem;
    margin: 3rem 0;
  }
  .estimLead .speechRow {
    justify-content: center;
  }
  .estimLead .speechImg {
    width: 15rem;
    margin-left: 1.4rem;
  }
  .estimLead .speechTxt {
    padding: 1rem 3rem 1.5rem;
  }
  .formWrap {
    background: #fff;
    padding: 6rem;
  }
  .confirm {
    font-size: 1.4rem;
  }
  .c_line .area .ttl01 {
    font-size: 3rem;
    display: flex;
    justify-content: center;
    align-items: center;
  }
  .c_line .area .ttl01::before {
    margin: 0 2rem 0 0;
  }
  .c_line .c_speech {
    font-size: 2rem;
    max-width: 47.2rem;
  }
  .c_lineQR .qr {
    width: 20rem;
    margin: 0 auto 4rem;
  }
  .c_lineQR .logo,
  .c_lineQR .ttl {
    max-width: 47.2rem;
    margin: 0 auto 2rem;
    padding-inline: 0;
  }
  .c_line .logo + .ttl {
    display: none;
  }
  .c_lineQR .ttl {
    max-width: 30rem;
    font-size: 2rem;
    display: block;
    padding: 1rem;
    margin-bottom: 0;
  }
  .c_line .row {
    grid-template-columns: repeat(3, 1fr);
  }
  .c_line .txt02 {
    font-size: 2.4rem;
    margin-bottom: 3rem;
  }
  .c_line {
    padding: 6rem 0;
  }
  .c_line .row .box .img {
    width: 18rem;
  }
  .c_line .row .box .txt {
    font-size: 1.8rem;
  }
  /*contact
  ---------------------------------------------------------*/
  .contactTel .c_diagonal {
    font-size: 2.4rem;
  }
  .contactTel .telArea {
    margin: 0 auto;
  }
  .c_reserveTtl {
    display: flex;
    justify-content: center;
    align-items: flex-end;
    padding: 1rem 0 2rem 17rem;
    margin-top: 4rem;
  }
  .c_reserveTtl .ttl {
    text-align: center;
    font-size: 3rem;
  }
  .c_reserveTtl .img {
    width: 15rem;
    position: relative;
    margin: -5rem 0 -2rem 2rem;
  }
  .contactReason .c_orderRow {
    max-width: 100rem;
    width: 90%;
    margin: 0 auto;
    position: relative;
    z-index: 1;
  }
  .contactReason .c_orderRow::before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    bottom: 0;
    left: -50vw;
    right: -50vw;
    background-color: #EAFAFF;
    z-index: -1;
  }
  .c_orderBox .ttl01Row {
    padding-right: 0;
  }
  .c_orderBox .num {
    font-size: 4.5rem;
    margin-top: -1rem;
  }
  .c_orderBox .num::before {
    margin-bottom: 1rem;
  }
  .c_orderBox .ttl01 {
    font-size: 2.4rem;
    white-space: nowrap;
  }
  .c_orderBox .img {
    margin-top: 0;
  }
  #contactReason .c_orderBox .ttl01 {
    font-size: 1.5rem;
  }
  /*inspection
  ---------------------------------------------------------*/
  .inspeLead {
    margin-top: 6.5rem;
  }
  .inspeLead .ttl {
    text-align: center;
    font-size: 3rem;
    padding-right: 10rem;
  }
  .inspeLead .img {
    width: 15rem;
  }
  .inspeLead .row {
    grid-template-columns: repeat(4, 1fr);
  }
  .inspeUse .ttl {
    font-size: 3rem;
  }
  .inspeUse {
    padding: 3rem 0;
  }
  .inspeItem .row {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 1rem 3%;
  }
  .inspeItem .row li {
    width: auto;
  }
  .inspeItem .row .txt {
    padding: 1rem;
  }
  .inspeItem .row .txt br {
    display: none;
  }
  .inspeGive {
    padding: 4rem 0;
  }
  .inspeGive .row .img {
    width: 40rem;
  }
  .inspeGive .row .txt {
    flex: 1;
  }
  .inspeGive .row {
    gap: 5rem;
  }
  .inspeGive .ttl {
    margin-bottom: 3rem;
  }
  .c_orderRow {
    flex-wrap: wrap;
    width: 90%;
    max-width: 100rem;
    margin: 0 auto;
    gap: 4rem 2%;
  }
  ._arrow .c_orderBox {
    padding-top: 2rem;
  }
  ._arrow .c_bgTrape::before {
    top: 0;
  }
  #inspeFlow ._arrow .c_orderBox {
    flex-basis: 49%;
  }
  .c_inspeSec._free {
    margin-top: 6rem;
  }
  .c_inspeSec .row {
    align-items: center;
    width: 90%;
    max-width: 100rem;
    margin: 0 auto;
    gap: 4rem 2%;
  }
  .c_inspeSec .row .img {
    width: 40rem;
  }
  .c_inspeSec .row .txt {
    flex: 1;
  }
  #inspeFlow .c_orderBox.c_bgTrape.bg-be {
    width: 90%;
    max-width: 60rem;
    margin: 0 auto 6rem;
  }
  ._arrow .c_orderBox:not(:last-child)::after,
  .c_arrowBtm::after {
    width: 2rem;
    clip-path: polygon(0 0, 0 100%, 100% 50%);
    aspect-ratio: 4/5;
    right: -2rem;
    left: auto;
    top: 45%;
    bottom: auto;
  }
  .inspeTrouble .bgClr {
    font-size: 2.4rem;
  }
  .inspeTrouble .row {
    justify-content: center;
  }
  .inspeTrouble .row .img {
    width: 13rem;
    margin-right: 2rem;
  }
  .inspeTrouble .row .box {
    font-size: 2.4rem;
    padding-bottom: 2rem;
  }
  .inspeTrouble .box .txt {
    text-align: right;
  }
  #inspeContact {
    background: var(--c_be);
  }
  .c_band {
    display: flex;
    justify-content: center;
    align-items: center;
  }
  .c_band .img {
    position: relative;
    width: 18rem;
    margin: -5rem 0 -1rem 5rem;
  }
  .c_band .txt {
    font-size: 2rem;
  }
  /*line
  ---------------------------------------------------------*/
  .lineLead .row {
    justify-content: center;
    gap: 2rem;
    margin: 4rem 0;
  }
  .lineLead .row .img._logo {
    width: 35rem;
  }
  .lineLead .row .img._line {
    width: 14rem;
  }
  .lineLead .row .img._cross {
    width: 4rem;
  }
  .lineLead .area strong {
    font-size: 3rem;
  }
  .c_numRow {
    grid-template-columns: repeat(1, 1fr);
  }
  .c_numBox {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    background: #fff;
  }
  .c_numBox.onlysp {
    display: none;
  }
  .c_numBox + .c_numBox {
    margin-top: 4rem;
  }
  .c_numBox .img {
    width: 50%;
  }
  .c_numBox .cont {
    width: 50%;
    padding: 2rem 8rem;
  }
  .c_numBox .cont + .img {
    margin-top: 1rem;
  }
  .c_numBox .enTxt {
    font-size: 1.8rem;
    width: 13rem;
    z-index: 1;
  }
  .c_numBox .ttl {
    font-size: 2rem;
  }
  .linePR {
    padding: 4rem 0;
  }
  .linePR .ttl .bgClr {
    padding: 1rem;
  }
  .linePR .txt {
    font-size: 2.4rem;
    margin-top: 3rem;
  }
  .lineFunc {
    padding: 4rem 0;
  }
  .lineFunc .txt {
    text-align: center;
    font-size: 1.8rem;
    margin: 3rem 0;
  }
  #showroomReserve .c_orderBox .ttl01 {
    font-size: 1.6rem;
    color: var(--c_bl);
  }
  /*loan-credit
  ---------------------------------------------------------*/
  .loanAnchor .c_speech .clr-bk {
    display: inline-block;
    font-size: 85%;
    margin-right: 0.2em;
  }
  .loanAnchor .c_speech {
    font-size: 3rem;
  }
  .loanAnchor .link {
    flex: 1;
  }
  .c_person {
    display: flex;
    justify-content: center;
    gap: 5rem;
    margin-top: 5rem;
  }
  .c_personRow:nth-child(n+2) {
    flex-direction: row;
  }
  .c_personRow .img {
    width: 15rem;
  }
  .c_personRow .txt {
    font-size: 2rem;
    padding: 3rem 2rem;
    position: relative;
  }
  .c_personRow .txt::after {
    content: "";
    display: block;
    background-color: var(--c_be);
    clip-path: polygon(100% 8%, 0 35%, 100% 100%);
    width: 2.6rem;
    height: 2rem;
    position: absolute;
    bottom: 2rem;
    left: -2.5rem;
  }
  .c_personRow {
    flex: 1;
    gap: 3rem;
  }
  .loanAnchor .cont ul {
    font-size: 112.5%;
    margin: 2rem 0;
  }
  .loanAnchor .cont li + li {
    margin-top: 0.5rem;
  }
  .loanAnchor .cont li::before {
    font-size: 90%;
    vertical-align: inherit;
  }
  .loanAnchor .cont {
    background: var(--c_be);
    padding: 3rem 8rem;
    margin-top: 4rem;
  }
  .ttlIcon .icon img {
    width: 10rem;
  }
  .ttlIcon h2 .enTxt {
    font-size: 2rem;
  }
  .c_loanTtl {
    font-size: 2.4rem;
    font-weight: 600;
  }
  .loanAffili .row .box {
    flex: 1;
    background: #fff;
  }
  .loanAffili .item .ttl02 {
    font-size: 2rem;
    text-align: center;
  }
  .loanAffili .note {
    font-size: 1.4rem;
  }
  .loanAffili .item dd {
    padding-left: 2rem;
  }
  .loanAffili .item dd:first-of-type {
    padding-top: 2rem;
  }
  .loanAffili .item dd .speech {
    font-size: 1.4rem;
    background-size: contain;
    right: -8.8rem;
    top: -3rem;
    font-weight: 500;
  }
  .loanAffili li h5 {
    font-size: 1.8rem;
  }
  .loanAffili li h5::before {
    vertical-align: 0;
  }
  .loanAffili .c_table {
    width: 100%;
    font-size: 1.2rem;
  }
  .loanAffili .c_table tbody th {
    width: auto;
  }
  .loanAffili .c_table th,
  .loanAffili .c_table td {
    padding: 1rem 0.5rem;
    white-space: nowrap;
  }
  .loanCredit .row {
    align-items: center;
    padding: 3rem;
    gap: 3rem;
    font-feature-settings: "palt";
  }
  .loanCredit .band .txt {
    font-size: 2rem;
    text-align: center;
  }
  .loanCredit .band .img {
    width: 9.5rem;
    right: 10rem;
  }
  .c_loanTtl02 {
    font-size: 2.4rem;
    text-align: center;
  }
  .loanBank .list li {
    font-size: 2rem;
    gap: 2rem;
    padding: 1rem 3rem;
  }
  .loanBank .list {
    margin: 2rem 0 3rem;
  }
  .loanBank .c_table tbody th {
    width: 20rem;
  }
  .loanBank .c_table th,
  .loanBank .c_table td {
    padding: 1rem;
    text-align: center;
  }
  .loanBank .cont {
    margin-bottom: 6rem;
  }
  .loanBank .band .container {
    position: relative;
    display: flex;
    justify-content: center;
    font-size: 2rem;
    padding: 2rem 0;
  }
  .loanBank .band .img {
    width: 10rem;
    bottom: -1.2rem;
  }
  .loanCash .row {
    align-items: center;
    gap: 3rem;
    padding: 3rem;
  }
  .loanCash .row .img {
    width: 40rem;
  }
  /*follow
  ---------------------------------------------------------*/
  #followLead .logo {
    max-width: 35rem;
    margin: 0 auto 3rem;
  }
  .followLead .ttl {
    font-size: 2.4rem;
    margin-bottom: 2rem;
  }
  .followLead .txt {
    font-size: 2rem;
    padding-bottom: 3rem;
    text-align: center;
  }
  .followPoint .c_speech {
    text-align: center;
    font-size: 2rem;
  }
  .c_paintTtl {
    max-width: 100rem;
    margin: 0 auto 3rem;
    font-size: 2rem;
  }
  .followPoint .c_diagonal {
    font-size: 2rem;
  }
  .c_paintWrap .area + .area {
    margin-top: 4rem;
  }
  .followPoint .c_paintBox {
    display: flex;
    align-items: start;
    gap: 3rem;
    padding: 3rem;
    border-radius: 0 20px 0 20px;
  }
  .c_paintBox._imgNone {
    padding-top: 6rem;
  }
  .followPoint .c_paintBox > .img {
    width: 45rem;
  }
  .followPoint .c_paintCont {
    flex: 1;
  }
  .followPoint .c_paintCont .ttl {
    min-height: auto;
    font-size: 2.4rem;
  }
  .followPoint .c_paintBox > .img::after {
    right: -2rem;
    top: auto;
    bottom: -5rem;
  }
  .followPoint .c_paintWrap .area._02 .c_paintBox {
    align-items: flex-start;
  }
  .followPoint .img02 {
    margin-top: 0;
  }
  .followPoint .c_paintWrap .area._02 .c_paintCont {
    display: flex;
    flex-direction: column;
  }
  .followPoint .c_paintBox .txt {
    font-size: 1.6rem;
  }
  .followPoint .human .ttl {
    font-size: 2rem;
    padding: 1rem;
    margin-bottom: 0;
  }
  .followPoint .human .txt {
    font-size: 2rem;
    padding: 1rem;
  }
  .followPoint .human .img {
    width: 15rem;
    margin-right: 2rem;
  }
  .followPoint .human {
    max-width: 75rem;
    margin: 4rem auto 0;
  }
  .followPoint .human .box {
    text-align: center;
  }
  /*degradation
  ---------------------------------------------------------*/
  .degraCheck .checkTtl .c_speech {
    width: fit-content;
    padding: 0.5rem 2rem;
  }
  .degraCheck .checkTtl {
    font-size: 3rem;
  }
  .degraCheck .areaTtl {
    font-size: 3rem;
  }
  .degraCheck .row .box {
    width: 32%;
  }
  .degraCheck .row .box .ttl {
    font-size: 1.8rem;
    padding: 1rem 2rem;
  }
  .degraCheck .row .box .txt {
    font-size: 1.6rem;
    padding: 1.5rem 2rem;
    line-height: 1.6;
  }
  .degraTake .takeTtl {
    font-size: 2.4rem;
    text-align: center;
  }
  .degraTake .row {
    justify-content: center;
  }
  .degraTake .txt {
    flex: none;
    font-size: 2rem;
  }
  .degraTake .row .img {
    width: 12rem;
    margin-left: 2rem;
  }
  .degraTake .row .txt .c_marker {
    font-size: 125%;
  }
  .degraHurt {
    padding: 4rem 0 0;
  }
  .degraHurt .c_speech {
    font-size: 2rem;
    padding: 1rem;
  }
  .degraHurt .box {
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: flex-end;
    gap: 4rem;
    margin-bottom: 10rem;
    position: relative;
  }
  .degraHurt .box .img {
    width: 35rem;
  }
  .degraHurt ul {
    flex: 1;
    gap: 0 2%;
    margin-top: 0;
  }
  .degraHurt li {
    width: 49%;
  }
  .degraHurt .box::after {
    position: absolute;
    right: 0;
    left: 0;
    margin: 0 auto;
    bottom: -8rem;
  }
  .degraHurt .row {
    justify-content: center;
    gap: 3rem;
  }
  .degraHurt .row .txt {
    font-size: 2.4rem;
    flex: none;
  }
  .degraHurt .row .img {
    width: 10rem;
  }
  .c_orderBox._onlyNum {
    padding-top: 3rem;
  }
  .degraOrder .c_orderBox .ttl02 {
    font-size: 2rem;
  }
  /*design
  ---------------------------------------------------------*/
  .designTrouble .ttl {
    font-size: 3rem;
    margin-bottom: 3rem;
  }
  .designTrouble .list {
    width: fit-content;
    margin: 0 auto;
  }
  .designTrouble .list li {
    text-align: left;
    font-size: 1.8rem;
    padding: 1.5rem 2rem;
    display: flex;
    align-items: center;
    text-indent: 0;
  }
  .designTrouble .list li::before {
    width: 2.8rem;
    margin-right: 1.5rem;
  }
  .designPoint .ttl {
    margin-bottom: 1rem;
  }
  .designPoint .c_speech {
    font-size: 3rem;
  }
  .designPoint .pointTtl {
    font-size: 3rem;
    margin-bottom: 2rem;
  }
  .designPoint .pointTtl img {
    width: 32rem;
  }
  .designNew {
    padding: 6rem 0;
  }
  .designNew .ttl01 {
    font-size: 2rem;
    padding: 0.5rem 2rem;
  }
  .designNew .ttl02 {
    font-size: 2.4rem;
    margin-bottom: 5rem;
  }
  .designNew .ttl02 .clr-or {
    font-size: 1.4rem;
  }
  .designNew .row .img {
    width: auto;
  }
  .designNew .row {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 2rem;
  }
  .c_designTtl {
    font-size: 2rem;
    padding: 1.5rem 3rem;
  }
  .c_designTtl .small.w100 {
    width: auto;
  }
  .designPerform .ttl {
    font-size: 2rem;
    margin-top: 5rem;
  }
  .designPerform .row .box dt {
    width: 20rem;
  }
  .designPerform .row {
    gap: 3rem;
    align-items: center;
  }
  .designColor .img,
  .designWeather .img {
    background: #fff;
  }
  .c_designTtl02 {
    font-size: 1.8rem;
  }
  .designWeather .txt02 {
    font-size: 1.6rem;
  }
  .designChalk .row,
  .designRain .row {
    padding: 3rem;
  }
  .designChalk .row .box._our {
    width: 36rem;
  }
  .designRain .box._pollution {
    width: 32.7rem;
  }
  .designChalk .row .box._other,
  .designRain .box._pollution + .box {
    flex: 1;
  }
  .designRecom .row {
    grid-template-columns: repeat(3, 1fr);
  }
  .designRecom .workRow {
    grid-template-columns: repeat(2, 1fr);
    margin-top: 5rem;
  }
  .designRecom .workBox .ttl {
    font-size: 2rem;
    padding: 1rem;
  }
  #designRecom {
    padding-bottom: 6rem;
  }
  #designFlow .slick-dots {
    display: none;
  }
  .ttlEnJa {
    font-size: 1.6rem;
  }
  .ttlEnJa span {
    font-size: 4rem;
  }
  .designRain .box .ttl {
    font-size: 1.8rem;
  }
  /*support
  ---------------------------------------------------------*/
  .supportLead {
    padding-bottom: 4rem;
  }
  .supportLead .ttl01 {
    font-size: 3rem;
    margin-bottom: 4rem;
  }
  .supportLead .ttl02 {
    font-size: 2.2rem;
    margin-bottom: 4rem;
  }
  .supportLead .img {
    max-width: 70rem;
    margin: 0 auto;
  }
  .supportConfirm .c_checkList {
    margin: 3rem auto 6rem;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 1rem 2rem;
  }
  .supportConfirm .c_checkList li {
    font-size: 2rem;
    display: flex;
    align-items: center;
    padding: 1rem 2rem;
    text-indent: 0;
  }
  .supportConfirm .ttl {
    font-size: 2.4rem;
  }
  .supportConfirm .row {
    margin-top: 4rem;
    align-items: center;
    flex-direction: row-reverse;
    gap: 5rem;
  }
  .supportConfirm .row .img {
    width: 50.4rem;
  }
  .supportConfirm .row .txt {
    flex: 1;
    line-height: 1.8;
  }
  .supportConfirm .row + .txt {
    text-align: center;
    font-size: 2rem;
  }
  .c_consul .c_speech {
    font-size: 2.4rem;
    margin-bottom: 3rem;
  }
  .c_consul .img {
    max-width: 45rem;
    margin: 0 auto;
  }
  .supportConsul .ConsulTtl {
    font-size: 2.4rem;
    padding: 3rem 0;
  }
  .supportConsul .c_personRow {
    flex-direction: column;
    gap: 2rem;
  }
  .supportConsul .c_personRow .txt {
    font-size: 1.6rem;
    padding: 2rem;
  }
  .supportConsul .c_person {
    padding: 4rem 0;
  }
  .supportConsul .cont .ttl {
    font-size: 2.4rem;
    text-align: center;
    margin: 6rem auto 3rem;
  }
  .supportConsul .cont .txt {
    font-size: 1.8rem;
    margin-bottom: 3rem;
  }
  .supportConsul .cont .recom {
    font-size: 2rem;
  }
  .supportUse {
    padding: 6rem 0 3rem;
  }
  .supportUse .useTtl {
    font-size: 2.4rem;
    margin-bottom: 4rem;
  }
  .supportUse .area {
    padding: 3rem 2rem;
  }
  .supportUse .area .ttl {
    font-size: 2rem;
    margin-bottom: 3rem;
  }
  .supportUse .row {
    grid-template-columns: repeat(6, 1fr);
    gap: 1rem;
  }
  .supportUse .row .box .txt {
    font-size: 1.6rem;
    font-weight: 500;
  }
  .supportCase .caseTtl {
    font-size: 2.4rem;
  }
  .supportCase .c_speech {
    max-width: 70rem;
    font-size: 2.4rem;
    margin: 0 auto 3rem;
  }
  .supportCase .row {
    grid-template-columns: repeat(2, 1fr);
  }
  .supportCase .row .box .ttl01 {
    font-size: 2.4rem;
  }
  .supportCase .row .box .ttl02 {
    font-size: 2rem;
  }
  .supportCase .row .box .txt {
    font-size: 1.8rem;
  }
  .supportCase .cmtRow {
    justify-content: center;
    padding-top: 6rem;
  }
  .supportCase .cmtRow .txt {
    flex: none;
    font-size: 2.4rem;
  }
  .supportPlan {
    max-width: 80rem;
    margin: 0 auto 6rem;
  }
  .supportPlan .planTtl {
    font-size: 3rem;
  }
  .supportPlan .row .img {
    width: 33rem;
  }
  .supportPlan .row .box {
    padding: 2rem;
  }
  .supportPlan .row .box .ttl01 {
    font-size: 4.8rem;
    margin-bottom: 2rem;
  }
  .supportPlan .row .box .ttl02 {
    font-size: 2.4rem;
    padding: 0.5rem;
  }
  .supportPlan .row .box .price {
    justify-content: center;
  }
  .supportPlan .row .box .num {
    font-size: 10rem;
  }
  .supportPlan .row .box .tax {
    font-size: 1.6rem;
    margin-right: 0.5rem;
    margin-bottom: 0.5rem;
  }
  .supportPlan .row .box .note {
    text-align: center;
    font-size: 1.4rem;
  }
  .c_paintItem .ttl {
    font-size: 3.6rem;
  }
  .c_paintItem ul {
    font-size: 1.8rem;
    margin: 2rem 0 1rem;
  }
  .c_paintItem .note {
    font-size: 1.4rem;
  }
  .supportCaution .ttl01 {
    font-size: 2.4rem;
    margin-bottom: 3rem;
  }
  .supportCaution .ttl02 {
    font-size: 2rem;
  }
  .supportCaution .txt {
    font-size: 1.6rem;
    margin-top: 3rem;
  }
  .supportCaution .bandRow {
    justify-content: center;
    margin-top: 5rem;
  }
  .supportCaution .bandTxt {
    font-size: 2.4rem;
    text-align: center;
  }
  .supportCaution .bandImg {
    right: 10rem;
    width: 11rem;
  }
  .supportCaution .list {
    padding: 3rem 21rem;
  }
  .supportCaution li .txt02 {
    font-size: 1.8rem;
  }
  .supportRecom .row {
    grid-template-columns: repeat(3, 1fr);
  }
  .supportRecom .box dd {
    font-size: 1.6rem;
    text-align: left;
  }
  .supportRecom .box dt .enTxt {
    font-size: 1.8rem;
  }
  .supportCaution {
    padding: 6rem 0;
  }
  /*builder
  ---------------------------------------------------------*/
  .builLead .c_diagonal {
    font-size: 2.4rem;
    margin-bottom: 3rem;
  }
  .builLead .area {
    padding: 3rem 0;
  }
  .builLead .area .container {
    position: relative;
  }
  .builLead .area .ttl {
    font-size: 2.4rem;
    max-width: 70rem;
    margin: 0 auto 3rem;
  }
  .builLead .area .txt {
    font-size: 2.4rem;
    text-align: center;
  }
  .builLead .area .txt img {
    width: 40rem;
  }
  .builLead .area .img {
    bottom: -3rem;
    right: 14rem;
    width: 12rem;
  }
  .builMaker .ttl {
    font-size: 2.4rem;
  }
  .builMaker .c_checkList {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 0 2rem;
  }
  .builMaker {
    padding-top: 4rem;
  }
  .builAnchor .linkRow {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
  }
  .builAnchor .link {
    text-align: center;
    font-size: 1.6rem;
  }
  .builAnchor {
    padding: 3rem 0;
  }
  .c_builder .area .img {
    background: #fff;
    padding: 3rem;
  }
  .c_builder .area .img img {
    max-height: 48rem;
  }
  .c_builderTtl {
    font-size: 3rem;
    margin-bottom: 3rem;
    clip-path: polygon(0% 0%, 100% 0%, 97% 50%, 100% 100%, 0% 100%);
  }
  .c_builder .area .ttl {
    font-size: 2rem;
  }
  .c_builderRowBox {
    margin-top: 6rem;
    max-width: 60rem;
    margin-inline: auto;
  }
  .c_builderRowTtl {
    font-size: 2rem;
  }
  .c_builderAbout .img {
    width: 50%;
  }
  .c_builderAbout .ttl {
    font-size: 2rem;
  }
  .builQual .system .c_speech {
    margin: 5rem auto 3rem;
  }
  .builQual .system .c_speech img {
    display: block;
    margin: 1rem auto;
    max-width: 40rem;
  }
  .builQual .system .box .ttl {
    font-size: 2rem;
  }
  .builQual .system .box li {
    font-size: 1.6rem !important;
  }
  .builQual .system .box .txt {
    font-size: 1.4rem;
  }
  .builCase .c_speech .small {
    font-size: 65%;
    display: inline-block;
  }
  .builCase .row {
    grid-template-columns: repeat(2, 1fr);
    gap: 2rem;
  }
  .builCase .row .box .ttl {
    font-size: 2rem;
  }
  .builMethod .methodTtl {
    padding: 3rem;
  }
  .builMethod .area {
    padding: 5rem 0;
  }
  .builMethod .areaTtl {
    font-size: 2.4rem;
  }
  .builMethod .row .box .img img {
    width: 100%;
  }
  .builMethod .row .box .ttl {
    font-size: 2rem;
    padding: 1rem;
  }
  .builMethod .row .box .txt {
    font-size: 1.6rem;
    padding: 1rem;
  }
  /*menu
  ---------------------------------------------------------*/
  .c_anchorRow {
    justify-content: center;
    flex-wrap: wrap;
  }
  .c_anchorRow .link {
    padding: 1rem 4rem 1rem 2rem;
    border-radius: 0.8rem;
    font-size: 1.8rem;
  }
  .c_anchorRow .link::after {
    right: 1rem;
  }
  .menuPrice .priceTtl .c_speech {
    font-size: 2.4rem;
    max-width: 70rem;
    margin: 0 auto 3rem;
  }
  .menuPrice .priceTtl .ttl {
    font-size: 2.4rem;
  }
  .c_cardBox {
    width: calc((100% - 2rem) / 3);
  }
  .c_cardBox .txt {
    font-size: 1.8rem;
  }
  .c_menuBand .ttl {
    text-align: center;
    font-size: 2.4rem;
  }
  .c_menuBand .img {
    width: 11rem;
    bottom: -4rem;
    right: 7rem;
  }
  .menuRelief {
    padding: 5rem 0 3rem;
  }
  .menuRelief .txt {
    font-size: 1.8rem;
    text-align: center;
  }
  .menuReport .ttl01 {
    font-size: 2.4rem;
  }
  .menuReport .ttl02 {
    font-size: 2rem;
  }
  .menuReport .row {
    align-items: center;
    gap: 5rem;
  }
  .menuReport .rowImg {
    grid-template-columns: repeat(2, 1fr);
    margin: 4rem 0 0;
  }
  .menuReport {
    padding-top: 6rem;
  }
  .c_menuRow {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
  }
  .c_menuRow._column1 {
    max-width: 42rem;
    margin-inline: auto;
    grid-template-columns: repeat(1, 1fr);
  }
  .c_menuBox .ttl01 {
    font-size: 2rem;
  }
  .c_menuBox .ttl01 .num {
    font-size: 125%;
  }
  .c_menuBox .ttl02 {
    font-size: 1.8rem;
  }
  .c_menuBox {
    width: 100%;
    margin-inline: auto;
  }
  .c_menuBox dl {
    display: grid;
    grid-template-columns: 40% 1fr;
    font-size: 1.4rem;
  }
  .c_menuBox dt,
  .c_menuBox dd {
    width: auto;
  }
  .c_menuBox dt {
    white-space: nowrap;
  }
  .c_menuOption .ttl {
    font-size: 2.4rem;
  }
  .c_menuOption .row .txt {
    font-size: 2.4rem;
  }
  .c_menuOption .row {
    padding: 2rem;
  }
  .c_menuOption .note {
    font-size: 1.4rem;
  }
  .c_menuOption {
    padding: 3rem 5rem;
  }
  .menuApart .c_menuBand .img {
    right: 7rem;
  }
  .menuLeak .area {
    margin: 6rem 0;
  }
  .menuLeak .area .c_speech {
    font-size: 2.4rem;
  }
  .menuLeak .area._paint .img {
    max-width: 70rem;
    margin: 0 auto;
  }
  .menuLeak .area .c_table td .clr-rd {
    display: inline-block;
  }
  .menuLeak .area._reform .img {
    max-width: 50rem;
    margin: 0 auto;
  }
  .menuLeak .area .comp .ttl {
    font-size: 2.4rem;
    margin-bottom: 2rem;
  }
  .menuLeak .area .comp .price {
    font-size: 3rem;
  }
  .menuLeak .area .comp .price .num {
    font-size: 5rem;
  }
  .menuLeak .area .comp .txt {
    font-size: 1.6rem;
    text-align: center;
  }
  .menuLeak .area .comp .note {
    font-size: 1.4rem;
    text-align: center;
  }
  .menuLeak .area .comp {
    padding: 3rem 5rem;
  }
  .menuLeak .areaTtl {
    font-size: 3rem;
  }
  /*paint
  ---------------------------------------------------------*/
  .c_menuDetail {
    padding: 6rem 0 !important;
  }
  .c_menuBox._detail .ttl01 {
    font-size: 3rem;
    padding: 1.4rem;
    gap: 0.8rem;
  }
  .c_menuBox._detail .ttl01 .small {
    font-size: 2.2rem;
  }
  .c_menuBox._detail .ttl01 .bgClr {
    font-size: 2rem;
    margin-left: 0.4rem;
  }
  .c_menuBox._detail .item {
    padding: 3.6rem 6rem 4.6rem;
  }
  .c_menuBox._detail .ttl02 {
    font-size: 2.6rem;
    margin: 0 0 2.2rem;
  }
  .c_menuBox._detail .itemRow {
    gap: 3.2rem;
  }
  .c_menuBox._detail .img {
    font-size: 2rem;
    margin: 0;
    width: 48rem;
  }
  .c_menuBox._detail dl {
    flex: 1;
  }
  .c_menuBox._detail .checkRow {
    gap: 2.4rem 2.2rem;
    margin: 3.2rem 0;
    grid-template-columns: repeat(2, 1fr);
  }
  .c_menuBox._detail .checkTtl {
    font-size: 1.8rem;
  }
  .c_menuBox._detail .checkTtl::before {
    width: 1.9rem;
  }
  .c_paintSec .c_speech {
    font-size: 3.2rem;
    padding: 1.2rem 1rem 1.5rem;
  }
  .c_paintSec .c_speech .small {
    font-size: 100%;
  }
  .c_paintSec .ribbonTtl {
    font-size: 2.2rem;
    padding: 1.4rem;
    margin-bottom: 2.2rem;
  }
  .c_paintSec .area + .area {
    margin-top: 6rem;
  }
  /*roof
  ---------------------------------------------------------*/
  .c_menuDetail._roof {
    padding: 1rem 0 !important;
  }
  .c_menuDetail._roof#high-design-inorganic-paint {
    padding-bottom: 8rem !important;
  }
  .roofSec {
    padding: 4rem 0;
  }
  .roofSec#roof-replacement {
    padding-bottom: 8rem;
  }
  .roofSec.pt00 {
    padding-top: 0;
  }
  .roofSec .roofTtl {
    font-size: 3.6rem;
    padding: 1rem 0 2.6rem;
    margin-bottom: 4.2rem;
  }
  .roofSec .row {
    gap: 5rem;
    margin-bottom: 4rem;
    align-items: center;
  }
  .roofSec .row .img {
    width: 48%;
  }
  .roofSec .c_menuBox + .c_menuBox {
    margin-top: 6rem;
  }
  .roofSec .c_menuBox dl {
    width: 37%;
  }
  .roofSec .c_paintItem {
    padding: 2.2rem 1.2rem;
    flex: 1;
  }
  .roofSec .c_paintItem .ttl {
    font-size: 2.2rem;
  }
  .roofSec .c_menuBox .ttl01 {
    font-size: 2.4rem;
    margin-bottom: 2.8rem;
  }
  /*apartment
  ---------------------------------------------------------*/
  .apartSec {
    padding: 0 0 8rem;
  }
  .apartSec .apartTtl {
    font-size: 3.4rem;
    padding: 3.2rem;
    margin-bottom: 4.8rem;
    font-weight: 700;
  }
  .apartSec .apartTtl .fo-din {
    font-size: 53.3%;
    display: block;
    margin-top: 0.4rem;
  }
  .apartSec .apartRow {
    align-items: flex-start;
  }
  .apartSec .apartRow .img {
    width: 34rem;
  }
  .apartSec .apartRow .c_menuRow {
    flex: 1;
    gap: 1rem;
  }
  .apartSec .c_menuBox {
    width: 100%;
    flex: 1;
  }
  .apartSec .c_menuBox .item {
    padding: 1rem;
  }
  .apartSec .c_menuBox .ttl01 {
    font-size: 1.6rem;
    padding: 0.5rem;
  }
  .apartSec .c_menuBox .c_price .num {
    font-size: 3rem;
  }
  .c_priceRow {
    grid-template-columns: repeat(2, 1fr);
  }
  .c_priceBox:nth-last-child(2) {
    border-bottom: none;
    padding-bottom: 0;
    margin-bottom: 0;
  }
  .apartConsul .row {
    gap: 2rem;
    justify-content: center;
  }
  .apartConsul .row .img {
    width: 13.2rem;
  }
  .apartConsul .row .txt {
    font-size: 2rem;
    padding: 3.2rem 0 0;
  }
  .apartConsul .row .txt .bgClr {
    padding: 0.2rem 1rem;
    margin: 0 0.3rem;
  }
  .apartConsul .row .txt .big {
    font-size: 135.7%;
  }
  .apartDesign .c_paintTtl {
    font-size: 2.6rem;
    padding: 3.6rem;
  }
  .apartDesign .c_paintTtl .big {
    font-size: 3.6rem;
  }
  .apartDesign .lead {
    margin: 3.2rem 0;
  }
  .apartDesign .lead h3 {
    font-size: 2.6rem;
    padding: 1.2rem;
  }
  .apartDesign .aboutTtl {
    padding: 2.4rem;
    margin: 0 0 2.5rem;
  }
  .apartDesign .aboutTtl .c_diagonal {
    font-size: 2rem;
    padding: 0 1rem;
    margin-bottom: 1.5rem;
  }
  .apartDesign .aboutTtl .ttl {
    font-size: 3.2rem;
  }
  .apartDesign .row {
    align-items: flex-start;
  }
  .apartDesign .row > div {
    width: 33%;
  }
  .apartDesign .row .box {
    padding: 1.3rem 1.3rem 1.4rem;
  }
  .apartDesign .row .box .num {
    font-size: 4.6rem;
  }
  .apartDesign .row .box .ttl {
    font-size: 2rem;
  }
  .apartDesign .row .boxWrap .need {
    font-size: 2rem;
  }
  .apartDesign .row .boxWrap .need .c_dot {
    font-weight: 700;
  }
  .apartPoint {
    padding-top: 8rem;
  }
  .apartPoint h2 {
    font-size: 2.8rem;
    margin-bottom: 2.8rem;
  }
  .apartPoint h2 .big {
    font-size: 4.1rem;
  }
  .apartPoint ul {
    padding-bottom: 2rem;
    margin-bottom: 4rem;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 2.2rem;
  }
  .apartPoint ul::after {
    width: 2.4rem;
  }
  .apartPoint li {
    gap: 0.8rem;
  }
  .apartPoint li + li {
    margin-top: 0;
  }
  .apartPoint li .point {
    width: 7.9rem;
    font-size: 1.2rem;
    padding: 0.6rem;
  }
  .apartPoint li .txt {
    font-size: 2.5rem;
  }
  .apartPoint .box h3 {
    font-size: 2.2rem;
    padding: 1.2rem;
  }
  .apartPoint .box h3 ._ye {
    font-size: 112.5%;
  }
  .apartPoint .box .txt {
    padding: 2.2rem 1.3rem;
    text-align: center;
    font-size: 1.8rem;
    line-height: 1.7;
  }
  .apartWhy .ttl {
    font-size: 2.8rem;
    padding: 2.5rem;
    margin-bottom: 3.4rem;
  }
  .apartWhy table {
    margin: 0;
  }
  .apartWhy caption {
    font-size: 2.2rem;
    font-weight: 600;
  }
  .apartWhy caption span {
    font-size: 1.4rem;
    display: inline-block;
    margin-left: 1rem;
  }
  .apartWhy table th,
  .apartWhy table td {
    padding: 1.6rem 0.8rem;
  }
  .apartWhy table td:nth-of-type(n+2) {
    width: 15rem;
  }
  .c_apartList {
    margin: 3rem 0 3rem;
  }
  .c_apartList li {
    padding-left: 1.4em;
  }
  .c_apartList li + li {
    margin-top: 0.6rem;
  }
  .c_apartList li::before {
    margin-right: 0.6rem;
  }
  .apartWhy .txt {
    padding: 2.2rem;
    text-align: center;
  }
  .apartPropose h2 {
    font-size: 3.8rem;
  }
  .apartPropose h2 .small {
    font-size: 75%;
  }
  .apartPropose h2 .c_diagonal {
    font-size: 2rem;
  }
  .c_priceTable + .c_priceTable {
    margin-top: 4rem;
  }
  .c_priceTable caption {
    font-size: 2.2rem;
  }
  .c_priceTable th,
  .c_priceTable td {
    padding: 1.6rem 0.8rem;
    font-size: 1.8rem;
  }
  .c_priceTable tr:last-of-type td:nth-of-type(1) {
    font-size: 2rem;
  }
  .apartPropose .txt {
    line-height: 1.8;
    margin-top: 2.4rem;
  }
  .apartLeave {
    padding: 6rem 0 0;
  }
  .apartLeave h2 {
    font-size: 2.6rem;
    margin-bottom: 3.2rem;
  }
  .apartLeave h2 .small {
    font-size: 1.8rem;
  }
  .apartLeave .box .img {
    width: 14rem;
    margin-bottom: 1rem;
  }
  .apartLeave .box h3 {
    font-size: 1.8rem;
    padding-bottom: 0.5rem;
  }
  .apartLeave .box .txt {
    font-size: 1.6rem;
    margin-top: 0.8rem;
    line-height: 1.4;
  }
  .apartLeave .row {
    grid-template-columns: repeat(3, 1fr);
    gap: 1.3rem;
    margin: 1rem 0 0;
    max-width: 80rem;
    margin-inline: auto;
  }
  .apartLeave .row .box h3 {
    padding: 0.5rem 1rem;
  }
  .apartLeave .c_apartList {
    padding: 2.6rem 2.5rem;
    margin: 3rem 0 0;
    line-height: 1.6;
  }
  .apartHelp .ttlRow {
    gap: 1rem;
    padding: 1rem 0 0;
  }
  .apartHelp .ttlRow .img {
    width: 14rem;
    max-width: 100%;
  }
  .apartHelp .ttlRow .ttl {
    font-size: 2.7rem;
  }
  .apartHelp .ttlRow .ttl .bgClr {
    width: 24rem;
  }
  .apartHelp .ttlRow .ttl .big {
    font-size: 114.3%;
  }
  .apartHelp .ttl02 {
    font-size: 2.4rem;
    margin: 4.4rem 0 3rem;
  }
  .apartHelp .ttl02 .clr-rd {
    font-size: 137.5%;
  }
  .apartHelp .row {
    grid-template-columns: repeat(2, 1fr);
    gap: 2.4rem;
    margin-bottom: 2.4rem;
  }
  .apartHelp .row .box:first-of-type::after {
    width: 4.4rem;
    right: -3.4rem;
    bottom: 0.4rem;
  }
  .apartHelp .row .box .txt {
    font-size: 2.3rem;
    margin-top: 1.6rem;
    padding: 1rem;
  }
  .apartHelp .txt02 {
    line-height: 1.8;
  }
  .apartGuaran .c_speech {
    font-size: 2.8rem;
    padding: 1.8rem 1rem;
    margin-bottom: 3rem;
  }
  .apartGuaran .c_table {
    max-width: 54rem;
    margin-inline: auto;
    margin-top: 3rem;
  }
  .apartGuaran .cont {
    margin-top: 6rem;
  }
  .apartGuaran .cont .ttl01 {
    font-size: 2.8rem;
    padding: 1.5rem;
    margin-bottom: 2.8rem;
  }
  .apartGuaran .cont .row {
    grid-template-columns: repeat(2, 1fr);
    gap: 4rem;
    max-width: 100%;
  }
  .apartGuaran .cont .row .box .ttl02 {
    font-size: 2.2rem;
    padding-bottom: 1rem;
  }
  .apartGuaran .cont::after {
    width: 3.6rem;
    margin: 3rem auto;
  }
  .apartGuaran .conc {
    padding: 1.5rem 7rem 2.1rem;
    margin: 0 auto;
    max-width: 53rem;
    border-radius: 1rem;
    align-items: center;
  }
  .apartGuaran .conc .txt {
    font-size: 1.7rem;
  }
  .apartGuaran .conc .img {
    width: 11rem;
    margin-left: 0;
  }
  /*simulation
  ---------------------------------------------------------*/
  .simuSec .row {
    gap: 0.6rem;
  }
  .simuSec .row .box {
    width: 32rem;
    width: 30%;
    padding: 5.5rem 2rem 2.5rem 0;
  }
  .simuSec .row .box .txt {
    text-align: left;
    font-size: 1.4rem;
  }
  .simuSec .speechRow {
    margin: 0rem 0 0.6rem;
    align-items: center;
  }
  .simuSec .speechTxt {
    position: relative;
    background-color: #D1E2FA;
    color: var(--c_bl);
    padding: 1.3rem 1.5rem;
    border-radius: 1rem;
    display: inline-block;
    margin-bottom: 2rem;
    font-weight: 700;
    text-align: left;
    line-height: 1.3;
    font-size: 1.5rem;
    white-space: nowrap;
  }
  .simuSec .speechTxt::after {
    content: "";
    width: 2.7rem;
    height: auto;
    aspect-ratio: 27/23;
    background: url("../img/c_area_speech.svg") center no-repeat;
    background-size: contain;
    display: inline-block;
    position: absolute;
    bottom: -1.6rem;
    right: 2.1rem;
  }
  .simuSec .speechImg {
    width: 10.6rem;
    margin-left: -2rem;
    position: relative;
    z-index: 2;
  }
  .simuSec .freeTxt {
    gap: 0.6rem;
  }
  .simuSec .freeTxt li {
    font-size: 2rem;
    margin: 0;
    width: 6rem;
  }
  .simuSec .freeTxt li._free {
    font-size: 4.3rem;
    width: auto;
    line-height: 1;
    margin: 0 0 1rem -1rem;
    letter-spacing: 0.02em;
  }
  .simuSec .telArea {
    width: auto;
    background: transparent;
    box-shadow: none;
    padding: 0;
  }
  .simuSec .telArea .ttl:before,
  .simuSec .telArea .ttl:after {
    display: none;
  }
  .simuSec .telArea .ttl {
    border-top: 0.1rem solid var(--c_bl);
    border-bottom: 0.1rem solid var(--c_bl);
    font-size: 1.4rem;
  }
  .simuSec .telArea .telnum {
    color: var(--c_bl);
    font-size: 3.5rem;
    background-image: url("../img/icon_fd02.svg");
    background-size: 4.4rem auto;
    padding-left: 4.5rem;
  }
  .simuSec .telArea .teltime {
    color: #000;
    text-align: left;
  }
  .chatBot {
    width: 44rem;
    width: 100%;
    align-content: flex-end;
    height: auto;
    margin-left: 0;
  }
  .chatBot iframe {
    width: 100%;
    height: 100%;
  }
  .simuSec .row .box02 {
    width: 32.4rem;
    width: 30%;
    align-content: center;
    padding-top: 4rem;
    display: none;
  }
}
@media screen and (min-width: 769px) and (min-width: 840px) {
  .chatBot {
    max-width: 60rem;
  }
}
@media screen and (min-width: 769px) and (min-width: 1200px) {
  .chatBot {
    width: 40%;
  }
  .simuSec .row .box02 {
    display: block;
  }
}
@media screen and (min-width: 769px) {
  .simuSec .row .c_awards {
    margin: 0;
    padding: 1.8rem 0 2.8rem !important;
  }
  .simuSec .c_awards {
    padding: 2.2rem 0;
  }
  .simuSec .c_awards .row {
    gap: 0.4rem;
    padding: 0;
  }
  .simuSec .c_awards li {
    width: 10rem;
    background-size: 1.9rem auto;
    padding-bottom: 0;
  }
  .simuSec .c_awards li::before,
  .simuSec .c_awards li::after {
    width: 4.6rem;
  }
  .simuSec .c_awards li .ttl::before {
    width: 1.5rem;
    margin-bottom: 0.2rem;
  }
  .simuSec .c_awards li .ttl {
    font-size: 1.2rem;
  }
  .simuSec .c_awards li .ttl .small {
    font-size: 81.4%;
  }
  .simuSec .c_awards li .txt {
    font-size: 2rem;
  }
  .simuSec .c_awards li .txt .big {
    font-size: 138.7%;
  }
  .simuSec .c_awards li .txt .middle {
    font-size: 64.2%;
  }
  .simuSec .c_awards li .txt .small {
    font-size: 51.8%;
  }
  .simuSec .c_awards li .txt .small02 {
    font-size: 41.7%;
  }
  .simuSec .box02 .txt02 {
    font-size: 2rem;
    font-weight: 900;
    margin-top: 1rem;
    line-height: 1.8;
  }
}
@media screen and (min-width: 769px) {
  /*point
  ---------------------------------------------------------*/
  .pointHow {
    padding-bottom: 4rem;
  }
  .pointHow .ttl01 {
    font-size: 2.3rem;
  }
  .pointHow .ttlRow {
    gap: 2rem;
    margin-bottom: 3.5rem;
  }
  .pointHow .ttlRow .ttl02 {
    font-size: 4.2rem;
  }
  .pointHow .ttlRow .ttl02 .c_speech {
    font-size: 68.3%;
  }
  .pointHow .ttlRow .ttl02 .c_speech::after {
    width: 1.5rem;
  }
  .pointHow .ttlRow .ttl02 .small {
    font-size: 74.3%;
  }
  .pointHow .ttlRow .img {
    width: 11.4rem;
  }
  .pointHow .txt {
    line-height: 1.8;
    font-size: 1.7rem;
  }
  .c_anchorRow .num {
    font-size: 2rem;
  }
  .c_pointTtl {
    font-size: 3.2rem;
    padding: 4.6rem 2rem 2.2rem;
    margin: 0 0 4rem;
  }
  .c_pointTtl._small {
    font-size: 2.8rem;
  }
  .c_pointTtl .bgClr {
    font-size: 1.8rem;
  }
  .c_point .lead {
    margin-bottom: 3.2rem;
    line-height: 2;
  }
  .pointCost.c_point .lead {
    margin-bottom: 1.4rem;
    font-size: 1.8rem;
  }
  .c_table._paint {
    margin-bottom: 3.4rem;
  }
  .c_table._paint th,
  .c_table._paint td {
    width: 33% !important;
    padding: 1.6rem 1rem;
    font-size: 1.8rem;
  }
  .c_pointCheck {
    margin-top: 2.7rem;
  }
  .c_pointCheckTtl {
    font-size: 3.2rem;
    padding: 0.9rem 1rem 1.2rem;
  }
  .c_pointCheckTtl::before {
    width: 2.6rem;
    margin-right: 0.9rem;
  }
  .c_pointCheckTxt {
    padding: 2.2rem 4.4rem;
    line-height: 1.8;
  }
  .pointPrice .c_table {
    max-width: 50rem;
    margin-inline: auto;
  }
  .pointPrice .c_table th {
    width: 20rem;
  }
  .pointPrice .c_table th,
  .pointPrice .c_table td {
    padding: 1.6rem 3rem;
  }
  .pointUnit .row {
    grid-template-columns: repeat(2, 1fr);
    gap: 2rem;
  }
  .pointUnit .row .box {
    padding: 1.8rem 2.2rem 2rem;
  }
  .pointUnit .row .box .ttlRow {
    gap: 2rem;
  }
  .pointUnit .row .box .ttlRow .enTxt {
    font-size: 2.2rem;
  }
  .pointUnit .row .box .ttl {
    font-size: 2rem;
  }
  .pointUnit .c_table {
    margin-top: 6rem;
  }
  .c_pointCaption {
    font-size: 2.4rem;
    margin-bottom: 1.3rem;
  }
  .pointUnit .c_table tbody th {
    width: 20.4rem;
    height: auto;
  }
  .pointUnit .c_table th,
  .pointUnit .c_table td {
    padding: 1.8rem 3rem;
  }
  .pointPaint .row {
    grid-template-columns: repeat(4, 1fr);
    gap: 5.5rem;
    padding: 3.3rem 3rem;
  }
  .pointPaint .row .box {
    grid-column: 2/3;
  }
  .pointPaint .row .box:nth-child(2) {
    grid-column: 3/4;
  }
  .pointPaint .row .box .img {
    width: 6rem;
    margin-bottom: 1.2rem;
  }
  .pointPaint .row .box .ttl {
    font-size: 1.8rem;
    padding: 0.4rem 3rem;
    margin-bottom: 0.6rem;
    display: inline-block;
  }
  .pointPaint .row .box .txt {
    font-size: 2rem;
    text-align: center;
  }
  .pointPaint .row .box .txt .num {
    display: inline-block;
    margin: 0 0.2rem;
    vertical-align: -0.2rem;
  }
  .pointWarranty .graph {
    margin-top: 6.8rem;
  }
  .pointWarranty .graph .ttl {
    padding: 0.8rem 3rem;
    margin-bottom: 0.2rem;
    font-size: 3.2rem;
  }
  .pointWarranty .graph .txt {
    font-size: 2.8rem;
    line-height: 1.6;
  }
  .pointWarranty .graph .source {
    font-size: 1.4rem;
    margin-bottom: 2rem;
  }
  .pointWarranty .graph .img {
    width: 100%;
  }
  .pointConc {
    padding-top: 2rem;
  }
  .pointConc .ttlWrap {
    margin-bottom: 2rem;
  }
  .pointConc .ttlRow {
    gap: 2rem;
  }
  .pointConc .ttlRow .img {
    width: 14.5rem;
  }
  .pointConc .ttlRow .ttl {
    font-size: 2.5rem;
  }
  .pointConc .ttlRow .ttl .bgClr {
    padding: 0.2rem 1.6rem;
  }
  /*paint-diagnosis
  ---------------------------------------------------------*/
  .paintDiag_q .ttlRow {
    gap: 0.4rem;
    margin: 0 -6%;
  }
  .paintDiag_q .ttlRow .ttl {
    font-size: 2.4rem;
    padding: 1.7rem 0 0.9rem;
    line-height: 1.8;
  }
  .paintDiag_q .ttlRow .ttl .c_dot:first-of-type {
    margin-left: 1em;
  }
  .paintDiag_q .ttlRow .img {
    width: 12rem;
  }
  .paintDiag_q .lead {
    margin: 3.2rem 0;
    line-height: 1.8;
  }
  .paintDiag_q .question .ttl {
    margin: 0 0 3rem;
    padding: 1.6rem 2rem;
    gap: 1.8rem;
    font-size: 2.4rem;
  }
  .paintDiag_q .question .ttl .num {
    font-size: 3.2rem;
    padding: 0.8rem 0.8rem 1rem;
  }
  .paintDiag_q .question .select {
    gap: 1rem 1%;
    flex-wrap: wrap;
  }
  .paintDiag_q .question .select p {
    font-size: 2rem;
    padding: 2rem;
    width: 49.5%;
    align-content: center;
  }
  .paintDiag_q .question .select p.back {
    padding: 1.4rem;
    width: 100%;
  }
  .paintDiag_a .c_diagonal {
    font-size: 3.3rem;
    margin-bottom: 1.8rem;
  }
  .paintDiag_a .c_menuBox._detail .itemRow {
    align-items: center;
  }
  .paintDiag_a .c_menuBox dl {
    grid-template-columns: 13rem 1fr;
  }
  .paintDiag_a .c_menuBox dt,
  .paintDiag_a .c_menuBox dd {
    padding: 2rem 1.5rem;
  }
  .paintDiag_a .c_menuBox dt {
    font-size: 1.6rem;
  }
  .paintDiag_a .c_menuBox dd {
    font-size: 2rem;
    padding-left: 2.5rem;
  }
  .paintDiag_a .c_menuBox._detail .img {
    margin-bottom: 0;
  }
}
@media screen and (min-width: 769px) and (max-width: 1150px) {
  html {
    font-size: 0.8695652vw;
  }
}
@media screen and (max-width: 767px) {
  .mansionCopy {
    padding: 0;
  }
}
.mansionCopy-img {
  max-width: 1200px;
  width: 100%;
  margin: 0 auto;
  position: relative;
}
.mansionCopy-img-txt {
  position: absolute;
  top: 20%;
  left: 0;
  right: 0;
  color: #fff;
  letter-spacing: 0.2rem;
  font-size: 1.8rem;
  text-shadow: var(--c_rd) 4px 0, var(--c_rd) -4px 0, var(--c_rd) 0 -4px, var(--c_rd) 0 4px, var(--c_rd) 4px 4px, var(--c_rd) -4px 4px, var(--c_rd) 4px -4px, var(--c_rd) -4px -4px, var(--c_rd) 2px 4px, var(--c_rd) -2px 4px, var(--c_rd) 2px -4px, var(--c_rd) -2px -4px, var(--c_rd) 4px 2px, var(--c_rd) -4px 2px, var(--c_rd) 4px -2px, var(--c_rd) -4px -2px;
}
@media screen and (min-width: 768px) {
  .mansionCopy-img-txt {
    font-size: 5rem;
    top: 35%;
  }
}
.mansionCopy-img-txt .txtPoint {
  position: relative;
}
.mansionCopy-img-txt .txtPoint::before {
  content: "・";
  position: absolute;
  left: 0;
  top: -2rem;
}
@media screen and (min-width: 768px) {
  .mansionCopy-img-txt .txtPoint::before {
    top: -4rem;
  }
}

.mansionMenuList-li {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 4rem;
}
@media screen and (max-width: 767px) {
  .mansionMenuList-li {
    grid-template-columns: 1fr;
    gap: 3rem;
  }
}
.mansionMenuList-li-itm {
  border: 2px solid var(--c_bl);
  border-radius: 1rem;
  overflow: hidden;
}
.mansionMenuList-dtl > img {
  margin: 1.5rem 3%;
  width: 94%;
}
.mansionMenuList-dtl-ttl {
  background: var(--c_bl);
  padding: 1.5rem 2rem;
  font-size: 2rem;
  color: var(--c_wh);
  font-weight: 700;
}
.mansionMenuList-dtl-img {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 2rem;
  margin: 1.5rem auto;
  width: 96%;
}
@media screen and (max-width: 767px) {
  .mansionMenuList-dtl-img {
    grid-template-columns: 1fr;
    width: 90%;
  }
}
.mansionMenuList-lnk {
  background-color: var(--c_or);
  padding: 1.5rem 2rem;
  font-size: 1.8rem;
  color: #fff;
  display: block;
  text-align: left;
  font-weight: 700;
  position: relative;
  display: flex;
  align-items: center;
}
.mansionMenuList-lnk::after {
  content: "";
  width: 2rem;
  height: auto;
  aspect-ratio: 1;
  background: var(--c_ye) url(../img/arrow_bl.svg) 60% 50% no-repeat;
  background-size: 38% auto;
  display: inline-block;
  border-radius: 50%;
  position: absolute;
  top: calc(50% - 1rem);
  right: 1.5rem;
  transform: rotate(90deg);
}

.mansionMenuOthers {
  margin-top: 8rem;
  border: 4px solid var(--c_bl);
  border-radius: 1rem;
  overflow: hidden;
}

.mansionMenuPoint {
  border: 2px solid var(--c_aq);
  border-radius: 1rem;
  margin-top: 3rem;
  overflow: hidden;
  display: grid;
  width: 96%;
  margin: 0 auto 2rem;
  grid-template-columns: 25% 75%;
  align-items: center;
}
@media screen and (max-width: 767px) {
  .mansionMenuPoint {
    width: 90%;
    grid-template-columns: 1fr;
  }
}
.mansionMenuPoint-ttl {
  background: var(--c_aq);
  color: #fff;
  font-size: 2.4rem;
}
@media screen and (max-width: 767px) {
  .mansionMenuPoint-ttl {
    font-size: 1.8rem;
  }
}
.mansionMenuPoint-ttl::before {
  content: "POINT";
  display: block;
  font-weight: 700;
  color: var(--c_ye);
  font-size: 2.8rem;
}
@media screen and (max-width: 767px) {
  .mansionMenuPoint-ttl::before {
    font-size: 2.2rem;
  }
}
.mansionMenuPoint-ttl .text-L {
  display: block;
}
.mansionMenuPoint-dtl {
  font-size: 2.6rem;
  padding: 1.5rem;
  font-weight: 700;
  color: var(--c_or);
}
@media screen and (max-width: 767px) {
  .mansionMenuPoint-dtl {
    font-size: 1.8rem;
  }
}

.mansionSlideArea {
  position: relative;
  z-index: 1;
}

.mansionRsn-dtl {
  text-align: left;
  padding: 0 2rem;
  position: relative;
  z-index: 1;
}
@media screen and (max-width: 767px) {
  .mansionRsn-dtl {
    padding: 0 1rem;
  }
}
.mansionRsn-dtl-ttl {
  font-size: 3.2rem;
  background: var(--c_bl);
  border-radius: 0.5rem;
  overflow: hidden;
  color: #fff;
}
@media screen and (max-width: 767px) {
  .mansionRsn-dtl-ttl {
    font-size: 1.6rem;
    display: grid;
    grid-template-columns: auto 1fr;
    padding-right: 1rem;
    align-items: center;
  }
}
.mansionRsn-dtl-ttl .text-Num {
  margin-right: 2rem;
  background: var(--c_ye);
  padding: 0.5rem 1rem;
  display: inline-block;
  color: #000;
}
@media screen and (max-width: 767px) {
  .mansionRsn-dtl-ttl .text-Num {
    font-size: 1.6rem;
    display: grid;
    padding: 1.5rem 1rem;
    margin-right: 1rem;
  }
}
.mansionRsn-dtl-subttl {
  font-size: 2.4rem;
  margin: 2rem 0;
  padding-left: 1rem;
  border-left: 6px solid var(--c_ye);
}
@media screen and (max-width: 767px) {
  .mansionRsn-dtl-subttl {
    font-size: 1.6rem;
    margin: 1rem 0;
  }
}
.mansionRsn-dtl-inf {
  margin-top: 2rem;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 2rem;
  font-size: 2rem;
}
@media screen and (max-width: 767px) {
  .mansionRsn-dtl-inf {
    grid-template-columns: 1fr;
    font-size: 1.6rem;
  }
}
.mansionRsn .slick-arrow {
  font-size: 0;
  width: 4rem;
  height: 4rem;
  border-radius: 50%;
  position: absolute;
  top: calc(50% - 1.5rem);
  background: var(--c_or);
  display: grid;
  align-items: center;
  justify-content: center;
  z-index: 2;
  transition: linear 0.2s;
}
@media screen and (max-width: 767px) {
  .mansionRsn .slick-arrow {
    width: 3rem;
    height: 3rem;
    top: 22%;
  }
}
.mansionRsn .slick-arrow:hover {
  opacity: 0.8;
}
.mansionRsn .slick-arrow::before {
  position: absolute;
  top: calc(50% - 0.6rem);
  content: "";
  display: block;
  height: 1.2rem;
  aspect-ratio: 0.8660254038;
  background: var(--c_wh);
}
.mansionRsn .slick-next {
  right: -2rem;
}
@media screen and (max-width: 767px) {
  .mansionRsn .slick-next {
    right: -1rem;
  }
}
.mansionRsn .slick-next::before {
  left: calc(50% - 0.4rem);
  clip-path: polygon(0 0, 100% 50%, 0 100%);
}
.mansionRsn .slick-prev {
  left: -2rem;
}
@media screen and (max-width: 767px) {
  .mansionRsn .slick-prev {
    left: -1rem;
  }
}
.mansionRsn .slick-prev::before {
  left: calc(50% - 0.6rem);
  clip-path: polygon(100% 0, 0 50%, 100% 100%);
}

.Adr {
  position: relative;
  z-index: 0;
  padding: 13.3333333333vw 0;
  background-color: #f0f0f0;
}

@media screen and (min-width: 768px) {
  .Adr {
    padding: 80px 0;
  }
}
.Adr .trouble {
  margin-bottom: 13.3333333333vw;
}

@media screen and (min-width: 768px) {
  .Adr .trouble {
    margin-bottom: 140px;
  }
}
.Adr .trouble .ttl {
  width: 100%;
  margin-bottom: 2.6666666667vw;
}

@media screen and (min-width: 768px) {
  .Adr .trouble .ttl {
    width: 698px;
    margin: 0 auto 40px;
  }
}
.Adr .trouble .img {
  width: 100%;
  margin-bottom: 8vw;
}

@media screen and (min-width: 768px) {
  .Adr .trouble .img {
    width: 928px;
    margin: 0 auto 60px;
  }
}
.Adr .trouble .solution {
  position: relative;
  font-size: 6vw;
  text-align: center;
  line-height: 1.2;
  background-color: var(--c_bl);
  color: #fff;
  padding: 4vw 0;
  margin: 0 -5.3333333333vw;
}

@media screen and (min-width: 768px) {
  .Adr .trouble .solution {
    font-size: 4.5rem;
    padding: 30px 0;
    margin: 0;
  }
}
@media screen and (min-width: 768px) {
  .Adr .trouble .solution::before {
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    display: block;
    content: "";
    width: 100vw;
    height: 100%;
    z-index: -5;
    background-color: var(--c_bl);
  }
}
.Adr .trouble .solution::after {
  position: absolute;
  bottom: -5.3333333333vw;
  left: 0;
  display: block;
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 5.3333333333vw 50vw 0 50vw;
  border-color: var(--c_bl) transparent transparent transparent;
}

@media screen and (min-width: 768px) {
  .Adr .trouble .solution::after {
    bottom: -40px;
    left: 50%;
    transform: translateX(-50%);
    border-width: 40px 50vw 0 50vw;
  }
}
.Adr .trouble .solution .txt span {
  color: var(--c_ye);
}

.Adr .description {
  margin-bottom: 8vw;
}

@media screen and (min-width: 768px) {
  .Adr .description {
    display: flex;
    justify-content: space-between;
    margin-bottom: 60px;
  }
}
.Adr .description .note {
  margin-bottom: 8vw;
}

@media screen and (min-width: 768px) {
  .Adr .description .note {
    margin-bottom: 0;
  }
}
.Adr .description .note .ttl {
  font-size: 5.3333333333vw;
  text-align: center;
  color: var(--c_bl);
  margin-bottom: 4vw;
}

@media screen and (min-width: 768px) {
  .Adr .description .note .ttl {
    font-size: 3rem;
    margin-bottom: 20px;
    text-align: inherit;
  }
}
.Adr .description .img {
  width: 89.3333333333vw;
}

@media screen and (min-width: 768px) {
  .Adr .description .img {
    width: 500px;
    flex: 1 0 auto;
    margin-left: 40px;
  }
}
.Adr .lists {
  margin-bottom: 8vw;
}

@media screen and (min-width: 768px) {
  .Adr .lists {
    display: flex;
    justify-content: space-between;
    margin-bottom: 60px;
  }
}
.Adr .lists li {
  width: 84vw;
  margin: 0 auto;
}

@media screen and (min-width: 768px) {
  .Adr .lists li {
    width: 320px;
  }
}
.Adr .lists li:not(:last-child) {
  margin-bottom: 5.3333333333vw;
}

@media screen and (min-width: 768px) {
  .Adr .lists li:not(:last-child) {
    margin-bottom: 0;
  }
}
.Adr .conc {
  position: relative;
}

.Adr .conc .txt {
  width: 81.2vw;
  margin: 0 auto;
}

@media screen and (min-width: 768px) {
  .Adr .conc .txt {
    width: 718px;
  }
}
.Adr .conc .deco {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: -5;
}

.Adr .conc .deco01 {
  width: 46.2666666667vw;
  margin: 42.6666666667vw 0 0 32vw;
}

@media screen and (min-width: 768px) {
  .Adr .conc .deco01 {
    width: 276px;
    margin: 160px 0 0 370px;
  }
}
.Adr .conc .deco02 {
  width: 45.2vw;
  margin: -32vw 0 0 -29.3333333333vw;
}

@media screen and (min-width: 768px) {
  .Adr .conc .deco02 {
    width: 256px;
    margin: -90px 0 0 -410px;
  }
}
.pc-only {
  display: block !important;
}

.sp-only {
  display: none !important;
}

@media screen and (max-width: 768px) {
  .pc-only {
    display: none !important;
  }
  .sp-only {
    display: block !important;
  }
}
.h-page-title02 {
  background: var(--c_bl);
  padding: 1.5rem 2.5rem;
  text-align: center;
  color: var(--c_wh);
  font-size: 2.8rem;
  font-weight: 700;
  line-height: 1.75;
  letter-spacing: 0em;
  position: relative;
  z-index: 1;
}
@media screen and (max-width: 767px) {
  .h-page-title02 {
    font-size: 2rem;
  }
}

.l-page-apartment-block01 {
  padding: 10rem 0 11rem;
  background: #e5e8d6;
}

.l-page-apartment-block01 * {
  box-sizing: border-box;
}

.l-page-apartment-block01-table {
  display: block;
  text-align: center;
  font-size: 0;
}

.l-page-apartment-block01-table-list {
  width: 50%;
  display: inline-block;
  vertical-align: top;
  text-align: center;
  padding-bottom: 2rem;
}

.l-page-apartment-block01-table-list:nth-of-type(odd) {
  padding-right: 3rem;
}

.l-page-apartment-block01-table-list:nth-of-type(even) {
  padding-left: 3rem;
}

.l-page-apartment-block01-table-list:last-of-type {
  padding-right: 0;
  padding-left: 0;
}

.l-page-apartment-block01-table-list > p {
  display: inline-block;
  border-radius: 50%;
  width: 10rem;
  height: 10rem;
  background: #006835;
  text-align: center;
  color: #ffffff;
  font-size: 3.6rem;
  font-weight: 700;
  line-height: 2.6;
  letter-spacing: 0em;
  position: relative;
  z-index: 2;
}

.l-page-apartment-block01-table-list-box {
  border-radius: 2rem;
  background: #ffffff;
  padding: 6.5rem 4rem 3rem;
  margin-top: -5rem;
  position: relative;
  z-index: 1;
}

.l-page-apartment-block01-table-list-box > div {
  display: block;
}

.l-page-apartment-block01-table-list-box > div h4 {
  border-radius: 1rem;
  background: #e8f2c6;
  padding: 1rem 0.5rem;
  text-align: center;
  color: #333333;
  font-size: 2.4rem;
  font-weight: 700;
  line-height: 1.75;
  letter-spacing: 0em;
}

.l-page-apartment-block01-table-list-box > div h4 + p {
  display: block;
  padding-top: 1.5rem;
  text-align: center;
  color: #333333;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.75;
  letter-spacing: 0em;
}

.l-page-apartment-block01-table-list-box > picture {
  display: block;
  padding-top: 1.5rem;
}

.l-page-apartment-block01-table-list-box > picture img {
  width: 100%;
  height: auto;
}

.l-page-apartment-block01-table-list-table {
  margin-top: 2rem;
  width: 100%;
  display: table !important;
}

.l-page-apartment-block01-table-list-table > * {
  display: table-cell;
  vertical-align: top;
}

.l-page-apartment-block01-table-list-table p {
  width: 30rem;
  text-align: left;
  color: #333333;
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 1.625;
  letter-spacing: 0em;
}

.l-page-apartment-block01-table-list-table picture {
  width: auto;
  text-align: center;
}

.l-page-apartment-block01-table-list-table picture img {
  width: 10.4rem;
  height: auto;
}

.l-page-apartment-block02 {
  padding-top: 10rem;
}

.l-page-apartment-block02.type02 {
  padding-bottom: 12rem;
}

.l-page-apartment-block02 * {
  box-sizing: border-box;
}

.l-page-apartment-block02-inner {
  margin: 0 auto;
}

.l-page-apartment-block02-box {
  border-radius: 2rem;
  background: #ffffff;
  padding: 10rem 10rem;
}

.l-page-apartment-block02-box-title {
  border-top: 0.2rem solid var(--c_bl);
  border-bottom: 0.2rem solid var(--c_bl);
  background: var(--c_bl);
  min-height: 14.9rem;
  padding: 3rem 0;
}

.l-page-apartment-block02-box-title.type02 {
  background: var(--c_bl);
  color: var(--c_wh);
  min-height: 15.6rem;
  padding: 3rem 0;
}

.l-page-apartment-block02-box-title p,
.l-page-apartment-block02-box-title h3 {
  text-align: center;
  font-size: 3.6rem;
  font-weight: 700;
  line-height: 1.38;
  letter-spacing: 0em;
  color: var(--c_wh);
}

.l-page-apartment-block02-box-title p span,
.l-page-apartment-block02-box-title h3 span {
  text-align: center;
  color: var(--c_ye);
  font-size: 4.6rem;
  font-weight: 700;
  line-height: 1.08;
  letter-spacing: 0em;
}

.l-page-apartment-block02-box-image {
  padding-top: 6rem;
  padding-bottom: 6rem;
  text-align: center;
  font-size: 0;
}

.l-page-apartment-block02-box-image picture {
  width: 50%;
  display: inline-block;
  vertical-align: top;
  padding-bottom: 1rem;
}

.l-page-apartment-block02-box-image picture:nth-of-type(odd) {
  padding-right: 2rem;
}

.l-page-apartment-block02-box-image picture:nth-of-type(even) {
  padding-left: 2rem;
}

.l-page-apartment-block02-box-image picture img {
  width: 100%;
  height: auto;
}

.l-page-apartment-block02-box-image p {
  display: inline-block;
  background: var(--c_ye);
  padding: 0.7rem 4rem;
  text-align: center;
  color: var(--c_bl);
  font-size: 3.4rem;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0em;
  width: 50%;
  margin-top: 2rem;
}

.l-page-apartment-block02-box-question {
  padding: 4rem 0 3.5rem;
  background: url(img/first/bg-question.png) bottom center no-repeat transparent;
  background-size: 78rem auto;
  text-align: center;
}

.l-page-apartment-block02-box-question p {
  width: 78rem;
  display: inline-block;
  padding-top: 4rem;
  text-align: center;
  background: url(img/first/img-question.png) right top no-repeat transparent;
  background-size: 5.7rem auto;
  min-height: 8.5rem;
  text-align: center;
  color: #333333;
  font-size: 2.4rem;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0em;
}

.l-page-apartment-block02-box-table {
  width: 100%;
  display: table;
  margin-top: 3rem;
  margin-bottom: 1.5rem;
}

.l-page-apartment-block02-box-table > div {
  display: table-cell;
  vertical-align: top;
}

.l-page-apartment-block02-box-table-image {
  width: 32rem;
  text-align: center;
}

.l-page-apartment-block02-box-table-image picture {
  display: block;
  text-align: center;
}

.l-page-apartment-block02-box-table-image picture img {
  width: 32rem;
  height: auto;
}

.l-page-apartment-block02-box-table-image p {
  padding-top: 1.5rem;
  text-align: center;
  color: #333333;
  font-size: 2.4rem;
  font-weight: 700;
  line-height: 1.25;
  letter-spacing: 0em;
}

.l-page-apartment-block02-box-table-image p span {
  text-align: center;
  color: var(--c_aq);
  font-size: 2.4rem;
  font-weight: 700;
  line-height: 1.25;
  letter-spacing: 0em;
}

.l-page-apartment-block02-box-table-arrow {
  width: 7rem;
  text-align: center;
  padding-top: 8rem;
}

.l-page-apartment-block02-box-table-arrow picture {
  text-align: center;
}

.l-page-apartment-block02-box-table-arrow picture img {
  width: 2.4rem;
  height: auto;
}

.l-page-apartment-block02-box-message {
  padding: 5.5rem 0 7.5rem;
  background: url(img/menu/apartment-img07-5_pc.png) top center no-repeat transparent;
  background-size: 3.6rem auto;
  min-height: 3.5rem;
  text-align: center;
  color: #333333;
  font-size: 2.8rem;
  font-weight: 700;
  line-height: 1.07;
  letter-spacing: 0em;
}

.l-page-apartment-block02-box-message span {
  text-align: center;
  color: #333333;
  font-size: 3.6rem;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0em;
}

.l-page-apartment-block02-box-message span.color01 {
  text-align: center;
  color: var(--c_or);
  font-size: 3.6rem;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0em;
}

.l-page-apartment-block02-box-title02 {
  border-radius: 0.5rem;
  background: var(--c_aq);
  padding: 1.5rem 1rem;
  text-align: center;
  color: var(--c_wh);
  font-size: 2.4rem;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0em;
}

.l-page-apartment-block02-box-title02 span {
  text-align: center;
  color: var(--c_ye);
  font-size: 2.4rem;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0em;
}

.l-page-apartment-block02-box-block {
  padding-top: 6rem;
  width: 70%;
  margin: 0 auto;
}

.l-page-apartment-block02-box-block-table {
  width: 100%;
  display: table;
  border-top: 0.1rem solid #c9cbc0;
}

.l-page-apartment-block02-box-block-table:last-of-type {
  border-bottom: 0.1rem solid #c9cbc0;
}

.l-page-apartment-block02-box-block-table > div {
  display: table-cell;
  vertical-align: middle;
}

.l-page-apartment-block02-box-block-table-left {
  width: 28rem;
  text-align: left;
  padding: 1.5rem 3.8rem 1.5rem 2.2rem;
}

.l-page-apartment-block02-box-block-table-left p {
  display: inline-block;
  border-radius: 2rem;
  background: var(--c_ye);
  padding: 0.5rem 4.5rem;
  vertical-align: middle;
  text-align: left;
  color: var(--c_wh);
  font-size: 3.6rem;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0em;
}

.l-page-apartment-block02-box-block-table-left p span {
  padding-right: 1.5rem;
  text-align: left;
  color: var(--c_wh);
  font-size: 2.4rem;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0em;
  position: relative;
  top: -0.3rem;
}

.l-page-apartment-block02-box-block-table-right {
  width: auto;
  text-align: left;
}

.l-page-apartment-block02-box-block-table-right p {
  text-align: left;
  font-size: 2.4rem;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: 0em;
}

.l-page-apartment-block02-box-block-table-right p span {
  text-align: left;
  color: var(--c_bl);
  font-size: 2.4rem;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0em;
}

.l-page-apartment-block02-box-message02 {
  padding-top: 9rem;
  background: url(common/img/mansion/apartment-icon07-1_pc.png) top 3.7rem center no-repeat transparent;
  background-size: 5.1rem auto;
  min-height: 3.5rem;
  text-align: center;
  font-size: 2.4rem;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0em;
}

.l-page-apartment-block02-box-message02 span {
  text-align: center;
  color: var(--c_or);
  font-size: 2.4rem;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0em;
}

.l-page-apartment-block02-box-box01 {
  margin-top: 2.5rem;
  margin-bottom: 8rem;
  border-radius: 1rem;
  background: var(--c_or);
  padding: 3rem 1rem;
  text-align: center;
  color: #ffffff;
  font-size: 2.4rem;
  font-weight: 700;
  line-height: 1.83;
  letter-spacing: 0em;
}

.l-page-apartment-block02-box-caution {
  padding-top: 3.5rem;
  text-align: left;
  color: var(--c_bl);
  font-size: 2rem;
  font-weight: 500;
  line-height: 1.75;
  letter-spacing: 0em;
}

.l-page-apartment-block02-box-table03 {
  padding-top: 1.5rem;
  padding-bottom: 1.5rem;
}

.l-page-apartment-block02-box-table03 table {
  width: 100%;
  border-collapse: separate;
}

.l-page-apartment-block02-box-table03 table tr th {
  width: 16.6%;
  padding: 1.5rem 2rem;
  background: var(--c_be);
  text-align: center;
  border-top: 0.1rem solid var(--c_gy);
  border-left: 0.1rem solid var(--c_gy);
  color: #333333;
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.75;
  letter-spacing: -0.05em;
}

.l-page-apartment-block02-box-table03 table tr:first-of-type th:first-of-type {
  border-radius: 0;
}

.l-page-apartment-block02-box-table03 table tr:first-of-type th:last-of-type {
  border-radius: 0;
  border-right: 0.1rem solid #c9cbc0;
}

.l-page-apartment-block02-box-table03 table tr td {
  text-align: center;
  padding: 1.5rem 2rem;
  background: #ffffff;
  border-top: 0.1rem solid #c9cbc0;
  border-left: 0.1rem solid #c9cbc0;
  border-bottom: none;
  color: #333333;
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 1.75;
  letter-spacing: -0.05em;
}

.l-page-apartment-block02-box-table03 table tr td:last-of-type {
  border-right: 0.1rem solid #c9cbc0;
}

.l-page-apartment-block02-box-table03 table tr td.td-01 {
  background: var(--c_ye);
}

.l-page-apartment-block02-box-table03 table tr:last-of-type td {
  border-bottom: 0.1rem solid #c9cbc0;
}

.l-page-apartment-block02-box-table03 table tr:last-of-type td:first-of-type {
  border-radius: 0;
}

.l-page-apartment-block02-box-table03 table tr:last-of-type td:last-of-type {
  border-radius: 0;
}

.l-page-apartment-block02-box-message03 {
  text-align: left;
  color: #333333;
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 1.75;
  letter-spacing: 0em;
}

.l-page-apartment-block02-box-message03 i {
  padding: 0 0.5rem;
}

.l-page-apartment-block02-box-box02 {
  margin-top: 2.5rem;
  margin-bottom: 8rem;
  border-radius: 1rem;
  background: var(--c_be);
  padding: 2rem 2.5rem;
  text-align: left;
  color: #333333;
  font-size: 2rem;
  font-weight: 400;
  line-height: 1.75;
  letter-spacing: 0em;
}

.l-page-apartment-block02-box-table04 {
  padding-top: 5rem;
  display: block;
  text-align: left;
  font-size: 0;
}

.l-page-apartment-block02-box-table04-list {
  width: 50%;
  display: inline-block;
  vertical-align: top;
}

.l-page-apartment-block02-box-table04-list:nth-of-type(odd) {
  padding-right: 3rem;
}

.l-page-apartment-block02-box-table04-list:nth-of-type(even) {
  padding-left: 3rem;
}

.l-page-apartment-block02-box-table04-list table {
  width: 100%;
  border-collapse: separate;
}

.l-page-apartment-block02-box-table04-list table .col01 {
  width: 30%;
}

.l-page-apartment-block02-box-table04-list table .col02 {
  width: 40%;
}

.l-page-apartment-block02-box-table04-list table .col03 {
  width: 30%;
}

.l-page-apartment-block02-box-table04-list table tr th {
  padding: 1.5rem 2rem;
  background: var(--c_be);
  text-align: center;
  border-top: 0.1rem solid var(--c_gy);
  border-left: 0.1rem solid var(--c_gy);
  border-right: 0.1rem solid var(--c_gy);
  border-bottom: none;
  color: #333333;
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.75;
  letter-spacing: -0.05em;
}

.l-page-apartment-block02-box-table04-list table tr td {
  text-align: center;
  padding: 1.5rem 2rem;
  background: #ffffff;
  border-top: 0.1rem solid #c9cbc0;
  border-left: 0.1rem solid #c9cbc0;
  color: #333333;
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 1.75;
  letter-spacing: -0.05em;
}

.l-page-apartment-block02-box-table04-list table tr td.td-01 {
  background: var(--c_ye);
}

.l-page-apartment-block02-box-table04-list table tr td:last-of-type {
  border-right: 0.1rem solid #c9cbc0;
}

.l-page-apartment-block02-box-table04-list table tr:last-of-type td {
  border-bottom: 0.1rem solid #c9cbc0;
}

.l-page-apartment-block02-box-table04-list table tr td label {
  color: #333333;
  font-size: 1.3rem;
  font-weight: 400;
  line-height: 1.75;
  letter-spacing: -0.05em;
}

.l-page-apartment-block02-box-table04-list table tr td span {
  color: var(--c_or);
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 1.75;
  letter-spacing: 0em;
}

.l-page-apartment-block02-box-box03 {
  margin-top: 4rem;
  margin-bottom: 8rem;
  border: 0.3rem solid var(--c_gy);
  padding: 5rem 6rem 6rem;
}

.l-page-apartment-block02-box-box03 > picture {
  display: block;
  text-align: center;
  padding-bottom: 6rem;
}

.l-page-apartment-block02-box-box03 > picture img {
  height: auto;
}

.l-page-apartment-block02-box-box03-message {
  border-radius: 1rem;
  background: var(--c_be);
  border: 1px solid var(--c_gy);
  padding: 4rem 5rem;
}

.l-page-apartment-block02-box-box03-message p {
  text-indent: -1.8rem;
  padding-left: 1.8rem;
  text-align: left;
  color: #333333;
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 1.75;
  letter-spacing: 0em;
}

.l-page-apartment-block02-box-message04 {
  padding-top: 5rem;
  text-align: center;
  color: #333333;
  font-size: 2.4rem;
  font-weight: 700;
  line-height: 1.75;
  letter-spacing: 0em;
}

.l-page-apartment-block02-box-message04 span {
  text-align: center;
  color: #ef2525;
  font-size: 2.4rem;
  font-weight: 700;
  line-height: 1.75;
  letter-spacing: 0em;
}

.l-page-apartment-block02-box-table05 {
  padding-top: 1.5rem;
  display: block;
  text-align: center;
  font-size: 0;
  background: url(img/menu/apartment-icon09_pc.png) bottom 1.5rem center no-repeat transparent;
  background-size: 3rem auto;
  min-height: 3rem;
}

.l-page-apartment-block02-box-table05-list {
  width: 47.4rem;
  display: inline-block;
  vertical-align: top;
  padding: 0 2.2rem;
  text-align: center;
}

.l-page-apartment-block02-box-table05-list picture {
  text-align: center;
}

.l-page-apartment-block02-box-table05-list picture img {
  width: 43rem;
  height: auto;
  position: relative;
  z-index: 1;
}

.l-page-apartment-block02-box-table05-list p {
  display: block;
  background: var(--c_aq);
  padding: 1rem 1rem;
  text-align: center;
  color: #ffffff;
  margin-top: -1.5rem;
  position: relative;
  z-index: 2;
  font-size: 2.4rem;
  font-weight: 700;
  line-height: 1.75;
  letter-spacing: 0em;
}

.l-page-apartment-block02-box-message05 {
  padding-top: 5.5rem;
  text-align: left;
  color: #333333;
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 2;
  letter-spacing: 0em;
}

.l-page-apartment-block03-message {
  padding-top: 5rem;
  text-align: left;
  color: #333333;
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 2;
  letter-spacing: 0em;
}

.l-page-apartment-block03-image {
  padding-top: 5rem;
  text-align: center;
  display: block;
}

.l-page-apartment-block03-image img {
  width: 55.3rem;
  height: auto;
}

.l-page-apartment-block03-table {
  margin: 5rem auto 8rem;
  max-width: 60rem;
  width: 100%;
  border-collapse: separate;
}

.l-page-apartment-block03-table tr th {
  padding: 1.5rem 2rem;
  background: var(--c_be);
  text-align: center;
  border-top: 0.1rem solid var(--c_gy);
  border-left: 0.1rem solid var(--c_gy);
  color: #333333;
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.75;
  letter-spacing: -0.05em;
}

.l-page-apartment-block03-table tr:first-of-type th:last-of-type {
  border-right: 0.1rem solid var(--c_gy);
}

.l-page-apartment-block03-table tr td {
  text-align: center;
  padding: 1.5rem 2rem;
  background: #ffffff;
  border-top: 0.1rem solid var(--c_gy);
  border-left: 0.1rem solid var(--c_gy);
  border-bottom: none;
  color: #333333;
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 1.75;
  letter-spacing: -0.05em;
}

.l-page-apartment-block03-table tr td:last-of-type {
  border-right: 0.1rem solid var(--c_gy);
}

.l-page-apartment-block03-table tr:last-of-type td {
  border-bottom: 0.1rem solid var(--c_gy);
}

.l-page-apartment-block03-caution {
  padding-top: 3.5rem;
  text-align: left;
  color: var(--c_rd);
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 1.75;
  letter-spacing: 0em;
}

.l-page-apartment-block03-block {
  padding-top: 5.5rem;
  display: block;
  text-align: center;
  font-size: 0;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 2rem;
}

.l-page-apartment-block03-block-list {
  display: inline-block;
  vertical-align: top;
  padding: 0 2rem;
}

.l-page-apartment-block03-block-list p {
  padding-bottom: 1rem;
  text-align: center;
  color: #333333;
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.75;
  letter-spacing: 0em;
}

.l-page-apartment-block03-block-list a img {
  width: 28rem;
  height: auto;
}

.l-page-apartment-block03-block-list a img.image01 {
  width: 28rem;
  height: auto;
}

.l-page-apartment-block03-block-list a img.image02 {
  width: 36rem;
  height: auto;
}

@media only screen and (max-width: 768px) {
  .l-page-apartment-block01 {
    padding: 10rem 0 11rem;
  }
  .l-page-apartment-block01 * {
    box-sizing: border-box;
  }
  .l-page-apartment-block01-table {
    display: block;
    text-align: center;
    font-size: 0;
  }
  .l-page-apartment-block01-table-list {
    width: 100%;
    display: block;
    vertical-align: top;
    text-align: center;
    padding-bottom: 2rem;
  }
  .l-page-apartment-block01-table-list:nth-of-type(odd) {
    padding-right: 0;
  }
  .l-page-apartment-block01-table-list:nth-of-type(even) {
    padding-left: 0;
  }
  .l-page-apartment-block01-table-list:last-of-type {
    padding-right: 0;
    padding-left: 0;
  }
  .l-page-apartment-block01-table-list > p {
    display: inline-block;
    border-radius: 50%;
    width: 10rem;
    height: 10rem;
    text-align: center;
    color: #ffffff;
    font-size: 4.2rem;
    font-weight: 700;
    line-height: 2.3;
    letter-spacing: 0em;
    position: relative;
    z-index: 2;
  }
  .l-page-apartment-block01-table-list-box {
    border-radius: 3rem;
    background: #ffffff;
    padding: 6.5rem 3rem 3rem;
    margin-top: -5rem;
    position: relative;
    z-index: 1;
  }
  .l-page-apartment-block01-table-list-box > div {
    display: block;
  }
  .l-page-apartment-block01-table-list-box > div h4 {
    border-radius: 3rem;
    padding: 2.5rem 2.5rem;
    text-align: center;
    font-size: 3.6rem;
    font-weight: 700;
    line-height: 1.75;
    letter-spacing: 0em;
  }
  .l-page-apartment-block01-table-list-box > div h4 + p {
    display: block;
    padding-top: 3rem;
    text-align: center;
    font-size: 3.2rem;
    font-weight: 700;
    line-height: 1.75;
    letter-spacing: 0em;
  }
  .l-page-apartment-block01-table-list-box > picture {
    display: block;
    padding-top: 3rem;
  }
  .l-page-apartment-block01-table-list-box > picture img {
    width: 100%;
    height: auto;
  }
  .l-page-apartment-block01-table-list-table {
    margin-top: 4rem;
    width: 100%;
    display: block !important;
  }
  .l-page-apartment-block01-table-list-table > * {
    width: 100%;
    display: block;
    vertical-align: top;
  }
  .l-page-apartment-block01-table-list-table p {
    width: 100%;
    display: block;
    text-align: left;
    font-size: 2.8rem;
    font-weight: 400;
    line-height: 1.625;
    letter-spacing: 0em;
  }
  .l-page-apartment-block01-table-list-table picture {
    width: 100%;
    display: block;
    text-align: center;
    padding-top: 3rem;
  }
  .l-page-apartment-block01-table-list-table picture img {
    width: 30%;
    height: auto;
  }
  .l-page-apartment-block02 {
    padding-top: 0;
  }
  .l-page-apartment-block02.type02 {
    padding-bottom: 3rem;
  }
  .l-page-apartment-block02 * {
    box-sizing: border-box;
  }
  .l-page-apartment-block02-inner {
    width: 100%;
    margin: 0 auto;
  }
  .l-page-apartment-block02-box {
    border-radius: 3rem;
    background: #ffffff;
    padding: 3rem 3rem;
  }
  .l-page-apartment-block02-box-title {
    min-height: 1rem;
    padding: 2rem 0 2rem;
  }
  .l-page-apartment-block02-box-title.type02 {
    min-height: 0rem;
    padding: 1.5rem 1rem;
  }
  .l-page-apartment-block02-box-title p,
  .l-page-apartment-block02-box-title h3 {
    text-align: center;
    font-size: 2rem;
    font-weight: 700;
    line-height: 1.38;
    letter-spacing: 0em;
  }
  .l-page-apartment-block02-box-title p span,
  .l-page-apartment-block02-box-title h3 span {
    text-align: center;
    font-size: 2.6rem;
    font-weight: 700;
    line-height: 1.08;
    letter-spacing: 0em;
  }
  .l-page-apartment-block02-box-image {
    padding-top: 3rem;
    padding-bottom: 3rem;
    display: block;
    text-align: center;
    font-size: 0;
  }
  .l-page-apartment-block02-box-image picture {
    width: 50%;
    display: inline-block;
    vertical-align: top;
    padding-bottom: 2rem;
  }
  .l-page-apartment-block02-box-image picture:nth-of-type(odd) {
    padding-right: 1.5rem;
  }
  .l-page-apartment-block02-box-image picture:nth-of-type(even) {
    padding-left: 1.5rem;
  }
  .l-page-apartment-block02-box-image picture img {
    width: 100%;
    height: auto;
  }
  .l-page-apartment-block02-box-image p {
    display: inline-block;
    border-radius: 2rem;
    padding: 1.4rem 4rem;
    text-align: center;
    color: #ffffff;
    width: 100%;
    font-size: 2.2rem;
    font-weight: 700;
    line-height: 1.5;
    letter-spacing: 0em;
  }
  .l-page-apartment-block02-box-question {
    padding: 1rem 0 0;
    text-align: center;
  }
  .l-page-apartment-block02-box-question p {
    width: 100%;
    display: inline-block;
    padding-top: 0;
    text-align: center;
    min-height: auto;
    text-align: center;
    color: #333333;
    font-size: 2rem;
    font-weight: 700;
    line-height: 1.5;
    letter-spacing: 0em;
  }
  .l-page-apartment-block02-box-table {
    width: 100%;
    display: block;
    margin-top: 1rem;
    margin-bottom: 1.5rem;
  }
  .l-page-apartment-block02-box-table > div {
    width: 100%;
    display: block;
    vertical-align: top;
  }
  .l-page-apartment-block02-box-table-image {
    width: 100%;
    text-align: center;
    padding-top: 1rem;
    padding-bottom: 1rem;
    background: url("../img/works/arrow02.png") bottom 1rem center no-repeat transparent;
    background-size: 5.8rem auto;
    min-height: 3.8rem;
  }
  .l-page-apartment-block02-box-table-image.-last {
    width: 100%;
    text-align: center;
    padding-top: 6rem;
    padding-bottom: 0;
    background: none;
  }
  .l-page-apartment-block02-box-table-image picture {
    display: block;
    text-align: center;
  }
  .l-page-apartment-block02-box-table-image picture img {
    width: 100%;
    height: auto;
  }
  .l-page-apartment-block02-box-table-image p {
    padding: 1.5rem 0;
    text-align: center;
    color: #333333;
    font-size: 2rem;
    font-weight: 700;
    line-height: 1.25;
    letter-spacing: 0em;
    background: var(--c_be);
  }
  .l-page-apartment-block02-box-table-image p span {
    text-align: center;
    font-size: 3.6rem;
    font-weight: 700;
    line-height: 1.25;
    letter-spacing: 0em;
  }
  .l-page-apartment-block02-box-table-arrow {
    display: none !important;
    width: 70px;
    text-align: center;
    padding-top: 80px;
  }
  .l-page-apartment-block02-box-table-arrow picture {
    text-align: center;
  }
  .l-page-apartment-block02-box-table-arrow picture img {
    width: 24px;
    height: auto;
  }
  .l-page-apartment-block02-box-message {
    padding: 1.5rem 0 3rem;
    text-align: center;
    font-size: 2.6rem;
    font-weight: 700;
    line-height: 1.07;
    letter-spacing: 0em;
  }
  .l-page-apartment-block02-box-message span {
    text-align: center;
    font-size: 2.6rem;
    font-weight: 700;
    line-height: 1;
    letter-spacing: 0em;
  }
  .l-page-apartment-block02-box-message span.color01 {
    text-align: center;
    font-size: 2.6rem;
    font-weight: 700;
    line-height: 1;
    letter-spacing: 0em;
  }
  .l-page-apartment-block02-box-title02 {
    border-radius: 3rem;
    padding: 2rem 2rem;
    text-align: center;
    font-size: 2.1rem;
    font-weight: 700;
    line-height: 1.5;
    letter-spacing: 0em;
  }
  .l-page-apartment-block02-box-title02 span {
    text-align: center;
    font-size: 2.1rem;
    font-weight: 700;
    line-height: 1.5;
    letter-spacing: 0em;
  }
  .l-page-apartment-block02-box-block {
    padding-top: 6rem;
    width: 100%;
    margin: 0 auto;
  }
  .l-page-apartment-block02-box-block-table {
    width: 100%;
    display: grid;
  }
  .l-page-apartment-block02-box-block-table > div {
    display: block;
    width: 100%;
  }
  .l-page-apartment-block02-box-block-table-left {
    width: 28rem;
    text-align: left;
    padding: 1.5rem 1.5rem 1.5rem 1.5rem;
  }
  .l-page-apartment-block02-box-block-table-left p {
    display: block;
    margin-inline: auto;
    border-radius: 4rem;
    padding: 1rem 4.5rem;
    vertical-align: middle;
    text-align: center;
    font-size: 3rem;
    font-weight: 700;
    line-height: 1;
    letter-spacing: 0em;
  }
  .l-page-apartment-block02-box-block-table-left p span {
    padding-right: 1.5rem;
    text-align: left;
    font-size: 2.4rem;
    font-weight: 700;
    line-height: 1.5;
    letter-spacing: 0em;
    position: relative;
    top: -0.3rem;
  }
  .l-page-apartment-block02-box-block-table-right {
    width: auto;
    text-align: left;
  }
  .l-page-apartment-block02-box-block-table-right p {
    text-align: center;
    font-size: 2.8rem;
    font-weight: 400;
    line-height: 1.5;
    letter-spacing: 0em;
    padding-bottom: 1rem;
  }
  .l-page-apartment-block02-box-block-table-right p span {
    text-align: left;
    font-size: 2.8rem;
    font-weight: 700;
    line-height: 1.5;
    letter-spacing: 0em;
  }
  .l-page-apartment-block02-box-message02 {
    padding-top: 9rem;
    min-height: 3.5rem;
    text-align: center;
    font-size: 1.8rem;
    font-weight: 700;
    line-height: 1.5;
    letter-spacing: 0em;
  }
  .l-page-apartment-block02-box-message02 span {
    text-align: center;
    font-size: 2rem;
    font-weight: 700;
    line-height: 1.5;
    letter-spacing: 0em;
  }
  .l-page-apartment-block02-box-box01 {
    margin-top: 2.5rem;
    margin-bottom: 3rem;
    border-radius: 3rem;
    padding: 2rem 2rem;
    text-align: left;
    color: #ffffff;
    font-size: 2rem;
    font-weight: 700;
    line-height: 1.83;
    letter-spacing: 0em;
  }
  .l-page-apartment-block02-box-caution {
    padding-top: 3.5rem;
    text-align: left;
    font-size: 2rem;
    font-weight: 500;
    line-height: 1.75;
    letter-spacing: 0em;
  }
  .l-page-apartment-block02-box-table03 {
    padding-top: 1.5rem;
    padding-bottom: 1.5rem;
    overflow: auto;
  }
  .l-page-apartment-block02-box-table03 table {
    width: 100%;
    border-collapse: separate;
    table-layout: fixed;
    width: 1140px;
    margin-bottom: 0 !important;
  }
  .l-page-apartment-block02-box-table03 table tr th {
    display: table-cell !important;
    width: 189px;
    padding: 15px 20px;
    text-align: center;
    font-size: 16px;
    font-weight: 700;
    line-height: 1.75;
    letter-spacing: -0.05em;
  }
  .l-page-apartment-block02-box-table03 table tr:first-of-type th:first-of-type {
    border-radius: 15px 0 0 0;
  }
  .l-page-apartment-block02-box-table03 table tr:first-of-type th:last-of-type {
    border-radius: 0 15px 0 0;
    border-right: 1px solid #c9cbc0;
  }
  .l-page-apartment-block02-box-table03 table tr td {
    display: table-cell !important;
    text-align: center;
    padding: 15px 20px;
    border-bottom: none;
    font-size: 16px;
    font-weight: 400;
    line-height: 1.75;
    letter-spacing: -0.05em;
  }
  .l-page-apartment-block02-box-table03 table tr td:last-of-type {
    border-right: 1px solid #c9cbc0;
  }
  .l-page-apartment-block02-box-table03 table tr td.td-01 {
    background: #ff0;
  }
  .l-page-apartment-block02-box-table03 table tr:last-of-type td {
    border-bottom: 1px solid #c9cbc0;
  }
  .l-page-apartment-block02-box-table03 table tr:last-of-type td:first-of-type {
    border-radius: 0 0 0 15px;
  }
  .l-page-apartment-block02-box-table03 table tr:last-of-type td:last-of-type {
    border-radius: 0 0 15px 0;
  }
  .l-page-apartment-block02-box-message03 {
    text-align: left;
    color: #333333;
    font-size: 1.6rem;
    font-weight: 400;
    line-height: 1.75;
    letter-spacing: 0em;
  }
  .l-page-apartment-block02-box-message03 i {
    padding: 0 0.5rem;
  }
  .l-page-apartment-block02-box-box02 {
    margin-top: 2rem;
    margin-bottom: 2rem;
    border-radius: 2rem;
    background: #f5f5f5;
    padding: 2rem 2rem;
    text-align: left;
    font-size: 1.8rem;
    font-weight: 400;
    line-height: 1.75;
    letter-spacing: 0em;
  }
  .l-page-apartment-block02-box-table04 {
    padding-top: 4rem;
    display: block;
    text-align: left;
    font-size: 0;
  }
  .l-page-apartment-block02-box-table04-list {
    width: 100%;
    display: block;
    vertical-align: top;
    margin-bottom: 2rem;
  }
  .l-page-apartment-block02-box-table04-list:nth-of-type(odd) {
    padding-right: 0;
  }
  .l-page-apartment-block02-box-table04-list:nth-of-type(even) {
    padding-left: 0;
  }
  .l-page-apartment-block02-box-table04-list table {
    width: 100%;
    border-collapse: separate;
  }
  .l-page-apartment-block02-box-table04-list table .col01 {
    width: 35%;
  }
  .l-page-apartment-block02-box-table04-list table .col02 {
    width: 35%;
  }
  .l-page-apartment-block02-box-table04-list table .col03 {
    width: 30%;
  }
  .l-page-apartment-block02-box-table04-list table tr th {
    display: table-cell !important;
    border-radius: 2rem 2rem 0 0;
    padding: 1.5rem 2rem;
    background: #e5e6e0;
    text-align: center;
    border-top: 1px solid #c9cbc0;
    border-left: 1px solid #c9cbc0;
    border-right: 1px solid #c9cbc0;
    border-bottom: none;
    font-size: 1.8rem;
    font-weight: 700;
    line-height: 1.75;
    letter-spacing: -0.05em;
  }
  .l-page-apartment-block02-box-table04-list table tr td {
    display: table-cell !important;
    text-align: center;
    padding: 1.5rem 2rem;
    background: #ffffff;
    border-top: 1px solid #c9cbc0;
    border-left: 1px solid #c9cbc0;
    font-size: 1.8rem;
    font-weight: 400;
    line-height: 1.75;
    letter-spacing: -0.05em;
  }
  .l-page-apartment-block02-box-table04-list table tr td.td-01 {
    background: #ff0;
  }
  .l-page-apartment-block02-box-table04-list table tr td:last-of-type {
    border-right: 1px solid #c9cbc0;
  }
  .l-page-apartment-block02-box-table04-list table tr:last-of-type td:first-of-type {
    border-radius: 0 0 0 2rem;
  }
  .l-page-apartment-block02-box-table04-list table tr:last-of-type td:last-of-type {
    border-radius: 0 0 2rem 0;
  }
  .l-page-apartment-block02-box-table04-list table tr:last-of-type td {
    border-bottom: 1px solid #c9cbc0;
  }
  .l-page-apartment-block02-box-table04-list table tr td label {
    font-size: 2rem;
    font-weight: 400;
    line-height: 1.75;
    letter-spacing: -0.05em;
  }
  .l-page-apartment-block02-box-table04-list table tr td span {
    color: #c01920;
    font-size: 2.2rem;
    font-weight: 400;
    line-height: 1.75;
    letter-spacing: 0em;
  }
  .l-page-apartment-block02-box-box03 {
    margin-top: 4rem;
    margin-bottom: 4rem;
    border-radius: 2rem;
    border: 3px solid #c9cbc0;
    padding: 2rem 2rem;
  }
  .l-page-apartment-block02-box-box03 > picture {
    display: block;
    text-align: center;
    padding-bottom: 4rem;
  }
  .l-page-apartment-block02-box-box03 > picture img {
    width: 100%;
    height: auto;
  }
  .l-page-apartment-block02-box-box03-message {
    border-radius: 2rem;
    background: #f5f6f0;
    padding: 2rem 2rem;
  }
  .l-page-apartment-block02-box-box03-message p {
    text-indent: -2rem;
    padding-left: 2rem;
    text-align: left;
    color: #333333;
    font-size: 1.6rem;
    font-weight: 400;
    line-height: 1.75;
    letter-spacing: 0em;
  }
  .l-page-apartment-block02-box-message04 {
    padding-top: 3rem;
    text-align: center;
    font-size: 2rem;
    font-weight: 700;
    line-height: 1.75;
    letter-spacing: 0em;
  }
  .l-page-apartment-block02-box-message04 span {
    text-align: center;
    color: #ef2525;
    font-size: 2.4rem;
    font-weight: 700;
    line-height: 1.75;
    letter-spacing: 0em;
  }
  .l-page-apartment-block02-box-table05 {
    padding-top: 4rem;
    display: block;
    text-align: center;
    font-size: 0;
    background: none;
  }
  .l-page-apartment-block02-box-table05-list {
    width: 100%;
    display: block;
    vertical-align: top;
    padding: 0 2.2rem;
    text-align: center;
  }
  .l-page-apartment-block02-box-table05-list:first-of-type {
    padding: 0 2.2rem 3rem;
    text-align: center;
    background: url(../img/menu/apartment-icon09_pc.png) bottom 3.5rem center no-repeat transparent;
    background-size: 3rem auto;
  }
  .l-page-apartment-block02-box-table05-list picture {
    text-align: center;
  }
  .l-page-apartment-block02-box-table05-list picture img {
    width: 100%;
    height: auto;
  }
  .l-page-apartment-block02-box-table05-list p {
    margin-bottom: 2rem;
    display: inline-block;
    min-width: 100%;
    margin-top: 1rem;
    border-radius: 1.4rem;
    padding: 1rem 2rem;
    text-align: center;
    color: #ffffff;
    font-size: 2rem;
    font-weight: 700;
    line-height: 1.75;
    letter-spacing: 0em;
  }
  .l-page-apartment-block02-box-message05 {
    padding-top: 0;
    text-align: left;
    font-size: 1.6rem;
    font-weight: 400;
    line-height: 2;
    letter-spacing: 0em;
  }
  .l-page-apartment-block03-message {
    padding-top: 2rem;
    text-align: left;
    font-size: 1.6rem;
    font-weight: 400;
    line-height: 2;
    letter-spacing: 0em;
  }
  .l-page-apartment-block03-image {
    padding-top: 2rem;
    text-align: center;
    display: block;
  }
  .l-page-apartment-block03-image img {
    width: 55.3rem;
    height: auto;
  }
  .l-page-apartment-block03-table {
    margin: 3rem auto 5rem;
    max-width: 100%;
    width: 100%;
    border-collapse: separate;
  }
  .l-page-apartment-block03-table tr th {
    display: table-cell !important;
    padding: 1.5rem 2rem;
    text-align: center;
    font-size: 1.8rem;
    font-weight: 700;
    line-height: 1.75;
    letter-spacing: -0.05em;
  }
  .l-page-apartment-block03-table tr:first-of-type th:first-of-type {
    border-radius: 2.5rem 0 0 0;
  }
  .l-page-apartment-block03-table tr:first-of-type th:last-of-type {
    border-radius: 0 2.5rem 0 0;
    border-right: 1px solid #c9cbc0;
  }
  .l-page-apartment-block03-table tr td {
    display: table-cell !important;
    text-align: center;
    padding: 1.5rem 2rem;
    border-bottom: none;
    font-size: 1.6rem;
    font-weight: 400;
    line-height: 1.75;
    letter-spacing: -0.05em;
  }
  .l-page-apartment-block03-table tr td:last-of-type {
    border-right: 1px solid #c9cbc0;
  }
  .l-page-apartment-block03-table tr:last-of-type td {
    border-bottom: 1px solid #c9cbc0;
  }
  .l-page-apartment-block03-table tr:last-of-type td:first-of-type {
    border-radius: 0 0 0 2.5rem;
  }
  .l-page-apartment-block03-table tr:last-of-type td:last-of-type {
    border-radius: 0 0 2.5rem 0;
  }
  .l-page-apartment-block03-caution {
    padding-top: 1.5rem;
    text-align: center;
    color: #ef2525;
    font-size: 1.4rem;
    font-weight: 400;
    line-height: 1.75;
    letter-spacing: 0em;
  }
  .l-page-apartment-block03-block {
    padding-top: 0;
    display: block;
    text-align: center;
    font-size: 0;
  }
  .l-page-apartment-block03-block-list {
    display: inline-block;
    vertical-align: top;
    padding: 2rem 0 0;
  }
  .l-page-apartment-block03-block-list p {
    padding-bottom: 1rem;
    text-align: center;
    color: #333333;
    font-size: 1.8rem;
    font-weight: 700;
    line-height: 1.75;
    letter-spacing: 0em;
  }
  .l-page-apartment-block03-block-list a img {
    width: 100%;
    height: auto;
  }
  .l-page-apartment-block03-block-list a img.image01 {
    width: 100%;
    height: auto;
  }
  .l-page-apartment-block03-block-list a img.image02 {
    width: 100%;
    height: auto;
  }
}
.modal-1__wrap {
  display: inline-block;
}

.modal-1__wrap input {
  display: none;
}

.modal-1__open-label,
.modal-1__close-label {
  cursor: pointer;
}

.modal-1__open-label {
  color: #4f96f6;
  font-size: 5rem;
}

.modal-1__open-label:hover {
  text-decoration: underline;
  cursor: pointer;
  color: #c7511f;
}

.modal-1 {
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: 9999;
  display: none;
}

.modal-1__open-input:checked + label + input + .modal-1 {
  display: block;
  animation: modal-1-animation 0.6s;
}

.modal-1__content-wrap {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  width: 80%;
  max-width: 650px;
  z-index: 2;
  border-radius: 5px;
}

.modal-1__close-label {
  background-color: var(--c_wh);
  border: 2px solid var(--c_gy);
  border-radius: 20px;
  width: 36px;
  height: 36px;
  line-height: 1.5;
  text-align: center;
  display: table-cell;
  position: fixed;
  top: -15px;
  right: -2%;
  z-index: 99999;
  font-size: 2rem;
  color: var(--c_aq);
}

.modal-1__content {
  max-height: 90vh;
  overflow-y: auto;
}

.modal-1__background {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.7);
  z-index: 1;
}

@keyframes modal-1-animation {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@media only screen and (max-width: 768px) {
  .modal-1__open-label {
    max-width: 90%;
    padding: 0;
  }
  .modal-1__close-label {
    top: -17px;
    right: -4%;
  }
  .modal-1__content-wrap {
    width: 90vw;
  }
  .modal-1__content {
    padding: 33px 21px 35px;
    max-width: 100%;
  }
}
.caution-intro {
  position: relative;
}
.caution-intro::before {
  position: absolute;
  bottom: 0;
  right: 5%;
  content: "";
  display: block;
  width: 20rem;
  height: 30rem;
  background: center bottom/contain no-repeat url("../img/caution/intro.png");
}
@media only screen and (max-width: 768px) {
  .caution-intro::before {
    display: none;
  }
}
.caution-intro-dtl {
  padding: 5rem;
}
@media only screen and (max-width: 768px) {
  .caution-intro-dtl {
    padding: 2rem 0;
  }
}
.caution-intro-dtl-img {
  width: 75%;
  margin: 0 auto;
  position: relative;
}
@media only screen and (max-width: 768px) {
  .caution-intro-dtl-img {
    width: 100%;
  }
}
.caution-intro-dtl-img::after {
  content: "";
  position: absolute;
  background: #fff;
  bottom: -20px;
  right: -20px;
  display: block;
  width: 100%;
  height: 100%;
  z-index: 1;
}
.caution-intro-dtl-img img {
  position: relative;
  z-index: 2;
}
.caution-intro-dtl-text {
  margin-top: 6rem;
  background: var(--c_ye);
  padding: 3rem;
  border-radius: 1rem;
  font-size: 2.4rem;
  text-align: left;
}
@media only screen and (max-width: 768px) {
  .caution-intro-dtl-text {
    margin-top: 3rem;
    font-size: 5vw;
  }
}
.caution-check {
  background: var(--c_be);
}
.caution-check-dtl {
  display: flex;
  flex-wrap: nowrap;
  align-items: center;
  margin-top: 4rem;
  background: #fff;
  border: 5px solid var(--c_bl);
}
@media only screen and (max-width: 768px) {
  .caution-check-dtl {
    flex-wrap: wrap;
  }
}
.caution-check-dtl-text {
  width: 70%;
}
@media only screen and (max-width: 768px) {
  .caution-check-dtl-text {
    width: 100%;
  }
}
.caution-check-dtl-list {
  padding: 3rem;
  text-align: left;
}
.caution-check-dtl-list-ttl {
  font-weight: 700;
  color: var(--c_bl);
  padding-bottom: 1rem;
  font-size: 2rem;
  border-bottom: 1px solid var(--c_bl);
}
.caution-check-dtl-list-txt {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 1rem;
  font-size: 1.75rem;
  margin-top: 2rem;
}
.caution-check-dtl-list-txt::before {
  display: block;
  content: "";
  width: 3rem;
  height: 3rem;
  background: center/contain no-repeat url("../img/img_checkbox.svg");
}
.caution-check-dtl-img {
  width: 30%;
}
@media only screen and (max-width: 768px) {
  .caution-check-dtl-img {
    width: 80%;
    margin: 0 auto 3rem;
  }
}
.caution-check-dtl-img img {
  display: block;
  width: 100%;
  height: auto;
}
.caution-check-feat {
  margin-top: 5rem;
}
.caution-check-feat-dtl {
  display: grid;
  grid-template-columns: 33% auto;
  align-items: center;
  background: #fff;
  border: 5px solid var(--c_rd);
}
@media only screen and (max-width: 768px) {
  .caution-check-feat-dtl {
    grid-template-columns: 1fr;
  }
}
.caution-check-feat-dtl-img {
  width: 100%;
}
@media only screen and (max-width: 768px) {
  .caution-check-feat-dtl-img {
    width: 80%;
    margin: 3rem auto 3rem;
  }
}
.caution-check-feat-dtl-txt {
  font-weight: 700;
  font-size: 4rem;
}
@media only screen and (max-width: 768px) {
  .caution-check-feat-dtl-txt {
    font-size: 6vw;
    margin-bottom: 2rem;
  }
}
.caution-check-feat-copy {
  background: var(--c_rd);
  color: #fff;
  padding: 6rem 3rem;
  font-size: 6rem;
  font-weight: 700;
}
@media only screen and (max-width: 768px) {
  .caution-check-feat-copy {
    font-size: 13vw;
    padding: 3rem;
  }
}
.caution-check-feat-copy p {
  transform: rotate(-5deg);
}
.caution-company .c_speech {
  background: #148ab1;
}
@media only screen and (max-width: 768px) {
  .caution-company .c_speech {
    font-size: 5vw;
  }
}
.caution-company .c_speech::after {
  background-color: #148ab1;
}
.caution-company-sec {
  margin-top: 4rem;
}
.caution-company-sec + .caution-company-sec {
  margin-top: 8rem;
}
.caution-company-sec-ttl {
  background: var(--c_be);
  text-align: left;
  padding: 1rem;
  border-left: 8px solid #148ab1;
  font-size: 2rem;
}
.caution-company-dtl {
  margin-top: 3rem;
}
.caution-company-dtl-img img {
  width: 100%;
}
.caution-company-dtl-txt {
  margin-top: 2rem;
  font-size: 1.8rem;
  text-align: left;
  color: #333;
}
.caution-company-outro {
  margin: 5rem auto 0;
  border-radius: 2rem;
  border: 5px solid #148ab1;
  overflow: hidden;
}
.caution-company-outro-ttl {
  background: #148ab1;
  color: #fff;
  font-size: 3rem;
  padding: 1.5rem 0;
}
@media only screen and (max-width: 768px) {
  .caution-company-outro-ttl {
    font-size: 4vw;
  }
}
.caution-company-outro-img {
  width: 70%;
  margin-inline: auto;
  display: block;
  padding: 3rem 0 0;
}
.caution-company-dtl-txt {
  text-align: left !important;
}
.caution-company-dtl-txt.has-grid {
  display: grid;
  grid-template-columns: 70% auto;
  gap: 5rem;
}
@media only screen and (max-width: 768px) {
  .caution-company-dtl-txt.has-grid {
    grid-template-columns: 1fr;
    gap: 2rem;
  }
}
.caution-company-dtl-txt p {
  margin-bottom: 1em;
}
.caution-company-dtl-txt a {
  margin-top: 1em;
  text-align: left !important;
  text-decoration: underline;
  color: var(--c_aq);
  font-size: 2rem;
}
@media only screen and (max-width: 768px) {
  .caution-company-dtl-txt a {
    font-size: 4.6vw;
  }
}
.caution-company-spt-ttl {
  background: var(--c_gy);
  padding: 1rem;
  margin-top: 5rem;
}
.caution-company-tbl .table_02_1 td {
  border: 1px solid var(--c_gy);
  padding: 1rem 2rem;
  text-align: left;
  background: var(--c_be);
}
.caution-company-note {
  margin-top: 3rem;
  text-align: left;
}
@media only screen and (max-width: 768px) {
  .caution-point {
    padding-bottom: 0;
  }
}
.caution-point .container {
  max-width: 700px;
}
.caution-point-txt {
  margin-top: 4rem;
  background: var(--c_or);
  color: #fff;
  font-size: 2.2rem;
  padding: 1rem;
  font-weight: 700;
}
@media only screen and (max-width: 768px) {
  .caution-point-txt {
    font-size: 5vw;
    margin-top: 0;
  }
}
.caution-campaign-bnr {
  margin-top: 2rem;
  width: 100%;
}
.caution-campaign-bnrLi {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  width: 100%;
  margin-top: 2rem;
  gap: 2rem;
}
.caution-outro-ttl {
  font-weight: 700;
  background: var(--c_bl);
  color: #fff;
  font-size: 2.4rem;
  padding: 1rem;
  border-radius: 2rem 2rem 0 0;
  margin-top: 5rem;
}
@media only screen and (max-width: 768px) {
  .caution-outro-ttl {
    font-size: 5vw;
  }
}
.caution-outro-staff {
  background: var(--c_be);
  padding: 5rem;
}
@media only screen and (max-width: 768px) {
  .caution-outro-staff {
    padding: 2rem;
  }
}
.caution-form {
  margin: 0;
  padding: 5rem 0;
  background: var(--c_be);
}
.caution-form .ttl {
  padding: 0 2rem 4rem;
  background: var(--c_be);
  font-size: 2.4rem;
  font-weight: 400;
}

.areaTtl {
  color: var(--c_or);
  font-size: 4rem;
}
@media only screen and (max-width: 768px) {
  .areaTtl {
    font-size: 6vw;
  }
}

.staff-dtl {
  display: block;
  max-width: 1000px;
  width: 100%;
  margin: 2rem auto;
}

.shimajCate {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 2rem 3rem;
  margin: 0 0 5rem 0;
}
@media only screen and (max-width: 768px) {
  .shimajCate {
    grid-template-columns: repeat(2, 1fr);
    margin-bottom: 3rem;
    gap: 1.5rem 2rem;
  }
}
.shimajCate-li a {
  display: grid;
  text-align: center;
  align-items: center;
  justify-content: center;
  background: var(--c_aq);
  color: #fff;
  border-radius: 5px;
  padding: 0.5em 1rem;
  font-size: 1.5rem;
  transition: linear 0.2s;
}
@media only screen and (max-width: 768px) {
  .shimajCate-li a {
    font-size: 1.4rem;
  }
}
.shimajCate-li a:hover {
  opacity: 0.8;
}