@charset "UTF-8";
@media screen and (max-width: 1800px) {
  .nav {
    width: 100%;
  }
}

@media screen and (max-width: 900px) {
  /*--------------------------------------------------------
定数
--------------------------------------------------------*/
  .visible900 {
    display: block;
    margin: auto;
  }
  .hidden900 {
    display: none;
  }
  /*--------------------------------------------------------
定数（基本的に、全サイト共通に使えるもの）
--------------------------------------------------------*/
  .margin100 {
    margin-bottom: 11%;
  }
  .margin90 {
    margin-bottom: 10%;
  }
  .margin80 {
    margin-bottom: 9%;
  }
  .margin70 {
    margin-bottom: 8%;
  }
  .margin60 {
    margin-bottom: 7%;
  }
  .margin50 {
    margin-bottom: 6%;
  }
  .margin40 {
    margin-bottom: 5%;
  }
  .margin30 {
    margin-bottom: 4%;
  }
  .margin20 {
    margin-bottom: 3%;
  }
  .margin10 {
    margin-bottom: 2%;
  }
  .padding100 {
    padding-top: 11%;
  }
  .padding90 {
    padding-top: 10%;
  }
  .padding80 {
    padding-top: 9%;
  }
  .padding70 {
    padding-top: 8%;
  }
  .padding60 {
    padding-top: 7%;
  }
  .padding50 {
    padding-top: 6%;
  }
  .padding40 {
    padding-top: 5%;
  }
  .padding30 {
    padding-top: 4%;
  }
  .padding20 {
    padding-top: 3%;
  }
  .padding10 {
    padding-top: 2%;
  }
  /*--------------------------------------------------------
サイト毎に変化のある定数
--------------------------------------------------------*/
  .contents {
    width: 100%;
  }
  .img_center {
    margin-left: 0px;
  }
  img {
    width: 100%;
    max-width: 100%;
    height: auto;
  }
  /*--------------------------------------------------------
フッター
--------------------------------------------------------*/
  .copyright,
  .copyright a {
    font-size: 2.5vw;
  }
  /*--------------------------------------------------------
  ↓↓↓ 各種レイアウト ↓↓↓
--------------------------------------------------------*/
  .reflection_flame {
    width: 100%;
    min-width: unset;
  }
  /*--header--*/
  /*--header-end--*/
  /*--contents--*/
  .rec_bg2 {
    background-image: url(../img/rec_bg2_middle_sp.png);
    background-repeat: round;
    background-size: contain;
  }
  .rec_bg3 {
    background-image: url(../img/rec_bg2_middle_y_sp.png);
    background-repeat: round;
    background-size: contain;
  }
  .rec_03_1 {
    width: 200%;
    left: -50%;
  }
  /*--contents-end--*/
  /*--footer--*/
  /*--footer-end--*/
  /*--確認ページ--*/
  .user_name {
    padding: 2% 0;
    font-size: 5.6vw;
  }
  .form_field__padding {
    padding: 2% 5%;
  }
  .form_frame_scroll {
    height: 15rem;
  }
  /*--確認ページ-end--*/
  /* --決済ページ-- */

  /* --決済ページ-- */
  /*--追従要素--*/
  .banner {
    width: 100%;
    left: 0;
    bottom: 0;
  }
  .banner img {
    width: 100%;
  }
  .follow_box {
    bottom: 0;
    left: 0;
    right: 0;
    margin: 0 auto;
  }
  /*--追従要素-end--*/
  /* --プラポリ-- */
  .privacy_head {
    width: 90%;
  }
  .privacy_contents {
    width: 90%;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
  }
  /* --プラポリ-end-- */
  /*--------------------------------------------------------
  ↑↑↑ 各種レイアウト ↑↑↑
--------------------------------------------------------*/
}

@media screen and (max-width: 768px) {
  /*--------------------------------------------------------
↓↓↓ 各種レイアウト ↓↓↓
--------------------------------------------------------*/
  /* --共通-- */
  /* --共通-- */
  /*--header--*/
  /*--header-end--*/
  /*--contents--*/
  /*--contents-end--*/
  /*--footer--*/
  /*--footer-end--*/
  /* --背景設定-- */
  /* --背景設定-end-- */
  /* --画像位置設定-- */
  /* --画像位置設定-end-- */
  /*--------------------------------------------------------
↑↑↑ 各種レイアウト ↑↑↑
--------------------------------------------------------*/
}

@media screen and (max-width: 600px) {
  .visible600 {
    display: block;
    margin: auto;
  }
  .hidden600 {
    display: none;
  }
  body {
    font-size: 1.6rem;
  }
  /*todo 要調査*/
  /*--------------------------------------------------------
サイト毎に変化のある定数
--------------------------------------------------------*/
  .contents_privacyHead {
    width: 90%;
    padding: 10px 5px;
    font-size: 2.9vw;
    text-align: center;
  }
  .contents_privacy {
    width: 92%;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 10px 10px;
    font-size: 1.6rem;
  }
  /*--------------------------------------------------------
フッター
--------------------------------------------------------*/
  .copyright,
  .copyright a {
    font-size: 1.2rem;
  }
  /*--------------------------------------------------------
↓↓↓ 各種レイアウト ↓↓↓
--------------------------------------------------------*/
  /* --共通-- */
  /* --共通-- */
  /*--header--*/
  /*--header-end--*/
  /*--contents--*/
  /*--contents-end--*/
  /*--footer--*/
  /*--footer-end--*/
  /* --確認ページ-- */
  .back_btn {
    font-size: 2.5rem;
  }
  .inner_title {
    font-size: 2rem;
    padding: 2rem 0;
  }
  /* --確認ページ-end-- */
  /* --決済ページ-- */
  .modal_wrap {
    width: 70%;
  }
  .modal {
    max-width: 600px;
  }
  .btn_close {
    font-size: 8vw;
    line-height: 1;
  }
  .btn_close P {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
  }
  .btn_close span {
    vertical-align: middle;
  }
  .batsu {
    margin-right: 2%;
    display: inline-block;
    width: 8vw;
    /*枠の大きさ*/
    height: 8vw;
    /*枠の大きさ*/
    position: relative;
  }
  .batsu::before,
  .batsu::after {
    content: "";
    display: block;
    width: 100%;
    /*バツ線の長さ*/
    height: 5px;
    /*バツ線の太さ*/
    background: #fff;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    -webkit-transform-origin: 0% 50%;
    transform-origin: 0% 50%;
    position: absolute;
    top: calc(14% - (5px / 2));
    left: 14%;
    border-radius: 10px;
  }
  .batsu::after {
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
    -webkit-transform-origin: 100% 50%;
    transform-origin: 100% 50%;
    left: auto;
    right: 14%;
  }
  .payment_title {
    font-size: 3rem;
  }
  .payment_txt,
  .payment_txt_small {
    font-size: 2rem;
  }
  .payment_txt_small {
    font-size: 1.6rem;
  }
  .payment_inner_txt {
    font-size: 1.6rem;
  }
  /* --決済ページ-end-- */
  /* --プラポリ-- */
  .privacy_head {
    font-size: 2.3rem;
  }
  .privacy_head p {
    font-size: 0.7em;
  }
  /* --プラポリ-end-- */
  /*--------------------------------------------------------
↑↑↑ 各種レイアウト ↑↑↑
--------------------------------------------------------*/
  /*--------------------------------------------------------
↓↓↓ フォーム部分 ↓↓↓
--------------------------------------------------------*/
  .form_frame {
    width: 90%;
    padding: 5% 0;
  }
  .form_frame_shadow {
    -webkit-filter: drop-shadow(2.5vw 2.5vw 0 rgba(14, 47, 54, 0.2));
    filter: drop-shadow(2.5vw 2.5vw 0 rgba(14, 47, 54, 0.2));
  }
  form {
    /* font-size: 1.2rem; */
  }
  .form_field {
    font-size: 1.8rem;
  }
  .form_field2 {
    font-size: 2rem;
  }
  .form_title {
    font-size: 2.5rem;
  }
  .checkbox_wrap {
    width: 85%;
  }
  /********
チェックボックス
********/
  .checkbox-parts {
    padding-left: 26px;
    /* font-size: 1.2rem; */
    font-size: 1.6rem;
    line-height: 1.7;
  }
  .checkbox-parts::before {
    width: 20px;
    height: 20px;
  }
  .checkbox-parts span {
    padding-left: 26px;
  }
  .checkbox-input:checked + .checkbox-parts::after {
    top: calc(50% - 7px);
    left: 7px;
    width: 11.2px;
    height: 22.4px;
    border-bottom: 4px solid #f94326;
    border-right: 4px solid #f94326;
  }
  /*--------------------------------------------------------
↑↑↑ フォーム部分 ↑↑↑
--------------------------------------------------------*/
}

@media screen and (max-width: 500px) {
  .visible500 {
    display: block;
    margin: auto;
  }
  .hidden500 {
    display: none;
  }
  /*--------------------------------------------------------
  ↓↓↓ 各種レイアウト ↓↓↓
  --------------------------------------------------------*/
  .break_500:before {
    content: "\A";
    white-space: pre;
  }
  .privacy_contents {
    font-size: 1.3rem;
  }
  /*--------------------------------------------------------
  ↑↑↑ 各種レイアウト ↑↑↑
--------------------------------------------------------*/
}

@media screen and (max-width: 400px) {
  .visible400 {
    display: block;
    margin: auto;
  }
  .hidden400 {
    display: none;
  }
}

@media screen and (max-width: 320px) {
  .visible320 {
    display: block;
    margin: auto;
  }
  .hidden320 {
    display: none;
  }
}

/* 319px以下の場合　これ以上小さくしたくない場合は横スクロール対応 */
@media screen and (max-width: 319px) {
  body {
    overflow-x: visible;
  }
  .contents {
    min-width: 320px;
  }
  .contents1800 {
    min-width: 320px;
  }
  header {
    min-width: 320px;
  }
  footer {
    min-width: 320px;
  }
}
/*# sourceMappingURL=base_sp.css.map */
