@charset "UTF-8";
/*
編集はscssで行うこと
*/
html {
  overflow: auto;
}

body {
  overflow: hidden;
}

.heading-h1 {
  display: none;
}

#wrapper {
  max-width: 1200px;
  margin: 0 auto;
}
#wrapper a {
  text-decoration: none !important;
}
#wrapper header {
  margin: 0 auto;
}
#wrapper header .main_banner, #wrapper header .sp_main_banner {
  max-width: 100%;
  height: auto;
}
@media screen and (min-width: 768px) {
  #wrapper header .sp_main_banner {
    display: none;
  }
}
@media screen and (max-width: 767px) {
  #wrapper header .main_banner {
    display: none;
  }
}
#wrapper header .ended {
  text-align: center;
  font-weight: bold;
  color: #c00;
}
#wrapper header .period {
  margin-top: 40px;
  text-align: center;
  line-height: 1.5;
  font-size: 2.1rem;
  font-weight: bold;
  color: #555;
}
@media screen and (min-width: 768px) {
  #wrapper header .period {
    font-size: 2.5rem;
  }
}
#wrapper header .period span {
  display: inline-block;
}
#wrapper header .period span span {
  display: inline;
  font-size: 3.5rem;
}
#wrapper header .lead {
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 80%;
  margin: 30px auto;
  text-align: justify;
}
@media screen and (max-width: 767px) {
  #wrapper header .lead {
    width: auto;
    margin: 0 10px 30px;
    font-size: 1.5rem;
    line-height: 1.4;
  }
}
#wrapper header .lead p {
  font-size: 1.8rem;
  line-height: 1.5;
}
@media screen and (max-width: 767px) {
  #wrapper header .lead h2 {
    font-size: 1.2em;
    line-height: 1.4;
  }
}

#main {
  max-width: 1000px;
  margin: 0 auto;
}
#main p {
  font-size: 1.05em;
}

.headline {
  overflow: hidden;
  margin: 0 auto 20px;
  text-align: center;
  border-bottom: solid 1px #777;
}
.headline h3 {
  margin: 0;
  padding-top: 20px;
  font-size: 3rem;
  color: #555;
}

#target,
#gift {
  margin: 0 0 60px;
  text-align: center;
}

#tosensha,
#apply {
  margin: 70px 20px 50px;
}

#tosensha .headline,
#apply .headline {
  margin-left: -20px;
  margin-right: -20px;
}

@media screen and (max-width: 767px) {
  #tosensha {
    margin: 0 10px 30px;
  }

  #apply {
    margin: 0 10px 30px;
  }
  #apply h3 {
    font-size: 2.5rem;
  }
}
#apply .lead {
  font-size: 1.8rem;
}

#apply .apply_inner h4 {
  color: #555;
}
#apply .apply_inner ul {
  padding: 0 0 0 1em;
}
#apply .apply_inner ul li {
  list-style-type: none;
  max-width: 1200px;
  font-size: 15px;
  padding-bottom: 5px;
}
#apply .apply_inner ul li:last-child {
  padding-bottom: 20px;
}
#apply .apply_inner ul li:before {
  content: '';
  width: 4px;
  height: 4px;
  border: 0px;
  transform: rotate(45deg);
  position: absolute;
  background-color: #555;
  margin-left: -0.8em;
  margin-top: 0.5em;
  transition: 0.4s;
}
#apply .apply_inner a {
  color: #555;
}

@media screen and (max-width: 767px) {
  .about {
    margin: 0 10px 30px;
  }
}
.about .headline {
  margin-left: -20px;
  margin-right: -20px;
}
.about .headline h3 {
  font-size: 2.7rem;
}
.about .apply {
  margin: 20px 0 40px;
  text-align: center;
}
.about .apply a {
  display: inline-block;
  margin: 10px 0;
  padding: 10px 18px;
  border: solid 1px #ccc;
  border-radius: 50px;
  font-size: 1.15em;
  transition: 0.3s;
}
@media screen and (min-width: 768px) {
  .about .apply a {
    min-width: 400px;
  }
}
.about .apply a:hover {
  background-color: #f0f0f8;
  transition: 0.3s;
}
.about .apply a::after {
  display: inline-block;
  content: "\f105";
  font-family: FontAwesome;
  margin-left: .5em;
}
.about .apply a[target="_blank"]::after {
  content: "\f08e";
}
.about .apply p.note {
  margin: 15px 0 0;
  font-size: 1em;
  color: #666;
  text-align: left;
}
.about img.img-responsive {
  margin: 0 auto;
}

#contact {
  margin-bottom: 40px;
}
@media screen and (max-width: 767px) {
  #contact {
    margin: 0 10px 30px;
  }
}
#contact .title {
  font-weight: bold;
  margin-bottom: 5px;
}
#contact p {
  font-size: 1.3rem;
  line-height: 1.5;
}

@media screen and (min-width: 768px) {
  /* to-page-top */
  div#wrap-to-page-top > div > div {
    width: 130px;
  }
}
