:root{
  --base-color:#000;
  --c-brawn : #a34728;
  --c-bkgray : #eeeeee;
}
/*横並び*/
.flex{
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
}
.flex.Between {
  -webkit-box-pack :  justify;
  -ms-flex-pack :  justify;
  justify-content :  space-between;
}
.flex.Around{
  -ms-flex-pack :  distribute;
  justify-content :  space-around;
}
.flex.End{
  -webkit-justify-content :  flex-end;
  -ms-flex-pack :  end;
  justify-content :  flex-end;
}
.flex.Center{
  -webkit-justify-content :  center;
  -ms-flex-pack :  center;
  justify-content :  center;
}
.flex.align_s{
  align-items:flex-start
}
.flex.align_c{
  align-items:center;
}
.flex.wrap{
  flex-wrap: wrap;
}

/*画像のぼやけ対策*/
img {
  max-width: 100%;
  image-rendering: -webkit-optimize-contrast;
}

/* 全体 */
body{
  max-width: 750px;
  margin: auto;
  color: var(--base-color);
  font-size: 10px;
  font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MS Pゴシック", "MS PGothic", sans-serif;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: .04em;
  font-feature-settings: "palt";
}
.inner{
  max-width: 750px;
  margin: auto;
}
.btn{
  display: inline-block;
  background-color: var(--c-brawn);
  background-image: url(../img/btn-p.svg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: min(35.2vw,264px);
  border-radius: 7px;
  text-align: center;
  font-size: min(4vw,30px);
  font-weight: 600;
  color: #fff;
  line-height: 1;
  text-decoration: none;
  padding: min(2.933vw, 22px) 0 min(2.4vw, 18px);
  cursor: pointer;
}

/* header */
header{
  width: 100%;
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  margin: auto;
  z-index: 111;
  background-color: #fff;
}
header .inner{
  padding: min(2.667vw,20px) min(3.34vw,25px);
  justify-content: space-between;
}
header .logo{
  max-width: 350px;
  width: 50vw;
}
header .btn-wrap{
  display: flex;
  gap: min(2.667vw,20px);
}
header .btn-wrap a{
  width: min(9.334vw,70px);
}
header .btn{
  max-width: 300px;
  width: 40vw;
}

/* mv */
.mv{
  margin-bottom: min(8vw,60px);
}
.mv .inner{
  position: relative;
  padding:0;
  padding-top: min(11.34vw, 110px);
}
.mv .visual{
  position: relative;
  aspect-ratio: 1;
}
.mv-title{
  text-align: center;
  font-size: min(4.8vw,36px);
  line-height: 1.22;
  margin: min(4vw,30px) auto auto;
}
.mv-title b{
  color: var(--c-brawn);
}
.mv .mark{
  width: min(33.34vw,250px);
  height: fit-content;
  position: absolute;
  left: min(3.334vw,25px);
  bottom: 0px;
}
/* cta */
.cta{
  width: 100%;
  aspect-ratio: 75 / 43;
  background-image: url(../img/cv_bk@2x.png);
  background-position: top center;
  background-size: cover;
  position: relative;
}
.cta:not(:has(.btn)){
  aspect-ratio: 75 / 30;
}
.cta > *{
  position: absolute;
}
.cta-tit{
  font-size: min(4.8vw,36px);
  color: #fff;
  top: min(7.2vw, 56px);
  left:min(6.67vw,50px);
}
.cta p{
  font-size: min(4.27vw,32px);
  font-weight: 600;
  top: min(16.8vw, 126px);
  left:min(6.67vw,50px);
}
.cta p b{
  font-size: min(4.8vw,36px);
  color: #ff3300;
}
.cta .btn{
  width: min(86.14vw,646px);
  bottom: min(3.2vw,24px);
  padding: min(2.4vw, 18px) 0 min(1.867vw, 14px);
  font-size: min(5.867vw,44px);
  letter-spacing: .025em;
  left: 0;
  right: 0;
  margin: auto;
  background-image: url(../img/btn-cv.svg);
  background-size: min(66.94vw,502px);
  box-shadow: min(.534vw,4px) min(.534vw,4px) 0 #cec3c2;
}
.cta .btn b{
  color: #dab436;
}

/* sec-title */
.sec-title{
  min-height: 2em;
  margin: 0 auto min(6.67vw,50px);
  background-image: url(../img/head-p.svg);
  background-repeat: no-repeat;
  background-size: min(88vw,660px);
  background-position: top center;
  text-align: center;
  font-size: min(4.54vw,34px);
  font-weight: 600;
  line-height: 1.35;
}
.sec-title.w500{
  background-image: url(../img/head-p500.svg);
  background-size: min(66.67vw,500px);
}
.sec-title.w620{
  background-image: url(../img/head-p620.svg);
  background-size: min(82.67vw,620px);
}
.sec-title.w640{
  background-image: url(../img/head-p640.svg);
  background-size: min(85.34vw,640px);
}
.sec-title.w700{
  background-image: url(../img/head-p700.svg);
  background-size: min(93.34vw,700px);
}
.sec-title.no-image{
  background-image: unset;
  min-height: unset;
}
.sec-title b,
.sec-etitile b{
  color: var(--c-brawn);
}
.sec-etitile{
  margin: 0 auto min(7.34vw,55px);
  text-align: center;
  font-size: min(4.8vw,36px);
  font-weight: 600;
  line-height: 1.34;
}
.sec-etitile .row-empty{
  display: block;
  height: .5em;
}
/* section */
.sec-gray{
  padding: min(6.67vw,50px) 0;
  background-color: var(--c-bkgray);
}
.arrow{
  position: relative;
}
.arrow:before,
.arrow:after{
  content:"";
  display: block;
  width: 50%;
  height: min(16vw,120px);
  clip-path: polygon(0 0,100% 100% ,0 100%);
  background-color: #fff;
  position: absolute;
  bottom: 0;
}
@media screen and (max-width:750px) {
  .arrow:before,.arrow:after{
  bottom: -1px;
}
}
.arrow:before{
  clip-path: polygon(0 0,100% 100% ,0 100%);
  left: 0;
}
.arrow:after{
  clip-path: polygon(0 100%,100% 0 ,100% 100%);
  right: 0;
}
.arrow > *{
  position: relative;
  z-index: 1;
}
section .inner{
  padding: 0 min(3.34vw,25px);
}
/* worry */
.worry{
  padding-top: min(13.34vw,100px);
  padding-bottom: min(13.34vw,100px);
}
/* pet-worry list-worray */
.pet-worry{
  padding-bottom: 0;
}
.pet-worry .inner{
  padding-bottom: min(3.47vw,25px);
}
.list-worray .worry01{
  width: min(79.74vw,598px);
  margin: auto;
  position: relative;
  left: 2.4vw;
}
.list-worray li:has(.worry02){
  margin-top: min(2.67vw,20px);
}
.list-worray .worry02{
  width: min(79.07vw,593px);
  position: relative;
  left: 3.07vw;
}
.list-worray li:has(.worry03){
  margin-top: min(6.14vw,46px);
}
.list-worray .worry03{
  width: min(74.94vw,562px);
  margin: auto;
}

/* pet-worry02 */
.pet-worry02{
  padding-top: min(73.34vw,55px);
}
.pet-worry02 .visual_wrap{
  width: min(93.34vw,700px);
  margin: auto;
  aspect-ratio: 35 / 29;
  overflow: hidden;
  position: relative;
}
.pet-worry02 .visual_wrap p{
  font-size: min(4.27vw,32px);
  font-weight: bold;
  position: absolute;
}
.pet-worry02 .p01{
  width: min(59.74vw,448px);
  position: absolute;
  top: 0;
  left: 0;
}
.pet-worry02 .p01 img{
  width: 61%;
}
.pet-worry02 .p01 p{
  right: 0;
  top: 20%;
}
.pet-worry02 .p02{
  width: min(35.6vw,267px);
  text-align: right;
  position: absolute;
  top: 18.1%;
  right: 0;
}
.pet-worry02 .p02 img{
  width: 41.95%;
  margin-left: auto;
}
.pet-worry02 .p02 p{
  left: 0;
  top: 20%;
}
.pet-worry02 .p03{
  width: min(38.54vw,289px);
  text-align: right;
  position: absolute;
  bottom: 0;
  left: 0;
}
.pet-worry02 .p03 img{
  width: 74.4%;
  margin-left: auto;
}
.pet-worry02 .p03 p{
  left: 0;
  top: 50%;
}
.pet-worry02 .p04{
  width: min(32.23vw,242px);
  position: absolute;
  bottom: 10%;
  right: 16.39%;
}
.pet-worry02 .p04 img{
  width: 73.6%;
  margin-left: auto;
}
.pet-worry02 .p04 p{
  left: 0;
  top: -40%;
}
.pet-worry02 p.sec-etitile{
  margin-top: min(13.34vw,100px);
}

/* offer */
.offer{
  padding-top: min(13.34vw,100px);
  /* padding-bottom: min(13.34vw,100px); */
}
.offer h2 +.visual{
  width: min(73.34vw,550px);
  margin: 0 auto min(20vw,150px);
}
.offer .sec-title{
  line-height: 1;
  margin-bottom: min(4vw,40px);
}
.offer-title{
  margin-bottom: min(4vw,30px);
  text-align: center;
  font-size: min(4.27vw,32px);
  font-weight: 600;
}
.offer .visual{
  margin: auto;
}
.offer .visual + p{
  margin-top: min(4vw,30px);
  text-align: right;
  font-size: min(1.87vw ,14px);
}
.offer .graf{
  max-width: 350px;
  width: 50vw;
}
/* Award */
.award{
  padding-top: min(8vw,60px);
}
.award > *:last-child{
  margin-top:min(4vw,30px);
}
.award .visual{
  width: min(93.34vw,700px);
  margin: auto;
}

/* sr */
.sr{
   padding-top: min(13.34vw,100px);
  /* padding-bottom: min(13.34vw,100px); */
}
.sr-slider{
  position: relative;
}
.sr-slider button.nav-btn {
  width: min(6.133vw,46px);
  aspect-ratio: 23 /42;
  background: transparent;
  border: unset;
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto;
  z-index: 11;
}
.nav-next{
  right: min(2.67vw,20px);
}
.nav-prev{
  left: min(2.67vw,20px);
  transform: scale(-1, 1);
}
.sr > *:last-child{
  margin-top:min(7.333vw,55px);
}

/* case */
.case{
   padding-top: min(13.34vw,100px);
  /* padding-bottom: min(13.34vw,100px); */
}
.case .inner{
  padding-top: 0;
  padding-bottom: 0;
}
.list-case li + li{
  margin-top: min(13.34vw,100px);
}
.case-title{
  padding: min(.67vw,5px);
  background-color: var(--c-bkgray);
  text-align: center;
  font-size: min(3.73vw,28px);
  font-weight: 600;
}
.case-comment{
  margin-top: max(-3.34vw,-25px);
}
.case-comment.mt42{
  margin-top: max(-4.2vw, -32px);
}
.case-product{
  margin-top: min(4.54vw,34px);
}
.list-case-txts{
  margin-top: min(2.67vw,20px);
  padding: min(1.33vw,10px) min(2vw,15px);
  background-color: var(--c-bkgray);
  font-size: min(3.2vw,24px);
  font-weight: 600;
}
.case > *:last-child{
  margin-top:min(7.333vw,55px);
}

/* staff */
.staff{
   padding-top: min(13.34vw,100px);
  /* padding-bottom: min(13.34vw,100px); */
}
.list-staff{
  padding-top: 0!important;
  padding-bottom: 0!important;
  gap: min(2.67vw,20px);
}
.list-staff li{
  width: min(29.34vw,220px);
}
.list-staff li p{
  margin-top: min(1.33vw,10px);
  text-align: center;
  font-size: min(3.007vw,23px);
  font-weight: 600;
  line-height: 1.22;
}
.staff > *:last-child{
  margin-top:min(7.333vw,55px);
}

/* area */
.area{
   padding-top: min(13.34vw,100px);
  /* padding-bottom: min(13.34vw,100px); */
}

/* store */
.store{
   padding-top: min(6.67vw,50px);
  /* padding-bottom: min(13.34vw,100px); */
}
.list-stores-title{
  padding: min(1.33vw,10px) 0 min(1.27vw,9px);
  margin-bottom: min(2.67vw,20px);
  background-color: #999999;
  text-align: center;
  font-size: min(3.734vw,28px);
  color: #fff;
  line-height: 1;
  cursor: pointer;
  white-space: nowrap;
}
.list-stores-title .icon{
  display: inline-block;
  width: 1em;
  height: 1em;
  margin-left: 1em;
  vertical-align: middle;
  position: relative;
  top: -.075em;
  background-image: url(../img/icon_plus.svg);
}
.list-stores-title .icon img{
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.list-stores-title .ajuster{
  display: inline-block;
  padding: 0 .5em;
}
.list-stores .view{
  max-height: 0px;
  overflow-y: hidden;
  transition: all 1s ease-in-out;
}
.list-store{
  padding-top: min(4vw,30px);
  padding-bottom: min(13.33vw,100px);
}
.list-store li{
  padding: 0 min(3.34vw, 25px);
  text-align: center;
}
.list-store li + li{
  margin-top: min(10vw, 75px);
}
.list-store .visual{
  width: min(40vw,300px);
  aspect-ratio: 300 / 195;
  overflow: hidden;
}
.list-store .visual img{
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.list-store .flex{
  gap: min(2.67vw,20px);
}
.list-store-txt{
  text-align: left;
}
.list-store-txt h4{
  font-size: min(3.47vw,26px);
  line-height: 1;
}
.list-store-txt p{
  margin-top: min(2.01vw,16px);
  font-size: min(3.2vw,24px);
}
.list-store .map{
  width: 100%;
  aspect-ratio: 70 /28 ;
  margin-top: min(4vw,30px);
  overflow: hidden;
}
.list-store .map iframe{
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.list-store .btn{
  width: min(86.67vw,650px);
  margin-top: min(4vw,30px);
  padding-left: .2em;
  background-image: url(../img/btn-pw.svg);
  background-size: min(77.34vw,580px);
  font-size: min(4.8vw ,36px);
  box-shadow: min(.534vw,4px) min(.534vw,4px) 0 #cec3c2;
}
@media screen and (max-width:750px) {
  .list-store .btn{
    padding: min(2.933vw, 22px) 0 min(2.67vw, 20px);
    padding-left: .4em;
  }
}
.list-store .btn b{
  color: #dab436;
}

.list-stores-title.active .icon{
  background-image: url(../img/icon_minus.svg);
}
.list-stores .active + .view{
  max-height: fit-content;
}

/* experience */
.experience{
  padding: min(10vw,75px) 0 0;
}
.experience > *:last-child{
  margin-top:min(7.333vw,55px);
}

/* form */
#form{
  padding-top: min(13.34vw,100px);
  padding-bottom: min(8vw,60px);
}
.form-title{
  margin-bottom: min(7.333vw,55px);
}
a.contact-tel {
  display: block;
  width: 100%;
  margin-top: 2em;
  margin-left: auto;
  margin-right: auto;
  padding: 0em;
  border: 3px solid;
  border-color: #efefef;
  background-color: #ffffff;
  text-align: center;
}
a.contact-tel img{
  width: 100%;
  height: auto;
}
a.contact-hojyokin {
  display: block;
  width: 100%;
  margin-top: 2em;
  margin-left: auto;
  margin-right: auto;
  text-align: center;
}
a.contact-hojyokin img{
  width: 100%;
  max-width: 380px;
  height: auto;
}
.form-lead{
  padding-top: min(9.87vw,80px);
  font-size: min(3.2vw,24px);
  line-height: 1.58;
}
form {
  margin-top: min(13.34vw,100px);
  font-size: min(3.2vw, 20px);
}
form table {
  width: 100%;
  table-layout: fixed;
  border-collapse: collapse;
  border-spacing: 0;
}
form table tr th, form table tr td {
  display: block;
  width: 100%;
  padding: 0.5em 0 0.5em;
}
form table.table_noline tr th {
    text-align: left;
    padding: 0.5em 0 0;
}
form .must {
  display: inline-block;
  margin-left: 0.5em;
  font-weight: bold;
  color: #a34728;
}
form .check {
  padding-right: 2em;
  position: relative;
}
form .check + .check{
  margin-top: 1em;
}
form .check::after {
  position: absolute;
  top: 0.8em;
  right: 0;
  margin: auto;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 1.5em;
  height: 1.5em;
  content: "\002713";
  color: #fff;
  background-color: #dab436;
  border-radius: 50%;
  transition: all 0.2s ease-out;
  opacity: 0;
}
form .check .alert {
  margin-left: 3px;
  margin-top: 3px;
  padding: 4px 8px;
  background-color: #E60012;
  border-radius: 0;
  font-size: min(2.1vw,16px);
  line-height: 1;
  font-weight: bold;
  color: #fff;
  transition: all 0.2s ease-out;
  display: none;
}
form .check .alert.active {
    display: inline-block;
}
form .small {
  font-size: min(2.6667vw,16px);
}
.form_notice {
  margin-top: 0.6em;
  font-size: 0.7778em;
  letter-spacing: 0.05em;
}
form input[type="text"], form textarea, form input[type="tel"], form input[type="email"] {
  width: 100%;
  padding: 0.8em;
  background-color: #F0F0F0;
  border: solid 1px #F0F0F0;
  border-radius: 0;
  -webkit-appearance: none;
}
form select, form input[type="date"] {
  padding: 0.8em;
  background-color: #F0F0F0;
  border: solid 1px #F0F0F0;
  border-radius: 0;
}
form input[type="text"].datepicker {
  width: 50%;
}
form input[type="text"]#yourname, form input[type="text"]#your-name {
    width: calc(100% - 2em);
}
.red, .notice {
  color: #9f0d0d;
  font-weight: 600;
}
/* 個別のやつ */
form select#sr {
  width: 100%;
}

.form_btn_send {
  display: flex;
  justify-content: center;
  margin: 1em 0 3em;
  padding-top: min(9.6vw,72px);
  text-align: center;
}
#send_btn, #back_btn {
  display: none;
}
.input_btn {
  display: block;
  width: min(64vw,480px);
  height: min(12vw,90px);
  background: #fff;
  border: solid 1px #a34728;
  position: relative;
}
.input_btn::before {
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 100%;
  content: "";
  background: linear-gradient(#a34728 0%, #a34728 50%, #a25237 50%, #a25237 100%);
  border: solid 1px #a34728;
}
.form_btn_send .input_btn::after {
    content: "";
    display: block;
    height: min(20vw,150px);
    width: min(21.3334vw,160px);
    right: -12%;
    bottom: -3px;
    position: absolute;
    background: url(https://www.onoya.com/sendai/cms/wp-content/themes/onoya_sendai2021/img/contact/common/contact-annai02.png) no-repeat;
    background-size: contain;
}
.input_btn .input_btn_label {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 100%;
    font-size: min(4.8vw,36px);
    font-weight: 700;
    line-height: 1;
    color: #fff;
    position: relative;
}
.input_btn::before {
  transition: all 0.3s ease-out;
  opacity: 1;
}
.input_btn_label::after {
  content: "";
  width: min(1.87vw,14px);
  height: min(1.87vw,14px);
  border-top: min(0.67vw,5px) solid #fff;
  border-right: min(0.67vw,5px) solid #fff;
  transition: all 0.3s ease-out;
  display: block;
  margin-left: 0.5em;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
.input_btn:hover .input_btn_label {
    color: #a34728;
}
.input_btn:hover::before {
    opacity: 0;
}
.input_btn:hover .input_btn_label::after {
  border-color: #a34728;
}
.check_submitbtn {
  margin-top:  min(2.67vw,20px);;
  text-align: center;
}
.form_end{
  width: 100%;
  margin: min(8vw,60px) 0 0;
  padding: min(5.33vw,40px) min(8vw,60px);
  padding-top: min(6.67vw,50);
  background-color: var(--c-bkgray);
  text-align: justify;
  font-size: min(2.67vw,20px);
}
form .textlink{
  text-decoration: underline;
}

/* footer */
footer .inner{
  padding: 0 0 min(2.67vw, 20px);
  text-align: center;
  font-size: min(2.4vw, 18px);
  letter-spacing: .04em;
}

body:has(.thanks) footer .inner{
  padding: min(2.67vw, 20px) 0 min(2.67vw, 20px);
  background-color: var(--c-bkgray);
}

/* thx */
.thanks{
  text-align: center;
  font-size: min(2.66vw,20px);
  position: relative;
}
.thanks .inner{
  padding-top: min(20vw, 150px);
}
.thanks .sec-title{
  padding: 0 min(5.34vw,40px);
  margin-top: min(10vw, 75px);
}
.thanks p{
  padding: 0 min(5.34vw,40px);
}
.thanks p + p{
  margin-top: min(2.66vw,20px);;
}
.thanks p:has(small){
  text-align: left;
}
.thanks .visual{
  opacity: .25;
  position: absolute;
  z-index: -1;
}
.thanks .form_end p{
  text-align: center;
}
.grecaptcha-badge{
  display: none!important;
  z-index: 99;
  bottom:  min(13.67vw, 100px)!important;
}


/* float */
.page_top{
  width: min(8vw,60px);
  aspect-ratio: 1;
  margin: auto;
  z-index: 111;
  cursor: pointer;
  transition: all 1s ease-in-out;
  opacity: 0;
  position: absolute;
  right: min(4vw, 30px);
  top: 0;
}
.float_wrap.active .page_top{
  opacity: 1;
} 
.float_wrap{
  max-width: 750px;
  aspect-ratio: 750 / 365;
  position: fixed;
  bottom: -325px;
  left: 0;
  right: 0;
  margin: auto;
  transition: all 1s ease-in-out;
  z-index: 11111;
}
.float_wrap.active{
  /* position: fixed; */
  bottom: 0;
  /* left: 0;
  right: 0;
  margin: auto;
  z-index: 11111; */
}
.float_wrap.active.none{
  bottom: -325px;
}
@media screen and (max-width:750px) {
 .float_wrap.active.none{
    bottom: -43.34vw;
  } 
}
.cta.float{
  max-width: 750px;
  aspect-ratio: 750 / 285;
  padding-top: min(4vw,30px);
  background-color: rgba(255,253,229,0.9);
  background-image: unset;
  position: absolute;
  bottom: 0;
}
.float_wrap.active.none .cta.float{
  pointer-events: none;
}
.cta.float p{
  background-image: url(../img/head-float.svg);
  background-repeat: no-repeat;
  background-size: min(88vw, 620px);
  background-position: top .25em center;
  text-align: center;
  line-height: 1.3;
  position: relative;
  top: 0;
  left: 0;
  text-shadow: 0 0 3px #fff;
}
.cta.float p b{
  color: #a34728;
}
.cta.float .btn{
  aspect-ratio: 995 / 122;
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 0;
  background-size: cover;
  background-color: unset;
  box-shadow: none;
}

@media screen and (min-width:751px) {
  .float_wrap {
    aspect-ratio: 750 / 280;
  }
  .cta.float{
    aspect-ratio: 750 / 205;
    padding-top: 20px;
  }
  .cta.float .btn {
    background-image: url(../img/btn-float.svg);
    font-size: 36px;
    bottom: 15px;
  }
}
@media screen and (max-width:750px) {
  .cta.float p{
    font-size: 5vw;
  }
  .cta.float .btn {
    aspect-ratio: 650 / 115;
    background-image: url(../img/btn-float_sp.svg);
  }
}

@media screen and (max-width:750px) {
  .only-pc{
    display: none!important;
  }
}
@media screen and (min-width:751px) {
  .only-mb{
    display: none!important;
  }
}