@charset "UTF-8";
/*===========================================================
このファイルはsassで編集されています。
cssを編集しないでください。
=============================================================*/
button {
  background-color: transparent;
  border: none;
  cursor: pointer;
  outline: none;
  padding: 0;
  appearance: none; }

li {
  list-style: none; }

/*=====================================================================
html
=======================================================================*/
* {
  box-sizing: border-box;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  line-break: auto; }

html {
  font-size: 62.5%;
  min-width: 1000px; }
  @media screen and (max-width: 1040px) {
    html {
      min-width: 100%;
      width: 100%; } }

a {
  color: inherit;
  text-decoration: none;
  display: block; }
  a:active {
    text-decoration: none; }
  a:hover {
    text-decoration: none; }

img {
  max-width: 100%;
  height: auto;
  width: 100%; }

.relative {
  position: relative; }

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

.tab-block {
  display: none !important; }
  @media screen and (max-width: 1040px) {
    .tab-block {
      display: block !important; } }

@media screen and (max-width: 1040px) {
  .tab-none {
    display: none !important; } }

.md-block {
  display: none !important; }
  @media screen and (max-width: 768px) {
    .md-block {
      display: block !important; } }

@media screen and (max-width: 768px) {
  .md-none {
    display: none !important; } }

.sm-block {
  display: none !important; }
  @media screen and (max-width: 576px) {
    .sm-block {
      display: block !important; } }

@media screen and (max-width: 576px) {
  .sm-none {
    display: none !important; } }

.container_1000 {
  margin: 0 auto;
  width: 1040px;
  padding-left: 20px;
  padding-right: 20px; }
  @media screen and (max-width: 1040px) {
    .container_1000 {
      max-width: 100%;
      width: 100%;
      padding-left: 4%;
      padding-right: 4%;
      word-wrap: break-word;
      overflow-wrap: break-word; } }

.container_800 {
  margin: 0 auto;
  width: 840px;
  padding-left: 20px;
  padding-right: 20px; }
  @media screen and (max-width: 860px) {
    .container_800 {
      max-width: 100%;
      width: 100%;
      padding-left: 4%;
      padding-right: 4%;
      word-wrap: break-word;
      overflow-wrap: break-word; } }

.mt10 {
  margin-top: 10px; }

.mt20 {
  margin-top: 20px; }

.mt30 {
  margin-top: 30px; }

.mt40 {
  margin-top: 40px; }

.mt50 {
  margin-top: 50px; }

.mt60 {
  margin-top: 60px; }

.mt70 {
  margin-top: 70px; }

.mt80 {
  margin-top: 80px; }

.mt90 {
  margin-top: 90px; }

.mt100 {
  margin-top: 100px; }

.mt110 {
  margin-top: 110px; }

.mt120 {
  margin-top: 120px; }

.mt130 {
  margin-top: 130px; }

.mt140 {
  margin-top: 140px; }

.mt150 {
  margintop: 150px; }

.mb10 {
  margin-bottom: 10px; }

.mb20 {
  margin-bottom: 20px; }

.mb30 {
  margin-bottom: 30px; }

.mb40 {
  margin-bottom: 40px; }

.mb50 {
  margin-bottom: 50px; }

.mb60 {
  margin-bottom: 60px; }

.mb70 {
  margin-bottom: 70px; }

.mb80 {
  margin-bottom: 80px; }

.mb90 {
  margin-bottom: 90px; }

.mb100 {
  margin-bottom: 100px; }

.mb110 {
  margin-bottom: 110px; }

.mb120 {
  margin-bottom: 120px; }

.mb130 {
  margin-bottom: 130px; }

.mb140 {
  margin-bottom: 140px; }

.mb150 {
  margin-bottom: 150px; }

.pt10 {
  padding-top: 10px; }

.pt20 {
  padding-top: 20px; }

.pt30 {
  padding-top: 30px; }

.pt40 {
  padding-top: 40px; }

.pt50 {
  padding-top: 50px; }

.pt60 {
  padding-top: 60px; }

.pt70 {
  padding-top: 70px; }

.pt80 {
  padding-top: 80px; }

.pt90 {
  padding-top: 90px; }

.pt100 {
  padding-top: 100px; }

.pt110 {
  padding-top: 110px; }

.pt120 {
  padding-top: 120px; }

.pt130 {
  padding-top: 130px; }

.pt140 {
  padding-top: 140px; }

.pt150 {
  padding-top: 150px; }

.pb10 {
  padding-bottom: 10px; }

.pb20 {
  padding-bottom: 20px; }

.pb30 {
  padding-bottom: 30px; }

.pb40 {
  padding-bottom: 40px; }

.pb50 {
  padding-bottom: 50px; }

.pb60 {
  padding-bottom: 60px; }

.pb70 {
  padding-bottom: 70px; }

.pb80 {
  padding-bottom: 80px; }

.pb90 {
  padding-bottom: 90px; }

.pb100 {
  padding-bottom: 100px; }

.pb110 {
  padding-bottom: 110px; }

.pb120 {
  padding-bottom: 120px; }

.pb130 {
  padding-bottom: 130px; }

.pb140 {
  padding-bottom: 140px; }

.pb150 {
  padding-bottom: 150px; }

.tc {
  text-align: center; }

.tl {
  text-align: left; }

.tr {
  text-align: right; }

.tj {
  text-align: justify; }

.mb {
  margin-bottom: 150px; }

.w32 {
  width: 32%; }

.w32-md48 {
  width: 32%; }
  @media screen and (max-width: 768px) {
    .w32-md48 {
      width: 48%; } }

.w32-md100 {
  width: 32%; }
  @media screen and (max-width: 768px) {
    .w32-md100 {
      width: 100%; } }

.w32-sm100 {
  width: 32%; }
  @media screen and (max-width: 576px) {
    .w32-sm100 {
      width: 100%; } }

.w48 {
  width: 48%; }

.w48-md100 {
  width: 48%; }
  @media screen and (max-width: 768px) {
    .w48-md100 {
      width: 100%; } }

.w48-sm100 {
  width: 48%; }
  @media screen and (max-width: 576px) {
    .w48-sm100 {
      width: 100%; } }

.w10 {
  width: 10%; }

.w10-md100 {
  width: 10%; }
  @media screen and (max-width: 768px) {
    .w10-md100 {
      width: 100%; } }

.w10-sm100 {
  width: 10%; }
  @media screen and (max-width: 576px) {
    .w10-sm100 {
      width: 100%; } }

.w15 {
  width: 15%; }

.w15-md100 {
  width: 15%; }
  @media screen and (max-width: 768px) {
    .w15-md100 {
      width: 100%; } }

.w15-sm100 {
  width: 15%; }
  @media screen and (max-width: 576px) {
    .w15-sm100 {
      width: 100%; } }

.w20 {
  width: 20%; }

.w20-md100 {
  width: 20%; }
  @media screen and (max-width: 768px) {
    .w20-md100 {
      width: 100%; } }

.w20-sm100 {
  width: 20%; }
  @media screen and (max-width: 576px) {
    .w20-sm100 {
      width: 100%; } }

.w25 {
  width: 25%; }

.w25-md100 {
  width: 25%; }
  @media screen and (max-width: 768px) {
    .w25-md100 {
      width: 100%; } }

.w25-sm100 {
  width: 25%; }
  @media screen and (max-width: 576px) {
    .w25-sm100 {
      width: 100%; } }

.w30 {
  width: 30%; }

.w30-md100 {
  width: 30%; }
  @media screen and (max-width: 768px) {
    .w30-md100 {
      width: 100%; } }

.w30-sm100 {
  width: 30%; }
  @media screen and (max-width: 576px) {
    .w30-sm100 {
      width: 100%; } }

.w35 {
  width: 35%; }

.w35-md100 {
  width: 35%; }
  @media screen and (max-width: 768px) {
    .w35-md100 {
      width: 100%; } }

.w35-sm100 {
  width: 35%; }
  @media screen and (max-width: 576px) {
    .w35-sm100 {
      width: 100%; } }

.w40 {
  width: 40%; }

.w40-md100 {
  width: 40%; }
  @media screen and (max-width: 768px) {
    .w40-md100 {
      width: 100%; } }

.w40-sm100 {
  width: 40%; }
  @media screen and (max-width: 576px) {
    .w40-sm100 {
      width: 100%; } }

.w45 {
  width: 45%; }

.w45-md100 {
  width: 45%; }
  @media screen and (max-width: 768px) {
    .w45-md100 {
      width: 100%; } }

.w45-sm100 {
  width: 45%; }
  @media screen and (max-width: 576px) {
    .w45-sm100 {
      width: 100%; } }

.w50 {
  width: 50%; }

.w50-md100 {
  width: 50%; }
  @media screen and (max-width: 768px) {
    .w50-md100 {
      width: 100%; } }

.w50-sm100 {
  width: 50%; }
  @media screen and (max-width: 576px) {
    .w50-sm100 {
      width: 100%; } }

.w55 {
  width: 55%; }

.w55-md100 {
  width: 55%; }
  @media screen and (max-width: 768px) {
    .w55-md100 {
      width: 100%; } }

.w55-sm100 {
  width: 55%; }
  @media screen and (max-width: 576px) {
    .w55-sm100 {
      width: 100%; } }

.w60 {
  width: 60%; }

.w60-md100 {
  width: 60%; }
  @media screen and (max-width: 768px) {
    .w60-md100 {
      width: 100%; } }

.w60-sm100 {
  width: 60%; }
  @media screen and (max-width: 576px) {
    .w60-sm100 {
      width: 100%; } }

.w65 {
  width: 65%; }

.w65-md100 {
  width: 65%; }
  @media screen and (max-width: 768px) {
    .w65-md100 {
      width: 100%; } }

.w65-sm100 {
  width: 65%; }
  @media screen and (max-width: 576px) {
    .w65-sm100 {
      width: 100%; } }

.w70 {
  width: 70%; }

.w70-md100 {
  width: 70%; }
  @media screen and (max-width: 768px) {
    .w70-md100 {
      width: 100%; } }

.w70-sm100 {
  width: 70%; }
  @media screen and (max-width: 576px) {
    .w70-sm100 {
      width: 100%; } }

.w75 {
  width: 75%; }

.w75-md100 {
  width: 75%; }
  @media screen and (max-width: 768px) {
    .w75-md100 {
      width: 100%; } }

.w75-sm100 {
  width: 75%; }
  @media screen and (max-width: 576px) {
    .w75-sm100 {
      width: 100%; } }

.w80 {
  width: 80%; }

.w80-md100 {
  width: 80%; }
  @media screen and (max-width: 768px) {
    .w80-md100 {
      width: 100%; } }

.w80-sm100 {
  width: 80%; }
  @media screen and (max-width: 576px) {
    .w80-sm100 {
      width: 100%; } }

.w85 {
  width: 85%; }

.w85-md100 {
  width: 85%; }
  @media screen and (max-width: 768px) {
    .w85-md100 {
      width: 100%; } }

.w85-sm100 {
  width: 85%; }
  @media screen and (max-width: 576px) {
    .w85-sm100 {
      width: 100%; } }

.w90 {
  width: 90%; }

.w90-md100 {
  width: 90%; }
  @media screen and (max-width: 768px) {
    .w90-md100 {
      width: 100%; } }

.w90-sm100 {
  width: 90%; }
  @media screen and (max-width: 576px) {
    .w90-sm100 {
      width: 100%; } }

.w100 {
  width: 100%; }

.bb_style {
  background: linear-gradient(transparent 80%, #ffe900 50%);
  display: inline-block; }

.bg_style {
  background: #ffe900;
  color: #000;
  font-weight: 500; }

.dot_text b {
  position: relative;
  padding-top: 0.2em; }
  .dot_text b:before {
    position: absolute;
    content: "";
    width: 0.2em;
    height: 0.2em;
    border-radius: 50%;
    background-color: #FFEF00;
    top: 0;
    left: 50%;
    transform: translate(-50%, 0); }

.grecaptcha-badge {
  display: none !important; }

/*=====================================================================
レイアウト
=======================================================================*/
.d-flex {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap; }

.j-c-between {
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between; }

.j-c-start {
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start; }

.j-c-end {
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end; }

.j-c-center {
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center; }

.row-reverse {
  flex-flow: row-reverse; }

.d-block {
  display: block; }

.d-iblock {
  display: inline-block; }

.center {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translateY(-50%) translateX(-50%);
  -webkit-transform: translateY(-50%) translateX(-50%); }

/*=====================================================================
JS動作設定
=======================================================================*/
.message_popup {
  width: 100%;
  height: 100vh;
  background: rgba(0, 0, 0, 0.3);
  position: fixed;
  top: 0;
  left: 0;
  z-index: 100;
  display: none; }
  .message_popup.show {
    display: block; }
  .message_popup .gray {
    width: 100%;
    height: 100vh;
    background: rgba(0, 0, 0, 0.3);
    position: fixed;
    top: 0;
    left: 0;
    z-index: 9; }
  .message_popup .popup {
    position: absolute;
    z-index: 10;
    top: 50%;
    left: 50%;
    transform: translateY(-50%) translateX(-50%);
    -webkit-transform: translateY(-50%) translateX(-50%);
    border-radius: 20px;
    background: #fff;
    text-align: center;
    padding: 45px 50px;
    width: 80%;
    max-width: 1040px;
    height: 80vh;
    overflow-y: scroll;
    overflow-x: hidden; }
    @media screen and (max-width: 768px) {
      .message_popup .popup {
        width: 90%; } }
    .message_popup .popup .close {
      position: absolute;
      top: -10px;
      right: -10px;
      border-radius: 6px;
      background: #2B2B2B;
      color: #fff;
      padding: 5px 8px;
      cursor: pointer;
      font-size: .8rem; }
    .message_popup .popup .page_format {
      margin-bottom: 20px; }
    .message_popup .popup .text_wrap {
      margin-bottom: 45px; }
    .message_popup .popup .clearfix button {
      width: 49%;
      text-align: center;
      font-weight: 600;
      border-radius: 4px;
      cursor: pointer;
      border: 1px solid #2B2B2B;
      margin-bottom: 10px; }
      @media screen and (max-width: 1040px) {
        .message_popup .popup .clearfix button {
          width: 100%; } }
      .message_popup .popup .clearfix button.submit {
        color: #fff;
        background: #2B2B2B; }
        .message_popup .popup .clearfix button.submit:hover {
          color: #2B2B2B;
          background: #fff;
          transition: .4s; }
      .message_popup .popup .clearfix button.cancel {
        background: #fff; }
        .message_popup .popup .clearfix button.cancel:hover {
          color: #fff;
          background: #2B2B2B;
          transition: .4s; }
    .message_popup .popup dt {
      width: 10%;
      text-align: left; }
    .message_popup .popup dd {
      width: 90%;
      text-align: justify;
      padding-left: 10px; }
