@charset "UTF-8";
.kana {
 letter-spacing: -0.025em;
 padding-right: 0.15em;
}
header {
 position: absolute;
 top: 0;
 left: 0;
 width: 100%;
 padding: 2.5% 5%;
 display: flex;
 align-items: center;
 justify-content: flex-start;
 z-index: 115;
}
header h1 {
 flex: 1 0 12vw;
 max-width: 12vw;
 position: relative;
 animation: fadeUp .4s ease-in-out 0.0s 1 normal forwards;
}
header .crown {
 flex: 1 0 calc(100% - 12vw);
 position: relative;
 z-index: 5;
 display: flex;
 justify-content: flex-start;
 align-items: center;
 animation: fadeUp .4s ease-in-out 0.2s 1 normal forwards;
 padding-left: 2vw;
}
header .crown p {
 font-size: 1.8rem;
 white-space: nowrap;
 font-weight: 600;
 line-height: 1.4;
 background: #FFD955;
 border-radius: 0.8rem;
 padding: 0.35em 0.65em 0.5em;
}
header .crown p span {
 font-size: 82%;
 display: block;
 font-weight: 900;
}
header .crown p span strong {
 font-size: 110%;
}
header .crown img {
 flex: 1 0 12vw;
 max-width: 12vw;
 padding-left: 1.5vw;
}
#kv {
 background: url("../images/wave_br.svg") no-repeat left top #fffff3;
 background-size: 45% auto;
 position: relative;
 /*min-height: 100vh;*/
 overflow: hidden;
 padding: 14vw 0 3.5vw;
 z-index: 105;
}
#kv:after {
 content: "";
 display: block;
 background: url("../images/wave_gr.svg") no-repeat;
 background-size: cover;
 width: 60%;
 padding-top: calc(38% * 0.60);
 position: absolute;
 bottom: 0;
 right: 0;
 opacity: 0.6;
}
.area #kv:before {
 content: "";
 display: block;
 position: absolute;
 top: -5%;
 right: -5%;
 z-index: 1;
}
.area.saitama #kv:before {
 background: url("../images/area_saitama.svg") no-repeat center center;
 background-size: cover;
 width: 50%;
 padding-top: calc(54.545% * 0.50);
 right: -1%;
 top: -2%;
}
.area.chiba #kv:before {
 background: url("../images/area_chiba.svg") no-repeat center center;
 background-size: cover;
 width: 40%;
 padding-top: calc(131.579% * 0.40);
 right: 10%;
 top: -15%;
}
.area.tokyo #kv:before {
 background: url("../images/area_tokyo.svg") no-repeat center center;
 background-size: cover;
 width: 50%;
 padding-top: calc(51.02% * 0.50);
 right: -1%;
 top: 2%;
}
.area.kanagawa #kv:before {
 background: url("../images/area_kanagawa.svg") no-repeat center center;
 background-size: cover;
 width: 50%;
 padding-top: calc(73.89% * 0.50);
 right: 1%;
 top: -3%;
}
.area.aichi #kv:before {
 background: url("../images/area_aichi.svg") no-repeat center center;
 background-size: cover;
 width: 50%;
 padding-top: calc(88.76% * 0.50);
 right: -1%;
 top: -15%;
}
.area.osaka #kv:before {
 background: url("../images/area_osaka.svg") no-repeat center center;
 background-size: cover;
 width: 35%;
 padding-top: calc(144.23% * 0.35);
 right: 24%;
 top: -5%;
}
#kv .copy {
 position: relative;
 z-index: 2;
}
#kv .copy > div {
 opacity: 0;
 font-family: "Murecho", serif;
 font-weight: 900;
 font-size: 3.4vw;
 line-height: 1.3;
 letter-spacing: 0.05em;
}
#kv .copy > div strong {
 font-size: 120%;
 line-height: 1.2;
 transform: translateY(0.15em);
}
#kv .copy > div small {
 font-weight: inherit;
 font-size: 75%;
 letter-spacing: 0;
 display: inline;
}
#kv .copy .copy01 {
 margin-bottom: 0.15em;
 animation: fadeLeft .4s ease-in-out .4s 1 normal forwards;
}
#kv .copy .copy02 {
 animation: fadeLeft .4s ease-in-out .6s 1 normal forwards;
}
#kv .copy .copy03 {
 animation: fadeLeft .4s ease-in-out .8s 1 normal forwards;
}
#kv .copy .copy04 {
 animation: fadeLeft .4s ease-in-out 1.0s 1 normal forwards;
 margin-bottom: 1vw;
}
#kv .copy .cateList {
 animation: fadeUp .4s ease-in-out 1.2s 1 normal forwards;
 margin-bottom: 1.5vw;
}
#kv .copy .cateList ul {
 font-size: 0;
 letter-spacing: -0.4em;
}
#kv .copy .cateList ul li {
 display: inline-block;
 background: #095284;
 color: #fffff3;
 font-family: "Murecho", serif;
 font-weight: 900;
 font-size: 1.6vw;
 line-height: 1.2;
 padding: 0.2em 0.5em 0.24em;
 margin: 0 0.35em 0.35em 0;
}
#kv .copy .copy05 {
 animation: fadeUp .4s ease-in-out 1.4s 1 normal forwards;
 display: inline-block;
 background: #ba0001;
 color: #fdd23e;
 padding: 0.10em 0.65em 0.25em;
 border-radius: 8px;
}
#kv .copy .copy05 > span.special {
 position: relative;
 white-space: nowrap;
 font-size: 150%;
 display: inline-block;
}
#kv .copy .copy05 > span.special small {
 font-size: 40%;
 padding: 0 0 0 0.25em;
}
#kv .copy .copy05 > span.special em {
 display: inline-block;
 font-size: 30%;
 font-weight: 700;
 position: absolute;
 top: 0.95em;
 right: 0;
 letter-spacing: 0.015em;
}
.shine {
 background-image: linear-gradient(70deg, #ffb703 47%, #ffd343 50%, #ffb703 53%);
 background-size: 500% 100%;
 background-clip: text;
 -webkit-background-clip: text;
 color: transparent;
 animation: shine 2.5s infinite;
}
@keyframes shine {
 0% {
  background-position: 100% 50%;
 }
 50% {
  background-position: 0% 50%;
 }
}
.marker {
 background: linear-gradient(transparent 60%, #f7f9a5 60%);
}
#kv .copy .copy03 .name {
 color: #095284;
 font-weight: 700;
 display: inline-block;
}
#kv .copy .copy03 .name .kana {
 font-weight: 900;
}
#kv .broken_car {
 display: block;
 background: url("../images/broken_car.svg") no-repeat;
 background-size: cover;
 width: 30vw;
 height: calc(30vw * 0.64);
 position: absolute;
 right: 15vw;
 bottom: 0;
 opacity: 0;
 animation: fadeLeft .7s ease-in-out 0.4s 1 normal forwards;
}
.trouble.gas #kv .broken_car {
 background: url("../images/broken_car_gas.svg") no-repeat;
 background-size: cover;
}
.trouble.inrock #kv .broken_car {
 background: url("../images/broken_car_inrock.svg") no-repeat;
 background-size: cover;
}
.trouble.punk #kv .broken_car {
 background: url("../images/broken_car_punk.svg") no-repeat;
 background-size: cover;
}
.trouble.tire #kv .broken_car {
 background: url("../images/broken_car_tire.svg") no-repeat;
 background-size: cover;
}
#kv .man {
 display: block;
 background: url("../images/man.svg") no-repeat;
 background-size: cover;
 width: 10vw;
 height: calc(10vw * 2.586);
 position: absolute;
 right: 5vw;
 bottom: 0.5vw;
 opacity: 0;
 animation: fadeRight .7s ease-in-out 0.8s 1 normal forwards;
}
.area .prefectures {
 position: absolute;
 right: 0;
 top: -7.5vw;
 z-index: 5;
 display: inline-block;
 font-size: 180%;
 background: #7194b8;
 color: #fffff3;
 text-align: right;
 padding: 0.2em 5% 0.2em 0.45em;
 font-family: "Murecho", serif;
 font-weight: 600;
 text-shadow: 4px 4px 0 #55779B;
}
.area .prefectures:before {
 content: "";
 display: block;
 width: 0;
 height: 0;
 border-style: solid;
 border-color: transparent #7194b8 transparent transparent;
 border-width: 0px 0.65em 2em 0px;
 position: absolute;
 left: calc(-0.65em + 1px);
 top: 0;
}
.area .prefectures:after {
 content: "";
 display: block;
 height: 4px;
 width: 94%;
 background: #7194b8;
 position: absolute;
 bottom: -7px;
 right: 0;
}
.area .prefectures strong {
 font-weight: 700;
}
.area .prefectures small {
 font-weight: 900;
}
#kv .operator {
 display: block;
 background: url("../images/operator.svg") no-repeat;
 background-size: cover;
 width: 27vw;
 padding-top: 27vw;
 position: absolute;
 right: 12vw;
 bottom: 19vw;
 opacity: 0;
 animation: fadeDown 0.7s ease-in-out 1.2s 1 normal forwards;
}
.area #kv .operator {
 width: 20vw;
 padding-top: 20vw;
 right: 14vw;
 bottom: 14vw;
}
#about {
 background: url("../images/ill_01.svg") no-repeat left 5% bottom 2.5vw #fff0ee;
 background-size: 40vw auto;
}
#about:after {
 content: "";
 display: block;
 background: url("../images/wave_br2.svg") no-repeat;
 background-size: cover;
 width: 45%;
 padding-top: 35%;
 position: absolute;
 bottom: 0;
 right: 0;
}
#about .inner {
 height: 100%;
 display: flex;
 justify-content: space-between;
 align-items: center;
}
#about .left {
 flex: 1 0 50%;
 max-width: 50%;
 padding: 0 0 25vw 5%;
 text-align: left;
}
#about h2 {
 display: inline-block;
 font-family: "Murecho", serif;
 font-weight: 900;
 font-size: 120%;
 text-align: center;
 position: relative;
 line-height: 1.5;
}
#about h2:before {
 content: "";
 display: block;
 background: url("../images/siren.svg") no-repeat left top;
 background-size: cover;
 width: 6vw;
 height: calc(0.679 * 6vw);
 position: relative;
 z-index: 3;
 margin: 0 auto 0.5vw;
}
#about h2:after {
 content: "";
 display: block;
 background: url("../images/fukidashi.svg") no-repeat;
 background-size: cover;
 width: 140%;
 padding-top: calc(73.17% * 1.4);
 position: absolute;
 top: 65%;
 transform: translateY(-50%);
 left: -50%;
 right: -50%;
 margin: 0 auto;
}
#about h2 strong {
 display: block;
 position: relative;
 z-index: 2;
}
#about h2 span {
 display: block;
 position: relative;
 z-index: 2;
}
#about .right {
 flex: 1 0 50%;
 max-width: 50%;
 display: inline-block;
 text-align: center;
 padding-right: 5%;
}
#about .right p {
 font-size: 150%;
 font-weight: bold;
 margin-bottom: 0.25em;
}
#about .right p strong {
 font-size: 140%;
 letter-spacing: -0.1em;
 color: #2441a5;
 display: inline-block;
 padding-right: 0.15em;
}
#about .right ul.check {
 display: inline-block;
 text-align: left;
}
#about .right ul.check li {
 font-size: 135%;
 font-weight: bold;
 position: relative;
 margin-top: 0.075em;
 padding-left: 0.5em;
}
#about .right ul.check li:before {
 content: "";
 display: inline-block;
 width: 11px;
 height: 7px;
 border-left: 4px solid #25AF01;
 border-bottom: 4px solid #25AF01;
 transform: rotate(-45deg)translateY(-7px);
 padding-right: 0.25em;
}
#about .right ul.check li span {
 color: #ba0001;
}
#about .right ul.fukidashi {
 display: block;
 text-align: center;
 padding-top: 0.5em;
}
#about .right ul.fukidashi li {
 display: inline-block;
 padding: 0.5em 1em;
 border-radius: 2.4rem;
 background: #fff;
 margin-top: 1em;
 font-size: 90%;
 font-weight: bold;
 position: relative;
}
#about .right ul.fukidashi li:after {
 content: "";
 display: block;
 width: 0;
 height: 0;
 border-left: 7px solid transparent;
 border-right: 7px solid transparent;
 border-top: 10px solid #fff;
 position: absolute;
 bottom: -10px;
 left: 10%;
}
#about .right ul.fukidashi li:nth-child(even):after {
 left: auto;
 right: 10%;
}
.pageChanger {
 position: absolute;
 display: inline-block;
 top: 50%;
 transform: translateY(-50%);
 z-index: 100;
 font-weight: bold;
 background: #fdd23e;
 padding: 1em 1em;
 white-space: nowrap;
 border-radius: 20rem;
 line-height: 1;
 writing-mode: vertical-rl;
}
#about .pageChanger {
 right: -1.5em;
}
#omakase {
 background: #D0EBE6;
}
#omakase .pageChanger {
 left: -1.5em;
}
#omakase .inner {
 position: absolute;
 top: 50%;
 transform: translateY(-60%);
 left: 0;
 right: 0;
 margin: 0 auto;
 text-align: center;
 padding: 2.5em;
 background: #fff;
 border-radius: 2.2rem;
 width: 64%;
 box-shadow: rgba(149, 157, 165, 0.2) 0px 8px 24px;
}
#omakase .inner p {
 font-family: "Murecho", serif;
 font-weight: 900;
 font-size: 2.6vw;
 position: relative;
}
#omakase .inner p .kana {
 display: inline-block;
 position: relative;
}
#omakase .inner p:first-of-type:before {
 content: "";
 display: block;
 background: url("../images/kirakira01.svg") no-repeat;
 background-size: cover;
 width: 15vw;
 height: calc(15vw * 0.72);
 position: absolute;
 top: -7vw;
 left: -3.5vw;
}
#omakase .inner p:first-of-type:after {
 content: "";
 display: block;
 background: url("../images/kirakira02.svg") no-repeat;
 background-size: cover;
 width: 5vw;
 height: calc(5vw * 1.014);
 position: absolute;
 top: -2.5vw;
 right: 1.5vw;
}
#omakase .inner p strong {
 font-size: 110%;
}
#omakase .inner .name {
 color: #095284;
 font-size: 125%;
 padding-left: 1em;
}
#omakase .inner:before {
 content: "";
 display: block;
 background: url("../images/staff.png") no-repeat;
 background-size: cover;
 width: 20vw;
 height: calc(1.055 * 20vw);
 position: absolute;
 bottom: -5vw;
 left: -10.5vw;
}
#omakase .inner:after {
 content: "";
 display: block;
 background: url("../images/battery.png") no-repeat;
 background-size: cover;
 width: 20vw;
 padding-top: 20vw;
 position: absolute;
 bottom: -5vw;
 right: -10.5vw;
}
#omakase .road {
 width: 100%;
 background: url("../images/road.svg") left center no-repeat;
 background-size: 200% auto;
 position: absolute;
 bottom: 2%;
 left: 0;
 padding-top: 18%;
}
#cost {
 background: #f7f9a5;
}
#cost .inner {
 position: absolute;
 top: 50%;
 transform: translateY(-50%);
 left: 0;
 right: 0;
 margin: 0 auto;
 text-align: center;
 /*padding: 2.5em;
 background: #fff;
 border-radius: 2.2rem;
 width: 64%;
 box-shadow: rgba(149, 157, 165, 0.2) 0px 8px 24px;*/
 display: flex;
 flex-direction: row-reverse;
 align-items: stretch;
}
#cost .inner .left {
 flex: 1 0 50%;
 position: relative;
 font-family: "Murecho", serif;
 font-weight: 900;
}
#cost .inner .left .central {
 position: absolute;
 top: 50%;
 transform: translateY(-75%);
 left: 0;
 right: 0;
 margin: 0 auto;
}
#cost .inner h2 {
 font-weight: 900;
 font-size: 2.6vw;
}
#cost .inner h2 .name {
 color: #095284;
 font-weight: 900;
 display: inline-block;
}
#cost .inner .red {
 color: #ba0001;
}
#cost .inner h3 {
 font-weight: 900;
 font-size: 2.6vw;
}
#cost .inner .right {
 flex: 1 0 50%;
 position: relative;
}
#cost .priceTable {
 font-weight: bold;
 border: solid 3px #095284;
 border-radius: 1rem;
 margin: 0.5em auto 0;
 background: #fff;
 position: relative;
}
#cost:before {
 content: "";
 display: block;
 background: url("../images/car_red.svg") no-repeat;
 background-size: cover;
 width: 20vw;
 height: calc(20vw * 0.591);
 position: absolute;
 bottom: 2.5vw;
 right: 12.5%;
 z-index: 2;
}
#cost .priceTable h4 {
 font-weight: bold;
 font-size: 1.5vw;
 padding: 0.4em 0.5em;
 background: #095284;
 color: #fff;
}
#cost .priceTable table {
 width: 100%;
 font-size: 1.6vw;
 text-align: left;
}
#cost .priceTable table th {
 padding: 0.4em 1em;
 border-bottom: solid 2px #095284;
 border-right: dashed 1px #095284;
 font-weight: bold;
 vertical-align: middle;
}
#cost .priceTable table td {
 padding: 0.4em 1em;
 border-bottom: solid 2px #095284;
 font-weight: bold;
 text-align: center;
 vertical-align: middle;
}
#cost .priceTable table tr:last-child th, #cost .priceTable table tr:last-child td {
 border-bottom: none;
}
#cost .priceTable table td span {
 font-size: 135%;
 color: #095284;
}
#cost .road {
 width: 100%;
 background: url("../images/road.svg") left 100% center no-repeat;
 background-size: 200% auto;
 position: absolute;
 bottom: 2%;
 left: 0;
 padding-top: 18%;
}
#point {
 background: #fff0ee;
}
#point .inner {
 position: absolute;
 top: 50%;
 transform: translateY(-50%);
 left: 0;
 right: 0;
 margin: 0 auto;
 text-align: center;
}
#point .lead {
 font-family: "Murecho", serif;
 font-weight: 900;
}
#point .lead strong {
 font-size: 150%;
}
#point .lead .red {
 color: #ba0001;
}
#point .sliderArea {
 margin: 2em auto 0;
 width: 64%;
 box-shadow: rgba(149, 157, 165, 0.2) 0px 8px 24px;
 border-radius: 2.2rem;
 position: relative;
}
#point .sliderArea:after {
 content: "";
 display: block;
 width: 5vw;
 height: calc(5vw * 0.986);
 position: absolute;
 top: -2.0vw;
 right: -2.0vw;
 background: url(../images/kirakira02.svg) 0% 0% / cover no-repeat;
}
#point .sliderArea .item {
 background: #fff;
 border-radius: 2.2rem;
 padding: 2.5em 2.5em 2.5em 30%;
 text-align: left;
 position: relative;
}
#point .sliderArea .item.point01 {
 background: url("../images/point01.svg") no-repeat left 2.5em center #fff;
 background-size: auto 5em;
}
#point .sliderArea .item.point02 {
 background: url("../images/point02.svg") no-repeat left 2.0em center #fff;
 background-size: auto 6em;
}
#point .sliderArea .item.point03 {
 background: url("../images/point03.svg") no-repeat left 2.5em center #fff;
 background-size: auto 5em;
}
#point .sliderArea .item h3 {
 font-weight: 700;
 font-family: "Murecho", serif;
 font-size: 2.4vw;
 color: #095284;
 position: relative;
 padding-left: 2.45em;
 margin-bottom: 0.75em;
}
#point .sliderArea .item h3 span {
 font-size: 130%;
 line-height: 1.1;
 border-radius: 50%;
 letter-spacing: 0;
 color: #fff;
 background: #095284;
 position: absolute;
 left: 0;
 top: 50%;
 transform: translateY(-50%);
 padding: 0.12em 0.225em 0.25em;
}
#point .sliderArea .item h4 {
 font-weight: bold;
 font-size: 90%;
 margin-bottom: 0.5em;
}
#point .sliderArea .item p {
 font-size: 75%;
}
#point .sliderArea .slick-prev, #point .sliderArea .slick-next {
 border: none;
 background: none;
 font-size: 0;
 position: absolute;
 top: 50%;
 transform: translateY(-50%);
}
#point .sliderArea .slick-prev {
 left: -5vw;
}
#point .sliderArea .slick-next {
 right: -5vw;
}
#point .sliderArea .slick-prev:before {
 content: "";
 display: inline-block;
 width: 16px;
 height: 16px;
 border-left: 5px solid #ba0001;
 border-bottom: 5px solid #ba0001;
 transform: rotate(45deg);
}
#point .sliderArea .slick-next:before {
 content: "";
 display: inline-block;
 width: 16px;
 height: 16px;
 border-right: 5px solid #ba0001;
 border-top: 5px solid #ba0001;
 transform: rotate(45deg);
}
#point .road {
 width: 100%;
 background: url("../images/road.svg") left 7.3% center no-repeat;
 background-size: 200% auto;
 position: absolute;
 bottom: 2%;
 left: 0;
 padding-top: 18%;
}
#step {
 background: #D0EBE6;
}
#step .inner {
 position: absolute;
 top: 50%;
 transform: translateY(-50%);
 left: 0;
 right: 0;
 margin: 0 auto;
 text-align: center;
}
#step .lead {
 font-family: "Murecho", serif;
 font-weight: 900;
 font-size: 120%;
}
#step .lead strong {
 font-size: 150%;
}
#step .lead .red {
 color: #ba0001;
}
#step .lead .red:first-of-type {
 font-size: 180%;
}
#step ul {
 margin: 1.5em auto 0;
 display: flex;
 align-items: stretch;
 justify-content: space-between;
}
#step ul li {
 flex: 1 0 23%;
 max-width: 23%;
 padding: 1em 1em;
 border-radius: 2.2rem;
 background: #fff;
 box-shadow: rgba(149, 157, 165, 0.2) 0px 8px 24px;
 text-align: left;
}
#step ul li h3 {
 font-weight: bold;
 font-family: "Murecho", serif;
 font-size: 85%;
 white-space: nowrap;
 margin-bottom: 0.5em;
}
#step ul li h3 span {
 background: #ffb703;
 font-weight: 700;
 font-family: "Murecho", serif;
 display: block;
 width: 5.6em;
 text-align: center;
 font-size: 80%;
 border-radius: 20rem;
 margin-bottom: 0.5em;
}
#step ul li p {
 font-size: 60%;
}
#step .road {
 width: 100%;
 background: url("../images/road.svg") left 11% center no-repeat;
 background-size: 200% auto;
 position: absolute;
 bottom: 2%;
 left: 0;
 padding-top: 18%;
}
#serviceArea {
 text-align: center;
 background: #ececec;
}
#serviceArea .inner {
 padding: 5%;
}
#serviceArea h2 {
 color: #4c4c4c;
 font-family: "Murecho", serif;
 font-weight: 500;
 font-size: 90%;
 margin-bottom: 0.5em;
}
#serviceArea ul {
 display: block;
 font-size: 0;
 letter-spacing: -0.4em;
}
#serviceArea ul li {
 display: inline-block;
 font-size: 1.4rem;
 letter-spacing: 0.025em;
 color: #5c5c5c;
}
#serviceArea ul li:after {
 content: "/";
 margin: 0 0.2em;
 opacity: 0.5;
}
#serviceArea ul li:last-child:after {
 display: none;
}
#payment {
 background: #095284;
 color: #fff;
 text-align: center;
}
#payment .inner {
 padding: 5%;
}
#payment p {
 font-size: 75%;
}
#payment .card {
 width: 34vw;
 margin: 1em auto 0;
 background: #095284;
}
#contact {
 background: #F9DBD7;
 text-align: center;
}
#contact .inner {
 padding: 5%;
}
#contact p {
 font-size: 80%;
 font-weight: bold;
 margin-bottom: 0.75em;
}
#contact .btn {
 width: 40%;
 margin: 0 auto;
}
#contact .btn.tel {
 margin-bottom: 1em;
}
#contact .btn.tel a {
 color: #fff;
 background: #bb0000;
 font-family: "Murecho", serif;
 font-weight: 700;
 line-height: 1.3;
 padding: 1em 0;
 border-radius: 6px;
 overflow: hidden;
 position: relative;
 box-shadow: 9px 9px 0 rgba(187, 0, 0, 0.4);
}
#contact .btn.tel a:hover {
 box-shadow: 0 0 0 rgba(187, 0, 0, 0.4);
}
#contact .btn.tel a em {
 display: block;
 font-weight: 500;
 font-size: 65%;
}
#contact .btn.line a {
 color: #fff;
 background: #00b900;
 font-family: "Murecho", serif;
 font-weight: 700;
 line-height: 1.3;
 padding: 0.75em 0;
 border-radius: 6px;
 overflow: hidden;
 position: relative;
 box-shadow: 9px 9px 0 rgba(67, 132, 67, 0.4);
}
#contact .btn.line a:hover {
 box-shadow: 0 0 0 rgba(67, 132, 67, 0.4);
}
#contact .btn.line a:before {
 content: "";
 display: block;
 background: url("../images/icon_line.svg") no-repeat;
 background-size: cover;
 width: 2.2em;
 height: calc(2.2em * 0.955);
 position: absolute;
 top: 50%;
 transform: translateY(-50%);
 left: 1.5em;
}
#faq {
 background: #e9e9e9;
 text-align: center;
}
#faq .inner {
 padding: 5%;
 color: #333;
}
#faq ul {
 width: 64%;
 margin: 0 auto;
}
#faq ul li {
 margin-bottom: 1em;
}
#faq ul li dl {
 font-size: 70%;
 text-align: left;
 border-radius: 1.2rem;
 overflow: hidden;
}
#faq ul li dl dt {
 padding: 0.75em 1.5em;
 background: #095284;
 color: #fff;
 font-weight: bold;
}
#faq ul li dl dt:before {
 content: "Q.";
}
#faq ul li dl dd {
 background: #fff;
 padding: 1em 1.5em;
 font-size: 85%;
}
#faq .caution a {
 display: inline-block;
 vertical-align: bottom;
 color: #5380A8;
}
#faq .caution a:hover {
 text-decoration: underline;
}
.fixedNav {
 position: fixed;
 bottom: 0;
 right: 0;
 margin: 0 auto;
 width: 34rem;
 background: #fff;
 text-align: center;
 z-index: 105;
 border-radius: 1rem 0 0 0;
 overflow: hidden;
}
.fixedNav .ttl {
 font-weight: bold;
 font-size: 1.4vw;
 white-space: nowrap;
}
.fixedNav ul {
 padding: 7px;
}
.fixedNav ul li.mypage_button {
 box-sizing: border-box;
}
.fixedNav ul li a {
 border-radius: 6px;
 overflow: hidden;
}
.announce {
 max-width: 100%;
 padding: 0.5em 0;
 margin: 0 auto;
 position: relative;
 overflow: hidden;
 text-align: left;
 color: #512a00;
 font-weight: bold;
 font-size: 70%;
 line-height: 1;
 background-color: #fdd23e;
}
.announce p:after {
 content: "";
 white-space: nowrap;
}
.announce p {
 margin: 0;
 padding-left: 100%;
 font-weight: bold;
 display: inline-block;
 white-space: nowrap;
 animation-name: marqueeRL;
 animation-timing-function: linear;
 animation-duration: 10s;
 animation-iteration-count: infinite;
}
.announce p span {
 color: #ba0001;
}
@keyframes marqueeRL {
 from {
  transform: translate(0);
 }
 to {
  transform: translate(-100%);
 }
}
footer {
 background: #aa998a;
 padding: 5% 5% 2.5%;
 text-align: center;
 position: relative;
 z-index: 5;
 color: #fffff3;
}
footer .mini {
 font-size: 11px;
 line-height: 1.2;
 opacity: 0.7;
}
footer ul {
 display: block;
 text-align: center;
}
footer ul li {
 display: inline-block;
 padding: 0 1em;
}
footer ul li a {
 color: #fffff3;
 font-size: 1.4rem;
}
footer .cr {
 font-size: 1.4rem;
 font-family: "Murecho", serif;
 font-weight: 400;
 padding-top: 3em;
}
@media screen and (max-width: 1000px) {
 header {
  padding: 1.5rem 1rem;
 }
 header h1 {
  flex: 1 0 20vw;
  max-width: 20vw;
 }
 header .crown {
  flex: 1 0 calc(100% - 20vw);
  padding-left: 1.5rem;
 }
 header .crown p {
  font-size: 1.4rem;
  padding: 0.5em 0.85em;
 }
 header .crown img {
  flex: 1 0 22vw;
  max-width: 22vw;
  padding-left: 1.5rem;
 }
 #kv {
  background: url("../images/wave_br.svg") no-repeat left top #fffff3;
  background-size: 75% auto;
  padding: 23vw 0 5vw;
 }
 .area.saitama #kv:before {
  width: 75%;
  padding-top: calc(54.545% * 0.75);
  right: -14%;
  top: 36%;
 }
 .area.chiba #kv:before {
  width: 60%;
  padding-top: calc(131.579% * 0.60);
  right: -9%;
  top: 12%;
 }
 .area.tokyo #kv:before {
  width: 75%;
  padding-top: calc(51.02% * 0.75);
  right: -3%;
  top: 33%;
 }
 .area.kanagawa #kv:before {
  width: 75%;
  padding-top: calc(73.89% * 0.75);
  right: -1%;
  top: 30%;
 }
 .area.aichi #kv:before {
  width: 75%;
  padding-top: calc(88.76% * 0.75);
  right: -30%;
  top: 27%;
 }
 .area.osaka #kv:before {
  width: 53%;
  padding-top: calc(144.23% * 0.53);
  right: -2%;
  top: 14%;
 }
 #kv .inner {
  padding: 3.5rem 1rem 10vw;
 }
 #kv .copy > div {
  font-size: 7.0vw;
 }
 #kv .copy .copy01 {
  margin-bottom: 0.35em;
 }
 #kv .copy .copy02 {
  margin-bottom: 0.05em;
 }
 #kv .copy .copy03 {
  margin-bottom: 0.25em;
 }
 #kv .copy .copy04 {
  margin-bottom: 3.5vw;
 }
 #kv .copy .cateList {
  margin-bottom: 0;
  width: 60%;
 }
 #kv .copy .cateList ul li {
  font-size: 3.9vw;
 }
 #kv .copy .copy05 {
  margin: 1em 0;
 }
 #kv .copy .copy05 > span.special {
  position: relative;
  font-size: 140%;
 }
 #kv .broken_car {
  width: 37vw;
  height: calc(37vw * 0.64);
  right: 17vw;
  bottom: 0;
 }
 #kv .man {
  width: 14vw;
  height: calc(14vw * 2.586);
  right: 3vw;
  bottom: 0;
 }
 .area .prefectures {
  top: 0.65rem;
  font-size: 150%;
  padding: 0.2em 5% 0.2em 0.45em;
 }
 .area .prefectures:after {
  content: "";
  display: block;
  height: 4px;
  width: 94%;
  background: #7194b8;
  position: absolute;
  bottom: -7px;
  right: 0;
 }
 #kv .operator {
  width: 37vw;
  padding-top: 37vw;
  right: 9vw;
  bottom: 25vw;
 }
 .trouble #kv .operator {
 bottom: 20vw;
  right: 10vw;
}
 .area #kv .operator {
  width: 32vw;
  padding-top: 32vw;
  right: 13vw;
  bottom: 17vw;
 }
 #about .inner {
  display: block;
  position: absolute;
  top: 45%;
  transform: translateY(-50%);
  left: 0;
  right: 0;
  margin: 0 auto;
  height: auto;
 }
 #about .left {
  flex: none;
  max-width: 100%;
  padding: 0;
  text-align: center;
 }
 #about .left:after {
  content: "";
  display: block;
  background: url("../images/ill_01.svg") no-repeat;
  background-size: cover;
  width: 45vw;
  padding-top: calc(45vw * 0.644);
  margin: 2.5vw auto 0;
  z-index: 2;
  position: relative;
 }
 #about h2 {
  display: block;
  font-size: 110%;
 }
 #about h2:before {
  width: 15vw;
  height: calc(0.679 * 15vw);
  margin: 0 auto 1.5vw;
 }
 #about h2:after {
  width: 75%;
  padding-top: calc(73.17% * 0.75);
  top: 65%;
 }
 #about .right {
  flex: none;
  max-width: 100%;
  display: block;
  padding: 1em 0 0;
 }
 #about .right p {
  font-size: 130%;
 }
 #about .right ul.check li {
  font-size: 125%;
 }
 #about .right ul.check li:before {
  width: 9px;
  height: 5px;
  border-left: 3px solid #25AF01;
  border-bottom: 3px solid #25AF01;
 }
 #about .right ul.fukidashi {
  padding-top: 0;
 }
 #omakase .inner {
  padding: 2.5em 1.5em;
  width: 84%;
  top: 35%;
 }
 #omakase .inner p {
  font-size: 120%;
  line-height: 2;
 }
 #omakase .inner p:first-of-type:before {
  width: 20vw;
  height: calc(20vw * 0.72);
  top: -12vw;
  left: -10vw;
 }
 #omakase .inner p:first-of-type:after {
  width: 7vw;
  height: calc(7vw * 1.014);
  top: -5vw;
  right: -2.5vw;
 }
 #omakase .inner:before {
  width: 40vw;
  height: calc(1.055 * 40vw);
  bottom: -36vw;
  left: 9vw;
  z-index: 2;
 }
 #omakase .inner:after {
  width: 40vw;
  padding-top: 40vw;
  bottom: -48vw;
  right: 5vw;
 }
 #omakase .road {
  background: url("../images/road.svg") left center no-repeat;
  background-size: 400% auto;
  padding-top: 36%;
  bottom: 0;
 }
 #cost .inner {
  display: block;
  top: 40%;
 }
 #cost .inner .left {
  flex: none;
 }
 #cost .inner .left .central {
  position: relative;
  top: 0;
  transform: translateY(0%);
 }
 #cost .inner h2 {
  font-size: 120%;
 }
 #cost .inner h3 {
  font-size: 120%;
 }
 #cost .inner .right {
  flex: none;
 }
 #cost .priceTable {
  margin: 1em auto 0;
 }
 #cost:before {
  width: 30vw;
  height: calc(30vw * 0.591);
  bottom: 7.5vw;
  right: 25%;
 }
 #cost .priceTable h4 {
  font-size: 100%;
 }
 #cost .priceTable table {
  font-size: 90%;
 }
 #cost .priceTable table td span {
  display: block;
  line-height: 1;
 }
 #cost .road {
  background: url("../images/road.svg") left 100% center no-repeat;
  background-size: 400% auto;
  bottom: 1.8%;
  padding-top: 36%;
 }
 #point .inner {
  top: 40%;
 }
 #point .lead strong {
  font-size: 140%;
 }
 #point .sliderArea {
  width: 84%;
 }
 #point .sliderArea:after {
  width: 9vw;
  height: calc(9vw * 0.986);
 }
 #point .sliderArea .item {
  padding: 7em 1.5em 2.5em;
 }
 #point .sliderArea .item.point01 {
  background: url("../images/point01.svg") no-repeat center top 2em #fff;
  background-size: auto 4em;
 }
 #point .sliderArea .item.point02 {
  background: url("../images/point02.svg") no-repeat center top 2em #fff;
  background-size: auto 4em;
 }
 #point .sliderArea .item.point03 {
  background: url("../images/point03.svg") no-repeat center top 2em #fff;
  background-size: auto 4em;
 }
 #point .sliderArea .item h3 {
  font-size: 120%;
 }
 #point .sliderArea .item h4 {
  font-size: 100%;
  margin-bottom: 0.5em;
 }
 #point .sliderArea .item p {
  font-size: 80%;
 }
 #point .sliderArea .slick-prev {
  left: -8.5vw;
 }
 #point .sliderArea .slick-next {
  right: -8.5vw;
 }
 #point .road {
  background: url("../images/road.svg") left 4.7% center no-repeat;
  background-size: 400% auto;
  padding-top: 36%;
 }
 #step .inner {}
 #step ul {
  margin: 1em auto 0;
  display: block;
 }
 #step ul li {
  flex: none;
  max-width: 90%;
  margin: 0 auto 0.75em;
  text-align: center;
 }
 #step ul li h3 span {
  margin: 0 auto 0.5em;
 }
 #step ul li p {
  font-size: 80%;
 }
 #step .road {
  background: url("../images/road.svg") left 38% center no-repeat;
  background-size: 400% auto;
  padding-top: 36%;
 }
 #serviceArea .inner {
  padding: 1.5rem 1rem;
 }
 #serviceArea h2 {
  font-size: 100%;
  margin-bottom: 0.35em;
 }
 #serviceArea ul li {
  font-size: 1.1rem;
 }
 #payment .inner {
  padding: 1.5rem 1rem;
 }
 #payment p {
  font-size: 80%;
 }
 #payment .card {
  width: 64vw;
 }
 #contact {
  height: auto;
 }
 #contact .inner {
  padding: 1.5rem 1rem;
 }
 #contact .btn {
  width: 90%;
 }
 #contact .btn.tel a {
  font-size: 140%;
 }
 #contact .btn.line a {
  font-size: 140%;
 }
 #contact .btn.line a:before {
  left: 1em;
 }
 #faq .inner {
  padding: 1.5rem 1rem;
 }
 #faq ul {
  width: 90%;
 }
 #faq ul li {
  margin-bottom: 0.75em;
 }
 #faq ul li:last-child {
  margin-bottom: 0;
 }
 #faq ul li dl {
  font-size: 100%;
 }
 #faq ul li dl dt {
  padding: 0.75em 1.5rem;
  font-size: 90%;
 }
 #faq ul li dl dd {
  padding: 1em 1.5rem;
  font-size: 80%;
 }
 .fixedNav {
  width: 100%;
  border-radius: 0;
 }
 .announce {
  padding: 0.75em 0;
  font-size: 12px !important;
 }
 .announce p {
  font-size: 12px !important;
 }
 .fixedNav ul {
  padding: 0;
  background: #bb0000;
 }
 .fixedNav ul li.mypage_button {
  width: 70%;
  margin: 0 auto;
 }
 footer {
  background: #aa998a;
  padding: 2.5rem 1rem 40%;
 }
 footer ul {
  display: block;
  text-align: center;
 }
 footer .cr {
  font-size: 1.3rem;
  padding-top: 2em;
 }
}