/*! destyle.css v4.0.0 | MIT License | https://github.com/nicolas-cusan/destyle.css */
/* Reset box-model and set borders */
/* ============================================ */
*,
::before,
::after {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  border-style: solid;
  border-width: 0;
}

/* Document */
/* ============================================ */
/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 * 3. Remove gray overlay on links for iOS.
 */
html {
  line-height: 1.15; /* 1 */
  -webkit-text-size-adjust: 100%; /* 2 */
  -webkit-tap-highlight-color: transparent; /* 3*/

}

/* Sections */
/* ============================================ */
/**
 * Remove the margin in all browsers.
 */
body {
  margin: 0;
}

/**
 * Render the `main` element consistently in IE.
 */
main {
  display: block;
}

/* Vertical rhythm */
/* ============================================ */
p,
table,
blockquote,
address,
pre,
iframe,
form,
figure,
dl {
  margin: 0;
}

/* Headings */
/* ============================================ */
h1,
h2,
h3,
h4,
h5,
h6 {
  font-size: inherit;
  font-weight: inherit;
  margin: 0;
}

/* Lists (enumeration) */
/* ============================================ */
ul,
ol {
  margin: 0;
  padding: 0;
  list-style: none;
}

/* Lists (definition) */
/* ============================================ */
dt {
  font-weight: bold;
}

dd {
  margin-left: 0;
}

/* Grouping content */
/* ============================================ */
/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr {
  -webkit-box-sizing: content-box;
          box-sizing: content-box; /* 1 */
  height: 0; /* 1 */
  overflow: visible; /* 2 */
  border-top-width: 1px;
  margin: 0;
  clear: both;
  color: inherit;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
pre {
  font-family: monospace, monospace; /* 1 */
  font-size: inherit; /* 2 */
}

address {
  font-style: inherit;
}

/* Text-level semantics */
/* ============================================ */
/**
 * Remove the gray background on active links in IE 10.
 */
a {
  background-color: transparent;
  text-decoration: none;
  color: inherit;
}

/**
 * 1. Remove the bottom border in Chrome 57-
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */
abbr[title] {
  -webkit-text-decoration: underline dotted;
          text-decoration: underline dotted; /* 2 */
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */
b,
strong {
  font-weight: bolder;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
code,
kbd,
samp {
  font-family: monospace, monospace; /* 1 */
  font-size: inherit; /* 2 */
}

/**
 * Add the correct font size in all browsers.
 */
small {
  font-size: 80%;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/* Replaced content */
/* ============================================ */
/**
 * Prevent vertical alignment issues.
 */
svg,
img,
embed,
object,
iframe {
  vertical-align: bottom;
}

/* Forms */
/* ============================================ */
/**
 * Reset form fields to make them styleable.
 * 1. Make form elements stylable across systems iOS especially.
 * 2. Inherit text-transform from parent.
 */
button,
input,
optgroup,
select,
textarea {
  -webkit-appearance: none; /* 1 */
  -moz-appearance: none;
       appearance: none;
  vertical-align: middle;
  color: inherit;
  font: inherit;
  background: transparent;
  padding: 0;
  margin: 0;
  border-radius: 0;
  text-align: inherit;
  text-transform: inherit; /* 2 */
}

/**
 * Correct cursors for clickable elements.
 */
button,
[type=button],
[type=reset],
[type=submit] {
  cursor: pointer;
}

button:disabled,
[type=button]:disabled,
[type=reset]:disabled,
[type=submit]:disabled {
  cursor: default;
}

/**
 * Improve outlines for Firefox and unify style with input elements & buttons.
 */
:-moz-focusring {
  outline: auto;
}

select:disabled {
  opacity: inherit;
}

/**
 * Remove padding
 */
option {
  padding: 0;
}

/**
 * Reset to invisible
 */
fieldset {
  margin: 0;
  padding: 0;
  min-width: 0;
}

legend {
  padding: 0;
}

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
progress {
  vertical-align: baseline;
}

/**
 * Remove the default vertical scrollbar in IE 10+.
 */
textarea {
  overflow: auto;
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */
[type=number]::-webkit-inner-spin-button,
[type=number]::-webkit-outer-spin-button {
  height: auto;
}

/**
 * Correct the outline style in Safari.
 */
[type=search] {
  outline-offset: -2px; /* 1 */
}

/**
 * Remove the inner padding in Chrome and Safari on macOS.
 */
[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Fix font inheritance.
 */
::-webkit-file-upload-button {
  -webkit-appearance: button; /* 1 */
  font: inherit; /* 2 */
}

/**
 * Fix appearance for Firefox
 */
[type=number] {
  -moz-appearance: textfield;
}

/**
 * Clickable labels
 */
label[for] {
  cursor: pointer;
}

/* Interactive */
/* ============================================ */
/*
 * Add the correct display in Edge, IE 10+, and Firefox.
 */
details {
  display: block;
}

/*
 * Add the correct display in all browsers.
 */
summary {
  display: list-item;
}

/*
 * Remove outline for editable content.
 */
[contenteditable]:focus {
  outline: auto;
}

/* Tables */
/* ============================================ */
/**
1. Correct table border color inheritance in all Chrome and Safari.
*/
table {
  border-color: inherit; /* 1 */
  border-collapse: collapse;
}

caption {
  text-align: left;
}

td,
th {
  vertical-align: top;
  padding: 0;
}

th {
  text-align: left;
  font-weight: bold;
}

/**==================================================
contents
==================================================**/
body{
  font-family: "Noto Sans JP", sans-serif;
	background-color: #000;
}
#contents *{
  position: relative;
}
#contents img,
.lbx__wrapper img{
  width: 100%;
  display: block;
  line-height: 0;
  vertical-align: bottom;
  font-size: 0;
}

#contents a{
  transition: all ease 0.3s;
  filter: brightness(1);
}

#contents a:hover{
  filter: brightness(1.2);
}

#contents .__hidden_pc{
  display: none;
}
#contents .__hidden_sp{
  display: block;
}

/**==================================================
kv
==================================================**/
#contents #kv {
  z-index: 4;
	width:100%;
}
#contents #kv .btn-kv{
  position: absolute;
  width: calc(573/1400*100%);
  top: 94.5%;
  left: 50%;
  transform: translateX(-50%);
  z-index: 10;
}


/* SP */
@media screen and (max-width: 768px) {
  #contents #kv .btn-kv{
    width: calc(689/750*100%);
    top: 95%;
  }
}

/**==================================================
main
==================================================**/
#contents .main-bg {
  background-image: url('../img/main-bg_pc.png');
  background-size: cover;
  background-repeat: no-repeat;
  padding: 0 0 calc(96/1400*100%);
  z-index: 3;
  position: relative;
}


#contents #main h2{
  width: calc(800/1400*100%);
  margin: 0 auto calc(60/1400*100%);
  padding-top: calc(80/1400*100%);
}

#contents #main .main-btn-01-rule{

  width: calc(640/1400*100%);
  margin: 0 auto calc(50/1400*100%);
}

/* tabs */

#contents #main #tab-wrap{
  width: calc(1040/1400*100%);
  margin: 0 auto;

}
#contents #main #tab-wrap .tab-select{
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin: 0 auto 0;
  padding:0 calc(40/980*100%);
  z-index:2;
  margin-bottom: -10px;
}

#contents #main #tab-wrap .tab-select li{
  width: calc(285/900*100%);
  padding-top: calc(122/900*100%);
  cursor: pointer;
  background-size: contain;
  background-repeat: no-repeat;
  font-size: 0;
  text-indent: -10000px;
  transition: all ease 0.3s; 
}

#contents #main #tab-wrap .tab-select li.active:nth-of-type(1){
  background-image: url('../img/main-tabhead-01_pc-on.png');
}

#contents #main #tab-wrap .tab-select li.active:nth-of-type(2){
  background-image: url('../img/main-tabhead-02_pc-on.png');
}


#contents #main #tab-wrap .tab-select li.active:nth-of-type(3){
  background-image: url('../img/main-tabhead-03_pc-on.png');
}

#contents #main #tab-wrap .tab-select li:nth-of-type(1){
  background-image: url('../img/main-tabhead-01_pc-off.png');
}

#contents #main #tab-wrap .tab-select li:nth-of-type(2){
  background-image: url('../img/main-tabhead-02_pc-off.png');
}


#contents #main #tab-wrap .tab-select li:nth-of-type(3){
  background-image: url('../img/main-tabhead-03_pc-off.png');
}



#contents #main #tab-wrap .tab-content{
  overflow: hidden;
  z-index:10;
}

#contents #main .main-text-02{
  width: calc(800/1400*100%);
  margin: calc(52/1400*100%) auto calc(42/1400*100%);
}

#contents #main .main-btn-02-table{
  width: calc(800/1400*100%);
  margin: 0 auto calc(250/1400*100%);
}

#contents #main .main-text-03{
  width: calc(908/1400*100%);
  margin: 0 auto calc(15/1400*100%);
}

#contents #main .main-btn-03-buy{
  width: calc(500/1400*100%);
  margin: 0 auto 0;
}
#contents #main .entry-box{
  width: calc(980/1400*100%);
  margin: 0 auto ;
}

#contents #main .p-box{
  position: relative;
}

#contents #main .btn-main-entry{
  width: calc(636/980*100%);
  position: absolute;
  top: 80%;
  left: 50%;
  transform: translateX(-50%);
  z-index:10;
}


/* SP */
@media screen and (max-width: 768px) {
body{
  overflow-x: hidden;
}
  #contents #main {

    padding: 0 0 0;

  }
  #contents #main:after{
    display: none;
  }
  #contents #main #tab-wrap:before{
    display: none;
  }
  #contents #main h2{
    width: calc(722/750*100%);
    margin: 0 0 0 auto;
    padding:calc(0/750*100%) 0 0;
  }
  
  #contents #main .main-btn-01-rule{
    width: calc(616/750*100%);
    margin: calc(25/750*100%) auto 0;
  }
  
  /* tabs */
  
  #contents #main #tab-wrap{
    width: calc(710/750*100%);
    margin: calc(50/750*100%) auto 0;
  }
  #contents #main #tab-wrap .tab-select{
    width: calc(650/690*100%);
    margin: 0 auto;
    padding:0 0;
  }
  
  #contents #main #tab-wrap .tab-select li{
    width: calc(202/630*100%);
    padding-top: calc(110/630*100%);
    font-size: 0;
    text-indent: -10000;
    transition: all ease 0.3s; 
    margin-bottom: -0.8%;
  }
  
  #contents #main #tab-wrap .tab-select li:nth-of-type(1){
    background-image: url('../img/main-tabhead-01_sp-off.png');
  }

  #contents #main #tab-wrap .tab-select li:nth-of-type(2){
    background-image: url('../img/main-tabhead-02_sp-off.png');
  }

  #contents #main #tab-wrap .tab-select li:nth-of-type(3){
    background-image: url('../img/main-tabhead-03_sp-off.png');
  }
  #contents #main #tab-wrap .tab-select li.active:nth-of-type(1){
    background-image: url('../img/main-tabhead-01_sp-on.png');
  }

  #contents #main #tab-wrap .tab-select li.active:nth-of-type(2){
    background-image: url('../img/main-tabhead-02_sp-on.png');
  }

  #contents #main #tab-wrap .tab-select li.active:nth-of-type(3){
    background-image: url('../img/main-tabhead-03_sp-on.png');
  }

  
  #contents #main .main-text-02{
    width: calc(703/750*100%);
    margin: calc(40/750*100%) auto 0;
  }
  
  #contents #main .main-btn-02-table{
    width: calc(610/750*100%);
    margin: calc(10/750*100%) auto 0;
  }
  
  #contents #main .main-text-03{
    width: calc(734/750*100%);
    margin: calc(100/750*100%) auto calc(15/750*100%);
  }
  #contents #main .entry-box{
    width: calc(690/750*100%);
  }

  #contents #main .btn-main-entry{
    width: calc(636/690*100%);
    top: 79.5%;
  }
}
/**==================================================
race
==================================================**/

#contents #race{
/*  padding: calc(60/1400*100%) 0 0;*/
  width: 100%;
	margin-bottom: 10%;
}


#contents #race #race-anchor{
  position: absolute;
  /* top:-5%; */
  left:0;
}
#contents #race h2{

  width: calc(800/1400*100%);
  margin: 0 auto calc(50/1400*100%);

}
#contents #race .race-text-01{
  width: calc(651/1400*100%);
  margin: calc(40/1400*100%) auto 0;
}

#contents #race .check-box{
  width: calc(1002/1400*100%);
  margin: calc(38/1400*100%) auto calc(65/1400*100%); 
}

#contents #race .check-box .btn-check{
  position: absolute;
  width: calc(641/1002*100%);
  top: 57%;
  left: 50%;
  transform: translateX(-50%);

}

#contents #race h3{
  width: calc(727/1400*100%);
  margin: 0 auto 0;
}

#contents #race .race-slide-wrap{
  width: calc(1040/1400*100%);
  margin:calc(30/1400*100%) auto calc(50/1400*100%);
}

#contents #race .race-slide{
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  
}
#contents #race .race-slide li{
  width: calc(240/980*100%);
}
#contents #race .race-text-03{
  width: calc(800/1400*100%);
  margin:calc(0/1400*100%) auto 0 ;
}

#contents #race .race-btn{
  width: calc(800/1400*100%);
  margin:calc(45/1400*100%) auto 0;
  position: relative;
  z-index:2;
}


/* SP */
@media screen and (max-width: 768px) {
  #contents .bg-area{
    background-image: url(../img/main-bg_sp.png);
    padding-bottom: calc(68/750*100%);
    background-size: cover;
  }
  #contents #race{

    z-index: 1;
    margin-top: 0;
    padding: 0 0;
    overflow: visible;

    background-repeat: no-repeat;
    margin-top:0;
  }

  #contents #race #race-anchor{
    position: absolute;
    top:-2%;
    left:0;
  }
  #contents #race h2{
    padding:0;
    width: calc(624/750*100%);
    margin: 0 auto;
  }
  #contents #race .race-text-01{
    width: calc(634/750*100%);
    margin: calc(20/750*100%) auto 0;
  }
  
  #contents #race h3{
    width: calc(728/750*100%);
    margin: 0 auto 0;
  }
  
  #contents #race .race-slide-wrap{
    width: 100%;
    margin: calc(10/750*100%) auto calc(50/750*100%);
  }
  .your-slider .slick-center {
    margin-left: auto;  /* 自動で左の余白を調整 */
    margin-right: auto; /* 自動で右の余白を調整 */
  }
  #contents #race .race-slide{
    display: block;
    width: calc(710/750*100%);
    margin: 0 auto;
    
  }
  #contents #race .race-slide li{
    display: flex;
    justify-content: flex-end;
  }

  #contents #race .race-slide li div{
    display: flex;
    justify-content: center;
    padding:0 0;
  }

  #contents #race .race-slide li div img{
    width: 94%;
  }

  #contents #race .check-box{
    width: calc(708/750*100%);
    margin: calc(38/750*100%) auto calc(52/750*100%); 
  }
  #contents #race .race-text-03{
    width: calc(750/750*100%);
    margin:calc(57/750*100%) auto 0;
  }

  
  #contents #race .race-btn{
    width: calc(696/750*100%);
    margin:0 auto 0;
    padding-bottom: 0;
  }

  #contents .slick-prev,#contents .slick-next{
    position: absolute;
    width: calc(54/750*100%);
    padding-top: calc(54/750*100%);
    cursor: pointer;
    top:53%;
  }
  #contents .slick-prev:before,#contents .slick-next:before{
    font-size: 0;
  }
  #contents .slick-prev{
    background-image: url('../img/race-slide-arrow-prev.png');
    background-size: contain;
    background-repeat: no-repeat;
    z-index: 10;
    left:2%;
  }
  #contents .slick-next{
    background-image: url('../img/race-slide-arrow-next.png');
    background-size: contain;
    background-repeat: no-repeat;
    z-index: 10;
    right:2%;
  }
  #contents .slick-prev.slick-disabled,
  #contents .slick-next.slick-disabled{
    display: none!important;
  }

}

.bg-area{
  background-image: url(../img/main-bg_pc.png);
  padding-bottom: calc(100/1400*100%);
  background-size: cover;
}

#main{

}

/**==================================================
footer
==================================================**/
#contents footer{
  background-color: #000;
  padding: calc(0/1400*100%) 0 calc(230/1400*100%);
  z-index:4;

}
@media (max-width:1100px){
  #contents footer{
    padding-bottom: calc(280/1400*100%);
  }
}

#contents footer h2{
  width: calc(980/1400*100%);
  margin:0 auto;
  position: relative;
  z-index:2;
}


#contents footer .footer-logo{
  width: calc(322/1400*100%);
  margin:calc(95/1400*100%) auto calc(45/1400*100%);
}
#contents footer .footer-menu{
  margin: 0 auto;
  text-align: center;
}
#contents footer .footer-menu a{
  color: #FFF;
  font-size: calc(16/1400*100vw);
}

#contents footer .footer-copy{
  color: #dddddd;
  font-size: calc(16/1400*100vw);
  text-align: center;
  margin-top: calc(25/1400*100%);
}

/* SP */
@media screen and (max-width: 768px) {
  #contents footer{
    padding: calc(78/750*100%) 0 calc(280/750*100%);
    overflow: visible;
    z-index: initial;
  }
 
  #contents footer h2{
    width: calc(690/750*100%);
    position: relative;
    z-index: 22;
  }

  #contents footer .footer-logo{
    width: calc(576/750*100%);
    margin:calc(60/750*100%) auto calc(105/750*100%);
  }
  #contents footer .footer-menu{
    margin: 0 auto;
    text-align: center;
  }
  #contents footer .footer-menu a{
    font-size: calc(30/750*100vw);
  }
  
  #contents footer .footer-copy{
    font-size: calc(18/750*100vw);
    margin-top: calc(40/750*100%);
  }
  
}
/**==================================================
fixed-area
==================================================**/
#contents #fixed-area{
padding: calc(2/1400*100%) 0 calc(10/1400*100%);
background-color: rgba(255, 255, 255, 0.85);
position: fixed;
bottom:0;
left:0;
z-index:100;
width: 100%;
}
#contents #fixed-area .inner{
  max-width: 1100px;
  margin: 0 auto;
/*  padding:10px;*/
   width:90%; 
  height: min(calc(182/1100*100%),182px);
}
@media (max-width:1100px){
  #contents #fixed-area .inner{
    min-width: auto;
    margin: 0 auto;
    width:100%;
    padding:min(calc(7/980*100%),7px) 2%;
  } 
}
#contents #fixed-area ul{
  display: flex;
  flex-wrap: wrap;
  margin: 5px auto 0;
  width: 100%;
  justify-content: space-between;
}
#contents #fixed-area ul li:nth-of-type(1){
  width: calc(980/980*100%);
  margin-bottom:  calc(4/980*100%);
}
#contents #fixed-area ul li:nth-of-type(2),
#contents #fixed-area ul li:nth-of-type(3){
  width: calc(480/980*100%);
}
#contents #fixed-area ul li:nth-of-type(2) {
  margin-right: 0;
}
/* SP */
@media screen and (max-width: 768px) {
  #contents #fixed-area{
    padding: calc(10/750*100%) 0 calc(10/750*100%);
    }
    #contents #fixed-area .inner{
      padding:0;
    }
    #contents #fixed-area ul{
      width: calc(690/750*100%);
      justify-content: space-between;
    }
    #contents #fixed-area ul li:nth-of-type(1){
      width: 100%;
      margin-bottom: calc(10/750*100%);
    }
    #contents #fixed-area ul li:nth-of-type(2),
    #contents #fixed-area ul li:nth-of-type(3){
      width: calc(335/690*100%);
    }
    #contents #fixed-area ul li:nth-of-type(2) {
      margin-right: 1%;
    }
}

/**==================================================
LIGHT BOX WINDOW
==================================================**/
/*
body {
  &.lbx__opened {
    overflow: hidden;
  }
}
*/
.lbx__wrapper {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  display: block;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  z-index: 400;
}
.lbx__wrapper #lbx__modal {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100vh;
  background-color: rgba(0, 0, 0, 0.8);
  -webkit-backdrop-filter: blur(3px);
  backdrop-filter: blur(3px);
  opacity: 0;
  -webkit-transition: opacity 0.3s cubic-bezier(0.39, 0.575, 0.565, 1);
  transition: opacity 0.3s cubic-bezier(0.39, 0.575, 0.565, 1);
  -webkit-transform: translate3d(0, 0, 0);
          transform: translate3d(0, 0, 0);
}
.lbx__wrapper #lbx__content {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  position: absolute;
  left: 50%;
  top: 50%;
  width: 100%;
  pointer-events: none;
}
.lbx__wrapper #lbx__content #box__content {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  position: relative;
  width: auto;
  height: auto;
  pointer-events: none;
  opacity: 0;
  -webkit-transform: translate3d(-50%, -25%, 0);
          transform: translate3d(-50%, -25%, 0);
  -webkit-transition: opacity 0.3s cubic-bezier(0.39, 0.575, 0.565, 1) 0s, -webkit-transform 0.3s cubic-bezier(0.19, 1, 0.22, 1) 0s;
  transition: opacity 0.3s cubic-bezier(0.39, 0.575, 0.565, 1) 0s, -webkit-transform 0.3s cubic-bezier(0.19, 1, 0.22, 1) 0s;
  transition: opacity 0.3s cubic-bezier(0.39, 0.575, 0.565, 1) 0s, transform 0.3s cubic-bezier(0.19, 1, 0.22, 1) 0s;
  transition: opacity 0.3s cubic-bezier(0.39, 0.575, 0.565, 1) 0s, transform 0.3s cubic-bezier(0.19, 1, 0.22, 1) 0s, -webkit-transform 0.3s cubic-bezier(0.19, 1, 0.22, 1) 0s;
}
.lbx__wrapper #lbx__content #box__content.lbx__iframe {
  width: 100%;
  height: 100%;
}
.lbx__wrapper #lbx__content #box__content iframe {
  display: block;
  position: relative;
  width: 100%;
  height: 100%;
}
.lbx__wrapper #lbx__content button {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background: transparent;
  border: none;
  border-radius: 0;
  font: inherit;
  outline: none;
  outline: 0;
  cursor: pointer;
}
.lbx__wrapper #lbx__content button.btn__lbx-close {
  position: relative;
  pointer-events: auto;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  display: block;
  width: 6.9375rem;
  max-width: 111px;
  margin: 1.25rem auto 0 auto;
  opacity: 1;
  /* -webkit-transition: opacity 0.5s cubic-bezier(0.39, 0.575, 0.565, 1); */
  /* transition: opacity 0.5s cubic-bezier(0.39, 0.575, 0.565, 1); */
}
.lbx__wrapper #lbx__content button.btn__lbx-close:hover {
  opacity: 0.85;
}
.lbx__wrapper.--show #lbx__modal {
  opacity: 1;
  -webkit-transition: opacity 0.3s cubic-bezier(0.39, 0.575, 0.565, 1);
  transition: opacity 0.3s cubic-bezier(0.39, 0.575, 0.565, 1);
}
.lbx__wrapper.--show #lbx__content #box__content {
  opacity: 1;
  -webkit-transform: translate3d(-50%, -50%, 0);
          transform: translate3d(-50%, -50%, 0);
  -webkit-transition: opacity 1s cubic-bezier(0.39, 0.575, 0.565, 1) 0.3s, -webkit-transform 1s cubic-bezier(0.19, 1, 0.22, 1) 0.3s;
  transition: opacity 1s cubic-bezier(0.39, 0.575, 0.565, 1) 0.3s, -webkit-transform 1s cubic-bezier(0.19, 1, 0.22, 1) 0.3s;
  transition: opacity 1s cubic-bezier(0.39, 0.575, 0.565, 1) 0.3s, transform 1s cubic-bezier(0.19, 1, 0.22, 1) 0.3s;
  transition: opacity 1s cubic-bezier(0.39, 0.575, 0.565, 1) 0.3s, transform 1s cubic-bezier(0.19, 1, 0.22, 1) 0.3s, -webkit-transform 1s cubic-bezier(0.19, 1, 0.22, 1) 0.3s;
}

@media screen and (max-width: 768px) {
  .lbx__wrapper #lbx__content button.btn__lbx-close {
    width: 6.9375rem;
    margin: 1.25rem auto 0 auto;
  }
}
/**==================================================
LIGHT BOX CONTENTS
==================================================**/
#lbx-01 {
  width: 65%;
  max-width: 1000px;
  margin: 0 auto;
  pointer-events: auto;
}
#lbx-01 section {
  /* border-radius: 0.625rem; */
  /* background-color: #fff; */
  overflow: hidden;
}
#lbx-01 section .section-inner {
  position: relative;
  width: 100%;
}

#lbx-02 {
  width: 65%;
  max-width: 1000px;
  margin: 0 auto;
  pointer-events: auto;
}
#lbx-02 section {
  /* border-radius: 0.625rem; */
  /* background-color: #fff; */
  overflow: hidden;
}
#lbx-02 section .section-inner {
  position: relative;
  width: 100%;
}
#lbx-02 section a {
  position: absolute;
  top: 76%;

  width: calc(445/980*100%);
  left: 27%;
}
#lbx-02 section a img {
  /* -webkit-transform: translate3d(0, 0, 0); */
  /* transform: translate3d(0, 0, 0); */
  /* -webkit-transition: -webkit-filter 0.3s linear; */
  /* transition: -webkit-filter 0.3s linear; */
  /* transition: filter 0.3s linear; */
  /* transition: filter 0.3s linear, -webkit-filter 0.3s linear; */
}
#lbx-02 section a:hover img {
  /* -webkit-filter: brightness(85%); */
  /* filter: brightness(85%); */
}

#lbx-03 {
  width: 68.0555555556%;
  max-width: 980px;
  margin: 0 auto;
  pointer-events: auto;
}
#lbx-03 section {
  height: 80vh;
  height: 80svh;
  border-radius: 0.625rem;
  overflow-y: scroll;
  -ms-scroll-chaining: none;
      overscroll-behavior: contain;
  -webkit-overflow-scrolling: touch;
  background-color: #fff;
}
#lbx-03 section .section-inner {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 3.75rem 3.75rem;
}
#lbx-03 section .section-content {
  position: relative;
  color: #282828;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  font-size: 14px;
  line-height: 1.5;
  letter-spacing: 0.0125em;
  text-align: justify;
}
#lbx-03 section .section-content .hdTtl h1 {
  padding: 18px 0;
  font-size: 160%;
  font-weight: 700;
  text-align: center;
  border-top: 1px solid #b4b4b4;
  border-bottom: 1px solid #b4b4b4;
}
#lbx-03 section .section-content h2 {
  font-size: 1.5em;
  font-weight: 700;
}
#lbx-03 section .section-content h3 {
  font-size: 1.17em;
  font-weight: 700;
}
#lbx-03 section .section-content a {
  color: #0082cc;
  text-decoration: underline;
}
#lbx-03 section .section-content a:hover {
  color: #e57300;
  text-decoration: none;
}
#lbx-03 section .section-content .section {
  margin-top: 15px;
}
#lbx-03 section .section-content .section .ttlMod {
  font-size: 117%;
}
#lbx-03 section .section-content .section .sTtl {
  margin-top: 2em;
  font-size: 109%;
}
#lbx-03 section .section-content .section p {
  margin: 0.5em 0;
}
#lbx-03 section .section-content dl.listMod01 {
  margin-top: 0.5em;
}
#lbx-03 section .section-content dl.listMod01 dt {
  float: left;
  width: 1.5em;
  line-height: 1.6;
}
#lbx-03 section .section-content dl.listMod01 dd {
  margin-left: 1.8em;
  line-height: 1.6;
}
#lbx-03 section .section-content ul.disc {
  padding-left: 1.5em;
}
#lbx-03 section .section-content ul.disc li {
  list-style: disc;
  text-indent: -0.5em;
}
#lbx-03 section .section-content ul.note li {
  text-indent: -1em;
  padding-left: 1em;
}
#lbx-03 section .section-content ul.note li.parentheses {
  text-indent: -1.5em;
  margin-left: 0.5em;
}
#lbx-03 section .section-content ul.note2 li,
#lbx-03 section .section-content .section p.indent {
  text-indent: -1.37em;
  padding-left: 1.37em;
}

#lbx__items {
  display: none;
}

.lbx-racer{
  width: 65%;
  max-width: 980px;
  margin: 0 auto;
}

@media screen and (max-width: 768px) {
  #contents .__hidden_pc{
    display: block;
  }
  #contents .__hidden_sp{
    display: none;
  }
  #lbx-01 {
    width: 92%;
  }
  #lbx-01 section {
    margin-top: -1rem;
    border-radius: 0.625rem;
    max-height: 80svh;
    overflow-y: scroll;
    -ms-scroll-chaining: none;
        overscroll-behavior: contain;
    -webkit-overflow-scrolling: touch;
  }
  #lbx-02 {
    width: 92%;
  }
  #lbx-02 section {
    margin-top: -1rem;
    border-radius: 0.625rem;
    max-height: 80svh;
    overflow-y: scroll;
    -ms-scroll-chaining: none;
        overscroll-behavior: contain;
    -webkit-overflow-scrolling: touch;
  }
  #lbx-02 section a {
    width: calc(670/750*100%);

  left: 50%;
  transform: translateX(-50%);

    top: 77.4%;
  }
  #lbx-03 {
    width: 92%;
  }
  #lbx-03 section {
    margin-top: -1rem;
    height: 78vh;
    height: 80svh;
    border-radius: 0.625rem;
  }
  #lbx-03 section .section-inner {
    padding: 1.875rem 1.25rem;
  }
  .lbx-racer{
    width: 90%;
  }
}












/*241205追加*/
/*
#contents{ max-width: 1400px; margin: auto;}
section#kv{max-width:1400px;}
*/
/*section{max-width:1040px; margin: auto; width:90%;}*/
#contents .movieArea{overflow: hidden; margin:calc(100/1400*100%) auto 0 ;}
#contents .movieArea p{text-align: center;}
#contents .movieArea p .movieBubble{width:80%; max-width: 480px; margin:auto}
#contents .movieArea .movieBox{width:60%; margin: 2% auto; position: relative; padding-top: 34%;}
#contents .movieArea .movieBox iframe{width:100%; height:100%; position: absolute!important; top: 0; left: 0;}
#contents #main h2 { margin: 0 auto 30px;  }

.bg-area{background-position: top;}


@media screen and (max-width: 767px) {
	#contents #race{margin-bottom: 30%;}
	#contents .movieArea .movieBox {
    width: 100%;
    margin: 2% auto;
    position: relative;
    padding-top: 55%;
}
}

