@charset "UTF-8";
/*共通*/
picture {
  display: block;
  line-height: 0;
}

.green-box {
  position: relative;
  display: block;
  padding: 1rem;
  background-color: #ddf4ef;
  border-radius: 5px;
}

.txt_kome {
  font-size: 70%;
  vertical-align: top;
}

.common__tl {
  background-color: #f8e6ef;
  padding: 3% 0;
  text-align: center;
  font-size: 4.2rem;
  font-family: "Noto Sans Japanese-sb";
  letter-spacing: -1px;
  margin-bottom: 5%;
}
@media screen and (max-width: 428px) {
  .common__tl {
    font-size: 2rem;
  }
}
.common__tl > span {
  font-size: 140%;
}

/*color*/
/*cp_bnr_wrap*/
.cp_bnr_wrap {
  width: 90%;
  max-width: 1080px;
  margin: 3% auto 5%;
}

.campaign_tl {
  text-align: center;
  font-size: 2.6rem;
  font-family: "Noto Sans Japanese-sb";
  margin-bottom: 0.5em;
}

.cp-sticker::before {
  content: "";
  background: url(../images/cp-sticker.png) no-repeat top left;
  background-size: contain;
  width: 130px;
  height: 130px;
  position: absolute;
  left: -12%;
  top: 6%;
  z-index: 1;
  filter: drop-shadow(4px 4px 3px #979797);
}
@media screen and (max-width: 767px) {
  .cp-sticker::before {
    width: 100px;
    height: 100px;
    left: -5%;
  }
}

/* グラデーションタイトル */
.tl_gradation {
  width: -moz-fit-content;
  width: fit-content;
  margin: 0 auto;
  font-family: "Noto Sans Japanese-sb";
  font-size: 36px;
  line-height: 1.4;
  color: #a74978;
}
@media screen and (max-width: 767px) {
  .tl_gradation {
    font-size: 19px;
    font-size: 1.9rem;
  }
}
.tl_gradation .large {
  font-size: 50px;
}
@media screen and (max-width: 767px) {
  .tl_gradation .large {
    font-size: 25px;
    font-size: 2.5rem;
  }
}

.tl_line {
  -o-border-image: linear-gradient(to left, #2ec3e2 0%, #04c095 100%);
  border-image: linear-gradient(to left, #2ec3e2 0%, #04c095 100%);
  border-image-slice: 1;
}
@media screen and (max-width: 767px) {
  .tl_line {
    border: none;
    letter-spacing: normal;
  }
}

.tl_lead {
  margin-bottom: 0.25em;
  font-family: "Noto Sans Japanese-sb";
  font-size: 26px;
  line-height: 1.4;
  text-align: center;
  position: relative;
}
@media screen and (max-width: 767px) {
  .tl_lead {
    font-size: 16px;
    font-size: 1.6rem;
    margin-bottom: 1em;
  }
}
.tl_lead.new::before {
  content: "NEW";
  background-color: red;
  color: #fff;
  left: 0;
  display: inline-block;
  padding: 0.25rem 1.2rem;
  position: relative;
  margin-right: 1em;
  line-height: 1;
}

.tl_group {
  text-align: center;
  border: 6px solid #a74978;
  margin-bottom: 32px;
  padding: 16px 16px 0;
  padding: 1rem 0;
  width: 1150px;
  margin: 0 auto;
  position: relative;
}
@media screen and (max-width: 767px) {
  .tl_group {
    width: 90%;
  }
}
.tl_group .lineup_group_tl .txt_kome {
  font-family: "Noto Sans Japanese-r";
  font-size: 60%;
}

/* メイン */
.hero {
  width: 100%;
  max-width: 1920px;
  position: relative;
  z-index: 0;
  margin: 0 auto 5%;
}
@media screen and (max-width: 767px) {
  .hero {
    margin: 0 auto 8vw;
  }
}
.hero .hero__hgroup {
  position: absolute;
  top: min(3.2%, 22px);
  width: 100%;
}
@media screen and (max-width: 1024px) {
  .hero .hero__hgroup {
    top: 3%;
  }
}
@media screen and (max-width: 428px) {
  .hero .hero__hgroup {
    top: 8%;
  }
}
.hero .hero__sabtl {
  color: #000;
  font-size: clamp(20px, 0px + 1.6666666667vw, 32px);
  text-align: center;
}
@media screen and (max-width: 1200px) {
  .hero .hero__sabtl {
    font-size: clamp(18px, 6.2857142857px + 1.1428571429vw, 20px);
  }
}
@media screen and (max-width: 1024px) {
  .hero .hero__sabtl {
    font-size: 18px;
  }
}
@media screen and (max-width: 428px) {
  .hero .hero__sabtl {
    font-size: 4.6vw;
    margin-bottom: 2.2%;
  }
}
.hero .hero__tl {
  font-family: "Noto Sans Japanese-sb";
  color: #fff;
  font-size: clamp(40px, -0.0890125174px + 3.3379694019vw, 64px);
  line-height: 1.2;
  letter-spacing: -0.15rem;
  display: flex;
  align-items: center;
  padding: 24px 48px 0;
  margin-inline: auto;
  text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.6);
}
@media screen and (max-width: 1200px) {
  .hero .hero__tl {
    font-size: clamp(36px, 1.0909090909px + 3.4090909091vw, 42px);
    letter-spacing: -0.2rem;
  }
}
@media screen and (max-width: 1024px) {
  .hero .hero__tl {
    font-size: 36px;
    padding: 16px 32px 0;
  }
}
@media screen and (max-width: 428px) {
  .hero .hero__tl {
    flex-direction: column;
    font-size: 8.8vw;
    line-height: 1.3;
    padding: 0;
  }
}
.hero .hero__tl .f-small {
  font-size: 75%;
  letter-spacing: 0.05rem;
}
@media screen and (max-width: 767px) {
  .hero .hero__tl .f-small {
    font-size: 65%;
  }
}
.hero .hero__tl .space {
  padding: 0 3px;
}
@media screen and (max-width: 767px) {
  .hero .hero__tl .space {
    padding: 0 1vw;
  }
}
.hero .hub {
  justify-content: center;
  align-items: center;
  text-align: center;
  padding: 24px 0 0;
  color: #3e3a39;
}
.hero .hero_box {
  width: 50%;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  z-index: 1;
  aspect-ratio: 16/9;
}
@media screen and (max-width: 428px) {
  .hero .hero_box {
    aspect-ratio: 1/1;
  }
}
@media screen and (min-width: 429px) {
  .hero .hero_box {
    display: block;
    margin: 0 auto;
    max-width: 716px;
  }
}
.hero .hero_inner {
  position: relative;
  width: 100%;
}
@media screen and (min-width: 1400px) {
  .hero .hero_inner {
    padding: 5% 0;
  }
}
.hero .hero_inner {
  /*
  background: url(../images/fv_tl_bg.png) no-repeat center (top / auto);
  background-size: contain;

  display: flex;
  justify-content: center;
  flex-direction: column;
  align-items: center;
  width: 100%; */
  /*
  @media screen and (max-width: 767px) {
    text-align: center;
  }
    */
  /*
  @media screen and (min-width: 1200px) and (-webkit-min-device-pixel-ratio: 2),
  screen and (min-width: 1450px) and (min-resolution: 192dpi) {
    gap: 8%;
    padding-top: 8%;
  }
    */
}
.hero .hero_inner .hero_inner_txtarea {
  padding: 12% 0;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  z-index: 2;
  width: -moz-max-content;
  width: max-content;
}
.hero .hero_inner .hero_inner__img {
  display: block;
  position: relative;
}
.hero .hero_lead {
  width: 100%;
  display: block;
  text-align: center;
  font-size: 39px;
  line-height: 1.2;
  z-index: 2;
}
@media screen and (min-width: 769px) {
  .hero .hero_lead {
    font-family: "Noto Sans Japanese-sb";
    margin-bottom: 1rem;
  }
}
@media screen and (max-width: 768px) {
  .hero .hero_lead {
    width: 72%;
    align-items: center;
    font-size: 3.8vw;
    margin: 0 auto;
    padding-top: 5%;
  }
}
@media (429px <= width < 767px) {
  .hero .hero_lead {
    width: 80%;
    font-size: 5vw;
    padding-top: 11%;
  }
}
.hero .hero_lead span {
  font-size: 33px;
}
@media screen and (max-width: 767px) {
  .hero .hero_lead span {
    font-size: 4.6vw;
    font-family: "Noto Sans Japanese-sb";
  }
}
.hero .hero_lead span.kome {
  font-size: 1.6rem;
  vertical-align: top;
}
.hero .hero_tl {
  font-family: "Noto Sans Japanese-b";
  text-align: center;
  color: #292932;
  z-index: 2;
  /*
  @media screen and (max-width: 767px) {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    height: 33.3334vw;
  }
    */
}
@media screen and (max-width: 428px) {
  .hero .hero_tl {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    height: 19vw;
  }
}
.hero .hero_tl .hero_tl_txt_1 {
  display: block;
  font-size: 28px;
  margin-bottom: 0.5em;
}
@media screen and (max-width: 767px) {
  .hero .hero_tl .hero_tl_txt_1 {
    font-size: 14px;
    font-size: 1.4rem;
  }
}
.hero .hero_tl .hero_tl_txt_1::before, .hero .hero_tl .hero_tl_txt_1::after {
  content: "-";
}
.hero .hero_tl .hero_tl_txt_1::before {
  margin-right: 0.25em;
}
.hero .hero_tl .hero_tl_txt_1::after {
  margin-left: 0.25em;
}
.hero .hero_tl .hero_tl_txt_1 .small {
  font-size: 24px;
}
@media screen and (max-width: 767px) {
  .hero .hero_tl .hero_tl_txt_1 .small {
    font-size: 12px;
    font-size: 1.2rem;
  }
}
.hero .hero_tl .hero_tl_inner {
  display: flex;
  align-items: center;
  justify-content: center;
}
@media (429px <= width < 767px) {
  .hero .hero_tl .hero_tl_inner {
    justify-content: center;
    padding-top: 6%;
  }
}
.hero .hero_tl .hero_tl_txt_2 {
  font-size: 70px;
  line-height: 1.2;
  letter-spacing: -8px;
}
@media screen and (max-width: 767px) {
  .hero .hero_tl .hero_tl_txt_2 {
    font-size: 11vw;
  }
}
@media (429px <= width < 767px) {
  .hero .hero_tl .hero_tl_txt_2 {
    font-size: 10vw;
  }
}
.hero .hero_lead,
.hero .hero_tl {
  position: relative;
}
.hero .hero_cta_box {
  position: absolute;
  width: -moz-max-content;
  width: max-content;
  bottom: 6%;
  left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 5%;
  width: 95%;
}
@media screen and (max-width: 1200px) {
  .hero .hero_cta_box {
    bottom: 5%;
  }
}
@media screen and (max-width: 428px) {
  .hero .hero_cta_box {
    position: relative;
    flex-direction: column-reverse;
    width: 90%;
    gap: 8vw;
    margin: 8vw 0 0;
  }
}
.hero .hero_btn {
  display: flex;
  align-items: center;
  justify-content: center;
  width: min(28%, 485px);
  height: min(4.4vw, 80px);
  font-family: "Noto Sans Japanese-sb";
  line-height: 1.2;
  font-size: clamp(16px, 12px + 0.5208333333vw, 22px);
  text-align: left;
  border-radius: 4px;
  z-index: 3;
  letter-spacing: -1px;
  position: relative;
}
@media screen and (max-width: 1440px) {
  .hero .hero_btn {
    font-size: 16px;
  }
}
@media screen and (max-width: 1024px) {
  .hero .hero_btn {
    width: 30%;
    height: min(6vw, 48px);
  }
}
@media screen and (max-width: 428px) {
  .hero .hero_btn {
    width: 100%;
    height: 12vw;
    position: relative;
    left: unset;
    transform: none;
    font-size: 1.4rem;
    border-radius: 2px;
  }
}
.hero .hero_btn:link, .hero .hero_btn:visited {
  color: white;
}
.hero .hero_btn::after {
  display: block;
  content: "";
  position: absolute;
  top: 50%;
  right: 3%;
  transform: translateY(-50%);
  border-color: transparent transparent transparent #fff;
  border-style: solid;
  border-width: 6px 0 6px 8px;
}
@media screen and (max-width: 767px) {
  .hero .hero_btn::after {
    border-width: 4px 0 4px 6px;
  }
}
.hero .consult_btn {
  text-shadow: 2px 2px 5px rgba(195, 120, 17, 0.47), -2px 2px 5px rgba(195, 120, 17, 0.47), 2px -2px 5px rgba(195, 120, 17, 0.47), -2px -2px 5px rgba(195, 120, 17, 0.47);
  background: linear-gradient(to left top, #f88900 0 50%, #f99c29 calc(50% + 1px) 100%);
  box-shadow: 0 6px 0 0 #aa6d11;
}
@media screen and (max-width: 767px) {
  .hero .consult_btn {
    text-shadow: 1px 1px 2.5px rgba(195, 120, 17, 0.47), -1px 1px 2.5px rgba(195, 120, 17, 0.47), 1px -1px 2.5px rgba(195, 120, 17, 0.47), -1px -1px 2.5px rgba(195, 120, 17, 0.47);
    box-shadow: 0 3px 0 0 #aa6d11;
  }
}
.hero .catalog_btn {
  text-shadow: 2px 2px 5px rgba(20, 58, 173, 0.47), -2px 2px 5px rgba(20, 58, 173, 0.47), 2px -2px 5px rgba(20, 58, 173, 0.47), -2px -2px 5px rgba(20, 58, 173, 0.47);
  background: linear-gradient(to left top, #3d79e1 0 50%, #3f85ff calc(50% + 1px) 100%);
  box-shadow: 0 6px 0 0 #2859ad;
  color: #fff;
}

/*
.fv_notes {
  width: 90%;
  max-width: 1080px;
  margin: 2% auto 0;
  border: 1px solid #ccc;
  padding: 1%;
  font-size: 1.6rem;
}

.fv_notes__items {
  padding-left: 2em;
  text-indent: -1.75em;
}
  */
/* read_cta  */
.read_cta {
  padding: 0 0 5%;
  position: relative;
  text-align: center;
  overflow: hidden;
  display: block;
}
.read_cta > p {
  font-family: "Noto Sans Japanese-sb";
  font-size: 3.8rem;
  line-height: 1.2;
  text-align: center;
  margin-bottom: 4rem;
}
@media screen and (max-width: 428px) {
  .read_cta > p {
    font-size: 2rem;
    line-height: 1.6;
    margin-bottom: 7vw;
  }
}
.read_cta a {
  font-family: "Noto Sans Japanese-sb";
}
.read_cta a.reco__item_btn {
  color: #fff;
}
.read_cta a.reco__item_btn :link {
  color: #fff;
}

/*アイリスオーヤマのインタラクティブボード*/
.recommendation {
  padding-bottom: 10%;
}

.recommendation__inner {
  max-width: 1080px;
  text-align: center;
  margin: 0 auto;
}
@media screen and (max-width: 767px) {
  .recommendation__inner {
    padding: 6.93333vw 0 9.6vw;
    margin-bottom: 9.6vw;
  }
}

.recommendation__mt {
  font-size: 4.8rem;
  font-family: "Noto Sans Japanese-sb";
  color: #a74978;
  border-bottom: solid 3px #a74978;
  display: inline-block;
  margin-bottom: 5%;
}
@media screen and (max-width: 767px) {
  .recommendation__mt {
    font-size: 2rem;
  }
}

.recommendation__items {
  display: flex;
  justify-content: space-between;
}
@media screen and (max-width: 428px) {
  .recommendation__items {
    flex-direction: column;
    align-items: center;
    width: 80%;
    margin: 0 auto;
    gap: 5vw;
  }
}

/*reco__item_btn*/
.reco__item_btn {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 80%;
  max-width: 450px;
  height: 74px;
  font-family: "Noto Sans Japanese-sb";
  color: #fff;
  font-size: 2.4rem;
  position: relative;
  background-color: #42566b;
  background-image: linear-gradient(to right, #516377 0%, #516377 80px, #42566b 80px, #42566b 100%);
  box-shadow: 0 1px 1px 0 rgba(0, 0, 0, 0.4);
  border: none;
  margin-inline: auto;
  margin-top: 30px;
}
@media screen and (max-width: 767px) {
  .reco__item_btn {
    gap: 3vw;
    width: 100%;
    height: 11.2vw;
    background-color: #42566b;
    background-image: linear-gradient(to right, #516377 0%, #516377 40px, #42566b 40px, #42566b 100%);
    box-shadow: 0 1px 1px 0 rgba(0, 0, 0, 0.4);
  }
}
@media screen and (max-width: 428px) {
  .reco__item_btn {
    width: 80%;
    font-size: 3.4vw;
    margin-top: 8%;
  }
}
.reco__item_btn::before {
  position: absolute;
  top: 0;
  left: 50px;
  display: block;
  content: "";
  border-bottom: 74px solid #42566b;
  border-left: 30px solid transparent;
}
@media screen and (max-width: 767px) {
  .reco__item_btn::before {
    left: 25px;
    border-width: 0 0 11.2vw 15px;
  }
}
.reco__item_btn::after {
  content: "";
  width: 0;
  height: 0;
  border-top: 7.5px solid #fff;
  border-right: 5px solid rgba(0, 0, 0, 0);
  border-left: 5px solid rgba(0, 0, 0, 0);
  transform: rotate(-90deg);
}
@media screen and (min-width: 429px) {
  .reco__item_btn::after {
    border-width: 15px 10px 0;
    position: absolute;
    right: 1vw;
  }
}

.recommendation__item {
  width: 44%;
  height: 540px;
  padding: 3% 2%;
  box-sizing: content-box;
  position: relative;
}
@media screen and (max-width: 428px) {
  .recommendation__item {
    width: 100%;
    height: 380px;
    padding: 9% 2%;
  }
}
.recommendation__item .recommendation_item_img {
  max-width: 430px;
  margin: 0 auto;
  width: 90%;
}
.recommendation__item .reco__item_link {
  content: "";
  position: absolute;
  inset: 0;
  padding: 6% 2%;
}
.recommendation__item .recommendation__item_tl {
  font-size: 4rem;
  font-family: "Noto Sans Japanese-sb";
  margin: 3.5% 0;
}
@media screen and (max-width: 428px) {
  .recommendation__item .recommendation__item_tl {
    font-size: 2.6rem;
  }
}
.recommendation__item.w_boad {
  border: solid #308eec 2px;
  background: url(../images/w_boad_bg_pc.jpg) bottom left no-repeat;
  background-size: cover;
}
.recommendation__item.w_boad .recommendation__item_tl {
  color: #425161;
}
.recommendation__item.b_boad {
  border: solid #00bda7 2px;
  background: url(../images/b_boad_bg_pc.jpg) bottom left no-repeat;
  background-size: cover;
}
.recommendation__item.b_boad .recommendation__item_tl {
  color: #00695d;
}
.recommendation__item.b_boad .reco__item_btn {
  background-color: #00695d;
  background-image: linear-gradient(to right, #14756a 0%, #14756a 80px, #00695d 80px, #00695d 100%);
}
@media screen and (max-width: 767px) {
  .recommendation__item.b_boad .reco__item_btn {
    background-image: linear-gradient(to right, #14756a 0%, #14756a 40px, #00695d 40px, #00695d 100%);
  }
}
.recommendation__item.b_boad .reco__item_btn::before {
  border-bottom: 74px solid #00695d;
}
@media screen and (max-width: 767px) {
  .recommendation__item.b_boad .reco__item_btn::before {
    border-width: 0 0 11.2vw 15px;
  }
}
.recommendation__item .recommendation__item_txt {
  font-size: 2rem;
}
@media screen and (max-width: 428px) {
  .recommendation__item .recommendation__item_txt {
    font-size: 1.6rem;
  }
}

/*features*/
.features {
  padding: 0 0 50px;
}
@media screen and (max-width: 428px) {
  .features {
    padding: 0 4vw 8vw;
    margin-bottom: 2.33333vw;
  }
}

.features__inner {
  max-width: 1080px;
  text-align: center;
  margin: 0 auto;
}

/* 3つの特長 */
@media screen and (min-width: 429px) {
  .features_heading {
    width: -moz-fit-content;
    width: fit-content;
    min-height: 170px;
    margin: 5% auto 0;
    background: url(../images/features_heading_bg_pc.webp) no-repeat right 30px/183px auto;
  }
}
@media screen and (min-width: 1200px) and (min-resolution: 192dpi) {
  .features_heading {
    background-image: url(../images/features_heading_bg_pc@2x.webp);
  }
}

.features__txt {
  font-size: 1.8rem;
  text-align: left;
}
@media screen and (max-width: 428px) {
  .features__txt {
    font-size: 1.6rem;
    margin-bottom: 2em;
  }
}

.features_heading_txt {
  font-family: "Noto Sans Japanese-sb";
  font-size: 3rem;
  line-height: 1.4;
  color: #333;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .features_heading_txt {
    font-size: 1.6rem;
  }
}
.features_heading_txt::before {
  content: "＼";
}
.features_heading_txt::after {
  content: "／";
}

.features_heading_tl {
  font-family: "Noto Sans Japanese-sb";
  font-size: 50px;
  line-height: 1;
  color: #a74978;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .features_heading_tl {
    font-size: 25px;
    font-size: 2.5rem;
    line-height: 1.4;
  }
}
.features_heading_tl .underline {
  padding-bottom: 0.2em;
  border-bottom: 4px solid #a74978;
}
@media screen and (max-width: 767px) {
  .features_heading_tl .underline {
    padding-bottom: 0;
    border-bottom-width: 2px;
  }
}
.features_heading_tl .small {
  font-size: 40px;
}
@media screen and (max-width: 767px) {
  .features_heading_tl .small {
    font-size: 20px;
    font-size: 2rem;
  }
}
.features_heading_tl .marker {
  padding: 0 0.25em;
  margin-left: 0.25em;
  color: #fff;
  background: #a74978;
}
.features_heading_tl .large {
  position: relative;
  top: 0.075em;
  font-size: 70px;
}
@media screen and (max-width: 767px) {
  .features_heading_tl .large {
    font-size: 35px;
    font-size: 3.5rem;
  }
}

.features_btns {
  display: flex;
  align-items: center;
  justify-content: space-between;
  max-width: 1140px;
  margin: 48px auto 64px;
}
@media screen and (max-width: 767px) {
  .features_btns {
    margin: 12.8vw 0 8.53333vw;
  }
}

.features_btn {
  flex-basis: 30.7018%;
  height: 300px;
  border: 4px solid #a74978;
  border-radius: 10px;
}
@media screen and (max-width: 767px) {
  .features_btn {
    flex-basis: 30.4348%;
    height: 40vw;
    border-width: 2px;
    border-radius: 5px;
  }
}
.features_btn .features_btn_detail {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: space-around;
  height: 100%;
  padding: 40px 0;
}
@media screen and (max-width: 767px) {
  .features_btn .features_btn_detail {
    padding: 5.33333vw 1.33333vw 5.6vw;
  }
}

.features_btn_label {
  position: relative;
  font-family: "Noto Sans Japanese-sb";
  font-size: 25px;
  line-height: 1.32;
  color: #333;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .features_btn_label {
    font-size: 12.5px;
    font-size: 1.25rem;
  }
}
.features_btn_label .badge {
  position: absolute;
  top: -95px;
  left: 50%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  width: 80px;
  height: 80px;
  margin-left: -40px;
  font-family: "Noto Sans Japanese-sb";
  font-size: 16px;
  line-height: 1;
  color: #fff;
  border-radius: 40px;
  background: #a74978;
}
@media screen and (max-width: 767px) {
  .features_btn_label .badge {
    top: -41px;
    width: 10.66667vw;
    height: 10.66667vw;
    margin-left: -5.33333vw;
    font-size: 8px;
    font-size: 0.8rem;
    border-radius: 5.33333vw;
  }
}
.features_btn_label .badge .large {
  display: block;
  font-size: 34px;
}
@media screen and (max-width: 767px) {
  .features_btn_label .badge .large {
    font-size: 17px;
    font-size: 1.7rem;
  }
}
.features_btn_label .notice {
  color: #000;
  background: linear-gradient(transparent 60%, #fffd96 60%);
}

@media screen and (min-width: 429px) {
  .features_btn_img {
    width: 200px;
    margin: 0 auto;
  }
}
@media screen and (max-width: 767px) {
  .features_btn_img {
    padding: 0 1.33333vw;
  }
}

.features_cont {
  max-width: 1200px;
  margin: 0 auto;
  margin-top: 88px;
  background-color: #fff;
  box-shadow: 0 2px 8px 0 rgba(0, 0, 0, 0.2);
}
@media screen and (max-width: 767px) {
  .features_cont {
    margin-top: 9.6vw;
  }
}
.features_cont.features_1 {
  margin-top: 0;
}
.features_cont.features_1 .features_tl_wrapper {
  background: #ddf4ef url(../images/features_tl_bg_1_pc.webp) no-repeat 105% center/auto 160%;
}
@media screen and (max-width: 767px) {
  .features_cont.features_1 .features_tl_wrapper {
    background-image: url(../images/features_tl_bg_1_sp.webp);
  }
}
.features_cont.features_2 .features_tl_wrapper {
  background: #ddf4ef url(../images/features_tl_bg_2_pc.webp) no-repeat 100% 0%/auto 100%;
}
@media screen and (max-width: 767px) {
  .features_cont.features_2 .features_tl_wrapper {
    background-image: url(../images/features_tl_bg_2_sp.webp);
  }
}
.features_cont.features_3 .features_tl_wrapper {
  background: #ddf4ef url(../images/features_tl_bg_3_pc.webp) no-repeat 105% top/auto 100%;
}
@media screen and (max-width: 767px) {
  .features_cont.features_3 .features_tl_wrapper {
    background-image: url(../images/features_tl_bg_3_pc.webp);
  }
}

.features_tl_wrapper {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 220px;
  background-color: #ddf4ef;
  background-repeat: no-repeat;
  background-position: right top;
  background-size: auto 100%;
}
@media screen and (max-width: 767px) {
  .features_tl_wrapper {
    height: 29.33333vw;
    padding-left: 5.06667vw;
  }
}
.features_tl_wrapper::before {
  position: absolute;
  content: "";
  top: -20px;
  left: -20px;
  width: 172px;
  height: 172px;
  background: linear-gradient(135deg, #04c095 0%, #2ec3e1 50%, transparent 50%, transparent 100%);
  opacity: 0.4;
}
@media screen and (max-width: 767px) {
  .features_tl_wrapper::before {
    top: -1px;
    left: -1px;
    width: 14.93333vw;
    height: 14.93333vw;
  }
}

.features_tl {
  display: flex;
  align-items: center;
  justify-content: center;
  font-family: "Noto Sans Japanese-sb";
  font-size: 48px;
  line-height: 1.4;
  color: #00695d;
  text-align: center;
  text-shadow: 2px 2px 7px rgba(255, 255, 255, 0.8), -2px 2px 7px rgba(255, 255, 255, 0.8), 2px -2px 7px rgba(255, 255, 255, 0.8), -2px -2px 7px rgba(255, 255, 255, 0.8);
}
@media screen and (max-width: 767px) {
  .features_tl {
    font-size: 25px;
    font-size: 2rem;
  }
}
.features_tl .badge {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  width: 116px;
  height: 116px;
  margin-right: 32px;
  font-family: "Noto Sans Japanese-sb";
  font-size: 22px;
  line-height: 1;
  color: #fff;
  text-shadow: none;
  background: linear-gradient(to left, #2ec3e2 0%, #04c095 100%);
  border-radius: 58px;
}
@media screen and (max-width: 767px) {
  .features_tl .badge {
    width: 12.8vw;
    height: 12.8vw;
    margin-right: 2.13333vw;
    font-size: 11px;
    font-size: 1.1rem;
    border-radius: 6.4vw;
  }
}
.features_tl .badge .large {
  display: block;
  font-size: 50px;
}
@media screen and (max-width: 767px) {
  .features_tl .badge .large {
    font-size: 20px;
    font-size: 2rem;
  }
}
.features_tl .notice {
  color: #ee5a00;
  background: linear-gradient(transparent 70%, #f8fb93 70%);
}
.features_tl .notice .txt_kome {
  font-size: 50%;
}
.features_tl .small {
  font-size: 22px;
  font-size: 2.2rem;
}

.features_design_tl,
.features_func_tl {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  height: 60px;
  padding: 0 0.5em 0 0.75em;
  font-family: "Noto Sans Japanese-sb";
  font-size: 20px;
  line-height: 1.2;
  color: #333;
  background-color: #eee;
}
@media screen and (max-width: 767px) {
  .features_design_tl,
  .features_func_tl {
    min-height: 11vw;
    font-size: 12px;
    font-size: 1.4rem;
    margin-bottom: 2em;
  }
}

.features_design_tl {
  margin-bottom: 1em;
}
.features_design_tl::before {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  margin-right: 0.5em;
  color: #fff;
  border-radius: 20px;
  background-color: #00aa3a;
}
@media screen and (max-width: 767px) {
  .features_design_tl::before {
    width: 5.33333vw;
    height: 5.33333vw;
    border-radius: 2.66667vw;
  }
}

.features_func_tl {
  margin-bottom: 1.4em;
}
.features_func_tl::before {
  background-color: #05c096;
  content: "";
  width: 10px;
  height: 30px;
  margin-right: 16px;
}
@media screen and (max-width: 767px) {
  .features_func_tl::before {
    width: 1.33333vw;
    height: 9.33333vw;
    margin-right: 2.13333vw;
  }
}
.features_func_tl .txt_kome {
  top: -5px;
  position: relative;
  margin-right: 0.5em;
}

.features_connect_items {
  display: flex;
  flex-wrap: wrap;
  gap: 64px 0;
  justify-content: space-between;
  margin-top: 64px;
}
@media screen and (max-width: 767px) {
  .features_connect_items {
    gap: 6.4vw 0;
    margin-top: 5.33333vw;
  }
}
.features_connect_items .features_connect_item {
  display: flex;
  flex-basis: 47.2223%;
  flex-direction: column;
}
@media screen and (max-width: 767px) {
  .features_connect_items .features_connect_item {
    flex-basis: 47.62%;
  }
}

.features_connect_thumb_1,
.features_connect_thumb_2 {
  padding-top: 32px;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .features_connect_thumb_1,
  .features_connect_thumb_2 {
    padding-top: 4.26667vw;
    margin: 0 auto;
  }
}

/* カラーユニバーサルデザインに対応 */
.intro {
  max-width: 1140px;
  padding: 20px 50px;
  border: 1px solid #afafaf;
  margin-inline: auto;
}
@media screen and (max-width: 767px) {
  .intro {
    padding: 6.66667vw 4vw;
    margin: 0 4.26667vw;
  }
}
.intro .intro_tl_area {
  text-align: center;
}
.intro .intro_lead {
  color: #696969;
}
.intro .intro_text_area {
  display: flex;
  gap: 2rem;
  margin-top: 2.5rem;
}
@media screen and (max-width: 767px) {
  .intro .intro_text_area {
    gap: 2vw;
  }
}
.intro .intro_text {
  font-size: 18px;
  margin-bottom: 1rem;
}
@media screen and (max-width: 767px) {
  .intro .intro_text {
    font-size: 11px;
    font-size: 1.1rem;
  }
}
.intro .small {
  font-size: 16px;
}
@media screen and (max-width: 767px) {
  .intro .small {
    font-size: 11px;
    font-size: 1.1rem;
  }
}
.intro .intro_icon {
  width: 25%;
}
@media screen and (max-width: 767px) {
  .intro .intro_icon {
    width: 100%;
  }
}

/* ラインナップ */
.lineup {
  padding: 0 0 80px;
}
@media screen and (max-width: 767px) {
  .lineup {
    padding: 0 0 13.86667vw;
  }
}
.lineup .small {
  font-size: 1.4rem;
  text-align: right;
}
@media screen and (max-width: 767px) {
  .lineup .small {
    font-size: 1.2rem;
    text-align: center;
    margin-inline: auto;
  }
}
.lineup .lineup_tl {
  margin-bottom: 7%;
}
@media screen and (max-width: 767px) {
  .lineup .lineup_tl {
    margin-bottom: 8vw;
  }
}
.lineup .lineup_tl_img {
  width: 80%;
}
.lineup .lineup_items {
  display: flex;
  justify-content: space-between;
  max-width: 1064px;
  text-align: center;
  margin: 40px auto 6rem;
  align-items: flex-start;
  padding-left: 3%;
}
@media screen and (max-width: 767px) {
  .lineup .lineup_items {
    display: block;
    width: 85.2vw;
    margin: 8.53333vw auto 0;
  }
}
.lineup .lineup_items.edla {
  align-items: flex-end;
}
.lineup .lineup_items.edla .lineup_item:nth-child(1) {
  flex-basis: 435px;
}
.lineup .lineup_items.edla .lineup_item:nth-child(2) {
  flex-basis: 498px;
}
@media screen and (max-width: 767px) {
  .lineup .lineup_items.edla .lineup_item:not(:first-child) {
    margin-top: 6vw;
  }
}
.lineup .lineup_item {
  position: relative;
}
.lineup .lineup_item:nth-child(1) {
  flex-basis: 424px;
}
.lineup .lineup_item:nth-child(2) {
  flex-basis: 489px;
}
@media screen and (max-width: 767px) {
  .lineup .lineup_item:not(:first-child) {
    margin-top: 6vw;
    margin-bottom: 6vw;
  }
}
.lineup .cp-cta_mini {
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 1.5em 0 0;
  padding: 0.5em 2em 0.5em 5em;
  width: 94%;
  height: 3vw;
  color: #fff;
  font-size: 1.8rem;
  font-family: "Noto Sans Japanese-sb";
  text-shadow: 2px 2px 5px rgba(195, 17, 106, 0.47), -2px 2px 5px rgba(195, 17, 106, 0.47), 2px -2px 5px rgba(195, 17, 106, 0.47), -2px -2px 5px rgba(195, 120, 17, 0.47);
  background: linear-gradient(to left top, #ff1d62 0 50%, #fa5788 calc(50% + 1px) 100%);
  border-radius: 4px;
  box-shadow: 0 6px 0 0 #aa1158;
}
@media screen and (max-width: 767px) {
  .lineup .cp-cta_mini {
    margin: 0;
    padding: 0 6.93333vw 0 14vw;
    font-size: 1.4rem;
    height: 12vw;
    box-shadow: 0 3px 0 0 #aa1158;
  }
}
.lineup .cp-cta_mini::before, .lineup .cp-cta_mini::after {
  display: block;
  content: "";
}
.lineup .cp-cta_mini::after {
  margin-left: auto;
  border-color: transparent transparent transparent #fff;
  border-style: solid;
  border-width: 8px 0 8px 10px;
}
@media screen and (max-width: 767px) {
  .lineup .cp-cta_mini::after {
    border-width: 7px 0 7px 12px;
  }
}
.lineup .lineup_explanation {
  display: inline-block;
  font-family: "Noto Sans Japanese-sb";
  font-size: 20px;
  color: #666;
  line-height: 1.4;
  padding: 0 7%;
  margin: 0 auto 10px;
  position: relative;
}
@media screen and (max-width: 767px) {
  .lineup .lineup_explanation {
    font-size: 13px;
    font-size: 1.3rem;
  }
}
.lineup .lineup_explanation::before, .lineup .lineup_explanation::after {
  position: absolute;
  top: 0;
  content: "";
  width: 1px;
  height: 100%;
  background: #666;
  border-radius: 3px;
}
.lineup .lineup_explanation:before {
  left: 0;
  transform: rotate(-40deg);
}
.lineup .lineup_explanation:after {
  right: 0;
  transform: rotate(40deg);
}
.lineup .lineup_container {
  width: 100%;
  max-width: 1140px;
  margin-inline: auto;
  margin-bottom: 80px;
}
@media screen and (max-width: 767px) {
  .lineup .lineup_container {
    width: 95%;
    margin-top: 20px;
    margin-bottom: 0;
  }
}
.lineup .lineup_table {
  width: 100%;
  border: 2px solid #fff;
  margin-inline: auto;
  font-size: 1.6rem;
}
@media screen and (max-width: 767px) {
  .lineup .lineup_table {
    font-size: 1.4rem;
  }
}
.lineup .lineup_table tr:nth-child(odd) {
  background-color: #dcdddd;
}
.lineup .lineup_table tr:nth-child(even) {
  background-color: #eeefef;
}
.lineup .lineup_table th,
.lineup .lineup_table td {
  text-align: center;
  padding: 3px 0;
  border: 2px solid #fff;
}
.lineup .lineup_table th {
  background-color: #dcdddd;
  width: 20%;
}
@media screen and (max-width: 767px) {
  .lineup .lineup_table th {
    width: 40%;
  }
}
.lineup .lineup_table td {
  width: 80%;
}
@media screen and (max-width: 767px) {
  .lineup .lineup_table td {
    width: 60%;
  }
}
.lineup .lineup_spec {
  width: 90%;
  max-width: 485px;
  height: 74px;
  font-size: 2.4rem;
  font-family: "Noto Sans Japanese-sb";
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  text-align: center;
  background-color: #a74978;
  background-image: linear-gradient(to right, #ae5783 0%, #ae5783 80px, #a74978 80px, #a74978 100%);
  box-shadow: 0 1px 1px 0 rgba(0, 0, 0, 0.4);
  margin-inline: auto;
  margin-top: 80px;
}
@media screen and (max-width: 767px) {
  .lineup .lineup_spec {
    width: 60%;
    height: 11.2vw;
    font-size: 12px;
    font-size: 1.2rem;
    background-color: #a74978;
    background-image: linear-gradient(to right, #ae5783 0%, #ae5783 40px, #a74978 40px, #a74978 100%);
    box-shadow: 0 1px 1px 0 rgba(0, 0, 0, 0.4);
    margin-top: 40px;
  }
}
.lineup .lineup_spec::before {
  position: absolute;
  top: 0;
  left: 50px;
  display: block;
  content: "";
  border-bottom: 74px solid #a74978;
  border-left: 30px solid transparent;
}
@media screen and (max-width: 767px) {
  .lineup .lineup_spec::before {
    left: 25px;
    border-width: 0 0 11.2vw 15px;
  }
}
.lineup .lineup_spec span {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-evenly;
  width: 100%;
  height: 100%;
  padding: 0 1.2vw;
}
.lineup .lineup_spec span::before, .lineup .lineup_spec span::after {
  content: "";
}
.lineup .lineup_spec span::before {
  width: 6.4vw;
  height: 5.6vw;
  left: 6%;
  background: url(../images/toc_item_3_ico.png) no-repeat center center/contain;
}
@media screen and (min-width: 429px) {
  .lineup .lineup_spec span::before {
    width: 48px;
    height: 42px;
    position: absolute;
  }
}
.lineup .lineup_spec span::after {
  width: 0;
  height: 0;
  border-top: 7.5px solid #fff;
  border-right: 5px solid rgba(0, 0, 0, 0);
  border-left: 5px solid rgba(0, 0, 0, 0);
  transform: rotate(-90deg);
}
@media screen and (min-width: 429px) {
  .lineup .lineup_spec span::after {
    border-width: 15px 10px 0;
    position: absolute;
    right: 1vw;
  }
}
.lineup .note_border_box {
  border: 1px solid #666;
  width: 90%;
  max-width: 1000px;
  margin: 0 auto;
}
.lineup .note__box {
  width: 100%;
  padding: 20px 30px;
  margin: auto;
  display: block;
  font-size: 18px;
}
@media screen and (max-width: 767px) {
  .lineup .note__box {
    font-size: 11px;
    font-size: 1.1rem;
    padding: 6.66667vw 4vw 0;
  }
}
.lineup .side-note_box {
  width: 100%;
  padding: 20px 30px;
  font-size: 18px;
  margin-inline: auto;
  display: flex;
  gap: 2rem;
}
@media screen and (max-width: 767px) {
  .lineup .side-note_box {
    font-size: 11px;
    font-size: 1.1rem;
    padding: 6.66667vw 4vw;
    gap: 10px;
  }
}
.lineup .side-note_box .side-note_img {
  width: 25%;
}
@media screen and (max-width: 767px) {
  .lineup .side-note_box .side-note_img {
    width: 100%;
  }
}
.lineup a.lineup_btn {
  width: 485px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  font-family: "Noto Sans Japanese-sb";
  color: #fff;
  text-align: center;
  background: linear-gradient(to left top, #f88900 0 50%, #f99c29 calc(50% + 1px) 100%);
  height: 80px;
  padding: 0 32px;
  font-size: 25px;
  border-radius: 4px;
  color: #fff;
  text-shadow: 2px 2px 5px rgba(195, 120, 17, 0.47), -2px 2px 5px rgba(195, 120, 17, 0.47), 2px -2px 5px rgba(195, 120, 17, 0.47), -2px -2px 5px rgba(195, 120, 17, 0.47);
  box-shadow: 0 6px 0 0 #aa6d11;
  margin: 75px auto 0;
}
@media screen and (max-width: 767px) {
  .lineup a.lineup_btn {
    width: 80%;
    height: 12vw;
    padding: 0 5vw;
    font-size: 12.5px;
    font-size: 1.25rem;
    line-height: 1.2;
    border-radius: 2px;
    text-shadow: 1px 1px 2.5px rgba(195, 120, 17, 0.47), -1px 1px 2.5px rgba(195, 120, 17, 0.47), 1px -1px 2.5px rgba(195, 120, 17, 0.47), -1px -1px 2.5px rgba(195, 120, 17, 0.47);
    box-shadow: 0 3px 0 0 #aa6d11;
    margin-top: 6.53333vw;
  }
}
.lineup a.lineup_btn::before {
  display: block;
  content: "";
  width: 33px;
  height: 24px;
  background: url(../images/ico_inq_closing.png) no-repeat center center/contain;
  margin-right: 35px;
}
@media screen and (max-width: 767px) {
  .lineup a.lineup_btn::before {
    width: 4.4vw;
    height: 3.2vw;
    margin-right: 2.93333vw;
  }
}
.lineup a.lineup_btn::after {
  display: block;
  content: "";
  margin-left: auto;
  border-color: rgba(0, 0, 0, 0) rgba(0, 0, 0, 0) rgba(0, 0, 0, 0) #fff;
  border-style: solid;
  border-width: 8px 0 8px 10px;
}
@media screen and (max-width: 767px) {
  .lineup a.lineup_btn::after {
    border-width: 4px 0 4px 6px;
    margin-right: 2.93333vw;
    margin-left: 0;
  }
}

/* シーン・コラム共有 */
.column_tl,
.case-studies_tl {
  font-family: "Noto Sans Japanese-sb";
  font-size: 3.8rem;
  line-height: 1.2;
  text-align: center;
  margin-bottom: 4rem;
}
@media screen and (max-width: 767px) {
  .column_tl,
  .case-studies_tl {
    font-size: 2rem;
    line-height: 1.6;
    margin-bottom: 7vw;
  }
}

.column_list,
.case-studies_list {
  width: 90%;
  max-width: 1150px;
  display: flex;
  flex-wrap: wrap;
  gap: 3%;
  margin: 0 auto 8%;
}
@media screen and (max-width: 428px) {
  .column_list,
  .case-studies_list {
    flex-direction: column;
    gap: 18px;
    margin-bottom: 20vw;
  }
}

/* シーン */
.scene {
  padding: 0 0 10%;
}
@media screen and (max-width: 428px) {
  .scene {
    padding: 0 4vw 8vw;
    margin-bottom: 2.33333vw;
  }
}

.scene_txt {
  font-family: "Noto Sans Japanese-m";
  font-size: 1.8rem;
  text-align: center;
  margin-bottom: 5rem;
}
@media screen and (max-width: 428px) {
  .scene_txt {
    font-size: 1.6rem;
    text-align: left;
    margin-bottom: 2rem;
  }
}

.scene_list {
  width: 95%;
  max-width: 1440px;
  display: flex;
  flex-wrap: wrap;
  -moz-column-gap: 3%;
       column-gap: 3%;
  row-gap: 3.5rem;
  margin: 0 auto;
}
@media screen and (max-width: 428px) {
  .scene_list {
    width: 100%;
    gap: 18px;
  }
}

.scene_item {
  width: 48.5%;
  background-color: #f2f2f2;
  padding: 3.82% 2.57%;
}
@media screen and (max-width: 428px) {
  .scene_item {
    width: 100%;
    padding: 7% 5%;
  }
}
.scene_item:nth-of-type(1) .scene_item_tl {
  color: #c80258;
}
.scene_item:nth-of-type(2) .scene_item_tl {
  color: #e45f00;
}
.scene_item:nth-of-type(3) .scene_item_tl {
  color: #0d6794;
}
.scene_item:nth-of-type(4) .scene_item_tl {
  color: #008990;
}
.scene_item:nth-of-type(5) .scene_item_tl {
  color: #6085bd;
}

.scene_item_tl {
  font-family: "Noto Sans Japanese-sb";
  font-size: 2.8rem;
  line-height: 2;
  margin-bottom: 2rem;
}
@media screen and (max-width: 1400px) {
  .scene_item_tl {
    font-size: clamp(20px, 0.63vw + 15.14px, 24px);
  }
}
@media screen and (max-width: 428px) {
  .scene_item_tl {
    font-size: 4vw;
  }
}
.scene_item_tl span {
  display: block;
  font-size: 80%;
}

.scene_item_name {
  text-align: right;
}

@media screen and (min-width: 768px) {
  .scene_item_img + .scene_item_txt {
    padding-top: 2.5rem;
  }
}

.scene_item_txt {
  line-height: 1.8;
}
@media screen and (min-width: 768px) {
  .scene_item_txt {
    font-size: clamp(16px, 0.6vw + 11.43px, 20px);
  }
}

/*.scene_box {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 10px;
  padding-left: 10px;
  padding-bottom: 5px;
}*/
/*.scene_subtl {
  font-family: 'Noto Sans Japanese-sb';
  font-size: 2.6rem;
  padding-right: 7px;
  border-right: 1px solid #333;

  @media screen and (min-width: 1200px) {
    font-size: min(2.3vw, 3.2rem);
  }

  @media screen and (max-width: 767px) {
    font-size: 2rem;
  }

  &.fc-blue {
    background: linear-gradient(#375ba8, #92d8eb);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
  }

  &.fc-red {
    background: linear-gradient(#e82e1d, #fdca40);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
  }

  &.fc-purple {
    background: linear-gradient(#462388, #e2457a);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
  }
}*/
/* コラム */
.column_item {
  flex-basis: 31.3333333333%;
  box-shadow: 0 2px 10px rgba(120, 120, 120, 0.2);
}
@media screen and (max-width: 428px) {
  .column_item {
    flex-basis: 100%;
  }
}

.column_box {
  padding: 5px 15px 10px;
}

.column_date {
  font-size: 1.4rem;
  margin-bottom: 0.75rem;
}

.column_txt {
  font-size: 1.6rem;
}

.features_cont_inner {
  padding: 32px 60px 64px;
}
@media screen and (max-width: 767px) {
  .features_cont_inner {
    padding: 5.33333vw 4vw 7.46667vw;
  }
}
.features_cont_inner .annotation {
  max-width: unset;
  padding: 0;
  margin-bottom: 50px;
}
.features_cont_inner .txt-right {
  justify-content: flex-end;
  align-items: flex-end;
}

.case-studies_txt {
  font-size: 1.6rem;
}

/* 豊富な導入実績200社！ */
.record_txt_wrapper {
  width: 64vw;
  margin: 0 auto;
}
@media screen and (min-width: 768px) {
  .record_txt_wrapper {
    width: 480px;
  }
}
.record_txt_wrapper .record_txt_box::after {
  display: block;
  width: 0;
  height: 0;
  margin: 0 auto;
  content: "";
  border-color: #074774 transparent transparent transparent;
  border-style: solid;
}
@media screen and (max-width: 767px) {
  .record_txt_wrapper .record_txt_box::after {
    border-width: 3.06667vw 2.13333vw 0 2.13333vw;
  }
}
@media screen and (min-width: 768px) {
  .record_txt_wrapper .record_txt_box::after {
    border-width: 23px 16px 0 16px;
  }
}
.record_txt_wrapper .record_txt {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0.4em 0;
  margin-right: auto;
  margin-left: auto;
  font-family: "Noto Sans Japanese-sb";
  font-size: 17px;
  font-size: 1.7rem;
  line-height: 1;
  color: #fff;
  text-align: center;
  background-color: #074774;
}
@media screen and (min-width: 768px) {
  .record_txt_wrapper .record_txt {
    font-size: 35px;
  }
}
.record_txt_wrapper .record_txt .notice {
  display: inline-flex;
  align-items: center;
  margin-left: 0.25em;
  color: #ffc;
}
.record_txt_wrapper .record_txt .large {
  font-size: 60px;
}
@media screen and (max-width: 767px) {
  .record_txt_wrapper .record_txt .large {
    font-size: 30px;
    font-size: 3rem;
  }
}
.record_txt_wrapper .record_ex {
  padding: 0;
  font-size: 6px;
  font-size: 0.6rem;
  line-height: 1.4;
  color: #333;
  text-align: right;
}
@media screen and (min-width: 768px) {
  .record_txt_wrapper .record_ex {
    font-size: 12px;
  }
}

.corp .corp-box {
  align-items: center;
  width: 100%;
  margin-bottom: 5%;
}
.corp .corp-tit {
  width: 100%;
  margin: 0 auto;
  text-align: center;
}
.corp .tit {
  position: relative;
  display: inline-block;
  padding: 20px 40px;
  font-family: "Noto Sans Japanese-sb";
  font-size: 2rem;
  font-weight: bold;
  color: #074774;
  text-align: center;
}
.corp .tit:before, .corp .tit:after {
  position: absolute;
  top: 50%;
  display: inline-block;
  width: 35px;
  height: 2px;
  content: "";
  background-color: #074774;
}
.corp .tit:before {
  left: 0;
}
.corp .tit:after {
  right: 0;
}
.corp .corp_logomark {
  text-align: center;
}

.features_lead {
  margin-bottom: 2em;
  font-family: "Noto Sans Japanese-sb";
  font-size: 20px;
  line-height: 1.6;
  color: #333;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .features_lead {
    font-size: 12px;
    font-size: 1.2rem;
  }
}
.features_lead .features_lead {
  font-size: 20px;
  line-height: 1.5;
}
.features_lead .notice {
  color: #ee5a00;
}

.features_design_img {
  width: 890px;
  margin: 0 auto 17px;
}
@media screen and (max-width: 767px) {
  .features_design_img {
    margin-bottom: 5.33333vw;
  }
}

.features_design_items {
  display: flex;
  flex-wrap: wrap;
  gap: 32px 2%;
  align-items: flex-start;
  justify-content: flex-start;
  margin-top: 3rem;
}
@media screen and (max-width: 767px) {
  .features_design_items {
    gap: 4.26667vw 3%;
  }
}

.features_design_items .features_design_item {
  flex-basis: 23%;
}
@media screen and (max-width: 767px) {
  .features_design_items .features_design_item {
    flex-basis: 47%;
  }
}
.features_design_items .features_design_item:nth-child(1) .features_design_tl::before {
  content: "1";
}
.features_design_items .features_design_item:nth-child(2) .features_design_tl::before {
  content: "2";
}
.features_design_items .features_design_item:nth-child(3) .features_design_tl::before {
  content: "3";
}
.features_design_items .features_design_item:nth-child(4) .features_design_tl::before {
  content: "4";
}
.features_design_items .features_design_item:nth-child(5) .features_design_tl::before {
  content: "5";
}
.features_design_items .features_design_item:nth-child(6) .features_design_tl::before {
  content: "6";
}
.features_design_items .features_design_item:nth-child(7) .features_design_tl::before {
  content: "7";
}

.features_design_txt,
.features_func_txt {
  font-size: 18px;
  line-height: 1.7;
  color: #333;
}
@media screen and (max-width: 767px) {
  .features_design_txt,
  .features_func_txt {
    font-size: 11px;
    font-size: 1.1rem;
  }
}

.features_design_txt + img,
.features_func_txt + img {
  margin-top: 24px;
}
@media screen and (max-width: 767px) {
  .features_design_txt + img,
  .features_func_txt + img {
    margin-top: 3.2vw;
  }
}

.features_func_box {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin: 30px 0;
}
@media screen and (max-width: 767px) {
  .features_func_box {
    display: block;
    margin: 0 0 30px;
  }
}
.features_func_box .features_func_img {
  width: 70%;
}
@media screen and (max-width: 767px) {
  .features_func_box .features_func_img {
    width: 100%;
  }
}
.features_func_box .features_func_list {
  width: 25%;
}
@media screen and (max-width: 767px) {
  .features_func_box .features_func_list {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    margin: 5vw 0;
  }
}
.features_func_box .features_func_list li {
  padding-left: 2rem;
  position: relative;
  margin-bottom: 0.5rem;
}
@media screen and (max-width: 767px) {
  .features_func_box .features_func_list li {
    width: 50%;
    font-size: 11px;
    font-size: 1.1rem;
  }
}
.features_func_box .features_func_list li:before {
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  content: "";
  width: 14px;
  height: 14px;
  background-color: #333;
}
@media screen and (max-width: 767px) {
  .features_func_box .features_func_list li:before {
    font-size: 11px;
    font-size: 1.1rem;
  }
}

.features_func_img {
  width: 1075px;
  margin: 32px auto 30px;
}
@media screen and (max-width: 767px) {
  .features_func_img {
    margin: 4.26667vw auto 2vw;
  }
}

.features_func_items {
  display: flex;
  flex-wrap: wrap;
  gap: 64px 2%;
  align-items: flex-start;
  justify-content: flex-start;
  margin-top: 3rem;
}
@media screen and (max-width: 767px) {
  .features_func_items {
    gap: 6.4vw 3%;
  }
}
.features_func_items .features_func_item {
  flex-basis: 23%;
}
@media screen and (max-width: 767px) {
  .features_func_items .features_func_item {
    flex-basis: 47%;
  }
}

.features_model_img {
  width: 883px;
  margin: 32px auto 30px;
}
@media screen and (max-width: 767px) {
  .features_model_img {
    margin: 4.26667vw auto 2vw;
  }
}

.features_connect_inner {
  display: flex;
  justify-content: space-between;
  padding-left: 50px;
  margin: 64px 0;
}
@media screen and (max-width: 767px) {
  .features_connect_inner {
    display: block;
    padding-left: 0;
    margin: 5.33333vw 0;
  }
}
.features_connect_inner .features_connect_info {
  flex-basis: 338px;
}
@media screen and (max-width: 767px) {
  .features_connect_inner .features_connect_info {
    display: flex;
    justify-content: space-between;
    margin-top: 5.33333vw;
  }
}
.features_connect_inner .features_connect_info dl {
  background-color: #ddf4ef;
  padding: 1.5em;
  border-radius: 4px;
  margin-bottom: 2rem;
}
@media screen and (max-width: 767px) {
  .features_connect_inner .features_connect_info dl {
    flex-basis: 47.3016%;
    word-break: break-all;
    padding: 0.75em;
    border-radius: 2px;
  }
}
.features_connect_inner .features_connect_info dl dt {
  font-family: "Noto Sans Japanese-sb";
  font-size: 18px;
}
@media screen and (max-width: 767px) {
  .features_connect_inner .features_connect_info dl dt {
    font-size: 11px;
    font-size: 1.1rem;
    line-height: 1.5;
  }
}
.features_connect_inner .features_connect_info dl dd {
  font-size: 18px;
  line-height: 1.6;
}
@media screen and (max-width: 767px) {
  .features_connect_inner .features_connect_info dl dd {
    font-size: 11px;
    font-size: 1.1rem;
  }
}
.features_connect_inner .features_connect_info dl dd .small {
  font-size: 12px;
}
@media screen and (max-width: 767px) {
  .features_connect_inner .features_connect_info dl dd .small {
    font-size: 9px;
    font-size: 0.9rem;
  }
}
.features_connect_inner .features_connect_info dl dd .features_connect_option_img {
  width: 231px;
  margin: 16px auto 0;
}
@media screen and (max-width: 767px) {
  .features_connect_inner .features_connect_info dl dd .features_connect_option_img {
    width: 24.26667vw;
    margin: 4.26667vw auto 0;
  }
}
@media screen and (min-width: 429px) {
  .features_connect_inner .features_connect_info dl + dl {
    margin-top: 28px;
  }
}
.features_connect_inner .features_connect_img {
  flex-basis: 592px;
  height: -moz-fit-content;
  height: fit-content;
}

/* 納入事例 */
/*
.case {
  max-width: 1140px;
  padding: 72px 0 0;
  margin-inline: auto;

  @media screen and (max-width: 767px) {
    padding: 0 8vw 9.6vw;
  }

  .case_tl {
    font-family: "Noto Sans Japanese-sb";
    font-size: 26px;
    line-height: 1.4;
    color: #333;
    text-align: center;

    @media screen and (max-width: 767px) {
      margin-bottom: 1em;
      font-size: 13px;
      font-size: 1.6rem;
    }
  }

  .case-inner {
    display: flex;
    gap: 32px;
    margin: 40px 0;

    @media screen and (max-width: 767px) {
      display: block;
    }

    &>* {
      flex-basis: 50%;
    }

    .case_txtbox {
      text-align: left;
    }

    .case_lead {
      font-family: "Noto Sans Japanese-sb";
      color: $primary-color;
      font-size: 32px;
      line-height: 1.2;
      padding-bottom: 30px;
      margin-bottom: 20px;
      position: relative;

      &::after {
        position: absolute;
        bottom: 0;
        right: 0;
        left: 0;
        content: "";
        width: 95%;
        height: 3px;
        background: $primary-color;
      }

      @media screen and (max-width: 767px) {
        display: flex;
        justify-content: center;
        font-size: 16px;
        font-size: 1.6rem;
        padding-bottom: 10px;
        margin: 20px auto;
      }
    }

    .case_name {
      font-family: "Noto Sans Japanese-sb";
      font-size: 18px;
      margin-bottom: 10px;

      @media screen and (max-width: 767px) {
        font-size: 13px;
        font-size: 1.3rem;
        margin-bottom: 0;
      }
    }

    .case_txt {
      font-size: 18px;

      @media screen and (max-width: 767px) {
        font-size: 13px;
        font-size: 1.3rem;
      }
    }
  }

  .case-btn {
    width: 90%;
    max-width: 750px;
    height: 103px;
    font-size: 2.4rem;
    font-family: "Noto Sans Japanese-sb";
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    text-align: center;
    text-shadow: .5px .5px 2.5px rgba(62, 169, 153, .72), -0.5px .5px 2.5px rgba(62, 169, 153, .72), .5px -0.5px 2.5px rgba(62, 169, 153, .72), -0.5px -0.5px 2.5px rgba(62, 169, 153, .72);
    background-color: #4abdac;
    background-image: linear-gradient(to right, #6ecabd 0%, #6ecabd 80px, #4abdac 80px, #4abdac 100%);
    box-shadow: 0 1px 1px 0 rgba(0, 0, 0, .4);
    margin-inline: auto;
    margin-top: 4rem;

    @media screen and (max-width: 767px) {
      height: 11.2vw;
      font-size: 12px;
      font-size: 1.2rem;
      text-shadow: .5px .5px 2.5px rgba(62, 169, 153, .72), -0.5px .5px 2.5px rgba(62, 169, 153, .72), .5px -0.5px 2.5px rgba(62, 169, 153, .72), -0.5px -0.5px 2.5px rgba(62, 169, 153, .72);
      background-color: #4abdac;
      background-image: linear-gradient(to right, #6ecabd 0%, #6ecabd 40px, #4abdac 40px, #4abdac 100%);
      box-shadow: 0 1px 1px 0 rgba(0, 0, 0, .4);
      margin-top: 40px;
    }

    &::before {
      position: absolute;
      top: 0;
      left: 52px;
      display: block;
      content: "";
      border-bottom: 103px solid #4abdac;
      border-left: 28px solid rgba(0, 0, 0, 0);

      @media screen and (max-width: 767px) {
        left: 25px;
        border-width: 0px 0 11.2vw 15px;
      }
    }

    &::after {
      position: absolute;
      right: 2%;
      width: 0;
      height: 0;
      content: "";
      border-top: 10px solid rgba(0, 0, 0, 0);
      border-bottom: 10px solid rgba(0, 0, 0, 0);
      border-left: 15px solid #fff;

      @media screen and (max-width: 767px) {
        border-width: 5px 0 5px 7.5px;
        right: 3vw;
      }
    }
  }
}
  */
.case_items {
  margin: 0 5.33333vw;
}
@media screen and (min-width: 429px) {
  .case_items {
    display: flex;
    justify-content: space-between;
    max-width: 1000px;
    margin: 0px auto;
  }
}
.case_items .case_item {
  margin-bottom: 10%;
}
@media screen and (min-width: 429px) {
  .case_items .case_item {
    flex-basis: 460px;
    margin-bottom: unset;
  }
}
.case_items .case_img {
  margin-bottom: 2.66667vw;
}
@media screen and (min-width: 429px) {
  .case_items .case_img {
    margin-bottom: 20px;
  }
}
.case_items .case_info {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.case_items .case_icon {
  display: flex;
  justify-content: space-between;
  width: -moz-fit-content;
  width: fit-content;
  background-color: #fff;
  border: 1px solid #5ea3d3;
}
@media screen and (min-width: 429px) {
  .case_items .case_icon.sp-only {
    display: none;
  }
}
.case_items .case_icon > dt,
.case_items .case_icon > dd {
  padding: 0.5em 0.7em;
  font-family: "Noto Sans Japanese-sb";
  font-size: 10px;
  font-size: 1rem;
  line-height: 1;
  white-space: nowrap;
}
@media screen and (min-width: 429px) {
  .case_items .case_icon > dt,
  .case_items .case_icon > dd {
    font-size: 16px;
  }
}
.case_items .case_icon > dt {
  color: #fff;
  background-color: #5ea3d3;
}
.case_items .case_icon > dd {
  color: #010101;
}
.case_items .case_tl {
  margin: 0.5em 0;
  font-family: "Noto Sans Japanese-sb";
  font-size: 17px;
  font-size: 1.7rem;
  line-height: 1.4;
  color: #074774;
}
@media screen and (min-width: 429px) {
  .case_items .case_tl {
    font-size: 24px;
  }
}
.case_items .case_name_1 {
  flex-basis: 240px;
}
.case_items .case_name_2 {
  flex-basis: 253px;
}
.case_items .case_name,
.case_items .case_txt {
  line-height: 1.7;
  color: #000;
}
.case_items .case_name {
  font-family: "Noto Sans Japanese-sb";
  font-size: 12px;
  font-size: 1.2rem;
}
@media screen and (min-width: 429px) {
  .case_items .case_name {
    margin-bottom: 1em;
    font-size: 18px;
  }
}
.case_items .case_txt {
  font-size: 13px;
  font-size: 1.3rem;
}
@media screen and (min-width: 429px) {
  .case_items .case_txt {
    font-size: 14px;
  }
}

.case_btn {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 56vw;
  height: 10.66667vw;
  padding-right: 5.6vw;
  margin: 7.46667vw auto 0;
  font-family: "Noto Sans Japanese-sb";
  font-size: 11px;
  font-size: 1.1rem;
  line-height: 1.3;
  color: #fff !important;
  text-align: center;
  background: linear-gradient(to right bottom, #2f658a 0 50%, #074774 calc(50% + 1px) 100%);
  border-radius: 2px;
  box-shadow: 0 3px 0 #0b2e48;
}
@media screen and (min-width: 429px) {
  .case_btn {
    width: 600px;
    height: 80px;
    padding-right: 40px;
    margin-top: 32px;
    font-size: 25px;
    border-radius: 4px;
    box-shadow: 0 6px 0 #0b2e48;
  }
}
.case_btn::after {
  position: absolute;
  top: 50%;
  display: block;
  content: "";
  transform: translateY(-50%);
}
@media screen and (min-width: 429px) {
  .case_btn::after {
    right: 30px;
    border-top: 8px solid transparent;
    border-bottom: 8px solid transparent;
    border-left: 10px solid #fff;
  }
}

/* 仕様・オプション品・取扱説明書 */
.spec {
  background-color: #eee;
  padding: 72px 0;
  margin-bottom: 70px;
}
@media screen and (max-width: 767px) {
  .spec {
    padding: 6.93333vw 4vw 9.6vw;
    margin-bottom: 9.6vw;
  }
}
.spec .spec_tabs {
  display: flex;
  flex-wrap: wrap;
  max-width: 1080px;
  margin: 0 auto;
}
@media screen and (max-width: 767px) {
  .spec .spec_tabs {
    justify-content: space-between;
  }
}
.spec .spec_tabs::after {
  position: relative;
  display: block;
  order: -1;
  width: 100%;
  height: 8px;
  content: "";
  background-color: #04c096;
}
@media screen and (max-width: 767px) {
  .spec .spec_tabs::after {
    height: 4px;
  }
}
.spec .spec_tabs .spec_tab_label {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-basis: 25.926%;
  height: 74px;
  font-size: 24px;
  order: -1;
  font-family: "Noto Sans Japanese-sb";
  color: #696969;
  cursor: pointer;
  background-color: #fff;
  border-top: 1px solid #ccc;
  border-left: 1px solid #ccc;
  border-right: 1px solid #ccc;
}
@media screen and (max-width: 767px) {
  .spec .spec_tabs .spec_tab_label {
    flex-basis: 31.1595%;
    height: 42px;
    font-size: 12px;
    font-size: 1.2rem;
  }
}
.spec .spec_tabs .spec_tab_label::before {
  position: absolute;
  top: 50%;
  left: 6px;
  display: block;
  margin-top: -4px;
  margin-right: 12px;
  content: "";
  border-top: 8px solid #acacac;
  border-right: 5px solid transparent;
  border-left: 5px solid transparent;
}
@media screen and (min-width: 429px) {
  .spec .spec_tabs .spec_tab_label:first-of-type {
    margin-left: 5.5556%;
  }
}
.spec .spec_tabs .spec_tab_label:first-of-type::before {
  left: 12px;
}
@media screen and (min-width: 429px) {
  .spec .spec_tabs .spec_tab_label::before {
    left: 30px;
    margin-top: -8px;
    margin-right: 32px;
    border-top-width: 16px;
    border-right-width: 10px;
    border-left-width: 10px;
  }
}
@media screen and (min-width: 429px) {
  .spec .spec_tabs .spec_tab_label:first-of-type::before {
    left: 50px;
  }
}
@media screen and (min-width: 429px) {
  .spec .spec_tabs .spec_tab_label:not(:first-of-type) {
    margin-left: 5.7408%;
  }
}
.spec .spec_tabs input {
  display: none;
}
.spec .spec_tabs .spec_tabs_cont {
  width: 100%;
  height: 0;
  overflow: hidden;
  background-color: #fff;
  box-shadow: 0 2px 8px 0 rgba(0, 0, 0, 0.2);
  opacity: 0;
}
@media screen and (max-width: 767px) {
  .spec .spec_tabs .spec_tabs_cont {
    box-shadow: 0 1px 4px 0 rgba(0, 0, 0, 0.2);
  }
}
.spec .spec_tabs input:checked + .spec_tab_label {
  color: #fff;
  background: linear-gradient(to left, rgb(46, 195, 226) 0%, rgb(25, 194, 188) 49%, rgb(4, 192, 149) 100%);
}
.spec .spec_tabs input:checked + .spec_tab_label + .spec_tabs_cont {
  height: auto;
  overflow: auto;
  opacity: 1;
}
.spec .spec_tabs input:checked + .spec_tab_label::before {
  border-top-color: #fff;
}
.spec .spec_tabs .spec_tabs_cont_inner {
  padding: 80px 40px;
}
@media screen and (max-width: 767px) {
  .spec .spec_tabs .spec_tabs_cont_inner {
    padding: 8vw 4vw;
  }
}
.spec .spec_tbl {
  width: 100%;
  border-collapse: collapse;
}
.spec .spec_tbl th,
.spec .spec_tbl td {
  padding: 0.6567em;
  font-size: 16px;
  line-height: 1.875;
  line-height: 1.4;
  color: #333;
  text-align: center;
  vertical-align: middle;
  border: 1px solid #afafaf;
}
@media screen and (max-width: 767px) {
  .spec .spec_tbl th,
  .spec .spec_tbl td {
    padding: 0.45em;
    font-size: 11px;
    font-size: 1.1rem;
    line-height: 1.4;
  }
}
.spec .spec_tbl th {
  font-family: "Noto Sans Japanese-sb";
  background-color: #eee;
}
@media screen and (min-width: 429px) {
  .spec .spec_tbl th {
    width: 220px;
  }
  .spec .spec_tbl th.heading {
    width: 100px;
  }
}
.spec .spec_tbl td {
  background-color: #f9fffd;
}
.spec .spec_tbl td.bold {
  font-family: "Noto Sans Japanese-sb";
}
.spec .spec_tbl td.va_top {
  vertical-align: top;
}
.spec .spec_tbl tr:nth-child(even) td {
  background-color: #f3fffc;
}
.spec .spec_tbl .spec_pdf_bottom {
  display: block;
  width: 110px;
  background: linear-gradient(0deg, white, #ececec 50%, white 50%, white);
  color: #e10000;
  font-size: 1.4rem;
  border: solid 1px #cccccc;
  padding: 3px 10px;
  border-radius: 2px;
  margin: 0 auto;
}
@media screen and (max-width: 428px) {
  .spec .spec_tbl .spec_pdf_bottom {
    width: 70px;
    font-size: 1rem;
  }
}
.spec .spec_tbl .spec_pdf_bottom::after {
  float: right;
  content: "\f15c";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  color: #999;
}
.spec .spec_mt {
  display: inline-block;
  border: 2px solid #acacac;
  padding: 0.25rem 2.6rem;
  font-size: 20px;
  font-family: "Noto Sans Japanese-sb";
  margin-bottom: 1em;
}
@media screen and (max-width: 767px) {
  .spec .spec_mt {
    font-size: 1.6rem;
    margin-bottom: 1rem;
  }
}
.spec .spec_other_items {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  justify-content: space-evenly;
  gap: 60px;
}
@media screen and (max-width: 767px) {
  .spec .spec_other_items {
    justify-content: space-between;
    gap: 5.33333vw 0;
  }
}
.spec .spec_other_items::after {
  display: block;
  content: "";
  width: 30%;
}
.spec .spec_other_items {
  /* オプション品用スライダー */
}
.spec .spec_other_items .spec_other_item {
  width: 30%;
  position: relative;
}
@media screen and (max-width: 767px) {
  .spec .spec_other_items .spec_other_item {
    width: 45%;
  }
}
.spec .spec_other_items .spec_other_item {
  /*swiper*/
}
.spec .spec_other_items .spec_other_item .swiper_container {
  position: relative;
}
.spec .spec_other_items .spec_other_item .swiper-controller-box {
  position: absolute;
  bottom: 32%;
  left: 50%;
  transform: translateX(-50%);
  padding-inline: 0.5rem;
}
@media screen and (max-width: 767px) {
  .spec .spec_other_items .spec_other_item .swiper-controller-box {
    width: 58%;
    bottom: 38%;
  }
}
.spec .spec_other_items .spec_other_item .swiper-pagination {
  position: relative;
}
.spec .spec_other_items .spec_other_item .swiper-pagination-bullets.swiper-pagination-horizontal {
  bottom: -10px;
}
.spec .spec_other_items .spec_other_item .swiper-pagination-bullet {
  background-color: #1d5668;
  width: 10px;
  height: 10px;
}
@media screen and (max-width: 767px) {
  .spec .spec_other_items .spec_other_item .swiper-pagination-bullet {
    width: 8px;
    height: 8px;
    margin: 0 3%;
  }
}
.spec .spec_other_items .spec_other_item .swiper-button-next,
.spec .spec_other_items .spec_other_item .swiper-button-prev {
  top: 161%;
  width: 12px;
  height: 12px;
  color: #1d5668;
}
.spec .spec_other_items .spec_other_item .swiper-button-next::after,
.spec .spec_other_items .spec_other_item .swiper-button-prev::after {
  font-size: 12px;
}
.spec .spec_other_items .spec_other_item .swiper-button-next {
  right: -25%;
  left: auto;
}
.spec .spec_other_items .spec_other_item .swiper-button-prev {
  right: auto;
  left: -25%;
}
.spec .spec_other_items .spec_other_item {
  /*
  .swiper-button-prev,
  .swiper-button-next {
    position: absolute;
    top: 35%;

    &::after {
      content: "";
      width: 20px;
      height: 20px;
      background-color: #acacac;

      @media screen and (max-width: 767px) {
        width: 14px;
        height: 14px;
      }
    }
  }
    */
  /*
  .swiper-button-prev {
    right: auto;
    left: -10%;

    @media screen and (max-width: 767px) {
      left: -14%;
    }

    &::after {
      clip-path: polygon(100% 0, 0 50%, 100% 100%);
    }
  }

  .swiper-button-next {
    right: -10%;
    left: auto;

    @media screen and (max-width: 767px) {
      right: -14%;
    }

    &::after {
      clip-path: polygon(0 0, 100% 49%, 0 100%);
    }
  }
    */
}
.spec .spec_other_items .other_item_txt {
  font-family: "Noto Sans Japanese-sb";
  line-height: 1.5;
  font-size: 20px;
  color: #333;
  text-align: center;
  margin-top: 16px;
  margin-top: 30px;
  min-height: 90px;
}
@media screen and (max-width: 767px) {
  .spec .spec_other_items .other_item_txt {
    font-size: 11px;
    font-size: 1.1rem;
    margin-top: 2.5rem;
    min-height: 55px;
  }
}
.spec .spec_oher_mirror {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  grid-template-rows: 1fr;
  grid-column-gap: 60px;
  grid-row-gap: 0px;
  margin-top: 100px;
}
@media screen and (max-width: 767px) {
  .spec .spec_oher_mirror {
    grid-template-columns: 1fr;
    grid-template-rows: repeat(2, 1fr);
    grid-column-gap: 0px;
    grid-row-gap: 10px;
    margin-top: 2rem;
  }
}
.spec .spec_oher_mirror .spec_other_item {
  width: 300px;
}
@media screen and (max-width: 767px) {
  .spec .spec_oher_mirror .spec_other_item {
    width: 50%;
  }
}
.spec .op_mirror01 {
  grid-area: 1/1/2/2;
}
@media screen and (max-width: 767px) {
  .spec .op_mirror01 {
    grid-area: 1/1/2/2;
  }
}
.spec .op_mirror02 {
  grid-area: 1/2/2/3;
}
@media screen and (max-width: 767px) {
  .spec .op_mirror02 {
    grid-area: 2/1/3/2;
  }
}
.spec .spec_btn_items h3 {
  width: 100%;
  font-size: 2.5rem;
  border-bottom: 3px solid #dcdcdc;
  font-weight: bold;
  text-align: center;
  padding-bottom: 1rem;
}
.spec .spec_btn_items h3 span {
  font-size: 2rem;
}
@media screen and (min-width: 429px) {
  .spec .spec_btn_items {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    gap: 16px;
    margin-bottom: 90px;
  }
}
@media screen and (max-width: 428px) {
  .spec .spec_btn_items {
    margin-bottom: 6rem;
  }
  .spec .spec_btn_items h3 {
    font-size: 2rem;
  }
  .spec .spec_btn_items h3 span {
    font-size: 1.6rem;
  }
}
@media screen and (min-width: 429px) {
  .spec .spec_btn_item {
    flex-basis: 48.5%;
  }
}
@media screen and (max-width: 767px) {
  .spec .spec_btn_item:not(:first-child) {
    margin-top: 5.33333vw;
  }
}
.spec .spec_btn_item dt {
  margin-bottom: 0.75em;
  font-family: "Noto Sans Japanese-sb";
  font-size: 20px;
  color: #333;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .spec .spec_btn_item dt {
    font-size: 11px;
    font-size: 1.1rem;
  }
}
@media screen and (max-width: 428px) {
  .spec .spec_btn_item dd {
    margin-bottom: 1rem;
  }
}
@media screen and (min-width: 429px) {
  .spec .spec_btn_item dd:nth-child(2) {
    margin-bottom: 20px;
  }
}
.spec .spec_btn_kome {
  display: block;
  margin-top: 5px;
}
.spec .spec_btn {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 80px;
  padding: 0 32px;
  background-color: #04b08a;
  box-shadow: 0 6px 0 0 #06775e;
  border-radius: 4px;
}
@media screen and (max-width: 767px) {
  .spec .spec_btn {
    width: 76.9842%;
    height: 10.66667vw;
    padding: 0 3.2vw;
    margin: 0 auto;
    border-radius: 2px;
    box-shadow: 0 3px 0 0 #06775e;
  }
}
.spec .spec_btn p {
  flex: 1;
  font-family: "Noto Sans Japanese-sb";
  color: #fff;
  font-size: 25px;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .spec .spec_btn p {
    font-size: 12.5px;
    font-size: 1.25rem;
  }
}
.spec .spec_btn p .small {
  font-size: 18px;
}
@media screen and (max-width: 767px) {
  .spec .spec_btn p .small {
    font-size: 9px;
    font-size: 0.9rem;
  }
}
.spec .spec_btn::before, .spec .spec_btn::after {
  display: block;
  content: "";
}
.spec .spec_btn::before {
  width: 34px;
  height: 40px;
  background-image: url(../images/spec_btn_ico_1.png);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: 100% auto;
}
@media screen and (max-width: 767px) {
  .spec .spec_btn::before {
    width: 4.53333vw;
    height: 5.33333vw;
  }
}
@media screen and (min-width: 429px) {
  .spec .spec_btn::after {
    border-top: 8px solid transparent;
    border-bottom: 8px solid transparent;
    border-left: 10px solid #fff;
  }
}
.spec .spec_btn.spec_btn_1::before {
  background-image: url(../images/spec_btn_ico_1.png);
}
.spec .spec_btn.spec_btn_2::before {
  background-image: url(../images/spec_btn_ico_2.png);
}
.spec .spec_link-btn {
  width: 90%;
  max-width: 750px;
  height: 103px;
  font-size: 2.4rem;
  font-family: "Noto Sans Japanese-sb";
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  text-align: center;
  text-shadow: 0.5px 0.5px 2.5px rgba(62, 169, 153, 0.72), -0.5px 0.5px 2.5px rgba(62, 169, 153, 0.72), 0.5px -0.5px 2.5px rgba(62, 169, 153, 0.72), -0.5px -0.5px 2.5px rgba(62, 169, 153, 0.72);
  background-color: #4abdac;
  background-image: linear-gradient(to right, #6ecabd 0%, #6ecabd 80px, #4abdac 80px, #4abdac 100%);
  box-shadow: 0 1px 1px 0 rgba(0, 0, 0, 0.4);
  margin-inline: auto;
  margin-top: 4rem;
}
@media screen and (max-width: 767px) {
  .spec .spec_link-btn {
    height: 11.2vw;
    font-size: 12px;
    font-size: 1.2rem;
    text-shadow: 0.5px 0.5px 2.5px rgba(62, 169, 153, 0.72), -0.5px 0.5px 2.5px rgba(62, 169, 153, 0.72), 0.5px -0.5px 2.5px rgba(62, 169, 153, 0.72), -0.5px -0.5px 2.5px rgba(62, 169, 153, 0.72);
    background-color: #4abdac;
    background-image: linear-gradient(to right, #6ecabd 0%, #6ecabd 40px, #4abdac 40px, #4abdac 100%);
    box-shadow: 0 1px 1px 0 rgba(0, 0, 0, 0.4);
    margin-top: 40px;
  }
}
.spec .spec_link-btn::before {
  position: absolute;
  top: 0;
  left: 52px;
  display: block;
  content: "";
  border-bottom: 103px solid #4abdac;
  border-left: 28px solid rgba(0, 0, 0, 0);
}
@media screen and (max-width: 767px) {
  .spec .spec_link-btn::before {
    left: 25px;
    border-width: 0px 0 11.2vw 15px;
  }
}
.spec .spec_link-btn::after {
  position: absolute;
  right: 2%;
  width: 0;
  height: 0;
  content: "";
  border-top: 10px solid rgba(0, 0, 0, 0);
  border-bottom: 10px solid rgba(0, 0, 0, 0);
  border-left: 15px solid #fff;
}
@media screen and (max-width: 767px) {
  .spec .spec_link-btn::after {
    border-width: 5px 0 5px 7.5px;
    right: 3vw;
  }
}
.spec .model-no {
  display: block;
}
.spec .ico-new {
  display: block;
}
.spec .ico-new::after {
  content: "NEW";
  background-color: red;
  color: #fff;
  display: inline-block;
  padding: 0 1.2rem;
  position: relative;
  font-size: 1.4rem;
}

/* コラム */
/*.column {
  background-color: #eee;

  .column_inner {
    max-width: 1080px;
    text-align: center;
    padding: 72px 0;
    margin: 0 auto;

    @media screen and (max-width: 767px) {
      padding: 6.93333vw 0 9.6vw;
      margin-bottom: 9.6vw;
    }
  }

  .column_tl {
    font-family: "Noto Sans Japanese-sb";
    font-size: 26px;
    line-height: 1.4;
    color: #333;
    margin-bottom: 1rem;

    @media screen and (max-width: 767px) {
      font-size: 13px;
      font-size: 1.3rem;
    }
  }

  .column_subtl {
    display: inline-block;
    font-family: "Noto Sans Japanese-sb";
    color: $primary-color;
    font-size: 50px;
    line-height: 1.2;
    padding-bottom: 15px;
    margin-bottom: 50px;
    position: relative;

    @media screen and (max-width: 767px) {
      font-size: 19px;
      font-size: 1.9rem;
      padding: 0 30px 10px;
      margin-bottom: 30px;
    }

    &::after {
      position: absolute;
      bottom: 0;
      right: 0;
      left: 0;
      content: "";
      height: 3px;
      background: $primary-color;
    }
  }

  .column_date,
  .column_txt {
    font-size: 15px;

    @media screen and (max-width: 767px) {
      font-size: 11px;
      font-size: 1.1rem;
    }
  }

  .column_date {
    margin-top: 8px;
  }*/
/* コラム用スライダー */
/*.swiper-container {
    width: min(100%, 1200px);
    padding-bottom: 30px;
    margin: 0 auto 20px;
    position: relative;

    @media screen and (max-width: 767px) {
      width: 90%;
      margin: 0 auto 4%;
    }

    .swiper-slide a {
      display: block;
      background-color: #fff;
      text-align: left;
      padding: 20px 20px 40px;

      @media screen and (max-width: 767px) {
        height: min(52vw, 230px);
        padding: 8px 8px 20px;
      }

      picture {
        aspect-ratio: 864 / 493;

        img {
          object-fit: cover;
        }
      }
    }

    .swiper-button-prev,
    .swiper-button-next {
      position: absolute;
      top: 50%;
      transform: translateY(-50%);

      &::after {
        content: "";
        width: 25px;
        height: 30px;
        background-color: #acacac;

        @media screen and (max-width: 767px) {
          width: 14px;
          height: 14px;
        }
      }
    }

    .swiper-button-prev {
      right: auto;
      left: -5%;

      @media screen and (max-width: 767px) {
        left: -7%;
      }

      &::after {
        clip-path: polygon(100% 0, 0 50%, 100% 100%);
      }
    }

    .swiper-button-next {
      right: -5%;
      left: auto;

      @media screen and (max-width: 767px) {
        right: -7%;
      }

      &::after {
        clip-path: polygon(0 0, 100% 49%, 0 100%);
      }
    }
  }
}*/
.cntArc.documentDownload {
  padding: 50px 0 50px;
}

/* クロージング */
.closing {
  padding: 5.33333vw 4vw 6.4vw;
  background-color: #f2f2f2;
}
@media screen and (max-width: 428px) {
  .closing {
    padding: 14vw 4vw;
    margin-bottom: 8%;
  }
}
.closing .closing_tl {
  font-family: "Noto Sans Japanese-sb";
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1.6875;
  color: #a74978;
  text-align: center;
}
.closing .closing_tl .underline {
  border-bottom: 1px solid #a74978;
}
.closing .closing_tel {
  margin-top: 4.26667vw;
  text-align: center;
}
.closing .closing_tel .closing_tel_txt {
  display: inline-block;
  padding-left: 7.2vw;
  font-family: "Noto Sans Japanese-sb";
  font-size: 33px;
  font-size: 3.3rem;
  line-height: 1;
  color: #a74978;
  background: url(../images/ico_tel_closing.png) no-repeat left center/4.66667vw auto;
}
.closing .closing_tel .closing_tel_txt a[href^="tel:"] {
  color: #004b79;
  text-decoration: none;
}
.closing .closing_tel .closing_tel_subtxt {
  font-family: "Noto Sans Japanese-sb";
  font-size: 10px;
  font-size: 1rem;
}
.closing .closing_tel .closing_tel_subtxt .small {
  font-size: 8px;
  font-size: 0.8rem;
}
.closing .closing_btns {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-top: 3.2vw;
}
.closing .closing_btns .closing_btn {
  flex-basis: 47.1015%;
}
.closing .closing_btns .closing_btn a {
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: 12vw;
  padding: 0 3.2vw 0 6.4vw;
  font-family: "Noto Sans Japanese-sb";
  font-size: 12.5px;
  font-size: 1.25rem;
  line-height: 1.2;
  color: #fff;
  text-align: center;
  border-radius: 2px;
}
.closing .closing_btns .closing_btn a:link, .closing .closing_btns .closing_btn a:visited {
  color: white;
}
.closing .closing_btns .closing_btn a.btn_catalog {
  background-color: #3d79e1;
  box-shadow: 0 3px 0 0 #3f85ff;
}
.closing .closing_btns .closing_btn a.btn_contact {
  text-shadow: 1px 1px 2.5px rgba(195, 120, 17, 0.47), -1px 1px 2.5px rgba(195, 120, 17, 0.47), 1px -1px 2.5px rgba(195, 120, 17, 0.47), -1px -1px 2.5px rgba(195, 120, 17, 0.47);
  background: linear-gradient(to left top, #f88900 0 50%, #f99c29 calc(50% + 1px) 100%);
  box-shadow: 0 3px 0 0 #aa6d11;
}
.closing .closing_btns .closing_btn a::before, .closing .closing_btns .closing_btn a::after {
  display: block;
  content: "";
}
.closing .closing_btns .closing_btn a::before {
  margin-right: 2.93333vw;
}
.closing .closing_btns .closing_btn a.btn_catalog::before {
  width: 4vw;
  height: 5.06667vw;
  background: url(../images/ico_request_closing.png) no-repeat center center/contain;
}
.closing .closing_btns .closing_btn a.btn_contact::before {
  width: 4.4vw;
  height: 3.2vw;
  background: url(../images/ico_inq_closing.png) no-repeat center center/contain;
}
.closing .closing_btns .closing_btn a::after {
  margin-left: auto;
  border-color: transparent transparent transparent #fff;
  border-style: solid;
  border-width: 4px 0 4px 6px;
}
.closing .closing_sub {
  padding-top: 3.2vw;
  margin-top: 5.86667vw;
  border-top: 1px solid #afafaf;
}
.closing .closing_tm {
  margin-bottom: 1em;
  font-family: "Noto Sans Japanese-sb";
  font-size: 13px;
  font-size: 1.3rem;
  line-height: 1.4;
  color: #333;
  text-align: center;
}

/* ご購入はこちらボタン */
.closing_subbtns {
  display: flex;
  align-items: center;
  justify-content: space-between;
  max-width: 830px;
  margin: 0 auto;
}
.closing_subbtns .closing_subbtn {
  flex-basis: 47.1015%;
}
.closing_subbtns .closing_subbtn a {
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: 8vw;
  padding: 0 3.2vw 0 1.06667vw;
  font-family: "Noto Sans Japanese-sb";
  font-size: 11px;
  font-size: 1.1rem;
  line-height: 1.2;
  color: #fff;
  text-align: center;
  text-shadow: 1px 1px 2.5px rgba(196, 42, 75, 0.49), -1px 1px 2.5px rgba(196, 42, 75, 0.49), 1px -1px 2.5px rgba(196, 42, 75, 0.49), -1px -1px 2.5px rgba(196, 42, 75, 0.49);
  background: linear-gradient(to left top, #ff3963 0 50%, #ff597c calc(50% + 1px) 100%);
  border-radius: 2px;
  box-shadow: 0 3px 0 0 #ae3952;
}
.closing_subbtns .closing_subbtn a:link, .closing_subbtns .closing_subbtn a:visited {
  color: white;
}
.closing_subbtns .closing_subbtn a::before, .closing_subbtns .closing_subbtn a::after {
  display: block;
  content: "";
}
.closing_subbtns .closing_subbtn a::before {
  width: 6vw;
  height: 6.13333vw;
  margin-right: 0.53333vw;
  background: url(../images/closing_subbtn_ico.png) no-repeat center center/contain;
}
.closing_subbtns .closing_subbtn a::after {
  margin-left: auto;
  border-color: transparent transparent transparent #fff;
  border-style: solid;
  border-width: 4px 0 4px 6px;
}

/* バナー */
.bnr_items {
  padding: 11.73333vw 4vw 9.06667vw;
}
.bnr_items .bnr_item_txt {
  margin-bottom: 1em;
  font-family: "Noto Sans Japanese-sb";
  font-size: 11px;
  font-size: 1.1rem;
  line-height: 1.4;
  color: #333;
  text-align: center;
}
.bnr_items .bnr_item_txt:not(:first-child) {
  margin-top: 6.93333vw;
}
.bnr_items .bnr_item_txt::before, .bnr_items .bnr_item_txt::after {
  content: "▼";
}
.bnr_items .bnr_item_txt::before {
  margin-right: 0.5em;
}
.bnr_items .bnr_item_txt::after {
  margin-left: 0.5em;
}

/* 充実サポート */
.support {
  padding: 9.6vw 4vw 7.46667vw;
}
.support .support_header {
  margin-bottom: 6.66667vw;
}
.support .support_header_txt_1,
.support .support_header_txt_2 {
  font-family: "Noto Sans Japanese-sb";
  line-height: 1.5;
  color: #333;
  text-align: center;
}
.support .support_header_txt_1 {
  font-size: 13px;
  font-size: 1.3rem;
}
.support .support_header_txt_1::before {
  content: "＼";
}
.support .support_header_txt_1::after {
  content: "／";
}
.support .support_header_txt_2 {
  margin: 0.4em 0;
  font-size: 19px;
  font-size: 1.9rem;
}
.support .support_header_tl {
  font-family: "Noto Sans Japanese-sb";
  font-size: 25px;
  font-size: 2.5rem;
  line-height: 1.6;
  color: #a74978;
  text-align: center;
}
.support .support_header_tl .underline {
  border-bottom: 2px solid #a74978;
}
.support .support_header_tl .small {
  font-size: 21px;
  font-size: 2.1rem;
}
.support .support_body {
  padding: 5.86667vw 4vw 10.13333vw;
}
.support .support_body_top {
  display: flex;
  align-items: center;
  justify-content: center;
}
.support .support_body_top .support_body_txt {
  margin-top: -0.5em;
}
.support .support_ico {
  flex-basis: 15.73333vw;
  margin-right: 2.13333vw;
  line-height: 0;
}
.support .support_body_txt {
  font-family: "Noto Sans Japanese-sb";
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 1.5;
  color: #333;
  text-align: center;
}
.support .support_body_txt .notice {
  color: #00695d;
}
.support .support_body_txt .large {
  font-size: 18px;
  font-size: 1.8rem;
}
.support .support_body_txt .underline {
  border-bottom: 1px solid #00695d;
}
.support .support_body_box {
  display: flex;
  align-items: flex-start;
  justify-content: center;
  margin-top: 6.4vw;
}
.support .support_img {
  flex-basis: 42.6985%;
  margin-right: 4.8vw;
}
.support .support_btns {
  flex-basis: 51.5874%;
}
.support .support_btns .closing_subbtns {
  display: block;
}
.support .support_btns .closing_subbtns .closing_subbtn:not(:first-child) {
  margin-top: 5.33333vw;
}
.support .support_footer {
  position: relative;
  padding: 3.2vw 0;
  background-color: #a74978;
}
.support .support_footer::before, .support .support_footer::after {
  position: absolute;
  display: block;
  content: "";
}
.support .support_footer::before {
  top: 0;
  left: 0;
  border-top: 6.66667vw solid #17ac9b;
  border-right: 34.93333vw solid transparent;
}
.support .support_footer::after {
  right: 0;
  bottom: 0;
  border-bottom: 6.66667vw solid #17ac9b;
  border-left: 34.93333vw solid transparent;
}
.support .support_footer_txt {
  font-family: "Noto Sans Japanese-m";
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 1.375;
  color: #fff;
  text-align: center;
}
.support .support_footer_imgs {
  margin-top: 2.13333vw;
}
@keyframes fadeIn {
  0% {
    opacity: 0;
    transform: translateY(-10px);
  }
  100% {
    opacity: 1;
    transform: none;
  }
}
/* 注釈 */
.annotation li {
  font-size: 9px;
  font-size: 0.9rem;
  line-height: 1.4;
  color: #333;
}
.annotation li::before {
  margin-right: 0.25em;
  content: "●";
}

@media screen and (max-width: 428px) {
  .anchor {
    display: inline;
  }
}
@media screen and (min-width: 429px) {
  .sp-only {
    display: none;
  }
  .closing {
    max-width: 1140px;
    padding: 56px 50px 48px;
    margin: 5% auto;
  }
  .closing .closing_tl {
    font-size: 32px;
  }
  .closing .closing_tl .underline {
    border-bottom-width: 2px;
  }
  .closing .closing_tl .decoration::before {
    content: "＼";
  }
  .closing .closing_tl .decoration::after {
    content: "／";
  }
  .closing .closing_tel {
    display: flex;
    align-items: baseline;
    justify-content: center;
    margin-top: 28px;
  }
  .closing .closing_tel .closing_tel_txt {
    padding-left: 52px;
    font-size: 56px;
    pointer-events: none;
    background-size: 35px auto;
  }
  .closing .closing_tel .closing_tel_subtxt {
    font-size: 18px;
  }
  .closing .closing_tel .closing_tel_subtxt .small {
    font-size: 14px;
  }
  .closing .closing_btns {
    padding: 0 5px;
    margin-top: 24px;
  }
  .closing .closing_btns .closing_btn {
    flex-basis: 48.6957%;
    flex-basis: 485px;
  }
  .closing .closing_btns .closing_btn a {
    height: 80px;
    padding: 0 32px 0 52px;
    font-size: 25px;
    border-radius: 4px;
  }
  .closing .closing_btns .closing_btn a.btn_catalog {
    box-shadow: 0 6px 0 0 #234d94;
  }
  .closing .closing_btns .closing_btn a.btn_contact {
    text-shadow: 2px 2px 5px rgba(195, 120, 17, 0.47), -2px 2px 5px rgba(195, 120, 17, 0.47), 2px -2px 5px rgba(195, 120, 17, 0.47), -2px -2px 5px rgba(195, 120, 17, 0.47);
    box-shadow: 0 6px 0 0 #aa6d11;
  }
  .closing .closing_btns .closing_btn a::before {
    margin-right: 35px;
  }
  .closing .closing_btns .closing_btn a.btn_catalog::before {
    width: 30px;
    height: 39px;
  }
  .closing .closing_btns .closing_btn a.btn_contact::before {
    width: 33px;
    height: 24px;
  }
  .closing .closing_btns .closing_btn a::after {
    border-width: 8px 0 8px 10px;
  }
  .closing .closing_sub {
    padding-top: 32px;
    margin-top: 46px;
  }
  .closing .closing_tm {
    font-size: 26px;
  }
  .closing_subbtns .closing_subbtn {
    flex-basis: 46.3856%;
  }
  .closing_subbtns .closing_subbtn a {
    height: 60px;
    padding: 0 32px;
    font-size: 22px;
    text-shadow: 2px 2px 5px rgba(196, 42, 75, 0.49), -2px 2px 5px rgba(196, 42, 75, 0.49), 2px -2px 5px rgba(196, 42, 75, 0.49), -2px -2px 5px rgba(196, 42, 75, 0.49);
    border-radius: 4px;
    box-shadow: 0 6px 0 0 #ae3952;
  }
  .closing_subbtns .closing_subbtn a::before {
    width: 45px;
    height: 46px;
    margin-right: 8px;
  }
  .closing_subbtns .closing_subbtn a::after {
    border-width: 8px 0 8px 10px;
  }
  .bnr_items {
    max-width: 1000px;
    padding: 64px 0;
    margin: 0 auto;
  }
  .bnr_items .bnr_item_txt {
    font-size: 22px;
  }
  .bnr_items .bnr_item_txt:not(:first-child) {
    margin-top: 72px;
  }
  .annotation {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    justify-content: flex-start;
    max-width: 1000px;
    margin: 0 auto;
    flex-direction: column;
  }
  .annotation li {
    font-size: 12px;
  }
}
@media screen and (max-width: 767px) {
  .pc-only {
    display: none;
  }
  .spec .spec_btn_item:not(:first-child) {
    margin-top: 5.33333vw;
  }
  .spec .spec_btn::after {
    border-top: 4px solid transparent;
    border-bottom: 4px solid transparent;
    border-left: 5px solid #fff;
  }
  .closing .closing_tl .decoration::before {
    content: "＼";
  }
  .closing .closing_tl .decoration::after {
    content: "／";
  }
  .support .support_footer_imgs {
    padding-left: 13.6vw;
  }
  .support .support_footer_img_1 {
    width: 51.06667vw;
  }
  .support .support_footer_img_2 {
    width: 65.06667vw;
    margin-top: 2.4vw;
  }
  .qa {
    padding-bottom: 5vw;
  }
  .qa .qa_section {
    padding: 5.33333vw 4vw 0;
  }
  .annotation {
    padding: 0 4vw;
  }
  .contactLists__link--contact a:before {
    position: absolute;
    top: 50%;
  }
}
/*補助金*/
.bnr_area {
  width: 90%;
  max-width: 1000px;
  margin-right: auto;
  margin-left: auto;
}
@media screen and (max-width: 428px) {
  .bnr_area {
    margin-bottom: 10%;
  }
}
.bnr_area .inbox {
  position: relative;
}
.bnr_area .inbox .link-bnr {
  border: solid 1px #bcb8b5;
  position: relative;
}
.bnr_area .inbox .btn {
  position: absolute;
  top: 50%;
  right: 3%;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
}
@media screen and (max-width: 428px) {
  .bnr_area .inbox .btn {
    width: 54%;
  }
}
.bnr_area .inbox .btn a {
  display: block;
}

/* フローティングバナー既存上書き */
.fixBanner {
  top: auto;
  bottom: 90px;
  transform: none;
}

.fixBanner__list--est > a {
  background-color: #f88900;
}

.fixBanner__list--ctlg.mail > a:after {
  content: "";
  width: 36px;
  height: 30px;
  margin-right: 10px;
  background: url(../images/ico_request_closing.png) no-repeat center center/contain;
}
@media screen and (max-width: 767px) {
  .fixBanner__list--ctlg.mail > a:after {
    width: 4.4vw;
    height: 3.2vw;
    margin-right: 3.73333vw;
  }
}

/*　比較表　*/
.ib_spec {
  width: 100%;
  margin-inline: auto;
  margin-top: 50px;
}
@media screen and (max-width: 429px) {
  .ib_spec {
    margin-top: 50px;
  }
}
.ib_spec .ib_spec_wrap {
  width: 98%;
  max-width: 1200px;
  margin-inline: auto;
}
@media screen and (max-width: 429px) {
  .ib_spec .ib_spec_wrap {
    width: 95%;
    overflow-x: scroll;
  }
}

.ib_spec_table {
  width: 100%;
  max-width: 1200px;
  margin-inline: auto;
}
@media screen and (max-width: 429px) {
  .ib_spec_table {
    width: 1000px;
  }
}
.ib_spec_table .cell_lightgreen {
  background-color: #50bca4;
  color: #fff;
}
.ib_spec_table .cell_lightgreen.spec_cntent {
  background-color: #edfffb;
  color: #000;
}
.ib_spec_table .cell_lightblue {
  background-color: #00a0e9;
  color: #fff;
}
.ib_spec_table .cell_lightblue.spec_cntent {
  background-color: #ebfaff;
  color: #000;
}
.ib_spec_table .cell_blue {
  background-color: #2559a7;
  color: #fff;
}
.ib_spec_table .cell_blue.spec_cntent {
  background-color: #f3f8ff;
  color: #000;
}
.ib_spec_table .cell_gray {
  background-color: #ededed;
}
.ib_spec_table th,
.ib_spec_table td {
  font-size: 1.6rem;
  text-align: center;
  vertical-align: middle;
}
@media screen and (max-width: 429px) {
  .ib_spec_table th,
  .ib_spec_table td {
    font-size: 1.4rem;
  }
}
.ib_spec_table .spec_thead {
  font-family: "Noto Sans Japanese-sb";
}
@media screen and (max-width: 429px) {
  .ib_spec_table .spec_thead th {
    font-size: 1.8rem;
  }
}
@media screen and (max-width: 429px) {
  .ib_spec_table .spec_thead td {
    font-size: 1.6rem;
  }
}
.ib_spec_table .spec_thead .spec_type {
  padding: 6px;
  border-top: 1px solid #fff;
  border-right: 5px solid #fff;
  border-left: 5px solid #fff;
  border-bottom: 1px solid #fff;
}
.ib_spec_table .spec_thead .spec_explanation {
  padding: 6px;
}
.ib_spec_table .spec_tbody tr:first-of-type th,
.ib_spec_table .spec_tbody tr:first-of-type td {
  border-top: 1px solid #ccc;
}
.ib_spec_table .spec_tbody th,
.ib_spec_table .spec_tbody td {
  padding: 24px 5px;
  border-left: 1px solid #ccc;
  border-bottom: 1px solid #ccc;
}
@media screen and (max-width: 429px) {
  .ib_spec_table .spec_tbody th,
  .ib_spec_table .spec_tbody td {
    padding: 15px 5px;
  }
}
.ib_spec_table .spec_tbody th:last-of-type,
.ib_spec_table .spec_tbody td:last-of-type {
  border-right: 1px solid #ccc;
}
.ib_spec_table .spec_tbody th,
.ib_spec_table .spec_tbody .fw-bold {
  font-family: "Noto Sans Japanese-sb";
}
.ib_spec_table .spec_tbody .spec_item {
  width: 15%;
  font-family: "Noto Sans Japanese-sb";
  padding: 15px 0;
}
@media screen and (max-width: 429px) {
  .ib_spec_table .spec_tbody .spec_item {
    font-size: 1.4rem;
    width: 125px;
  }
}
.ib_spec_table .spec_tbody .spec_item.major-item {
  width: 12%;
}
@media screen and (max-width: 429px) {
  .ib_spec_table .spec_tbody .spec_item.major-item {
    width: 40px;
  }
  .ib_spec_table .spec_tbody .spec_item.major-item div {
    writing-mode: vertical-rl;
    display: inline-block;
  }
}
.ib_spec_table .spec_tbody a.spec_link {
  display: block;
  width: 245px;
  background-color: #fff;
  font-family: "Noto Sans Japanese-sb";
  padding: 7.5px 0;
  border-radius: 5px;
  margin-inline: auto;
  position: relative;
}
.ib_spec_table .spec_tbody a.spec_link::after {
  position: absolute;
  top: 50%;
  right: 5%;
  transform: translateY(-50%);
  content: "";
  width: 5px;
  height: 8px;
  clip-path: polygon(0 0, 100% 50%, 0 100%);
}
.ib_spec_table .spec_tbody a.spec_link.lightblue {
  color: #00a0e9;
  border: 2px solid #00a0e9;
}
.ib_spec_table .spec_tbody a.spec_link.lightblue::after {
  background-color: #00a0e9;
}
.ib_spec_table .spec_tbody a.spec_link.blue {
  color: #2559a7;
  border: 2px solid #2559a7;
}
.ib_spec_table .spec_tbody a.spec_link.blue::after {
  background-color: #2559a7;
}
.ib_spec_table .spec_tbody .link_cell {
  padding: 15px 2px;
}
.ib_spec_table .spec_tbody .other_cell {
  padding: 24px;
}/*# sourceMappingURL=style.css.map */