/*
 * 【はじめに】
 * 最終的には可能な限り、コメントは削除してください。
 * ここに記載しているコメントもほぼ不要です(auPay start / ecd は必要)
 * 変数の使い方
 * $ec_dir ･･･ それぞれ各ECの絶対パス(現状)
 * $ec_id ･･･ それぞれ各ECのID(CSVで設定している分)
 *
 * 例：background-image: url($ec_dir + '/img/bn_main_background_sp.jpg');
 *
 * SCSSについて
 * 例：if制御
 *  @if $shop == 1 {
 * 		#pc_header.ac img {
 *			width: initial;
 *		}
 *	}
 *
 * 今分かっている問題
 * 1.rgb()について
 *   rgba()を利用してください。うまく変換されません
 */
/* auPayについては、figureタグ等利用できないタグがあり、変換して利用する事になる
 * その変換されたタグ用にCSSを設定する必要があるので、下記コメントタグを利用し、
 * 開始・終了で閉じる事
 * また、if制御を利用して切り替えると楽
 * @if $shop == 5 {
 *	.studless .recommend > h3 > img {
 *		width: 100%;
 *	}
 * } @else {
 *	.studless .recommend > div img {
 *		width: 100%;
 *	}
 * }
 */
@charset "utf-8";
html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary, time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent; }

body {
  line-height: 1; }

article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
  display: block; }

ul {
  list-style: none; }

a {
  margin: 0;
  padding: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
  text-decoration: none; }

table {
  border-collapse: collapse;
  border-spacing: 0; }

.r06::before {
  content: '';
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  z-index: 1000;
  background-color: #000;
  animation: start_back 1s ease-in-out 1.5s forwards; }

.r06::after {
  content: '';
  position: fixed;
  top: 50%;
  left: 50%;
  z-index: 1000;
  transform: translate(-50%, -50%);
  width: 340px;
  height: 60px;
  background: url("/asp/photo/auction/lp/mid_racing_r06/img/logo_ptn.png") center / contain no-repeat;
  opacity: 0;
  animation: start_logo 2s ease-in-out 0.5s forwards; }

@keyframes start_logo {
  0% {
    opacity: 0;
    z-index: 1000; }

  50% {
    opacity: 1;
    z-index: 1000; }

  99% {
    opacity: 0;
    z-index: 1000; }

  100% {
    opacity: 0;
    z-index: -1000; } }

@keyframes start_back {
  0% {
    opacity: 1;
    z-index: 1000; }

  99% {
    opacity: 0;
    z-index: 1000; }

  100% {
    opacity: 0;
    z-index: -1000; } }

.r06 {
  background-color: #000;
  overflow: hidden; }
  .r06 * {
    font-family: noto-sans-cjk-jp, sans-serif;
    color: #fff; }
  .r06 img {
    display: block;
    max-width: 100%;
    margin: 0 auto; }
  .r06 br.pc {
    display: none; }
  .r06 .breadcrumb {
    font-size: 12px;
    padding: 5px; }
  .r06 .breadcrumb a, .r06 .breadcrumb span {
    margin-right: 5px; }
  .r06 .brand_logo {
    display: block;
    width: 70px;
    margin: 0 15px 50px auto; }
  .r06 header .catch {
    font-size: 4.6vw;
    font-weight: 900;
    font-style: italic;
    line-height: 1.5;
    width: 90%;
    margin: 0 auto 12vw; }
  .r06 h1 {
    background: url("/asp/photo/auction/lp/mid_racing_r06/img/bg_title.jpg?date=202505301016") center / contain no-repeat;
    padding: 1vw 0 45vw;
    position: relative; }
  .r06 h1 img {
    width: 45%;
    margin: 0 auto 0 5%; }
  .r06 .detail {
    position: relative;
    padding-top: 12vw; }
  .r06 .detail .catch {
    font-size: 3.7vw;
    font-weight: 500;
    text-align: center;
    line-height: 1.8;
    font-style: italic;
    margin-bottom: 12vw; }
  .r06 .color_image {
    margin-bottom: 20vw; }
  .r06 .color_image .ptn_logo {
    width: 50%;
    margin: 0 auto 12vw; }
  .r06 .color_image .color {
    font-size: 4.3vw;
    text-align: center;
    font-weight: 900;
    line-height: 1.5;
    margin-bottom: 3vw; }
  .r06 .color_image .color small {
    display: block;
    font-weight: 400;
    font-size: 0.75em; }
  .r06 .color_image .container {
    width: 80%;
    margin: 0 auto 12vw; }
  .r06 .slider_main.wheel {
    position: relative;
    margin-bottom: 2vw;
    border: 1px solid rgba(255, 255, 255, 0.5); }
  .r06 .slider_main.wheel .slick-img {
    position: relative;
    padding: 4vw 2vw;
    background-color: #fff; }
  .r06 .slider_main.wheel .slick-img .exclusive {
    position: absolute;
    top: 1vw;
    right: 1vw;
    background-color: #aa2124;
    font-weight: 500;
    display: block;
    width: 10em;
    font-size: 3.2vw;
    text-align: center;
    padding: 0.3em; }
  .r06 .slider_main.wheel .slick-img .stock {
    position: absolute;
    top: 7vw;
    right: 1vw;
    background-color: #0f1a7f;
    font-weight: 500;
    display: block;
    font-size: 3.2vw;
    text-align: center;
    padding: 0.3em;
    width: 5em; }
  .r06 .slider_main.wheel .slick-img .non.stock {
    top: 1vw;
    width: 8em; }
  .r06 .slider_main.wheel .slick-img img {
    width: 95%; }
  .r06 .slider_main.wheel .slick-img .sticker {
    position: absolute;
    bottom: 2vw;
    left: 2vw;
    font-size: 3.2vw;
    color: #000; }
  .r06 .thumbnail.sticker {
    width: 50%; }
  .r06 .thumbnail.sticker .slick-track {
    transform: unset !important; }
  .r06 .thumbnail.sticker .thumbnail-img img {
    width: 86%;
    margin: 0;
    border: 1px solid rgba(0, 0, 0, 0.5);
    background-color: #fff; }
  .r06 .thumbnail.sticker .thumbnail-img.slick-current img {
    border: 1px solid #aa2124; }
  .r06 .style {
    background: url("/asp/photo/auction/lp/mid_racing_r06/img/bg_style.jpg") center / 200% no-repeat;
    margin-bottom: 12vw;
    position: relative; }
  .r06 .style h3, .r06 .fdj2 h3 {
    font-size: 6vw;
    text-align: center;
    font-weight: 700;
    line-height: 1.5;
    margin-bottom: 1em; }
  .r06 .style p {
    width: 90%;
    margin: 0 auto 2em;
    font-size: 3.4vw;
    line-height: 1.8;
    text-align: justify; }
  .r06 .fdj2 {
    margin-bottom: 10vw; }
  .r06 .fdj2 > div {
    width: 90%;
    margin: 0 auto;
    position: relative; }
  .r06 .fdj2 > div::before {
    content: '';
    position: absolute;
    width: 31vw;
    max-width: 186px;
    height: 16vw;
    max-height: 97px;
    background: url("/asp/photo/auction/lp/mid_racing_r06/img/logo_fdj2.png") center / contain no-repeat;
    display: block;
    top: 0;
    right: 0; }
  .r06 .fdj2 img {
    margin-bottom: 5vw; }
  .r06 .fdj2 .text p {
    font-size: 3.4vw;
    line-height: 1.8;
    margin-bottom: 2em; }
  .r06 #spec {
    padding-top: 10vw;
    margin-bottom: 20vw; }
  .r06 #spec h2, .r06 .fit_image h2 {
    font-size: 5vw;
    font-weight: 900;
    text-align: center;
    font-style: italic;
    margin-bottom: 12vw; }
  .r06 .size h3, .r06 .accessories h3 {
    font-size: 3.6vw;
    font-weight: 700;
    font-style: italic;
    text-align: center;
    margin-bottom: 2vw; }
  .r06 .size .flex small {
    font-size: 3.2vw;
    font-weight: 500;
    display: block;
    text-align: right;
    margin-right: 5%;
    line-height: 1.5; }
  .r06 .size table.pc {
    display: none; }
  .r06 .size table {
    width: 90%;
    margin: 0 auto 10vw;
    font-weight: 700;
    font-size: 3.6vw;
    text-align: center; }
  .r06 .size table thead {
    background-color: #aa2124;
    border: 1px solid rgba(255, 255, 255, 0.5); }
  .r06 .size table tbody tr {
    border: 1px solid rgba(255, 255, 255, 0.5); }
  .r06 .size table th, .r06 .size table td {
    padding: 0.5em 0;
    vertical-align: middle; }
  .r06 .size table .price.solo, .r06 .size table .price.set {
    display: none; }
  .r06 .size table .price.active {
    display: table-cell; }
  .r06 .size table th.price.solo {
    background: url("/asp/photo/auction/lp/mid_racing_r06/img/icon_change_set.png") right bottom / 30% no-repeat;
    cursor: pointer; }
  .r06 .size table th.price.set {
    background: url("/asp/photo/auction/lp/mid_racing_r06/img/icon_change_solo.png") right bottom / 30% no-repeat;
    cursor: pointer; }
  .r06 .size table th.price span {
    display: block; }
  .r06 .size table td.price {
    padding: 0.3em 0.1em 0.3em 0; }
  .r06 .size table td.price a {
    display: block;
    background-color: #aa2124;
    border-radius: 0.3em;
    width: 6em;
    margin: 0 auto;
    padding: 0.2em;
    line-height: 1.3; }
  .r06 .size table td.price a span, .r06 .size table td.price a small {
    display: inline-block; }
  .r06 .size table td.price a.flash, .r06 .size table td.price a.flash small, .r06 .size table td.price a.flash span, .r06 .size .btn_car.flash, .r06 .size .btn_car.flash span {
    animation: flash 1s ease-in-out 0.5s; }
  .r06 .accessories h3 {
    margin-bottom: 5vw; }
  .r06 .slider_accessories {
    width: 55%;
    margin: 0 auto 5vw; }
  .r06 .slider_accessories .slick-img {
    position: relative; }
  .r06 .slider_accessories small {
    display: none; }
  .r06 .slider_accessories .slick-prev, .r06 .slider_accessories .slick-next {
    top: auto;
    bottom: 10%;
    width: 4vw;
    height: 2.7vw; }
  .r06 .slider_accessories .slick-prev {
    left: -8vw;
    transform: rotate(-90deg); }
  .r06 .slider_accessories .slick-next {
    right: -8vw;
    transform: rotate(90deg); }
  .r06 .slider_accessories .slick-prev:before, .r06 .slider_accessories .slick-next:before {
    content: '';
    display: block;
    opacity: 1;
    width: 100%;
    height: 100%;
    background-color: #fff;
    clip-path: polygon(50% 0, 100% 70%, 85% 100%, 50% 50%, 15% 100%, 0 70%); }
  .r06 .slide_name {
    width: 95%;
    font-size: 3.6vw;
    margin: 0 0 0 10%;
    font-weight: 500; }
  .r06 .slide_name .slick_link:nth-of-type(-n+2) {
    position: relative;
    padding-right: 0.5em; }
  .r06 .slide_name .slick_link:nth-of-type(-n+2)::after {
    content: '/';
    position: absolute;
    right: 0.3em;
    color: #fff;
    font-weight: 400; }
  .r06 .slide_name .slick-current {
    color: #aa2124; }
  .r06 .slide_name .slick-track {
    transform: unset !important; }
  .r06 .fit_image {
    margin-bottom: 20vw;
    position: relative; }
  .r06 .fit_image .container {
    position: relative;
    z-index: 1; }
  .r06 .thumbnail.color {
    width: 40%;
    margin-left: 7%; }
  .r06 .thumbnail.color .slick_link div {
    width: 95%;
    border: 1px solid rgba(0, 0, 0, 0.5);
    position: relative;
    box-sizing: border-box;
    padding: 3vw 2vw 2vw;
    background-color: #fff; }
  .r06 .thumbnail.color .slick_link.slick-current div {
    border: 1px solid #aa2124; }
  .r06 .thumbnail.color .slick_link small {
    font-size: 3.2vw;
    position: absolute;
    top: 0;
    right: 0.3em;
    color: #000; }
  .r06 .thumbnail.color .slick-track {
    transform: unset !important; }
  .r06 .fit_image .slick-img {
    position: relative; }
  .r06 footer .brand_logo {
    width: 120px;
    margin: 0 auto 50px; }
  .r06 footer nav ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    margin-bottom: 50px; }
  .r06 footer nav ul a {
    display: block;
    font-size: 12px;
    margin: 0.5em; }
  .r06 footer small {
    font-size: 12px;
    display: block;
    text-align: center;
    margin-bottom: 10px; }
  .r06 .btn_top {
    display: none; }
  .r06 .btn_top a {
    display: block;
    width: 60px;
    height: 60px;
    border-radius: 50%;
    border: 2px solid #aa2124;
    background-color: #000;
    font-size: 16px;
    font-weight: 900;
    font-style: italic;
    text-align: center;
    position: fixed;
    bottom: 20px;
    right: 15px;
    box-sizing: border-box;
    line-height: 70px;
    padding-right: 0.3em;
    z-index: 50; }
  .r06 .btn_top a::before {
    content: '';
    width: 20px;
    height: 13px;
    position: absolute;
    top: 8px;
    left: 0;
    right: 0;
    margin: 0 auto;
    background-color: #fff;
    clip-path: polygon(50% 0, 100% 70%, 85% 100%, 50% 50%, 15% 100%, 0 70%); }
  .r06 .btn_spec {
    display: none; }
  .r06 .btn_spec a {
    display: block;
    font-size: 24px;
    font-weight: 700;
    background-color: #aa2124;
    text-align: center;
    width: calc(100% - 105px);
    position: fixed;
    left: 15px;
    bottom: 30px;
    box-sizing: border-box;
    padding: 0.3em 0;
    z-index: 50; }
  .r06 .btn_spec a::after {
    content: '';
    display: inline-block;
    width: 12px;
    height: 24px;
    background-color: #fff;
    margin-left: 1em;
    vertical-align: bottom;
    clip-path: polygon(0 0, 100% 50%, 0 100%, 50% 50%); }
  .r06 .modal {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: #fff;
    z-index: -100;
    overflow: auto;
    transition: 0.5s;
    opacity: 0; }
  .r06 .modal.open {
    z-index: 100;
    opacity: 1; }
  .r06 .modal .close {
    display: block;
    position: absolute;
    top: 10px;
    right: 10px;
    width: 60px;
    height: 60px;
    border-radius: 50%;
    border: 2px solid #aa2124;
    background-color: #fff; }
  .r06 .modal .close::before, .r06 .modal .close::after {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    width: 30px;
    height: 2px;
    background-color: #aa2124; }
  .r06 .modal .close::before {
    transform: translate(-50%, -50%) rotate(45deg); }
  .r06 .modal .close::after {
    transform: translate(-50%, -50%) rotate(-45deg); }
  .r06 .modal ul {
    height: 0;
    overflow: hidden;
    top: 50%;
    transform: translateY(-50%);
    max-width: 1000px;
    margin: 0 auto; }
  .r06 .modal ul.open {
    height: auto; }
  .r06 .modal span {
    color: #000;
    font-size: 4vw;
    display: block;
    text-align: center;
    line-height: 1.5; }
  .r06 .slider_main.wheel .slick-img::before, .r06 .slider_accessories::before, .r06 .fit_image .slick-img::before {
    content: '＋';
    font-size: 14px;
    font-weight: 700;
    width: 1.2em;
    height: 1.2em;
    text-align: center;
    line-height: 1.2;
    border-radius: 50%;
    border: 2px solid #fff;
    position: absolute;
    right: 10px;
    bottom: 10px; }
  .r06 .slider_main.wheel .slick-img::before {
    color: #000;
    border: 2px solid #000; }
  .r06 .slider_main.wheel .slick-img::after, .r06 .slider_accessories::after, .r06 .fit_image .slick-img::after {
    content: '-';
    font-size: 25px;
    font-weight: 700;
    position: absolute;
    right: 4px;
    bottom: 0;
    transform: rotate(45deg); }
  .r06 .slider_main.wheel .slick-img::after {
    color: #000; }
  .r06 .slider_accessories::before {
    right: -30px;
    bottom: auto;
    top: 0; }
  .r06 .slider_accessories::after {
    right: -36px;
    bottom: auto;
    top: 6px; }
  .r06 .fit_image .slick-img::before {
    bottom: auto;
    top: 20px; }
  .r06 .fit_image .slick-img::after {
    bottom: auto;
    top: 26px; }
  .r06 h1::before, .r06 h1::after {
    content: '';
    position: absolute;
    width: 5px;
    height: 5px;
    border-radius: 50%;
    background-color: #aa2124;
    box-shadow: 0 0 10px #aa2124, 0 0 10px #aa2124, 0 0 10px #aa2124, 0 0 10px #aa2124, 0 0 10px #aa2124, 0 0 10px #aa2124, 0 0 10px #aa2124, 0 0 10px #aa2124, 0 0 10px #aa2124, 0 0 10px #aa2124, 0 0 10px #aa2124; }
  .r06 h1::before {
    top: -3vw;
    left: 0;
    transform: translateY(-50%) translateZ(0);
    animation: h1_before 4s ease-in-out infinite; }
  .r06 h1::after {
    bottom: 0;
    right: 0;
    transform: translateY(50%) translateZ(0);
    animation: h1_after 4s ease-in-out infinite; }
  .r06 .line {
    display: block;
    position: absolute;
    left: 0;
    width: 100%;
    height: 1px;
    background-color: #aa2124; }
  .r06 .line.title_top {
    top: -3vw;
    animation: left_right 4s ease-in-out infinite; }
  .r06 .line.title_bottom {
    bottom: 0;
    animation: right_left 4s ease-in-out infinite; }
  .r06 .detail::before, .r06 .detail::after {
    content: '';
    position: absolute;
    transform: translate(-50%, 0);
    width: 5px;
    height: 5px;
    border-radius: 50%;
    background-color: #aa2124;
    box-shadow: 0 0 10px #aa2124, 0 0 10px #aa2124, 0 0 10px #aa2124, 0 0 10px #aa2124, 0 0 10px #aa2124, 0 0 10px #aa2124, 0 0 10px #aa2124, 0 0 10px #aa2124, 0 0 10px #aa2124, 0 0 10px #aa2124, 0 0 10px #aa2124;
    opacity: 0;
    z-index: 10; }
  .r06 .detail::before {
    top: 0;
    left: 5%;
    animation: detail_light 8s ease-in-out 1s infinite; }
  .r06 .detail::after {
    top: 400vw;
    left: 96%;
    opacity: 0;
    animation: detail_light_after 8s ease-in-out 3s infinite; }
  .r06 .detail h2::before {
    content: '';
    position: absolute;
    left: 5%;
    top: 0;
    width: 1px;
    height: 318vw;
    background-color: #aa2124;
    transform: scaleY(0);
    animation: top_bottom 8s ease-in-out 1s infinite; }
  .r06 .detail h2::after {
    content: '';
    position: absolute;
    left: 5%;
    top: 318vw;
    width: 91%;
    height: 1px;
    background-color: #aa2124;
    transform: scaleX(0);
    animation: left_right 8s ease-in-out 3s infinite; }
  .r06 .color_image li:last-of-type::before {
    content: '';
    position: absolute;
    top: 318vw;
    right: 4%;
    width: 1px;
    height: 82vw;
    background-color: #aa2124;
    transform: scaleY(0);
    animation: top_bottom 8s ease-in-out 5s infinite; }
  .r06 .color_image li:last-of-type::after {
    content: '';
    position: absolute;
    top: 400vw;
    right: 4%;
    width: 96%;
    height: 1px;
    background-color: #aa2124;
    transform: scaleX(0);
    animation: right_left 8s ease-in-out 7s infinite; }
  .r06 .style h3::before {
    content: '';
    position: absolute;
    left: 0;
    top: -7vw;
    width: 96%;
    height: 1px;
    background-color: #aa2124;
    transform: scaleX(0);
    animation: left_right 8s ease-in-out 3s infinite; }
  .r06 .style::before {
    content: '';
    position: absolute;
    top: -7vw;
    right: 4%;
    width: 1px;
    height: 179vw;
    background-color: #aa2124;
    transform: scaleY(0);
    animation: top_bottom 8s ease-in-out 5s infinite; }
  .r06 .style::after {
    content: '';
    position: absolute;
    top: 172vw;
    right: 4%;
    width: 96%;
    height: 1px;
    background-color: #aa2124;
    transform: scaleX(0);
    animation: right_left 8s ease-in-out 7s infinite; }
  .r06 .style h3::after {
    content: '';
    position: absolute;
    transform: translate(50%, -50%);
    width: 5px;
    height: 5px;
    border-radius: 50%;
    background-color: #aa2124;
    box-shadow: 0 0 10px #aa2124, 0 0 10px #aa2124, 0 0 10px #aa2124, 0 0 10px #aa2124, 0 0 10px #aa2124, 0 0 10px #aa2124, 0 0 10px #aa2124, 0 0 10px #aa2124, 0 0 10px #aa2124, 0 0 10px #aa2124, 0 0 10px #aa2124;
    opacity: 0;
    left: 0;
    top: -7vw;
    animation: style_light 8s ease-in-out 3s infinite; }
  .r06 .fit_image::before {
    content: '';
    position: absolute;
    width: 1px;
    height: 125vw;
    top: -5vw;
    right: 95%;
    background-color: #aa2124;
    transform: scaleY(0);
    animation: top_bottom 8s ease-in-out 2s infinite; }
  .r06 .fit_image .container::before {
    content: '';
    position: absolute;
    width: 95%;
    height: 1px;
    background-color: #aa2124;
    top: -22vw;
    right: 0;
    animation: right_left 8s ease-in-out infinite; }
  .r06 .fit_image .container::after {
    content: '';
    position: absolute;
    width: 95%;
    height: 1px;
    background-color: #aa2124;
    top: 103vw;
    right: 0;
    transform: scaleX(0);
    animation: left_right 8s ease-in-out 4s infinite; }
  .r06 .fit_image::after {
    content: '';
    position: absolute;
    transform: translate(50%, -50%);
    width: 5px;
    height: 5px;
    border-radius: 50%;
    background-color: #aa2124;
    box-shadow: 0 0 10px #aa2124, 0 0 10px #aa2124, 0 0 10px #aa2124, 0 0 10px #aa2124, 0 0 10px #aa2124, 0 0 10px #aa2124, 0 0 10px #aa2124, 0 0 10px #aa2124, 0 0 10px #aa2124, 0 0 10px #aa2124, 0 0 10px #aa2124;
    opacity: 0;
    right: 0;
    top: -5vw;
    animation: fit_image_light 8s ease-in-out infinite; }

@keyframes left_right {
  0% {
    transform: scaleX(0);
    transform-origin: left; }

  25% {
    transform: scaleX(1);
    transform-origin: left; }

  50% {
    transform: scaleX(1);
    transform-origin: right; }

  75% {
    transform: scaleX(0);
    transform-origin: right; }

  100% {
    transform: scaleX(0);
    transform-origin: right; } }

@keyframes right_left {
  0% {
    transform: scaleX(0);
    transform-origin: right; }

  25% {
    transform: scaleX(1);
    transform-origin: right; }

  50% {
    transform: scaleX(1);
    transform-origin: left; }

  75% {
    transform: scaleX(0);
    transform-origin: left; }

  100% {
    transform: scaleX(0);
    transform-origin: left; } }

@keyframes h1_before {
  0% {
    transform: translateX(-50%) translateY(-50%);
    opacity: 1; }

  25% {
    transform: translateX(calc(100vw - 50%)) translateY(-50%);
    opacity: 1; }

  26% {
    transform: translateX(calc(100vw - 50%)) translateY(-50%);
    opacity: 0; }

  100% {
    transform: translateX(calc(100vw - 50%)) translateY(-50%);
    opacity: 0; } }

@keyframes h1_after {
  0% {
    transform: translateX(0) translateY(50%);
    opacity: 1; }

  25% {
    transform: translateX(-100vw) translateY(50%);
    opacity: 1; }

  26% {
    transform: translateX(-100vw) translateY(50%);
    opacity: 0; }

  100% {
    transform: translateX(-100vw) translateY(50%);
    opacity: 0; } }

@keyframes top_bottom {
  0% {
    transform: scaleY(0);
    transform-origin: top; }

  25% {
    transform: scaleY(1);
    transform-origin: top; }

  50% {
    transform: scaleY(1);
    transform-origin: bottom; }

  75% {
    transform: scaleY(0);
    transform-origin: bottom; }

  100% {
    transform: scaleY(0);
    transform-origin: bottom; } }

@keyframes detail_light {
  0% {
    opacity: 1;
    transform: translateX(-50%) translateY(-50%); }

  25% {
    opacity: 1;
    transform: translateX(-50%) translateY(calc(318vw - 50%)); }

  50% {
    opacity: 1;
    transform: translateX(calc(91vw - 50%)) translateY(calc(318vw - 50%)); }

  75% {
    opacity: 1;
    transform: translateX(calc(91vw - 50%)) translateY(calc(400vw - 50%)); }

  75.5% {
    opacity: 0;
    transform: translateX(calc(91vw - 50%)) translateY(calc(400vw - 50%)); } }

@keyframes detail_light_after {
  0% {
    opacity: 0;
    transform: translateX(-50%) translateY(-50%); }

  49.5% {
    opacity: 0;
    transform: translateX(-50%) translateY(-50%); }

  50% {
    opacity: 1;
    transform: translateX(-50%) translateY(-50%); }

  75% {
    opacity: 1;
    transform: translateX(calc(-96vw)) translateY(-50%); }

  76% {
    opacity: 0;
    transform: translateX(calc(-96vw)) translateY(-50%); } }

@keyframes style_light {
  0% {
    opacity: 1;
    transform: translateX(-50%) translateY(-50%); }

  25% {
    opacity: 1;
    transform: translateX(calc(96vw - 50%)) translateY(-50%); }

  50% {
    opacity: 1;
    transform: translateX(calc(96vw - 50%)) translateY(calc(179vw - 50%)); }

  75% {
    opacity: 1;
    transform: translateX(-50%) translateY(calc(179vw - 50%)); }

  76% {
    opacity: 0;
    transform: translateX(-50%) translateY(calc(179vw - 50%)); } }

@keyframes fit_image_light {
  0% {
    opacity: 1;
    transform: translateX(50%) translateY(-50%); }

  25% {
    opacity: 1;
    transform: translateX(calc(-95vw + 50%)) translateY(-50%); }

  50% {
    opacity: 1;
    transform: translateX(calc(-95vw + 50%)) translateY(calc(125vw - 50%)); }

  75% {
    opacity: 1;
    transform: translateX(50%) translateY(calc(125vw - 50%)); }

  76% {
    opacity: 0;
    transform: translateX(50%) translateY(calc(125vw - 50%)); } }

@keyframes flash {
  0% {
    color: #fff;
    background-color: #aa2124; }

  50% {
    color: #aa2124;
    background-color: #fff; }

  100% {
    color: #fff;
    background-color: #aa2124; } }

@media screen and (min-width: 768px) {
  .r06 br.sp {
    display: none; }
    .r06 br.pc {
      display: block; }
    .r06 .flex {
      display: flex;
      flex-wrap: wrap;
      justify-content: center;
      align-items: center; }
    .r06 header {
      max-width: 1024px;
      margin: 0 auto; }
    .r06 .brand_logo {
      width: 100px;
      margin: 0 20px 30px auto; }
    .r06 header .catch {
      font-size: 21px;
      width: 100%;
      text-align: center;
      margin-bottom: 10px; }
    .r06 h1 {
      padding: 4vw 0 45vw;
      background-size: cover; }
    .r06 h1 img {
      width: 26%;
      max-width: 265px;
      margin: 0 auto 0 15%; }
    .r06 .detail {
      padding-top: 80px; }
    .r06 .detail .catch {
      font-size: 19.5px;
      margin-bottom: 80px; }
    .r06 .color_image {
      margin-bottom: 80px; }
    .r06 .color_image .ptn_logo {
      width: 190px;
      margin-bottom: 40px; }
    .r06 .color_image .flex {
      width: 768px;
      margin: 0 auto; }
    .r06 .color_image .flex > li {
      width: 45%; }
    .r06 .color_image .color {
      font-size: 16px;
      margin-bottom: 10px; }
    .r06 .color_image .container {
      width: 90%;
      margin-bottom: 0; }
    .r06 .slider_main.wheel {
      margin-bottom: 10px; }
    .r06 .slider_main.wheel .slick-img {
      padding: 10px;
      cursor: pointer; }
    .r06 .slider_main.wheel .slick-img .exclusive {
      font-size: 12px;
      top: 5px;
      right: 5px; }
    .r06 .slider_main.wheel .slick-img .stock {
      font-size: 12px;
      top: 28px;
      right: 5px; }
    .r06 .slider_main.wheel .slick-img .non.stock {
      top: 5px;
      right: 5px; }
    .r06 .slider_main.wheel .slick-img .sticker {
      font-size: 12px;
      bottom: 10px;
      left: 10px; }
    .r06 .thumbnail.sticker .thumbnail-img img {
      cursor: pointer; }
    .r06 .style {
      background: url("/asp/photo/auction/lp/mid_racing_r06/img/bg_style.jpg") center / contain no-repeat;
      max-width: 1024px;
      margin: 0 auto 80px; }
    .r06 .style h3, .r06 .fdj2 h3 {
      font-size: 24px;
      margin-bottom: 2em;
      font-weight: 500; }
    .r06 .style p {
      font-size: 14px;
      width: 590px; }
    .r06 .fdj2 {
      margin-bottom: 80px; }
    .r06 .fdj2 > div {
      width: 600px; }
    .r06 .fdj2 > div::before {
      width: 77px;
      height: 46px;
      right: auto;
      left: 105px; }
    .r06 .fdj2 img {
      width: 30%;
      margin-bottom: 0;
      margin-left: 0; }
    .r06 .fdj2 .text p {
      font-size: 14px;
      margin-bottom: 1em; }
    .r06 .fdj2 .text p:last-of-type {
      margin-bottom: 0; }
    .r06 #spec {
      padding-top: 50px;
      margin-bottom: 120px; }
    .r06 #spec h2, .r06 .fit_image h2 {
      font-size: 28px;
      margin-bottom: 50px; }
    .r06 .size .flex {
      justify-content: space-between;
      width: 690px;
      margin: 0 auto; }
    .r06 .size h3, .r06 .accessories h3 {
      font-size: 18px;
      margin-bottom: 20px; }
    .r06 .size .flex small {
      font-size: 14px;
      margin-right: 0;
      align-self: flex-end; }
    .r06 .size table.sp {
      display: none; }
    .r06 .size table.pc {
      display: table; }
    .r06 .size table {
      font-size: 16px;
      width: 690px;
      margin-bottom: 50px; }
    .r06 .size table th, .r06 .size table td {
      padding: 1em 0; }
    .r06 .size table th.price.solo {
      background: url("/asp/photo/auction/lp/mid_racing_r06/img/icon_change_set.png") right bottom / 20% no-repeat; }
    .r06 .size table th.price.set {
      background: url("/asp/photo/auction/lp/mid_racing_r06/img/icon_change_solo.png") right bottom / 20% no-repeat; }
    .r06 .size table td.price {
      padding: 0.3em 0; }
    .r06 .size table td.price a {
      padding: 0.5em;
      border-radius: 0.8em;
      transition: 0.3s;
      cursor: pointer; }
    .r06 .size table td.price a:hover {
      color: #aa2124;
      background-color: #fff; }
    .r06 .size table td.price a span, .r06 .size table td.price a small {
      transition: 0.3s; }
    .r06 .size table td.price a:hover span, .r06 .size table td.price a:hover small {
      color: #aa2124; }
    .r06 .accessories {
      width: 690px;
      margin: 0 auto; }
    .r06 .accessories h3 {
      text-align: left; }
    .r06 .slider_accessories {
      width: 100%;
      justify-content: space-between;
      margin: 0; }
    .r06 .slider_accessories::before {
      right: 10px;
      top: -30px; }
    .r06 .slider_accessories::after {
      right: 4px;
      top: -24px; }
    .r06 .slider_accessories .slick-img {
      cursor: pointer; }
    .r06 .slider_accessories .slick-img img {
      width: 98%; }
    .r06 .slider_accessories .slick-img:first-of-type img {
      margin-left: 0; }
    .r06 .slider_accessories .slick-img:last-of-type img {
      margin-right: 0; }
    .r06 .slider_accessories small {
      display: block;
      font-size: 14px;
      text-align: center;
      line-height: 2; }
    .r06 .slide_name {
      display: none; }
    .r06 .fit_image {
      margin-bottom: 120px; }
    .r06 .thumbnail.color {
      width: 200px;
      margin-left: calc(50% - 325px); }
    .r06 .thumbnail.color .slick_link div {
      padding: 10px;
      cursor: pointer; }
    .r06 .thumbnail.color .slick_link small {
      font-size: 12px; }
    .r06 .fit_image .slider_main {
      width: 650px;
      margin: 0 auto;
      cursor: pointer; }
    .r06 footer .brand_logo {
      width: 160px;
      margin-bottom: 80px; }
    .r06 .btn_top a, .r06 .btn_top a::before {
      transition: 0.3s; }
    .r06 .btn_top a:hover {
      background-color: #fff;
      color: #000; }
    .r06 .btn_top a:hover::before {
      background-color: #000; }
    .r06 .btn_spec a {
      width: 8em;
      left: auto;
      right: 15px;
      bottom: 100px;
      font-size: 20px;
      padding: 0.8em 0;
      transition: 0.3s; }
    .r06 .btn_spec a::after {
      margin-left: 0.3em;
      height: 20px;
      transition: 0.3s; }
    .r06 .btn_spec a:hover {
      background-color: #fff;
      color: #aa2124; }
    .r06 .btn_spec a:hover::after {
      background-color: #aa2124; }
    .r06 .modal .close {
      cursor: pointer;
      transition: 0.3s; }
    .r06 .modal .close:hover {
      background-color: #aa2124; }
    .r06 .modal .close::before, .r06 .modal .close::after {
      transition: 0.3s; }
    .r06 .modal .close:hover::before, .r06 .modal .close:hover::after {
      background-color: #fff; }
    .r06 .modal span {
      font-size: 14px; }
    .r06 h1::before {
      top: 0;
      animation: h1_before 8s ease-in-out infinite; }
    .r06 h1::after {
      animation: h1_after 8s ease-in-out infinite; }
    .r06 .line.title_top {
      top: 0;
      animation: left_right 8s ease-in-out infinite; }
    .r06 .line.title_bottom {
      animation: right_left 8s ease-in-out infinite; }
    .r06 .detail::before {
      left: 5%;
      animation: detail_light_768 8s ease-in-out 1s infinite; }
    .r06 .detail::after {
      top: 1160px;
      animation: detail_light_after 8s ease-in-out 3s infinite; }
    .r06 .detail h2::before {
      height: 770px; }
    .r06 .detail h2::after {
      top: 770px; }
    .r06 .color_image li:last-of-type::before {
      top: 770px;
      height: 390px; }
    .r06 .color_image li:last-of-type::after {
      top: 1160px; }
    .r06 .style h3::before {
      top: -43px; }
    .r06 .style::before {
      top: -43px;
      height: 660px; }
    .r06 .style::after {
      top: 617px; }
    .r06 .style h3::after {
      top: -43px;
      animation: style_light_768 8s ease-in-out 3s infinite; }
    .r06 .fit_image::before {
      top: 49px;
      height: 660px; }
    .r06 .fit_image .container::before {
      top: -30px; }
    .r06 .fit_image .container::after {
      top: 630px; }
    .r06 .fit_image::after {
      top: 49px;
      animation: fit_image_light_768 8s ease-in-out infinite; } }

@keyframes detail_light_768 {
  0% {
    opacity: 1;
    transform: translateX(-50%) translateY(-50%); }

  25% {
    opacity: 1;
    transform: translateX(-50%) translateY(calc(770px - 50%)); }

  50% {
    opacity: 1;
    transform: translateX(calc(91vw - 50%)) translateY(calc(770px - 50%)); }

  75% {
    opacity: 1;
    transform: translateX(calc(91vw - 50%)) translateY(calc(1160px - 50%)); }

  76% {
    opacity: 0;
    transform: translateX(calc(91vw - 50%)) translateY(calc(1160px - 50%)); } }

@keyframes style_light_768 {
  0% {
    opacity: 1;
    transform: translateX(-50%) translateY(-50%); }

  25% {
    opacity: 1;
    transform: translateX(calc(96vw - 50%)) translateY(-50%); }

  50% {
    opacity: 1;
    transform: translateX(calc(96vw - 50%)) translateY(calc(660px - 50%)); }

  75% {
    opacity: 1;
    transform: translateX(-50%) translateY(calc(660px - 50%)); }

  76% {
    opacity: 0;
    transform: translateX(-50%) translateY(calc(660px - 50%)); } }

@keyframes fit_image_light_768 {
  0% {
    opacity: 1;
    transform: translateX(50%) translateY(-50%); }

  25% {
    opacity: 1;
    transform: translateX(calc(-95vw + 50%)) translateY(-50%); }

  50% {
    opacity: 1;
    transform: translateX(calc(-95vw + 50%)) translateY(calc(660px - 50%)); }

  75% {
    opacity: 1;
    transform: translateX(50%) translateY(calc(660px - 50%)); }

  76% {
    opacity: 0;
    transform: translateX(50%) translateY(calc(660px - 50%)); } }

@media screen and (min-width: 1024px) {
  .r06 h1 {
    padding: 41px 0 460px;
    background: linear-gradient(to right, #000 1%, transparent 2.5%), linear-gradient(to left, #000 1%, transparent 2.5%), url("/asp/photo/auction/lp/mid_racing_r06/img/bg_title.jpg?date=202505301016") center / contain no-repeat; }
    .r06 .color_image {
      margin-bottom: 120px; }
    .r06 .color_image .flex {
      width: 860px; }
    .r06 .style p {
      font-size: 16px;
      width: 680px; }
    .r06 .fdj2 > div {
      width: 680px; }
    .r06 .fdj2 > div::before {
      width: 100px;
      height: 52px;
      left: 110px; }
    .r06 .fdj2 .text p {
      font-size: 16px; }
    .r06 .size .flex {
      width: 735px; }
    .r06 .size table {
      width: 735px;
      margin-bottom: 80px; }
    .r06 .accessories {
      width: 735px; }
    .r06 .thumbnail.color {
      margin-left: calc(50% - 367px); }
    .r06 .fit_image .slider_main {
      width: 735px; }
    .r06 .line {
      width: 100vw;
      left: calc(50% - 50vw); }
    .r06 h1::before {
      left: calc(50% - 50vw);
      animation: h1_before 8s ease-in-out infinite; }
    .r06 h1::after {
      right: calc(50% - 50vw);
      animation: h1_after 8s ease-in-out infinite; }
    .r06 .detail::before {
      left: calc(50% - 420px);
      animation: detail_light_1024 8s ease-in-out 1s infinite; }
    .r06 .detail::after {
      top: 1250px;
      left: calc(50% + 420px);
      animation: detail_light_after_1024 8s ease-in-out 3s infinite; }
    .r06 .detail h2::before {
      left: calc(50% - 420px);
      height: 810px; }
    .r06 .detail h2::after {
      top: 810px;
      left: calc(50% - 420px);
      width: 840px; }
    .r06 .color_image li:last-of-type::before {
      right: calc(50% - 420px);
      top: 810px;
      height: 440px; }
    .r06 .color_image li:last-of-type::after {
      top: 1250px;
      width: calc(50vw + 420px);
      right: calc(50% - 420px); }
    .r06 .style h3::before {
      top: -55px;
      width: calc(50vw + 420px);
      left: calc(50% - 50vw); }
    .r06 .style::before {
      top: -55px;
      right: calc(50% - 420px);
      height: 730px; }
    .r06 .style::after {
      top: 675px;
      right: calc(50% - 420px);
      width: calc(50vw + 420px); }
    .r06 .style h3::after {
      top: -55px;
      left: calc(50% - 50vw);
      animation: style_light_1024 8s ease-in-out 3s infinite; }
    .r06 .fit_image::before {
      height: 725px;
      right: calc(50vw + 420px); }
    .r06 .fit_image .container::before {
      width: calc(50vw + 420px); }
    .r06 .fit_image .container::after {
      top: 695px;
      width: calc(50vw + 420px); }
    .r06 .fit_image::after {
      top: 47px;
      animation: fit_image_light_1024 8s ease-in-out infinite; } }

@keyframes detail_light_1024 {
  0% {
    opacity: 1;
    transform: translateX(-50%) translateY(-50%); }

  25% {
    opacity: 1;
    transform: translateX(-50%) translateY(calc(810px - 50%)); }

  50% {
    opacity: 1;
    transform: translateX(calc(840px - 50%)) translateY(calc(810px - 50%)); }

  75% {
    opacity: 1;
    transform: translateX(calc(840px - 50%)) translateY(calc(1250px - 50%)); }

  76% {
    opacity: 0;
    transform: translateX(calc(840px - 50%)) translateY(calc(1250px - 50%)); } }

@keyframes detail_light_after_1024 {
  0% {
    opacity: 0;
    transform: translateX(-50%) translateY(-50%); }

  49.5% {
    opacity: 0;
    transform: translateX(-50%) translateY(-50%); }

  50% {
    opacity: 1;
    transform: translateX(-50%) translateY(-50%); }

  75% {
    opacity: 1;
    transform: translateX(calc(-50vw - 420px)) translateY(-50%); }

  76% {
    opacity: 0;
    transform: translateX(calc(-50vw - 420px)) translateY(-50%); } }

@keyframes style_light_1024 {
  0% {
    opacity: 1;
    transform: translateX(-50%) translateY(-50%); }

  25% {
    opacity: 1;
    transform: translateX(calc(50vw + 420px - 50%)) translateY(-50%); }

  50% {
    opacity: 1;
    transform: translateX(calc(50vw + 420px - 50%)) translateY(calc(730px - 50%)); }

  75% {
    opacity: 1;
    transform: translateX(-50%) translateY(calc(730px - 50%)); }

  76% {
    opacity: 0;
    transform: translateX(-50%) translateY(calc(730px - 50%)); } }

@keyframes fit_image_light_1024 {
  0% {
    opacity: 1;
    transform: translateX(50%) translateY(-50%); }

  25% {
    opacity: 1;
    transform: translateX(calc(-50vw - 420px + 50%)) translateY(-50%); }

  50% {
    opacity: 1;
    transform: translateX(calc(-50vw - 420px + 50%)) translateY(calc(725px - 50%)); }

  75% {
    opacity: 1;
    transform: translateX(50%) translateY(calc(725px - 50%)); }

  76% {
    opacity: 0;
    transform: translateX(50%) translateY(calc(725px - 50%)); } }
