/*! normalize.css v3.0.2 | MIT License | git.io/normalize */
html {
  font-family: sans-serif;
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%; }

body {
  margin: 0; }

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

audio,
canvas,
progress,
video {
  display: inline-block;
  vertical-align: baseline; }

audio:not([controls]) {
  display: none;
  height: 0; }

[hidden],
template {
  display: none; }

a {
  background-color: transparent; }

a:active,
a:hover {
  outline: 0; }

abbr[title] {
  border-bottom: 1px dotted; }

b,
strong {
  font-weight: bold; }

dfn {
  font-style: italic; }

h1 {
  font-size: 2em;
  margin: 0.67em 0; }

mark {
  background: #ff0;
  color: #000; }

small {
  font-size: 80%; }

sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline; }

sup {
  top: -0.5em; }

sub {
  bottom: -0.25em; }

img {
  border: 0; }

svg:not(:root) {
  overflow: hidden; }

figure {
  margin: 1em 40px; }

hr {
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  height: 0; }

pre {
  overflow: auto; }

code,
kbd,
pre,
samp {
  font-family: monospace, monospace;
  font-size: 1em; }

button,
input,
optgroup,
select,
textarea {
  color: inherit;
  font: inherit;
  margin: 0; }

button {
  overflow: visible; }

button,
select {
  text-transform: none; }

button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
  -webkit-appearance: button;
  cursor: pointer; }

button[disabled],
html input[disabled] {
  cursor: default; }

button::-moz-focus-inner,
input::-moz-focus-inner {
  border: 0;
  padding: 0; }

input {
  line-height: normal; }

input[type="checkbox"],
input[type="radio"] {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 0; }

input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
  height: auto; }

input[type="search"] {
  -webkit-appearance: textfield;
  -webkit-box-sizing: content-box;
  box-sizing: content-box; }

input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none; }

fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em; }

legend {
  border: 0;
  padding: 0; }

textarea {
  overflow: auto; }

optgroup {
  font-weight: bold; }

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

td,
th {
  padding: 0; }

/* Base
   ----------------------------------------------------------------- */
body {
  background-color: #000;
  color: #f3d363;
  font-family: 'Quicksand' 'Yu Gothic', 'YuGothic', 'Hiragino Kaku Gothic Pro', 'Meiryo, Osaka', 'MS PGothic', sans-serif; }

ul, h2, h3, h4, p {
  margin: 0;
  padding: 0; }

li {
  list-style: none; }

a {
  color: #f3d363;
  text-decoration: underline; }
  a:hover {
    text-decoration: none; }

/* Layout
   ----------------------------------------------------------------- */
.container {
  position: relative;
  width: 100%; }

.headline {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  width: 260px;
  padding-right: 40px; }
  @media only screen and (max-width: 768px) {
    .headline {
      width: auto;
      text-align: center;
      padding: 0 20px;
      margin-bottom: 20px; } }

.footer {
  width: 100%;
  margin: 0 auto;
  background: #f3d363 url("../images/bg_footer.jpg");
  background-size: cover; }
  .footer .footer__inner ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center; }
    .footer .footer__inner ul.footer__serviceLogo {
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center;
      padding: 0 0 40px; }
      .footer .footer__inner ul.footer__serviceLogo > li {
        padding: 0 20px; }
    .footer .footer__inner ul.footer__sns {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center;
      margin-left: auto;
      margin-right: auto;
      padding: 40px 0; }
      .footer .footer__inner ul.footer__sns > li {
        height: 24px;
        margin: 0 20px; }
  .footer .footer__chn {
    display: block;
    width: 174px;
    height: 52px;
    background: url("../images/logo_chn.png") no-repeat;
    background-size: 174px 52px; }
    @media only screen and (max-width: 480px) {
      .footer .footer__chn {
        width: 133.84615px;
        height: 40px;
        background-size: 133.84615px 40px; } }
  .footer .footer__note {
    display: block;
    width: 79px;
    height: 29px;
    background: url("../images/logo_note.png") no-repeat;
    background-size: 79px 29px; }
    @media only screen and (max-width: 480px) {
      .footer .footer__note {
        width: 60.76923px;
        height: 22.30769px;
        background-size: 60.76923px 22.30769px; } }

/* Object
   ----------------------------------------------------------------- */
.logo {
  display: block;
  position: relative;
  width: 745.38462px;
  height: 137.69231px;
  margin-left: auto;
  margin-right: auto;
  background: url("../images/logo.png") no-repeat;
  background-size: 745.38462px 137.69231px; }
  @media only screen and (max-width: 768px) {
    .logo {
      width: 461.42857px;
      height: 85.2381px;
      background-size: 461.42857px 85.2381px; } }
  @media only screen and (max-width: 480px) {
    .logo {
      width: 323px;
      height: 59.66667px;
      background-size: 323px 59.66667px; } }

.catch {
  overflow: hidden;
  display: block;
  width: 500px;
  height: 50px;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 5px;
  background: url("../images/catch.png") no-repeat;
  background-size: 500px 50px; }
  @media only screen and (max-width: 768px) {
    .catch {
      width: 333.33333px;
      height: 33.33333px;
      background-size: 333.33333px 33.33333px; } }
  @media only screen and (max-width: 480px) {
    .catch {
      width: 250px;
      height: 25px;
      background-size: 250px 25px; } }

.badge {
  position: absolute;
  top: 250px;
  right: 10px;
  display: block;
  width: 263px;
  height: 263px;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 5px;
  background: url("../images/badge.png") no-repeat;
  background-size: 263px 263px; }
  @media only screen and (max-width: 768px) {
    .badge {
      top: 250px;
      width: 210.4px;
      height: 210.4px;
      background-size: 210.4px 210.4px; } }
  @media only screen and (max-width: 480px) {
    .badge {
      top: 180px;
      width: 202.30769px;
      height: 202.30769px;
      background-size: 202.30769px 202.30769px; } }

.hero {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  position: relative;
  height: 450px;
  padding-top: 20px;
  background: url("../images/bg_hero.jpg") no-repeat;
  background-size: 2000px 800px;
  background-position: center 30%;
  margin-bottom: 80px; }
  @media only screen and (max-width: 768px) {
    .hero {
      height: 350px;
      background-size: 1538.46154px 615.38462px; } }
  @media only screen and (max-width: 480px) {
    .hero {
      height: 300px;
      background-size: 1250px 500px; } }

.contents,
.contents--present,
.contents--overview,
.contents--message,
.contents--guideline,
.contents--profile {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 750px;
  margin: 0 auto 70px auto; }
  @media only screen and (max-width: 768px) {
    .contents,
    .contents--present,
    .contents--overview,
    .contents--message,
    .contents--guideline,
    .contents--profile {
      display: block;
      width: 100%; } }
  .contents h2, .contents--present h2,
  .contents--overview h2,
  .contents--message h2,
  .contents--guideline h2,
  .contents--profile h2 {
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    display: inline-block;
    width: 100%;
    font-size: 15px;
    font-weight: bold;
    text-align: center;
    font-family: 'Hiragino Mincho Pro', sans-serif;
    letter-spacing: 0.03em;
    line-height: 1.1;
    padding: 12px;
    border: 2px solid #f5b926; }
    @media only screen and (max-width: 768px) {
      .contents h2, .contents--present h2,
      .contents--overview h2,
      .contents--message h2,
      .contents--guideline h2,
      .contents--profile h2 {
        width: auto; } }
  .contents h4, .contents h5, .contents--present h4,
  .contents--overview h4,
  .contents--message h4,
  .contents--guideline h4,
  .contents--profile h4, .contents--present h5,
  .contents--overview h5,
  .contents--message h5,
  .contents--guideline h5,
  .contents--profile h5 {
    font-size: 16px;
    line-height: 1;
    margin-bottom: 10px; }
  .contents h5, .contents--present h5,
  .contents--overview h5,
  .contents--message h5,
  .contents--guideline h5,
  .contents--profile h5 {
    font-size: 14px; }
  .contents p, .contents--present p,
  .contents--overview p,
  .contents--message p,
  .contents--guideline p,
  .contents--profile p {
    font-size: 14px;
    line-height: 2; }

.contents--present {
  -webkit-box-sizing: border-box;
          box-sizing: border-box; }
  @media only screen and (max-width: 768px) {
    .contents--present {
      padding-top: 40px;
      padding-left: 10px;
      padding-right: 10px; } }
  @media only screen and (max-width: 480px) {
    .contents--present {
      width: auto;
      text-align: center;
      padding: 0 20px;
      margin-bottom: 20px; } }
  @media only screen and (max-width: 480px) {
    .contents--present .present {
      display: none; } }
  .contents--present .present__sp {
    display: none; }
    @media only screen and (max-width: 480px) {
      .contents--present .present__sp {
        display: block; } }
  .contents--present img {
    display: block;
    width: 90%;
    height: 100%;
    margin: 0 auto; }
    @media only screen and (max-width: 768px) {
      .contents--present img {
        width: 100%; } }

.contents--message p {
  font-size: 19px;
  line-height: 2;
  font-family: 'Hiragino Mincho Pro', sans-serif;
  margin-top: -5px; }
  @media only screen and (max-width: 480px) {
    .contents--message p br {
      display: none; } }

.contents--message .signature {
  margin-top: 15px;
  font-size: 16px; }
  @media only screen and (max-width: 480px) {
    .contents--message .signature {
      margin-top: 10px;
      font-size: 14px; } }

.contents--guideline ul > li {
  margin-bottom: 20px; }

.contents--guideline h4 {
  display: inline-block;
  font-size: 18px;
  line-height: 1;
  padding-bottom: 3px;
  border-bottom: 2px solid #f3d363;
  margin-bottom: 12px; }

.contents--guideline p {
  line-height: 1.7; }

.contents--profile ul > li {
  margin-bottom: 30px; }

.content {
  width: 690px; }
  @media only screen and (max-width: 768px) {
    .content {
      width: auto;
      padding: 0 20px; } }
  .content .txt-large {
    font-size: 1.3; }

.buttonlist {
  display: table;
  width: 100%; }
  @media only screen and (max-width: 768px) {
    .buttonlist {
      display: block; } }
  .buttonlist > li {
    width: 50%;
    display: table-cell; }
    @media only screen and (max-width: 768px) {
      .buttonlist > li {
        display: block;
        width: 100%; }
        .buttonlist > li .button {
          width: 100%; } }
    .buttonlist > li .button {
      -webkit-box-sizing: border-box;
              box-sizing: border-box;
      width: 97%;
      margin: 0 auto 0 0; }
      @media only screen and (max-width: 768px) {
        .buttonlist > li .button {
          width: 100%; } }

/* Utitlity & Button
   ----------------------------------------------------------------- */
.button {
  display: table;
  width: 55%;
  height: 50px;
  text-align: center;
  line-height: 1;
  background: #f3d363 url("../images/bg_btn.jpg");
  background-size: cover;
  background-position: 0 0;
  color: #000;
  cursor: pointer;
  font-size: 20px;
  font-weight: bold;
  font-family: 'Hiragino Mincho Pro', sans-serif;
  min-width: 80px;
  text-decoration: none;
  border-radius: 4px; }
  .button:hover {
    background-position: 0 -50%; }
  .button span {
    display: table-cell;
    vertical-align: middle;
    text-align: center;
    width: 100%;
    height: 50px;
    line-height: 1; }
  @media only screen and (max-width: 768px) {
    .button {
      width: 100%; } }
  .button i {
    float: right;
    margin-right: 20px;
    margin-left: -20px; }
  .button.small {
    font-size: 0.8em; }

.fb-share-button span {
  vertical-align: baseline !important; }

.mt10 {
  margin-top: 10px; }

.mt20 {
  margin-top: 20px; }

.mt30 {
  margin-top: 30px; }

.mt40 {
  margin-top: 40px; }

.mt50 {
  margin-top: 50px; }

.mb20 {
  margin-bottom: 20px; }

.mb40 {
  margin-bottom: 40px; }

.textBold {
  font-weight: bold; }

/* Others */
.notificationBar {
  padding: 10px;
  background-color: #41C9B4;
  text-align: center; }

.notificationBar > p {
  margin: 0;
  color: #fff;
  font-size: 13px; }

.notificationBar > p a {
  color: #fff; }
