@charset 'UTF-8';
html,body,div,span,object,iframe,h1,h2,h3,.hd-lv3,h4,h5,h6,p,blockquote,pre,abbr,address,cite,code,del,dfn,em,img,ins,kbd,q,samp,small,strong,sub,sup,var,b,i,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,figcaption,figure,footer,header,hgroup,menu,nav,section,summary,time,mark,audio,video,button {
  font-size: 100%;
  margin: 0;
  padding: 0;
  list-style: none; 
  vertical-align: baseline;
  border: 0;
  outline: 0;
  background: transparent;
}

img {
  vertical-align: bottom;
}

body {
  line-height: 1;
}

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

ul,ol {
  list-style: none;
}

blockquote,q {
  quotes: none;
}

blockquote:before,blockquote:after,q:before,q:after {
  content: '';
  content: none;
}

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

/* change colours to suit your needs */
ins {
  text-decoration: none; 
  color: #000;
  background-color: #ff9;
}

/* change colours to suit your needs */
mark {
  font-weight: bold; 
  font-style: italic;
  color: #000;
  background-color: #ff9;
}

del {
  text-decoration: line-through;
}

abbr[title],dfn[title] {
  cursor: help; 
  border-bottom: 1px dotted;
}

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

/* change border colour to suit your needs */
hr {
  display: block;
  height: 1px;
  margin: 1em 0;
  padding: 0; 
  border: 0;
  border-top: 1px solid #ccc;
}

input,select {
  vertical-align: middle;
}

textarea {
  resize: vertical;
}

label {
  -webkit-user-select: none;
}

a.link01,.link01 a,.subject-index__items>li>a {
  position: relative;
  display: inline-block;
}

a.link01:before,.link01 a:before,.subject-index__items>li>a:before {
  position: absolute;
  top: 100%;
  left: 0;
  width: 100%;
  height: 1px;
  content: '';
  transition: margin .3s, opacity .4s, -webkit-transform .4s;
  transition: margin .3s, opacity .4s, transform .4s;
  transition: margin .3s, opacity .4s, transform .4s, -webkit-transform .4s;
  -webkit-transform: translate3d(0, 0, 0);
          transform: translate3d(0, 0, 0); 
  opacity: 0;
  background: #000;

  -ms-filter: 'progid:DXImageTransform.Microsoft.Alpha(Opacity=0)';
}

a.link01:hover:before,.link01 a:hover:before,.subject-index__items>li>a:hover:before {
  margin-top: 1px;
  -webkit-transform: translate3d(0, 0, 0);
          transform: translate3d(0, 0, 0); 
  opacity: 1;

  -ms-filter: 'progid:DXImageTransform.Microsoft.Alpha(Opacity=100)';
}

* {
  box-sizing: border-box;
  word-break: break-all;
}

html,body {
  width: 100%;
}

html {
  font-size: 16px;
}

body {
  font-family: Roboto, 'Droid Sans', 'Yu Gothic Medium', '游ゴシック Medium', YuGothic, 'メイリオ', Meiryo, sans-serif;
  font-size: 16px;
  font-size: 1rem;
  line-height: 1;
  position: relative; 
  min-width: 3px;
  color: #333;

  -webkit-text-size-adjust: 100%;
}

main {
  position: relative;
}

main:after {
  display: block;
  clear: both; 
  content: '';
}

body,input,select,textarea,button {
  font-family: Roboto, 'Droid Sans', 'Yu Gothic Medium', '游ゴシック Medium', YuGothic, 'メイリオ', Meiryo, sans-serif;
}

@media screen and (max-width: 767px) {
  p {
    font-size: 14px;
    line-height: 1.57;
  }
}

main {
  display: block;
}

b {
  font-weight: normal;
}

i {
  font-style: normal;
}

figure,figcaption {
  margin: 0;
}

ul,ol {
  padding-left: 0;
  list-style: none;
}

a {
  color: #333;
}

hr {
  margin: 20px 0;
  border-top: 1px solid #ccc;
}

em {
  font-style: normal;
}

div,p,section,article,adide,dt,dd,th,dd,li,span,h1,h2,h3,.hd-lv3,h4,h5,h6 {
  background: url(/img/blank.png) no-repeat;
}

p,dt,dd,th,dd,li,span,h1,h2,h3,.hd-lv3,h4,h5,h6 {
  max-height: 100%;
}

figure figcaption {
  line-height: 1.75; 
  margin-top: 10px;
}

figure figcaption:first-child {
  margin-top: 0;
}

button {
  cursor: pointer;
}

sup {
  font-size: 1em;
  vertical-align: middle;
}

sub {
  font-size: 1em;
  vertical-align: baseline;
}

mark {
  font-weight: normal;
  font-style: normal;
  text-decoration: underline; 
  background: none;
}

:focus {
  outline: none;
}

@media screen and (max-width: 767px) {
  .is-pc-only {
    display: none !important;
  }
}

@media screen and (min-width: 768px), print {
  .is-sp-only {
    display: none !important;
  }
}

.is-hidden {
  display: none !important;
}

.u-w-auto {
  width: auto !important;
}

.u-w-full {
  width: 100% !important;
}

.u-w-half {
  width: 50% !important;
}

.u-w-min {
  width: 1px !important;
}

.u-maw-full {
  max-width: 100% !important;
}

@media screen and (min-width: 768px), print {
  .u-w-auto-pc {
    width: auto !important;
  }
  .u-w-full-pc {
    width: 100% !important;
  }
  .u-w-half-pc {
    width: 50% !important;
  }
}

@media screen and (max-width: 767px) {
  .u-w-auto-sp {
    width: auto !important;
  }
  .u-w-full-sp {
    width: 100% !important;
  }
  .u-w-half-sp {
    width: 50% !important;
  }
}

.u-h-auto {
  height: auto !important;
}

.u-h-full {
  height: 100% !important;
}

.u-h-half {
  height: 50% !important;
}

.u-h-min {
  height: 1px !important;
}

.u-maw-full {
  max-height: 100% !important;
}

.u-fl-l {
  float: left !important;
}

.u-fl-r {
  float: right !important;
}

.u-cf:after {
  display: block;
  clear: both; 
  content: '';
}

.u-cl-l {
  clear: left !important;
}

.u-cl-r {
  clear: right !important;
}

.u-cl-b {
  clear: botn !important;
}

.u-cl-n {
  clear: none !important;
}

.u-ta-l {
  text-align: left !important;
}

.u-ta-c {
  text-align: center !important;
}

.u-ta-r {
  text-align: right !important;
}

.u-va-t {
  vertical-align: top !important;
}

.u-va-m {
  vertical-align: middle !important;
}

.u-va-b {
  vertical-align: bottom !important;
}

.u-tva-lt {
  text-align: left !important;
  vertical-align: top !important;
}

.u-tva-lm {
  text-align: left !important;
  vertical-align: middle !important;
}

.u-tva-lb {
  text-align: left !important;
  vertical-align: bottom !important;
}

.u-tva-ct {
  text-align: center !important;
  vertical-align: top !important;
}

.u-tva-cm {
  text-align: center !important;
  vertical-align: middle !important;
}

.u-tva-cb {
  text-align: center !important;
  vertical-align: bottom !important;
}

.u-tva-rt {
  text-align: right !important;
  vertical-align: top !important;
}

.u-tva-rm {
  text-align: right !important;
  vertical-align: middle !important;
}

.u-tva-rb {
  text-align: right !important;
  vertical-align: bottom !important;
}

.u-bva-t {
  display: table;
  width: 100%;
}

.u-bva-t>* {
  display: table-cell;
  vertical-align: top !important;
}

.u-bva-m {
  display: table;
  width: 100%;
}

.u-bva-m>* {
  display: table-cell;
  vertical-align: middle !important;
}

.u-bva-b {
  display: table;
  width: 100%;
}

.u-bva-b>* {
  display: table-cell;
  vertical-align: bottom !important;
}

@media screen and (max-width: 767px) {
  .u-ta-l-sp {
    text-align: left !important;
  }
  .u-ta-c-sp {
    text-align: center !important;
  }
  .u-ta-r-sp {
    text-align: right !important;
  }
}

.u-fz-xs {
  font-size: 10px !important;
}

@media screen and (max-width: 767px) {
  .u-fz-xs {
    font-size: 10px !important;
  }
}

.u-fz-s {
  font-size: 12px !important;
}

@media screen and (max-width: 767px) {
  .u-fz-s {
    font-size: 12px !important;
  }
}

.u-fz-ms {
  font-size: 14px !important;
}

@media screen and (max-width: 767px) {
  .u-fz-ms {
    font-size: 14px !important;
  }
}

.u-fz-m {
  font-size: 16px !important;
  font-size: 1rem !important;
}

@media screen and (max-width: 767px) {
  .u-fz-m {
    font-size: 1rem !important;
  }
}

.u-fz-l {
  font-size: 18px !important;
}

@media screen and (max-width: 767px) {
  .u-fz-l {
    font-size: 18px !important;
  }
}

.u-fz-xl {
  font-size: 20px !important;
}

@media screen and (max-width: 767px) {
  .u-fz-xl {
    font-size: 20px !important;
  }
}

.u-fz-3l {
  font-size: 22px !important;
}

@media screen and (max-width: 767px) {
  .u-fz-3l {
    font-size: 22px !important;
  }
}

.u-fz-4l {
  font-size: 24px !important;
}

@media screen and (max-width: 767px) {
  .u-fz-4l {
    font-size: 24px !important;
  }
}

.u-fz-5l {
  font-size: 26px !important;
}

@media screen and (max-width: 767px) {
  .u-fz-5l {
    font-size: 26px !important;
  }
}

.u-fz-6l {
  font-size: 28px !important;
}

@media screen and (max-width: 767px) {
  .u-fz-6l {
    font-size: 28px !important;
  }
}

.u-fz-7l {
  font-size: 30px !important;
}

@media screen and (max-width: 767px) {
  .u-fz-7l {
    font-size: 30px !important;
  }
}

.u-fz-8l {
  font-size: 32px !important;
}

@media screen and (max-width: 767px) {
  .u-fz-8l {
    font-size: 32px !important;
  }
}

.u-fz-9l {
  font-size: 34px !important;
}

@media screen and (max-width: 767px) {
  .u-fz-9l {
    font-size: 34px !important;
  }
}

.u-fz-10l {
  font-size: 36px !important;
}

@media screen and (max-width: 767px) {
  .u-fz-10l {
    font-size: 36px !important;
  }
}

.u-fz-11l {
  font-size: 38px !important;
}

@media screen and (max-width: 767px) {
  .u-fz-11l {
    font-size: 38px !important;
  }
}

.u-fz-12l {
  font-size: 40px !important;
}

@media screen and (max-width: 767px) {
  .u-fz-12l {
    font-size: 40px !important;
  }
}

.u-fz-13l {
  font-size: 42px !important;
}

@media screen and (max-width: 767px) {
  .u-fz-13l {
    font-size: 42px !important;
  }
}

.u-fz-14l {
  font-size: 44px !important;
}

@media screen and (max-width: 767px) {
  .u-fz-14l {
    font-size: 44px !important;
  }
}

.u-fz-15l {
  font-size: 46px !important;
}

@media screen and (max-width: 767px) {
  .u-fz-15l {
    font-size: 46px !important;
  }
}

.u-fz-16l {
  font-size: 48px !important;
}

@media screen and (max-width: 767px) {
  .u-fz-16l {
    font-size: 48px !important;
  }
}

.u-fz-17l {
  font-size: 50px !important;
}

@media screen and (max-width: 767px) {
  .u-fz-17l {
    font-size: 50px !important;
  }
}

.u-fz-18l {
  font-size: 52px !important;
}

@media screen and (max-width: 767px) {
  .u-fz-18l {
    font-size: 52px !important;
  }
}

.u-fz-19l {
  font-size: 54px !important;
}

@media screen and (max-width: 767px) {
  .u-fz-19l {
    font-size: 54px !important;
  }
}

.u-fz-20l {
  font-size: 56px !important;
}

@media screen and (max-width: 767px) {
  .u-fz-20l {
    font-size: 56px !important;
  }
}

@media screen and (max-width: 767px) {
  .u-fz-xs-sp {
    font-size: 10px !important;
  }
  .u-fz-s-sp {
    font-size: 12px !important;
  }
  .u-fz-ms {
    font-size: 14px !important;
  }
  .u-fz-m-sp {
    font-size: 1rem !important;
  }
  .u-fz-l-sp {
    font-size: 18px !important;
  }
  .u-fz-xl-sp {
    font-size: 20px !important;
  }
  .u-fz-3l-sp {
    font-size: 22px !important;
  }
  .u-fz-4l-sp {
    font-size: 24px !important;
  }
  .u-fz-5l-sp {
    font-size: 26px !important;
  }
  .u-fz-6l-sp {
    font-size: 28px !important;
  }
  .u-fz-7l-sp {
    font-size: 30px !important;
  }
  .u-fz-8l-sp {
    font-size: 32px !important;
  }
  .u-fz-9l-sp {
    font-size: 34px !important;
  }
  .u-fz-10l-sp {
    font-size: 36px !important;
  }
  .u-fz-11l-sp {
    font-size: 38px !important;
  }
  .u-fz-12l-sp {
    font-size: 40px !important;
  }
  .u-fz-13l-sp {
    font-size: 42px !important;
  }
  .u-fz-14l-sp {
    font-size: 44px !important;
  }
  .u-fz-15l-sp {
    font-size: 46px !important;
  }
  .u-fz-16l-sp {
    font-size: 46px !important;
  }
  .u-fz-17l-sp {
    font-size: 48px !important;
  }
  .u-fz-18l-sp {
    font-size: 52px !important;
  }
  .u-fz-19l-sp {
    font-size: 54px !important;
  }
  .u-fz-20l-sp {
    font-size: 56px !important;
  }
}

.u-lh-l {
  line-height: 2 !important;
}

.u-lh-m {
  line-height: 1.5 !important;
}

.u-lh-s {
  line-height: 1.3 !important;
}

.u-lh-xs {
  line-height: 1 !important;
}

.u-fw-n {
  font-weight: normal !important;
}

.u-fw-b {
  font-weight: bold !important;
}

.u-fc-red {
  color: #c00 !important;
}

.u-fc-white {
  color: #fff !important;
}

.u-fc-gray {
  color: #777 !important;
}

.u-m-0 {
  margin: 0px !important;
}

.u-mv-0 {
  margin-top: 0px !important;
  margin-bottom: 0px !important;
}

.u-mh-0 {
  margin-right: 0px !important;
  margin-left: 0px !important;
}

.u-mt-0 {
  margin-top: 0px !important;
}

.u-mr-0 {
  margin-right: 0px !important;
}

.u-mb-0 {
  margin-bottom: 0px !important;
}

.u-ml-0 {
  margin-left: 0px !important;
}

.u-mtn-0 {
  margin-top: -0px !important;
}

.u-mrn-0 {
  margin-right: -0px !important;
}

.u-mbn-0 {
  margin-bottom: -0px !important;
}

.u-mln-0 {
  margin-left: -0px !important;
}

.u-p-0 {
  padding: 0px !important;
}

.u-pv-0 {
  padding-top: 0px !important;
  padding-bottom: 0px !important;
}

.u-ph-0 {
  padding-right: 0px !important;
  padding-left: 0px !important;
}

.u-pt-0 {
  padding-top: 0px !important;
}

.u-pr-0 {
  padding-right: 0px !important;
}

.u-pb-0 {
  padding-bottom: 0px !important;
}

.u-pl-0 {
  padding-left: 0px !important;
}

.u-m-5 {
  margin: 5px !important;
}

.u-mv-5 {
  margin-top: 5px !important;
  margin-bottom: 5px !important;
}

.u-mh-5 {
  margin-right: 5px !important;
  margin-left: 5px !important;
}

.u-mt-5 {
  margin-top: 5px !important;
}

.u-mr-5 {
  margin-right: 5px !important;
}

.u-mb-5 {
  margin-bottom: 5px !important;
}

.u-ml-5 {
  margin-left: 5px !important;
}

.u-mtn-5 {
  margin-top: -5px !important;
}

.u-mrn-5 {
  margin-right: -5px !important;
}

.u-mbn-5 {
  margin-bottom: -5px !important;
}

.u-mln-5 {
  margin-left: -5px !important;
}

.u-p-5 {
  padding: 5px !important;
}

.u-pv-5 {
  padding-top: 5px !important;
  padding-bottom: 5px !important;
}

.u-ph-5 {
  padding-right: 5px !important;
  padding-left: 5px !important;
}

.u-pt-5 {
  padding-top: 5px !important;
}

.u-pr-5 {
  padding-right: 5px !important;
}

.u-pb-5 {
  padding-bottom: 5px !important;
}

.u-pl-5 {
  padding-left: 5px !important;
}

.u-m-10 {
  margin: 10px !important;
}

.u-mv-10 {
  margin-top: 10px !important;
  margin-bottom: 10px !important;
}

.u-mh-10 {
  margin-right: 10px !important;
  margin-left: 10px !important;
}

.u-mt-10 {
  margin-top: 10px !important;
}

.u-mr-10 {
  margin-right: 10px !important;
}

.u-mb-10 {
  margin-bottom: 10px !important;
}

.u-ml-10 {
  margin-left: 10px !important;
}

.u-mtn-10 {
  margin-top: -10px !important;
}

.u-mrn-10 {
  margin-right: -10px !important;
}

.u-mbn-10 {
  margin-bottom: -10px !important;
}

.u-mln-10 {
  margin-left: -10px !important;
}

.u-p-10 {
  padding: 10px !important;
}

.u-pv-10 {
  padding-top: 10px !important;
  padding-bottom: 10px !important;
}

.u-ph-10 {
  padding-right: 10px !important;
  padding-left: 10px !important;
}

.u-pt-10 {
  padding-top: 10px !important;
}

.u-pr-10 {
  padding-right: 10px !important;
}

.u-pb-10 {
  padding-bottom: 10px !important;
}

.u-pl-10 {
  padding-left: 10px !important;
}

.u-m-15 {
  margin: 15px !important;
}

.u-mv-15 {
  margin-top: 15px !important;
  margin-bottom: 15px !important;
}

.u-mh-15 {
  margin-right: 15px !important;
  margin-left: 15px !important;
}

.u-mt-15 {
  margin-top: 15px !important;
}

.u-mr-15 {
  margin-right: 15px !important;
}

.u-mb-15 {
  margin-bottom: 15px !important;
}

.u-ml-15 {
  margin-left: 15px !important;
}

.u-mtn-15 {
  margin-top: -15px !important;
}

.u-mrn-15 {
  margin-right: -15px !important;
}

.u-mbn-15 {
  margin-bottom: -15px !important;
}

.u-mln-15 {
  margin-left: -15px !important;
}

.u-p-15 {
  padding: 15px !important;
}

.u-pv-15 {
  padding-top: 15px !important;
  padding-bottom: 15px !important;
}

.u-ph-15 {
  padding-right: 15px !important;
  padding-left: 15px !important;
}

.u-pt-15 {
  padding-top: 15px !important;
}

.u-pr-15 {
  padding-right: 15px !important;
}

.u-pb-15 {
  padding-bottom: 15px !important;
}

.u-pl-15 {
  padding-left: 15px !important;
}

.u-m-20 {
  margin: 20px !important;
}

.u-mv-20 {
  margin-top: 20px !important;
  margin-bottom: 20px !important;
}

.u-mh-20 {
  margin-right: 20px !important;
  margin-left: 20px !important;
}

.u-mt-20 {
  margin-top: 20px !important;
}

.u-mr-20 {
  margin-right: 20px !important;
}

.u-mb-20 {
  margin-bottom: 20px !important;
}

.u-ml-20 {
  margin-left: 20px !important;
}

.u-mtn-20 {
  margin-top: -20px !important;
}

.u-mrn-20 {
  margin-right: -20px !important;
}

.u-mbn-20 {
  margin-bottom: -20px !important;
}

.u-mln-20 {
  margin-left: -20px !important;
}

.u-p-20 {
  padding: 20px !important;
}

.u-pv-20 {
  padding-top: 20px !important;
  padding-bottom: 20px !important;
}

.u-ph-20 {
  padding-right: 20px !important;
  padding-left: 20px !important;
}

.u-pt-20 {
  padding-top: 20px !important;
}

.u-pr-20 {
  padding-right: 20px !important;
}

.u-pb-20 {
  padding-bottom: 20px !important;
}

.u-pl-20 {
  padding-left: 20px !important;
}

.u-m-25 {
  margin: 25px !important;
}

.u-mv-25 {
  margin-top: 25px !important;
  margin-bottom: 25px !important;
}

.u-mh-25 {
  margin-right: 25px !important;
  margin-left: 25px !important;
}

.u-mt-25 {
  margin-top: 25px !important;
}

.u-mr-25 {
  margin-right: 25px !important;
}

.u-mb-25 {
  margin-bottom: 25px !important;
}

.u-ml-25 {
  margin-left: 25px !important;
}

.u-mtn-25 {
  margin-top: -25px !important;
}

.u-mrn-25 {
  margin-right: -25px !important;
}

.u-mbn-25 {
  margin-bottom: -25px !important;
}

.u-mln-25 {
  margin-left: -25px !important;
}

.u-p-25 {
  padding: 25px !important;
}

.u-pv-25 {
  padding-top: 25px !important;
  padding-bottom: 25px !important;
}

.u-ph-25 {
  padding-right: 25px !important;
  padding-left: 25px !important;
}

.u-pt-25 {
  padding-top: 25px !important;
}

.u-pr-25 {
  padding-right: 25px !important;
}

.u-pb-25 {
  padding-bottom: 25px !important;
}

.u-pl-25 {
  padding-left: 25px !important;
}

.u-m-30 {
  margin: 30px !important;
}

.u-mv-30 {
  margin-top: 30px !important;
  margin-bottom: 30px !important;
}

.u-mh-30 {
  margin-right: 30px !important;
  margin-left: 30px !important;
}

.u-mt-30 {
  margin-top: 30px !important;
}

.u-mr-30 {
  margin-right: 30px !important;
}

.u-mb-30 {
  margin-bottom: 30px !important;
}

.u-ml-30 {
  margin-left: 30px !important;
}

.u-mtn-30 {
  margin-top: -30px !important;
}

.u-mrn-30 {
  margin-right: -30px !important;
}

.u-mbn-30 {
  margin-bottom: -30px !important;
}

.u-mln-30 {
  margin-left: -30px !important;
}

.u-p-30 {
  padding: 30px !important;
}

.u-pv-30 {
  padding-top: 30px !important;
  padding-bottom: 30px !important;
}

.u-ph-30 {
  padding-right: 30px !important;
  padding-left: 30px !important;
}

.u-pt-30 {
  padding-top: 30px !important;
}

.u-pr-30 {
  padding-right: 30px !important;
}

.u-pb-30 {
  padding-bottom: 30px !important;
}

.u-pl-30 {
  padding-left: 30px !important;
}

.u-m-35 {
  margin: 35px !important;
}

.u-mv-35 {
  margin-top: 35px !important;
  margin-bottom: 35px !important;
}

.u-mh-35 {
  margin-right: 35px !important;
  margin-left: 35px !important;
}

.u-mt-35 {
  margin-top: 35px !important;
}

.u-mr-35 {
  margin-right: 35px !important;
}

.u-mb-35 {
  margin-bottom: 35px !important;
}

.u-ml-35 {
  margin-left: 35px !important;
}

.u-mtn-35 {
  margin-top: -35px !important;
}

.u-mrn-35 {
  margin-right: -35px !important;
}

.u-mbn-35 {
  margin-bottom: -35px !important;
}

.u-mln-35 {
  margin-left: -35px !important;
}

.u-p-35 {
  padding: 35px !important;
}

.u-pv-35 {
  padding-top: 35px !important;
  padding-bottom: 35px !important;
}

.u-ph-35 {
  padding-right: 35px !important;
  padding-left: 35px !important;
}

.u-pt-35 {
  padding-top: 35px !important;
}

.u-pr-35 {
  padding-right: 35px !important;
}

.u-pb-35 {
  padding-bottom: 35px !important;
}

.u-pl-35 {
  padding-left: 35px !important;
}

.u-m-40 {
  margin: 40px !important;
}

.u-mv-40 {
  margin-top: 40px !important;
  margin-bottom: 40px !important;
}

.u-mh-40 {
  margin-right: 40px !important;
  margin-left: 40px !important;
}

.u-mt-40 {
  margin-top: 40px !important;
}

.u-mr-40 {
  margin-right: 40px !important;
}

.u-mb-40 {
  margin-bottom: 40px !important;
}

.u-ml-40 {
  margin-left: 40px !important;
}

.u-mtn-40 {
  margin-top: -40px !important;
}

.u-mrn-40 {
  margin-right: -40px !important;
}

.u-mbn-40 {
  margin-bottom: -40px !important;
}

.u-mln-40 {
  margin-left: -40px !important;
}

.u-p-40 {
  padding: 40px !important;
}

.u-pv-40 {
  padding-top: 40px !important;
  padding-bottom: 40px !important;
}

.u-ph-40 {
  padding-right: 40px !important;
  padding-left: 40px !important;
}

.u-pt-40 {
  padding-top: 40px !important;
}

.u-pr-40 {
  padding-right: 40px !important;
}

.u-pb-40 {
  padding-bottom: 40px !important;
}

.u-pl-40 {
  padding-left: 40px !important;
}

.u-m-45 {
  margin: 45px !important;
}

.u-mv-45 {
  margin-top: 45px !important;
  margin-bottom: 45px !important;
}

.u-mh-45 {
  margin-right: 45px !important;
  margin-left: 45px !important;
}

.u-mt-45 {
  margin-top: 45px !important;
}

.u-mr-45 {
  margin-right: 45px !important;
}

.u-mb-45 {
  margin-bottom: 45px !important;
}

.u-ml-45 {
  margin-left: 45px !important;
}

.u-mtn-45 {
  margin-top: -45px !important;
}

.u-mrn-45 {
  margin-right: -45px !important;
}

.u-mbn-45 {
  margin-bottom: -45px !important;
}

.u-mln-45 {
  margin-left: -45px !important;
}

.u-p-45 {
  padding: 45px !important;
}

.u-pv-45 {
  padding-top: 45px !important;
  padding-bottom: 45px !important;
}

.u-ph-45 {
  padding-right: 45px !important;
  padding-left: 45px !important;
}

.u-pt-45 {
  padding-top: 45px !important;
}

.u-pr-45 {
  padding-right: 45px !important;
}

.u-pb-45 {
  padding-bottom: 45px !important;
}

.u-pl-45 {
  padding-left: 45px !important;
}

.u-m-50 {
  margin: 50px !important;
}

.u-mv-50 {
  margin-top: 50px !important;
  margin-bottom: 50px !important;
}

.u-mh-50 {
  margin-right: 50px !important;
  margin-left: 50px !important;
}

.u-mt-50 {
  margin-top: 50px !important;
}

.u-mr-50 {
  margin-right: 50px !important;
}

.u-mb-50 {
  margin-bottom: 50px !important;
}

.u-ml-50 {
  margin-left: 50px !important;
}

.u-mtn-50 {
  margin-top: -50px !important;
}

.u-mrn-50 {
  margin-right: -50px !important;
}

.u-mbn-50 {
  margin-bottom: -50px !important;
}

.u-mln-50 {
  margin-left: -50px !important;
}

.u-p-50 {
  padding: 50px !important;
}

.u-pv-50 {
  padding-top: 50px !important;
  padding-bottom: 50px !important;
}

.u-ph-50 {
  padding-right: 50px !important;
  padding-left: 50px !important;
}

.u-pt-50 {
  padding-top: 50px !important;
}

.u-pr-50 {
  padding-right: 50px !important;
}

.u-pb-50 {
  padding-bottom: 50px !important;
}

.u-pl-50 {
  padding-left: 50px !important;
}

.u-m-55 {
  margin: 55px !important;
}

.u-mv-55 {
  margin-top: 55px !important;
  margin-bottom: 55px !important;
}

.u-mh-55 {
  margin-right: 55px !important;
  margin-left: 55px !important;
}

.u-mt-55 {
  margin-top: 55px !important;
}

.u-mr-55 {
  margin-right: 55px !important;
}

.u-mb-55 {
  margin-bottom: 55px !important;
}

.u-ml-55 {
  margin-left: 55px !important;
}

.u-mtn-55 {
  margin-top: -55px !important;
}

.u-mrn-55 {
  margin-right: -55px !important;
}

.u-mbn-55 {
  margin-bottom: -55px !important;
}

.u-mln-55 {
  margin-left: -55px !important;
}

.u-p-55 {
  padding: 55px !important;
}

.u-pv-55 {
  padding-top: 55px !important;
  padding-bottom: 55px !important;
}

.u-ph-55 {
  padding-right: 55px !important;
  padding-left: 55px !important;
}

.u-pt-55 {
  padding-top: 55px !important;
}

.u-pr-55 {
  padding-right: 55px !important;
}

.u-pb-55 {
  padding-bottom: 55px !important;
}

.u-pl-55 {
  padding-left: 55px !important;
}

.u-m-60 {
  margin: 60px !important;
}

.u-mv-60 {
  margin-top: 60px !important;
  margin-bottom: 60px !important;
}

.u-mh-60 {
  margin-right: 60px !important;
  margin-left: 60px !important;
}

.u-mt-60 {
  margin-top: 60px !important;
}

.u-mr-60 {
  margin-right: 60px !important;
}

.u-mb-60 {
  margin-bottom: 60px !important;
}

.u-ml-60 {
  margin-left: 60px !important;
}

.u-mtn-60 {
  margin-top: -60px !important;
}

.u-mrn-60 {
  margin-right: -60px !important;
}

.u-mbn-60 {
  margin-bottom: -60px !important;
}

.u-mln-60 {
  margin-left: -60px !important;
}

.u-p-60 {
  padding: 60px !important;
}

.u-pv-60 {
  padding-top: 60px !important;
  padding-bottom: 60px !important;
}

.u-ph-60 {
  padding-right: 60px !important;
  padding-left: 60px !important;
}

.u-pt-60 {
  padding-top: 60px !important;
}

.u-pr-60 {
  padding-right: 60px !important;
}

.u-pb-60 {
  padding-bottom: 60px !important;
}

.u-pl-60 {
  padding-left: 60px !important;
}

.u-m-65 {
  margin: 65px !important;
}

.u-mv-65 {
  margin-top: 65px !important;
  margin-bottom: 65px !important;
}

.u-mh-65 {
  margin-right: 65px !important;
  margin-left: 65px !important;
}

.u-mt-65 {
  margin-top: 65px !important;
}

.u-mr-65 {
  margin-right: 65px !important;
}

.u-mb-65 {
  margin-bottom: 65px !important;
}

.u-ml-65 {
  margin-left: 65px !important;
}

.u-mtn-65 {
  margin-top: -65px !important;
}

.u-mrn-65 {
  margin-right: -65px !important;
}

.u-mbn-65 {
  margin-bottom: -65px !important;
}

.u-mln-65 {
  margin-left: -65px !important;
}

.u-p-65 {
  padding: 65px !important;
}

.u-pv-65 {
  padding-top: 65px !important;
  padding-bottom: 65px !important;
}

.u-ph-65 {
  padding-right: 65px !important;
  padding-left: 65px !important;
}

.u-pt-65 {
  padding-top: 65px !important;
}

.u-pr-65 {
  padding-right: 65px !important;
}

.u-pb-65 {
  padding-bottom: 65px !important;
}

.u-pl-65 {
  padding-left: 65px !important;
}

.u-m-70 {
  margin: 70px !important;
}

.u-mv-70 {
  margin-top: 70px !important;
  margin-bottom: 70px !important;
}

.u-mh-70 {
  margin-right: 70px !important;
  margin-left: 70px !important;
}

.u-mt-70 {
  margin-top: 70px !important;
}

.u-mr-70 {
  margin-right: 70px !important;
}

.u-mb-70 {
  margin-bottom: 70px !important;
}

.u-ml-70 {
  margin-left: 70px !important;
}

.u-mtn-70 {
  margin-top: -70px !important;
}

.u-mrn-70 {
  margin-right: -70px !important;
}

.u-mbn-70 {
  margin-bottom: -70px !important;
}

.u-mln-70 {
  margin-left: -70px !important;
}

.u-p-70 {
  padding: 70px !important;
}

.u-pv-70 {
  padding-top: 70px !important;
  padding-bottom: 70px !important;
}

.u-ph-70 {
  padding-right: 70px !important;
  padding-left: 70px !important;
}

.u-pt-70 {
  padding-top: 70px !important;
}

.u-pr-70 {
  padding-right: 70px !important;
}

.u-pb-70 {
  padding-bottom: 70px !important;
}

.u-pl-70 {
  padding-left: 70px !important;
}

.u-m-75 {
  margin: 75px !important;
}

.u-mv-75 {
  margin-top: 75px !important;
  margin-bottom: 75px !important;
}

.u-mh-75 {
  margin-right: 75px !important;
  margin-left: 75px !important;
}

.u-mt-75 {
  margin-top: 75px !important;
}

.u-mr-75 {
  margin-right: 75px !important;
}

.u-mb-75 {
  margin-bottom: 75px !important;
}

.u-ml-75 {
  margin-left: 75px !important;
}

.u-mtn-75 {
  margin-top: -75px !important;
}

.u-mrn-75 {
  margin-right: -75px !important;
}

.u-mbn-75 {
  margin-bottom: -75px !important;
}

.u-mln-75 {
  margin-left: -75px !important;
}

.u-p-75 {
  padding: 75px !important;
}

.u-pv-75 {
  padding-top: 75px !important;
  padding-bottom: 75px !important;
}

.u-ph-75 {
  padding-right: 75px !important;
  padding-left: 75px !important;
}

.u-pt-75 {
  padding-top: 75px !important;
}

.u-pr-75 {
  padding-right: 75px !important;
}

.u-pb-75 {
  padding-bottom: 75px !important;
}

.u-pl-75 {
  padding-left: 75px !important;
}

.u-m-80 {
  margin: 80px !important;
}

.u-mv-80 {
  margin-top: 80px !important;
  margin-bottom: 80px !important;
}

.u-mh-80 {
  margin-right: 80px !important;
  margin-left: 80px !important;
}

.u-mt-80 {
  margin-top: 80px !important;
}

.u-mr-80 {
  margin-right: 80px !important;
}

.u-mb-80 {
  margin-bottom: 80px !important;
}

.u-ml-80 {
  margin-left: 80px !important;
}

.u-mtn-80 {
  margin-top: -80px !important;
}

.u-mrn-80 {
  margin-right: -80px !important;
}

.u-mbn-80 {
  margin-bottom: -80px !important;
}

.u-mln-80 {
  margin-left: -80px !important;
}

.u-p-80 {
  padding: 80px !important;
}

.u-pv-80 {
  padding-top: 80px !important;
  padding-bottom: 80px !important;
}

.u-ph-80 {
  padding-right: 80px !important;
  padding-left: 80px !important;
}

.u-pt-80 {
  padding-top: 80px !important;
}

.u-pr-80 {
  padding-right: 80px !important;
}

.u-pb-80 {
  padding-bottom: 80px !important;
}

.u-pl-80 {
  padding-left: 80px !important;
}

.u-m-85 {
  margin: 85px !important;
}

.u-mv-85 {
  margin-top: 85px !important;
  margin-bottom: 85px !important;
}

.u-mh-85 {
  margin-right: 85px !important;
  margin-left: 85px !important;
}

.u-mt-85 {
  margin-top: 85px !important;
}

.u-mr-85 {
  margin-right: 85px !important;
}

.u-mb-85 {
  margin-bottom: 85px !important;
}

.u-ml-85 {
  margin-left: 85px !important;
}

.u-mtn-85 {
  margin-top: -85px !important;
}

.u-mrn-85 {
  margin-right: -85px !important;
}

.u-mbn-85 {
  margin-bottom: -85px !important;
}

.u-mln-85 {
  margin-left: -85px !important;
}

.u-p-85 {
  padding: 85px !important;
}

.u-pv-85 {
  padding-top: 85px !important;
  padding-bottom: 85px !important;
}

.u-ph-85 {
  padding-right: 85px !important;
  padding-left: 85px !important;
}

.u-pt-85 {
  padding-top: 85px !important;
}

.u-pr-85 {
  padding-right: 85px !important;
}

.u-pb-85 {
  padding-bottom: 85px !important;
}

.u-pl-85 {
  padding-left: 85px !important;
}

.u-m-90 {
  margin: 90px !important;
}

.u-mv-90 {
  margin-top: 90px !important;
  margin-bottom: 90px !important;
}

.u-mh-90 {
  margin-right: 90px !important;
  margin-left: 90px !important;
}

.u-mt-90 {
  margin-top: 90px !important;
}

.u-mr-90 {
  margin-right: 90px !important;
}

.u-mb-90 {
  margin-bottom: 90px !important;
}

.u-ml-90 {
  margin-left: 90px !important;
}

.u-mtn-90 {
  margin-top: -90px !important;
}

.u-mrn-90 {
  margin-right: -90px !important;
}

.u-mbn-90 {
  margin-bottom: -90px !important;
}

.u-mln-90 {
  margin-left: -90px !important;
}

.u-p-90 {
  padding: 90px !important;
}

.u-pv-90 {
  padding-top: 90px !important;
  padding-bottom: 90px !important;
}

.u-ph-90 {
  padding-right: 90px !important;
  padding-left: 90px !important;
}

.u-pt-90 {
  padding-top: 90px !important;
}

.u-pr-90 {
  padding-right: 90px !important;
}

.u-pb-90 {
  padding-bottom: 90px !important;
}

.u-pl-90 {
  padding-left: 90px !important;
}

.u-m-95 {
  margin: 95px !important;
}

.u-mv-95 {
  margin-top: 95px !important;
  margin-bottom: 95px !important;
}

.u-mh-95 {
  margin-right: 95px !important;
  margin-left: 95px !important;
}

.u-mt-95 {
  margin-top: 95px !important;
}

.u-mr-95 {
  margin-right: 95px !important;
}

.u-mb-95 {
  margin-bottom: 95px !important;
}

.u-ml-95 {
  margin-left: 95px !important;
}

.u-mtn-95 {
  margin-top: -95px !important;
}

.u-mrn-95 {
  margin-right: -95px !important;
}

.u-mbn-95 {
  margin-bottom: -95px !important;
}

.u-mln-95 {
  margin-left: -95px !important;
}

.u-p-95 {
  padding: 95px !important;
}

.u-pv-95 {
  padding-top: 95px !important;
  padding-bottom: 95px !important;
}

.u-ph-95 {
  padding-right: 95px !important;
  padding-left: 95px !important;
}

.u-pt-95 {
  padding-top: 95px !important;
}

.u-pr-95 {
  padding-right: 95px !important;
}

.u-pb-95 {
  padding-bottom: 95px !important;
}

.u-pl-95 {
  padding-left: 95px !important;
}

.u-m-100 {
  margin: 100px !important;
}

.u-mv-100 {
  margin-top: 100px !important;
  margin-bottom: 100px !important;
}

.u-mh-100 {
  margin-right: 100px !important;
  margin-left: 100px !important;
}

.u-mt-100 {
  margin-top: 100px !important;
}

.u-mr-100 {
  margin-right: 100px !important;
}

.u-mb-100 {
  margin-bottom: 100px !important;
}

.u-ml-100 {
  margin-left: 100px !important;
}

.u-mtn-100 {
  margin-top: -100px !important;
}

.u-mrn-100 {
  margin-right: -100px !important;
}

.u-mbn-100 {
  margin-bottom: -100px !important;
}

.u-mln-100 {
  margin-left: -100px !important;
}

.u-p-100 {
  padding: 100px !important;
}

.u-pv-100 {
  padding-top: 100px !important;
  padding-bottom: 100px !important;
}

.u-ph-100 {
  padding-right: 100px !important;
  padding-left: 100px !important;
}

.u-pt-100 {
  padding-top: 100px !important;
}

.u-pr-100 {
  padding-right: 100px !important;
}

.u-pb-100 {
  padding-bottom: 100px !important;
}

.u-pl-100 {
  padding-left: 100px !important;
}

.u-m-0_5em {
  margin: .5em !important;
}

.u-mv-0_5em {
  margin-top: .5em !important;
  margin-bottom: .5em !important;
}

.u-mh-0_5em {
  margin-right: .5em !important;
  margin-left: .5em !important;
}

.u-mt-0_5em {
  margin-top: .5em !important;
}

.u-mr-0_5em {
  margin-right: .5em !important;
}

.u-mb-0_5em {
  margin-bottom: .5em !important;
}

.u-ml-0_5em {
  margin-left: .5em !important;
}

.u-mtn-0_5em {
  margin-top: -.5em !important;
}

.u-mrn-0_5em {
  margin-right: -.5em !important;
}

.u-mbn-0_5em {
  margin-bottom: -.5em !important;
}

.u-mln-0_5em {
  margin-left: -.5em !important;
}

.u-m-1em {
  margin: 1em !important;
}

.u-mv-1em {
  margin-top: 1em !important;
  margin-bottom: 1em !important;
}

.u-mh-1em {
  margin-right: 1em !important;
  margin-left: 1em !important;
}

.u-mt-1em {
  margin-top: 1em !important;
}

.u-mr-1em {
  margin-right: 1em !important;
}

.u-mb-1em {
  margin-bottom: 1em !important;
}

.u-ml-1em {
  margin-left: 1em !important;
}

.u-mtn-1em {
  margin-top: -1em !important;
}

.u-mrn-1em {
  margin-right: -1em !important;
}

.u-mbn-1em {
  margin-bottom: -1em !important;
}

.u-mln-1em {
  margin-left: -1em !important;
}

.u-m-1_5em {
  margin: 1.5em !important;
}

.u-mv-1_5em {
  margin-top: 1.5em !important;
  margin-bottom: 1.5em !important;
}

.u-mh-1_5em {
  margin-right: 1.5em !important;
  margin-left: 1.5em !important;
}

.u-mt-1_5em {
  margin-top: 1.5em !important;
}

.u-mr-1_5em {
  margin-right: 1.5em !important;
}

.u-mb-1_5em {
  margin-bottom: 1.5em !important;
}

.u-ml-1_5em {
  margin-left: 1.5em !important;
}

.u-mtn-1_5em {
  margin-top: -1.5em !important;
}

.u-mrn-1_5em {
  margin-right: -1.5em !important;
}

.u-mbn-1_5em {
  margin-bottom: -1.5em !important;
}

.u-mln-1_5em {
  margin-left: -1.5em !important;
}

.u-m-2em {
  margin: 2em !important;
}

.u-mv-2em {
  margin-top: 2em !important;
  margin-bottom: 2em !important;
}

.u-mh-2em {
  margin-right: 2em !important;
  margin-left: 2em !important;
}

.u-mt-2em {
  margin-top: 2em !important;
}

.u-mr-2em {
  margin-right: 2em !important;
}

.u-mb-2em {
  margin-bottom: 2em !important;
}

.u-ml-2em {
  margin-left: 2em !important;
}

.u-mtn-2em {
  margin-top: -2em !important;
}

.u-mrn-2em {
  margin-right: -2em !important;
}

.u-mbn-2em {
  margin-bottom: -2em !important;
}

.u-mln-2em {
  margin-left: -2em !important;
}

.u-m-2_5em {
  margin: 2.5em !important;
}

.u-mv-2_5em {
  margin-top: 2.5em !important;
  margin-bottom: 2.5em !important;
}

.u-mh-2_5em {
  margin-right: 2.5em !important;
  margin-left: 2.5em !important;
}

.u-mt-2_5em {
  margin-top: 2.5em !important;
}

.u-mr-2_5em {
  margin-right: 2.5em !important;
}

.u-mb-2_5em {
  margin-bottom: 2.5em !important;
}

.u-ml-2_5em {
  margin-left: 2.5em !important;
}

.u-mtn-2_5em {
  margin-top: -2.5em !important;
}

.u-mrn-2_5em {
  margin-right: -2.5em !important;
}

.u-mbn-2_5em {
  margin-bottom: -2.5em !important;
}

.u-mln-2_5em {
  margin-left: -2.5em !important;
}

.u-m-3em {
  margin: 3em !important;
}

.u-mv-3em {
  margin-top: 3em !important;
  margin-bottom: 3em !important;
}

.u-mh-3em {
  margin-right: 3em !important;
  margin-left: 3em !important;
}

.u-mt-3em {
  margin-top: 3em !important;
}

.u-mr-3em {
  margin-right: 3em !important;
}

.u-mb-3em {
  margin-bottom: 3em !important;
}

.u-ml-3em {
  margin-left: 3em !important;
}

.u-mtn-3em {
  margin-top: -3em !important;
}

.u-mrn-3em {
  margin-right: -3em !important;
}

.u-mbn-3em {
  margin-bottom: -3em !important;
}

.u-mln-3em {
  margin-left: -3em !important;
}

.u-m-3_5em {
  margin: 3.5em !important;
}

.u-mv-3_5em {
  margin-top: 3.5em !important;
  margin-bottom: 3.5em !important;
}

.u-mh-3_5em {
  margin-right: 3.5em !important;
  margin-left: 3.5em !important;
}

.u-mt-3_5em {
  margin-top: 3.5em !important;
}

.u-mr-3_5em {
  margin-right: 3.5em !important;
}

.u-mb-3_5em {
  margin-bottom: 3.5em !important;
}

.u-ml-3_5em {
  margin-left: 3.5em !important;
}

.u-mtn-3_5em {
  margin-top: -3.5em !important;
}

.u-mrn-3_5em {
  margin-right: -3.5em !important;
}

.u-mbn-3_5em {
  margin-bottom: -3.5em !important;
}

.u-mln-3_5em {
  margin-left: -3.5em !important;
}

.u-m-4em {
  margin: 4em !important;
}

.u-mv-4em {
  margin-top: 4em !important;
  margin-bottom: 4em !important;
}

.u-mh-4em {
  margin-right: 4em !important;
  margin-left: 4em !important;
}

.u-mt-4em {
  margin-top: 4em !important;
}

.u-mr-4em {
  margin-right: 4em !important;
}

.u-mb-4em {
  margin-bottom: 4em !important;
}

.u-ml-4em {
  margin-left: 4em !important;
}

.u-mtn-4em {
  margin-top: -4em !important;
}

.u-mrn-4em {
  margin-right: -4em !important;
}

.u-mbn-4em {
  margin-bottom: -4em !important;
}

.u-mln-4em {
  margin-left: -4em !important;
}

.u-m-4_5em {
  margin: 4.5em !important;
}

.u-mv-4_5em {
  margin-top: 4.5em !important;
  margin-bottom: 4.5em !important;
}

.u-mh-4_5em {
  margin-right: 4.5em !important;
  margin-left: 4.5em !important;
}

.u-mt-4_5em {
  margin-top: 4.5em !important;
}

.u-mr-4_5em {
  margin-right: 4.5em !important;
}

.u-mb-4_5em {
  margin-bottom: 4.5em !important;
}

.u-ml-4_5em {
  margin-left: 4.5em !important;
}

.u-mtn-4_5em {
  margin-top: -4.5em !important;
}

.u-mrn-4_5em {
  margin-right: -4.5em !important;
}

.u-mbn-4_5em {
  margin-bottom: -4.5em !important;
}

.u-mln-4_5em {
  margin-left: -4.5em !important;
}

.u-m-5em {
  margin: 5em !important;
}

.u-mv-5em {
  margin-top: 5em !important;
  margin-bottom: 5em !important;
}

.u-mh-5em {
  margin-right: 5em !important;
  margin-left: 5em !important;
}

.u-mt-5em {
  margin-top: 5em !important;
}

.u-mr-5em {
  margin-right: 5em !important;
}

.u-mb-5em {
  margin-bottom: 5em !important;
}

.u-ml-5em {
  margin-left: 5em !important;
}

.u-mtn-5em {
  margin-top: -5em !important;
}

.u-mrn-5em {
  margin-right: -5em !important;
}

.u-mbn-5em {
  margin-bottom: -5em !important;
}

.u-mln-5em {
  margin-left: -5em !important;
}

.u-m-5_5em {
  margin: 5.5em !important;
}

.u-mv-5_5em {
  margin-top: 5.5em !important;
  margin-bottom: 5.5em !important;
}

.u-mh-5_5em {
  margin-right: 5.5em !important;
  margin-left: 5.5em !important;
}

.u-mt-5_5em {
  margin-top: 5.5em !important;
}

.u-mr-5_5em {
  margin-right: 5.5em !important;
}

.u-mb-5_5em {
  margin-bottom: 5.5em !important;
}

.u-ml-5_5em {
  margin-left: 5.5em !important;
}

.u-mtn-5_5em {
  margin-top: -5.5em !important;
}

.u-mrn-5_5em {
  margin-right: -5.5em !important;
}

.u-mbn-5_5em {
  margin-bottom: -5.5em !important;
}

.u-mln-5_5em {
  margin-left: -5.5em !important;
}

.u-m-6em {
  margin: 6em !important;
}

.u-mv-6em {
  margin-top: 6em !important;
  margin-bottom: 6em !important;
}

.u-mh-6em {
  margin-right: 6em !important;
  margin-left: 6em !important;
}

.u-mt-6em {
  margin-top: 6em !important;
}

.u-mr-6em {
  margin-right: 6em !important;
}

.u-mb-6em {
  margin-bottom: 6em !important;
}

.u-ml-6em {
  margin-left: 6em !important;
}

.u-mtn-6em {
  margin-top: -6em !important;
}

.u-mrn-6em {
  margin-right: -6em !important;
}

.u-mbn-6em {
  margin-bottom: -6em !important;
}

.u-mln-6em {
  margin-left: -6em !important;
}

.u-m-6_5em {
  margin: 6.5em !important;
}

.u-mv-6_5em {
  margin-top: 6.5em !important;
  margin-bottom: 6.5em !important;
}

.u-mh-6_5em {
  margin-right: 6.5em !important;
  margin-left: 6.5em !important;
}

.u-mt-6_5em {
  margin-top: 6.5em !important;
}

.u-mr-6_5em {
  margin-right: 6.5em !important;
}

.u-mb-6_5em {
  margin-bottom: 6.5em !important;
}

.u-ml-6_5em {
  margin-left: 6.5em !important;
}

.u-mtn-6_5em {
  margin-top: -6.5em !important;
}

.u-mrn-6_5em {
  margin-right: -6.5em !important;
}

.u-mbn-6_5em {
  margin-bottom: -6.5em !important;
}

.u-mln-6_5em {
  margin-left: -6.5em !important;
}

.u-m-7em {
  margin: 7em !important;
}

.u-mv-7em {
  margin-top: 7em !important;
  margin-bottom: 7em !important;
}

.u-mh-7em {
  margin-right: 7em !important;
  margin-left: 7em !important;
}

.u-mt-7em {
  margin-top: 7em !important;
}

.u-mr-7em {
  margin-right: 7em !important;
}

.u-mb-7em {
  margin-bottom: 7em !important;
}

.u-ml-7em {
  margin-left: 7em !important;
}

.u-mtn-7em {
  margin-top: -7em !important;
}

.u-mrn-7em {
  margin-right: -7em !important;
}

.u-mbn-7em {
  margin-bottom: -7em !important;
}

.u-mln-7em {
  margin-left: -7em !important;
}

.u-m-7_5em {
  margin: 7.5em !important;
}

.u-mv-7_5em {
  margin-top: 7.5em !important;
  margin-bottom: 7.5em !important;
}

.u-mh-7_5em {
  margin-right: 7.5em !important;
  margin-left: 7.5em !important;
}

.u-mt-7_5em {
  margin-top: 7.5em !important;
}

.u-mr-7_5em {
  margin-right: 7.5em !important;
}

.u-mb-7_5em {
  margin-bottom: 7.5em !important;
}

.u-ml-7_5em {
  margin-left: 7.5em !important;
}

.u-mtn-7_5em {
  margin-top: -7.5em !important;
}

.u-mrn-7_5em {
  margin-right: -7.5em !important;
}

.u-mbn-7_5em {
  margin-bottom: -7.5em !important;
}

.u-mln-7_5em {
  margin-left: -7.5em !important;
}

.u-m-8em {
  margin: 8em !important;
}

.u-mv-8em {
  margin-top: 8em !important;
  margin-bottom: 8em !important;
}

.u-mh-8em {
  margin-right: 8em !important;
  margin-left: 8em !important;
}

.u-mt-8em {
  margin-top: 8em !important;
}

.u-mr-8em {
  margin-right: 8em !important;
}

.u-mb-8em {
  margin-bottom: 8em !important;
}

.u-ml-8em {
  margin-left: 8em !important;
}

.u-mtn-8em {
  margin-top: -8em !important;
}

.u-mrn-8em {
  margin-right: -8em !important;
}

.u-mbn-8em {
  margin-bottom: -8em !important;
}

.u-mln-8em {
  margin-left: -8em !important;
}

.u-m-8_5em {
  margin: 8.5em !important;
}

.u-mv-8_5em {
  margin-top: 8.5em !important;
  margin-bottom: 8.5em !important;
}

.u-mh-8_5em {
  margin-right: 8.5em !important;
  margin-left: 8.5em !important;
}

.u-mt-8_5em {
  margin-top: 8.5em !important;
}

.u-mr-8_5em {
  margin-right: 8.5em !important;
}

.u-mb-8_5em {
  margin-bottom: 8.5em !important;
}

.u-ml-8_5em {
  margin-left: 8.5em !important;
}

.u-mtn-8_5em {
  margin-top: -8.5em !important;
}

.u-mrn-8_5em {
  margin-right: -8.5em !important;
}

.u-mbn-8_5em {
  margin-bottom: -8.5em !important;
}

.u-mln-8_5em {
  margin-left: -8.5em !important;
}

.u-m-9em {
  margin: 9em !important;
}

.u-mv-9em {
  margin-top: 9em !important;
  margin-bottom: 9em !important;
}

.u-mh-9em {
  margin-right: 9em !important;
  margin-left: 9em !important;
}

.u-mt-9em {
  margin-top: 9em !important;
}

.u-mr-9em {
  margin-right: 9em !important;
}

.u-mb-9em {
  margin-bottom: 9em !important;
}

.u-ml-9em {
  margin-left: 9em !important;
}

.u-mtn-9em {
  margin-top: -9em !important;
}

.u-mrn-9em {
  margin-right: -9em !important;
}

.u-mbn-9em {
  margin-bottom: -9em !important;
}

.u-mln-9em {
  margin-left: -9em !important;
}

.u-m-9_5em {
  margin: 9.5em !important;
}

.u-mv-9_5em {
  margin-top: 9.5em !important;
  margin-bottom: 9.5em !important;
}

.u-mh-9_5em {
  margin-right: 9.5em !important;
  margin-left: 9.5em !important;
}

.u-mt-9_5em {
  margin-top: 9.5em !important;
}

.u-mr-9_5em {
  margin-right: 9.5em !important;
}

.u-mb-9_5em {
  margin-bottom: 9.5em !important;
}

.u-ml-9_5em {
  margin-left: 9.5em !important;
}

.u-mtn-9_5em {
  margin-top: -9.5em !important;
}

.u-mrn-9_5em {
  margin-right: -9.5em !important;
}

.u-mbn-9_5em {
  margin-bottom: -9.5em !important;
}

.u-mln-9_5em {
  margin-left: -9.5em !important;
}

.u-m-10em {
  margin: 10em !important;
}

.u-mv-10em {
  margin-top: 10em !important;
  margin-bottom: 10em !important;
}

.u-mh-10em {
  margin-right: 10em !important;
  margin-left: 10em !important;
}

.u-mt-10em {
  margin-top: 10em !important;
}

.u-mr-10em {
  margin-right: 10em !important;
}

.u-mb-10em {
  margin-bottom: 10em !important;
}

.u-ml-10em {
  margin-left: 10em !important;
}

.u-mtn-10em {
  margin-top: -10em !important;
}

.u-mrn-10em {
  margin-right: -10em !important;
}

.u-mbn-10em {
  margin-bottom: -10em !important;
}

.u-mln-10em {
  margin-left: -10em !important;
}

.u-m-auto {
  margin: auto !important;
}

.u-mh-auto {
  margin-right: auto !important;
  margin-left: auto !important;
}

.u-img-liquid {
  width: 100%;
  height: auto;
}

.u-img-bordered {
  border: 1px solid #ccc;
}

@media screen and (min-width: 768px), print {
  .u-img-liquid-pc {
    width: 100%;
    max-width: none;
    height: auto;
    max-height: none;
  }
}

@media screen and (max-width: 767px) {
  .u-img-liquid-sp {
    width: 100%;
    max-width: none;
    height: auto;
    max-height: none;
  }
}

.u-ws-nw {
  white-space: nowrap !important;
}

.u-ws-n {
  white-space: normal !important;
}

.u-wb-ba {
  word-break: break-all !important;
}

.u-wb-ka {
  word-break: keep-all !important;
}

.u-wb-n {
  word-break: normal !important;
}

.u-d-b {
  display: block !important;
}

.u-d-ib {
  display: inline-block !important;
}

.u-d-i {
  display: inline !important;
}

.u-pos-a {
  position: absolute !important;
}

.u-pos-r {
  position: relative !important;
}

.u-pos-f {
  position: fixed !important;
}

.u-pos-s {
  position: static !important;
}

.u-overflow-h {
  overflow: hidden !important;
}

[class^='lv-']:after,[class*=' lv-']:after {
  display: block;
  clear: both; 
  content: '';
}

.page-body {
  line-height: 1.75; 
  padding: 50px 0 100px;
}

.page-body:after {
  display: block;
  clear: both; 
  content: '';
}

.page-body>.container {
  max-width: 1024px;
  margin: 0 auto;
  padding: 0 40px;
}

@media screen and (max-width: 767px) {
  .page-body>.container {
    padding: 0 10px;
  }
}

.page-body>.container--w {
  overflow: hidden; 
  padding: 0;
}

@media screen and (max-width: 767px) {
  .page-body>.container .negate-cps {
    margin-right: -10px; 
    margin-left: -10px;
  }
}

@media screen and (max-width: 767px) {
  .page-body {
    padding: 20px 0 42px;
  }
}

.page-read {
  font-size: 16px; 
  margin-bottom: 55px;
}

@media screen and (min-width: 768px), print {
  .page-read {
    width: 84.75%;
    margin-right: auto; 
    margin-left: auto;
  }
}

@media screen and (max-width: 767px) {
  .page-read {
    font-size: 14px; 
    margin-bottom: 24px;
  }
}

.ttl-lv1+.page-read {
  margin-top: 50px;
}

@media screen and (max-width: 767px) {
  .ttl-lv1+.page-read {
    margin-top: 22px;
  }
}

.lv-2 {
  margin-top: 80px;
}

@media screen and (max-width: 767px) {
  .lv-2 {
    margin-top: 30px;
  }
}

.contents {
  margin-top: 40px;
}

.contents:after {
  display: block;
  clear: both; 
  content: '';
}

.col-1 {
  width: 4.16667%;
}

.col-2 {
  width: 8.33333%;
}

.col-3 {
  width: 12.5%;
}

.col-4 {
  width: 16.66667%;
}

.col-5 {
  width: 20.83333%;
}

.col-6 {
  width: 25%;
}

.col-7 {
  width: 29.16667%;
}

.col-8 {
  width: 33.33333%;
}

.col-9 {
  width: 37.5%;
}

.col-10 {
  width: 41.66667%;
}

.col-11 {
  width: 45.83333%;
}

.col-12 {
  width: 50%;
}

.col-13 {
  width: 54.16667%;
}

.col-14 {
  width: 58.33333%;
}

.col-15 {
  width: 62.5%;
}

.col-16 {
  width: 66.66667%;
}

.col-17 {
  width: 70.83333%;
}

.col-18 {
  width: 75%;
}

.col-19 {
  width: 79.16667%;
}

.col-20 {
  width: 83.33333%;
}

.col-21 {
  width: 87.5%;
}

.col-22 {
  width: 91.66667%;
}

.col-23 {
  width: 95.83333%;
}

.col-24 {
  width: 100%;
}

.row:after {
  display: block;
  clear: both; 
  content: '';
}

.row>[class^='col'],.row>[class*=' col'] {
  float: left;
}

.row>[class^='col']:after,.row>[class*=' col']:after {
  display: block;
  clear: both; 
  content: '';
}

.row>[class^='col'].min,.row>[class*=' col'].min {
  width: 1px;
  white-space: nowrap;
}

.row>.col-left {
  float: left;
}

.row>.col-right {
  float: right;
}

.row[class^='cols'],.row[class*=' cols'] {
  overflow: hidden;
  margin-left: -10px;
}

.row[class^='cols']>li,.row[class^='cols']>.col,.row[class*=' cols']>li,.row[class*=' cols']>.col {
  margin-top: 10px; 
  padding-left: 10px;
}

.row.cols-2>li,.row.cols-2>.col {
  width: 50%;
}

.row.cols-2>li:nth-child(-n+2),.row.cols-2>.col:nth-child(-n+2) {
  margin-top: 0;
}

.row.cols-2>li:nth-child(2n+1),.row.cols-2>.col:nth-child(2n+1) {
  clear: left;
}

.row.cols-2>li.colspan-2,.row.cols-2>.col.colspan-2 {
  width: 100%;
}

.row.cols-2>li.colspan-half,.row.cols-2>.col.colspan-half {
  width: 50%;
}

.row.cols-2>li.colspan-qtr,.row.cols-2>.col.colspan-qtr {
  width: 25%;
}

.row.cols-3>li,.row.cols-3>.col {
  width: 33.33333%;
}

.row.cols-3>li:nth-child(-n+3),.row.cols-3>.col:nth-child(-n+3) {
  margin-top: 0;
}

.row.cols-3>li:nth-child(3n+1),.row.cols-3>.col:nth-child(3n+1) {
  clear: left;
}

.row.cols-3>li.colspan-2,.row.cols-3>.col.colspan-2 {
  width: 66.66667%;
}

.row.cols-3>li.colspan-3,.row.cols-3>.col.colspan-3 {
  width: 100%;
}

.row.cols-3>li.colspan-half,.row.cols-3>.col.colspan-half {
  width: 50%;
}

.row.cols-3>li.colspan-qtr,.row.cols-3>.col.colspan-qtr {
  width: 25%;
}

.row.cols-4>li,.row.cols-4>.col {
  width: 25%;
}

.row.cols-4>li:nth-child(-n+4),.row.cols-4>.col:nth-child(-n+4) {
  margin-top: 0;
}

.row.cols-4>li:nth-child(4n+1),.row.cols-4>.col:nth-child(4n+1) {
  clear: left;
}

.row.cols-4>li.colspan-2,.row.cols-4>.col.colspan-2 {
  width: 50%;
}

.row.cols-4>li.colspan-3,.row.cols-4>.col.colspan-3 {
  width: 75%;
}

.row.cols-4>li.colspan-4,.row.cols-4>.col.colspan-4 {
  width: 100%;
}

.row.cols-4>li.colspan-half,.row.cols-4>.col.colspan-half {
  width: 50%;
}

.row.cols-4>li.colspan-qtr,.row.cols-4>.col.colspan-qtr {
  width: 25%;
}

[class^='list-cols-'],[class*=' list-cols-'] {
  overflow: hidden;
  margin-left: -10px;
}

[class^='list-cols-']>li,[class*=' list-cols-']>li {
  line-height: 1.75; 
  float: left;
  margin-top: 10px;
  padding-left: 10px;
}

.list-cols-2>li {
  width: 50%;
}

.list-cols-2>li:nth-child(-n+2) {
  margin-top: 0 !important;
}

.list-cols-2>li:nth-child(2n+1) {
  clear: left;
}

.list-cols-3>li {
  width: 33.33333%;
}

.list-cols-3>li:nth-child(-n+3) {
  margin-top: 0 !important;
}

.list-cols-3>li:nth-child(3n+1) {
  clear: left;
}

.list-cols-4>li {
  width: 25%;
}

.list-cols-4>li:nth-child(-n+4) {
  margin-top: 0 !important;
}

.list-cols-4>li:nth-child(4n+1) {
  clear: left;
}

.movie-container {
  position: relative;
  height: 0;
  margin-top: 20px; 
  padding-bottom: 57.97%;
}

.movie-container iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

@media screen and (min-width: 768px), print {
  .bnr-container01 {
    display: -webkit-flex;
    display: -ms-flexbox;
    display:         flex;
    margin-top: 50px;
    margin-right: -1px; 
    margin-left: -1px;

    -webkit-flex-flow: row wrap;
        -ms-flex-flow: row wrap;
            flex-flow: row wrap;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-align-items: flex-start;
    -ms-flex-align: start;
            align-items: flex-start;
  }
  .bnr-container01>.bnr-block {
    position: relative; 
    width: 50%;
    padding: 1px;
  }
  .bnr-container01>.bnr-block:before {
    display: block;
    height: 0;
    padding-bottom: 31.57%; 
    content: '';
  }
  .bnr-container01>.bnr-block>* {
    position: absolute;
    top: 1px;
    right: 1px;
    bottom: 1px; 
    left: 1px;
  }
  .bnr-container01>.bnr-block--single {
    width: 100%;
  }
}

@media screen and (min-width: 768px) and (min-width: 768px), print {
  .bnr-container01>.bnr-block--single {
    text-align: center;
  }
  .bnr-container01>.bnr-block--single:before {
    padding-bottom: 15.78%;
  }
  .bnr-container01>.bnr-block--single .title {
    padding-right: 30px;
  }
}

@media screen and (max-width: 767px) {
  .bnr-container01 {
    margin-top: 30px;
  }
  .bnr-container01>.bnr-block {
    position: relative;
    max-height: 100px; 
    margin-top: 1px;
  }
  .bnr-container01>.bnr-block:first-child {
    margin-top: 0;
  }
  .bnr-container01>.bnr-block:before {
    display: block;
    height: 0;
    padding-bottom: 25%; 
    content: '';
  }
  .bnr-container01>.bnr-block>* {
    position: absolute;
    top: 0px;
    right: 0px;
    bottom: 0px; 
    left: 0px;
  }
}

.judges-thumb {
  display: -webkit-flex;
  display: -ms-flexbox;
  display:         flex;
  margin: -10px; 

  -webkit-flex-flow: row wrap;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap;
  -webkit-justify-content: space-around;
  -ms-flex-pack: distribute;
          justify-content: space-around;
  -webkit-align-items: flex-start;
  -ms-flex-align: start;
          align-items: flex-start;
}

.judges-thumb>.profile-judge {
  margin: 10px;
}

.judges-thumb>.flex-spacer {
  width: 206px;
  margin-right: 10px; 
  margin-left: 10px;
}

@media screen and (max-width: 767px) {
  .judges-thumb {
    margin: -10px -26px;
  }
  .judges-thumb>.profile-judge {
    width: 114px;
    margin: 10px 26px;
  }
  .judges-thumb>.flex-spacer {
    width: 114px;
    margin: 0px 26px;
  }
}

.container--result-head .page-read {
  margin-top: 15px;
}

.container--result-head .btn-link {
  width: 260px;
}

.container--result-head+.ttl-lv2--result {
  margin-top: 47px;
}

.poster-container {
  text-align: center;
}

.poster-container img {
  width: 100%;
}

@media screen and (min-width: 768px), print {
  .poster-container img {
    width: auto;
  }
}

.movie-dual-container {
  display: -ms-grid;
  display:     grid;
}

@media screen and (max-width: 767px) {
  .movie-dual-container {
    row-gap: 22px;
  }
}

@media screen and (min-width: 768px), print {
  .movie-dual-container {
    -ms-grid-columns: 1fr 1fr;
    grid-template-columns: 1fr 1fr;
    -ms-grid-rows: auto auto 1fr;
    grid-template-rows: auto auto 1fr;
    grid-auto-flow: column;
    -webkit-column-gap: 32px;
            column-gap: 32px;
  }
  .movie-dual-container>div {
    display: contents;
  }
}

.site-header {
  z-index: 9999 !important;
  top: 0;
  width: 100% !important; 
  padding-top: 40px;
  border-bottom: 1px solid #000;
  background: #fff;
}

@media screen and (max-width: 767px) {
  .site-header {
    padding-top: 21px;
  }
}

.site-header>.container {
  padding: 0 0px;
}

.site-header__social {
  position: absolute;
  top: 50px;
  right: 20px;
}

.site-header .social-special {
  font-size: 13px; 
  position: absolute;
  top: 0;
  right: 0;
  padding: 8px 20px;
  color: #fff;
  background: #000;
}

.site-header .social-special img {
  vertical-align: -55%;
}

@media screen and (max-width: 767px) {
  .site-header .social-special {
    top: 18px;
    right: 48px;
    width: 18px;
    height: 18px;
    padding: 0;
    background: url(/img/icon/icon_Instagram.svg) center center no-repeat;
    background-size: contain;
  }
  .site-header .social-special img {
    display: none;
  }
  .site-header .social-special a {
    display: block; 
    width: 18px;
    height: 18px;
  }
}

.site-name {
  padding-bottom: 38px; 
  text-align: center;
}

@media screen and (max-width: 767px) {
  .site-name {
    margin: 0; 
    padding-right: 10px;
    padding-bottom: 21px;
    padding-left: 10px;
  }
  .site-name a {
    display: block;
    margin-right: 80px;
  }
  .site-name img {
    display: block; 
    width: 220px;
    width: 198px;
    width: 210px;
    height: 10px;
    height: 9px;
    height: 9.5454px;
  }
}

.site-footer {
  padding-top: 21px;
  padding-bottom: 30px; 
  border-top: 2px solid #e9ebf1;
}

.site-footer:not(.totop-away) {
  position: relative;
}

.site-footer>.container {
  position: relative; 
  max-width: 1024px;
  margin: 0 auto;
  padding: 0 40px;
}

@media screen and (max-width: 767px) {
  .site-footer>.container {
    padding: 0 10px;
  }
}

.site-footer__link1 {
  font-size: 13px;
  line-height: 1.2;
}

.site-footer__link2 {
  font-size: 14px;
  line-height: 1.2;
}

.site-footer__link3 {
  position: relative;
  top: -10px;
}

.site-footer__logo {
  display: -webkit-flex;
  display: -ms-flexbox;
  display:         flex;
          flex-direction: column;

  -webkit-flex-direction: column;
      -ms-flex-direction: column;
  -webkit-align-items: flex-end;
  -ms-flex-align: end;
          align-items: flex-end;
}

.site-footer .copyright {
  font-size: 11px;
  letter-spacing: .9px;
}

@media screen and (max-width: 767px) {
  .site-footer .copyright {
    font-size: 10px; 
    letter-spacing: .8px;
  }
}

.site-footer .group-logo {
  width: 100%; 
  text-align: right;
}

.site-footer .group-logo img {
  vertical-align: middle;
}

.site-footer .group-logo img:first-child {
  margin-right: 30px;
}

@media screen and (min-width: 768px), print {
  .site-footer>.container {
    display: -webkit-flex;
    display: -ms-flexbox;
    display:         flex;

    -webkit-flex-flow: row wrap;
        -ms-flex-flow: row wrap;
            flex-flow: row wrap;
    -webkit-justify-content: flex-start;
    -ms-flex-pack: start;
            justify-content: flex-start;
    -webkit-align-items: flex-end;
    -ms-flex-align: end;
            align-items: flex-end;
  }
  .site-footer__wrap1 {
    margin-right: auto;
    margin-bottom: 57px;
  }
  .site-footer__link2 {
    margin-top: 16px;
  }
  .site-footer__link3 {
    line-height: 2;
    display: -webkit-flex;
    display: -ms-flexbox;
    display:         flex;
    margin-right: 46px;

    -webkit-order: 2;
    -ms-flex-order: 2;
            order: 2;
    -webkit-align-self: flex-start;
    -ms-flex-item-align: start;
            align-self: flex-start;
    -webkit-flex-flow: row wrap;
        -ms-flex-flow: row wrap;
            flex-flow: row wrap;
    -webkit-align-items: center;
    -ms-flex-align: center;
            align-items: center;
  }
  .site-footer__logo {
    margin-right: 46px;
  }
  .site-footer__logo .icon--instagram {
    margin-bottom: 36px;
  }
  .site-footer .group-logo {
    -webkit-order: 3;
    -ms-flex-order: 3;
            order: 3;
  }
  .site-footer .copyright {
    position: absolute;
    bottom: 0;
    left: 40px;
  }
}

@media screen and (max-width: 767px) {
  .site-footer {
    border-top-width: 1px;
  }
  .site-footer__link2 {
    font-size: 13px;
    margin-top: 21px !important;
    margin-right: -10px !important;
    margin-left: -10px !important;
    padding-top: 7px;
    padding-right: 10px; 
    padding-left: 10px;
    border-top: 1px solid #e9ebf1;
  }
  .site-footer__link3 {
    top: 0; 
    margin: 10px -10px 0;
    margin-top: 16px;
    padding-top: 21px;
    padding-right: 10px;
    padding-left: 10px;
    border-top: 1px solid #e9ebf1;
  }
  .site-footer__logo {
            flex-direction: row;
    margin: 10px -10px 0; 
    padding-top: 21px;
    padding-right: 60px;
    padding-left: 10px;
    border-top: 1px solid #e9ebf1;

    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-flex-direction: row;
        -ms-flex-direction: row;
    -webkit-align-items: flex-start;
    -ms-flex-align: start;
            align-items: flex-start;
  }
  .site-footer .group-logo {
    margin-top: 30px;
    text-align: left;
  }
  .site-footer .group-logo img:first-child {
    margin-right: 20px;
  }
  .site-footer .copyright {
    margin-top: 30px;
    text-align: center;
  }
}

@media screen and (min-width: 1010px), print {
  .gnav {
    position: relative;
    display: -webkit-flex;
    display: -ms-flexbox;
    display:         flex;
    padding-bottom: 17px; 

    -webkit-flex-flow: row wrap-reverse;
        -ms-flex-flow: row wrap-reverse;
            flex-flow: row wrap-reverse;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
            justify-content: center;
    align-item: flex-end;
  }
  .gnav>li {
    margin-left: 31px;
  }
  .gnav>li:first-child {
    margin-left: 0;
  }
  .gnav>li>a {
    line-height: 24px;
    position: relative;
    z-index: 3; 
    display: block;
    width: 100%;
    text-decoration: none;
    color: inherit;
  }
  .gnav>li>a:before,.gnav>li>a:after {
    position: absolute;
    content: '';
    transition: -webkit-transform .3s ease;
    transition:         transform .3s ease;
    transition:         transform .3s ease, -webkit-transform .3s ease;
  }
  .gnav>li>a:before {
    top: 38px;
    left: 0;
    width: 100%;
    height: 3px;
    -webkit-transform: scaleX(0) translate3d(0, 0, 0);
            transform: scaleX(0) translate3d(0, 0, 0); 
    background: #000;
  }
  .gnav>li>a:hover:before,.gnav>li>a.current:before {
    -webkit-transform: scaleX(1) translate3d(0, 0, 0);
            transform: scaleX(1) translate3d(0, 0, 0);
  }
}

.gnav .guest-collection {
  position: relative;
  padding-left: 31px;
}

@media screen and (min-width: 1010px), print {
  .gnav .guest-collection:before {
    position: absolute;
    top: 50%;
    left: 0;
    display: block;
    width: 1px;
    height: 19px;
    margin-top: -9.5px;
    content: '';
    background: #999;
  }
}

@media screen and (max-width: 1009px) {
  .gnav .guest-collection {
    font-size: 15px;
    padding-left: 0; 
    color: #010101;
    background: #f5f5f5;
  }
}

.gnav .gnav__sub {
  position: absolute;
  z-index: 9;
  top: 100%;
  left: 0;
  overflow: hidden;
  width: 100%;
  max-height: 0px;
  transition: all .6s ease;
}

.gnav .gnav__sub .toggle-sp {
  display: none;
}

@media screen and (max-width: 1009px) {
  .gnav .gnav__sub {
    position: relative;
    right: 0;
    left: 0;
    overflow: visible;
    height: 100%;
    max-height: initial;
    max-height: 999px;
    border-top-color: #fff;
  }
  .gnav .gnav__sub.active {
    border-top: 1px solid #ccc;
  }
  .gnav .gnav__sub .toggle-sp {
    position: absolute;
    top: -40px;
    right: 0;
    display: block;
    width: 32px;
    height: 32px;
    background: url(/img/icon/icon_plus.png) center center no-repeat;
    background-size: 12px 12px;
  }
  .gnav .gnav__sub>.snav {
    display: none;
  }
  .gnav .gnav__sub.active>.toggle-sp {
    background-image: url(/img/icon/icon_minus.png);
  }
}

@media screen and (min-width: 1010px), print {
  .gnav a.active+.gnav__sub {
    max-height: 300px;
  }
}

@media screen and (min-width: 1010px), print {
  .snav {
    display: -webkit-flex !important;
    display: -ms-flexbox !important;
    display:         flex !important;
    height: 80px;
    border-top: 1px solid #000;
    background: rgba(248, 248, 248, .9); 

    -webkit-flex-flow: row wrap;
        -ms-flex-flow: row wrap;
            flex-flow: row wrap;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
            justify-content: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
            align-items: center;
  }
  .snav>li {
    font-size: 15px; 
    padding: 8px 14px;
  }
  .snav>li>span {
    color: #aaa;
  }
}

.snav a {
  color: #000;
}

@media screen and (max-width: 1009px) {
  .snav {
    margin-left: 30px;
    padding-bottom: 19px;
  }
  .snav>li {
    font-size: 15px;
    line-height: 1.2; 
    margin-top: 22px;
  }
  .snav>li.pc-only-menu {
    display: none;
  }
  .snav>li>span {
    color: #aaa;
  }
}

@media screen and (min-width: 1010px), print {
  .nav-toggle-selecter {
    display: none;
  }
  .sp-wrapper .social-special2 {
    display: none;
  }
}

/*---------------------------------------------
  Hamburger Nav
  ---------------------------------------------*/
@media screen and (max-width: 1009px) {
  .nav-main {
    position: relative; 
    text-align: right;
  }
  .sp-wrapper {
    position: absolute;
    z-index: 999;
    top: 99px;
    right: 0px;
    display: none;
    overflow-x: hidden;
    box-sizing: border-box;
    width: 240px;
    margin: 0px 0 0;
    padding: 0px 0 0px;
    list-style: none;
    text-align: left;
    background: #fff;
    box-shadow: 0 2px 4px 0 rgba(0, 0, 0, .5); 

    -webkit-flex-flow: row wrap;
        -ms-flex-flow: row wrap;
            flex-flow: row wrap;
  }
  .sp-wrapper .gnav {
    width: 100%;
    margin-bottom: 20px;
  }
  .sp-wrapper .gnav>li {
    font-size: 14px;
    border-bottom: 1px solid #ccc;
  }
  .sp-wrapper .gnav>li:first-child {
    border-top: 1px solid #ccc;
  }
  .sp-wrapper .gnav>li>a {
    display: block;
    padding: 17px 30px 17px 10px;
    text-decoration: none;
  }
  .nav-toggle-button {
    cursor: pointer;
  }
  .nav-toggle-button::before {
    position: absolute;
    top: -33px;
    top: -40px;
    right: 10px; 
    display: block;
    width: 18px;
    height: 18px;
    content: '';
    background: url(/img/icon/icon_menu.png) 0 0 no-repeat;
  }
  .nav-toggle-selecter {
    display: none;
  }
  .nav-toggle-selecter:checked+.sp-wrapper {
    display: -webkit-flex;
    display: -ms-flexbox;
    display:         flex;
    -webkit-animation: showAni .4s ease 0s 1 normal;
            animation: showAni .4s ease 0s 1 normal;
  }
  @-webkit-keyframes showAni {
    0% {
      right: -240px;
    }
    100% {
      right: 0px;
    }
  }
  @keyframes showAni {
    0% {
      right: -240px;
    }
    100% {
      right: 0px;
    }
  }
  .nav-toggle-selecter:checked+.sp-wrapper+.nav-toggle-button::before {
    content: '';
    background: url(/img/icon/icon_close.png) 50% 50% no-repeat;
  }
  .site-header__social {
    position: relative;
    top: initial;
    top: auto;
    right: initial;
    right: auto;
    left: initial;
    left: auto;
    margin-left: 20px;

    -webkit-order: 3;
    -ms-flex-order: 3;
            order: 3;
  }
  .social-special2 {
    top: initial;
    top: auto;
    margin-left: 20px; 

    -webkit-order: 2;
    -ms-flex-order: 2;
            order: 2;
  }
  .site-header__social {
    margin-bottom: 90px;
  }
  .spmenu-active .nav-toggle-button::before {
    content: '';
    background: url(/img/icon/icon_close.png) 50% 50% no-repeat;
  }
}

@media screen and (max-width: 767px) {
  .sp-wrapper {
    top: 51px;
  }
  .nav-toggle-button:before {
    top: -34px;
  }
}

.nav-in-category {
  margin-top: 50px;
}

@media screen and (max-width: 767px) {
  .nav-in-category {
    display: none;
  }
}

.nav-in-category ul {
  display: -webkit-flex;
  display: -ms-flexbox;
  display:         flex;
  border: 1px solid #e0e0e0; 

  -webkit-flex-flow: row nowrap;
      -ms-flex-flow: row nowrap;
          flex-flow: row nowrap;
}

.nav-in-category li {
  position: relative; 
  display: -webkit-flex;
  display: -ms-flexbox;
  display:         flex;
  width: 135px;
  border-left: 1px solid #e0e0e0;

  -webkit-flex-grow: 1;
  -ms-flex-positive: 1;
          flex-grow: 1;
  -webkit-flex-shrink: 1;
  -ms-flex-negative: 1;
          flex-shrink: 1;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
          justify-content: center;
}

.nav-in-category li:first-child {
  border-left: none;
}

.nav-in-category li a {
  font-size: 14px;
  line-height: 1.14;
  display: -webkit-flex;
  display: -ms-flexbox;
  display:         flex;
  height: 50px; 
  text-align: center;

  -webkit-justify-content: center;
  -ms-flex-pack: center;
          justify-content: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
          align-items: center;
}

.nav-in-category li a {
  position: relative;
  z-index: 3; 
  width: 100%;
  text-decoration: none;
  color: inherit;
}

.nav-in-category li a:before,.nav-in-category li a:after {
  position: absolute;
  content: '';
  transition: -webkit-transform .3s ease;
  transition:         transform .3s ease;
  transition:         transform .3s ease, -webkit-transform .3s ease;
}

.nav-in-category li a:before {
  bottom: -1px;
  left: 0;
  width: 100%;
  height: 2px;
  -webkit-transform: scaleX(0) translate3d(0, 0, 0);
          transform: scaleX(0) translate3d(0, 0, 0); 
  background: #000;
}

.nav-in-category li a:hover:before {
  -webkit-transform: scaleX(1) translate3d(0, 0, 0);
          transform: scaleX(1) translate3d(0, 0, 0);
}

.nav-in-category li.current {
  font-weight: bold;
}

.nav-in-category li.current:after {
  position: absolute;
  bottom: -1px;
  left: 0;
  width: 100%;
  height: 2px;
  content: '';
  background: #000;
}

.nav-pn {
  font-size: 14px; 
  line-height: 1.75;
  display: -webkit-flex;
  display: -ms-flexbox;
  display:         flex;

  -webkit-flex-flow: row nowrap;
      -ms-flex-flow: row nowrap;
          flex-flow: row nowrap;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-align-items: center;
  -ms-flex-align: center;
          align-items: center;
}

.nav-pn .prev,.nav-pn .next {
  position: relative;
  height: 30px;
  padding-top: 3px;
}

.nav-pn .prev:before,.nav-pn .next:before {
  position: absolute;
  top: 0;
  display: block;
  width: 30px;
  height: 30px;
  content: '';
  transition: -webkit-transform .4s;
  transition:         transform .4s;
  transition:         transform .4s, -webkit-transform .4s;
  background: url(/img/icon/icon_pagetop.svg) 50% 50% no-repeat;

  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}

.nav-pn .prev:hover:before,.nav-pn .next:hover:before {
  transition: -webkit-transform .1s;
  transition:         transform .1s;
  transition:         transform .1s, -webkit-transform .1s;
}

.nav-pn .prev {
  padding-left: 30px;
}

.nav-pn .prev:before {
  left: 0;
  -webkit-transform: rotate(270deg);
      -ms-transform: rotate(270deg);
          transform: rotate(270deg);
}

.nav-pn .prev:hover:before {
  -webkit-transform: translate(-3px, 0) rotate(270deg);
      -ms-transform: translate(-3px, 0) rotate(270deg);
          transform: translate(-3px, 0) rotate(270deg);
}

.nav-pn .next {
  padding-right: 30px;
}

.nav-pn .next:before {
  right: 0;
  -webkit-transform: rotate(90deg);
      -ms-transform: rotate(90deg);
          transform: rotate(90deg);
}

.nav-pn .next:hover:before {
  -webkit-transform: translate(3px, 0) rotate(90deg);
      -ms-transform: translate(3px, 0) rotate(90deg);
          transform: translate(3px, 0) rotate(90deg);
}

[class^='box-'],[class*=' box-'] {
  position: relative;
}

[class^='box-']:after,[class*=' box-']:after {
  display: block;
  clear: both; 
  content: '';
}

[class^='box-'].fit,[class*=' box-'].fit {
  padding: 0;
}

.list_box {
  padding: 15px; 
  border: solid 1px #e0e0e0;
  background-color: #fff;
}

.list_box .box_ttl {
  font-weight: bold;
  margin-bottom: 10px;
}

.list_box .box-txt {
  margin-bottom: 10px;
}

.list_box .note {
  float: left; 
  width: 70%;
}

.list_box .note li li {
  padding-left: 1em;
}

.list_box .list_box_img img {
  float: left; 
  width: 28%;
}

.list_box .f-none {
  width: 100%;
}

@media screen and (max-width: 767px) {
  .list_box {
    margin-top: 20px; 
    padding: 18px 16px;
  }
  .list_box .box_ttl {
    font-size: 14px;
    font-weight: bold;
    margin-bottom: 5px;
  }
  .list_box .box-txt {
    margin-bottom: 5px;
  }
  .list_box .note {
    width: 100%; 
    margin-top: 10px;
  }
  .list_box .note li li {
    padding-left: 0;
    text-indent: 0;
  }
  .list_box .list_box_img img {
    width: 100%;
    margin-top: 10px;
  }
}

.list_photo {
  padding: 15px;
  text-align: center; 
  background-color: #fff;
}

.list_photo img {
  max-width: 90%;
}

[class^='btn-'],[class*=' btn-'] {
  font-size: 14px; 
  line-height: 1.3;
  position: relative;
  display: inline-block;
  text-align: center;
  text-decoration: none;
  border: none;
}

[class^='btn-']:hover,[class*=' btn-']:hover {
  transition: all 300ms 0s ease;
  text-decoration: none; 
  opacity: .8;

  -ms-filter: 'progid:DXImageTransform.Microsoft.Alpha(Opacity=80)';
}

[class^='btn-']>b,[class*=' btn-']>b {
  position: relative;
  display: block;
  padding: 10px;
  vertical-align: middle;
}

.btn-link {
  font-weight: bold;
  line-height: 1.2;
  display: -webkit-flex;
  display: -ms-flexbox;
  display:         flex;
  height: 40px;
  padding: 5px;
  transition: all 1250ms cubic-bezier(.19, 1, .22, 1); 
  text-align: center;
  border: 0px solid;
  border: 0 solid;
  border-radius: 0px;
  outline: 1px solid;
  outline-color: rgba(0, 0, 0, .5);
  outline-offset: 0px;
  background: #fff;
  text-shadow: none;

  -webkit-flex-flow: row wrap;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
          justify-content: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
          align-items: center;
}

.btn-link:hover {
  border: 1px solid;
  outline-color: rgba(0, 0, 0, 0);
  outline-offset: 15px;
}

.btn-link--s {
  width: 200px;
  height: 40px;
}

.btn-link--m {
  width: 320px;
  height: 70px;
}

@media screen and (min-width: 768px), print {
  .btn-link--m {
    font-size: 18px;
  }
}

@media screen and (max-width: 767px) {
  .btn-link--m {
    width: 250px;
    height: 50px;
  }
}

.btn-link--r {
  color: #fff;
  outline-color: white; 
  background: none;
}

.btn-link--r:hover {
  outline-color: rgba(255, 255, 255, 0);
}

.btn-link--em {
  color: #fff;
  outline-color: #b33232; 
  background: #b33232;
}

.btn-link--em:hover {
  border: none; 
  outline-color: rgba(179, 50, 50, 0);
}

.btn-link--emr {
  color: #b33232;
  outline-color: #b33232; 
  background: none;
}

.btn-link--emr:hover {
  outline-color: rgba(179, 50, 50, 0);
}

@media screen and (min-width: 768px), print {
  .btn-link--pdf {
    padding-right: 18px; 
    padding-left: 34px;
  }
  .btn-link--pdf>.icon--pdf {
    position: absolute;
    top: 50%;
    left: 16px;
    width: auto; 
    height: 20px;
    margin-top: -10px;
  }
}

@media screen and (max-width: 767px) {
  .btn-link--pdf>.icon--pdf {
    width: auto; 
    height: 20px;
    margin-right: 3px;
  }
}

.btn-link-j {
  text-align: left;
}

.btn-link-j:hover>img {
  -webkit-animation: judgeA 1250ms cubic-bezier(.19, 1, .22, 1);
          animation: judgeA 1250ms cubic-bezier(.19, 1, .22, 1); 
  outline: 1px solid;
}

@-webkit-keyframes judgeA {
  0% {
    outline-color: #6f6f6f; 
    outline-offset: 0px;
  }
  100% {
    outline-color: rgba(111, 111, 111, 0); 
    outline-offset: 10px;
  }
}

@keyframes judgeA {
  0% {
    outline-color: #6f6f6f; 
    outline-offset: 0px;
  }
  100% {
    outline-color: rgba(111, 111, 111, 0); 
    outline-offset: 10px;
  }
}

.btn-to-top {
  position: absolute;
  z-index: 998;
  top: 14px;
  right: 30px;
  overflow: hidden;
  transition: opacity .3s; 
  opacity: 0;

  -ms-filter: 'progid:DXImageTransform.Microsoft.Alpha(Opacity=0)';
}

.btn-to-top img {
  position: relative;
}

@media screen and (max-width: 767px) {
  .btn-to-top {
    top: initial;
    top: auto;
    right: 10px;
    bottom: 80px;
  }
}

.btn-to-top.active {
  opacity: 1;

  -ms-filter: 'progid:DXImageTransform.Microsoft.Alpha(Opacity=100)';
}

.btn-to-top.fixed {
  position: fixed;
  top: initial;
  top: auto; 
  bottom: 10px;
}

.btn-to-top:hover img {
  -webkit-animation: arrow .4s;
          animation: arrow .4s;
}

@-webkit-keyframes arrow {
  50% {
    top: -.1em;
  }
  100% {
    top: .1em;
  }
}

@keyframes arrow {
  50% {
    top: -.1em;
  }
  100% {
    top: .1em;
  }
}

.back-to-index>a {
  margin: 56px auto 0;
}

@media screen and (max-width: 767px) {
  .back-to-index>a {
    margin-top: 26px;
  }
}

.flex-btn {
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display:         inline-flex;
  width: 100%;
  margin-top: 16px;

  -webkit-justify-content: center;
  -ms-flex-pack: center;
          justify-content: center;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
}

@media screen and (min-width: 768px), print {
  .flex-btn>a.btn-link {
    width: 19%;
    height: auto;
    min-height: 40px;
    margin-right: 1%;
    padding: 5px 10px;
  }
}

@media screen and (max-width: 767px) {
  .flex-btn {
    display: block;
  }
  .flex-btn>a {
    margin-bottom: 8px;
  }
}

@media screen and (min-width: 768px), print {
  .flex-btn.__wide>a.btn-link {
    width: 35%;
  }
}

[type=text],[type=password],[type=tel],[type=number] {
  border: 1px solid #bbb;
  border-radius: 5px;
}

[type=text]::-webkit-input-placeholder,[type=password]::-webkit-input-placeholder,[type=tel]::-webkit-input-placeholder,[type=number]::-webkit-input-placeholder {
  color: #999;
}

[type=text]:-moz-placeholder,[type=password]:-moz-placeholder,[type=tel]:-moz-placeholder,[type=number]:-moz-placeholder {
  color: #999;
}

[type=text]::-moz-placeholder,[type=password]::-moz-placeholder,[type=tel]::-moz-placeholder,[type=number]::-moz-placeholder {
  color: #999;
}

[type=text]:-ms-input-placeholder,[type=password]:-ms-input-placeholder,[type=tel]:-ms-input-placeholder,[type=number]:-ms-input-placeholder {
  color: #999;
}

[type=number] {
  -moz-appearance: textfield;
}

[type=number]::-webkit-outer-spin-button,[type=number]::-webkit-inner-spin-button {
  margin: 0; 

  -webkit-appearance: none;
}

[type='checkbox']+label,[type='radio']+label {
  position: relative;
  top: .1em;
}

.search-form {
  position: relative; 
  display: block;
}

.search-form input {
  font-size: 18px; 
  width: 100%;
  height: 60px;
  padding: 10px 120px 10px 20px;
  border: 1px solid #ccc;
  border-right: none;
  border-radius: 60px;
}

.search-form .btn-search {
  font-size: 18px; 
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  margin: auto;
  border-radius: 0 60px 60px 0;
}

.search-form .btn-search:hover {
  opacity: .75;

  -ms-filter: 'progid:DXImageTransform.Microsoft.Alpha(Opacity=75)';
}

.select {
  position: relative;
  display: inline-block;
  overflow: hidden;
  background: #fff;
}

.select select {
  position: relative;
  width: 100%;
  margin: 0;
  padding: 5px 40px 5px 10px;
  border-color: #333;
  border-radius: 4px;
  background: none; 

  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}

.select select::-ms-expand {
  display: none;
}

.select:before {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  display: block;
  width: 30px;
  content: '';
  border-radius: 0 4px 4px 0;
  background: #333;
}

.select:after {
  top: 0;
  right: 11px;
  bottom: 2px;
  margin: auto;
}

.page-header {
  color: #fff; 
  background: url(/img/common/H1.png) center center no-repeat #000;
}

.page-header .page-title {
  font-size: 31px;
  font-weight: normal; 
  display: -webkit-flex;
  display: -ms-flexbox;
  display:         flex;
  height: 100px;
  margin: 0 auto;

  -webkit-flex-flow: row wrap;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
          justify-content: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
          align-items: center;
}

@media screen and (max-width: 767px) {
  .page-header {
    background-image: url(/img/common/H1_sp.png);
  }
  .page-header .page-title {
    font-size: 16px; 
    height: 50px;
  }
}

.guest-header {
  text-align: center;
  background: none;
}

@media screen and (min-width: 768px), print {
  .guest-header {
    padding-bottom: 50px; 
    background: url(/img/guest/guest_background.png) center center no-repeat #000;
  }
}

.guest-header .page-title {
  height: auto;
  padding-top: 50px;
  padding-bottom: 30px;
}

@media screen and (max-width: 767px) {
  .guest-header .page-title {
    padding-top: 27px;
    padding-bottom: 28px;
    background: url(/img/guest/guest_background_sp.png) center center no-repeat #000;
    background-size: contain;
  }
  .guest-header .page-title img {
    width: 200px;
    height: 14.1px;
  }
}

.guest-header .guest-read {
  font-size: 16px;
  font-weight: normal;
  line-height: 1.75;
}

@media screen and (max-width: 767px) {
  .guest-header .guest-read {
    padding: 16px 10px; 
    text-align: left;
    color: #000;
  }
}

.guest-header .guest-read p {
  margin-top: .3em;
}

.guest-header .guest-read p:first-child {
  margin-top: 0;
}

@media screen and (max-width: 767px) {
  .guest-header .guest-read p {
    margin-top: 1em;
  }
}

.ttl-lv1 {
  font-size: 22px;
  font-weight: bold;
  line-height: 1.2;
  margin-top: 66px;
  margin-bottom: 20px; 
  text-align: center;
}

@media screen and (max-width: 767px) {
  .ttl-lv1 {
    font-size: 16px;
    margin-top: 30px;
  }
}

.ttl-lv2 {
  font-size: 20px;
  font-weight: bold;
  margin-bottom: 20px;
  padding-bottom: 11px;
  text-align: center; 
  border-bottom: 1px dotted #000;
}

@media screen and (max-width: 767px) {
  .ttl-lv2 {
    font-size: 15px;
    margin-top: 15px;
  }
}

.ttl-lv3 {
  font-size: 18px;
  font-weight: bold;
  line-height: 1.56;
  margin-top: 15px; 
  color: #6214ab;
}

@media screen and (max-width: 767px) {
  .ttl-lv3 {
    font-size: 14px;
    margin-top: 15px;
  }
}

.lv-3 .ttl-em {
  font-size: 18px;
  font-weight: bold;
  margin: 80px 0 45px;
  padding: 15px 0; 
  text-align: center;
  background-color: #ececec;
}

@media screen and (max-width: 767px) {
  .lv-3 .ttl-em {
    font-size: 15px;
    margin: 30px 0 20px;
    padding: 10px 0;
  }
}

.ttl-lv2--result {
  font-size: 22px;
  line-height: 1.4;
  display: -webkit-flex;
  display: -ms-flexbox;
  display:         flex;
  height: 60px;
  margin-top: 75px; 
  margin-bottom: 40px;
  color: #fff;
  background-image: linear-gradient(to left, #7a3ebb, #7421c9 49%, #1e1338);

  -webkit-flex-flow: row nowrap;
      -ms-flex-flow: row nowrap;
          flex-flow: row nowrap;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
          justify-content: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
          align-items: center;
}

@media screen and (max-width: 767px) {
  .ttl-lv2--result {
    font-size: 16px;
    height: 40px;
    margin-top: 40px; 
    margin-bottom: 20px;
  }
}

.ttl-lv3--result {
  font-size: 20px;
  margin-top: 35px;
  margin-bottom: 20px; 
  text-align: center;
}

@media screen and (max-width: 767px) {
  .ttl-lv3--result {
    font-size: 15px;
    margin-top: 15px;
    margin-bottom: 2px;
  }
}

.ttl-lv2--guest {
  font-size: 24px;
  line-height: 1.17;
  margin-top: 12px;
  margin-bottom: 12px;
}

@media screen and (max-width: 767px) {
  .ttl-lv2--guest {
    font-size: 15px;
    line-height: 1.87;
    margin-top: 5px;
    margin-bottom: 1px;
  }
}

.ico-dir-right {
  position: relative;
  margin-right: 10px;
  text-decoration: none;
}

.ico-dir-right:before {
  position: relative;
  top: -.1em;
  left: 0;
}

[class^=ico-popup] {
  position: relative;
  display: inline-block;
  width: 10px;
  height: 10px;
  margin-left: .5em; 
  background: url(/img/icon/icon_window.svg) center center no-repeat;
}

.ico-popup-highlight:before,.ico-popup-highlight:after {
  border-color: #ccc;
}

[class^=ico-lbl] {
  font-size: 14px;
  font-weight: bold;
  line-height: 1;
  display: inline-block;
  width: 96px;
  padding: 5px 3px 3px;
  text-align: center; 
  white-space: nowrap;
  color: #fff;
  background: #999;
}

.label-new {
  font-size: 10px;
  display: inline-block;
  margin-left: 12px;
  padding: 5px 8px 3px;
  text-align: center;
  vertical-align: 30%; 
  color: #fff;
  background: #e53b76;
}

.sns-motion:hover img,.social-link a:hover img {
  -webkit-animation: scaleBtn .2s ease-in-out forwards;
          animation: scaleBtn .2s ease-in-out forwards;
}

@-webkit-keyframes scaleBtn {
  0% {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
  100% {
    -webkit-transform: scale(1.1);
            transform: scale(1.1);
  }
}

@keyframes scaleBtn {
  0% {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
  100% {
    -webkit-transform: scale(1.1);
            transform: scale(1.1);
  }
}

.inline--pdf {
  vertical-align: middle;
}

[class^=ico-mail] {
  position: relative;
  display: inline-block;
  width: 18px;
  height: 13px;
  margin-right: .5em; 
  background: url(/img/icon/icon_mail.svg) center center no-repeat;
}

[class^=ico-tel] {
  position: relative;
  display: inline-block;
  width: 14px;
  height: 20px;
  margin-right: .3em; 
  background: url(/img/icon/icon_tel.svg) center center no-repeat;
}

.qa-list dt {
  padding-left: 35px; 
  background: url(/img/icon/icon_Q.svg) 0 top no-repeat;
}

.qa-list dd {
  padding-left: 35px; 
  background: url(/img/icon/icon_A.svg) 0 top no-repeat;
}

.inline--instagram {
  width: auto;
  height: 1.125em;
  margin-right: .3em; 
  vertical-align: middle;
}

b.em,b[class^='em-'],b[class*=' em-'] {
  font-style: italic;
}

b.em-red {
  color: #a4032f;
}

a:hover b.em-red {
  color: #c00;
}

b.suf {
  font-size: .75em;
  vertical-align: top;
}

strong b {
  font-weight: bold;
}

.txt {
  line-height: 1.75; 
  margin-top: 20px;
}

.txt:first-child {
  margin-top: 0;
}

p.annotation {
  line-height: 1.75; 
  padding-left: 1em;
  text-indent: -1em;
}

.annotation>li {
  font-size: 12px;
  line-height: 1.75;
  margin-bottom: .5em;
  padding-left: 1em;
  text-indent: -1em;
  color: #777;
}

.annotation>li:last-child {
  margin-bottom: 0;
}

.annotation a {
  color: #777;
}

.attention {
  color: #c00;
}

.indent {
  margin-left: 20px;
}

.hd-lv3 {
  margin-bottom: 20px;
}

.hd-lv3:not(:first-child) {
  margin-top: 50px;
}

.sup {
  font-size: inherit;
  vertical-align: top;
}

.sup2 {
  font-size: 10px;
  vertical-align: super;
}

.sub {
  font-size: inherit;
  vertical-align: baseline;
}

.note {
  margin-top: 4px;
}

.note>li {
  font-size: 15px; 
  padding-left: 1em;
  text-indent: -1em;
}

@media screen and (max-width: 767px) {
  .note {
    margin-top: 20px;
  }
  .note>li {
    font-size: 13px;
    padding-left: 1.2em; 
    text-indent: -1.2em;
  }
  .note>li>.bul {
    display: inline-block;
    width: 1.2em;
    text-indent: 0;
  }
}

.link-list-v {
  margin-top: 7px;
}

.link-list-v>li {
  margin-top: 7px;
}

.link-list-v>li:first-child {
  margin-top: 0;
}

a {
  text-decoration: none; 
  color: #000;
}

a:hover {
  text-decoration: none;
}

a.link01.red,.link01.red a {
  color: #b33232;
}

a.link01.red:before,.link01.red a:before {
  background: #b33232;
}

a[href^='tel'] {
  cursor: default; 
  opacity: 1;

  -ms-filter: 'progid:DXImageTransform.Microsoft.Alpha(Opacity=100)';
}

a[href^='http'] {
  word-break: break-all;
}

.link-list>li {
  line-height: 1.75; 
  position: relative;
  padding-left: 20px;
}

.link-list>li:before {
  top: .4em;
  bottom: auto;
  left: 0;
}

.link-list>li.current>a {
  font-weight: bold;
}

.link-list>li:not(:first-child) {
  margin-top: .3em;
}

.link-list>li>a {
  text-decoration: none;
}

.link-list>li>a.link_win:after,.link-list>li>a.popup:after {
  top: auto;
}

.link-list>li b>a {
  text-decoration: none; 
  color: #d70029;
}

.link-list>li b>a:hover {
  text-decoration: underline;
}

.link-list.list-h {
  margin-left: -40px;
}

.link-list.list-h>li {
  margin-left: 40px;
}

.link-list--inline {
  display: -webkit-flex;
  display: -ms-flexbox;
  display:         flex;
  margin: -9px 0; 

  -webkit-flex-flow: row wrap;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap;
  -webkit-justify-content: flex-start;
  -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-align-items: flex-start;
  -ms-flex-align: start;
          align-items: flex-start;
}

.link-list--inline>li {
  margin: 9px 1.2em 9px 0;
}

.link-anchor {
  margin-left: -40px;
}

.link-anchor>li {
  padding-left: 40px;
}

.link-anchor>li a {
  line-height: 1.3; 
  position: relative;
  display: inline-block;
  padding-left: 20px;
  text-decoration: none;
}

.link-anchor>li a:before {
  top: .3em;
  bottom: auto;
  left: 0;
}

.link-anchor>li a.link_win:after,.link-anchor>li a.popup:after {
  top: auto;
}

.link-anchor>li a:hover {
  text-decoration: underline;
}

table>thead th {
  line-height: 1.3; 
  padding: 10px;
  text-align: center;
}

table>tbody>tr>th,table>tbody>tr>td {
  line-height: 1.75; 
  padding: 10px;
  text-align: left;
  vertical-align: top;
}

table>tbody>tr>td.num {
  text-align: right;
}

table>tbody>tr>td.status {
  text-align: center;
}

.tbl-std {
  width: 100%;
}

.tbl-std th,.tbl-std td {
  padding: 10px 15px;
  border: 1px solid #999;
}

.tbl-std th {
  font-weight: bold; 
  background: #e9e9e9;
}

.tbl-std td {
  background: #fff;
}

.tbl-std thead th {
  text-align: center;
}

.tbl-std thead+tbody th {
  background: #f6f6f6;
}

.tbl-item-spec tr:first-child th {
  padding-top: 0;
}

@media screen and (min-width: 768px), print {
  .tbl-item-spec tr:first-child td {
    padding-top: 0;
  }
}

.tbl-item-spec th {
  padding: 10px 0 0;
  text-align: center;
}

.tbl-item-spec th>.inner {
  font-size: 13px;
  font-weight: normal; 
  width: 120px;
  padding: 2px;
  color: #fff;
  background: #000;
}

.tbl-item-spec td {
  width: calc(100% - 120px);
  padding: 10px 0 0 10px;
}

@media screen and (max-width: 767px) {
  .tbl-item-spec th {
    font-size: 12px;
    padding-top: 13px;
  }
  .tbl-item-spec td {
    font-size: 14px;
    width: auto;
    padding-top: 5px;
    padding-left: 0;
  }
  .tbl-item-spec tbody,.tbl-item-spec thead,.tbl-item-spec tr,.tbl-item-spec td,.tbl-item-spec th,.tbl-item-spec caption {
    display: block;
  }
}

@media screen and (min-width: 768px), print {
  .tbl-item-spec tr.ex-margin>th,.tbl-item-spec tr.ex-margin>td {
    padding-top: 20px;
  }
}

.tbl-02 {
  width: 100%;
}

.tbl-02 th,.tbl-02 td {
  line-height: 1.2; 
  padding: 6px 10px 6px;
}

@media screen and (max-width: 767px) {
  .tbl-02 th,.tbl-02 td {
    font-size: 12px;
    padding: 9px 5px;
  }
  .tbl-02 th:first-child,.tbl-02 td:first-child {
    padding-left: 10px;
  }
  .tbl-02 th:last-child,.tbl-02 td:last-child {
    padding-right: 10px;
  }
}

.tbl-02 thead {
  border-bottom: 1px solid #000;
}

.tbl-02 thead th {
  font-weight: normal;
  text-align: left;
}

.tbl-02 tbody {
  font-size: 15px;
}

.tbl-02 tbody>tr:nth-child(even)>td,.tbl-02 tbody>tr:nth-child(even) th {
  background: #f3f4f9;
}

@media screen and (min-width: 768px), print {
  .tbl-02 tbody>tr:first-child>th,.tbl-02 tbody>tr:first-child td {
    padding-top: 20px;
  }
}

.tbl-w--candidates th:nth-child(1) {
  width: 313px;
}

.tbl-w--candidates th:nth-child(2) {
  width: 301px;
}

.tbl-w--candidates th:nth-child(3) {
  width: 320px;
}

.tbl-grandprix th:nth-child(1) {
  width: 140px;
}

.tbl-grandprix th:nth-child(2) {
  width: 268px;
}

.tbl-grandprix th:nth-child(3) {
  width: 206px;
}

.tbl-grandprix th:nth-child(4) {
  width: 320px;
}

.social-link {
  display: -webkit-flex;
  display: -ms-flexbox;
  display:         flex;

  -webkit-flex-flow: flex-end;
      -ms-flex-flow: flex-end;
          flex-flow: flex-end;
  -webkit-align-items: center;
  -ms-flex-align: center;
          align-items: center;
}

.social-link>li {
  margin-right: 18px;
}

.social-link>li:last-child {
  margin-right: 0;
}

@media screen and (min-width: 768px), print {
  .news-listing {
    max-width: 824px;
    margin: 0 auto;
  }
}

.news-listing>li {
  padding: 15px 11px 13px; 
  border-bottom: 1px dotted #000;
}

.news-listing>li:first-child {
  border-top: 1px dotted #000;
}

@media screen and (min-width: 768px), print {
  .news-listing>li {
    display: -webkit-flex;
    display: -ms-flexbox;
    display:         flex;

    -webkit-flex-flow: row nowrap;
        -ms-flex-flow: row nowrap;
            flex-flow: row nowrap;
    -webkit-justify-content: flex-start;
    -ms-flex-pack: start;
            justify-content: flex-start;
  }
}

@media screen and (max-width: 767px) {
  .news-listing>li {
    font-size: 14px;
    padding: 9px 0;
  }
}

.news-listing .date {
  width: 123px;
  padding: 1px 10px 0;

  -webkit-flex-shrink: 0;
  -ms-flex-negative: 0;
          flex-shrink: 0;
}

@media screen and (max-width: 767px) {
  .news-listing .date {
    line-height: 1.71; 
    padding: 0;
  }
}

.news-listing .title a {
  color: #b33232;
}

.news-listing .title a:before {
  margin-top: -1px;
  background: #b33232;
}

.news-listing .title a:hover:before {
  margin-top: 0;
}

@media screen and (max-width: 767px) {
  .news-listing .title {
    line-height: 1.71;
  }
}

.news-listing .title .label-new {
  line-height: 1;
}

.subject-index {
  border-bottom: 1px dashed #000;
}

@media screen and (min-width: 768px), print {
  .subject-index {
    position: relative;
    display: -webkit-flex;
    display: -ms-flexbox;
    display:         flex;
    padding: 30px 0 30px;

    -webkit-flex-flow: row nowrap;
        -ms-flex-flow: row nowrap;
            flex-flow: row nowrap;
  }
  .subject-index__title {
    font-size: 20px;
    width: 215px;

    -webkit-align-self: center;
    -ms-flex-item-align: center;
    -ms-grid-row-align: center;
            align-self: center;
    -webkit-flex-shrink: 0;
    -ms-flex-negative: 0;
            flex-shrink: 0;
  }
}

@media screen and (max-width: 767px) {
  .subject-index {
    padding: 13px 0 20px; 
    border-bottom-style: dotted;
  }
  .subject-index__title {
    font-size: 15px;
    margin-bottom: 13px;
  }
}

.subject-index__items {
  display: -webkit-flex;
  display: -ms-flexbox;
  display:         flex;
  margin-top: -14px;
  margin-bottom: calc(70px - 14px); 

  -webkit-flex-flow: row wrap;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap;
  -webkit-flex-grow: 1;
  -ms-flex-positive: 1;
          flex-grow: 1;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
          justify-content: center;
}

.subject-index__items img {
  width: 90px;
  height: 90px;
}

.subject-index__items>li {
  width: 180px;
  margin-top: 14px;
  margin-bottom: 14px;
  padding-right: 5px; 
  padding-left: 5px;
  text-align: center;
}

.subject-index__items>li>a {
  color: #b33232;
}

.subject-index__items>li>a:before {
  background-color: #b33232;
}

.subject-index__items>li>a>img {
  transition: -webkit-transform .10s ease-in;
  transition:         transform .10s ease-in;
  transition:         transform .10s ease-in, -webkit-transform .10s ease-in;
}

.subject-index__items>li>a:hover>img {
  transition: -webkit-transform .3s cubic-bezier(.175, .885, .32, 1.275);
  transition:         transform .3s cubic-bezier(.175, .885, .32, 1.275);
  transition:         transform .3s cubic-bezier(.175, .885, .32, 1.275), -webkit-transform .3s cubic-bezier(.175, .885, .32, 1.275); 
  -webkit-transform: scale(1.08);
      -ms-transform: scale(1.08);
          transform: scale(1.08);
}

@media screen and (max-width: 767px) {
  .subject-index__items {
    margin-top: -10px;
    margin-bottom: -10px;
  }
  .subject-index__items img {
    width: 66px;
    height: 66px;
  }
  .subject-index__items>li {
    width: 100px;
    margin-top: 10px;
    margin-bottom: 10px;
  }
}

.subject-index__name {
  font-size: 14px;
  line-height: 1.29; 
  display: block;
  margin-top: 8px;
  text-align: center;
}

@media screen and (max-width: 767px) {
  .subject-index__name {
    font-size: 11px;
    margin-top: 4px;
  }
}

@media screen and (min-width: 768px), print {
  .subject-index__link {
    position: absolute;
    bottom: 30px;
    left: 0; 
    width: 100%;

    -webkit-padding-start: 215px;
    padding-inline-start: 215px;
  }
  .subject-index__link>.btn-link {
    width: 260px; 
    margin: 0 auto;
  }
}

@media screen and (max-width: 767px) {
  .subject-index__link {
    margin-top: 30px;
  }
  .subject-index__link>.btn-link {
    width: 260px; 
    margin: 0 auto;
  }
  .subject-index__link>.btn-link>.icon--pdf {
    width: auto; 
    height: 14px;
  }
}

@media screen and (max-width: 767px) {
  :not(.subject-index)+.subject-index,:not(.subject)+.subject {
    border-top-style: dotted;
  }
}

.basic__info {
  clear: both;
  overflow: hidden;
  margin-bottom: 16px;
}

.basic__image {
  float: left; 
  width: 20%;
}

.basic__image img {
  width: 100%;
}

.basic__text {
  float: right; 
  width: 78%;
}

.basic__link {
  clear: both;
}

.basic__attention {
  position: relative; 
  padding: 8px 8px 8px 24px;
  padding: .5rem .5rem .5rem 1.5rem;
  background: #f5f5f5;
}

.basic__attention:before {
  position: absolute;
  top: 0; 
  left: 0;
  padding: 8px 0 8px 8px;
  padding: .5rem 0 .5rem .5rem;
  content: '※';
}

@media screen and (max-width: 767px) {
  .basic__image {
    width: 100%;
    margin-bottom: 8px;
    text-align: center;
  }
  .basic__image img {
    max-width: 200px;
  }
  .basic__text {
    clear: both;
    width: 100%;
    margin-bottom: 8px;
  }
}

.subject {
  padding-bottom: 30px; 
  border-bottom: 1px dotted #000;
}

.subject__name {
  font-size: 21px;
  font-weight: 900;
  line-height: 1.38;
  width: 100%;
  margin-top: 27px;
  margin-bottom: 15px;
}

.subject__name .mark-trade {
  font-size: 80%;
  vertical-align: 10%;
}

@media screen and (max-width: 767px) {
  .subject__name {
    font-size: 16px;
    margin-top: 15px;
    margin-bottom: 4px;
  }
}

.subject img {
  width: 100%;
  height: auto;
}

@media screen and (min-width: 768px), print {
  .subject {
    display: -webkit-flex;
    display: -ms-flexbox;
    display:         flex;

    -webkit-flex-flow: row wrap;
        -ms-flex-flow: row wrap;
            flex-flow: row wrap;
    -webkit-justify-content: flex-start;
    -ms-flex-pack: start;
            justify-content: flex-start;
  }
  .subject__image {
    width: 50%;
  }
  .subject__variation {
    width: 50%;
  }
}

@media screen and (max-width: 767px) {
  .subject__image {
    margin-bottom: 5px;
  }
}

.subject .tbl-item-spec {
  margin-top: 30px;
}

@media screen and (max-width: 767px) {
  .subject .tbl-item-spec {
    margin-top: 16px;
  }
}

.subject__description {
  line-height: 1.75; 
  margin-top: 23px;
}

@media screen and (max-width: 767px) {
  .subject__description {
    font-size: 14px;
    line-height: 1.57; 
    margin-top: 10px;
  }
}

.entry-combo>.inner {
  display: -webkit-flex;
  display: -ms-flexbox;
  display:         flex;
  margin: 0 -5px; 

  -webkit-flex-flow: row wrap;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
          justify-content: center;
}

.entry-combo>.inner>* {
  margin: 0 5px;
}

.entry-combo .btn-link img {
  width: auto; 
  height: 20px;
}

@media screen and (max-width: 767px) {
  .entry-combo .btn-link {
    font-size: 12px;
    width: 145px;
    height: 36px; 
    min-height: 36px;
  }
  .entry-combo .btn-link img {
    height: 14px;
    margin-right: 4px;
  }
}

@media screen and (min-width: 768px), print {
  .entry-combo .btn-link--m {
    font-size: 16px; 
    width: 280px;
  }
  .entry-combo .btn-link--m:first-child {
    margin-right: 15px;
  }
  .entry-combo .btn-link--m:last-child {
    margin-left: 15px;
  }
  .entry-combo .btn-link--m img {
    height: 23px;
  }
}

@media screen and (max-width: 767px) {
  .entry-combo .btn-link--m {
    width: 145px;
  }
}

.profile-judge {
  margin-top: 31px;
}

@media screen and (min-width: 768px), print {
  .profile-judge {
    display: -webkit-flex;
    display: -ms-flexbox;
    display:         flex;
    margin-top: 50px;

    -webkit-flex-flow: row nowrap;
        -ms-flex-flow: row nowrap;
            flex-flow: row nowrap;
    -webkit-justify-content: left;
    -ms-flex-pack: left;
            justify-content: left;
  }
}

@media screen and (max-width: 767px) {
  .profile-judge.listing-mode .profile__header {
    padding-left: 0;
  }
  .profile-judge.listing-mode .profile__header>img {
    float: none;
    margin-left: 0;
  }
  .profile-judge.listing-mode .profile__header .name {
    top: 0;
    margin-top: 5px;
  }
  .profile-judge.listing-mode .profile__header .title {
    margin-top: 3px;
  }
}

.ttl-lv1+.profile-judge {
  margin-top: 60px;
}

@media screen and (max-width: 767px) {
  .ttl-lv1+.profile-judge {
    margin-top: 34px;
  }
}

.profile__header {
  width: 206px; 

  -webkit-flex-shrink: 0;
  -ms-flex-negative: 0;
          flex-shrink: 0;
  -webkit-flex-grow: 0;
  -ms-flex-positive: 0;
          flex-grow: 0;
}

.profile__header>img {
  max-width: 206px;
}

.profile__header .name {
  font-size: 16px;
  font-weight: bold;
  line-height: 1.5;
  margin-top: 9px; 
  padding: 0 10px;
}

.profile__header .title {
  font-size: 12px;
  line-height: 1.5;
  margin-top: 4px;
  padding: 0 10px;
}

@media screen and (max-width: 767px) {
  .profile__header {
    width: auto; 
    padding-left: 124px;
  }
  .profile__header:after {
    display: block;
    clear: both;
    content: '';
  }
  .profile__header>img {
    float: left; 
    width: 114px;
    height: auto;
    margin-left: -124px;
  }
  .profile__header .name {
    font-size: 14px;
    position: relative;
    top: -.2em;
    margin-top: 0;
    padding-left: 0;
  }
  .profile__header .title {
    font-size: 11px;
    margin-top: 4px;
    padding-left: 0;
  }
}

.profile__body {
  font-size: 15px;
  line-height: 1.8;
  position: relative;
  top: -.4em; 
  padding-left: 30px;
}

@media screen and (max-width: 767px) {
  .profile__body {
    font-size: 14px;
    line-height: 1.57;
    top: 0; 
    margin-top: 15px;
    padding-left: 0;
  }
}

.profile__title {
  font-size: 16px;
  margin-top: 30px; 
  margin-bottom: 7px;
}

.profile__title:first-child {
  margin-top: 0;
}

@media screen and (max-width: 767px) {
  .profile__title {
    font-size: 14px;
  }
}

.modal-contents .profile__header .name {
  padding: 0;
}

.modal-contents .profile__header .title {
  padding: 0;
}

@media screen and (max-width: 767px) {
  .modal-contents .profile__header .title {
    margin-top: 0;
  }
}

@media screen and (max-width: 767px) {
  .modal-contents .profile__body {
    margin-top: 18px;
  }
}

@media screen and (max-width: 767px) {
  .modal-contents .profile__title {
    margin-top: 22px; 
    margin-bottom: 2px;
  }
  .modal-contents .profile__title:first-child {
    margin-top: 0;
  }
}

.movie-time {
  display: -webkit-flex;
  display: -ms-flexbox;
  display:         flex;
  margin-top: 4px; 

  -webkit-flex-flow: row wrap;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap;
  -webkit-justify-content: flex-start;
  -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-align-items: flex-start;
  -ms-flex-align: start;
          align-items: flex-start;
}

.movie-time>dt,.movie-time>dd {
  margin-top: 5px;
}

.movie-time>dt {
  font-size: 14px;
  line-height: 20px; 
  width: 65px;
  text-align: center;
  border: 1px solid #e0e0e0;
}

@media screen and (max-width: 767px) {
  .movie-time>dt {
    width: 48px;
  }
}

.movie-time>dd {
  line-height: 1.5;
  width: calc( 100% - 65px);
  padding-top: 0px; 
  padding-left: 10px;
}

@media screen and (max-width: 767px) {
  .movie-time>dd {
    font-size: 15px;
    width: calc( 100% - 48px); 
    padding-top: 1px;
  }
}

.movie-booklet {
  margin-top: 22px;
}

@media screen and (min-width: 768px), print {
  .movie-booklet {
    display: -webkit-flex;
    display: -ms-flexbox;
    display:         flex;
    margin-top: 82px;

    -webkit-align-items: center;
    -ms-flex-align: center;
            align-items: center;
    -webkit-column-gap: 35px;
            column-gap: 35px;
  }
}

@media screen and (min-width: 768px), print {
  .movie-booklet__main {
    width: 46.56%;

    -webkit-flex-shrink: 1;
    -ms-flex-negative: 1;
            flex-shrink: 1;
  }
}

@media screen and (min-width: 768px), print {
  .movie-booklet__image {
    width: 53.43%;

    -webkit-flex-shrink: 2;
    -ms-flex-negative: 2;
            flex-shrink: 2;
  }
}

@media screen and (max-width: 767px) {
  .movie-booklet__image {
    margin-top: 10px;
  }
}

.movie-booklet__image img {
  width: 100%;
  height: auto;
}

.movie-booklet__title {
  font-size: 20px;
  margin-bottom: 7px;
}

@media screen and (max-width: 767px) {
  .movie-booklet__title {
    font-size: 16px;
    margin-bottom: 5px;
  }
}

.movie-booklet .link01 {
  margin-top: 18px;
}

@media screen and (max-width: 767px) {
  .movie-booklet .link01 {
    font-size: 14px;
    margin-top: 14px;
  }
}

.movie-booklet .link01 .inline--pdf {
  margin-right: 10px;
}

@media screen and (min-width: 768px), print {
  .movie-booklet .link01 .inline--pdf {
    height: 27px;
  }
}

#officemap.gssmap {
  margin-top: 65px; 
  padding-bottom: 56.25%;
}

@media screen and (max-width: 767px) {
  #officemap.gssmap {
    margin-top: 30px;
  }
}

.link-bnr {
  position: relative;
  display: -webkit-flex;
  display: -ms-flexbox;
  display:         flex;
  overflow: hidden; 

  -webkit-flex-flow: row wrap;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap;
  -webkit-justify-content: flex-start;
  -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-align-items: center;
  -ms-flex-align: center;
          align-items: center;
}

.link-bnr .title,.link-bnr .sub {
  position: relative;
  z-index: 2;
  width: 100%; 
  color: #fff;
}

.link-bnr .title {
  font-size: 22px;
  font-weight: normal;
  line-height: 1.5; 
  padding-left: 30px;
}

@media screen and (max-width: 767px) {
  .link-bnr .title {
    font-size: 16px;
    padding-left: 18px;
  }
}

.link-bnr .sub {
  font-size: 15px;
  letter-spacing: 1.9px;
}

@media screen and (max-width: 767px) {
  .link-bnr .sub {
    font-size: 10px;
    letter-spacing: 1.3px;
  }
}

.link-bnr .image {
  position: absolute;
  z-index: 1;
  top: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  transition: -webkit-transform .35s ease-out;
  transition:         transform .35s ease-out;
  transition:         transform .35s ease-out, -webkit-transform .35s ease-out;
  background-repeat: no-repeat;
  background-position: 50% 50%;
  background-size: cover;
}

.link-bnr:hover .image {
  transition: -webkit-transform .19s ease-in-out;
  transition:         transform .19s ease-in-out;
  transition:         transform .19s ease-in-out, -webkit-transform .19s ease-in-out; 
  -webkit-transform: scale(1.08);
      -ms-transform: scale(1.08);
          transform: scale(1.08);
}

.subject-index.top {
  padding-top: 10px; 
  border-top: 0;
}

@media screen and (max-width: 767px) {
  .note.sp-note {
    margin-top: 10px;
  }
}

@media screen and (max-width: 767px) {
  .tbl-item-spec td.pt20 {
    padding-top: 20px;
  }
}

@media screen and (max-width: 767px) {
  .entry-btn {
    margin: 5px auto 0;
  }
}

.criteria-dl {
  margin: 20px 40px 0;
}

.criteria-dl dl {
  display: inline-block;
  width: 100%;
  margin: 0 0 10px 0;
}

.criteria-dl dl:last-child {
  margin-bottom: 0;
}

.criteria-dl dt {
  font-size: 14px;
  font-weight: bold;
  padding-bottom: 7px; 
  text-align: center;
}

.criteria-dl dd {
  font-size: 14px;
  padding-top: 8px; 
  border-top: solid 1px #666;
}

@media screen and (min-width: 1010px), print {
  .criteria-dl {
    margin: 30px 0 0;
  }
  .criteria-dl dl {
    display: inline-table;
    width: 22%;
    margin-right: 3.5%;
  }
  .criteria-dl dl:last-child {
    margin-right: 0;
  }
  .criteria-dl dt {
    font-weight: bold;
    padding-bottom: 7px; 
    text-align: center;
  }
  .criteria-dl dd {
    font-size: 14px;
    padding-top: 8px; 
    border-top: solid 1px #666;
  }
}

.result-statistics {
  text-align: center;
}

.result-statistics .row1 {
  font-size: 18px;
  line-height: 1.5;
}

.result-statistics .total {
  font-size: 32px;
  font-weight: bold;
  margin-left: 16px;
}

.result-statistics .num {
  font-size: 20px;
}

@media screen and (max-width: 767px) {
  .result-statistics .row1 {
    font-size: 15px;
  }
  .result-statistics .total {
    font-size: 24px;
    margin-left: 14px;
  }
  .result-statistics .row2 {
    font-size: 12px;
  }
  .result-statistics .num {
    font-size: 16px;
  }
}

.ttl-lv2--result+.container>.result-statistics:first-child {
  margin-top: -12px;
}

@media screen and (max-width: 767px) {
  .ttl-lv2--result+.container>.result-statistics:first-child {
    margin-top: -10px;
  }
}

.bnr-single {
  margin-top: 78px;
  margin-bottom: 80px;
}

@media screen and (max-width: 767px) {
  .bnr-single {
    margin-top: 25px;
    margin-bottom: 20px;
  }
}

.bnr-single>a {
  display: block;
  max-width: 600px; 
  margin: 0 auto;
}

.bnr-single>a img {
  width: 100%;
  height: auto;
}

.inquiry-box {
  width: 645px;
  margin: 0 auto; 
  padding: 20px 10px 20px 40px;
  border: solid 1px #000;
}

.inquiry-box .ico-tel {
  vertical-align: -20%;
}

.inquiry-box .ico-mail {
  vertical-align: middle;
}

.inquiry-box .mr20 {
  margin-right: 20px;
}

@media screen and (min-width: 768px), print {
  .inquiry-box .inquiry-tel a {
    pointer-events: none; 
    color: #000;
  }
}

@media screen and (max-width: 767px) {
  .inquiry-box {
    width: auto;
    padding: 15px 10px;
  }
  .inquiry-box br {
    display: inline;
  }
  .inquiry-box .mr20 {
    margin-right: 0;
  }
  .inquiry-box .inquiry-tel a {
    font-size: 16px;
    font-weight: bold;
    line-height: 1.2;
    display: inline-block;
    margin: 6px 0;
  }
}

.a-link {
  margin-bottom: 40px; 
  padding: 15px 1px 15px 10px;
  text-align: center;
  background-color: #ececec;
}

.a-link>ul {
  max-width: 933px;
  margin-right: auto; 
  margin-left: auto;
}

.a-link li {
  display: inline-block;
  margin-right: 30px; 
  padding-right: 20px;
  background: url(/img/icon/icon_ar_down.svg) right center no-repeat;
}

@media screen and (max-width: 767px) {
  .a-link {
    font-size: 14px;
    margin: 30px 0 20px;
    margin-bottom: 30px; 
    padding: 10px;
    text-align: center;
  }
  .a-link li {
    margin-right: 18px;
  }
}

.qa-list {
  margin-top: 60px;
}

.qa-list .qa-ttl {
  font-size: 18px; 
  text-align: center;
}

.qa-list dl {
  margin-top: 25px;
  padding-bottom: 25px; 
  border-bottom: 1px dotted #000;
}

.qa-list dl dt {
  margin-bottom: 25px;
}

@media screen and (max-width: 767px) {
  .qa-list {
    font-size: 14px; 
    margin-top: 30px;
  }
  .qa-list .qa-ttl {
    font-size: 15px;
  }
}

.result-progress {
  overflow: hidden;
  background: url(/img/announcement/announcement_background_sp.png) center center no-repeat; 
  background-color: #5411a7;
}

@media screen and (min-width: 768px), print {
  .result-progress {
    background-image: url(/img/announcement/announcement_background.png);
  }
}

@media screen and (max-width: 767px) {
  .result-progress {
    background-size: cover;
  }
}

@media screen and (min-width: 768px), print {
  .result-progress__inner {
    display: -webkit-flex;
    display: -ms-flexbox;
    display:         flex;
    max-width: 1024px;
    height: 220px;
    margin: 0px auto;
    padding-top: 40px;
    padding-right: 30px; 
    padding-left: 30px;

    -webkit-flex-flow: row nowrap;
        -ms-flex-flow: row nowrap;
            flex-flow: row nowrap;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-align-items: flex-start;
    -ms-flex-align: start;
            align-items: flex-start;
  }
}

@media screen and (max-width: 767px) {
  .result-progress__inner {
    padding: 30px 20px;
  }
}

.result-progress__block {
  position: relative;
  color: #fff;
  border: 1px solid #fff;
  outline-color: #fff;
  outline-offset: -1px; 
  background: none;
}

@media screen and (min-width: 768px), print {
  .result-progress__block {
    display: -webkit-flex;
    display: -ms-flexbox;
    display:         flex;
    width: 206px;
    min-height: 140px;
    margin: 0 1%;
    padding: 5px;
    text-align: center; 

    -webkit-flex-flow: column nowrap;
        -ms-flex-flow: column nowrap;
            flex-flow: column nowrap;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
            justify-content: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
            align-items: center;
  }
}

@media screen and (max-width: 767px) {
  .result-progress__block {
    display: block; 
    min-height: 94px;
    margin-top: 20px;
    padding: 8px 20px;
  }
  .result-progress__block:first-child {
    margin-top: 0;
  }
  .result-progress__block:first-child .title {
    padding-top: 13px;
  }
}

.result-progress__block .title {
  font-size: 17px;
  font-weight: bold; 
  line-height: 1.4;
  display: -webkit-flex;
  display: -ms-flexbox;
  display:         flex;
  height: 50px;

  -webkit-align-items: center;
  -ms-flex-align: center;
          align-items: center;
}

@media screen and (max-width: 767px) {
  .result-progress__block .title {
    font-size: 15px;
    line-height: 1.4;
    display: table-cell;
    height: 48px;
    text-align: left;
  }
}

.result-progress__block .date {
  font-size: 15px;
  font-weight: bold; 
  line-height: 1.4;
  display: -webkit-flex;
  display: -ms-flexbox;
  display:         flex;

  -webkit-align-items: flex-start;
  -ms-flex-align: start;
          align-items: flex-start;
}

@media screen and (min-width: 768px), print {
  .result-progress__block .date {
    height: 30px;
  }
}

@media screen and (max-width: 767px) {
  .result-progress__block .date {
    font-size: 14px;
    margin-top: 4px;
  }
}

.result-progress__block>.label-new {
  line-height: 1.1; 
  position: absolute;
  margin: 0;
  padding: 5px 5px 4px;
}

@media screen and (min-width: 768px), print {
  .result-progress__block>.label-new {
    top: 0;
    right: -16px;
    -webkit-transform: translate(-50%, 0);
        -ms-transform: translate(-50%, 0);
            transform: translate(-50%, 0);
  }
}

@media screen and (max-width: 767px) {
  .result-progress__block>.label-new {
    line-height: 1.1;
    top: 10px;
    right: 0;
    -webkit-transform: translate(0, -50%);
        -ms-transform: translate(0, -50%);
            transform: translate(0, -50%);
  }
}

.result-progress__block>.label-link {
  line-height: 1.1; 
  position: absolute;
}

@media screen and (min-width: 768px), print {
  .result-progress__block>.label-link {
    bottom: 10px;
    left: 45%;
  }
}

@media screen and (max-width: 767px) {
  .result-progress__block>.label-link {
    top: 45%;
    right: 20px;
  }
}

.result-progress__block.disabled {
  height: 60px; 
  opacity: .4;

  -ms-filter: 'progid:DXImageTransform.Microsoft.Alpha(Opacity=40)';
}

.announcement_txt p {
  margin-bottom: 40px;
}

.announcement_txt p:last-child {
  margin-bottom: 0;
}

@media screen and (max-width: 767px) {
  .announcement_txt p {
    margin-bottom: 20px;
  }
}

img.name-img {
  margin-top: -4px; 
  vertical-align: middle;
}

@media screen and (min-width: 768px), print {
  img.name-img {
    width: 15px;
    height: 15px;
  }
}

@media screen and (max-width: 767px) {
  img.name-img {
    width: 12px;
    height: 12px;
  }
}

.result-info-box {
  width: auto;
  margin: 40px auto; 
  padding: 20px 10px 20px 40px;
  border: solid 1px #000;
}

@media screen and (max-width: 767px) {
  .result-info-box {
    padding: 15px 10px;
  }
}

.past_award-list-box {
  margin-top: 37px;
}

.past_award-list-box:first-child {
  margin-top: 0;
}

@media screen and (min-width: 1010px), print {
  .past_award-list-box {
    position: relative;
    margin-top: 60px;
  }
}

.past_award-list-box .year {
  width: auto;
  margin: 0 -40px 20px;
  border-bottom: 1px solid #000;
}

@media screen and (min-width: 1010px), print {
  .past_award-list-box .year {
    position: absolute;
    top: 0;
    left: 260px;
    width: 72.1%;
    margin: 0;
  }
}

@media screen and (max-width: 767px) {
  .past_award-list-box .year {
    margin: 0 -10px 20px;
  }
}

.past_award-list-box .year p {
  font-size: 18px;
  font-weight: 900;
  width: 35%;
  text-align: center;
  border-bottom: 3px solid #000;
}

@media screen and (min-width: 1010px), print {
  .past_award-list-box .year p {
    font-size: 24px; 
    line-height: 1.2;
    width: 18%;
  }
}

.past_award-list-box .year span {
  font-size: 14px;
  font-weight: 500;
  padding-left: 7px;
}

@media screen and (min-width: 1010px), print {
  .past_award-list-box .year span {
    font-size: 16px;
    font-weight: normal;
  }
}

.past_award-list-box .award_img {
  margin: 0 20px 15px; 
  text-align: center;
}

@media screen and (min-width: 1010px), print {
  .past_award-list-box .award_img {
    float: left;
    width: 260px; 
    margin: 0;
  }
}

.past_award-list-box .award_img img {
  width: 100%;
  height: auto;
}

@media screen and (min-width: 1010px), print {
  .past_award-list-box .award_img img {
    width: 260px;
  }
}

.past_award-list-box .awardtxt {
  float: none;
  width: auto; 
  padding-top: 0;
}

@media screen and (min-width: 1010px), print {
  .past_award-list-box .awardtxt {
    float: right;
    width: 68.3%; 
    padding-top: 45px;
  }
}

.past_award-list-box .past_award_link {
  display: inline-block;
  margin-top: 15px;
  padding-left: 20px; 
  background: url(/img/icon/icon_ar_right.svg) no-repeat;
  background-position: left 8px;
}

@media screen and (max-width: 767px) {
  .past_award-list-box .past_award_link {
    margin-top: 20px;
    padding-left: 15px; 
    background-position: left 4px;
  }
}

.about-organizer {
  margin-top: 22px;
}

@media screen and (min-width: 768px), print {
  .about-organizer {
    margin-top: 82px;
  }
}

.blk-guest-collection {
  display: -webkit-flex;
  display: -ms-flexbox;
  display:         flex;

  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
          justify-content: center;
  gap: 8px 16px;
  gap: .5rem 1rem;
  margin-block: 40px;
}

.blk-guest-collection .ttl-lv3 {
  color: #333;
}

.blk-guest-collection>hgroup {
  display: -webkit-flex;
  display: -ms-flexbox;
  display:         flex;
          flex-direction: column;

  -webkit-flex-direction: column;
      -ms-flex-direction: column;
  gap: 8px 16px;
  gap: .5rem 1rem;
}

.blk-guest-collection .logo {
  margin-bottom: 15px;
}

.blk-guest-collection .logo img {
  max-width: 100%; 
  height: auto;
}

.blk-guest-collection .logo>a {
  display: block;
  width: 210px;
}

.blk-guest-collection>.images {
  height: 150px;
}

.blk-guest-collection>.images>img {
  width: auto;
  max-width: 100%;
  height: auto;
  max-height: 100%;
}

.blk-guest-collection>.button {
  -webkit-flex-basis: 100%;
  -ms-flex-preferred-size: 100%;
          flex-basis: 100%;
}

.note-box {
  padding: 4px 8px;
  padding: .25rem .5rem;
  background-color: #f5f5f5;
}

.note-box>p {
  font-size: 14px;
}

.modal-wrapper {
  position: fixed;
  z-index: 99999;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0; 
  display: none;
}

.modal-wrapper .modal-overlay {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  opacity: .75;
  background: #000;

  -ms-filter: 'progid:DXImageTransform.Microsoft.Alpha(Opacity=75)';
}

.modal-wrapper .modal-contents {
  position: fixed;
  top: 50%;
  left: 50%;
  width: 100%;
  height: 100%;
  max-height: 97%;
  padding: 60px 0 95px;
  -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  background: #fff;
}

@media screen and (max-width: 767px) {
  .modal-wrapper .modal-contents {
    padding-bottom: 75px;
  }
}

.modal-wrapper .modal-body {
  overflow-x: hidden;
  width: 100%;
  max-width: 1024px;
  height: 100%;
  margin: 0 auto;
  padding: 20px 40px 0;
  transition: height .2s;

  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}

@media screen and (max-width: 767px) {
  .modal-wrapper .modal-body {
    padding: 0 10px;
  }
}

.modal-wrapper .modal-scroller {
  overflow-x: visible;
  height: 100%;

  -webkit-overflow-scrolling: touch;
}

.modal-wrapper .modal-close {
  font-weight: bold;
  position: absolute;
  z-index: 3;
  top: 20px;
  right: 20px;
  display: inline-block;
  width: 24px;
  height: 24px; 
  cursor: pointer;
  text-indent: -9999em;
}

.modal-wrapper .modal-close:before {
  position: absolute;
  top: 0;
  right: 0;
  display: block;
  width: 24px;
  height: 24px;
  content: '';
  background: url(/img/icon/icon_close.png) center center no-repeat rgba(255, 255, 255, .8);
}

@media screen and (max-width: 767px) {
  .modal-wrapper .modal-close {
    top: 10px;
    right: 10px;
    width: 20px;
    height: 20px;
  }
  .modal-wrapper .modal-close:before {
    width: 20px;
    height: 20px;
  }
}

.modal-body>*:first-child {
  margin-top: 0 !important;
}

.modal-pn {
  position: absolute;
  bottom: 40px;
  left: 50%;
  width: 248px;
  margin: 0 auto 0;
  -webkit-transform: translate(-50%, 0);
      -ms-transform: translate(-50%, 0);
          transform: translate(-50%, 0);
}

@media screen and (max-width: 767px) {
  .modal-pn {
    margin-top: 20px;
  }
}

.modal--profile {
  position: relative;
}

.modal--profile .profile-judge {
  margin-top: 0;
}

.modal-contents .modal__anchor:not(.active):not(.slideOut--left):not(.slideOut--right) {
  display: none;
}

.modal-contents .modal__anchor.slideIn {
  -webkit-animation: modalSlideIn .6s;
          animation: modalSlideIn .6s;
}

@-webkit-keyframes modalSlideIn {
  0% {
    opacity: 0;

    -ms-filter: 'progid:DXImageTransform.Microsoft.Alpha(Opacity=0)';
  }
  40% {
    opacity: 0;

    -ms-filter: 'progid:DXImageTransform.Microsoft.Alpha(Opacity=0)';
  }
  100% {
    opacity: 1;

    -ms-filter: 'progid:DXImageTransform.Microsoft.Alpha(Opacity=100)';
  }
}

@keyframes modalSlideIn {
  0% {
    opacity: 0;

    -ms-filter: 'progid:DXImageTransform.Microsoft.Alpha(Opacity=0)';
  }
  40% {
    opacity: 0;

    -ms-filter: 'progid:DXImageTransform.Microsoft.Alpha(Opacity=0)';
  }
  100% {
    opacity: 1;

    -ms-filter: 'progid:DXImageTransform.Microsoft.Alpha(Opacity=100)';
  }
}

.modal-contents .modal__anchor.slideOut--left {
  position: absolute;
  top: 0px;
  left: 0; 
  transition: opacity .3s, -webkit-transform .3s;
  transition: transform .3s, opacity .3s;
  transition: transform .3s, opacity .3s, -webkit-transform .3s;
  -webkit-transform: translate(-80px, 0);
      -ms-transform: translate(-80px, 0);
          transform: translate(-80px, 0);
  opacity: 0;

  -ms-filter: 'progid:DXImageTransform.Microsoft.Alpha(Opacity=0)';
}

.modal-contents .modal__anchor.slideOut--right {
  position: absolute;
  top: 0px;
  left: 0; 
  transition: opacity .3s, -webkit-transform .3s;
  transition: transform .3s, opacity .3s;
  transition: transform .3s, opacity .3s, -webkit-transform .3s;
  -webkit-transform: translate(80px, 0);
      -ms-transform: translate(80px, 0);
          transform: translate(80px, 0);
  opacity: 0;

  -ms-filter: 'progid:DXImageTransform.Microsoft.Alpha(Opacity=0)';
}

.modal-contents .ttl-lv2--result {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  margin-top: 0;
}

.modal-section-header:not(.active) {
  display: none;
}

.modal--winners__wrapper {
  position: relative;
}

body.js-modaled {
  overflow: hidden;
}

@media screen and (max-width: 1009px) {
  .spmenu-active {
    height: 100%;
  }
  .spmenu-active body {
    overflow: hidden; 
    height: 100%;
  }
  .spmenu-active .nav-main {
    position: absolute;
    top: 0;
    box-sizing: border-box;
    width: 100%;
    height: 100vh;
    padding-top: 99px;
  }
  .spmenu-active .nav-main .scroller {
    position: relative;
    z-index: 9; 
    overflow-y: auto;
    height: 100%;

    -webkit-overflow-scrolling: touch;
  }
  .spmenu-active .nav-main .scroller .sp-wrapper {
    position: relative;
    top: 0;
    display: -webkit-flex;
    display: -ms-flexbox;
    display:         flex;
    overflow-y: visible;
    margin-top: -300px; 
    margin-left: auto;
    padding-top: 300px;
  }
  .spmenu-active .nav-main .snav {
    padding-right: 10px;
  }
  .spmenu-active .nav-toggle-button:before {
    top: 60px;
  }
}

@media screen and (max-width: 767px) {
  .spmenu-active .nav-toggle-button:before {
    top: 17px;
  }
  .spmenu-active .nav-main {
    padding-top: 53px;
  }
}

@media screen and (max-width: 767px) {
  .p-sp {
    font-size: 14px !important;
  }
}

.about-schedule {
  background-image: url(/img/about/summary_schedule.png);
}

.about-briefing {
  background-image: url(/img/about/summary_briefing.png);
}

.about-entry {
  background-image: url(/img/about/summary_entry.png);
}

.about-criteria {
  background-image: url(/img/about/summary_criteria.png);
}

.about-product {
  background-image: url(/img/about/summary_product.png);
}

.about-judges {
  background-image: url(/img/about/summary_judges.png);
}

.about-ceremony {
  background-image: url(/img/about/summary_ceremony.png);
  background-image: url(/img/about/summary_ceremony.png);
}

@media screen and (max-width: 767px) {
  .about-schedule {
    background-image: url(/img/about/summary_schedule_sp.png);
  }
  .about-briefing {
    background-image: url(/img/about/summary_briefing_sp.png);
  }
  .about-entry {
    background-image: url(/img/about/summary_entry_sp.png);
  }
  .about-criteria {
    background-image: url(/img/about/summary_criteria_sp.png);
  }
  .about-product {
    background-image: url(/img/about/summary_product_sp.png);
  }
  .about-judges {
    background-image: url(/img/about/summary_judges_sp.png);
  }
  .about-ceremony {
    background-image: url(/img/about/summary_ceremony_sp.png);
  }
}

.link-bnr .image {
  background-size: cover;
}

.top-header {
  position: relative; 
  background-color: #8898a7;
}

.top-header .top-title {
  position: absolute;
  opacity: 0;

  -ms-filter: 'progid:DXImageTransform.Microsoft.Alpha(Opacity=0)';
}

.top-header .top-mv {
  width: 100%; 
  -webkit-animation: 1.0s ease-in .2s forwards fadeIn;
          animation: 1.0s ease-in .2s forwards fadeIn;
  opacity: .1;

  -ms-filter: 'progid:DXImageTransform.Microsoft.Alpha(Opacity=10)';
}

@-webkit-keyframes fadeIn {
  0% {
    opacity: .1;

    -ms-filter: 'progid:DXImageTransform.Microsoft.Alpha(Opacity=10)';
  }
  100% {
    opacity: 1;

    -ms-filter: 'progid:DXImageTransform.Microsoft.Alpha(Opacity=100)';
  }
}

@keyframes fadeIn {
  0% {
    opacity: .1;

    -ms-filter: 'progid:DXImageTransform.Microsoft.Alpha(Opacity=10)';
  }
  100% {
    opacity: 1;

    -ms-filter: 'progid:DXImageTransform.Microsoft.Alpha(Opacity=100)';
  }
}

.top-news-title {
  font-size: 26px;
  font-weight: bold; 
  text-align: center;
}

@media screen and (max-width: 767px) {
  .top-news-title {
    font-size: 17px;
  }
}

@media screen and (min-width: 768px), print {
  .top-news {
    display: -webkit-flex;
    display: -ms-flexbox;
    display:         flex;
    margin-top: 7px; 

    -webkit-flex-flow: row nowrap;
        -ms-flex-flow: row nowrap;
            flex-flow: row nowrap;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
            justify-content: center;
  }
}

@media screen and (max-width: 767px) {
  .top-news {
    font-size: 14px;
    padding: 3px 0;
  }
}

.top-news .date {
  padding: 1px 26px 0 0;

  -webkit-flex-shrink: 0;
  -ms-flex-negative: 0;
          flex-shrink: 0;
}

@media screen and (max-width: 767px) {
  .top-news .date {
    line-height: 1.71;
    padding: 0;
    text-align: center;
  }
}

.top-news .title a {
  color: #b33232;
}

.top-news .title a:before {
  background: #b33232;
}

@media screen and (max-width: 767px) {
  .top-news .title {
    line-height: 1.71;
    text-align: center;
  }
}

.top-news .title .label-new {
  line-height: 1;
}

.top-news-link {
  margin: 20px auto 0;
}

.top-darkbg {
  background-color: #000;
}

.top-darkbg__inner {
  max-width: 1024px;
  margin: 0 auto;
}

.top-darkblock {
  padding: 40px 50px 59px;
  color: #fff; 
  background: rgba(0, 0, 0, .85);
}

@media screen and (max-width: 767px) {
  .top-darkblock {
    margin-top: 30px;
    padding: 24px 20px 30px;
    background: rgba(0, 0, 0, .7);
  }
}

.top-darkblock__title {
  font-size: 24px; 
  text-align: left;
}

@media screen and (max-width: 767px) {
  .top-darkblock__title {
    font-size: 16px; 
    text-align: center;
  }
}

.top-darkblock__text {
  margin-top: 23px;
}

@media screen and (max-width: 767px) {
  .top-darkblock__text {
    font-size: 14px;
    line-height: 1.57;
    margin-top: 8px;
  }
}

.top-darkblock__links {
  margin-top: 44px;
}

@media screen and (max-width: 767px) {
  .top-darkblock__links {
    margin-top: 25px;
  }
}

.top-darkblock__links>li {
  margin-top: 30px;
}

.top-darkblock__links>li:first-child {
  margin-top: 0;
}

@media screen and (max-width: 767px) {
  .top-darkblock__links>li>a {
    margin: 0 auto;
  }
}

.top-darkblock__attention {
  font-size: 13px;
  margin-top: 30px;
}

@media screen and (min-width: 768px), print {
  .top-quad {
    position: relative;
    display: -webkit-flex;
    display: -ms-flexbox;
    display:         flex;
    height: 640px;
    margin-top: 80px; 

    -webkit-flex-flow: row wrap;
        -ms-flex-flow: row wrap;
            flex-flow: row wrap;
    -webkit-justify-content: flex-end;
    -ms-flex-pack: end;
            justify-content: flex-end;
    -webkit-align-items: center;
    -ms-flex-align: center;
            align-items: center;
  }
  .top-quad .top-darkblock {
    z-index: 3;
    width: 430px;
    padding: 36px 50px 59px;
    transition: all 1.4s cubic-bezier(.165, .84, .44, 1); 
    opacity: 1;

    -ms-filter: 'progid:DXImageTransform.Microsoft.Alpha(Opacity=100)';
  }
  .top-quad .top-darkblock.js-hold {
    -webkit-transform: translate(160px, 0);
        -ms-transform: translate(160px, 0);
            transform: translate(160px, 0);
    opacity: 0;

    -ms-filter: 'progid:DXImageTransform.Microsoft.Alpha(Opacity=0)';
  }
}

@media screen and (max-width: 767px) {
  .top-quad {
    background: url(/img/top/summary_sp.png) center center no-repeat;
    background-size: cover;
  }
}

.top-quad .top-darkblock__links {
  margin-top: 30px;
}

@media screen and (max-width: 767px) {
  .top-quad .top-darkblock__links {
    margin-top: 17px;
  }
}

.top-quad .top-darkblock__links>li>a {
  margin: 0 auto;
}

@media screen and (min-width: 768px), print {
  .top-quad-1,.top-quad-2,.top-quad-3,.top-quad-4 {
    position: absolute;
    width: 50%;
    height: 320px;
    margin-left: 0;
    transition: margin .8s cubic-bezier(.165, .84, .44, 1), opacity 1.2s; 
    background-repeat: none;
    background-position: 50% 50%;
    background-size: cover;
  }
  .top-quad-1.js-hold,.top-quad-2.js-hold,.top-quad-3.js-hold,.top-quad-4.js-hold {
    margin-left: 320px; 
    opacity: 0;

    -ms-filter: 'progid:DXImageTransform.Microsoft.Alpha(Opacity=0)';
  }
  .top-quad-1 {
    top: 0;
    left: 0;
    background-image: url(/img/top/leftt.png);
  }
  .top-quad-2 {
    top: 0;
    left: 50%;
    background-image: url(/img/top/rightt.png);
  }
  .top-quad-3 {
    bottom: 0;
    left: 0;
    background-image: url(/img/top/leftb.png);
  }
  .top-quad-4 {
    bottom: 0;
    left: 50%;
    background-image: url(/img/top/rightb.png);
  }
}

@media screen and (max-width: 767px) {
  .top-quad-1,.top-quad-2,.top-quad-3,.top-quad-4 {
    display: none;
  }
}

@media screen and (min-width: 768px), print {
  .top-awardbg {
    background-image: url(/img/top/past.png);
    background-repeat: no-repeat; 
    background-position: center center;
  }
}

.top-awardblock {
  position: relative; 
  background-size: cover;
}

@media screen and (min-width: 768px), print {
  .top-awardblock {
    background: none;
  }
}

@media screen and (max-width: 767px) {
  .top-awardblock {
    background: url(/img/top/past_sp.png) center center no-repeat;
    background-size: cover;
  }
}

.top-contanct {
  margin-top: 80px;
}

.top-contanct .btn-link {
  margin: 0 auto;
}

@media screen and (max-width: 767px) {
  .top-contanct {
    margin-top: 40px;
  }
}

.mv-adjust {
  position: relative;
}

.slick-box img {
  display: block;
  margin: auto;
}

.slick-box__img1 {
  display: none;
  background: #392859;
}

.slick-box__img2 {
  display: none;
  background: #7d858d;
}

@media screen and (min-width: 1024px) {
  .mv-adjust {
    height: 800px;
  }
}

@media screen and (max-width: 1024px) {
  .slick-box img {
    width: 100%;
  }
  .mv-adjust {
    height: auto;
  }
  .mv-adjust:before {
    display: block;
    padding-top: 78%; 
    content: '';
  }
  .mv-adjust-inner {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }
}

@media screen and (min-width: 768px), print {
  .top-movie .top-darkblock {
    padding: 50px 0 59px;
  }
}

@media screen and (max-width: 767px) {
  .top-movie .top-darkblock {
    padding: 24px 0 30px;
  }
}

@media screen and (max-width: 767px) {
  .top-movie .top-darkblock .top-darkblock__title,.top-movie .top-darkblock .top-darkblock__text {
    padding-right: 20px; 
    padding-left: 20px;
  }
}

.top-movie .top-darkblock .top-movie-container {
  position: relative; 
  height: 0;
  padding-top: 56.25%;
}

@media screen and (min-width: 768px), print {
  .top-movie .top-darkblock .top-movie-container {
    margin-top: 30px;
  }
}

@media screen and (max-width: 767px) {
  .top-movie .top-darkblock .top-movie-container {
    margin-top: 15px;
  }
}

.top-movie .top-darkblock .top-movie-container iframe {
  position: absolute;
  top: 0;
  left: 0; 
  width: 100%;
  height: 100%;
}

.winners {
  display: -webkit-flex;
  display: -ms-flexbox;
  display:         flex;
  margin-top: 40px;

  -webkit-flex-flow: row nowrap;
      -ms-flex-flow: row nowrap;
          flex-flow: row nowrap;
  -webkit-justify-content: flex-start;
  -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-align-items: flex-start;
  -ms-flex-align: start;
          align-items: flex-start;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
}

@media screen and (max-width: 767px) {
  .winners {
    margin-top: 20px;

    -webkit-flex-flow: row wrap;
        -ms-flex-flow: row wrap;
            flex-flow: row wrap;
  }
}

.winners__block {
  width: 25%;
}

.winners__block--col5 {
  width: 20%;
}

.winners__block--col5:nth-child(n+6) {
  margin-top: 75px;
}

@media screen and (max-width: 767px) {
  .winners__block,.winners__block--col5 {
    width: 50%;
  }
  .winners__block:nth-child(n+3),.winners__block--col5:nth-child(n+3) {
    margin-top: 30px;
  }
}

.winners .image {
  display: block;
  overflow: hidden;
  background: #000;
}

.winners .image img {
  width: 100%;
  height: auto;
  transition: -webkit-transform .35s ease-out;
  transition:         transform .35s ease-out;
  transition:         transform .35s ease-out, -webkit-transform .35s ease-out;
}

.winners .image:hover img {
  transition: -webkit-transform .19s ease-in-out;
  transition:         transform .19s ease-in-out;
  transition:         transform .19s ease-in-out, -webkit-transform .19s ease-in-out; 
  -webkit-transform: scale(1.08);
      -ms-transform: scale(1.08);
          transform: scale(1.08);
}

.winners .award {
  font-size: 20px;
  font-weight: bold; 
  line-height: 1.2;
  padding-top: 40px;
  text-align: center;
}

.winners .award.grand-prix {
  background: url(/img/icon/crown_gold.svg) center 9px no-repeat;
}

@media screen and (max-width: 767px) {
  .winners .award {
    font-size: 14px; 
    padding-top: 23px;
  }
  .winners .award.grand-prix {
    background-position: center 4px;
    background-size: 28.1px 15px;
  }
}

.winners .title {
  text-align: center;
}

.winners .title .pre {
  font-size: 14px;
  line-height: 1.2; 
  display: block;
  margin-top: 9px;
}

@media screen and (max-width: 767px) {
  .winners .title .pre {
    font-size: 11px; 
    margin-top: 7px;
  }
}

.winners .title .text {
  font-weight: bold;
  display: block;
  margin-top: 2px;
  padding: 0 15px;
}

@media screen and (max-width: 767px) {
  .winners .title .text {
    font-size: 13px;
    margin-top: 0;
    padding: 0 10px;
  }
}

.winners .title--na {
  font-size: 15px;
  padding-top: 14px;
}

@media screen and (max-width: 767px) {
  .winners .title--na {
    font-size: 13px;
    padding-top: 15px;
  }
}

.winners__na {
  position: relative;
  padding: 0 0 152.34%;
  color: #fff; 
  background: #000;
}

.winners__na .text {
  font-size: 18px;
  position: absolute;
  top: 50%;
  width: 100%;
  padding: 20px;
  -webkit-transform: translate(0, -50%);
      -ms-transform: translate(0, -50%);
          transform: translate(0, -50%);
  text-align: center;
  letter-spacing: 1px;
}

@media screen and (max-width: 767px) {
  .winners__na .text {
    font-size: 16px;
  }
}

.winners-detail__image {
  margin-right: -10px; 
  margin-left: -10px;
}

.winners-detail__image>img {
  width: 100%;
  height: auto;
}

@media screen and (min-width: 768px), print {
  .winners-detail__image {
    display: -webkit-flex;
    display: -ms-flexbox;
    display:         flex;
    margin-right: -40px; 
    margin-left: -40px;

    -webkit-flex-flow: row nowrap;
        -ms-flex-flow: row nowrap;
            flex-flow: row nowrap;
    -webkit-justify-content: flex-start;
    -ms-flex-pack: start;
            justify-content: flex-start;
    -webkit-align-items: flex-start;
    -ms-flex-align: start;
            align-items: flex-start;
  }
  .winners-detail__image>img {
    width: 50%;
  }
}

.winners-detail__prize {
  font-size: 20px; 
  display: -webkit-flex;
  display: -ms-flexbox;
  display:         flex;
  height: 60px;
  background: #fff;

  -webkit-flex-flow: row nowrap;
      -ms-flex-flow: row nowrap;
          flex-flow: row nowrap;
  -webkit-justify-content: flex-start;
  -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-align-items: center;
  -ms-flex-align: center;
          align-items: center;
}

@media screen and (max-width: 767px) {
  .winners-detail__prize {
    height: auto; 
    margin-right: -10px;
    margin-left: -10px;

    -webkit-flex-flow: row wrap;
        -ms-flex-flow: row wrap;
            flex-flow: row wrap;
  }
}

@media screen and (min-width: 768px), print {
  .winners-detail__prize {
    position: relative;
  }
  .winners-detail__prize:after {
    position: absolute;
    top: 0;
    right: -40px;
    display: block;
    width: 41px;
    height: 100%;
    content: '';
    background: #fff;
  }
}

.winners-detail__prize>* {
  display: -webkit-flex;
  display: -ms-flexbox;
  display:         flex;
  height: 100%;
  background: #fff; 

  -webkit-flex-flow: row wrap;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap;
  -webkit-justify-content: flex-start;
  -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-align-items: center;
  -ms-flex-align: center;
          align-items: center;
}

.winners-detail__prize .rank-1 {
  position: relative; 
  padding-right: 28px;
  padding-left: 93px;
  background: #af9b5e;
}

@media screen and (max-width: 767px) {
  .winners-detail__prize .rank-1 {
    font-size: 16px;
    font-weight: bold;
    width: 100%;
    height: 36px;
    margin-bottom: 13px; 
    padding-top: 4px;
    padding-right: 0;
    padding-left: 54px;
  }
}

.winners-detail__prize .rank-1:before {
  position: absolute;
  top: 12px;
  left: 21px; 
  width: 58px;
  height: 31px;
  content: '';
  background: url(/img/icon/crown_black.svg) center center no-repeat;
}

@media screen and (max-width: 767px) {
  .winners-detail__prize .rank-1:before {
    top: 9px;
    left: 10px;
    width: 35px;
    height: 19px; 
    background-size: contain;
  }
}

.winners-detail__prize .rank {
  position: relative;
  width: 220px;
  background: #cecfd7;

  -webkit-justify-content: center;
  -ms-flex-pack: center;
          justify-content: center;
}

@media screen and (max-width: 767px) {
  .winners-detail__prize .rank {
    font-size: 16px;
    width: 100%;
    height: 36px;
    margin-bottom: 13px; 
    padding-left: 10px;

    -webkit-justify-content: flex-start;
    -ms-flex-pack: start;
            justify-content: flex-start;
  }
}

.winners-detail__prize .pre {
  font-size: 14px; 
  padding-left: 22px;
}

@media screen and (max-width: 767px) {
  .winners-detail__prize .pre {
    font-size: 12px; 
    padding-left: 10px;

    -webkit-align-self: flex-start;
    -ms-flex-item-align: start;
            align-self: flex-start;
  }
}

.winners-detail__prize .title {
  font-weight: bold; 

  -webkit-flex-grow: 3;
  -ms-flex-positive: 3;
          flex-grow: 3;
}

@media screen and (max-width: 767px) {
  .winners-detail__prize .title {
    font-size: 14px;
    padding-right: 10px; 

    -webkit-flex-basis: 50%;
    -ms-flex-preferred-size: 50%;
            flex-basis: 50%;
  }
}

.winners-detail__main {
  position: relative; 
  margin-top: 30px;
}

@media screen and (max-width: 767px) {
  .winners-detail__main {
    margin-top: 0;
  }
}

.winners-detail__main .tbl-item-spec {
  margin-top: 20px;
}

@media screen and (min-width: 768px), print {
  .winners-detail__main .tbl-item-spec th {
    width: 96px;
  }
  .winners-detail__main .tbl-item-spec th>div {
    width: 96px;
  }
  .winners-detail__main .tbl-item-spec td {
    width: calc(100% - 96px);
  }
}

.winners-detail__main .portrait {
  width: 80px;
  height: auto;
}

@media screen and (min-width: 768px), print {
  .winners-detail__main .portrait {
    float: right;
    width: 150px;
    height: auto;
    margin-left: 17px;
  }
}

@media screen and (max-width: 767px) {
  .winners-detail__main .right-box {
    overflow: hidden; 
    width: 100%;
  }
  .winners-detail__main .right-box .space {
    float: right;
  }
  .winners-detail__main .right-box .img {
    float: right;
  }
  .winners-detail__main .right-box .img img {
    margin: 6px 0 0 10px;
  }
}

.guest-block__title {
  font-size: 36px;
  font-weight: bold;
  line-height: 1.2; 
  margin-top: 84px;
  margin-bottom: 20px;
  text-align: center;
}

@media screen and (max-width: 767px) {
  .guest-block__title {
    font-size: 16px;
    margin-top: 54px; 
    margin-bottom: 12px;
  }
}

.guest-block__guest {
  margin-top: 42px;
  margin-bottom: 50px;
  text-align: center;
}

@media screen and (max-width: 767px) {
  .guest-block__guest {
    margin-top: 10px;
    margin-bottom: 18px;
  }
  .guest-block__guest img {
    -webkit-transform: scale(.5);
        -ms-transform: scale(.5);
            transform: scale(.5);
  }
}

.coming-soon {
  font-size: 28px; 
  margin-bottom: 20px;
  text-align: center;
}

@media screen and (max-width: 767px) {
  .coming-soon {
    font-size: 16px;
  }
}

@media screen and (min-width: 768px), print {
  .coming-soon+.text-normal {
    text-align: center;
  }
}

.a-link+.guest-block__title,.page-body>.guest-block__title:first-child {
  margin-top: 0;
}

.guest-header+.page-body>.a-link:first-child {
  margin-top: 0;
}

.guest__show {
  margin-top: 35px;
}

@media screen and (min-width: 768px), print {
  .guest__show {
    margin-bottom: 25px;
  }
}

@media screen and (max-width: 767px) {
  .guest__show {
    margin-top: 16px;
  }
}

.guest__show>img {
  width: 100%;
  height: auto; 
  margin-top: 30px;
}

.guest__show>img:first-child {
  margin-top: 0;
}

@media screen and (max-width: 767px) {
  .guest__show>img {
    margin-top: 10px;
  }
}

.guest__show-caption {
  display: -ms-grid;
  display:     grid;

  -ms-grid-columns: (1fr)[2];
  grid-template-columns: repeat(2, 1fr);
  gap: 10px 8px;
  -webkit-margin-before: 16px;
  margin-block-start: 16px;
}

@media screen and (min-width: 768px), print {
  .guest__show-caption {
    -ms-grid-columns: (1fr)[5];
    grid-template-columns: repeat(5, 1fr);
    row-gap: 16px;
    margin-block: 35px 25px;
  }
}

.guest__show-caption img {
  max-width: 100%;
}

.guest__show-caption figcaption {
  font-size: 12px;
  display: -webkit-flex;
  display: -ms-flexbox;
  display:         flex;
          flex-direction: column;

  -webkit-flex-direction: column;
      -ms-flex-direction: column;
  -webkit-margin-before: 4px;
  margin-block-start: 4px;
}

.guest__show-caption .__name-en {
  font-size: 14px;
  font-weight: bold;
}

@media screen and (max-width: 767px) {
  .text-normal {
    font-size: 14px;
    line-height: 1.57;
    text-align: left;
  }
}

.guest_2018 img {
  margin-top: 12px;
}

@media screen and (max-width: 767px) {
  .guest_2018 img {
    width: 62.5px; 
    margin-top: 5px;
  }
}

.schedule__block {
  margin-top: 30px;
}

.schedule__date {
  overflow: hidden; 
  color: #fff;
  background: radial-gradient(ellipse at center, #000 99%, #fff 99%, #fff 100%);
}

@media screen and (max-width: 767px) {
  .schedule__date {
    font-size: 13px;
    width: 120px;
    padding-top: 3px;
    padding-bottom: 2px; 
    text-align: center;
  }
}

.schedule__date .arrow {
  display: inline-block;
  width: 11px;
  height: 7px; 
  text-indent: 9999em;
  background: url(/img/icon/icon_ar_down_W.svg) center center no-repeat;
  background-size: contain;
}

@media screen and (max-width: 767px) {
  .schedule__date .arrow {
    -webkit-transform: rotate(270deg);
        -ms-transform: rotate(270deg);
            transform: rotate(270deg);
    vertical-align: -35%;
  }
}

@media screen and (max-width: 767px) {
  .schedule__date .fashionshow br {
    display: none;
  }
}

.schedule__head {
  font-size: 18px;
  margin-bottom: 13px; 
  padding-top: 8px;
  padding-bottom: 2px;
  text-align: left;
}

@media screen and (max-width: 767px) {
  .schedule__head {
    font-size: 15px;
    line-height: 1.47;
    margin-top: 0;
    margin-bottom: 7px; 
    padding-bottom: 7px;
  }
}

.schedule__body>*:first-child {
  margin-top: 0;
}

@media screen and (max-width: 767px) {
  .schedule__body {
    font-size: 14px;
    line-height: 1.57;
  }
}

.schedule__btn {
  margin-top: 15px;
}

@media screen and (max-width: 767px) {
  .schedule__btn>* {
    width: 260px; 
    margin: 0 auto;
  }
}

@media screen and (min-width: 768px), print {
  .schedule__main {
    min-height: 90px;
  }
  .schedule__block {
    position: relative; 
    margin: 0px 0 0 120px;
    padding-bottom: 30px;
  }
  .schedule__block:before {
    position: absolute;
    top: 0;
    left: -76px;
    display: block;
    width: 1px;
    height: 100%;
    content: '';
    background: #000;
  }
  .schedule__block:last-child:before {
    display: none;
  }
  .schedule__date {
    font-size: 20px;
    font-weight: bold;
    line-height: 1.5;
    position: absolute;
    top: -5px;
    left: -126px;
    display: -webkit-flex;
    display: -ms-flexbox;
    display:         flex;
    width: 101px;
    height: 101px;
    text-align: center; 
    border: 6px solid #fff;
    border-radius: 50%;

    -webkit-flex-flow: column nowrap;
        -ms-flex-flow: column nowrap;
            flex-flow: column nowrap;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
            justify-content: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
            align-items: center;
  }
  .schedule__date .arrow {
    display: block;
    margin-bottom: 1px;
  }
  .schedule__date .fashionshow {
    font-size: 14px;
  }
  .schedule__date span {
    font-size: 16px;
  }
}
