@import url("https://fonts.googleapis.com/css?family=Noto+Sans+JP");
body {
  font-family: "Noto Sans JP", sans-serif;
}

h1 {
  font-size: 2.8rem;
}

h2 {
  font-size: 2.2rem;
}

h3 {
  font-size: 1.6rem;
}

h4 {
  font-size: 1.2rem;
}

h5 {
  font-size: 1rem;
}

a.btn {
  transition: all 0.2s ease, visibility 0s;
  color: #fff;
  padding: 0.5em 1.2em;
  background: #ae633f;
  border-radius: 10px;
  border: 0px solid rgb(174, 99, 63);
  display: inline-block;
  line-height: 1;
  vertical-align: middle;
  display: inline-flex;
  align-items: center;
  font-size: clamp(1.3rem, 1.6927083333vw, 1.6rem);
}
a.btn:hover {
  color: #fff;
  background: repeat padding-box border-box 0% 0%/auto auto scroll linear-gradient(180deg, rgba(40, 38, 38, 0.22) 0%, rgba(40, 38, 38, 0.22) 100%), #ae633f;
}

header {
  background-color: #c4232a;
}

.row img {
  display: block;
  max-width: 100%;
}

section#mainvisual {
  background-image: linear-gradient(90deg, #e42d1b 50%, #f88119 50%);
}
section#mainvisual .inner {
  background-color: #fc4e1a;
  background-image: url("../img/bg/bg_header.jpg");
  background-size: cover;
  min-height: 300px;
  background-repeat: no-repeat;
  display: flex;
  align-items: center;
}
@media (min-width: 768px) {
  section#mainvisual .inner {
    min-height: 560px;
    background-size: cover;
  }
}
@media (min-width: 1200px) {
  section#mainvisual .inner {
    min-height: 640px;
    background-size: cover;
  }
}
section#mainvisual #mv_slogan {
  width: 100%;
  text-align: center;
  font-size: clamp(1.4rem, 2.9947916667vw, 3.2rem);
  letter-spacing: 0.05em;
  text-shadow: 2px 2px 1px #000;
  color: #fff;
  font-weight: bold;
}

.balloon {
  line-height: 1;
  padding: 0.2em 10px;
  margin: 0px auto 30px;
  font-weight: bold;
  font-size: clamp(1.6rem, 2.734375vw, 2.8rem);
  text-shadow: rgba(10, 189, 240, 0.298039) 3px 3px 0px, rgba(254, 1, 1, 0.298039) -3px -3px 0px;
  position: relative;
  background-color: rgba(252, 78, 26, 0.92);
  text-align: center;
  width: 8em;
  color: #fff;
}

.balloon::before {
  content: "";
  position: absolute;
  border: 12px solid transparent;
  border-top: 12px solid #ffc4c4;
  left: 30px;
  bottom: -30px;
  border-top: 18px solid #f05b5b;
  border-right: 20px solid transparent;
  border-left: 20px solid transparent;
}

section#show_room {
  background-image: url("../img/bg/bg_tire_stack.jpg");
  background-size: cover;
  padding: 3rem 0;
  background-repeat: no-repeat;
  color: #fff;
}
section#show_room h3 {
  text-align: center;
  font-weight: bold;
  font-size: clamp(1.6rem, 3.125vw, 2.8rem);
}
section#show_room .business_time_info {
  background-color: rgba(0, 0, 0, 0.6);
  padding: 1rem 1rem;
  border-radius: 0.6em;
  margin: 3rem auto;
  text-align: center;
  font-size: clamp(1.2rem, 3.125vw, 2.8rem);
  width: 24em;
  max-width: 90%;
  color: #fff;
}
section#show_room .business_time_info h4 {
  font-size: clamp(1.6rem, 2.34375vw, 2.1rem);
  text-align: center;
  font-weight: bold;
  margin: 0 auto 2rem;
}

section#about h3 {
  text-align: center;
  color: rgb(168, 52, 17);
  font-size: clamp(2.1rem, 3.6458333333vw, 4.2rem);
  font-weight: bold;
}
section#about .sales_point {
  text-align: center;
  font-weight: normal;
  font-size: clamp(1.6rem, 2.0833333333vw, 2.6rem);
}

section#contact {
  min-height: 400px;
  background: #a83411;
  color: #fff;
  padding: 6rem 2rem;
}
section#contact h2 {
  text-align: center;
  font-size: clamp(2.1rem, 4.1666666667vw, 4.6rem);
}

.contact_form label {
  color: #fff;
  display: block;
  margin: 0.5em 0 0.5em;
}
.contact_form input[type=text],
.contact_form input[type=submit],
.contact_form input[type=password],
.contact_form textarea,
.contact_form select {
  outline: none;
}
.contact_form input[type=text],
.contact_form input[type=password],
.contact_form textarea {
  background-color: transparent;
  border: 1px solid #fff;
  border-color: transparent transparent #fff transparent;
  width: 100%;
  padding: 1em 0.5em;
  color: #fff;
  margin-bottom: 1rem;
}
.contact_form input[type=text]:focus, .contact_form input[type=text]:hover,
.contact_form input[type=password]:focus,
.contact_form input[type=password]:hover,
.contact_form textarea:focus,
.contact_form textarea:hover {
  border-color: #fff;
}
.contact_form input[type=text]::-moz-placeholder, .contact_form input[type=password]::-moz-placeholder, .contact_form textarea::-moz-placeholder {
  color: rgba(255, 255, 255, 0.6);
}
.contact_form input[type=text]::placeholder,
.contact_form input[type=password]::placeholder,
.contact_form textarea::placeholder {
  color: rgba(255, 255, 255, 0.6);
}
.contact_form textarea {
  min-height: 6rem;
}
.contact_form input[type=submit] {
  transition: all 0.2s ease, visibility 0s;
  border: none;
  background-color: #fff;
  width: 100%;
  padding: 0.4em 0.5em;
  color: #000;
  font-size: 1.2rem;
}
.contact_form input[type=submit]:focus, .contact_form input[type=submit]:hover {
  background-color: rgba(255, 255, 255, 0.6);
}

ul.store_feature {
  list-style: none;
  margin: 2em auto;
  width: 95%;
  padding: 0;
}
ul.store_feature li {
  margin: 0.2rem 0;
  padding: 0.1rem 0;
  text-align: center;
  font-weight: bold;
}

#panel_01 {
  width: 100%;
  padding: 3rem 0;
}
#panel_01 h2 {
  color: rgb(252, 78, 26);
  font-size: clamp(2.1rem, 3.6458333333vw, 3.2rem);
  font-weight: bold;
  margin: 1rem 0rem 2rem;
  text-align: center;
}

#panel_02 {
  width: 100%;
  padding: 3rem 0;
}
#panel_02 h2 {
  color: rgb(8, 4, 81);
  font-size: clamp(2.1rem, 3.6458333333vw, 3.2rem);
  font-weight: bold;
  text-align: center;
  margin: 1rem 0rem 2rem;
}

a.btn_carsensor {
  width: 12em;
  max-width: 100%;
  transition: all 0.2s ease, visibility 0s;
  border-radius: 50px;
  display: inline-block;
  background: rgba(252, 78, 26, 0.7);
  border: 5px solid #fc4e1a;
  color: #fff;
  font-weight: bold;
  font-size: clamp(1.6rem, 3.125vw, 2.6rem);
  height: 2.3em;
  text-decoration: none;
  display: flex;
  justify-content: center;
}
a.btn_carsensor:hover {
  border-radius: 20px;
  background: rgb(252, 78, 26);
  color: #fff;
}
@media (min-width: 992px) {
  a.btn_carsensor:hover .btn_inner_flex span svg {
    height: 81px;
    fill: #fff;
  }
}
a.btn_carsensor .btn_inner_flex {
  display: flex;
  justify-content: center;
  align-items: center;
}
a.btn_carsensor .btn_inner_flex span {
  display: inline-block;
  padding: 0.5rem;
}
a.btn_carsensor .btn_inner_flex span svg {
  transition: all 0.2s ease, visibility 0s;
  height: 51px;
  width: auto;
  fill: #fff;
}

.gmap_container iframe {
  width: 100%;
  min-height: 560px;
  height: 30vh;
  max-height: 100vh;
}

footer#footer {
  margin: 0rem;
  padding: 1rem;
  text-align: center;
}

table {
  border-collapse: collapse;
}
table td {
  font-size: 1.2rem;
  padding: 0.2em 0.2em;
  border: 1px solid #000;
  text-align: center;
}
table td span {
  display: block;
  cursor: pointer;
}
table td span.reserve_status_1 {
  color: #f00;
}
table td span.reserve_status_2 {
  color: #dd0;
}
table td span.reserve_status_3 {
  color: #ccc;
}

.bg_slick_slider_wrapper {
  position: relative;
}

.overlay {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translateX(-50%) translateY(-50%);
}

.bg_slick_slider img {
  filter: brightness(0.75);
}