@charset "UTF-8";
/*===========================================
    RESET
===========================================*/
html {
  overflow-y: auto;
}

body {
  position: relative;
  width: 100%;
}

* {
  margin: 0;
  padding: 0;
  border: none;
  outline: none;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

html, body, header, nav, footer, main, aside, section, article, nav, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, font, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, caption, mark, dl, dt, dd, ol, ul, li, fieldset, label, legend, option, table, caption, tbody, tfoot, thead, tr, th, td {
  margin: 0;
  padding: 0;
  border: none;
  outline: none;
  font-family: inherit;
  font-size: 100%;
  font-style: normal;
  font-weight: normal;
  vertical-align: top;
  text-align: left;
}

dl, dt, dd, ol, ul, li {
  list-style: none;
}

table {
  width: 100%;
  border-collapse: collapse;
  *border-collapse: collapse;
  border-spacing: 0;
}

th, td {
  border: none;
  text-align: left;
  vertical-align: top;
}

q, blockquote {
  quotes: none;
}

iframe {
  display: block;
  width: 100%;
  overflow: hidden;
}

img {
  border: none;
  vertical-align: bottom;
}

a {
  border: none;
  text-decoration: none;
  cursor: pointer;
}

a:hover {
  outline: none;
  cursor: pointer;
}

a:active, a:focus {
  outline: none;
}

sup {
  position: relative;
  bottom: 0.7em;
  font-size: 71.5%;
  vertical-align: baseline;
}

sub {
  position: relative;
  top: 0.1em;
  font-size: 71.5%;
  vertical-align: baseline;
}

abbr, acronym {
  border-bottom: dotted 1px #ccc;
  cursor: help;
}

hr {
  display: none;
}

input[type="submit"], input[type="reset"], input[type="button"], button, select {
  cursor: pointer;
}

/*===========================================
    BASE
===========================================*/
html {
  -webkit-font-smoothing: antialiased;
  overflow-x: hidden;
  font-size: 62.5%;
}

body {
  -webkit-overflow-scrolling: touch;
  position: relative;
  -webkit-font-smoothing: subpixel-antialiased;
  color: #666;
  font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", sans-serif;
  -webkit-font-feature-settings: "palt" 1;
  -moz-font-feature-settings: "palt" 1;
  font-feature-settings: "palt" 1;
  letter-spacing: 0.1em;
  line-height: 1.8;
}

@media screen and (min-width: 768px), print {
  body {
    min-width: 1080px;
    font-size: 16px;
    font-size: 1.6rem;
    font-weight: normal;
    text-align: left;
    line-height: 1.8;
    letter-spacing: 0.1;
  }
}

@media screen and (max-width: 767px) {
  body {
    font-size: 14px;
    font-size: 1.4rem;
    font-weight: normal;
    text-align: left;
    line-height: 1.8;
    letter-spacing: 0.1;
  }
}

body * {
  text-align: justify;
  text-justify: inter-ideograph;
}

::-moz-selection {
  background: rgba(102, 102, 102, 0.2);
}

::selection {
  background: rgba(102, 102, 102, 0.2);
}

/*===========================================
    l-header
===========================================*/
/*===========================================
    l-footer
===========================================*/
/*===========================================
    l-column
===========================================*/
.l-column--1 {
  width: 100%;
}

.l-column--2 {
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -moz-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  width: 100%;
}

/*===========================================
    l-loading
===========================================*/
.l-loading {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 9999;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.8);
}

/*===========================================
    p-chinese
===========================================*/
#p-chinese {
  width: 100%;
}

#p-chinese a {
  -moz-transition-property: all;
  transition-property: all;
  -moz-transition-duration: 0.2s;
  transition-duration: 0.2s;
  -moz-transition-timing-function: ease;
  transition-timing-function: ease;
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  backface-visibility: hidden;
}

#p-chinese a:hover {
  opacity: 0.6;
}

#p-chinese .p-mainvisual {
  position: relative;
}

#p-chinese .p-mainvisual h1 {
  position: relative;
  display: block;
  width: 100%;
}

#p-chinese .p-mainvisual h1 img {
  display: block;
  width: 100%;
}

#p-chinese .p-mainvisual a {
  position: absolute;
  display: block;
}

@media screen and (min-width: 768px), print {
  #p-chinese .p-mainvisual a {
    top: 4%;
    right: 2%;
    width: 7%;
  }
}

@media screen and (max-width: 767px) {
  #p-chinese .p-mainvisual a {
    top: 2%;
    right: 5%;
    width: 20%;
  }
}

#p-chinese .p-mainvisual a img {
  display: block;
  width: 100%;
}

#p-chinese .p-event,
#p-chinese .p-content,
#p-chinese .p-company {
  position: relative;
  width: 100%;
}

#p-chinese .p-event > img,
#p-chinese .p-content > img,
#p-chinese .p-company > img {
  display: block;
  width: 100%;
}

#p-chinese .p-event {
  position: relative;
}

#p-chinese .p-event a {
  position: absolute;
  display: block;
}

@media screen and (min-width: 768px), print {
  #p-chinese .p-event a {
    top: 34%;
    right: 21%;
    width: 14%;
  }
}

@media screen and (max-width: 767px) {
  #p-chinese .p-event a {
    bottom: 6%;
    left: 20%;
    width: 60%;
  }
}

#p-chinese .p-event a img {
  display: block;
  width: 100%;
}

#p-chinese .p-company {
  background-color: #FFF0E7;
  border-bottom: solid 64px #FF5D45;
}

@media screen and (min-width: 768px), print {
  #p-chinese .p-company {
    padding-bottom: 10%;
  }
}

@media screen and (max-width: 767px) {
  #p-chinese .p-company {
    padding-bottom: 20%;
  }
}

#p-chinese .p-company .company__map {
  width: 100%;
}

@media screen and (min-width: 768px), print {
  #p-chinese .p-company .company__map {
    padding: 5% -moz-calc(100% * 0.09375);
    padding: 5% calc(100% * 0.09375);
  }
}

@media screen and (max-width: 767px) {
  #p-chinese .p-company .company__map {
    padding: 10% -moz-calc(100% * 0.09375);
    padding: 10% calc(100% * 0.09375);
  }
}

#p-chinese .p-company .company__map iframe {
  display: block;
  width: 100%;
  margin: auto;
}

#p-chinese .company__sns {
  text-align: center;
}

#p-chinese .company__sns a {
  display: inline-block;
}

@media screen and (min-width: 768px), print {
  #p-chinese .company__sns a {
    width: 5%;
  }
}

@media screen and (max-width: 767px) {
  #p-chinese .company__sns a {
    width: 10%;
  }
}

#p-chinese .company__sns a img {
  width: 100%;
}

/*===========================================
    u-clearfix
===========================================*/
.u-clearfix:after {
  display: block;
  clear: both;
  height: 0;
  font-size: 0.1em;
  line-height: 0;
  content: "";
}

/*===========================================
    u-display
===========================================*/
.u-display--block {
  display: block !important;
}

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

.u-display--none {
  display: none !important;
}

@media screen and (min-width: 768px) and (max-width: 767px) {
  .u-display--none-sm {
    display: none !important;
  }
}

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

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

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

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

@media screen and (min-width: 768px) and (max-width: 767px) {
  .u-display--none-lg {
    display: none !important;
  }
}

/*===========================================
    u-indent
===========================================*/
.u-indent {
  padding-left: 1em !important;
  text-indent: -1em !important;
}

/*===========================================
    u-margin
===========================================*/
.u-margin--top-0 {
  margin-top: 0px !important;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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