/* ----- fonts ----- */
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap');

.font_inter { font-family: Inter, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Oxygen, Ubuntu, Cantarell, Helvetica Neue, Arial, sans-serif; }
.emoji { font-family: "Segoe UI Emoji", "Segoe UI Symbol", "Apple Color Emoji", "Noto Color Emoji", "Noto Emoji", sans-serif; }


/* ----- body ----- */
body {
  box-sizing: border-box;
  width: 100%;
  font-family: 'Inter', sans-serif;
  font-display: auto;
}
body h1, h2, h3, h4, h5, .h1, .h2, .h3, .h4, .h5 { font-weight: 600; }

/* ----- components ----- */
a:link { text-decoration: none; }
a:hover { text-decoration: underline; }

hr { height: 0.9px !important; }

/* ----- back to top btn-----*/
.btn_back_to_top {
  padding: 0.2rem .8rem;
  margin: 1rem 1rem;
  color: #0d6efd;
  background-color: white;
  opacity: 0.9;
  z-index: 999;
}
.top_anchor {
  display: block;
  position: relative;
  top: -10rem;
  visibility: hidden;
}

/* ----- img ----- */
img {
  image-rendering: auto;
  -webkit-backface-visibility: hidden;
  /* image-rendering: -webkit-optimize-contrast; */
}
.chart img{ width: 100%; }


/* ----- list ----- */
ul {
  list-style: none;
  padding-left: 0px;
}
.ul_disc ul {
  list-style: disc;
  padding-left: 30px;
}

/* ----- table ----- */
.table thead th { vertical-align: middle; }

/* ----- margin / padding ----- */
.center {
  margin-left: auto;
  margin-right: auto;
}
.pl-10px {
  padding-left: 10px;
}

/* ----- color ----- */
.red { color: #df040c; }
.bg-light2 { background-color: #e8e9ea; }

/* ----- font ----- */
.fw4 { font-weight: 400; }
.fw5 { font-weight: 500; }
.fw6 { font-weight: 600; }
.fw7 { font-weight: 700; }

.note { font-size: 0.875rem; }

.fs050 { font-size: 0.50rem; }
.fs060 { font-size: 0.60rem; }
.fs065 { font-size: 0.65rem; }
.fs070 { font-size: 0.70rem; }
.fs075 { font-size: 0.75rem; }
.fs080 { font-size: 0.80rem; }
.fs085 { font-size: 0.85rem; }
.fs090 { font-size: 0.90rem; }
.fs095 { font-size: 0.95rem; }
.fs100 { font-size: 1.00rem; }
.fs105 { font-size: 1.05rem; }
.fs110 { font-size: 1.10rem; }
.fs115 { font-size: 1.15rem; }
.fs120 { font-size: 1.20rem; }
.fs125 { font-size: 1.25rem; }

.h5-6 {
  font-size: 1.0rem;
  margin-bottom: 0.5rem;
}
@media (min-width: 768px) {
  .h5-6 { font-size: 1.25rem; }
}

/* ----- navbar ----- */
.navbar_h { height: 32px !important; }
.navbar_bg {
  background: linear-gradient(151deg, #0C327C 0%,#0d61bc 35%, #000000 50%, #C70220 70%,#860519 100%);
}
.navbar_logo img { height: 24px; }
.navbar_menu { padding-top: 4px; }
.navbar_menu i { font-size: 24px; }

.navbar_gt7 {
  font-size: 18px;
  padding: 3px 10px 0px 10px;
}


/* ----- breadcrumb ----- */
.breadcrumb {
  height: 30px;
  padding: 0px 0px;
  border-radius: 0px;
}
.top_contens_icon { padding-top: 2px; }
.breadcrumb-item+.breadcrumb-item::before {
  padding-right: 4px;
  vertical-align: middle
}

/* ----- cmn parts ----- */
.dropdown-menu {
  min-width: 1rem;
  border-color: lightgray;
}
/* .dropdown-menu_pos {
  left: auto;
  right: 0px;
} */
/* @media (min-width: 1024px) {
  .dropdown-menu_pos{
    right: 0.5rem;
  }
} */

.dropdown-menu_lv1 {
  left: auto;
  right: 0px !important;
  top: -2px !important;
  width: 100vw;
  max-width: 414px;
}
/* @media (min-width: 576px) {
  .dropdown-menu_lv1 {
    right: -5px !important;
  }
} */
.dropdown-menu_lv2_cars{
  position: fixed;
  top: auto;
  left: auto;
  right: 0px;
  width: 100%;
  max-width: 414px;
}

@media(max-width: 400px){
  .dropdown-menu_pos_lv2{
    position: fixed;
    top: auto;
    left: 0px;
    right: 0px;
  }
}

#cmn_contents_cars_cate{
  max-width: 300px;
  margin-left: auto;
  margin-right: auto;
}

/* ----- footer ----- */
#cmn_footer {
  text-align: center;
  margin-top: 5rem;
}

/* ----- icons ----- */
.svg_icon { width: 16px; }
.navbar_tracks_icon {
  margin-top: -3px;
  margin-right: 2px;
}

/* ----- slick cmn ----- */
.slick_cmn {
  display: none;
  -webkit-touch-callout: default;
}
.slick_cmn.slick-initialized {
  display: block;
}

.dots_cmn {
  position: relative;
  margin-left: auto;
  margin-right: auto;
  margin-top: 0.5rem;
  margin-bottom: 2.8rem;
  text-align: center;
  font-size: .4rem;
  max-width: 400px;
}
ul.slick-dots {
  padding-left: 2px;
  z-index: 11;
}
.slick-dots li button:before { font-size: 12px; }


.slick-arrow { touch-action: manipulation; }
.slick-prev:before, .slick-next:before {
  color: #0099FF;
  font-size: 2.0rem;
}
.slick-prev, .slick-next {
  width: auto;
  height: auto;
  top: 1.6rem;
  z-index: 12;
}
.slick-prev { left: 8px; }
.slick-next { right: 8px; }

/* ----- ad ----- */
/* --- ad_01 --- */
.cmn_ad_01 {
  max-width: 375px; height: 225px;
  margin-left: auto; margin-right: auto;
}
@media (min-width: 768px) {
  .cmn_ad_01 { max-width: 600px; height: 205px; }
}

.ad_coach_dave_academy_m img { width: 100%; }
.ad_track_map_photo_m img { width: 100%; }
.ad_coach_dave_academy_d img { width: 100%; }

/* --- ad_02 --- */
.ad_02 { height: 380px; margin-top: 60px; }
.cmn_ad_02 {
  max-width: 720px; height: auto;
  margin-left: auto; margin-right: auto;
}
@media(max-width: 767.8px) {
  .cmn_ad_02 { max-width: 100%; height: auto; }
}

.ad_btn { border-radius: 1rem; }
.coach_dave_logo_s { width: 95px; }
.coach_dave_logo_s img { width: 100%; height: auto; }

@media(max-width: 360px) {
  #ad_coach_dave_2a .fs_xs { font-size: 0.85rem; }
}

/* --- ad_03 --- */
.ad_03 { height: 235px; margin-top: 55px; }
@media (min-width: 768px) {
  .ad_03 { height: 215px; }
}
.cmn_ad_03 {
  max-width: 360px; height: 225px;
  margin-left: auto; margin-right: auto;
}
@media (min-width: 768px) {
  .cmn_ad_03 { max-width: 660px; height: 205px; }
}

.ad_03_map_m img { display: inline; height: 85px; }
@media(min-width: 768px) {
  .ad_03_map_m img { display: inline; height: 90px; }
}

/* ----- contents ----- */
.contents ol { padding-right: 1.25rem; }
.contents ol li { padding-left: 0.4rem; }

/* ----- button ----- */
.btn_races1{
  width: 152px;
}
.btn_races2{
  width: 140px;
}

@media(max-width: 359px){
  .btn_races1{
    width: 140px;
  }
  .btn_races2{
    width: 130px;
  }
  .fs090_xs{
    font-size: 0.90rem;
  }
}

.panel_btn{
  width: 82px;
  height: 80px;
}
.text_nat{
  color: #0271c3;
}
.text_nat:hover{
  color: #023183;
}
.text_manu{
  color: #c80700;
}
.text_manu:hover{
  color: #930700;
}
.text_supra{
  color: #000;
}
.text_supra:hover{
  color: #555;
}

.bg_nat{
  background-color: #0271c3;
}
.bg_nat:hover{
  background-color: #023183;
}
.bg_manu{
  background-color: #c80700;
}
.bg_manu:hover{
  background-color: #930700;
}

.px_6{
  padding-left: 0.375rem;
  padding-right: 0.375rem;
}
.px_32{
  padding-left: 2rem;
  padding-right: 2rem;
}

/* ----- margin ----- */
.mt_2r { margin-top: 2rem; }
.mt_4r { margin-top: 4rem; }
.mt_6r { margin-top: 6rem; }
