@charset "UTF-8";
@import url("//fonts.googleapis.com/css?family=PT+Sans:400,400italic,700,700italic&subset=latin");
@import url("//fonts.googleapis.com/css?family=Noto+Sans+JP:100,300,400,500,700,900&display=swap");
@import url("//fonts.googleapis.com/css?family=Noto+Serif+JP:200,300,400,500,600,700,900&display=swap");
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  vertical-align: baseline; }

.breadcrump, nav ul.main_nav {
  font-size: 13px; }

.main_content .fv {
  padding: 2rem 0 3rem;
  text-align: center; }
  .main_content .fv .main-img {
    width: 100%;
    height: auto; }
  .main_content .fv .tie {
    background-color: rgba(255, 255, 255, 0.4);
    margin-top: -40px;
    display: inline-block;
    padding: .5rem 0;
    width: 100%;
    height: auto; }
    .main_content .fv .tie .title {
      font-family: 'Noto Serif JP', serif;
      font-size: 54.6px;
      font-weight: 500;
      color: dimgray;
      letter-spacing: -.05rem; }
      .main_content .fv .tie .title span {
        color: #c00016; }

.main_content .btn-area {
  padding-bottom: 6rem; }
  .main_content .btn-area .entry {
    display: block;
    position: relative;
    width: 250px;
    padding: 0.3rem;
    margin: auto;
    text-align: center;
    text-decoration: none;
    font-family: 'Noto Serif JP', serif;
    font-weight: 400;
    font-size: 1.5rem;
    border-radius: 6px;
    color: #fff;
    background: -webkit-gradient(linear, left bottom, left top, color-stop(0, #144600), color-stop(20%, #1e6101), to(#44c521));
    background: linear-gradient(to top, #144600 0, #1e6101 20%, #44c521 100%);
    background: -webkit-gradient(linear, left bottom, left top, color-stop(0, #a8070d), to(#eb2121));
    background: linear-gradient(to top, #a8070d 0, #eb2121 100%);
    -webkit-box-shadow: 0 3px 1px rgba(0, 0, 0, 0.2);
            box-shadow: 0 3px 1px rgba(0, 0, 0, 0.2); }
    .main_content .btn-area .entry:hover {
      opacity: 0.8;
      cursor: pointer;
      text-decoration: none; }
    .main_content .btn-area .entry span {
      font-size: 1.8rem;
      padding: 0 0 0 .1rem;
      letter-spacing: .3rem; }

.main_content .desc {
  color: #333;
  padding-bottom: 2rem; }
  .main_content .desc h2 {
    font-family: 'Noto Serif JP', serif;
    font-size: 22px;
    font-weight: 500;
    line-height: 1.6;
    display: inline-block;
    width: 75%;
    padding: .1rem 0 .4rem 1rem;
    margin-bottom: 2rem;
    border-left: 9px solid #d8d8d8; }
    .main_content .desc h2 span {
      color: #000;
      background: -webkit-gradient(linear, left top, left bottom, color-stop(45%, transparent), color-stop(45%, #ff9f9f));
      background: linear-gradient(transparent 45%, #ff9f9f 45%);
      padding: 0 .4rem .4rem;
      margin: 0 .1rem; }
  .main_content .desc h3 {
    color: #4c4c4c;
    font-size: 24px;
    font-weight: normal;
    margin: 1em 0 .35em; }
  .main_content .desc p {
    line-height: 1.8;
    padding-bottom: 1rem; }
  .main_content .desc .unit {
    margin: 0 0 1.5rem 1.5em; }
    .main_content .desc .unit p {
      font-family: 'Noto Serif JP', serif;
      font-size: 20px;
      font-weight: 500;
      color: #000;
      padding: 0 .2rem .1rem;
      margin: 0 0 .6rem; }
      .main_content .desc .unit p span {
        background: -webkit-gradient(linear, left top, left bottom, color-stop(55%, transparent), color-stop(55%, #faed5c));
        background: linear-gradient(transparent 55%, #faed5c 55%); }
  .main_content .desc .double {
    font-size: 110%;
    margin-right: .25em;
    padding: 0 2px;
    border-bottom: double;
    /*二重線を引く*/
    border-color: #FF0000;
    border-width: 4px; }

footer {
  font-size: 13px !important; }
  footer p {
    margin-bottom: 1.3em; }
  footer small, footer .small {
    font-size: 10px !important; }

@media screen and (max-width: 740px) {
  .main_content .fv .tie .title {
    font-size: 50px; } }

@media screen and (max-width: 620px) {
  .main_content .fv .tie .title {
    font-size: 45px; } }

@media screen and (max-width: 560px) {
  .main_content .fv .tie .title {
    font-size: 42px; } }

@media screen and (max-width: 500px) {
  .main_content .fv {
    padding: 2rem 0 2rem; }
    .main_content .fv .tie .title {
      font-size: 40px; }
  .main_content .btn-area {
    padding-bottom: 5rem; }
  .main_content .desc h2 {
    font-family: 'Noto Serif JP', serif;
    font-size: 21px;
    font-weight: 500;
    line-height: 1.6;
    display: inline-block;
    width: 100%;
    padding: .1rem 0 .4rem .7rem;
    margin-bottom: 2rem;
    border-left: 8px solid #d8d8d8;
    -webkit-box-sizing: border-box;
            box-sizing: border-box; }
    .main_content .desc h2 br {
      display: none; } }

@media screen and (max-width: 415px) {
  .main_content .fv {
    padding: 2rem 0 2rem; }
    .main_content .fv .tie .title {
      font-size: 32px; }
  .main_content .btn-area {
    padding-bottom: 4rem; }
    .main_content .btn-area .entry {
      width: 90%;
      font-weight: 400;
      font-size: 1.5rem; }
      .main_content .btn-area .entry span {
        font-size: 1.8rem;
        padding: 0 0 0 .1rem;
        letter-spacing: .3rem; }
  .main_content .desc {
    padding: 0 .5rem 2rem; }
    .main_content .desc h2 {
      font-family: 'Noto Serif JP', serif;
      font-size: 22px;
      font-weight: 500;
      line-height: 1.6;
      display: inline-block;
      width: 100%;
      padding: .1rem 0 .4rem .4rem;
      margin-bottom: 2rem;
      border-left: 6px solid #d8d8d8; }
      .main_content .desc h2 span {
        color: #000;
        background: -webkit-gradient(linear, left top, left bottom, color-stop(50%, transparent), color-stop(50%, #ff9f9f));
        background: linear-gradient(transparent 50%, #ff9f9f 50%);
        padding: 0 .4rem .2rem;
        margin: 0 .1rem; }
    .main_content .desc p {
      line-height: 1.8;
      padding-bottom: 1rem;
      font-size: 16px; }
    .main_content .desc .unit {
      margin-bottom: 1.5rem; }
      .main_content .desc .unit p {
        font-family: 'Noto Serif JP', serif;
        font-size: 20px;
        font-weight: 500;
        color: #000;
        padding: 0 0 0;
        margin: 0 0 .3rem; }
        .main_content .desc .unit p span {
          background: -webkit-gradient(linear, left top, left bottom, color-stop(65%, transparent), color-stop(65%, #ff9f9f));
          background: linear-gradient(transparent 65%, #ff9f9f 65%); } }

@media screen and (max-width: 376px) {
  .main_content .fv {
    padding: 2rem 0 2rem; }
    .main_content .fv .tie .title {
      font-size: 28px; }
  .main_content .btn-area {
    padding-bottom: 4rem; }
    .main_content .btn-area .entry {
      width: 90%;
      font-weight: 400;
      font-size: 1.4rem; }
      .main_content .btn-area .entry span {
        font-size: 1.7rem;
        padding: 0 0 0 .1rem;
        letter-spacing: .3rem; }
  .main_content .desc {
    padding: 0 .5rem 2rem; }
    .main_content .desc h2 {
      font-family: 'Noto Serif JP', serif;
      font-size: 19px;
      font-weight: 500;
      line-height: 1.6;
      display: inline-block;
      width: 100%;
      padding: .1rem 0 .4rem .4rem;
      margin-bottom: 1rem;
      border-left: 6px solid #d8d8d8; }
      .main_content .desc h2 span {
        color: #000;
        background: -webkit-gradient(linear, left top, left bottom, color-stop(50%, transparent), color-stop(50%, #ff9f9f));
        background: linear-gradient(transparent 50%, #ff9f9f 50%);
        padding: 0 .4rem .2rem;
        margin: 0 .1rem; }
    .main_content .desc p {
      line-height: 1.8;
      padding-bottom: 1rem; }
    .main_content .desc .unit {
      margin-bottom: 1rem; }
      .main_content .desc .unit p {
        font-family: 'Noto Serif JP', serif;
        font-size: 18px;
        font-weight: 500;
        color: #000;
        padding: 0 0 0;
        margin: 0 0 .3rem; }
        .main_content .desc .unit p span {
          background: -webkit-gradient(linear, left top, left bottom, color-stop(65%, transparent), color-stop(65%, #ff9f9f));
          background: linear-gradient(transparent 65%, #ff9f9f 65%); } }

@media screen and (max-width: 321px) {
  .main_content .fv {
    padding: 2rem 0 2rem; }
    .main_content .fv .tie .title {
      font-size: 26px; }
  .main_content .btn-area {
    padding-bottom: 3rem; }
    .main_content .btn-area .entry {
      width: 90%;
      font-weight: 400;
      font-size: 1.3rem; }
      .main_content .btn-area .entry span {
        font-size: 1.6rem;
        padding: 0 0 0 .1rem;
        letter-spacing: .3rem; }
  .main_content .desc {
    padding: 0 .5rem 2rem; }
    .main_content .desc h2 {
      font-family: 'Noto Serif JP', serif;
      font-size: 18.5px;
      font-weight: 500;
      line-height: 1.6;
      display: inline-block;
      width: 100%;
      padding: .1rem 0 .4rem .4rem;
      margin-bottom: 2rem;
      border-left: 6px solid #d8d8d8; }
      .main_content .desc h2 span {
        color: #000;
        background: -webkit-gradient(linear, left top, left bottom, color-stop(50%, transparent), color-stop(50%, #ff9f9f));
        background: linear-gradient(transparent 50%, #ff9f9f 50%);
        padding: 0 .4rem .2rem;
        margin: 0 .1rem; }
    .main_content .desc p {
      line-height: 1.8;
      padding-bottom: 1rem; }
    .main_content .desc .unit {
      margin-bottom: 1.5rem; }
      .main_content .desc .unit p {
        font-family: 'Noto Serif JP', serif;
        font-size: 18px;
        font-weight: 500;
        color: #000;
        padding: 0 0 0;
        margin: 0 0 .3rem; }
        .main_content .desc .unit p span {
          background: -webkit-gradient(linear, left top, left bottom, color-stop(65%, transparent), color-stop(65%, #ff9f9f));
          background: linear-gradient(transparent 65%, #ff9f9f 65%); } }
