@charset "UTF-8";
/* Scss Document */
/* A Modern CSS Reset */
*, *::before, *::after {
  box-sizing: border-box; }

body, h1, h2, h3, h4, p, figure, blockquote, dl, dd {
  margin: 0; }

ul[role="list"], ol[role="list"] {
  list-style: none; }

html:focus-within {
  scroll-behavior: smooth; }

body {
  min-height: 100vh;
  text-rendering: optimizeSpeed;
  line-height: 1.5; }

a:not([class]) {
  text-decoration-skip-ink: auto; }

img, picture {
  max-width: 100%;
  display: block; }

input, button, textarea, select {
  font: inherit; }

@media (prefers-reduced-motion: reduce) {
  html:focus-within {
    scroll-behavior: auto; }

  *, *::before, *::after {
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: .01ms !important;
    scroll-behavior: auto !important; } }
img {
  max-width: 100%;
  height: auto;
  backface-visibility: hidden; }

ul, li {
  list-style: none;
  padding: 0;
  margin: 0; }

a {
  outline: none;
  text-decoration: none; }

/*--------------------------
メディアクエリ設定
---------------------------*/
/*マップ型変数で定義*/
/*@mixinでメディアクエリを呼び出す。変数mq、初期値sm*/
/*フォントサイズレスポンシブ*/
/*@mixin fs-vw($font-size, $base-width: 414) {
  font-size: $font-size / $base-width * 100vw;
}*/
/*20pxのテキストを画面幅に合わせて変更する場合*/
/*.sample {
  @include fs-vw(20);
}*/
/*--------------------------------------------------
全体設定
font-weight:400,700
---------------------------------------------------*/
html {
  overflow-x: hidden; }

html, body {
  scroll-behavior: smooth;
  scroll-padding-top: 60px; }
  @media screen and (min-width: 768px) {
    html, body {
      scroll-padding-top: 144px; } }

body {
  font-size: 16px;
  /*font-size: min(1vw, 16px);*/
  font-family: 'Noto Sans JP', sans-serif;
  font-weight: 400;
  color: #000; }

@media screen and (min-width: 768px) {
  a[href^="tel:"] {
    pointer-events: none; } }

/*--------------------------------------------------
ヘルパークラス
---------------------------------------------------*/
@media screen and (max-width: 767px) {
  .hp_sp_br {
    display: block; } }
@media screen and (min-width: 768px) {
  .hp_sp_br {
    display: none; } }

@media screen and (max-width: 767px) {
  .hp_pc_br {
    display: none; } }
@media screen and (min-width: 768px) {
  .hp_pc_br {
    display: block; } }

.hp_ta-c {
  text-align: center !important; }

.hp_ta-r {
  text-align: right !important; }

.hp_txt_small {
  font-size: 0.7em; }

.hp_txt_large {
  font-size: 1.5em; }

.hp_txt_caution {
  color: #E00429; }

.hp_txt_underLine {
  background: linear-gradient(transparent 75%, #F8FFA3 75%); }

.hp_txt_slant {
  position: relative;
  /*複数行*/ }
  .hp_txt_slant::before {
    display: block;
    content: "";
    width: 1em;
    height: 2px;
    border-radius: 12px;
    background: #EB6867;
    position: absolute;
    top: 50%;
    left: -1.2em;
    -webkit-transform: translateY(-50%) rotate(70deg);
    transform: translateY(-50%) rotate(70deg); }
  .hp_txt_slant::after {
    display: block;
    content: "";
    width: 1em;
    height: 2px;
    border-radius: 12px;
    background: #EB6867;
    position: absolute;
    top: 50%;
    right: -1.2em;
    -webkit-transform: translateY(-50%) rotate(-70deg);
    transform: translateY(-50%) rotate(-70deg); }
  .hp_txt_slant.hp_txt_slant__multi {
    position: relative;
    font-weight: bold; }
    .hp_txt_slant.hp_txt_slant__multi::before {
      display: block;
      content: "";
      width: 2em;
      height: 2px;
      border-radius: 12px;
      background: #000000;
      position: absolute;
      top: 50%;
      left: -4.2em;
      -webkit-transform: translateY(-50%) rotate(70deg);
      transform: translateY(-50%) rotate(70deg); }
    .hp_txt_slant.hp_txt_slant__multi::after {
      display: block;
      content: "";
      width: 2em;
      height: 2px;
      border-radius: 12px;
      background: #000000;
      position: absolute;
      top: 50%;
      right: -3.2em;
      -webkit-transform: translateY(-50%) rotate(-70deg);
      transform: translateY(-50%) rotate(-70deg); }

.hp_txt_dot {
  position: relative; }
  .hp_txt_dot::before {
    display: block;
    content: "";
    width: 0.2em;
    height: 0.2em;
    background: #FF520B;
    border-radius: 50%;
    position: absolute;
    top: -0.1em;
    left: 0;
    right: 0;
    margin: auto;
    z-index: -1; }

/*--------------------------------------------------
btn
---------------------------------------------------*/
.btnBox {
  width: 95%;
  display: flex;
  flex-direction: column-reverse;
  gap: 16px;
  margin: 1em auto; }
  @media screen and (min-width: 768px) {
    .btnBox {
      justify-content: center;
      align-items: center;
      flex-direction: row;
      gap: 24px;
      width: 100%;
      max-width: 400px;
      margin: 3em auto; } }

.btn {
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  background: #EB6867;
  color: #fff;
  padding: 1.5em 1em;
  border-radius: 88px;
  position: relative;
  text-align: center;
  cursor: pointer;
  z-index: auto;
  -webkit-transition: .3s all;
  transition: .3s all; }
  .btn:focus {
    opacity: 0.7; }
  .btn:hover {
    opacity: 0.7; }
  .btn .label {
    background: #4DC9CB;
    border-radius: 4px;
    padding: 0.2em 0.3em;
    color: #F8FFA3;
    font-weight: bold;
    letter-spacing: 0.1em; }
    @media screen and (min-width: 768px) {
      .btn .label {
        font-size: 0.8em; } }
  .btn .subTxt {
    /*width: 100%;*/
    /*display: block;*/
    display: inline-block;
    position: absolute;
    top: -40px;
    color: #5B6685;
    letter-spacing: 0.04em; }
    .btn .subTxt.hp_txt_slant::before {
      background: #5B6685;
      top: auto;
      bottom: 10px;
      transform: rotate(70deg); }
    .btn .subTxt.hp_txt_slant::after {
      background: #5B6685;
      top: auto;
      bottom: 10px;
      transform: rotate(-70deg); }
    .btn .subTxt .hp_txt_large {
      color: #019BFF;
      font-weight: bold; }
  .btn > .txtBox {
    display: block;
    margin-top: 0.3em;
    padding-right: 0.4em; }
    @media screen and (min-width: 768px) {
      .btn > .txtBox {
        margin-top: 0;
        padding-right: 0; } }
  .btn .txt {
    color: #fff;
    font-size: 1.125em;
    font-weight: bold; }
    @media screen and (min-width: 768px) {
      .btn .txt {
        font-size: 1.313em; } }
  .btn .icon {
    width: 24px; }
  .btn:nth-child(n+2) {
    margin-top: 1em; }
    @media screen and (min-width: 768px) {
      .btn:nth-child(n+2) {
        margin-top: 0; } }

/*--------------------------------------------------
footer
---------------------------------------------------*/
#footer {
  background: #621014;
  padding: 1em; }
  #footer .copyrightBox {
    text-align: center; }
    #footer .copyrightBox > small {
      font-size: 0.875em;
      color: #fff; }

/*--------------------------------------------------
共通
font-weight:400,700
---------------------------------------------------*/
.noteBox {
  margin: 0 auto; }
  @media screen and (min-width: 768px) {
    .noteBox {
      max-width: 1000px; } }
  .noteBox .noteList > li {
    text-indent: -1em;
    padding-left: 1em; }
  .noteBox > .txt {
    text-align: center;
    color: #5B0504; }

/*--------------------------------------------------
fv
---------------------------------------------------*/
#fv {
  width: 100%; }
  #fv img {
    width: 100%; }

/*--------------------------------------------------
初回限定
---------------------------------------------------*/
#limited > .inner {
  margin: 0 auto;
  padding: 3em 1em 2em; }
  @media screen and (min-width: 768px) {
    #limited > .inner {
      max-width: 1000px;
      padding: 3em 1em 5em; } }
#limited .ttlBox > .ttl {
  display: block;
  font-size: calc(22 / 375 * 100vw);
  text-align: center;
  line-height: 1.3; }
  @media screen and (min-width: 768px) {
    #limited .ttlBox > .ttl {
      font-size: 2em; } }
  #limited .ttlBox > .ttl .subTxt {
    display: inline-block;
    font-size: calc(18 / 375 * 100vw);
    font-weight: 400;
    line-height: 1.4; }
    @media screen and (min-width: 768px) {
      #limited .ttlBox > .ttl .subTxt {
        font-size: 0.7em; } }
  #limited .ttlBox > .ttl .txt {
    display: block;
    color: #621014;
    font-weight: 700;
    margin: 0.4em auto;
    line-height: 1.4; }
  #limited .ttlBox > .ttl .hp_txt_large {
    font-size: 1.3em; }
    @media screen and (min-width: 768px) {
      #limited .ttlBox > .ttl .hp_txt_large {
        font-size: inherit; } }
#limited .ttlBox.ttlBox__stripe {
  margin: 2em auto;
  position: relative;
  z-index: 1; }
  #limited .ttlBox.ttlBox__stripe::after {
    display: block;
    content: "";
    width: 96%;
    height: 16px;
    background-size: auto auto;
    background-color: white;
    background-image: repeating-linear-gradient(135deg, transparent, transparent 6px, #f8d6d5 6px, #f8d6d5 10px);
    position: absolute;
    bottom: -20px;
    left: 0;
    right: 0;
    margin: auto;
    z-index: -1; }
    @media screen and (min-width: 768px) {
      #limited .ttlBox.ttlBox__stripe::after {
        width: 56%;
        height: 10px; } }
  #limited .ttlBox.ttlBox__stripe .ttl {
    display: block;
    font-weight: 700;
    line-height: 1.4;
    color: #EB6867;
    font-size: calc(24 / 375 * 100vw); }
    @media screen and (min-width: 768px) {
      #limited .ttlBox.ttlBox__stripe .ttl {
        font-size: 1.6em; } }
  #limited .ttlBox.ttlBox__stripe + .leadBox {
    margin: 3em auto 2em;
    text-align: center; }
    #limited .ttlBox.ttlBox__stripe + .leadBox > .txt {
      font-size: calc(18 / 375 * 100vw); }
      @media screen and (min-width: 768px) {
        #limited .ttlBox.ttlBox__stripe + .leadBox > .txt {
          font-size: 1.313em; } }
#limited .txtBox {
  margin: 2em auto; }
  #limited .txtBox > .txt {
    font-size: calc(15 / 375 * 100vw); }
    @media screen and (min-width: 768px) {
      #limited .txtBox > .txt {
        font-size: 0.95em; } }
#limited .leadBox.leadBox__bg {
  background: #F8D6D5;
  padding: 2em;
  border-radius: 30px; }
  #limited .leadBox.leadBox__bg > .txt {
    font-size: calc(15 / 375 * 100vw); }
    @media screen and (min-width: 768px) {
      #limited .leadBox.leadBox__bg > .txt {
        font-size: 0.95em; } }

.aboutListBox {
  margin: 2em auto; }

.aboutList {
  display: flex;
  justify-content: center;
  align-items: flex-start;
  flex-direction: column;
  gap: 56px;
  width: 80%;
  margin: 0 auto; }
  @media screen and (min-width: 768px) {
    .aboutList {
      width: 100%;
      flex-direction: row;
      gap: 16px; } }
  .aboutList > li {
    width: 100%;
    -ms-flex: 0 1 auto;
    flex: 0 1 auto; }
    .aboutList > li > .ttl {
      margin: 0.5em auto;
      text-align: center;
      font-weight: 700;
      font-size: calc(21 / 375 * 100vw); }
      @media screen and (min-width: 768px) {
        .aboutList > li > .ttl {
          font-size: 1.313em; } }
    .aboutList > li > .txtBox {
      margin: 0 auto !important; }
      .aboutList > li > .txtBox > .txt {
        font-size: calc(15 / 375 * 100vw); }
        @media screen and (min-width: 768px) {
          .aboutList > li > .txtBox > .txt {
            font-size: 0.95em; } }
  .aboutList .noteBox {
    margin: 1em auto; }
    .aboutList .noteBox > .txt {
      text-align: left;
      color: #333;
      font-size: calc(12 / 375 * 100vw); }
      @media screen and (min-width: 768px) {
        .aboutList .noteBox > .txt {
          font-size: 0.75em; } }

.graphBox {
  margin: 0 auto; }
  @media screen and (min-width: 768px) {
    .graphBox {
      max-width: 800px; } }
  .graphBox > .inner {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    gap: 8px;
    width: 100%;
    margin: 0 auto; }
    @media screen and (min-width: 768px) {
      .graphBox > .inner {
        flex-direction: row;
        align-items: flex-start;
        gap: 40px; } }
  .graphBox .imgBox {
    width: 80%;
    -ms-flex: 0 1 auto;
    flex: 0 1 auto; }
    @media screen and (min-width: 768px) {
      .graphBox .imgBox {
        width: 60%; } }
  .graphBox .txtBox {
    width: 100%;
    -ms-flex: 0 1 auto;
    flex: 0 1 auto; }
    .graphBox .txtBox > .ttl {
      font-weight: 400;
      font-size: calc(24 / 375 * 100vw); }
      @media screen and (min-width: 768px) {
        .graphBox .txtBox > .ttl {
          font-size: 1.5em; } }
    .graphBox .txtBox > .leadBox {
      margin: 1em auto 0; }
      .graphBox .txtBox > .leadBox > .txt {
        font-size: calc(15 / 375 * 100vw); }
        @media screen and (min-width: 768px) {
          .graphBox .txtBox > .leadBox > .txt {
            font-size: 0.95em; } }
  .graphBox .noteBox {
    margin: 1em auto; }
    .graphBox .noteBox > .txt {
      text-align: left;
      color: #333;
      font-size: calc(12 / 375 * 100vw); }
      @media screen and (min-width: 768px) {
        .graphBox .noteBox > .txt {
          font-size: 0.75em; } }
  .graphBox .btnBox {
    display: block;
    width: 90%;
    margin: 0 auto; }
    @media screen and (min-width: 768px) {
      .graphBox .btnBox {
        width: 60%;
        margin-top: 2em;
        margin-left: 0;
        margin-bottom: 0; } }
    .graphBox .btnBox .ttlBox.ttlBox__slant {
      margin-bottom: 0.5em;
      text-align: center; }
      @media screen and (min-width: 768px) {
        .graphBox .btnBox .ttlBox.ttlBox__slant {
          text-align: start;
          padding-left: 2.6em; } }
      .graphBox .btnBox .ttlBox.ttlBox__slant span {
        display: inline-block;
        color: #EB6867;
        font-size: calc(15 / 375 * 100vw); }
        @media screen and (min-width: 768px) {
          .graphBox .btnBox .ttlBox.ttlBox__slant span {
            font-size: 0.95em; } }
    .graphBox .btnBox .btn {
      padding: 1em; }

/*--------------------------------------------------
ダウンロード
---------------------------------------------------*/
.app {
  background: #F9F4ED;
  padding: 3em 1em 5em; }
  .app .ttlBox {
    text-align: center; }
    .app .ttlBox > .ttl {
      color: #5B0504;
      font-weight: 400;
      font-size: calc(28 / 375 * 100vw); }
      @media screen and (min-width: 768px) {
        .app .ttlBox > .ttl {
          font-size: 1.8em; } }
  .app .noteBox > .txt {
    font-size: calc(18 / 375 * 100vw); }
    @media screen and (min-width: 768px) {
      .app .noteBox > .txt {
        font-size: 1.125em; } }

.appBox {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-direction: column;
  gap: 8px;
  margin: 1em auto 0;
  padding: 0 1em; }
  @media screen and (min-width: 768px) {
    .appBox {
      max-width: 650px;
      flex-direction: row;
      gap: 24px; } }
  .appBox > .imgBox {
    width: 70%;
    -ms-flex: 0 1 auto;
    flex: 0 1 auto; }
    @media screen and (min-width: 768px) {
      .appBox > .imgBox {
        width: 100%; } }
  .appBox > .btnBox {
    width: 60%;
    -ms-flex: 0 1 auto;
    flex: 0 1 auto; }
    .appBox > .btnBox > .inner {
      display: flex;
      justify-content: center;
      align-items: center;
      flex-direction: column;
      gap: 8px; }

/*--------------------------------------------------
エントリー方法
---------------------------------------------------*/
#entry {
  padding: 3em 0 0; }
  @media screen and (min-width: 768px) {
    #entry {
      padding: 3em 0; } }
  #entry > .ttlBox {
    text-align: center; }
    #entry > .ttlBox > .ttl > .txt {
      display: block;
      font-weight: 400;
      font-size: calc(24 / 375 * 100vw); }
      @media screen and (min-width: 768px) {
        #entry > .ttlBox > .ttl > .txt {
          font-size: 1.5em; } }
    #entry > .ttlBox > .ttl > .subTxt {
      display: inline-block;
      font-weight: 400;
      font-size: calc(14 / 375 * 100vw);
      border-bottom: solid 1px currentColor;
      padding-bottom: 0.2em; }
      @media screen and (min-width: 768px) {
        #entry > .ttlBox > .ttl > .subTxt {
          font-size: 0.875em; } }

.flowListBox {
  background: #F9F4ED;
  padding: 4em 1em;
  margin: 2em auto; }

.flowList {
  width: 90%;
  display: flex;
  justify-content: center;
  align-items: flex-start;
  flex-direction: column;
  gap: 24px;
  margin: 0 auto; }
  @media screen and (min-width: 768px) {
    .flowList {
      width: 100%;
      max-width: 900px;
      flex-direction: row; } }
  .flowList > li {
    width: 100%; }
    .flowList > li .ttl {
      text-align: center;
      background: #5B0504;
      padding: 1em;
      text-align: center;
      font-size: calc(14 / 375 * 100vw);
      color: #fff;
      position: relative;
      z-index: 1; }
      @media screen and (min-width: 768px) {
        .flowList > li .ttl {
          font-size: 0.875em; } }
      .flowList > li .ttl::after {
        display: block;
        content: "";
        width: 0;
        height: 0;
        border-style: solid;
        border-right: 32px solid transparent;
        border-left: 32px solid transparent;
        border-top: 32px solid #5B0504;
        border-bottom: 0;
        position: absolute;
        bottom: -10px;
        left: 0;
        right: 0;
        margin: auto;
        z-index: -1; }
    .flowList > li .txtBox {
      margin: 1em auto;
      text-align: center; }
      @media screen and (min-width: 768px) {
        .flowList > li .txtBox {
          min-height: 200px; } }
      .flowList > li .txtBox > .txt {
        font-size: calc(18 / 375 * 100vw); }
        @media screen and (min-width: 768px) {
          .flowList > li .txtBox > .txt {
            font-size: 1.125em; } }
        .flowList > li .txtBox > .txt.txt__link {
          display: inline-block;
          margin: 1em 0;
          font-size: calc(15 / 375 * 100vw);
          color: inherit; }
          @media screen and (min-width: 768px) {
            .flowList > li .txtBox > .txt.txt__link {
              font-size: 0.95em; } }
    .flowList > li .noteBox > .txt {
      color: #E91010;
      font-size: calc(15 / 375 * 100vw); }
      @media screen and (min-width: 768px) {
        .flowList > li .noteBox > .txt {
          font-size: 0.95em; } }
    .flowList > li .noteBox.noteBox__step3 {
      margin-top: 1em; }
    .flowList > li .imgBox {
      margin: 2em auto 0; }
      @media screen and (min-width: 768px) {
        .flowList > li .imgBox {
          margin: 1em auto 0; } }
    .flowList > li .ttlBox.ttlBox__name {
      display: block;
      background: #29abed;
      background: radial-gradient(circle, #29abed 0%, #2cb0de 50%, #54caca 100%);
      padding: 0.5em;
      box-shadow: 4px 5px 0px 1px #AAA8F7;
      position: relative;
      z-index: 1;
      margin-top: -0.2em; }
      @media screen and (min-width: 768px) {
        .flowList > li .ttlBox.ttlBox__name {
          margin-top: -0.8em; } }
      .flowList > li .ttlBox.ttlBox__name > .ttl {
        color: #fff;
        font-size: 1.5em;
        font-weight: 700; }
      .flowList > li .ttlBox.ttlBox__name > .subTxt {
        background: #000;
        color: #fff;
        font-size: 0.875em;
        padding: 0.5em;
        margin-top: 0.5em; }
    .flowList > li .leadBox {
      margin: 1.5em auto; }
      .flowList > li .leadBox > .txt {
        line-height: 1.8; }
    .flowList > li:nth-of-type(n+2) {
      margin-top: 3em; }
      @media screen and (min-width: 768px) {
        .flowList > li:nth-of-type(n+2) {
          margin-top: 0; } }

/*--------------------------------------------------
レスキューパスについて
---------------------------------------------------*/
#about-pass {
  padding: 3em 1em; }
  #about-pass .ttlBox {
    text-align: center; }
    #about-pass .ttlBox > .ttl > .txt {
      display: block;
      font-weight: 400;
      font-size: calc(24 / 375 * 100vw); }
      @media screen and (min-width: 768px) {
        #about-pass .ttlBox > .ttl > .txt {
          font-size: 1.5em; } }
    #about-pass .ttlBox > .ttl > .subTxt {
      display: inline-block;
      font-weight: 400;
      font-size: calc(14 / 375 * 100vw);
      border-bottom: solid 1px currentColor;
      padding-bottom: 0.2em; }
      @media screen and (min-width: 768px) {
        #about-pass .ttlBox > .ttl > .subTxt {
          font-size: 0.875em; } }
    #about-pass .ttlBox.ttlBox__howto {
      margin-top: 3em; }
      #about-pass .ttlBox.ttlBox__howto > .ttl {
        font-weight: 400;
        font-size: calc(21 / 375 * 100vw); }
        @media screen and (min-width: 768px) {
          #about-pass .ttlBox.ttlBox__howto > .ttl {
            font-size: 1.5em; } }
  #about-pass .txtBox {
    margin: 2em auto;
    text-align: left; }
    @media screen and (min-width: 768px) {
      #about-pass .txtBox {
        text-align: center; } }
  #about-pass .noteBox .ttlBox {
    text-align: left;
    margin-bottom: 0.5em; }
    #about-pass .noteBox .ttlBox > .ttl {
      font-weight: 700;
      font-size: calc(16 / 375 * 100vw); }
      @media screen and (min-width: 768px) {
        #about-pass .noteBox .ttlBox > .ttl {
          font-size: 1em; } }
  #about-pass .noteBox .noteList > li:nth-of-type(n+2) {
    margin-top: 0.5em; }

.passflowListBox {
  margin: 1em auto 3em;
  width: 100%; }
  @media screen and (min-width: 768px) {
    .passflowListBox {
      max-width: 600px;
      margin: 2em auto; } }

.passflowList > li {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  gap: 8px; }
  .passflowList > li .num {
    width: 45px;
    height: 40px;
    border-radius: 50%;
    background: #EB6867;
    color: #fff;
    font-weight: 700;
    display: flex;
    justify-content: center;
    align-items: center; }
  .passflowList > li .txt {
    width: 100%;
    font-size: calc(18 / 375 * 100vw); }
    @media screen and (min-width: 768px) {
      .passflowList > li .txt {
        font-size: 1.125em; } }
  .passflowList > li:nth-of-type(n+2) {
    margin-top: 1em; }

/*--------------------------------------------------
キャンペーン概要
---------------------------------------------------*/
#campaign {
  padding: 3em 1em; }
  #campaign .ttlBox {
    text-align: center; }
    #campaign .ttlBox > .ttl > .txt {
      display: block;
      font-weight: 400;
      font-size: calc(21 / 375 * 100vw); }
      @media screen and (min-width: 768px) {
        #campaign .ttlBox > .ttl > .txt {
          font-size: 1.5em; } }
    #campaign .ttlBox > .ttl > .subTxt {
      display: inline-block;
      font-weight: 400;
      font-size: calc(14 / 375 * 100vw);
      border-bottom: solid 1px currentColor;
      padding-bottom: 0.2em; }
      @media screen and (min-width: 768px) {
        #campaign .ttlBox > .ttl > .subTxt {
          font-size: 0.875em; } }
    #campaign .ttlBox.ttlBox__howto > .ttl {
      font-weight: 400;
      font-size: calc(21 / 375 * 100vw); }
      @media screen and (min-width: 768px) {
        #campaign .ttlBox.ttlBox__howto > .ttl {
          font-size: 1.5em; } }

.campaignListBox {
  margin: 3em auto; }
  @media screen and (min-width: 768px) {
    .campaignListBox {
      width: 1000px; } }

.campaignList > li {
  border-bottom: solid 1px #BF8B2E;
  padding-bottom: 1em;
  margin-bottom: 1em; }
  .campaignList > li > .ttl {
    font-weight: 700;
    font-size: calc(18 / 375 * 100vw);
    margin-bottom: 0.2em; }
    @media screen and (min-width: 768px) {
      .campaignList > li > .ttl {
        font-size: 1.125em; } }
  .campaignList > li .noteBox {
    margin-top: 0.5em; }
  .campaignList > li .noteList > li:nth-of-type(n+2) {
    margin-top: 0.2em; }

/**/

/*# sourceMappingURL=style-lp.css.map */
