@charset "utf-8";
/*
Theme Name: Brand-gran
Description: 
Author: Sonicgrow + COSMICGEAR
Version: 1.0
*/
/*-root*/ :root {
  --fnt-base: "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "Meiryo UI", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  --fnt-futura: futura-pt;
  --head2: clamp(1.313rem, 1.063rem + 1.25vw, 2rem); /*21-32*/
  --fs-mid18: clamp(0.938rem, 0.869rem + 0.34vw, 1.125rem); /*15-18*/
  --fs-mid20: clamp(1rem, 0.909rem + 0.45vw, 1.25rem); /*16-20*/
  --head2: clamp(1.313rem, 1.063rem + 1.25vw, 2rem); /*21-32*/
  --base-clr: #1a1a1a;
  --base-blue: #7ac0ce;
  --clr-blue: #51a9bb;
  --clr-pale-blue: #d9ebef;
  --clr-b-red: #a22940;
  --clr-grn: #06c755;
  --clr-d-grn: #247d28;
  --clr-org: #f38f0e;
  --clr-d-org: #a06314;
  --clr-gry: #848484;
  --clr-ylw: #fcf287;
  --wall-pale-blue: #fcfdfd;
  --wall-pale-gry: #f5f5f5;
  --bdr-pale-blue: #d1ebf0;
  --bdr-pale-gry: #e9e9e9;
  --adjust-text: calc((1em* calc(26/14) - 1em) / 2* -1);
  --easing: cubic-bezier(0.45, 0.05, 0.55, 0.95);
  --transition: .3s var(--easing);
}
/*base=====*/
body {
  font-family: var(--fnt-base);
  font-size: min(3.6vw, 14px);
  width: 100%;
  overflow-x: hidden;
  font-weight: 400;
  -webkit-transition: opacity var(--transition);
  -o-transition: opacity var(--transition);
  transition: opacity var(--transition);
  opacity: 0;
  color: var(--base-clr);
}
body.is-load {
  opacity: 1;
}
.fnt-base {
  font-family: var(--fnt-base); /*500-700*/
}
.fnt-futura {
  font-family: futura-pt, var(--fnt-base); /*400-500-700*/
  font-weight: 400;
}
.fl {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
}
.fl.jc_c {
  justify-content: center;
}
.fl_c {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  -webkit-flex-direction: column;
  -moz-flex-direction: column;
  -ms-flex-direction: column;
  -o-flex-direction: column;
  flex-direction: column;
}
.fl_c.ai_c {
  -ms-align-items: center;
  align-items: center;
}
figure {
  margin-bottom: 0 !important;
}
.in-text {
  line-height: calc(26/14);
}
.in-text::before, .in-text::after, .txt-ajst::before, .txt-ajst::after {
  display: block;
  width: 0;
  height: 0;
  content: "";
}
.in-text::before, .txt-ajst::before {
  margin-top: var(--adjust-text);
}
.in-text::after, .txt-ajst::after {
  margin-bottom: var(--adjust-text);
}
/*container
========================================================*/
#container {
  width: 100%;
  min-height: 100vh;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  -webkit-flex-direction: column;
  -moz-flex-direction: column;
  -ms-flex-direction: column;
  -o-flex-direction: column;
  flex-direction: column;
  overflow-x: hidden;
}
#container > * {
  width: 100%;
}
a.cvr {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  z-index: 1;
}
a.udl{
  color: var(--clr-blue);
  text-decoration: underline;
  text-underline-offset: 3px;
}
/*button setting*/
.rect-btn {}
.rect-btn a {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  justify-content: center;
  -ms-align-items: center;
  align-items: center;
  border-radius: 5px;
  -webkit-transition: all var(--transition);
  -o-transition: all var(--transition);
  transition: all var(--transition);
}
.rect-btn.org > *, .web-btn {
  background: var(--clr-org);
  color: #fff;
  box-shadow: 3px 3px 0 var(--clr-d-org);
}
.tel-btn {
  background: var(--base-blue);
  color: #fff;
  box-shadow: 3px 3px 0 #54aec0;
}
.rect-btn.grn:not(.line-btn) > * {
  background: var(--clr-grn);
  color: #fff;
  box-shadow: 3px 3px 0 var(--clr-d-grn);
}
.more-btn {
  width: min(210px, 100vw);
}
.more-btn > * {
  background: var(--base-blue);
  color: #fff;
  font-size: 1.14em;
  font-weight: 600;
  padding: 1em;
  box-shadow: 3px 3px 0 #3b8796;
}
.rect-btn.arrow::after{
  content: "";
  width: 6px;
  aspect-ratio:1/1;
  border: 2px solid;
  border-color: #fff #fff transparent transparent;
  position: absolute;
  right: 1em;
  top: 50%;
  transform: translateY(-50%) rotate(45deg);
  border-radius: 1px;
}
@media(hover) {
  .rect-btn:not(.line-btn) a:hover, .web-btn:hover {
    transform: translateY(1px);
  }
  .rect-btn.org:hover > *, .web-btn:hover {
    box-shadow: 2px 2px 0 var(--clr-d-org);
  }
  .rect-btn.grn:hover > * {
    box-shadow: 2px 2px 0 var(--clr-d-grn);
  }
  .line-btn:hover {
    transform: translateY(2px);
    box-shadow: 2px 2px 0 var(--clr-d-grn);
  }
  .more-btn:hover > * {
    box-shadow: 2px 2px 0 #3b8796;
  }
}
/*hum
=====================================*/
#hum-btn {
  position: fixed;
  top: 0;
  right: 0;
  width: min(70px, 18vw);
  aspect-ratio: 1/1;
  background: var(--base-blue);
  display: none;
  z-index: 100;
  cursor: pointer;
}
#hum-btn button {
  width: 60%;
  height: 2px;
  background: #fff;
  border-radius: 2px;
  position: relative;
  -webkit-transition: background var(--transition);
  -o-transition: background var(--transition);
  transition: background var(--transition);
}
#hum-btn button::before, #hum-btn button::after {
  content: "";
  width: 100%;
  height: 2px;
  border-radius: 2px;
  position: absolute;
  left: 0;
  background: #fff;
  -webkit-transition: transform var(--transition);
  -o-transition: transform var(--transition);
  transition: transform var(--transition);
  transform-origin: center;
}
#hum-btn button::before {
  top: -10px;
}
#hum-btn button::after {
  bottom: -10px;
}
#hum-btn.open {
  background: none;
}
#hum-btn.open button {
  background: none;
  width: 55%
}
#hum-btn.open button::before, #hum-btn.open button::after {
  top: calc(50% - 2px);
  background: var(--base-blue);
}
#hum-btn.open button::before {
  transform: rotate(-45deg);
}
#hum-btn.open button::after {
  transform: rotate(45deg);
}
#l-nav {
  position: fixed;
  width: 100vw;
  height: 100vh;
  top: 0;
  left: 0;
  background: rgba(255, 255, 255, 1);
  z-index: 99;
  visibility: hidden;
  opacity: 0;
  -webkit-transition: all var(--transition);
  -o-transition: all var(--transition);
  transition: all var(--transition);
  overflow-y: scroll;
}
#l-nav.is-view {
  opacity: 1;
  visibility: visible;
}
.l-nav__inner {
  width: 100%;
  min-height: 100%;
  padding: 80px min(30px,6vw) 130px;
}
.l-nav__menu li:not(:last-child){
  border-bottom: 1px solid var(--bdr-pale-gry);
}
.l-nav__menu li a{
  font-size: min(18px,4.5vw);
  font-weight: 600;
  display: block;
  padding: 15px 1em 10px 0;
}
.l-nav__btn{
  margin-top: min(30px,10vw);
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  -webkit-flex-direction: column;
  -moz-flex-direction: column;
  -ms-flex-direction: column;
  -o-flex-direction: column;
  flex-direction: column;
  gap:min(20px,3vw);
}
.l-nav__btn .cta-btn{
  padding-left: 3.5em;
}
/*header
=====================================*/
header {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 10;
  background: #fff;
}
header::after {
  content: "";
  width: 100%;
  height: 6px;
  background: var(--base-blue);
  position: absolute;
  bottom: 0;
  left: 0;
}
.head-inner {
  width: min(1440px, 100%);
  padding: 16px min(30px, 2.5vw) 20px;
  -ms-align-items: center;
  align-items: center;
  gap: min(25px, 5vw);
  margin-left: auto;
  margin-right: auto;
}
.head-logo {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  -webkit-flex-direction: column;
  -moz-flex-direction: column;
  -ms-flex-direction: column;
  -o-flex-direction: column;
  flex-direction: column;
}
.head-logo .site-disp {
  font-weight: 600;
  letter-spacing: .01em;
  font-size: .9em;
  word-break: keep-all;
}
.head-logo .site-name {
  font-weight: 500;
  font-size: clamp(1.5rem, 1.045rem + 2.27vw, 2.75rem); /*24-44*/
  letter-spacing: .01em;
}
.head-text {
  line-height: calc(20/14);
  margin-top: var(--adjust-text);
  margin-bottom: var(--adjust-text);
  color: var(--clr-blue);
  font-size: .875em;
}
.head-inquiry {
  margin-left: auto;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  gap: min(20px, 5vw);
  -ms-align-items: center;
  align-items: center;
}
.head-inquiry__dial {
  font-family: var(--fnt-futura);
  gap: 10px;
}
.head-inquiry__dial .icn {
  width: 2.5714em;
}
.head-inquiry__dial a .num {
  font-size: clamp(1.25rem, 0.886rem + 1.82vw, 2.25rem); /*20-36*/
  font-weight: 500;
  word-break: keep-all;
  display: block;
}
.head-inquiry__btn {
  gap: 10px;
}
.rect-btn.head-mail-btn {
  width: min(80px, 6em);
}
.rect-btn.head-mail-btn > a {
  width: 100%;
  aspect-ratio: 1/0.75;
  -ms-align-items: center;
  align-items: center;
  gap: 5px;
}
.rect-btn.head-mail-btn .icn {
  width: 1.7857em;
}
.line-btn {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  -ms-align-items: center;
  align-items: center;
  width: min(220px, 25vw);
  aspect-ratio: 1/0.27;
  min-height: 4.2857em;
  padding: 5px 8px;
  gap: 10px;
  background: var(--clr-grn);
  color: #fff;
  box-shadow: 3px 3px 0 var(--clr-d-grn);
  border-radius: 5px;
  -webkit-transition: all var(--transition);
  -o-transition: all var(--transition);
  transition: all var(--transition);
}
.cta-btn {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  -ms-align-items: center;
  align-items: center;
  justify-content: center;
  min-height: 4.2857em;
  padding: 5px 10px;
  gap: 10px;
  color: #fff;
  border-radius: 5px;
  -webkit-transition: all var(--transition);
  -o-transition: all var(--transition);
  transition: all var(--transition);
  aspect-ratio: auto !important;
}
.line-btn .icn {
  width: 2.1429em;
}
.web-btn .icn {
  width: 1.7857em;
}
.tel-btn .icn {
  width: 1.7857em;
}
.line-btn .text {
  line-height: 1.2;
  width: calc(100% - 2.1429em);
}
.web-btn .text {
  width: calc(100% - 1.7857em);
  line-height: 1.2;
}
.tel-btn .text {
  width: calc(100% - 1.7857em);
  line-height: 1.2;
}
.line-btn .text span, .web-btn .text span {
  font-size: .9em;
}
.line-btn .text .wid {
  font-size: clamp(1rem, 0.886rem + 0.57vw, 1.313rem); /*16-21*/
  font-weight: 600;
  word-break: keep-all;
  letter-spacing: .05em;
}
.cta-btn .text .wid {
  font-size: clamp(1rem, 0.818rem + 0.91vw, 1.5rem);
  font-weight: 600;
  word-break: keep-all;
  letter-spacing: .05em;
}
/*main
=====================================*/
.index-wrapper {}
.inner {
  width: min(1200px, 100%);
  margin-left: auto;
  margin-right: auto;
  padding-left: min(50px, 3vw);
  padding-right: min(50px, 3vw);
}
.box-wrap {
  width: min(1050px, 100%);
}
/*#key
============================*/
.main-key {
  width: 100%;
  height: 733px;
  background: url("images/key.jpg") no-repeat center bottom/cover;
}
.main-key__inner {
  width: min(1370px, 100%);
  padding-left: min(40px, 4vw);
  padding-right: min(40px, 4vw);
  margin-left: auto;
  margin-right: auto;
  height: 100%;
  -ms-align-items: center;
  align-items: center;
}
.key-title-area {
  width: min(820px, 60%);
  padding-right: min(50px, 5vw);
}
#key-slider {
  padding: 1em;
}
.key-slide-area {
  width: max(calc(100vw - calc(820px + calc(100vw - calc(1370px - min(80px, 8vw))))), 40vw);
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  overflow: hidden;
}
@media screen and (max-width: 1320px) {
  .key-slide-area {
    width: 40vw;
  }
}
.key-slide-area .swiper-slide {
  -webkit-transition: transform var(--transition);
  -o-transition: transform var(--transition);
  transition: transform var(--transition);
  padding-left: min(25px, 2.5vw);
  padding-right: min(25px, 2.5vw);
  padding-top: min(30px, 4vw);
}
.key-slide-area .swiper-slide .item-price-area::before {
  width: calc(100% + min(50px, 8vw))
}
.swiper-slide .item-price-area .item-price span {
  font-size: clamp(1.25rem, 0.795rem + 2.27vw, 2.5rem); /*20-50*/
}
.key-slide-area .swiper-slide.swiper-slide-active {
  transform: translateY(-1em);
}
.key-slide-area .keyslide-pagination {
  bottom: 0 !important;
  position: absolute;
  left: 0;
  width: min(calc(100% - max(50px, 5vw)), 100%) !important;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  justify-content: center;
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  -o-flex-wrap: wrap;
  flex-wrap: wrap;
  gap: 10px;
}
#key .key-slide-area .keyslide-pagination span {
  margin: 0;
  background: #fff;
  opacity: 1;
}
#key .key-slide-area .keyslide-pagination span.swiper-pagination-bullet-active {
  background: var(--base-blue);
  opacity: 1;
}
/*#index content
============================*/
.index-contents {}
.sec-title {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  -webkit-flex-direction: column;
  -moz-flex-direction: column;
  -ms-flex-direction: column;
  -o-flex-direction: column;
  flex-direction: column;
  -ms-align-items: center;
  align-items: center;
  gap: min(15px,2vw);
}
.sec-title .en {
  color: var(--clr-blue);
  font-family: var(--fnt-futura);
  font-size: var(--fs-mid20);
  font-weight: 500;
  letter-spacing: .12em;
}
.sec-title .ja {
  font-size: var(--head2);
  font-weight: 600;
  line-height: 1.4375;
  text-align: center;
}
.sec-title .ja:has(wbr) {
  word-break: keep-all;
}
.sec-title .in-text {
  text-align: center;
}
.sec-detail__box {
  margin-top: min(50px, 10vw);
  border: 5px solid #e4f6f9;
  padding: min(40px, 6vw) 15px min(30px, 6vw);
  border-radius: 10px;
  background: #fff;
}
.sec-detail__box .title {
  position: absolute;
  left: 1em;
  top: -2.5px;
  background: var(--base-blue);
  color: #fff;
  border-radius: 2em;
  word-break: keep-all;
  padding: 5px 1.5em;
  font-weight: 600;
  font-size: var(--fs-mid18);
  transform: translateY(-50%);
}
.sec-detail__box .comment {
  width: min(950px, 100%);
}
.sec-detail__box .comment .in-title {
  font-weight: 600;
  font-size: var(--fs-mid20);
  line-height: 1.4;
}
.sec-detail__box .comment .in-title + * {
  margin-top: min(20px, 3vw);
}
/*訴求　appeal
======================================*/
.index-appeal-blc {
  background: var(--wall-pale-gry);
  padding-bottom: min(90px, 15vw);
}
.index-appeal__banner {
  padding-top: min(40px, 3vw);
  padding-bottom: min(40px, 3vw);
  gap: min(20px, 2.5vw);
}
.index-appeal__banner::before {
  content: "";
  width: 100vw;
  height: 100%;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  background: url("images/wall_appeal.jpg") no-repeat bottom center/cover;
}
.index-appeal__promiss {
  margin-top: min(80px, 10vw);
  gap: min(50px, 6vw);
}
.appeal__promiss_box {
  width: min(900px, 100%);
  background: #fff;
  border: 10px solid #e4f6f9;
  padding: min(30px, 5vw);
}
.promiss-list {
  z-index: 1;
}
.promiss-list li {
  padding-left: 1.5em;
  font-size: clamp(1rem, 0.773rem + 1.14vw, 1.625rem); /*16-26*/
  font-weight: 600;
  word-break: keep-all;
  line-height: 1.3581;
}
.promiss-list li + li {
  margin-top: 10px;
}
.promiss-list li::before {
  content: "";
  width: 1.15em;
  aspect-ratio: 1/1;
  background: url("images/icn/check.svg") no-repeat center/100%;
  position: absolute;
  top: .2em;
  left: 0;
}
.promiss-list li span {
  font-size: 1.2308em;
  color: var(--clr-blue);
  background: linear-gradient(180deg, rgba(252, 242, 135, 0) 55%, rgba(252, 242, 135, 1) 55%)
}
.index-appeal__promiss .pos-pic {
  position: absolute;
}
.pos-pic.pic_bag {
  width: min(200px, 25%);
  aspect-ratio: 1/1.0631;
  bottom: 0;
  left: 0;
  transform: translateX(-50%) translateY(10%);
}
.pos-pic.pic_item {
  width: min(220px, 30%);
  aspect-ratio: 1/1.0182;
  right: 0;
  bottom: 0;
  transform: translateX(40%) translateY(12%);
}
/*step
======================*/
.index-step-blc {
  padding-top: min(80px, 10vw);
  padding-bottom: min(80px, 10vw);
  background: var(--wall-pale-gry);
}
.index-step__detail {
  margin-top: min(40px, 5vw);
}
.index-step__detail .top-text {
  text-align: center;
  font-size: var(--fs-mid20);
  font-weight: 600;
  line-height: min(20/16);
  color: var(--clr-blue);
  word-break: keep-all;
}
.index-step__detail .top-text {
  padding-left: 2.25em;
  padding-right: 2.25em;
}
.index-step__detail .top-text::before, .index-step__detail .top-text::after {
  content: "▼▼";
  position: absolute;
  bottom: 0;
}
.index-step__detail .top-text::before {
  left: 0;
}
.index-step__detail .top-text::after {
  right: 0;
}
.step-list {
  gap: min(36px, 5vw);
  margin-top: min(20px, 5vw);
  justify-content: center;
}
.step-list::before{
  content: '\0bb';
  font-size: 2em;
  color: #999;
  border: 0;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.step-list li {
  width: calc((100% - min(72px, 10vw))/2);
  border-radius: 10px;
  padding: min(20px, 6vw) min(15px, 4vw);
}
.step-list li.st01 {
/*  background: var(--wall-pale-gry);*/
    background: #fff;
}
.step-list li.st02 {
  background: #f0f4f5;
}
.step-list li.st03 {
    background: #fff;
/*  background: #f0f4f5;*/
/*  background: #f0fafc;*/
}
.step-list li .in-icn {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  -webkit-flex-direction: column;
  -moz-flex-direction: column;
  -ms-flex-direction: column;
  -o-flex-direction: column;
  flex-direction: column;
  -ms-align-items: center;
  align-items: center;
  gap: 10px;
}
.step-list li .in-icn .time {
  width: 8em;
  text-align: center;
  background: var(--clr-ylw);
  padding: 3px 1em;
  border-radius: 1em;
  font-weight: 600;
}
.step-list li .in-icn .clock {
  width: min(68px, calc(100% / 3));
}
.step-list li .title {
  font-size: var(--fs-mid20);
  font-weight: 600;
  text-align: center;
  line-height: 1.4;
  margin-top: min(15px, 3vw);
}
.step-list li .comment {
  margin-top: min(20px, 4vw);
}
.step-list li .comment .in-title {
  -ms-align-items: center;
  align-items: center;
  gap: 1em;
}
.step-list li .comment .in-title p {
  color: var(--clr-blue);
  font-weight: 600;
}
.step-list li .comment .in-title p:first-child {
  background: #fff;
  border: 1px solid var(--base-blue);
  padding: 5px 1em;
}
.step-list li .comment .in-text {
  margin-top: min(20px, 3vw);
}
/*cta
=======================*/
.sec-cta-blc {}
.sec-cta-blc::before {
  content: "";
  width: 100vw;
  height: 100%;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  background: url("images/wall_cta.jpg") no-repeat center left/cover;
}
.sec-cta__inner {
  justify-content: center;
  width: min(880px, 100%);
  padding-top: min(37px, 8vw);
  padding-bottom: min(30px, 5vw);
}
.cta-thumb {
  width: min(250px, 30%);
  position: absolute;
  left: 0;
  bottom: 0;
}
.cta-detail-box {
  width: max((100% - 250px), 75%);
  margin-left: auto;
  padding-left: min(40px, 5vw);
  gap: min(20px, 5vw);
}
.cta-head {
  -ms-align-items: flex-start;
  align-items: flex-start;
  gap: 5px;
}
.cta-head .tag {
  background: var(--clr-ylw);
  padding: 3px 1em;
  font-weight: 600;
  border-radius: 2em;
}
.cta-head .in-title {
  font-size: var(--head2);
  font-weight: 600;
  line-height: 1.4;
}
.cta-dial-wrap {
  gap: min(15px, 3vw);
}
.cta-dial-wrap .dial {
  gap: 3px;
}
.cta-dial-wrap .dial .num {
  word-break: keep-all;
  font-size: clamp(1.875rem, 1.42rem + 2.27vw, 3.125rem);
  font-family: var(--fnt-futura);
  font-weight: 500;
}
.cta-dial-wrap .icn {
  width: 50px;
}
.cta-button-wrap {
  -ms-align-items: center;
  align-items: center;
  gap: min(20px, 3vw);
}
.cta-btn {
  width: min(250px, calc((100% - min(20px, 3vw))/2));
}
/*service
===================*/
.index-service-blc {
  padding-top: min(80px, 10vw);
  padding-bottom: min(100px, 15vw);
  gap: min(40px, 6vw);
}
.index-service-blc::before {
  content: "";
  width: 100vw;
  height: 100%;
  position: absolute;
  left: 50%;
  top: 0;
  transform: translateX(-50%);
  background-image: url("images/wall_gldline_right.png"), url("images/wall_gldline_left.png"), url("images/wall_gldline_right.png");
  background-repeat: no-repeat;
  background-size: min(443px, 70vw);
  background-position: top -5% right, top 55% left, bottom -10% right;
}
/*search form setting*/
.recoeds-search-box {
  width: min(920px, 100%);
  background: var(--wall-pale-gry);
  padding: min(35px, 6vw) min(30px, 3vw);
  border-radius: 5px;
}
.recoeds-search-box > form > div + div {
  margin-top: 20px;
}
.search-item {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  -ms-align-items: center;
  align-items: center;
}
.search-item.text {
  -webkit-flex-direction: column;
  -moz-flex-direction: column;
  -ms-flex-direction: column;
  -o-flex-direction: column;
  flex-direction: column;
  -ms-align-items: flex-start;
  align-items: flex-start;
  gap: min(16px, 4vw);
}
.search-item .search-title {
  padding-left: 2em;
  font-weight: 600;
}
.search-title::before {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  width: 1.4286em;
  aspect-ratio: 1/1.2;
  background-repeat: no-repeat;
  background-size: 100%;
  background-position: center;
  background-image: url("images/icn/tag.svg");
}
.search-title.word-title::before {
  background-image: url("images/icn/search.svg");
  aspect-ratio: 1/1.2097;
}
.search-title.keyword-title::before {
  background-image: url("images/icn/huch.svg");
  background-size: 90%;
  aspect-ratio: 1/1.1429;
}
::placeholder {
  color: #a7a7a7;
  font-size: min(14px, 3.6vw);
}
.search-item:not(.text) .search-title {
  padding-right: 2em;
}
.category-grp-wrap, .tag-grp-wrap {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  -o-flex-wrap: wrap;
  flex-wrap: wrap;
  gap: 10px;
}
/*キーワード検索*/
.text-grp-wrap {
  width: 100%;
}
.text-grp-wrap input {
  border: 1px solid #c3c3c3;
  background: #fff;
  border-radius: 5px;
  font-size: 16px;
  padding: .75em 1em .75em 2em;
}
/*話題のワード*/
.tag-grp-wrap label span {
  display: block;
  border: 1px solid #c3c3c3;
  border-radius: 2em;
  padding: 4px 1.25em;
  background: #fff;
  font-size: min(13px, 3.6vw);
}
.tag-grp-wrap label input:checked + span {
  border-color: var(--base-blue);
}
/*ブランド*/
.search-item.brand {}
.search-title.brand-title, .search-title.category-title {
  width: 8em;
}
.bland-grp-wrap, .category-grp-wrap {
  width: calc(100% - 8em);
}
.bland-grp-wrap .select-wrap {
  width: min(430px, 100%);
  background: #fff;
}
.bland-grp-wrap .select-wrap::before {
  content: "";
  width: 5px;
  aspect-ratio: 1/1;
  position: absolute;
  left: 1.5em;
  top: 50%;
  transform: translateY(-50%) rotate(45deg);
  border: 1px solid;
  border-color: transparent var(--base-clr) var(--base-clr) transparent;
}
.bland-grp-wrap .select-wrap select {
  width: 100%;
  padding: .75em 1em .75em 2.5em;
  border-radius: 5px;
  font-size: 16px;
  border: 1px solid #c3c3c3;
  color: var(--base-clr);
}
.select-wrap select option#feas_0_2_none {
  color: #a7a7a7;
  font-size: min(14px, 3.6vw);
}
/*カテゴリ*/
.category-check-in {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  justify-content: center;
  padding: 12px 15px;
  border-radius: 5px;
  border: 1px solid #c3c3c3;
  background: #fff;
}
.category-grp-wrap label input:checked + .category-check-in {
  border-color: var(--base-blue);
}
.category-grp-wrap span {
  padding-left: 2em;
  font-size: min(13px, 3.6vw);
}
.category-grp-wrap span::before {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  width: 1.4286em;
  background-repeat: no-repeat;
  background-size: 100%;
  background-position: center;
  transform: translateY(-50%);
}
/*バッグ*/
input[id="feas_0_3_0"] + div span::before {
  aspect-ratio: 1/1.0673;
  background-image: url("images/icn/bag.svg");
}
/*時計*/
input[id="feas_0_3_1"] + div span::before {
  width: 1.1429em;
  aspect-ratio: 1/1.6854;
  background-image: url("images/icn/watch.svg");
}
/*財布*/
input[id="feas_0_3_2"] + div span::before {
  aspect-ratio: 1/0.7653;
  background-image: url("images/icn/wallet.svg");
}
/*アクセサリ*/
input[id="feas_0_3_3"] + div span::before {
  aspect-ratio: 1/1.01;
  background-image: url("images/icn/accessory.svg");
}
/*ジュエリー*/
input[id="feas_0_3_4"] + div span::before {
  aspect-ratio: 1/0.7282;
  background-image: url("images/icn/jewelry.svg");
}
.recoeds-search-box .feas-submit-button {
  width: 100%;
  background: var(--base-blue);
  color: #fff;
  font-weight: 600;
  border-radius: 5px;
  min-height: 3.25em;
  margin-top: 30px;
  font-size: 16px;
}
/*record items setting*/
.recoeds-item-list {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  -o-flex-wrap: wrap;
  flex-wrap: wrap;
  gap: min(20px, 3vw);
}
.acv-records-cat {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  -webkit-flex-direction: column;
  -moz-flex-direction: column;
  -ms-flex-direction: column;
  -o-flex-direction: column;
  flex-direction: column;
  gap: 10px;
  background: var(--wall-pale-blue);
  padding: min(20px, 4vw) min(15px, 3vw) 0;
  border: 1px solid var(--bdr-pale-gry);
  overflow: hidden;
  border-radius: 10px;
  color: var(--clr-gry);
  font-size: min(12px, 3.5vw);
  line-height: 1.1667;
}
.acv-records-cat:not(.swiper-slide) {
  width: calc((100% - min(60px, 9vw))/4);
}
.acv-records-cat > * {
  width: 100%;
}
.item-thumb {
  width: 100%;
  aspect-ratio: 1/0.7556;
  border: 1px solid var(--bdr-pale-gry);
  background: #fff;
  overflow: hidden;
}
.item-thumb img {
  object-fit: contain;
  object-position: center;
  height: 100%;
}
.item-detail-wrap > * + * {
  margin-top: 6px;
}
.item-title-area {
  font-weight: 600;
}
.item-title-area .item-name {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  -ms-align-items: center;
  align-items: center;
  color: var(--base-clr);
  font-size: min(1.5em, 3.7vw);
  margin-top: 5px;
}
.item-looks-area {
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  -o-flex-wrap: wrap;
  flex-wrap: wrap;
  -ms-align-items: center;
  align-items: center;
}
.item-looks-area span:not(:first-child)::before {
  content: "/";
  padding-left: 2px;
  padding-right: 2px;
}
.item-tag-area {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  -o-flex-wrap: wrap;
  flex-wrap: wrap;
  -ms-align-items: center;
  align-items: center;
  gap: 1.5px 5px;
}
.item-tag-area p {
  padding: 3px .85em;
  border-radius: 2em;
  color: var(--base-clr);
  font-weight: 600;
}
.item-tag-area .tag-engrave {
  background: var(--bdr-pale-gry);
}
.tag-rank.rank_ss {
  background: linear-gradient(135deg, #f3e68a 20%, #f0d56a);
}
.tag-rank.rank_s{
  background: linear-gradient(45deg, #d6d6d6 20%, #bcbcbc);
}
.tag-rank.rank_a {
  color: #fff;
  background: var(--clr-b-red);
}
.tag-rank.rank_b {
  color: #fff;
  background: #329d27;
}
.tag-rank.rank_c {
  color: #fff;
  background: #465ec4;
}
.item-price-area {
  -ms-align-items: center;
  align-items: center;
}
.item-price-area .item-price {
  margin-left: auto;
}
.item-price-area {
  padding: 5px 0;
  margin-top: auto;
}
.item-price-area::before {
  content: "";
  width: calc(100% + min(30px, 6vw));
  height: 100%;
  position: absolute;
  bottom: 0;
  left: 50%;
  background: var(--wall-pale-gry);
  transform: translateX(-50%);
}
.item-price-area .buying {
  font-weight: 600;
  font-size: min(1em, 3.5vw);
}
.item-price-area .item-price {
  color: var(--base-clr);
}
.item-price-area .item-price span {
  color: var(--clr-b-red);
  font-weight: 500;
  font-family: var(--fnt-futura);
  font-style: italic;
  padding-right: 5px;
  font-size: clamp(1rem, 0.727rem + 1.36vw, 1.75rem); /*16-25*/
  letter-spacing: -.025em;
}
/*brand
===================*/
.index-brand-blc {
  background: url("images/wall_brand.jpg") no-repeat center bottom/cover;
  color: #fff;
  padding-top: min(80px, 10vw);
  padding-bottom: min(100px, 15vw);
}
.index-brand-blc .brand-list {
  grid-template-columns: repeat(3, 1fr);
  width: min(600px, 100%);
  display: grid;
  margin-top: min(30px, 8vw);
  gap: 1em;
}
.index-brand-blc .brand-list li {
  /*  width: calc(100% / 3);*/
  font-weight: 600;
  font-size: var(--fs-mid20);
}
.index-brand__case {
  width: 100%;
  color: var(--base-clr);
}
.index-brand__case .comment .in-text {
  margin-top: 10px;
}
.brand__case-list {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  -o-flex-wrap: wrap;
  flex-wrap: wrap;
  gap: 10px 1em;
  margin-top: 20px;
}
.brand__case-list li {
  padding-left: 1.5em;
  font-weight: 600;
  font-size: var(--fs-mid20);
}
.brand__case-list li::before {
  content: "";
  width: 1em;
  aspect-ratio: 1/1;
  position: absolute;
  left: 0;
  top: 0;
  background: url("images/icn/check.svg") no-repeat center/100%;
}
/*area
===================*/
.index-area-blc {
  padding-top: min(80px, 10vw);
  padding-bottom: min(100px, 12vw);
}
.index-area-detail {
  margin-top: min(40px, 10vw);
  -ms-align-items: center;
  align-items: center;
}
.index-area-detail .thumb_map {
  width: 46%;
}
.index-area-detail .thumb_map {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  justify-content: center;
}
.index-area-detail .thumb_map span {
  width: min(390px, calc(100% - 20px));
}
.area-list {
  width: 56%;
}
.js-acd-list dd {
  display: none;
}
.area-list > div:last-child {
  border-bottom: 1px solid var(--base-blue);
}
.area-list dt {
  padding: min(18px, 3vw) min(2em, 5vw);
  border-top: 1px solid var(--base-blue);
  cursor: pointer;
}
.area-list dt::after {
  content: "";
  width: 1.7143em;
  aspect-ratio: 1/1;
  background: url("images/icn/icn_plus.svg") no-repeat center/100%;
  position: absolute;
  top: 50%;
  right: .5em;
  transform: translateY(-50%);
  -webkit-transition: transform var(--transition);
  -o-transition: transform var(--transition);
  transition: transform var(--transition);
}
.area-list dt.open::after {
  transform: translateY(-50%) rotate(45deg);
}
.area-list dt h3 {
  font-size: var(--fs-mid20);
  font-weight: 600;
}
.area-list dd {
  border-top: 1px solid var(--base-blue);
  background: var(--wall-pale-gry);
  transform-origin: bottom center;
  padding: min(22px, 5vw);
}
.area-item {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  -webkit-flex-direction: column;
  -moz-flex-direction: column;
  -ms-flex-direction: column;
  -o-flex-direction: column;
  flex-direction: column;
  gap: min(15px, 3vw);
}
.area-item + .area-item {
  margin-top: min(20px, 5vw);
}
.area-item h4 {
  padding-left: 1.25em;
  font-weight: 600;
}
.area-item h4::before {
  content: "";
  width: 0.8571em;
  aspect-ratio: 1/1;
  background: var(--base-blue);
  border-radius: 50%;
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
}
.area__cat {
  line-height: calc(26/14);
}
.area__cat span {
  display: inline-block;
  padding-right: .35em;
}
.index-area__case .comment {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  -ms-align-items: center;
  align-items: center;
}
.index-area__case .comment > * {
  width: 50%;
}
.index-area__case .comment .text-area {
  padding-right: min(40px, 5vw);
}
.index-area__case .check-list {
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  -o-flex-wrap: wrap;
  flex-wrap: wrap;
  gap: 7px 10px;
}
.index-area__case .check-list li {
  width: calc((100% - 10px)/2);
  padding-left: 1.875em;
  min-height: 1.875em;
  font-size: min(1.1429em, 3.6vw);
  background: #edf7f9;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  -ms-align-items: center;
  align-items: center;
}
.index-area__case .check-list li::before {
  content: "";
  width: 1.875em;
  aspect-ratio: 1/1;
  background: var(--base-blue) url("images/icn/check_w.svg") no-repeat center/60%;
  position: absolute;
  left: 0;
}
.index-area__case .check-list li p {
  padding: 3px 5px 3px 10px;
  color: var(--base-blue);
  font-weight: 600;
}
/*ABOUT US
===================*/
.index-about-blc {
  padding-top: min(80px, 10vw);
  padding-bottom: min(100px, 15vw);
  background: var(--wall-pale-gry);
}
.index-about__detail {
  margin-top: min(40px, 8vw);
  gap: min(40px, 6vw) min(40px, 5vw);
}
.index-about__detail li {
  width: calc((100% - min(40px, 5vw))/2);
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  -webkit-flex-direction: column;
  -moz-flex-direction: column;
  -ms-flex-direction: column;
  -o-flex-direction: column;
  flex-direction: column;
  gap: min(30px, 5vw);
}
.index-about__detail li .about-head {
  background: #fff;
  border-radius: 10px;
  padding: min(20px, 3vw) min(40px, 3vw);
  -ms-align-items: center;
  align-items: center;
}
.index-about__detail li .about-head .icn {
  width: min(87px, 25%);
  aspect-ratio: 1/1;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  justify-content: center;
  -ms-align-items: center;
  align-items: center;
  background: var(--wall-pale-gry);
  border-radius: 50%;
}
.index-about__detail li .about-head .icn span {
  width: 60%;
}
.index-about__detail li .about-head .in-title {
  width: max(calc(100% - 87px), 75%);
  padding-left: min(20px, 3vw);
  font-size: var(--fs-mid20);
  font-weight: 600;
  line-height: 1.4;
}
.index-about__detail li .about-head .in-title span {
  display: block;
  font-size: 1.6em;
}
/*INTRODUCTION
======================*/
.index-introduction-blc {
  padding-top: min(80px, 10vw);
  padding-bottom: min(90px, 12vw);
  background: var(--wall-pale-gry);
}
.index-introduction__detail {
  -ms-align-items: center;
  align-items: center;
  margin-top: min(30px, 5vw);
}
.index-introduction__detail .thumb {
  border: 1px solid var(--bdr-pale-gry);
  width: min(240px, 43%);
}
.index-introduction__detail .comment {
  width: max(calc(100% - 240px), 57%);
  padding-left: min(40px, 5vw);
}
.index-introduction__detail .comment > * + * {
  margin-top: min(20px, 3vw);
}
.index-introduction__detail .comment .in-title {
  font-weight: 600;
  font-size: var(--fs-mid20);
  line-height: calc(32/20);
}
.index-introduction__detail .comment .sign {
  text-align: right;
}
/*voice
====================*/
.index-voice-blc {
  padding-top: min(80px, 10vw);
  padding-bottom: min(90px, 12vw);
}
.index-voice-list {
  gap: min(30px, 8vw) min(60px, 5vw);
  margin-top:min(60px, 5vw);
}
.index-voice-list li {
  width: calc((100% - min(60px, 5vw))/2);
}
.voise-title {
  -ms-align-items: flex-end;
  align-items: flex-end;
  justify-content: center;
}
.voise-title .icn {
  width: min(114px, 24%);
}
.voise-title .fkds {
  /*  width: max(calc(100% - 114px),76%);*/
  padding-left: min(20px, 3vw);
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
}
.voise-title .fkds p {
  background: var(--wall-pale-gry);
  padding: min(20px, 3vw) min(25px, 4vw);
  border-radius: 10px;
  font-size: var(--fs-mid20);
  line-height: calc(32/20);
  font-weight: 600;
  min-height: 7.25em;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  -ms-align-items: center;
  align-items: center;
}
.voise-title .fkds p::before {
  content: "";
  clip-path: polygon(0 50%, 100% 100%, 100% 0);
  width: 10px;
  aspect-ratio: 1/1;
  background: var(--wall-pale-gry);
  position: absolute;
  left: 0;
  bottom: 10px;
  transform: translateX(-100%);
}
.index-voice-list li .in-text {
  margin-top: min(30px, 5vw);
}
/*contact
====================*/
.index-contact-blc {
  background: var(--wall-pale-gry);
  padding-top: min(80px, 10vw);
  padding-bottom: min(100px, 15vw);
}
.index-contact-box {
  gap: min(40px, 6vw);
}
.form-wrap {
  width: min(896px, 100%);
}
.form-list > div
,.form-list .grp-wrap{
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
}
.form-list > div:not(:last-child)
,.form-list .grp-wrap{
  -ms-align-items: center;
  align-items: center;
}
.form-list > div + div{
  margin-top: min(30px,6vw);
}
.form-list dt{
  width: 22em;
}
.form-list dt p{
  font-weight: 600;
  padding-left: 4em;
}
.form-list dt p::before{
  content: "";
  font-size: min(12px,3.5vw);
  color: #fff;
  padding: 5px 10px;
  border-radius: 3px;
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
}
.form-list dt p.must::before{
  content: "必須";
  background: var(--base-blue);
}
.form-list dt p.any::before{
  content: "任意";
  background: #b6b1ac;
}
.form-list dd{
  width: calc(100% - 22em);
}
.form-list dd input[type="text"]
,.form-list dd input[type="tel"]
,.form-list dd input[type="email"]
,.form-list dd input[type="date"]
,.form-list dd textarea{
  font-size: 16px;
  padding: 6px 20px;
  background: #fff;
  border: var(--bdr-pale-gry) solid 1px;
}
.inp-date{
  height: 2.85em;
}
.inp-date > *{
  height: 100%;
  display: block;
}
.form-list dd input[type="date"]{
  height: 100%;
}
.form-list dd textarea{
  padding: 15px;
  width: 100%;
  height: min(215px,35vw);
}
.form-list dd.date-wrap{
  -ms-align-items: center;
  align-items: center;
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  -o-flex-wrap: wrap;
  flex-wrap: wrap;
  gap:min(20px,3vw) min(30px,5vw);
}
.form-list dd select-wrap{
  font-weight: 600;
}
.select-time .select-wrap{
  background: #fff;
  width: 6.5em;
  border: var(--bdr-pale-gry) solid 1px;
}
.form-list dd.date-wrap .input-time{
  -ms-align-items: center;
  align-items: center;
  gap:1em;
}
.select-time{
  gap:5px;
  -ms-align-items: center;
  align-items: center;
}
.select-time .select-wrap select{
  padding: 8px 10px;
  width: 100%;
  height: 100%;
  font-size: 16px;
  color: var(--base-clr);
}
.form-list dd.radio{
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  -o-flex-wrap: wrap;
  flex-wrap: wrap;
  gap:10px min(20px,3vw);
}
.form-list dd.radio label{
  width: 9.7em;
  aspect-ratio:1/0.3309;
  border: #abd4dc solid 1px;
  padding: 5px 10px;
  border-radius: 5px;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  justify-content: center;
  -ms-align-items: center;
  align-items: center;
  cursor: pointer;
}
.form-list dd.radio label span{
  padding-left: 1.5em;
  font-weight: 600;
}
.form-list dd.radio label span::before
,.form-list dd.radio label span::after{
  content: "";
  width: .9em;
  aspect-ratio:1/1;
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  border-radius: 50%;
}
.form-list dd.radio label span::before{
  background: #fff;
}
.form-list dd.radio label span::after{
  width: calc(.85em - 5px);
  left: 2.5px;
  background: var(--base-blue);
  opacity: 0;
}
.form-list dd.radio label input:checked + span::after{
  opacity: 1;
}
.agree-check{
  margin-top: 10px;
}
.agree-check label{
  padding-left: 1.5em;
  cursor: pointer;
  line-height: 1.4;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
}
.agree-check label::before{
  content: "";
  width: 1em;
  aspect-ratio:1/1;
  background: #fff;
  border-radius: 3px;
  position: absolute;
  left: 0;
  top: 1px;
  border: 1px solid var(--bdr-pale-gry);
}
.agree-check label::after{
  content: "";
  width: .85em;
  height: 0.45em;
  border: 2px solid var(--base-blue);
  border-top: 0;
  border-right: 0;
  box-sizing: border-box;
  position: absolute;
  left: 2px;
  top: 4px;
  transform:rotate(-45deg);
  opacity: 0;
}
.agree-check label span[data-name="agree"]{
  display: none;
}
.agree-check label.checked::after{
  opacity: 1;
}
.agree-check label span:not(.wpcf7-form-control-wrap){

}
.form-btn-wrap {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  justify-content: center;
  margin-top: min(40px,6vw);
}
.rect-btn.inp{
  width: min(270px, 100%);
}
.rect-btn.inp > div {
  width: 100%;
  background: var(--base-blue);
  font-size: 1.14em;
  font-weight: 600;
  box-shadow: 3px 3px 0 #3b8796;
  border-radius: 5px;
}
.rect-btn.inp > div input {
  color: #fff;
  padding: .5em;
  width: 100%;
  font-size: 1.14em;
  letter-spacing: .05em;
  font-weight: 600;
}
.wpcf7-spinner{
  display: none;
}
.grecaptcha-badge { visibility: hidden; }
.grecaptcha-text{
    padding-top: 1em;
    line-height: 1.7;
}
/*footer
=====================================*/
footer {
  margin-top: auto;
  background: var(--base-blue);
  padding-top: min(40px, 10vw);
  padding-bottom: 23px;
}
.footer-inner {
  padding-bottom: min(52px, 10vw);
}
.foot-logo {
  gap: 5px;
}
.foot-logo .sitename {
  font-size: clamp(1.875rem, 1.557rem + 1.59vw, 2.75rem); /*24-44*/
  font-weight: 500;
}
.footer-inner .disp-text {
  line-height: calc(20/14);
  margin-top: 8px;
}
ul.foot-nav {
  margin-top: min(42px, 10vw);
}
ul.foot-nav li:not(:first-child)::before {
  content: "";
  width: 1px;
  height: 1em;
  background: var(--base-clr);
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
}
ul.foot-nav li a {
  padding-left: 1.5em;
  padding-right: 1.5em;
}
footer p.copy {
  color: #306772;
  text-align: center;
  font-weight: 500;
  font-size: min(16px, 3.55vw);
  background: "#";
}

/*float*/
#float{
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100%;
  transform: translateY(0);
  -webkit-transition: all var(--transition);
  -o-transition: all var(--transition);
  transition: all var(--transition);
}
#float.hide{
  transform: translateY(100%);
}
.float__inner{
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
}
.float-btn{
  width: calc(100% / 3);
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  -ms-align-items: center;
  align-items: center;
  padding: min(12px,2.25vw) min(10px,2vw);
  color: #fff;
}
.float-btn .icn{
  width: 21%;
}
.float-btn.dial{
  background: var(--base-blue);
}
.float-btn.web{
  background: var(--clr-org);
}
.float-btn.line{
  background: var(--clr-grn);
}
.float-btn.dial .icn .cls-1{
  fill:#fff;
}
.float-btn .text{
  width: 79%;
  padding-left: 5px;
  font-size: min(12px,3.2vw);
  font-feature-settings: "palt";
  line-height: 1.4;
}
.float-btn .text span{
  display: block;
  font-size: calc(100vw/20.5);
  font-weight: 600;
}
/*lp-contents
=====================================*/
.main-key.lp-mv{
    height: auto;
    background: #E4F0F0;
    aspect-ratio: auto;
}
.main-key.lp-mv img{
    max-width: 1600px;
    width: 100%;
    margin: 0 auto;
}
.lp-contents .index-appeal__banner::before{
    background: none;
}
.lp-contents .index-service-blc{
    padding-top: 0;
}
.lp-contents .index-service-blc::before{
    background-image: 
        url("images/wall_gldline_right.png"), 
        url("images/wall_gldline_left.png"), 
        url("images/wall_gldline_right.png"),
        url("images/wall_gldline_left.png"),
        url("images/wall_gldline_right.png"),
		url("images/wall_gldline_left.png"),
		url("images/wall_gldline_right.png");
  background-repeat: no-repeat;
  background-size: min(443px, 70vw);
  background-position: 
      top 7% right, 
      top 15% left, 
      top 33% right, 
      top 51% left, 
      bottom 32% right,
	  bottom 15% left,
	  bottom -2% right;
}