@charset "UTF-8";
.align-left {
  text-align: left
}

.align-center {
  text-align: center
}

.align-right {
  text-align: right
}

.sp-none {
  display: inherit
}

@media (max-width:768px) {
  .sp-none {
    display: none
  }
}

.pc-none {
  display: none
}

@media (max-width:768px) {
  .pc-none {
    display: inherit
  }
}

ul.inline {
  display: inline-block
}

ul.inline li {
  display: inline-block
}

@-webkit-keyframes fadeIn {
  0% {
    opacity: 0
  }
  100% {
    opacity: 1
  }
}

@keyframes fadeIn {
  0% {
    opacity: 0
  }
  100% {
    opacity: 1
  }
}

@-webkit-keyframes ripple {
  0% {
    -webkit-transform: scale(1);
    transform: scale(1);
    opacity: 1
  }
  100% {
    -webkit-transform: scale(1.15);
    transform: scale(1.15);
    opacity: 0
  }
}

@keyframes ripple {
  0% {
    -webkit-transform: scale(1);
    transform: scale(1);
    opacity: 1
  }
  100% {
    -webkit-transform: scale(1.15);
    transform: scale(1.15);
    opacity: 0
  }
}

@-webkit-keyframes rotate {
  0% {
    -webkit-transform: rotate(0);
    transform: rotate(0)
  }
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg)
  }
}

@keyframes rotate {
  0% {
    -webkit-transform: rotate(0);
    transform: rotate(0)
  }
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg)
  }
}

@-webkit-keyframes slideUp {
  0% {
    -webkit-transform: translate3d(0, 50px, 0);
    transform: translate3d(0, 50px, 0)
  }
  100% {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0)
  }
}

@keyframes slideUp {
  0% {
    -webkit-transform: translate3d(0, 50px, 0);
    transform: translate3d(0, 50px, 0)
  }
  100% {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0)
  }
}

* {
  padding: 0;
  margin: 0;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-tap-highlight-color: transparent
}

html {
  -webkit-text-size-adjust: 100%;
  font-size: 10px
}

body {
  background: #fff;
  font-family: 'Noto Sans JP', sans-serif;
  -webkit-font-feature-settings: "palt";
  font-feature-settings: "palt";
  font-size: 1.6rem;
  line-height: 1.625;
  letter-spacing: .15rem
}

@media (max-width:768px) {
  body {
    font-size: 1.4rem
  }
}

figure {
  margin: 0 auto
}

button {
  background: 0 0;
  outline: 0;
  border: none
}

a {
  text-decoration: underline
}

li {
  list-style: none
}

.button {
  display: block;
  cursor: pointer
}

.button.outline1 {
  width: 100%;
  max-width: 520px;
  height: 60px;
  line-height: 58px;
  border: 1px solid #b6000e;
  color: #b6000e;
  margin: 0 auto;
  border-radius: 30px;
  font-size: 16px;
  text-decoration: none;
  position: relative
}

@media (max-width:768px) {
  .button.outline1 {
    max-width: 280px;
    height: 40px;
    line-height: 38px;
    font-size: 1.4rem
  }
}

.button.outline1 span {
  font-weight: 700
}

.button.outline1 span:after {
  content: "";
  position: absolute;
  right: 23px;
  top: 50%;
  width: 15px;
  height: 1px;
  background: #b6000e
}

@media (max-width:768px) {
  .button.outline1 span:after {
    right: 15px;
    width: 11px
  }
}

.button.outline1 span:before {
  content: "";
  position: absolute;
  right: 30px;
  top: 50%;
  margin-top: -7px;
  width: 1px;
  height: 15px;
  background: #b6000e
}

@media (max-width:768px) {
  .button.outline1 span:before {
    right: 20px;
    height: 11px;
    margin-top: -5px
  }
}

.button.color1, .button.color2, .button.color3 {
  width: 100%;
  max-width: 540px;
  height: 60px;
  border-radius: 10px;
  overflow: hidden;
  line-height: 60px;
  margin: 0 auto;
  background: #de353c;
  color: #fff;
  text-decoration: none;
  font-size: 1.6rem;
  position: relative
}

.button.color1.small, .button.color2.small, .button.color3.small {
  border-radius: 5px;
  height: 40px;
  line-height: 40px;
  font-size: 1.4rem
}

@media (max-width:768px) {
  .button.color1, .button.color2, .button.color3 {
    max-width: 240px;
    height: 40px;
    border-radius: 5px;
    line-height: 40px;
    font-size: 1rem
  }
  .button.color1.small, .button.color2.small, .button.color3.small {
    height: 30px;
    line-height: 30px;
    font-size: 1rem
  }
}

.button.color1 span:after, .button.color2 span:after, .button.color3 span:after {
  content: "";
  display: block;
  width: 8px;
  height: 8px;
  border-right: 3px solid #fff;
  border-bottom: 3px solid #fff;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
  position: absolute;
  right: 30px;
  top: 50%;
  margin-top: -6px
}

@media (max-width:768px) {
  .button.color1 span:after, .button.color2 span:after, .button.color3 span:after {
    width: 4px;
    height: 4px;
    border-right: 2px solid #fff;
    border-bottom: 2px solid #fff;
    margin-top: -2px
  }
}

.button.color1.small span:after, .button.color2.small span:after, .button.color3.small span:after {
  right: 10px;
  -webkit-transform: scale(.5) rotate(-45deg);
  transform: scale(.5) rotate(-45deg)
}

@media (max-width:768px) {
  .button.color1.small span:after, .button.color2.small span:after, .button.color3.small span:after {
    -webkit-transform: scale(1) rotate(-45deg);
    transform: scale(1) rotate(-45deg);
    right: 10px
  }
}

.button.outline1 span:after, .button.outline1 span:before {
  -webkit-transition: color .2s ease, background .2s ease;
  transition: color .2s ease, background .2s ease
}

.button.outline1:hover {
  -webkit-transition: color 0s ease, background 0s ease;
  transition: color 0s ease, background 0s ease;
  background: #de353c;
  color: #fff
}

.button.outline1:hover span:after, .button.outline1:hover span:before {
  -webkit-transition: color 0s ease, background 0s ease;
  transition: color 0s ease, background 0s ease;
  background: #fff
}

.button.color1 {
  -webkit-transition: color 0s ease, background 0s ease;
  transition: color 0s ease, background 0s ease
}

.button.color1[data-race='男子'] {
  color: #fff;
  background: #231e69
}

.button.color1[data-race='女子'], .button.color1[data-race='女子'] {
  color: #fff;
  background: #e66496
}

.button.color1:hover {
  -webkit-transition: color 0s ease, background 0s ease;
  transition: color 0s ease, background 0s ease;
  background: -webkit-gradient(linear, left top, right top, from(#e60213), to(#ee7c00));
  background: linear-gradient(90deg, #e60213, #ee7c00)
}

.button.color3 {
  background: -webkit-gradient(linear, left top, right top, from(#e60213), to(#ee7c00));
  background: linear-gradient(90deg, #e60213, #ee7c00);
  -webkit-transition: color 0s ease, background 0s ease;
  transition: color 0s ease, background 0s ease
}

.button.color3:hover {
  -webkit-transition: color 0s ease, background 0s ease;
  transition: color 0s ease, background 0s ease;
  background: -webkit-gradient(linear, left top, right top, from(#e60213), to(#ee7c00));
  background: linear-gradient(90deg, #e60213, #ee7c00)
}

.button.color2 {
  -webkit-transition: color 0s ease, background 0s ease;
  transition: color 0s ease, background 0s ease;
  background: -webkit-gradient(linear, left top, right top, from(#1e9dc7), to(#64bea0));
  background: linear-gradient(90deg, #1e9dc7, #64bea0)
}

.button.color2:hover {
  -webkit-transition: color 0s ease, background 0s ease;
  transition: color 0s ease, background 0s ease;
  background: -webkit-gradient(linear, left top, right top, from(#e60213), to(#ee7c00));
  background: linear-gradient(90deg, #e60213, #ee7c00)
}

.st-HeaderRow {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap
}

.st-FooterRow {
  display: block;
  margin: 0 auto;
  text-align: center
}

.st-Content .st-ContentFooter, .st-Content .st-ContentHeader {
  text-align: center;
  padding-left: 30px;
  padding-right: 30px
}

@media (max-width:768px) {
  .st-Content .st-ContentFooter, .st-Content .st-ContentHeader {
    padding-left: 20px;
    padding-right: 20px
  }
}

.st-Content .st-ContentFooter {
  padding: 60px 30px
}

@media (max-width:768px) {
  .st-Content .st-ContentFooter {
    padding: 40px 20px
  }
}

.st-Content .st-ContentBoxInner {
  margin: 0 auto;
  padding: 60px 30px;
  max-width: 1100px
}

@media (max-width:768px) {
  .st-Content .st-ContentBoxInner {
    padding: 40px 10px
  }
}

.st-Content .st-ContentBoxHeader {
  text-align: center;
  margin-bottom: 60px
}

@media (max-width:768px) {
  .st-Content .st-ContentBoxHeader {
    margin-bottom: 40px
  }
}

.st-Content .st-ContentBoxHeader h3+p {
  margin-top: 60px
}

.st-Content .st-ContentBoxHeader h2+p {
  margin-top: 60px
}

@media (max-width:768px) {
  .st-Content .st-ContentBoxHeader h3+p {
    margin-top: 40px
  }
}

{
  .st-Content .st-ContentBoxHeader h2+p {
    margin-top: 40px
  }
}

.st-Content .st-ContentBoxHeader h3 {
  display: inline-block;
  position: relative;
  vertical-align: top
}

.st-Content .st-ContentBoxHeader h2 {
  display: inline-block;
  position: relative;
  vertical-align: top
}

.st-Content .st-ContentBoxHeader h3:before {
  content: "";
  display: inline-block;
  background: #fff;
  width: 30px;
  height: 28px;
  position: absolute;
  left: -44px;
  top: 50%;
  margin-top: -12px;
  margin-right: 20px;
  background: url(../img/arrow1.png) center no-repeat;
  background-size: 24px 18px
}

.st-Content .st-ContentBoxHeader h2:before {
  content: "";
  display: inline-block;
  background: #fff;
  width: 30px;
  height: 28px;
  position: absolute;
  left: -44px;
  top: 50%;
  margin-top: -12px;
  margin-right: 20px;
  background: url(../img/arrow1.png) center no-repeat;
  background-size: 24px 18px
}

.st-Content .st-ContentBoxHeader h3:after {
  content: "";
  display: inline-block;
  background: #fff;
  width: 30px;
  height: 28px;
  margin-left: 20px;
  position: absolute;
  right: -44px;
  top: 50%;
  margin-top: -12px;
  background: url(../img/arrow1.png) center no-repeat;
  background-size: 24px 18px;
  -webkit-transform: rotate(180deg);
  transform: rotate(180deg)
}

.st-Content .st-ContentBoxHeader h2:after {
  content: "";
  display: inline-block;
  background: #fff;
  width: 30px;
  height: 28px;
  margin-left: 20px;
  position: absolute;
  right: -44px;
  top: 50%;
  margin-top: -12px;
  background: url(../img/arrow1.png) center no-repeat;
  background-size: 24px 18px;
  -webkit-transform: rotate(180deg);
  transform: rotate(180deg)
}

.st-Content #chari_ranger .st-ContentBoxHeader h3:before, .st-Content #race_table .st-ContentBoxHeader h3:before {
  background: url(../img/arrow2.png) center no-repeat;
  background-size: 24px 18px
}

.st-Content #chari_ranger .st-ContentBoxHeader h2:before, .st-Content #race_table .st-ContentBoxHeader h2:before {
  background: url(../img/arrow2.png) center no-repeat;
  background-size: 24px 18px
}

.st-Content #chari_ranger .st-ContentBoxHeader h3:after, .st-Content #race_table .st-ContentBoxHeader h3:after {
  background: url(../img/arrow2.png) center no-repeat;
  background-size: 24px 18px;
  -webkit-transform: rotate(180deg);
  transform: rotate(180deg)
}

.st-Content #chari_ranger .st-ContentBoxHeader h2:after, .st-Content #race_table .st-ContentBoxHeader h2:after {
  background: url(../img/arrow2.png) center no-repeat;
  background-size: 24px 18px;
  -webkit-transform: rotate(180deg);
  transform: rotate(180deg)
}

#loader {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 2000000;
  overflow: hidden
}

#loader svg {
  position: absolute;
  top: 50%;
  left: 50%;
  z-index: 10;
  -webkit-transform: translate3d(-50%, -50%, 0);
  transform: translate3d(-50%, -50%, 0)
}

#loader svg circle {
  stroke-dasharray: 110 377;
  stroke: #fff;
  fill: transparent;
  stroke-width: 4px;
  -webkit-transform-origin: center;
  transform-origin: center;
  -webkit-animation-timing-function: linear;
  animation-timing-function: linear;
  -webkit-animation-name: rotate;
  animation-name: rotate;
  -webkit-animation-iteration-count: infinite;
  animation-iteration-count: infinite;
  -webkit-animation-duration: .5s;
  animation-duration: .5s
}

#loader #stripes {
  position: relative;
  width: 100%;
  height: 100%;
  -webkit-transform: skewX(-42deg) scaleX(1.2);
  transform: skewX(-42deg) scaleX(1.2);
  pointer-events: none
}

@media (max-width:768px) {
  #loader #stripes {
    -webkit-transform: skewX(-42deg) scaleX(1.8);
    transform: skewX(-42deg) scaleX(1.8)
  }
}

#loader #stripes .stripe {
  position: absolute;
  width: 40%;
  height: 100%;
  pointer-events: none;
  -webkit-transition: -webkit-transform .6s ease;
  transition: -webkit-transform .6s ease;
  transition: transform .6s ease;
  transition: transform .6s ease, -webkit-transform .6s ease;
  background: #d71718
}

#loader #stripes .stripe:nth-child(1) {
  left: -30%;
  -webkit-transform-origin: center 0;
  transform-origin: center 0
}

#loader #stripes .stripe:nth-child(2) {
  left: 0;
  -webkit-transform-origin: center 100%;
  transform-origin: center 100%
}

#loader #stripes .stripe:nth-child(3) {
  left: 30%;
  -webkit-transform-origin: center 0;
  transform-origin: center 0
}

#loader #stripes .stripe:nth-child(4) {
  left: 60%;
  -webkit-transform-origin: center 100%;
  transform-origin: center 100%
}

#loader #stripes .stripe:nth-child(5) {
  left: 90%;
  -webkit-transform-origin: center 0;
  transform-origin: center 0
}

#loader #stripes .stripe:nth-child(1), #loader #stripes .stripe:nth-child(5) {
  -webkit-transition-delay: .2s;
  transition-delay: .2s
}

#loader #stripes .stripe:nth-child(2), #loader #stripes .stripe:nth-child(4) {
  -webkit-transition-delay: .1s;
  transition-delay: .1s
}

#loader.hide {
  pointer-events: none
}

#loader.hide svg {
  opacity: 0
}

#loader.hide #stripes .stripe {
  -webkit-transform: scaleY(0);
  transform: scaleY(0)
}

#header {
  position: relative;
  width: 100%;
  z-index: 100;
  background: #fff;
  border-top: 4px solid #de353c
}

@media (max-width:768px) {
  #header {
    position: fixed;
    z-index: 200;
    border-top: 2px solid #de353c
  }
}

#header.isMenuOpen .sp-navigation #menuOpen div:nth-child(2) {
  opacity: 0
}

#header.isMenuOpen .sp-navigation #menuOpen div:nth-child(1) {
  -webkit-transform: translate3d(0, 7px, 0) rotate(135deg);
  transform: translate3d(0, 7px, 0) rotate(135deg)
}

#header.isMenuOpen .sp-navigation #menuOpen div:nth-child(3) {
  -webkit-transform: translate3d(0, -7px, 0) rotate(-135deg);
  transform: translate3d(0, -7px, 0) rotate(-135deg)
}

#header .st-HeaderRow--Cell {
  padding: 10px 27px
}

@media (max-width:768px) {
  #header .st-HeaderRow--Cell {
    padding: 8px 8px
  }
}

#header .st-HeaderRow--Cell:nth-child(2) {
  padding-top: 0;
  padding-bottom: 0
}

#header .st-HeaderRow--Cell .navigation, #header .st-HeaderRow--Cell .sp-navigation {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  height: 100%;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center
}

#header .st-HeaderRow--Cell .navigation>div {
  border-left: 1px solid #ddd
}

#header .st-HeaderRow--Cell .navigation>div:hover {
  background: #e60012
}

#header .st-HeaderRow--Cell .navigation>div:hover a {
  color: #fff
}

#header .st-HeaderRow--Cell .navigation>div:hover .sub {
  display: block;
  opacity: 1;
  pointer-events: auto;
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
  -webkit-transition: opacity .2s ease, -webkit-transform .2s ease;
  transition: opacity .2s ease, -webkit-transform .2s ease;
  transition: transform .2s ease, opacity .2s ease;
  transition: transform .2s ease, opacity .2s ease, -webkit-transform .2s ease
}

#header .st-HeaderRow--Cell .navigation>div:nth-child(2) .sub:before {
  margin-left: 48px
}

@media (max-width:1100px) {
  #header .st-HeaderRow--Cell .navigation>div:nth-child(2) .sub:before {
    margin-left: 48px
  }
}

#header .st-HeaderRow--Cell .navigation>div .sub {
  -webkit-transition: opacity .2s ease, -webkit-transform .2s ease;
  transition: opacity .2s ease, -webkit-transform .2s ease;
  transition: transform .2s ease, opacity .2s ease;
  transition: transform .2s ease, opacity .2s ease, -webkit-transform .2s ease;
  -webkit-transform: translate3d(0, 10px, 0);
  transform: translate3d(0, 10px, 0);
  position: absolute;
  top: 86px;
  min-width: 250px;
  border-radius: 5px;
  pointer-events: none;
  opacity: 0
}

#header .st-HeaderRow--Cell .navigation>div .sub:before {
  content: "";
  width: 20px;
  height: 20px;
  margin-top: -6px;
  margin-left: 107.315px;
  background: #de353c;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  position: absolute
}

@media (max-width:1100px) {
  #header .st-HeaderRow--Cell .navigation>div .sub:before {
    margin-left: 72px
  }
}

#header .st-HeaderRow--Cell .navigation>div .sub .button {
  border-radius: 0;
  padding-left: 15px;
  padding-right: 40px;
  font-size: 1.4rem
}

#header .st-HeaderRow--Cell .navigation>div .sub .button:first-child {
  border-radius: 5px 5px 0 0
}

#header .st-HeaderRow--Cell .navigation>div .sub .button:last-child {
  border-radius: 0 0 5px 5px
}

@media (max-width:1100px) {
  #header .st-HeaderRow--Cell .navigation>div .sub .button {
    font-size: 1.3rem
  }
}

#header .st-HeaderRow--Cell .navigation>div .sub .button span:after {
  right: 20px;
  -webkit-transform: scale(.5) rotate(-45deg);
  transform: scale(.5) rotate(-45deg)
}

#header .st-HeaderRow--Cell .navigation>div a:not(.button) {
  line-height: 96px;
  padding: 0 40px;
  text-decoration: none;
  display: block;
  font-size: 1.6rem;
  font-weight: 700;
  overflow: hidden;
  height: 96px
}

@media (max-width:1100px) {
  #header .st-HeaderRow--Cell .navigation>div a:not(.button) {
    padding: 0 20px;
    font-size: 1.3rem
  }
}

#header .st-HeaderRow--Cell .navigation>div a:not(.button) span {
  text-overflow: ellipsis
}

#header .st-HeaderRow--Cell .navigation>div:last-child {
  border-right: 1px solid #ddd
}

@media (max-width:768px) {
  #header .st-HeaderRow--Cell .navigation {
    display: none
  }
}

#header .st-HeaderRow--Cell .sp-navigation {
  display: none
}

@media (max-width:768px) {
  #header .st-HeaderRow--Cell .sp-navigation {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex
  }
}

#header .st-HeaderRow--Cell .sp-navigation>div:nth-child(1) {
  padding-right: 15px
}

#header .st-HeaderRow--Cell .sp-navigation #menuOpen {
  cursor: pointer;
  width: 45px;
  height: 45px;
  padding: 10px
}

#header .st-HeaderRow--Cell .sp-navigation #menuOpen div:nth-child(1), #header .st-HeaderRow--Cell .sp-navigation #menuOpen div:nth-child(2), #header .st-HeaderRow--Cell .sp-navigation #menuOpen div:nth-child(3) {
  -webkit-transform-origin: 50% 50%;
  transform-origin: 50% 50%;
  -webkit-transition: -webkit-transform .4s ease;
  transition: -webkit-transform .4s ease;
  transition: transform .4s ease;
  transition: transform .4s ease, -webkit-transform .4s ease;
  width: 25px;
  height: 2px;
  background: #000
}

#header .st-HeaderRow--Cell .sp-navigation #menuOpen div:nth-child(2) {
  margin: 5px 0
}

#header .st-HeaderRow--Cell .sp-navigation a.button {
  width: 120px;
  text-align: center
}

#header .st-HeaderRow--Cell .sp-navigation a.button span:after {
  display: none
}

@media (max-width:768px) {
  #header .st-HeaderRow--Cell .navigation {
    display: block!important;
    position: fixed;
    top: 64px;
    bottom: -200%;
    left: 0;
    right: 0;
    z-index: 100;
    pointer-events: none;
    background-color: rgba(0, 0, 0, 0);
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
    -webkit-transition: background-color .2s ease, opacity .2s ease, -webkit-transform .4s ease;
    transition: background-color .2s ease, opacity .2s ease, -webkit-transform .4s ease;
    transition: background-color .2s ease, transform .4s ease, opacity .2s ease;
    transition: background-color .2s ease, transform .4s ease, opacity .2s ease, -webkit-transform .4s ease;
    opacity: 0;
    width: 100%
  }
  #header .st-HeaderRow--Cell .navigation>div {
    opacity: 1;
    -webkit-transition: opacity 0s ease, -webkit-transform 0s ease;
    transition: opacity 0s ease, -webkit-transform 0s ease;
    transition: opacity 0s ease, transform 0s ease;
    transition: opacity 0s ease, transform 0s ease, -webkit-transform 0s ease;
    background: #e60012;
    -webkit-transition-timing-function: cubic-bezier(.19, 1, .22, 1);
    transition-timing-function: cubic-bezier(.19, 1, .22, 1);
    -webkit-animation-timing-function: cubic-bezier(.19, 1, .22, 1);
    animation-timing-function: cubic-bezier(.19, 1, .22, 1);
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0)
  }
  #header .st-HeaderRow--Cell .navigation>div+div {
    border-top: 1px solid #fff
  }
  #header .st-HeaderRow--Cell .navigation>div>a {
    color: #fff;
    padding-top: 0;
    padding-bottom: 0;
    font-size: 1.8rem;
    line-height: 60px!important;
    height: 60px!important;
    position: relative
  }
  #header .st-HeaderRow--Cell .navigation>div>a span:after {
    content: "";
    display: block;
    width: 8px;
    height: 8px;
    border-right: 3px solid #fff;
    border-bottom: 3px solid #fff;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
    position: absolute;
    right: 20px;
    top: 50%;
    margin-top: -6px
  }
}

@media (max-width:768px) and (max-width:768px) {
  #header .st-HeaderRow--Cell .navigation>div>a span:after {
    width: 4px;
    height: 4px;
    border-right: 2px solid #fff;
    border-bottom: 2px solid #fff;
    margin-top: -2px
  }
}

@media (max-width:768px) {
  #header .st-HeaderRow--Cell .navigation>div .sub {
    position: static;
    display: block;
    opacity: 1;
    -webkit-transition: none;
    transition: none;
    -webkit-transform: none;
    transform: none;
    width: 100%;
    max-width: 100%
  }
  #header .st-HeaderRow--Cell .navigation>div .sub:before {
    display: none
  }
  #header .st-HeaderRow--Cell .navigation>div .sub .button {
    padding-left: 20px;
    max-width: 100%;
    font-size: 1.5rem;
    height: 50px;
    line-height: 50px;
    border-radius: 0
  }
  #header .st-HeaderRow--Cell .navigation>div .sub .button span:after {
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg)
  }
  #header.isMenuOpen .st-HeaderRow--Cell .navigation {
    pointer-events: auto;
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
    background-color: rgba(0, 0, 0, .8)
  }
  #header.isMenuOpen .st-HeaderRow--Cell .navigation>div {
    -webkit-transition: opacity .2s ease, -webkit-transform .6s ease;
    transition: opacity .2s ease, -webkit-transform .6s ease;
    transition: opacity .2s ease, transform .6s ease;
    transition: opacity .2s ease, transform .6s ease, -webkit-transform .6s ease;
    -webkit-transition-timing-function: cubic-bezier(.19, 1, .22, 1);
    transition-timing-function: cubic-bezier(.19, 1, .22, 1);
    -webkit-animation-timing-function: cubic-bezier(.19, 1, .22, 1);
    animation-timing-function: cubic-bezier(.19, 1, .22, 1);
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0)
  }
  #header.isMenuOpen .st-HeaderRow--Cell .navigation>div:nth-child(1) {
    -webkit-transition-delay: .1s;
    transition-delay: .1s
  }
  #header.isMenuOpen .st-HeaderRow--Cell .navigation>div:nth-child(2) {
    -webkit-transition-delay: .2s;
    transition-delay: .2s
  }
  #header.isMenuOpen .st-HeaderRow--Cell .navigation>div:nth-child(3) {
    -webkit-transition-delay: .3s;
    transition-delay: .3s
  }
  #header.isMenuOpen .st-HeaderRow--Cell .navigation>div:nth-child(4) {
    -webkit-transition-delay: .4s;
    transition-delay: .4s
  }
  #header.isMenuOpen .st-HeaderRow--Cell .navigation>div .sub {
    display: block;
    -webkit-transform: none;
    transform: none
  }
}

#header .chariloto-logo {
  display: inline-block
}

#header .chariloto-logo img {
  vertical-align: top;
  width: auto;
  height: 76px
}

@media (max-width:768px) {
  #header .chariloto-logo img {
    height: 46px
  }
}

#footer {
  background: #de353c;
  color: #fff;
  height: 180px;
  padding: 30px
}

#footer a {
  color: #fff
}

@media (max-width:768px) {
  #footer {
    height: 50px;
    padding: 20px
  }
}

#footer .st-FooterRow {
  text-align: center
}

#footer .st-FooterRow .copyright {
  line-height: 1;
  font-size: 12px
}

@media (max-width:768px) {
  #footer .st-FooterRow .copyright {
    font-size: 10px
  }
}

#footer .st-FooterRow .copyright small {
  font-size: 100%
}

@media (max-width:768px) {
  #kv {
    padding-top: 64px
  }
}

#kv img {
  vertical-align: top;
  width: 100%;
  height: auto
}

.st-ContentHeader {
  padding-bottom: 60px
}

.st-ContentHeader h1, .st-ContentHeader h2 {
  font-style: italic;
  letter-spacing: .5rem
}

.st-ContentHeader h1 {
  color: #de353c;
  font-size: 25px;
  line-height: 1;
  margin-bottom: 8px;
  font-weight: 700
}

@media (max-width:768px) {
  .st-ContentHeader h1 {
    font-size: 20px
  }
}

.st-ContentHeader h2 {
  font-size: 45px;
  line-height: 1;
  font-weight: 700
}

@media (max-width:768px) {
  .st-ContentHeader h2 {
    font-size: 30px
  }
}

.st-ContentHeader>div:first-child {
  position: relative;
  padding-top: 60px;
  padding-bottom: 52px
}

@media (max-width:768px) {
  .st-ContentHeader>div:first-child {
    padding-top: 40px;
    padding-bottom: 52px
  }
}

.st-ContentHeader>div:first-child:after {
  content: "";
  display: block;
  position: absolute;
  bottom: 27px;
  width: 240px;
  height: 6px;
  background: #de353c;
  left: 50%;
  margin-left: -120px
}

@media (max-width:768px) {
  .st-ContentHeader>div:first-child:after {
    width: 120px;
    height: 4px;
    margin-left: -60px;
    bottom: 37px
  }
}

.st-ContentHeader p {
  font-weight: 400
}

.st-ContentBoxHeader h3 {
  font-style: italic;
  font-size: 30px;
  line-height: 1;
  font-weight: 700
}

.st-ContentBoxHeader h2 {
  font-style: italic;
  font-size: 30px;
  line-height: 1;
  font-weight: 700
}

@media (max-width:768px) {
  .st-ContentBoxHeader h3 {
    font-size: 24px
  }
}

{
  .st-ContentBoxHeader h2 {
    font-size: 24px
  }
}

#outlook .flexbox2-2 {
  max-width: 768px;
  margin: 0 auto
}

#outlook .flexbox2-2 .profile {
  -ms-flex-preferred-size: 309px;
  flex-basis: 309px;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  -webkit-box-flex: 0;
  -ms-flex-positive: 0;
  flex-grow: 0;
  width: 309px;
  padding-left: 29px;
  padding-right: 40px
}

@media (max-width:768px) {
  #outlook .flexbox2-2 .profile {
    -ms-flex-preferred-size: 100%;
    flex-basis: 100%;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    -webkit-box-flex: 0;
    -ms-flex-positive: 0;
    flex-grow: 0;
    width: 100%;
    padding-left: 0;
    padding-right: 0;
    margin-bottom: 30px
  }
}

@media (max-width:768px) {
  #outlook .flexbox2-2 .profile img {
    width: 168px;
    height: auto;
    margin: 0 auto;
    display: block
  }
}

#outlook .flexbox2-2 .profile .profile-text {
  position: relative;
  margin-top: 1em
}

#outlook .flexbox2-2 .profile .profile-text h5 {
  font-size: 19px
}

@media (max-width:768px) {
  #outlook .flexbox2-2 .profile .profile-text h5 {
    text-align: center;
    font-size: 13px
  }
}

#outlook .flexbox2-2 .profile .profile-text p {
  margin-top: .5em;
  font-size: 12px;
  color: #666
}

@media (max-width:768px) {
  #outlook .flexbox2-2 .profile .profile-text p {
    font-size: 8px
  }
}

#outlook .flexbox2-2 .profile .profile-text .link {
  position: absolute;
  right: 0;
  top: 0;
  line-height: 1
}

#outlook .flexbox2-2 .profile .profile-text .link:hover {
  opacity: .7
}

@media (max-width:768px) {
  #outlook .flexbox2-2 .profile .profile-text .link {
    top: 0
  }
}

#outlook .flexbox2-2 .profile .profile-text .link img {
  width: 31px;
  height: auto;
  vertical-align: top
}

@media (max-width:768px) {
  #outlook .flexbox2-2 .profile .profile-text .link img {
    width: 20px
  }
}

#outlook .flexbox2-2 .profile+div {
  -ms-flex-preferred-size: 50%;
  flex-basis: 50%;
  -ms-flex-negative: 1;
  flex-shrink: 1;
  -webkit-box-flex: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
  width: auto
}

#outlook .flexbox2-2 .profile+div .expectation>div:first-child, #outlook .flexbox2-2 .profile+div .outlook>div:first-child {
  color: #de353c;
  font-size: 12px;
  margin-bottom: 1em
}

#outlook .flexbox2-2 .profile+div .expectation {
  border-top: 1px dashed #ddd;
  margin-top: 3em;
  padding-top: 1em;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between
}

@media (max-width:768px) {
  #outlook .flexbox2-2 .profile+div .expectation {
    margin-top: 2em
  }
}

#outlook .flexbox2-2 .profile+div .expectation a.button {
  max-width: 100%
}

@media (max-width:768px) {
  #outlook .flexbox2-2 .profile+div .expectation a.button {
    max-width: 100%
  }
}

#outlook .flexbox2-2 .profile+div .expectation a.button:not(.popupOpen) {
  pointer-events: none;
  background: #ddd
}

#outlook .flexbox2-2 .profile+div .expectation>* {
  -ms-flex-preferred-size: 50%;
  flex-basis: 50%;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  -webkit-box-flex: 0;
  -ms-flex-positive: 0;
  flex-grow: 0;
  -ms-flex-item-align: center;
  align-self: center
}

#outlook .flexbox2-2 .profile+div .expectation>:nth-child(1) {
  -ms-flex-preferred-size: 100%;
  flex-basis: 100%
}

#outlook .flexbox2-2 .profile+div .expectation>:nth-child(2), #outlook .flexbox2-2 .profile+div .expectation>:nth-child(3) {
  -ms-flex-preferred-size: calc(50% - 10px);
}

@media (max-width:768px) {
  #outlook .flexbox2-2 .profile+div .expectation>:nth-child(1) {
    -ms-flex-preferred-size: calc(20.44% - 5px);
  }
  #outlook .flexbox2-2 .profile+div .expectation>:nth-child(2), #outlook .flexbox2-2 .profile+div .expectation>:nth-child(3) {
    -ms-flex-preferred-size: calc(39.78% - 5px);
    flex-basis: calc(39.78% - 5px)
  }
  #outlook .flexbox2-2 .profile+div .expectation>:nth-child(2):last-child {
    -ms-flex-preferred-size: calc(79.56% - 2.5px);
    flex-basis: calc(79.56% - 2.5px)
  }
}

#outlook .flexbox2-2 .profile+div .expectation>* .button {
  text-align: center
}

#outlook, #winner {
  color: #000;
  background: url(../img/bg.jpg) no-repeat;
  background-size: cover
}

#outlook .st-ContentHeader, #winner .st-ContentHeader {
  max-width: 760px;
  margin: 0 auto;
  padding: 0
}

#outlook img, #winner img {
  cursor: pointer;
  width: 100%;
  border-radius: 6px
}

@media (max-width:768px) {
  #about .st-ContentHeader p {
    text-align: left
  }
  #about .st-ContentHeader p br.sp-none {
    display: none
  }
}

#about .st-ContentHeader h2 {
  letter-spacing: .2rem
}

#about #race_program {
  background: #f6f6f6
}

#about #race_program .st-ContentBoxHeader {
  margin-bottom: 0
}

#about #race_program p {
  color: #666;
  text-align: center;
  line-height: 1
}

@media (max-width:768px) {
  #about #race_program p small {
    font-size: .8rem
  }
}

#about #race_program img {
  width: 100%;
  height: auto;
  vertical-align: top
}

#about #race_program #prize, #about #race_program #prize2, #about #race_program #program, #about #race_program #program2 {
  max-width: 760px;
  margin: 0 auto;
  margin-top: 20px
}

@media (max-width:768px) {
  #about #race_program #prize, #about #race_program #prize2, #about #race_program #program, #about #race_program #program2 {
    margin-top: 10px
  }
}

#about #race_program #program p, #about #race_program #program2 p {
  margin-bottom: 30px
}

@media (max-width:768px) {
  #about #race_program #program p, #about #race_program #program2 p {
    margin-bottom: 15px
  }
}

#about #race_program #program2 {
  margin-top: 60px
}

#about #race_program .program {
  border-bottom: 1px dashed #ddd
}

#about #race_program #prize, #about #race_program #prize2 {
  margin-top: 20px;
  border: 2px solid #231e69;
  border-radius: 5px
}

@media (max-width:768px) {
  #about #race_program #prize, #about #race_program #prize2 {
    margin-top: 10px
  }
}

#about #race_program #prize+p, #about #race_program #program+p {
  margin-top: 20px
}

#about #race_program #prize+p a.popupOpen, #about #race_program #program+p a.popupOpen {
  cursor: pointer
}

#about #race_program #prize+p a.popupOpen:hover, #about #race_program #program+p a.popupOpen:hover {
  opacity: .7
}

#about #race_program .prize {
  padding: 5px 10px;
  text-align: center;
  color: #231e69
}

#about #race_program .prize .prize--header {
  font-size: 2rem;
  border-bottom: 1px solid #231e69;
  padding-bottom: 5px;
  font-style: italic;
  font-weight: 700
}

#about #race_program .prize .prize--header i {
  vertical-align: middle;
  width: 32px;
  margin-right: 10px
}

#about #race_program .prize .prize--header i svg {
  width: 32px
}

#about #race_program .prize .prize--header i svg path {
  fill: #231e69
}

#about #race_program .prize .prize--body {
  font-style: italic;
  font-size: 7rem;
  line-height: 1;
  padding: 10px
}

#about #race_program .prize .prize--body span.val {
  font-family: Rubik
}

#about #race_program .prize .prize--body span.unit {
  font-weight: 700;
  font-size: 2.5rem
}

#about #race_program #prize2 .prize {
  color: #e66496
}

#about #race_program #prize2 .prize .prize--header {
  border-bottom: 1px solid #e66496
}

#about #race_program #prize2 .prize .prize--header i svg path {
  fill: #e66496
}

#about #race_table {
  background: -webkit-gradient(linear, left top, left bottom, from(#19052d), to(#231e69));
  background: linear-gradient(180deg, #19052d, #231e69)
}

#about #race_table .st-ContentBoxHeader {
  color: #fff
}

#about #race_table #js-raceinfo {
  background: #fff;
  max-width: 960px;
  margin: 0 auto
}

#about #race_table #js-raceinfo .raceinfoWrapper {
  padding: 20px
}

#about #chari_ranger {
  background: #de353c
}

#about #chari_ranger .st-ContentBoxHeader {
  color: #fff
}

#about #chari_ranger #rangers {
  margin-bottom: 60px
}

#about #chari_ranger #rangers+p {
  margin-bottom: 30px;
  text-align: center;
  color: #fff;
  font-weight: 700
}

#about #chari_ranger .st-ContentBoxHeader+p {
  margin-bottom: 30px;
  text-align: center;
  color: #fff;
  font-weight: 700
}

#about #chari_ranger #girls_rangers .ranger, #about #chari_ranger #rangers .ranger {
  background: #fff;
  border-radius: 10px;
  -webkit-box-shadow: 0 2px 5px 0 rgba(0, 0, 0, .11);
  box-shadow: 0 2px 5px 0 rgba(0, 0, 0, .11);
  margin-top: 20px;
  overflow: hidden;
  position: relative
}

#about #chari_ranger #girls_rangers .ranger.popupOpen, #about #chari_ranger #rangers .ranger.popupOpen {
  cursor: pointer
}

#about #chari_ranger #girls_rangers .ranger>div, #about #chari_ranger #rangers .ranger>div {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex
}

#about #chari_ranger #girls_rangers .ranger.girl, #about #chari_ranger #rangers .ranger.girl {
  background: #fbd2e0
}

#about #chari_ranger #girls_rangers .ranger.girl .expectation, #about #chari_ranger #rangers .ranger.girl .expectation {
  background: #e97498;
  color: #fff
}

#about #chari_ranger #girls_rangers .ranger:nth-child(1), #about #chari_ranger #girls_rangers .ranger:nth-child(2), #about #chari_ranger #girls_rangers .ranger:nth-child(3), #about #chari_ranger #rangers .ranger:nth-child(1), #about #chari_ranger #rangers .ranger:nth-child(2), #about #chari_ranger #rangers .ranger:nth-child(3) {
  margin-top: 0
}

@media (max-width:1100px) {
  #about #chari_ranger #girls_rangers .ranger, #about #chari_ranger #rangers .ranger {
    margin-top: 20px
  }
  #about #chari_ranger #girls_rangers .ranger:nth-child(1), #about #chari_ranger #rangers .ranger:nth-child(1) {
    margin-top: 0
  }
  #about #chari_ranger #girls_rangers .ranger:nth-child(2), #about #chari_ranger #rangers .ranger:nth-child(2) {
    margin-top: 0
  }
  #about #chari_ranger #girls_rangers .ranger:nth-child(3), #about #chari_ranger #rangers .ranger:nth-child(3) {
    margin-top: 20px
  }
}

@media (max-width:768px) {
  #about #chari_ranger #girls_rangers .ranger, #about #chari_ranger #rangers .ranger {
    margin-top: 10px
  }
  #about #chari_ranger #girls_rangers .ranger:nth-child(1), #about #chari_ranger #rangers .ranger:nth-child(1) {
    margin-top: 0
  }
  #about #chari_ranger #girls_rangers .ranger:nth-child(2), #about #chari_ranger #rangers .ranger:nth-child(2) {
    margin-top: 0
  }
  #about #chari_ranger #girls_rangers .ranger:nth-child(3), #about #chari_ranger #rangers .ranger:nth-child(3) {
    margin-top: 10px
  }
}

#about #chari_ranger #girls_rangers .ranger .toComment, #about #chari_ranger #rangers .ranger .toComment {
  text-indent: -9999px;
  width: 100px;
  position: absolute;
  top: 20px;
  right: 20px;
  height: 14px;
  background: url(../img/comment.png) right center no-repeat;
  background-size: auto 14px;
  z-index: 12
}

@media (max-width:768px) {
  #about #chari_ranger #girls_rangers .ranger .toComment, #about #chari_ranger #rangers .ranger .toComment {
    top: 10px;
    right: 10px;
    height: 7px;
    background-size: auto 7px
  }
}

#about #chari_ranger #girls_rangers .ranger .profile, #about #chari_ranger #rangers .ranger .profile {
  -ms-flex-item-align: center;
  align-self: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  padding: 20px;
  padding-bottom: 0;
  position: relative;
  z-index: 10
}

@media (max-width:768px) {
  #about #chari_ranger #girls_rangers .ranger .profile, #about #chari_ranger #rangers .ranger .profile {
    padding: 10px;
    padding-bottom: 0
  }
}

#about #chari_ranger #girls_rangers .ranger .profile div:nth-child(2), #about #chari_ranger #rangers .ranger .profile div:nth-child(2) {
  padding-left: 20px
}

@media (max-width:768px) {
  #about #chari_ranger #girls_rangers .ranger .profile div:nth-child(2), #about #chari_ranger #rangers .ranger .profile div:nth-child(2) {
    padding-left: 10px
  }
}

#about #chari_ranger #girls_rangers .ranger .profile img, #about #chari_ranger #rangers .ranger .profile img {
  border-radius: 5px;
  vertical-align: top;
  width: 120px;
  height: auto
}

@media (max-width:768px) {
  #about #chari_ranger #girls_rangers .ranger .profile img, #about #chari_ranger #rangers .ranger .profile img {
    border-radius: 5px;
    width: 55px
  }
}

@media (max-width:374px) {
  #about #chari_ranger #girls_rangers .ranger .profile img, #about #chari_ranger #rangers .ranger .profile img {
    width: 45px
  }
}

#about #chari_ranger #girls_rangers .ranger .profile h5, #about #chari_ranger #rangers .ranger .profile h5 {
  font-size: 2rem
}

@media (max-width:768px) {
  #about #chari_ranger #girls_rangers .ranger .profile h5, #about #chari_ranger #rangers .ranger .profile h5 {
    font-size: 1.3rem
  }
}

@media (max-width:374px) {
  #about #chari_ranger #girls_rangers .ranger .profile h5, #about #chari_ranger #rangers .ranger .profile h5 {
    font-size: 1.1rem
  }
}

#about #chari_ranger #girls_rangers .ranger .profile p, #about #chari_ranger #rangers .ranger .profile p {
  font-size: 1.2rem;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis
}

@media (max-width:768px) {
  #about #chari_ranger #girls_rangers .ranger .profile p, #about #chari_ranger #rangers .ranger .profile p {
    font-size: .9rem
  }
}

@media (max-width:374px) {
  #about #chari_ranger #girls_rangers .ranger .profile p, #about #chari_ranger #rangers .ranger .profile p {
    font-size: .8rem
  }
}

#about #chari_ranger #girls_rangers .ranger .profile .race, #about #chari_ranger #rangers .ranger .profile .race {
  color: #fff;
  width: 100px;
  height: 30px;
  line-height: 30px;
  text-align: center;
  display: inline-block;
  border-radius: 30px;
  font-size: 13px;
  margin-top: .5em
}

@media (max-width:768px) {
  #about #chari_ranger #girls_rangers .ranger .profile .race, #about #chari_ranger #rangers .ranger .profile .race {
    margin-top: .25em;
    margin-bottom: .25em;
    -webkit-transform-origin: 0 0;
    transform-origin: 0 0;
    -webkit-transform: scale(.5);
    transform: scale(.5)
  }
}

#about #chari_ranger #girls_rangers .ranger .profile .race.dream, #about #chari_ranger #rangers .ranger .profile .race.dream {
  background: #55be37
}

#about #chari_ranger #girls_rangers .ranger .profile .race.orion, #about #chari_ranger #rangers .ranger .profile .race.orion {
  background: #00b3e6
}

#about #chari_ranger #girls_rangers .ranger .profile .race.qualifying, #about #chari_ranger #rangers .ranger .profile .race.qualifying {
  background: #de353c
}

#about #chari_ranger #girls_rangers .ranger .profile .race.trial-a, #about #chari_ranger #rangers .ranger .profile .race.trial-a {
  background: #b9af64
}

#about #chari_ranger #girls_rangers .ranger .profile .race.trial-b, #about #chari_ranger #rangers .ranger .profile .race.trial-b {
  background: #55be37
}

#about #chari_ranger #girls_rangers .ranger .expectation, #about #chari_ranger #rangers .ranger .expectation {
  height: 150%;
  display: block;
  padding: 40px 20px 20px;
  position: relative;
  top: -20px;
  margin-bottom: -20px;
  line-height: 1.2;
  font-size: 1.4rem;
  background: #fff5f5
}

@media (max-width:768px) {
  #about #chari_ranger #girls_rangers .ranger .expectation, #about #chari_ranger #rangers .ranger .expectation {
    padding: 20px 10px 10px;
    top: -10px;
    margin-bottom: -10px;
    font-size: .8rem
  }
}

#expectation #member_expectation {
  background: #f6f6f6
}

#expectation #member_expectation #members .member {
  background: #fff;
  border-radius: 10px;
  -webkit-box-shadow: 0 2px 5px 0 rgba(0, 0, 0, .11);
  box-shadow: 0 2px 5px 0 rgba(0, 0, 0, .11);
  padding: 20px;
  padding-bottom: 10px;
  margin-top: 20px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column
}

#expectation #member_expectation #members .member>div {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex
}

@media (max-width:768px) {
  #expectation #member_expectation #members .member {
    padding: 10px;
    padding-bottom: 0
  }
}

#expectation #member_expectation #members .member:nth-child(1), #expectation #member_expectation #members .member:nth-child(2) {
  margin-top: 0
}

@media (max-width:1100px) {
  #expectation #member_expectation #members .member {
    margin-top: 20px
  }
  #expectation #member_expectation #members .member:nth-child(1) {
    margin-top: 0
  }
  #expectation #member_expectation #members .member:nth-child(2) {
    margin-top: 20px
  }
}

@media (max-width:768px) {
  #expectation #member_expectation #members .member {
    margin-top: 10px
  }
  #expectation #member_expectation #members .member:nth-child(1) {
    margin-top: 0
  }
  #expectation #member_expectation #members .member:nth-child(2) {
    margin-top: 10px
  }
}

#expectation #member_expectation #members .member>div {
  -ms-flex-negative: 0;
  flex-shrink: 0;
  -webkit-box-flex: 0;
  -ms-flex-positive: 0;
  flex-grow: 0
}

#expectation #member_expectation #members .member .profile {
  position: relative;
  padding-bottom: 15px;
  -ms-flex-item-align: center;
  align-self: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -ms-flex-negative: 1;
  flex-shrink: 1;
  -webkit-box-flex: 1;
  -ms-flex-positive: 1;
  flex-grow: 1
}

#expectation #member_expectation #members .member .profile div:nth-child(2) {
  padding-left: 20px
}

#expectation #member_expectation #members .member .profile img {
  width: 120px;
  height: auto
}

@media (max-width:768px) {
  #expectation #member_expectation #members .member .profile img {
    width: 60px
  }
}

#expectation #member_expectation #members .member .profile h5 {
  padding-right: 44px;
  font-size: 1.9rem;
  line-height: 1.4
}

@media (max-width:768px) {
  #expectation #member_expectation #members .member .profile h5 {
    font-size: 1.3rem;
    padding-right: 40px
  }
}

#expectation #member_expectation #members .member .profile p {
  margin-top: .5em;
  font-size: 1.2rem
}

@media (max-width:768px) {
  #expectation #member_expectation #members .member .profile p {
    font-size: .8rem
  }
}

#expectation #member_expectation #members .member .profile .link {
  position: absolute;
  right: 10px;
  top: 10px;
  line-height: 1
}

#expectation #member_expectation #members .member .profile .link:hover {
  opacity: .7
}

@media (max-width:768px) {
  #expectation #member_expectation #members .member .profile .link {
    top: 3px
  }
}

#expectation #member_expectation #members .member .profile .link img {
  width: 31px;
  height: auto;
  vertical-align: top
}

@media (max-width:768px) {
  #expectation #member_expectation #members .member .profile .link img {
    width: 20px
  }
}

#expectation #member_expectation #members .member .expectation {
  border-top: 1px dashed #ddd;
  font-size: 1.2rem;
  padding: 10px 0;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  color: #de353c
}

@media (max-width:768px) {
  #expectation #member_expectation #members .member .expectation {
    padding: 10px 0;
    font-size: .9rem
  }
}

#expectation #member_expectation #members .member .expectation a.button {
  max-width: 100%
}

@media (max-width:768px) {
  #expectation #member_expectation #members .member .expectation a.button {
    max-width: 100%
  }
}

#expectation #member_expectation #members .member .expectation a.button:not(.popupOpen) {
  pointer-events: none;
  background: #ddd
}

#expectation #member_expectation #members .member .expectation>* {
  width: 100%;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  -webkit-box-flex: 0;
  -ms-flex-positive: 0;
  flex-grow: 0;
  -ms-flex-item-align: center;
  align-self: center
}

#expectation #member_expectation #members .member .expectation>:nth-child(2), #expectation #member_expectation #members .member .expectation>:nth-child(3) {
  -ms-flex-preferred-size: calc(35.11% - 10px);
  flex-basis: calc(35.11% - 10px)
}

#expectation #member_expectation #members .member .expectation>:nth-child(2):last-child {
  -ms-flex-preferred-size: calc(70.22% - 5px);
  flex-basis: calc(70.22% - 5px)
}

@media (max-width:768px) {
  #expectation #member_expectation #members .member .expectation>:nth-child(2), #expectation #member_expectation #members .member .expectation>:nth-child(3) {
    -ms-flex-preferred-size: calc(39.78% - 5px);
    flex-basis: calc(39.78% - 5px)
  }
  #expectation #member_expectation #members .member .expectation>:nth-child(2):last-child {
    -ms-flex-preferred-size: calc(79.56% - 2.5px);
    flex-basis: calc(79.56% - 2.5px)
  }
}

#expectation #member_expectation #members .member .expectation>* .button {
  text-align: center
}

#expectation #data_analysis {
  background: #f6f6f6
}

#expectation #data_analysis .acc {
  background: #fff;
  -webkit-box-shadow: 0 2px 5px 0 rgba(0, 0, 0, .11);
  box-shadow: 0 2px 5px 0 rgba(0, 0, 0, .11);
  border-radius: 10px
}

@media (max-width:768px) {
  #expectation #data_analysis .acc {
    border-radius: 5px
  }
}

#expectation #data_analysis .acc+.acc {
  margin-top: 20px
}

@media (max-width:768px) {
  #expectation #data_analysis .acc+.acc {
    margin-top: 10px
  }
}

#expectation #data_analysis .acc .flexbox2>div:first-child {
  -ms-flex-preferred-size: calc(50% - 20px)!important;
  flex-basis: calc(50% - 20px)!important
}

#expectation #data_analysis .acc .flexbox2>div:last-child {
  -ms-flex-preferred-size: calc(50% - 20px)!important;
  flex-basis: calc(50% - 20px)!important
}

#expectation #data_analysis .acc.data-0 .flexbox2>div:first-child {
  -ms-flex-preferred-size: calc(34% - 20px)!important;
  flex-basis: calc(34% - 20px)!important
}

#expectation #data_analysis .acc.data-0 .flexbox2>div:last-child {
  -ms-flex-preferred-size: calc(66% - 20px)!important;
  flex-basis: calc(66% - 20px)!important
}

#expectation #data_analysis .acc .acc--body {
  margin: 0 20px;
  border-top: 1px solid #ddd;
  padding: 30px 30px 40px;
  display: none
}

#expectation #data_analysis .acc .acc--body figcaption, #expectation #data_analysis .acc .acc--body small {
  font-size: 1.2rem;
  display: inline-block;
  line-height: 1.5;
  color: #666
}

#expectation #data_analysis .acc .acc--body figcaption {
  line-height: 2
}

@media (max-width:768px) {
  #expectation #data_analysis .acc .acc--body {
    margin: 0 10px;
    padding: 10px 10px 20px
  }
}

#expectation #data_analysis .acc .acc--body em {
  color: #de353c;
  font-style: normal
}

#expectation #data_analysis .acc .acc--body>div:not(.flexbox2)>*+* {
  margin-top: 20px
}

@media (max-width:768px) {
  #expectation #data_analysis .acc .acc--body>div:not(.flexbox2)>*+* {
    margin-top: 10px
  }
}

#expectation #data_analysis .acc .acc--body .flexbox2>div>*+* {
  margin-top: 20px
}

@media (max-width:768px) {
  #expectation #data_analysis .acc .acc--body .flexbox2>div>*+* {
    margin-top: 10px
  }
}

@media (max-width:1100px) {
  #expectation #data_analysis .acc .acc--body .flexbox2>div+* {
    margin-top: 20px
  }
}

@media (max-width:1100px) and (max-width:768px) {
  #expectation #data_analysis .acc .acc--body .flexbox2>div+* {
    margin-top: 10px
  }
}

#expectation #data_analysis .acc .acc--body figure, #expectation #data_analysis .acc .acc--body img {
  display: block;
  width: 100%;
  max-width: 100%;
  max-width: 460px;
  height: auto;
  margin: 0 auto
}

#expectation #data_analysis .acc.is-active .acc--header {
  color: #de353c
}

#expectation #data_analysis .acc.is-active .acc--header:before {
  display: none
}

#expectation #data_analysis .acc .acc--header {
  height: 60px;
  padding: 20px 30px;
  font-size: 2rem;
  line-height: 1;
  font-weight: 700;
  cursor: pointer;
  position: relative
}

@media (max-width:768px) {
  #expectation #data_analysis .acc .acc--header {
    height: 50px;
    padding: 16px 15px
  }
}

@media (max-width:768px) {
  #expectation #data_analysis .acc .acc--header {
    font-size: 1.4rem
  }
}

#expectation #data_analysis .acc .acc--header:hover {
  color: #de353c
}

#expectation #data_analysis .acc .acc--header i {
  vertical-align: middle;
  margin-right: 20px
}

@media (max-width:768px) {
  #expectation #data_analysis .acc .acc--header i {
    margin-right: 10px
  }
}

#expectation #data_analysis .acc .acc--header i svg {
  width: 32px
}

@media (max-width:768px) {
  #expectation #data_analysis .acc .acc--header i svg {
    width: 22px
  }
}

#expectation #data_analysis .acc .acc--header i svg path {
  fill: #de353c
}

#expectation #data_analysis .acc .acc--header:after {
  content: "";
  position: absolute;
  right: 23px;
  top: 50%;
  width: 15px;
  height: 1px;
  background: #de353c
}

@media (max-width:768px) {
  #expectation #data_analysis .acc .acc--header:after {
    right: 12px;
    width: 11px
  }
}

#expectation #data_analysis .acc .acc--header:before {
  content: "";
  position: absolute;
  right: 30px;
  top: 50%;
  margin-top: -7px;
  width: 1px;
  height: 15px;
  background: #de353c
}

@media (max-width:768px) {
  #expectation #data_analysis .acc .acc--header:before {
    right: 17px;
    height: 11px;
    margin-top: -5px
  }
}

#about .acc {
  max-width: 1040px;
  margin: 0 auto;
  margin-top: 50px;
  background: #f6f6f6;
  -webkit-box-shadow: 0 2px 5px 0 rgba(0, 0, 0, .11);
  box-shadow: 0 2px 5px 0 rgba(0, 0, 0, .11);
  border-radius: 10px;
  overflow: hidden
}

@media (max-width:768px) {
  #about .acc {
    margin-top: 30px
  }
}

@media (max-width:768px) {
  #about .acc {
    border-radius: 5px
  }
}

#about .acc+.acc {
  margin-top: 50px
}

#about .acc .flexbox2>div:first-child {
  -ms-flex-preferred-size: calc(50% - 20px)!important;
  flex-basis: calc(50% - 20px)!important
}

#about .acc .flexbox2>div:last-child {
  -ms-flex-preferred-size: calc(50% - 20px)!important;
  flex-basis: calc(50% - 20px)!important
}

#about .acc.data-0 .flexbox2>div:first-child {
  -ms-flex-preferred-size: calc(34% - 20px)!important;
  flex-basis: calc(34% - 20px)!important
}

#about .acc.data-0 .flexbox2>div:last-child {
  -ms-flex-preferred-size: calc(66% - 20px)!important;
  flex-basis: calc(66% - 20px)!important
}

#about .acc .acc--body {
  text-align: left;
  margin: 0 20px;
  border-top: 1px solid #ddd;
  padding: 30px 30px 40px;
  display: none
}

#about .acc .acc--body>div {
  text-align: center;
  max-width: 640px;
  margin: 0 auto;
  margin-top: 2em
}

#about .acc .acc--body h4, #about .acc .acc--body h5 {
  font-size: 18px;
  margin-bottom: 1em
}

@media (max-width:768px) {
  #about .acc .acc--body h4, #about .acc .acc--body h5 {
    font-size: 15px
  }
}

#about .acc .acc--body p {
  margin-bottom: 2em
}

@media (max-width:768px) {
  #about .acc .acc--body {
    margin: 0 10px;
    padding: 10px 10px 20px
  }
}

#about .acc .acc--body .youtube {
  position: relative;
  width: 100%;
  padding-top: 56.25%
}

#about .acc .acc--body .youtube iframe, #about .acc .acc--body .youtube video {
  position: absolute;
  top: 0;
  right: 0;
  width: 100%;
  height: 100%
}

#about .acc .acc--body a:hover {
  opacity: .7;
  vertical-align: top
}

#about .acc .acc--body img {
  width: 100%;
  height: auto;
  max-width: 640px;
  -webkit-box-shadow: 0 2px 5px 0 rgba(0, 0, 0, .11);
  box-shadow: 0 2px 5px 0 rgba(0, 0, 0, .11)
}

#about .acc.is-active .acc--header {
  background-color: #f6f6f6;
  color: #de353c
}

#about .acc.is-active .acc--header:before {
  display: none
}

#about .acc.is-active .acc--header:after, #about .acc.is-active .acc--header:before {
  background: #de353c
}

#about .acc .acc--header {
  background-color: #de353c;
  background-image: url(../img/past-race.png);
  background-repeat: no-repeat;
  background-position: right 50px top 0;
  background-size: auto 100%;
  color: #f6f6f6;
  text-align: left;
  height: 60px;
  padding: 20px 30px;
  font-size: 2rem;
  line-height: 1;
  font-weight: 700;
  cursor: pointer;
  position: relative
}

@media (max-width:768px) {
  #about .acc .acc--header {
    background-position: right 44px top 0;
    height: 50px;
    padding: 16px 15px
  }
}

@media (max-width:768px) {
  #about .acc .acc--header {
    font-size: 1.4rem
  }
}

#about .acc .acc--header:hover {
  color: #de353c;
  background-color: #f6f6f6
}

#about .acc .acc--header:hover:after, #about .acc .acc--header:hover:before {
  background: #de353c
}

#about .acc .acc--header:after {
  content: "";
  position: absolute;
  right: 23px;
  top: 50%;
  width: 15px;
  height: 1px;
  background: #fff
}

@media (max-width:768px) {
  #about .acc .acc--header:after {
    right: 12px;
    width: 11px
  }
}

#about .acc .acc--header:before {
  content: "";
  position: absolute;
  right: 30px;
  top: 50%;
  margin-top: -7px;
  width: 1px;
  height: 15px;
  background: #fff
}

@media (max-width:768px) {
  #about .acc .acc--header:before {
    right: 17px;
    height: 11px;
    margin-top: -5px
  }
}

#campaign .st-ContentHeader {
  padding-bottom: 30px
}

@media (max-width:768px) {
  #campaign .st-ContentHeader {
    padding-bottom: 20px
  }
}

#campaign #banners {
  margin-top: 60px;
  text-align: center
}

@media (max-width:768px) {
  #campaign #banners {
    margin-top: 40px
  }
}

#campaign .st-ContentBoxInner {
  padding: 0 30px 60px
}

@media (max-width:768px) {
  #campaign .st-ContentBoxInner {
    padding: 0 20px 40px
  }
}

#campaign .st-ContentBoxInner .banner:first-child:last-child {
  margin: 0 auto
}

#campaign .st-ContentBoxInner .banner.one {
  text-align: center
}

@media (max-width:768px) {
  #campaign .st-ContentBoxInner .banner.one {
    text-align: left
  }
}

@media (max-width:1100px) {
  #campaign .st-ContentBoxInner .banner {
    max-width: 500px;
    margin: 0 auto
  }
  #campaign .st-ContentBoxInner .banner:nth-child(2) {
    margin-top: 20px
  }
}

#campaign .st-ContentBoxInner .banner h4 {
  color: #de353c;
  font-weight: 700;
  font-size: 1.6rem;
  margin-top: 10px;
  margin-bottom: 10px
}

@media (max-width:768px) {
  #campaign .st-ContentBoxInner .banner h4 {
    font-size: 1.4rem
  }
}

#campaign .st-ContentBoxInner .banner a {
  display: block;
  overflow: hidden;
  position: relative
}

#campaign .st-ContentBoxInner .banner a.soon {
  pointer-events: none
}

#campaign .st-ContentBoxInner .banner a:hover img {
  -webkit-transform: scale(1.05);
  transform: scale(1.05)
}

#campaign .st-ContentBoxInner .banner a:hover:after {
  opacity: 1;
  border: 6px solid #e60012
}

#campaign .st-ContentBoxInner .banner a:after {
  opacity: 0;
  pointer-events: none;
  border: 6px solid #ddd;
  display: block;
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0
}

#campaign .st-ContentBoxInner .banner img {
  vertical-align: top;
  width: 100%;
  height: auto;
  -webkit-transition: -webkit-transform .4s ease;
  transition: -webkit-transform .4s ease;
  transition: transform .4s ease;
  transition: transform .4s ease, -webkit-transform .4s ease
}

.flexbox2-2 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between
}

.flexbox2-2>* {
  -webkit-box-flex: 0;
  -ms-flex-positive: 0;
  flex-grow: 0;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  -ms-flex-preferred-size: calc(50% - 10px);
  flex-basis: calc(50% - 10px);
  margin: 0
}

@media (max-width:768px) {
  .flexbox2-2>* {
    margin: 0 auto
  }
}

.flexbox2 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between
}

@media (max-width:1100px) {
  .flexbox2 {
    display: block
  }
}

.flexbox2>* {
  -webkit-box-flex: 0;
  -ms-flex-positive: 0;
  flex-grow: 0;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  -ms-flex-preferred-size: calc(50% - 10px);
  flex-basis: calc(50% - 10px);
  margin: 0
}

@media (max-width:768px) {
  .flexbox2>* {
    margin: 0 auto
  }
}

.flexbox3 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  position: relative;
  left: -10px;
  right: -10px;
  width: calc(100% + 20px)
}

@media (max-width:768px) {
  .flexbox3 {
    left: -5px;
    right: -5px;
    width: calc(100% + 10px)
  }
}

.flexbox3>* {
  -webkit-box-flex: 0;
  -ms-flex-positive: 0;
  flex-grow: 0;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  margin: 0;
  margin-left: 10px;
  margin-right: 10px;
  -ms-flex-preferred-size: calc(33.33% - 20px);
  flex-basis: calc(33.33% - 20px)
}

@media (max-width:1100px) {
  .flexbox3>* {
    -ms-flex-preferred-size: calc(50% - 20px);
    flex-basis: calc(50% - 20px)
  }
}

@media (max-width:768px) {
  .flexbox3>* {
    -ms-flex-preferred-size: calc(50% - 10px);
    flex-basis: calc(50% - 10px);
    margin: 0 auto;
    margin-left: 5px;
    margin-right: 5px
  }
}

#register {
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 10000;
  background: rgba(0, 0, 0, .8);
  text-align: center;
  padding: 10px 0;
  height: 80px;
  -webkit-transition: -webkit-transform .2s ease;
  transition: -webkit-transform .2s ease;
  transition: transform .2s ease;
  transition: transform .2s ease, -webkit-transform .2s ease;
  -webkit-transform: translate3d(0, 100%, 0);
  transform: translate3d(0, 100%, 0)
}

#register #scrollTop {
  cursor: pointer;
  position: absolute;
  right: 20px;
  top: 10px;
  width: 60px;
  height: 60px
}

#register #scrollTop img {
  width: 100%;
  height: auto
}

#register a.button {
  -webkit-box-shadow: none!important;
  box-shadow: none!important
}

@media (max-width:768px) {
  #register {
    display: none!important
  }
}

#register.show {
  -webkit-transition: -webkit-transform .4s ease;
  transition: -webkit-transform .4s ease;
  transition: transform .4s ease;
  transition: transform .4s ease, -webkit-transform .4s ease;
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0)
}

#popup {
  display: none;
  background: rgba(222, 53, 60, .9);
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  overflow: auto;
  z-index: 100000
}

#popup.show {
  display: block;
  -webkit-animation: fadeIn .4s ease 0s;
  animation: fadeIn .4s ease 0s
}

#popup.show #popupContent {
  -webkit-animation: slideUp 1s ease 0s;
  animation: slideUp 1s ease 0s;
  -webkit-transition-timing-function: cubic-bezier(.19, 1, .22, 1);
  transition-timing-function: cubic-bezier(.19, 1, .22, 1);
  -webkit-animation-timing-function: cubic-bezier(.19, 1, .22, 1);
  animation-timing-function: cubic-bezier(.19, 1, .22, 1)
}

#popup #popupInner {
  display: table;
  height: 100%;
  width: 100%;
  padding: 30px
}

@media (max-width:768px) {
  #popup #popupInner {
    padding: 30px
  }
}

#popup #popupInner>div {
  display: table-cell;
  vertical-align: middle
}

#popup #popupClose {
  cursor: pointer;
  outline: 0;
  background: #fff;
  position: absolute;
  border: 1px solid #de353c;
  width: 40px;
  height: 40px;
  right: -20px;
  top: -20px;
  border-radius: 40px
}

@media (max-width:768px) {
  #popup #popupClose {
    width: 40px;
    height: 40px;
    right: -20px;
    top: -20px;
    border-radius: 40px
  }
}

#popup #popupClose span {
  position: relative
}

#popup #popupClose span:after, #popup #popupClose span:before {
  content: "";
  display: block;
  position: absolute;
  top: -8px;
  left: -1px;
  width: 2px;
  height: 16px;
  background: #de353c
}

@media (max-width:768px) {
  #popup #popupClose span:after, #popup #popupClose span:before {
    top: -8px;
    left: -1px;
    width: 2px;
    height: 15px
  }
}

#popup #popupClose span:before {
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg)
}

#popup #popupClose span:after {
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg)
}

#popup #popupContent {
  position: relative;
  border-radius: 8px;
  background: #fff;
  max-width: 768px;
  margin: 0 auto;
  -ms-flex-item-align: center;
  align-self: center;
  padding: 40px
}

@media (max-width:768px) {
  #popup #popupContent {
    padding: 20px 20px 15px
  }
}

#popup #popupContent.img {
  max-width: 384px
}

#popup .img img {
  width: 100%;
  height: auto
}

#popup *+.member {
  margin-top: 30px
}

#popup .member {
  text-align: center
}

#popup .member img {
  width: 120px;
  height: auto
}

@media (max-width:768px) {
  #popup .member img {
    width: 60px
  }
}

#popup .member h5 {
  margin-top: 10px;
  margin-bottom: 20px;
  font-size: 1.6rem
}

@media (max-width:768px) {
  #popup .member h5 {
    margin-top: 5px;
    margin-bottom: 10px
  }
}

@media (max-width:768px) {
  #popup .member h5 {
    font-size: 1.4rem
  }
}

#popup .member h4 {
  color: #de353c;
  font-style: italic;
  font-size: 2rem
}

#popup .member h4[data-race='男子'] {
  color: #231e69
}

#popup .member h4[data-race='女子'], #popup .member h4[data-race='女子'] {
  color: #e66496
}

@media (max-width:768px) {
  #popup .member h4 {
    font-size: 1.8rem
  }
}

#popup .member+div {
  border-top: 1px solid #ddd;
  margin-top: 20px;
  padding-top: 20px
}

@media (max-width:768px) {
  #popup .member+div {
    margin-top: 15px;
    padding-top: 15px
  }
}

@media (max-width:1100px) {
  #popup .raceEx.flexbox2 .img {
    text-align: center
  }
}

#popup .raceEx.flexbox2 img {
  width: 100%;
  height: auto;
  max-width: 335px
}

@media (max-width:1100px) {
  #popup .raceEx.flexbox2>div:last-child {
    margin-top: 20px;
    border-top: 1px solid #ddd;
    padding-top: 20px
  }
}

#popup .playerInfo.flexbox2>div:first-child {
  -ms-flex-preferred-size: calc(22% - 20px);
  flex-basis: calc(22% - 20px)
}

@media (max-width:768px) {
  #popup .playerInfo.flexbox2>div:first-child {
    margin: 0 auto
  }
}

#popup .playerInfo.flexbox2>div:last-child {
  -ms-flex-preferred-size: calc(78% - 20px);
  flex-basis: calc(78% - 20px)
}

@media (max-width:1100px) {
  #popup .playerInfo.flexbox2>div:last-child {
    margin-top: 20px;
    border-top: 1px solid #ddd;
    padding-top: 20px
  }
}

#popup .playerInfo.flexbox2>div:last-child h6 {
  color: #de353c;
  font-weight: 400;
  font-style: italic;
  font-size: 1.6rem;
  margin-bottom: 10px
}

@media (max-width:1100px) {
  #popup .playerInfo.flexbox2>div:last-child h6 {
    text-align: center
  }
}

@media (max-width:768px) {
  #popup .playerInfo.flexbox2>div:last-child h6 {
    font-size: 1.4rem
  }
}

#popup .player {
  -ms-flex-item-align: center;
  align-self: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  padding-bottom: 0;
  position: relative;
  z-index: 10
}

@media (max-width:1100px) {
  #popup .player {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: 300px;
    margin: 0 auto
  }
}

@media (max-width:1100px) and (max-width:768px) {
  #popup .player {
    width: 170px
  }
}

#popup .player div:nth-child(2) {
  margin-top: 10px
}

@media (max-width:1100px) {
  #popup .player div:nth-child(2) {
    padding-left: 20px
  }
}

@media (max-width:768px) {
  #popup .player div:nth-child(2) {
    padding-left: 10px
  }
}

#popup .player img {
  border-radius: 5px;
  vertical-align: top;
  width: 120px;
  height: auto
}

@media (max-width:768px) {
  #popup .player img {
    border-radius: 5px;
    width: 60px
  }
}

#popup .player h5 {
  white-space: nowrap;
  font-size: 2.5rem
}

@media (max-width:768px) {
  #popup .player h5 {
    font-size: 1.3rem
  }
}

#popup .player p {
  white-space: nowrap;
  font-size: 1.5rem
}

@media (max-width:768px) {
  #popup .player p {
    font-size: .9rem
  }
}

@media (max-width:768px) {
  .expectation-finalgame {
    flex-basis: calc(79.56% - 2.5px) !important;
    width: 100% !important;
  }
}

@media (min-width:768px) {
  .expectation-finalgame {
    flex-basis: auto !important;
    width: 100% !important;
  }
}

.bodycopy {
  text-align: center;
  padding-top: 60px;
}

@media (max-width:768px) {
  .bodycopy {
    padding-top: 40px;
    padding-left: 20px;
    padding-right: 20px;
  }
}

#outlook .flexbox2-2 .profile+div .expectation:last-of-type {
  margin-top: 0;
}