@charset "UTF-8";
/* Scss Document */
html {
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic",'游明朝','Yu Mincho',YuMincho ,sans-serif;
  font-size: 62.5%;
  font-weight: 400; }

body {
  margin: 0;
  font-size: 1.8rem;
  line-height: 2;
  position: relative;
  overflow-x: hidden; }
  @media (max-width: 640px) {
    body {
      font-size: 1.4rem;
      line-height: 1.5; } }

img {
  max-width: 100%;
  width: auto;
  height: auto;
  vertical-align: bottom;
  transition: 0.5s; }

a, a:link, a:visited {
  color: #2e74ff;
  text-decoration: underline;
  transition: 0.5s; }

/*============================================================================
	header
=============================================================================*/
header {
  margin: 0 auto;
  max-width: 750px;
  height: auto;
  width: 100%;
  box-sizing: border-box; }
  header .headerInner {
    padding: 42px 10px;
    width: 100%;
    text-align: center;
    box-sizing: border-box;
    background: #02875C; }
    @media (max-width: 480px) {
      header .headerInner {
        padding: 42px 35px; } }
    header .headerInner p {
      color: #fff;
      font-size: 3.8rem;
      font-weight: 700;
      text-align: center;
      line-height: 1.64;
      letter-spacing: 0.05em;
      margin-bottom: 30px; }
      @media (max-width: 640px) {
        header .headerInner p {
          font-size: 2.5rem; } }
    header .headerInner figure {
      text-align: center; }
  header .band {
    padding: 12px 35px;
    text-align: right;
    background: #E5E5E5;
    font-size: 1.2rem;
    line-height: 1.8333333333; }

article {
  margin: 0 auto;
  padding-top: min(100px,10.416vw);
  max-width: 675px;
  height: auto;
  width: 90%;
  box-sizing: border-box; }
  article h2 {
    background: linear-gradient(to bottom, #FDFDFD, #FAFAFA, #F6F6F6, #F2F2F2, #EEEEEE, #EBEBEB, #E9E9E9);
    border: 1px solid #DDDDDD;
    font-size: 2.8rem;
    font-weight: 600;
    line-height: 1.5;
    position: relative;
    border-radius: 5px;
    padding: 27px 10px 27px 46px;
    margin-bottom: min(60px,6.2505vw); }
    article h2::before {
      content: "";
      position: absolute;
      top: 50%;
      transform: translateY(-50%);
      width: 8px;
      left: 20px;
      height: 78.57%;
      border-radius: 4px;
      background: #02875C; }
    @media (max-width: 640px) {
      article h2 {
        font-size: 2.0rem; } }
  article p {
    font-size: 1.8rem;
    line-height: 2; }
    article p em {
      color: #E70000;
      font-size: 2.4rem;
      font-weight: 700;
      line-height: 1.2857142857; }
      @media (max-width: 640px) {
        article p em {
          font-size: 1.8rem; } }
      article p em span {
        background: linear-gradient(transparent 60%, #fff655 0%);
        padding-bottom: 6px;
        line-height: 1; }
    article p em.big {
      font-size: 2.8rem; }
      @media (max-width: 640px) {
        article p em.big {
          font-size: 2.0rem; } }
    article p strong {
      font-size: 1.8rem;
      font-weight: 700;
      background: linear-gradient(transparent 45%, #fff655 0%);
      padding-bottom: 6px; }
      @media (max-width: 640px) {
        article p strong {
          font-size: 1.4rem; } }
    article p b {
      font-size: 1.8rem;
      font-weight: 700; }
      @media (max-width: 640px) {
        article p b {
          font-size: 1.4rem; } }
      article p b span {
        color: #CB0000;
        display: inherit; }
    article p + p {
      margin-top: 36px; }
      @media (max-width: 640px) {
        article p + p {
          margin-top: 30px; } }
    @media (max-width: 640px) {
      article p {
        font-size: 1.4rem;
        line-height: 1.8; } }
    article p sup {
      padding-left: 0.3em;
      font-size: 0.3em;
      position: relative;
      top: -5px; }
  article figure {
    margin-bottom: min(60px,6.2505vw);
    text-align: center; }
  article p.notes {
    font-size: 1.3rem;
    margin-top: min(100px,10.416vw);
    line-height: 1.6923076923;
    display: flex; }
    @media (max-width: 480px) {
      article p.notes {
        font-size: 1.2rem; } }
    article p.notes span {
      display: block; }
  article div.notesBox {
    margin-top: min(100px,10.416vw); }
    article div.notesBox p {
      font-size: 1.3rem;
      line-height: 1.6923076923;
      display: flex;
      margin: 0; }
      @media (max-width: 480px) {
        article div.notesBox p {
          font-size: 1.2rem; } }
      article div.notesBox p span {
        display: block;
        padding-right: 3px; }

#menu {
  margin: 0 auto;
  max-width: 750px;
  height: auto;
  width: 100%;
  box-sizing: border-box;
  position: relative;
  background: #F0FFE4;
  padding: 10px 0; }
  #menu p {
    font-size: 2.2rem;
    line-height: 1.6363636364;
    font-weight: 700;
    color: #02875C;
    border: 2px solid #02875C;
    border-radius: 25px;
    width: 165px;
    height: 50px;
    text-align: center;
    margin: -30px auto 0;
    background: #fff;
    display: flex;
    align-items: center;
    justify-content: center; }
    @media (max-width: 640px) {
      #menu p {
        width: 130px;
        height: 35px;
        font-size: 2.0rem; } }
  #menu ul {
    background: #F0FFE4;
    padding: 50px 75px 80px; }
    @media (max-width: 640px) {
      #menu ul {
        padding: 30px 20px 50px; } }
    #menu ul li {
      font-size: 1.8rem;
      line-height: 1.6666666667;
      font-weight: 700;
      border-bottom: 2px solid #02875C;
      position: relative;
      padding-left: 8px; }
      @media (max-width: 640px) {
        #menu ul li {
          font-size: 1.4rem; } }
      #menu ul li:not(:last-child) {
        margin-bottom: 32px; }
      #menu ul li a {
        color: #000000;
        text-decoration: none;
        position: relative;
        display: block; }
        #menu ul li a::after {
          content: "";
          position: absolute;
          background: url("../img/arrow.svg") no-repeat center center/contain;
          width: 18px;
          height: 11px;
          right: 0;
          top: 50%;
          transform: translateY(-50%);
          /*アニメーションの指定*/
          transition: all .3s; }
        #menu ul li a:hover::after {
          top: 70%; }

.moreArea {
  margin: min(100px,10.416vw) auto 0;
  max-width: 750px;
  height: auto;
  width: 100%;
  box-sizing: border-box;
  background: #FFFDDC;
  padding: min(60px,6.2505vw) 0 min(65px,6.771vw); }
  .notesBox3 {
    font-size: 1.3rem;
    line-height: 1.6923076923;
    display: flex;
    margin: 0;
    }
  .moreArea .unit {
    text-align: center;
    margin-bottom: min(45px,4.6875vw); }
    .moreArea .unit p.sub {
      position: relative;
      display: inline-block; }
      .moreArea .unit p.sub::before {
        content: '';
        position: absolute;
        background: #E70000;
        width: 2px;
        height: 22px;
        bottom: 3px;
        left: -10px;
        transform: rotate(-30deg); }
      .moreArea .unit p.sub::after {
        content: '';
        position: absolute;
        background: #E70000;
        width: 2px;
        height: 22px;
        bottom: 3px;
        right: -8px;
        transform: rotate(30deg); }
    .moreArea .unit p em {
      color: #E70000;
      font-size: 2.4rem;
      font-weight: 700;
      line-height: 1.2857142857;
    }
      @media (max-width: 640px) {
        .moreArea .unit p em{
          font-size: 1.8rem;
        }
      }
      .moreArea .unit p em.big {
        font-size: 2.7rem; 
      }

      @media (max-width: 640px) {
        .moreArea .unit p em.big {
          font-size: 2.2rem; 
        } 
      }

.moreArea .unit p em.campaign_title {
      font-size: 3.2rem;
}

@media (max-width: 640px) {
	.moreArea .unit p em.campaign_title {
		font-size: 2.1rem;
		}
		 }

    .moreArea .unit p sup {
      vertical-align: super;
      font-size: 1.8rem; }
  .moreArea .unit02 {
    margin: 20px 0 min(80px,8.334vw); }
  .moreArea .btn {
    margin: 0 auto;
    max-width: 675px;
    height: auto;
    width: 90%;
    box-sizing: border-box;
    background: linear-gradient(to bottom, #00B868, #03A25D, #058E53, #087647, #0B5A38);
    border-radius: 55px;
    filter: drop-shadow(0px 8px 10px rgba(152, 126, 30, 0.4)); }
    .moreArea .btn a {
      text-align: center;
      display: block;
      font-size: 3.8rem;
      color: #fff;
      font-weight: 700;
      text-decoration: none;
      padding: 30px 0;
      letter-spacing: 0;
      line-height: 1;
      position: relative; }
      @media (max-width: 640px) {
        .moreArea .btn a {
          font-size: 2.4rem;
          padding: 20px 0; } }
      .moreArea .btn a::before {
        content: '';
        position: absolute;
        background: url("../img/more_arrow.svg") no-repeat center center/contain;
        width: 23px;
        height: 40px;
        top: 50%;
        transform: translateY(-50%);
        right: min(60px,6.2505vw);
        transition: all .3s; }
        @media (max-width: 640px) {
          .moreArea .btn a::before {
            width: 15px;
            height: 24px; } }
      .moreArea .btn a:hover::before {
        right: min(40px,4.167vw); }
  .moreArea p.notes {
    font-size: 1.3rem;
    margin: min(100px,10.416vw) auto 0;
    height: auto;
    width: 90%;
    max-width: 675px;
    line-height: 1.6923076923;
    box-sizing: border-box; }
    @media (max-width: 480px) {
      .moreArea p.notes {
        font-size: 1.2rem; } }
  .moreArea div.notesBox {
    margin: min(60px,6.2505vw) auto 30px;
    height: auto;
    width: 90%;
    max-width: 675px;
    box-sizing: border-box; }
    .moreArea div.notesBox p {
      font-size: 1.3rem;
      line-height: 1.6923076923;
      display: flex;
      margin: 0; }
      @media (max-width: 480px) {
        .moreArea div.notesBox p {
          font-size: 1.2rem; } }
      .moreArea div.notesBox p span {
        display: block;
        padding-right: 3px; }
  .moreArea div.notesBox02 {
    margin: min(80px,8.334vw) auto 0; }

article#firstArea figure.single02 {
  margin-top: min(65px,6.771vw); }
  @media (max-width: 640px) {
    article#firstArea figure.single02 {
      width: 75%;
      margin: 40px auto; } }

article#secondArea figure.img02 {
  margin-top: min(65px,6.771vw); }
article#secondArea p.notes {
  margin-bottom: min(50px,5.208vw); }
article#secondArea .notesBox p {
  white-space: nowrap; }
  @media (max-width: 768px) {
    article#secondArea .notesBox p {
      white-space: normal; } }

article#thirdArea .box {
  padding: 32px;
  margin-top: min(85px,8.8545vw);
  background: #FFFDDC; }
  @media (max-width: 480px) {
    article#thirdArea .box {
      padding: 25px 15px; } }
  article#thirdArea .box p {
    font-size: 2.4rem;
    line-height: 1.5833333333;
    font-weight: 700;
    color: #6E6E6E;
    text-align: center; }
    @media (max-width: 640px) {
      article#thirdArea .box p {
        font-size: 1.8rem; } }
article#thirdArea figure {
  margin-top: min(50px,5.208vw); }
article#thirdArea .notes {
  margin-top: min(100px,10.416vw); }

article#fifthArea {
  padding-top: min(150px,15.6255vw); }
  article#fifthArea .box {
    padding: 32px;
    margin-top: min(85px,8.8545vw);
    background: #FFFDDC; }
    @media (max-width: 480px) {
      article#fifthArea .box {
        padding: 25px 15px; } }
    article#fifthArea .box p {
      font-size: 2.4rem;
      line-height: 1.5833333333;
      font-weight: 700;
      color: #6E6E6E;
      text-align: center; }
      @media (max-width: 640px) {
        article#fifthArea .box p {
          font-size: 1.8rem; } }
  article#fifthArea figure {
    margin-top: min(50px,5.208vw); }
  article#fifthArea .notes {
    margin-top: min(100px,10.416vw); }

article#seventhArea .box {
  padding: 32px;
  margin-top: min(85px,8.8545vw);
  background: #FFFDDC; }
  @media (max-width: 480px) {
    article#seventhArea .box {
      padding: 25px 15px; } }
  article#seventhArea .box p {
    font-size: 2.4rem;
    line-height: 1.5833333333;
    font-weight: 700;
    color: #6E6E6E;
    text-align: center; }
    @media (max-width: 640px) {
      article#seventhArea .box p {
        font-size: 1.8rem; } }
article#seventhArea figure {
  margin-top: min(50px,5.208vw); }

article#eighthArea .img01 {
  margin-top: min(85px,8.8545vw); }
article#eighthArea .example {
  margin: 45px 0 40px; }
article#eighthArea .box p.patern {
  color: #02875C;
  border: 2px solid #02875C;
  font-size: 2.0rem;
  line-height: 1.8;
  font-weight: 700;
  max-width: 180px;
  text-align: center;
  margin: 0 auto;
  border-radius: 5px; }
article#eighthArea .box p.ta_cnt {
  margin-top: 30px; }
article#eighthArea .box figure {
  margin: 36px auto;
  max-width: 600px; }
article#eighthArea .box + .box {
  margin-top: min(80px,8.334vw); }

article#tenthArea .box p.ttl {
  font-size: 3.2rem;
  font-weight: 700;
  text-align: center;
  line-height: 1.25;
  position: relative;
  margin-bottom: 100px; }

article#tenthArea .box p.ttl_card {
  font-size: 2.0rem;
  font-weight: 900;
  text-align: center;
  margin-bottom: 10px; }

@media (max-width: 640px) {
article#tenthArea .box p.ttl_card {
  font-size: 1.8rem;
 }
}
  @media (max-width: 640px) {
    article#tenthArea .box p.ttl {
      font-size: 2.4rem;
      margin-bottom: 70px; } }
  article#tenthArea .box p.ttl::before {
    content: '';
    position: absolute;
    background: url("../img/single08.svg") no-repeat center center/contain;
    width: 349px;
    height: 21px;
    bottom: -45px;
    left: 50%;
    transform: translateX(-50%); }
    @media (max-width: 640px) {
      article#tenthArea .box p.ttl::before {
        width: 250px;
        bottom: -35px; } }
article#tenthArea .box figure {
  max-width: 400px;
  width: 90%;
  margin: 0 auto min(60px,6.2505vw); }
article#tenthArea .box ul {
  margin: 0 auto;
  max-width: 630px;
  height: auto;
  width: 100%; }
  article#tenthArea .box ul li {
    font-size: 2.8rem;
    font-weight: 700;
    line-height: 1.7142857143;
    letter-spacing: 0;
    margin-left: 0.96em;
    text-indent: -0.96em; }
    @media (max-width: 640px) {
      article#tenthArea .box ul li {
        font-size: 2.0rem; } }
    article#tenthArea .box ul li span {
      padding-left: 25px; }
      @media (max-width: 640px) {
        article#tenthArea .box ul li span {
          padding-left: 18px; } }
    article#tenthArea .box ul li sup {
      vertical-align: super;
      font-size: 1.6rem; }


article#tenthArea .box + .box {
  margin-top: min(130px,13.542vw); }

article#eighth p em.big {
  font-size: 2.8rem; }
  @media (max-width: 640px) {
    article#eighth p em.big {
      font-size: 2.0rem; } }

.sponsorBox {
  margin: 0 auto;
  padding: 26px;
  color: #444444;
  font-size: 1.4rem;
  text-align: right;
  max-width: 750px;
  width: 100%;
  background: #e5e5e5;
  box-sizing: border-box; }
  @media (max-width: 640px) {
    .sponsorBox {
      font-size: 1.2rem; } }
  .sponsorBox p a {
    color: #2E74FF; }

.footer-attention {
  margin: 0 auto;
  padding: 10px;
  color: #FFFFFF;
  font-size: 1.4rem;
  font-weight: 400;
  line-height: 1.7142857143;
  text-align: center;
  max-width: 750px;
  width: 100%;
  background: #02875C;
  border: 1px solid #707070;
  box-sizing: border-box;
  padding: 30px 0; }
  .footer-attention p {
    max-width: 675px;
    width: 100%;
    margin: 0 auto;
    height: auto; }
    .footer-attention p + p {
      margin-top: 50px; }
  @media (max-width: 640px) {
    .footer-attention {
      font-size: 1.3rem; } }

.footer-sitemap {
  border: 1px solid #009595;
  padding: 20px 0;
  margin: 0 auto;
  max-width: 750px;
  box-sizing: border-box; }

@media screen and (min-width: 769px) {
  .footer-sitemap {
    padding: 30px 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center; } }
.footer-sitemap li {
  font-size: 1.3rem; }

@media screen and (max-width: 768px) {
  .footer-sitemap li {
    text-align: center; } }
@media screen and (min-width: 769px) {
  .footer-sitemap li + li {
    border-left: 1px solid #999;
    margin-left: 20px;
    padding-left: 20px; } }
@media screen and (max-width: 768px) {
  .footer-sitemap li + li {
    margin-top: 5px; } }
.footer-sitemap img {
  vertical-align: middle;
  width: 14px;
  margin-left: 5px;
  position: relative;
  top: -0.1em; }

.footer-sitemap a {
  text-decoration: none;
  color: #000000; }

.footer-sitemap a:hover {
  opacity: 0.7; }

.copyright {
  background-color: #EFEFEF;
  padding: 10px 0;
  font-size: 1.4rem;
  font-weight: 400;
  line-height: 1.7142857143;
  text-align: center;
  max-width: 750px;
  width: 100%;
  margin: 0 auto; }

.mt0 {
  margin-top: 0 !important; }

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

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

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

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

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

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

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

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

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

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

.mr0 {
  margin-right: 0 !important; }

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

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

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

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

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

.mb0 {
  margin-bottom: 0 !important; }

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

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

.mb12 {
  margin-bottom: 12px !important; }

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

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

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

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

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

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

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

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

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

.ml0 {
  margin-left: 0 !important; }

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

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

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

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

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

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

.ls5 {
  letter-spacing: 5px !important; }

.ls10 {
  letter-spacing: 10px !important; }

.ls15 {
  letter-spacing: 15px !important; }

.ls40 {
  letter-spacing: 40px !important; }

.ls60 {
  letter-spacing: 60px !important; }

br {
  display: inline; }
  @media (min-width: 1025px) {
    br.show1024 {
      display: none !important; } }
  @media (min-width: 741px) {
    br.show768 {
      display: none !important; } }
  @media (min-width: 481px) {
    br.show480 {
      display: none !important; } }
  @media (max-width: 1024px) {
    br.hdn1024 {
      display: none !important; }
    br.show1024 {
      display: inherit; } }
  @media (max-width: 640px) {
    br.hdn768 {
      display: none !important; }
    br.show768 {
      display: inherit; } }
  @media (max-width: 480px) {
    br.hdn480 {
      display: none !important; }
    br.show480 {
      display: inherit; } }

span {
  display: inline-block; }
  @media (min-width: 1025px) {
    span.show1024 {
      display: none !important; } }
  @media (min-width: 741px) {
    span.show768 {
      display: none !important; } }
  @media (min-width: 481px) {
    span.show480 {
      display: none !important; } }
  @media (max-width: 1024px) {
    span.hdn1024 {
      display: none !important; }
    span.show1024 {
      display: inherit; } }
  @media (max-width: 640px) {
    span.hdn768 {
      display: none !important; }
    span.show768 {
      display: inherit; } }
  @media (max-width: 480px) {
    span.hdn480 {
      display: none !important; }
    span.show480 {
      display: inherit; } }

p, div, ul, figure, h2, h5 {
  display: block; }
  @media (min-width: 1025px) {
    p.show1024, div.show1024, ul.show1024, figure.show1024, h2.show1024, h5.show1024 {
      display: none !important; } }
  @media (min-width: 741px) {
    p.show768, div.show768, ul.show768, figure.show768, h2.show768, h5.show768 {
      display: none !important; } }
  @media (min-width: 481px) {
    p.show480, div.show480, ul.show480, figure.show480, h2.show480, h5.show480 {
      display: none !important; } }
  @media (max-width: 1024px) {
    p.hdn1024, div.hdn1024, ul.hdn1024, figure.hdn1024, h2.hdn1024, h5.hdn1024 {
      display: none !important; }
    p.show1024, div.show1024, ul.show1024, figure.show1024, h2.show1024, h5.show1024 {
      display: inherit; } }
  @media (max-width: 640px) {
    p.hdn768, div.hdn768, ul.hdn768, figure.hdn768, h2.hdn768, h5.hdn768 {
      display: none !important; }
    p.show768, div.show768, ul.show768, figure.show768, h2.show768, h5.show768 {
      display: inherit; } }
  @media (max-width: 480px) {
    p.hdn480, div.hdn480, ul.hdn480, figure.hdn480, h2.hdn480, h5.hdn480 {
      display: none !important; }
    p.show480, div.show480, ul.show480, figure.show480, h2.show480, h5.show480 {
      display: inherit; } }

.ta_cnt {
  text-align: center; }

.ta_right {
  text-align: right; }

.clearfix:after {
  content: "";
  display: block;
  clear: both; }


/* CSS Document */
@media screen and (max-width: 768px) {
  .pc {
    display: none !important;
  }
}
@media screen and (min-width: 769px) {
  .sp {
    display: none !important;
  }
}
@media screen and (max-width: 768px) {
  .pc-d {
    display: none !important;
  }
}

.img_banner {
	text-align: center;
	margin-top:75px;
}

.banner-bottom{
	margin-bottom: 70px;}


.cp-seven{
	align-items: center;
	margin-top: 20px;
	gap: 40px;
}

.cp-seven-img{
	text-align: center;
}

.cp-seven-img img{
	max-width: 40vw;
}

.cp-link{
	font-size: 18px !important;
}

 @media screen and (max-width: 767px) {
	.cp-seven{
	display: block;
	}

	.cp-seven-img img{
    max-width: 70vw;
	}
}

.mag_minus{
    margin-top: auto !important;
}

.note{
  color: #E70000;
  font-size: 1.8rem;
}
.note li::before {
  content: '※';
}
@media (max-width: 640px) {
  .note{
    font-size: 1.3rem;
  }
}
.moreArea .unit p em.big_02 {
  font-size: 2.7rem; 
}

@media (max-width: 640px) {
  .moreArea .unit p em.big_02 {
    font-size: 1.6rem; 
  } 
}