@charset "UTF-8";
/*--------------------------------------
共通
---------------------------------------*/
a, abbr, acronym, address, applet, big, blockquote, body, caption, cite, code, dd, del, dfn, div, dl, dt, em, fieldset, font, form, h1, h2, h3, h4, h5, h6, html, iframe, img, ins, kbd, label, legend, li, object, ol, p, pre, q, s, samp, small, span, strike, strong, sub, sup, tbody, tfoot, thead, tt, ul, var {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-style: inherit;
  font-size: 100%;
  font-family: inherit;
  vertical-align: baseline;
  list-style: none; }

.clearfix:after {
  content: ".";
  display: block;
  clear: both;
  height: 0;
  visibility: hidden; }

.clearfix {
  clear: both;
  min-height: 1px; }

* html .clearfix {
  height: 1px; }

.txt_center {
  text-align: center !important; }

.block_center {
  margin-left: auto !important;
  margin-right: auto !important; }

.txt_left {
  text-align: left !important; }

.txt_right {
  text-align: right !important; }

.fleft {
  display: block;
  float: left; }

.fright {
  display: block;
  float: right; }

.txt_red {
  color: #f33; }

.pl0 {
  padding-left: 0 !important; }

.pr0 {
  padding-right: 0 !important; }

.pt0 {
  padding-top: 0 !important; }

.pb0 {
  padding-bottom: 0 !important; }

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

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

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

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

.pl5 {
  padding-left: 5px !important; }

.pr5 {
  padding-right: 5px !important; }

.pt5 {
  padding-top: 5px !important; }

.pb5 {
  padding-bottom: 5px !important; }

.pt8 {
  padding-top: 8px !important; }

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

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

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

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

.pl10 {
  padding-left: 10px !important; }

.pr10 {
  padding-right: 10px !important; }

.pt10 {
  padding-top: 10px !important; }

.pb10 {
  padding-bottom: 10px !important; }

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

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

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

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

.pl15 {
  padding-left: 15px !important; }

.pr15 {
  padding-right: 15px !important; }

.pt15 {
  padding-top: 15px !important; }

.pb15 {
  padding-bottom: 15px !important; }

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

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

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

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

.pl20 {
  padding-left: 20px !important; }

.pr20 {
  padding-right: 20px !important; }

.pt20 {
  padding-top: 20px !important; }

.pb20 {
  padding-bottom: 20px !important; }

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

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

.mt25 {
  margin-top: 25px !important; }

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

.pl25 {
  padding-left: 25px !important; }

.pr25 {
  padding-right: 25px !important; }

.pt25 {
  padding-top: 25px !important; }

.pb25 {
  padding-bottom: 25px !important; }

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

.mr30 {
  margin-right: 30px !important; }

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

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

.pl30 {
  padding-left: 30px !important; }

.pr30 {
  padding-right: 30px !important; }

.pt30 {
  padding-top: 30px !important; }

.pb30 {
  padding-bottom: 30px !important; }

.ml35 {
  margin-left: 35px !important; }

.mr35 {
  margin-right: 35px !important; }

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

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

.pl35 {
  padding-left: 35px !important; }

.pr35 {
  padding-right: 35px !important; }

.pt35 {
  padding-top: 35px !important; }

.pb35 {
  padding-bottom: 35px !important; }

.ml40 {
  margin-left: 40px !important; }

.mr40 {
  margin-right: 40px !important; }

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

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

.pl40 {
  padding-left: 40px !important; }

.pr40 {
  padding-right: 40px !important; }

.pt40 {
  padding-top: 40px !important; }

.pb40 {
  padding-bottom: 40px !important; }

.ml45 {
  margin-left: 45px !important; }

.mr45 {
  margin-right: 45px !important; }

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

.mb45 {
  margin-bottom: 45px !important; }

.pl45 {
  padding-left: 45px !important; }

.pr45 {
  padding-right: 45px !important; }

.pt45 {
  padding-top: 45px !important; }

.pb45 {
  padding-bottom: 45px !important; }

.ml50 {
  margin-left: 50px !important; }

.mr50 {
  margin-right: 50px !important; }

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

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

.pl50 {
  padding-left: 50px !important; }

.pr50 {
  padding-right: 50px !important; }

.pt50 {
  padding-top: 50px !important; }

.pb50 {
  padding-bottom: 50px !important; }

.mt75 {
  margin-top: 75px !important; }

body {
  font-family: 'Zen Old Mincho', serif;
  font-weight: 400; }

.grecaptcha-badge {
  visibility: hidden;
  display: none;
  z-index: -1; }

@media print, screen and (min-width: 768px) {
  body {
    position: relative;
    z-index: 1; }

  .sp {
    display: none !important; }

  /* CSS Document */
  #main_menu {
    padding: 26px 0;
    color: #fff;
    display: block;
    max-width: 1000px;
    margin: 0 auto;
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    z-index: 99; }
    #main_menu ul {
      list-style: none;
      margin: 0;
      padding: 0;
      display: flex;
      justify-content: flex-end;
      align-items: center;
      gap: 48px;
      margin-left: auto;
      margin-right: 0; }
    #main_menu li {
      flex: 0 0 auto;
      text-align: center;
      min-width: auto;
      position: relative; }
      #main_menu li::before {
        content: "";
        display: block;
        height: 2px;
        background: #461522;
        position: absolute;
        top: -20px;
        left: 15px;
        transition: all 0.3s;
        width: 0; }
      #main_menu li:hover::before {
        width: calc(100% - 30px); }
    #main_menu a {
      color: inherit;
      text-decoration: none;
      display: inline-block;
      padding: 0 8px; }
    #main_menu .en {
      display: block;
      font-family: "Didot", serif;
      font-size: 16px;
      line-height: 1;
      text-transform: uppercase;
      font-weight: 400;
      margin-bottom: 8px;
      color: #461522; }
    #main_menu .jp {
      display: block;
      font-size: 12px;
      color: #461522;
      letter-spacing: .4px; }
    #top #main_menu .en {
      color: rgba(255, 255, 255, 0.95); }
    #top #main_menu .jp {
      color: rgba(255, 255, 255, 0.85); }
    #top #main_menu li::before {
      content: "";
      background: rgba(255, 255, 255, 0.7); } }
  @media print and (max-width: 768px), screen and (min-width: 768px) and (max-width: 768px) {
    #main_menu {
      padding: 32px 0; }
      #main_menu ul {
        flex-direction: column;
        gap: 18px; }
      #main_menu .en {
        font-size: 28px;
        letter-spacing: 3px; }
      #main_menu .jp {
        font-size: 12px; }
      #main_menu::before {
        display: none; } }

@media print, screen and (min-width: 768px) {
  /* CSS Document */
  #footer {
    background: linear-gradient(90deg, #111111 46.63%, #461522 100%); }
    #footer #footer_inner {
      width: 1004px;
      margin: 50px auto 0;
      padding-top: 293px;
      padding-bottom: 29px;
      color: #fff;
      text-align: center;
      background-repeat: no-repeat;
      background-position: left center;
      background-size: auto 100%;
      background-image: url(../img/footer_img.png); }

  /* CSS Document */
  .notice_board {
    margin: 40px auto;
    width: 764px; }
    .notice_board .notice_list {
      list-style: none;
      margin: 0;
      padding: 0;
      /* 小さいデバイスではサムネを縮めて横並びを維持 */
      /* スマホではサムネをやや小さくして読みやすく */ }
      .notice_board .notice_list_item {
        border-bottom: 1px solid #eee; }
        .notice_board .notice_list_item a {
          display: flex;
          align-items: stretch;
          /* 親を stretch にして左右を同じ高さにする */
          gap: 27px;
          padding: 24px 0;
          border-top: 1px solid #eee;
          text-decoration: none; }
          .notice_board .notice_list_item a:first-child {
            border-top: none; }
          .notice_board .notice_list_item a .notice_thumb {
            flex: 0 0 140px;
            /* サムネ幅 */
            height: 100px;
            background: #e6e6e6;
            box-sizing: border-box;
            overflow: hidden;
            border-radius: 2px;
            /* フォーカスやホバーでアクセント表示 */ }
            .notice_board .notice_list_item a .notice_thumb img {
              display: block;
              width: 100%;
              height: 100%;
              object-fit: cover; }
            .notice_board .notice_list_item a .notice_thumb:hover, .notice_board .notice_list_item a .notice_thumb:focus {
              outline: 3px solid #4a90e2;
              outline-offset: 0; }
          .notice_board .notice_list_item a .notice_body {
            flex: 1;
            display: flex;
            color: #333;
            flex-direction: column;
            /* 縦並びにして下部にメタを固定 */
            justify-content: space-between;
            /* 上に本文、下にメタが来る */ }
            .notice_board .notice_list_item a .notice_body .notice_text {
              font-size: 16px;
              line-height: 1.9;
              color: #333;
              margin: 0 0 12px 0; }
            .notice_board .notice_list_item a .notice_body .notice_meta {
              color: #bdbdbd;
              font-size: 13px;
              display: flex;
              gap: 12px;
              align-items: center; } }
    @media print and (max-width: 768px), screen and (min-width: 768px) and (max-width: 768px) {
      .notice_board .notice_list_item a {
        gap: 16px;
        padding: 18px 0; }
        .notice_board .notice_list_item a .notice_thumb {
          flex: 0 0 110px;
          height: 80px; }
        .notice_board .notice_list_item a .notice_body .notice_text {
          font-size: 15px; } }
    @media print and (max-width: 480px), screen and (min-width: 768px) and (max-width: 480px) {
      .notice_board .notice_list_item a {
        gap: 12px;
        padding: 14px 0; }
        .notice_board .notice_list_item a .notice_thumb {
          flex: 0 0 88px;
          height: 66px; }
        .notice_board .notice_list_item a .notice_body .notice_text {
          font-size: 14px; } }
@media print, screen and (min-width: 768px) {
    .notice_board .notice_board_more {
      text-align: right;
      margin-top: 27px; }
      .notice_board .notice_board_more a {
        font-family: "Didot", serif;
        font-size: 18px;
        color: #5A1F30;
        text-decoration: none;
        position: relative;
        display: inline-block;
        line-height: 1; }
        .notice_board .notice_board_more a:before {
          display: block;
          content: "";
          position: absolute;
          top: calc(50% + 1px);
          left: -28px;
          width: 18px;
          height: 1px;
          background: #5A1F30;
          transition: all 0.3s; }
        .notice_board .notice_board_more a:hover:before {
          left: -22px; }

  .more {
    margin-top: 20px;
    margin-left: 30px;
    text-align: right; }
    .more a {
      font-family: "Didot", serif;
      font-size: 18px;
      color: #461522;
      font-weight: 300;
      text-decoration: none;
      position: relative;
      display: inline-block;
      line-height: 1; }
      .more a:before {
        display: block;
        content: "";
        position: absolute;
        top: calc(50% + 1px);
        left: -28px;
        width: 18px;
        height: 1px;
        background: #461522;
        transition: all 0.3s; }
      .more a:hover:before {
        left: -22px; }

  .entry_content {
    width: 1004px;
    margin: 0 auto; }

  .page_title {
    text-align: center;
    margin-bottom: 50px;
    color: #5A1F30;
    font-size: 36px;
    font-weight: 300; }

  .entry_header {
    padding-top: 100px; }

  #top_page #top_main {
    display: block;
    background-size: cover;
    background-position: center center;
    height: 100vh;
    background-image: url(../img/main_img01.png);
    position: relative; }
  #top_page #top_main_ttl {
    font-size: 125px;
    color: #fff;
    position: absolute;
    left: -1.3em;
    top: 30%;
    text-align: right;
    margin-left: 50%; }
    #top_page #top_main_ttl a {
      text-decoration: none; }
      #top_page #top_main_ttl a h1 {
        color: #fff;
        font-family: "Didot", serif;
        font-weight: 300; }
    #top_page #top_main_ttl .jp {
      display: none; }
  #top_page #top_profile {
    width: 1004px;
    margin: 0 auto;
    background-image: url(../img/profile_bg01.png);
    background-size: cover;
    background-position: center center;
    height: 420px;
    position: relative; }
    #top_page #top_profile h2 {
      position: absolute;
      left: -0.16em;
      top: 0;
      font-size: 91px;
      letter-spacing: 0;
      color: rgba(255, 255, 255, 0.1);
      font-family: "Didot", serif;
      writing-mode: vertical-rl;
      line-height: 1; }
    #top_page #top_profile #top_profile_box01 {
      position: absolute;
      left: 119px;
      top: 223px; }
    #top_page #top_profile #top_profile_ttl01 {
      font-size: 34px;
      color: rgba(255, 255, 255, 0.8);
      font-weight: 300; }
    #top_page #top_profile #top_profile_txt01 {
      margin-top: 15px;
      font-size: 18px;
      line-height: 1.4;
      color: rgba(255, 255, 255, 0.7);
      font-weight: 300; }
    #top_page #top_profile .profile_more {
      margin-top: 20px;
      margin-left: 30px; }
      #top_page #top_profile .profile_more a {
        font-size: 18px;
        color: rgba(255, 255, 255, 0.7);
        font-weight: 300;
        font-family: "Didot", serif;
        text-decoration: none;
        position: relative;
        display: inline-block;
        line-height: 1; }
        #top_page #top_profile .profile_more a:before {
          display: block;
          content: "";
          position: absolute;
          top: calc(50% + 1px);
          left: -28px;
          width: 18px;
          height: 1px;
          background: rgba(255, 255, 255, 0.7);
          transition: all 0.3s; }
        #top_page #top_profile .profile_more a:hover:before {
          left: -22px; }
  #top_page #top_lesson {
    background-position: left center;
    background-repeat: no-repeat;
    background-size: auto 100%;
    background-image: url(../img/lesson_bg.jpg); }
    #top_page #top_lesson .top_lesson_img01 img {
      max-width: 100%; }
    #top_page #top_lesson .top_lesson_inner {
      width: 1004px;
      margin: 0 auto;
      padding: 60px 0; }
    #top_page #top_lesson .top_lesson_htxt01_outer {
      margin-top: 100px; }
      #top_page #top_lesson .top_lesson_htxt01_outer .top_lesson_htxt01 {
        font-size: 90px;
        font-family: "Didot", serif;
        color: #461522;
        font-weight: 300; }
      #top_page #top_lesson .top_lesson_htxt01_outer .top_lesson_htxt02 {
        font-size: 34px;
        color: #461522;
        font-weight: 300; }
    #top_page #top_lesson .top_lesson_txt01 {
      margin-top: 20px;
      font-size: 20px;
      line-height: 1.4;
      color: #333333; }
    #top_page #top_lesson .contact_btn01 {
      margin-top: 40px;
      text-align: center; }
      #top_page #top_lesson .contact_btn01 a {
        display: inline-block;
        padding: 20px 60px;
        background: linear-gradient(180deg, #683141 0%, #461522 100%);
        color: #fff;
        text-decoration: none;
        font-size: 24px; }

  .pc_pt0, .pc_pv0,
  .pc_pa0 {
    padding-top: 0px !important; }

  .pc_pr0, .pc_ph0,
  .pc_pa0 {
    padding-right: 0px !important; }

  .pc_pb0, .pc_pv0,
  .pc_pa0 {
    padding-bottom: 0px !important; }

  .pc_pl0, .pc_ph0,
  .pc_pa0 {
    padding-left: 0px !important; }

  .pc_mt0, .pc_mv0,
  .pc_ma0 {
    margin-top: 0px !important; }

  .pc_mr0, .pc_mh0,
  .pc_ma0 {
    margin-right: 0px !important; }

  .pc_mb0, .pc_mv0,
  .pc_ma0 {
    margin-bottom: 0px !important; }

  .pc_ml0, .pc_mh0,
  .pc_ma0 {
    margin-left: 0px !important; }

  .pc_pt5, .pc_pv5,
  .pc_pa5 {
    padding-top: 5px !important; }

  .pc_pr5, .pc_ph5,
  .pc_pa5 {
    padding-right: 5px !important; }

  .pc_pb5, .pc_pv5,
  .pc_pa5 {
    padding-bottom: 5px !important; }

  .pc_pl5, .pc_ph5,
  .pc_pa5 {
    padding-left: 5px !important; }

  .pc_mt5, .pc_mv5,
  .pc_ma5 {
    margin-top: 5px !important; }

  .pc_mr5, .pc_mh5,
  .pc_ma5 {
    margin-right: 5px !important; }

  .pc_mb5, .pc_mv5,
  .pc_ma5 {
    margin-bottom: 5px !important; }

  .pc_ml5, .pc_mh5,
  .pc_ma5 {
    margin-left: 5px !important; }

  .pc_pt10, .pc_pv10,
  .pc_pa10 {
    padding-top: 10px !important; }

  .pc_pr10, .pc_ph10,
  .pc_pa10 {
    padding-right: 10px !important; }

  .pc_pb10, .pc_pv10,
  .pc_pa10 {
    padding-bottom: 10px !important; }

  .pc_pl10, .pc_ph10,
  .pc_pa10 {
    padding-left: 10px !important; }

  .pc_mt10, .pc_mv10,
  .pc_ma10 {
    margin-top: 10px !important; }

  .pc_mr10, .pc_mh10,
  .pc_ma10 {
    margin-right: 10px !important; }

  .pc_mb10, .pc_mv10,
  .pc_ma10 {
    margin-bottom: 10px !important; }

  .pc_ml10, .pc_mh10,
  .pc_ma10 {
    margin-left: 10px !important; }

  .pc_pt15, .pc_pv15,
  .pc_pa15 {
    padding-top: 15px !important; }

  .pc_pr15, .pc_ph15,
  .pc_pa15 {
    padding-right: 15px !important; }

  .pc_pb15, .pc_pv15,
  .pc_pa15 {
    padding-bottom: 15px !important; }

  .pc_pl15, .pc_ph15,
  .pc_pa15 {
    padding-left: 15px !important; }

  .pc_mt15, .pc_mv15,
  .pc_ma15 {
    margin-top: 15px !important; }

  .pc_mr15, .pc_mh15,
  .pc_ma15 {
    margin-right: 15px !important; }

  .pc_mb15, .pc_mv15,
  .pc_ma15 {
    margin-bottom: 15px !important; }

  .pc_ml15, .pc_mh15,
  .pc_ma15 {
    margin-left: 15px !important; }

  .pc_pt20, .pc_pv20,
  .pc_pa20 {
    padding-top: 20px !important; }

  .pc_pr20, .pc_ph20,
  .pc_pa20 {
    padding-right: 20px !important; }

  .pc_pb20, .pc_pv20,
  .pc_pa20 {
    padding-bottom: 20px !important; }

  .pc_pl20, .pc_ph20,
  .pc_pa20 {
    padding-left: 20px !important; }

  .pc_mt20, .pc_mv20,
  .pc_ma20 {
    margin-top: 20px !important; }

  .pc_mr20, .pc_mh20,
  .pc_ma20 {
    margin-right: 20px !important; }

  .pc_mb20, .pc_mv20,
  .pc_ma20 {
    margin-bottom: 20px !important; }

  .pc_ml20, .pc_mh20,
  .pc_ma20 {
    margin-left: 20px !important; }

  .pc_pt25, .pc_pv25,
  .pc_pa25 {
    padding-top: 25px !important; }

  .pc_pr25, .pc_ph25,
  .pc_pa25 {
    padding-right: 25px !important; }

  .pc_pb25, .pc_pv25,
  .pc_pa25 {
    padding-bottom: 25px !important; }

  .pc_pl25, .pc_ph25,
  .pc_pa25 {
    padding-left: 25px !important; }

  .pc_mt25, .pc_mv25,
  .pc_ma25 {
    margin-top: 25px !important; }

  .pc_mr25, .pc_mh25,
  .pc_ma25 {
    margin-right: 25px !important; }

  .pc_mb25, .pc_mv25,
  .pc_ma25 {
    margin-bottom: 25px !important; }

  .pc_ml25, .pc_mh25,
  .pc_ma25 {
    margin-left: 25px !important; }

  .pc_pt30, .pc_pv30,
  .pc_pa30 {
    padding-top: 30px !important; }

  .pc_pr30, .pc_ph30,
  .pc_pa30 {
    padding-right: 30px !important; }

  .pc_pb30, .pc_pv30,
  .pc_pa30 {
    padding-bottom: 30px !important; }

  .pc_pl30, .pc_ph30,
  .pc_pa30 {
    padding-left: 30px !important; }

  .pc_mt30, .pc_mv30,
  .pc_ma30 {
    margin-top: 30px !important; }

  .pc_mr30, .pc_mh30,
  .pc_ma30 {
    margin-right: 30px !important; }

  .pc_mb30, .pc_mv30,
  .pc_ma30 {
    margin-bottom: 30px !important; }

  .pc_ml30, .pc_mh30,
  .pc_ma30 {
    margin-left: 30px !important; }

  .pc_pt35, .pc_pv35,
  .pc_pa35 {
    padding-top: 35px !important; }

  .pc_pr35, .pc_ph35,
  .pc_pa35 {
    padding-right: 35px !important; }

  .pc_pb35, .pc_pv35,
  .pc_pa35 {
    padding-bottom: 35px !important; }

  .pc_pl35, .pc_ph35,
  .pc_pa35 {
    padding-left: 35px !important; }

  .pc_mt35, .pc_mv35,
  .pc_ma35 {
    margin-top: 35px !important; }

  .pc_mr35, .pc_mh35,
  .pc_ma35 {
    margin-right: 35px !important; }

  .pc_mb35, .pc_mv35,
  .pc_ma35 {
    margin-bottom: 35px !important; }

  .pc_ml35, .pc_mh35,
  .pc_ma35 {
    margin-left: 35px !important; }

  .pc_pt40, .pc_pv40,
  .pc_pa40 {
    padding-top: 40px !important; }

  .pc_pr40, .pc_ph40,
  .pc_pa40 {
    padding-right: 40px !important; }

  .pc_pb40, .pc_pv40,
  .pc_pa40 {
    padding-bottom: 40px !important; }

  .pc_pl40, .pc_ph40,
  .pc_pa40 {
    padding-left: 40px !important; }

  .pc_mt40, .pc_mv40,
  .pc_ma40 {
    margin-top: 40px !important; }

  .pc_mr40, .pc_mh40,
  .pc_ma40 {
    margin-right: 40px !important; }

  .pc_mb40, .pc_mv40,
  .pc_ma40 {
    margin-bottom: 40px !important; }

  .pc_ml40, .pc_mh40,
  .pc_ma40 {
    margin-left: 40px !important; }

  .pc_pt45, .pc_pv45,
  .pc_pa45 {
    padding-top: 45px !important; }

  .pc_pr45, .pc_ph45,
  .pc_pa45 {
    padding-right: 45px !important; }

  .pc_pb45, .pc_pv45,
  .pc_pa45 {
    padding-bottom: 45px !important; }

  .pc_pl45, .pc_ph45,
  .pc_pa45 {
    padding-left: 45px !important; }

  .pc_mt45, .pc_mv45,
  .pc_ma45 {
    margin-top: 45px !important; }

  .pc_mr45, .pc_mh45,
  .pc_ma45 {
    margin-right: 45px !important; }

  .pc_mb45, .pc_mv45,
  .pc_ma45 {
    margin-bottom: 45px !important; }

  .pc_ml45, .pc_mh45,
  .pc_ma45 {
    margin-left: 45px !important; }

  .pc_pt50, .pc_pv50,
  .pc_pa50 {
    padding-top: 50px !important; }

  .pc_pr50, .pc_ph50,
  .pc_pa50 {
    padding-right: 50px !important; }

  .pc_pb50, .pc_pv50,
  .pc_pa50 {
    padding-bottom: 50px !important; }

  .pc_pl50, .pc_ph50,
  .pc_pa50 {
    padding-left: 50px !important; }

  .pc_mt50, .pc_mv50,
  .pc_ma50 {
    margin-top: 50px !important; }

  .pc_mr50, .pc_mh50,
  .pc_ma50 {
    margin-right: 50px !important; }

  .pc_mb50, .pc_mv50,
  .pc_ma50 {
    margin-bottom: 50px !important; }

  .pc_ml50, .pc_mh50,
  .pc_ma50 {
    margin-left: 50px !important; }

  .pc_pt55, .pc_pv55,
  .pc_pa55 {
    padding-top: 55px !important; }

  .pc_pr55, .pc_ph55,
  .pc_pa55 {
    padding-right: 55px !important; }

  .pc_pb55, .pc_pv55,
  .pc_pa55 {
    padding-bottom: 55px !important; }

  .pc_pl55, .pc_ph55,
  .pc_pa55 {
    padding-left: 55px !important; }

  .pc_mt55, .pc_mv55,
  .pc_ma55 {
    margin-top: 55px !important; }

  .pc_mr55, .pc_mh55,
  .pc_ma55 {
    margin-right: 55px !important; }

  .pc_mb55, .pc_mv55,
  .pc_ma55 {
    margin-bottom: 55px !important; }

  .pc_ml55, .pc_mh55,
  .pc_ma55 {
    margin-left: 55px !important; }

  .pc_pt60, .pc_pv60,
  .pc_pa60 {
    padding-top: 60px !important; }

  .pc_pr60, .pc_ph60,
  .pc_pa60 {
    padding-right: 60px !important; }

  .pc_pb60, .pc_pv60,
  .pc_pa60 {
    padding-bottom: 60px !important; }

  .pc_pl60, .pc_ph60,
  .pc_pa60 {
    padding-left: 60px !important; }

  .pc_mt60, .pc_mv60,
  .pc_ma60 {
    margin-top: 60px !important; }

  .pc_mr60, .pc_mh60,
  .pc_ma60 {
    margin-right: 60px !important; }

  .pc_mb60, .pc_mv60,
  .pc_ma60 {
    margin-bottom: 60px !important; }

  .pc_ml60, .pc_mh60,
  .pc_ma60 {
    margin-left: 60px !important; }

  .pc_pt75, .pc_pv75,
  .pc_pa75 {
    padding-top: 75px !important; }

  .pc_pr75, .pc_ph75,
  .pc_pa75 {
    padding-right: 75px !important; }

  .pc_pb75, .pc_pv75,
  .pc_pa75 {
    padding-bottom: 75px !important; }

  .pc_pl75, .pc_ph75,
  .pc_pa75 {
    padding-left: 75px !important; }

  .pc_mt75, .pc_mv75,
  .pc_ma75 {
    margin-top: 75px !important; }

  .pc_mr75, .pc_mh75,
  .pc_ma75 {
    margin-right: 75px !important; }

  .pc_mb75, .pc_mv75,
  .pc_ma75 {
    margin-bottom: 75px !important; }

  .pc_ml75, .pc_mh75,
  .pc_ma75 {
    margin-left: 75px !important; }

  .pc_pt80, .pc_pv80,
  .pc_pa80 {
    padding-top: 80px !important; }

  .pc_pr80, .pc_ph80,
  .pc_pa80 {
    padding-right: 80px !important; }

  .pc_pb80, .pc_pv80,
  .pc_pa80 {
    padding-bottom: 80px !important; }

  .pc_pl80, .pc_ph80,
  .pc_pa80 {
    padding-left: 80px !important; }

  .pc_mt80, .pc_mv80,
  .pc_ma80 {
    margin-top: 80px !important; }

  .pc_mr80, .pc_mh80,
  .pc_ma80 {
    margin-right: 80px !important; }

  .pc_mb80, .pc_mv80,
  .pc_ma80 {
    margin-bottom: 80px !important; }

  .pc_ml80, .pc_mh80,
  .pc_ma80 {
    margin-left: 80px !important; }

  .pc_pt95, .pc_pv95,
  .pc_pa95 {
    padding-top: 95px !important; }

  .pc_pr95, .pc_ph95,
  .pc_pa95 {
    padding-right: 95px !important; }

  .pc_pb95, .pc_pv95,
  .pc_pa95 {
    padding-bottom: 95px !important; }

  .pc_pl95, .pc_ph95,
  .pc_pa95 {
    padding-left: 95px !important; }

  .pc_mt95, .pc_mv95,
  .pc_ma95 {
    margin-top: 95px !important; }

  .pc_mr95, .pc_mh95,
  .pc_ma95 {
    margin-right: 95px !important; }

  .pc_mb95, .pc_mv95,
  .pc_ma95 {
    margin-bottom: 95px !important; }

  .pc_ml95, .pc_mh95,
  .pc_ma95 {
    margin-left: 95px !important; }

  .pc_pt100, .pc_pv100,
  .pc_pa100 {
    padding-top: 100px !important; }

  .pc_pr100, .pc_ph100,
  .pc_pa100 {
    padding-right: 100px !important; }

  .pc_pb100, .pc_pv100,
  .pc_pa100 {
    padding-bottom: 100px !important; }

  .pc_pl100, .pc_ph100,
  .pc_pa100 {
    padding-left: 100px !important; }

  .pc_mt100, .pc_mv100,
  .pc_ma100 {
    margin-top: 100px !important; }

  .pc_mr100, .pc_mh100,
  .pc_ma100 {
    margin-right: 100px !important; }

  .pc_mb100, .pc_mv100,
  .pc_ma100 {
    margin-bottom: 100px !important; }

  .pc_ml100, .pc_mh100,
  .pc_ma100 {
    margin-left: 100px !important; } }
@media screen and (max-width: 767px) {
  body {
    position: relative;
    z-index: 2; }

  .pc {
    display: none !important; }

  /* CSS Document */
  #hamburger_menu {
    display: block;
    z-index: 100;
    position: fixed;
    top: 20px;
    right: 20px;
    width: 32px;
    height: 32px;
    cursor: pointer; }
    #hamburger_menu span {
      display: block;
      width: 32px;
      height: 2px;
      background: #fff;
      margin-bottom: 8px;
      transition: 0.4s; }

  #main_menu {
    padding: 26px 0;
    color: #fff;
    max-width: 1000px;
    margin: 0 auto;
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    background: #111111;
    z-index: 99; }
    #main_menu ul {
      list-style: none;
      margin: 0;
      padding: 0;
      display: flex;
      justify-content: flex-end;
      align-items: center;
      gap: 48px;
      margin-left: auto;
      margin-right: 0; }
    #main_menu li {
      flex: 0 0 auto;
      text-align: center;
      min-width: auto;
      position: relative; }
      #main_menu li::before {
        content: "";
        display: block;
        height: 2px;
        background: rgba(255, 255, 255, 0.7);
        position: absolute;
        top: -20px;
        left: 15px;
        transition: all 0.3s;
        width: 0; }
    #main_menu a {
      color: inherit;
      text-decoration: none;
      display: inline-block;
      padding: 0 8px; }
    #main_menu .en {
      display: block;
      font-family: "Didot", serif;
      font-size: 16px;
      line-height: 1;
      text-transform: uppercase;
      font-weight: 400;
      margin-bottom: 8px;
      color: rgba(255, 255, 255, 0.95); }
    #main_menu .jp {
      display: block;
      font-size: 12px;
      color: rgba(255, 255, 255, 0.85);
      letter-spacing: .4px; } }
  @media screen and (max-width: 767px) and (max-width: 768px) {
    #main_menu {
      padding: 32px 0; }
      #main_menu ul {
        flex-direction: column;
        gap: 18px; }
      #main_menu .en {
        font-size: 28px;
        letter-spacing: 3px; }
      #main_menu .jp {
        font-size: 12px; }
      #main_menu::before {
        display: none; } }

@media screen and (max-width: 767px) {
  /* CSS Document */
  #footer {
    background: linear-gradient(90deg, #111111 46.63%, #461522 100%); }
    #footer #footer_inner {
      padding-top: 293px;
      padding-bottom: 29px;
      color: #fff;
      text-align: center;
      background-repeat: no-repeat;
      background-position: left center;
      background-size: auto 100%;
      background-image: url(../img/footer_img.png); }

  /* CSS Document */
  .notice_board {
    margin: 60px auto;
    padding: 0 20px; }
    .notice_board .notice_list {
      list-style: none;
      margin: 0;
      padding: 0;
      /* 小さいデバイスではサムネを縮めて横並びを維持 */
      /* スマホではサムネをやや小さくして読みやすく */ }
      .notice_board .notice_list_item {
        border-bottom: 1px solid #eee; }
        .notice_board .notice_list_item a {
          display: flex;
          align-items: stretch;
          /* 親を stretch にして左右を同じ高さにする */
          gap: 10px;
          padding: 24px 0;
          border-top: 1px solid #eee;
          text-decoration: none; }
          .notice_board .notice_list_item a:first-child {
            border-top: none; }
          .notice_board .notice_list_item a .notice_thumb {
            flex: 0 0 110px;
            /* サムネ幅 */
            width: 110px;
            background: #e6e6e6;
            box-sizing: border-box;
            overflow: hidden;
            border-radius: 2px;
            /* フォーカスやホバーでアクセント表示 */ }
            .notice_board .notice_list_item a .notice_thumb img {
              display: block;
              width: 100%;
              height: 100%;
              object-fit: cover; }
            .notice_board .notice_list_item a .notice_thumb:focus {
              outline: 3px solid #4a90e2;
              outline-offset: 0; }
          .notice_board .notice_list_item a .notice_body {
            flex: 1;
            display: flex;
            color: #333;
            flex-direction: column;
            /* 縦並びにして下部にメタを固定 */
            justify-content: space-between;
            /* 上に本文、下にメタが来る */ }
            .notice_board .notice_list_item a .notice_body .notice_text {
              font-size: 16px;
              line-height: 1.3;
              color: #333;
              margin: 0 0 12px 0; }
            .notice_board .notice_list_item a .notice_body .notice_meta {
              color: #bdbdbd;
              font-size: 12px;
              display: flex;
              gap: 12px;
              align-items: center; } }
    @media screen and (max-width: 767px) and (max-width: 768px) {
      .notice_board .notice_list_item a {
        gap: 16px;
        padding: 18px 0; }
        .notice_board .notice_list_item a .notice_thumb {
          flex: 0 0 110px;
          height: 80px; }
        .notice_board .notice_list_item a .notice_body .notice_text {
          font-size: 15px; } }
    @media screen and (max-width: 767px) and (max-width: 480px) {
      .notice_board .notice_list_item a {
        gap: 12px;
        padding: 14px 0; }
        .notice_board .notice_list_item a .notice_thumb {
          flex: 0 0 88px;
          height: 66px; }
        .notice_board .notice_list_item a .notice_body .notice_text {
          font-size: 14px; } }
@media screen and (max-width: 767px) {
    .notice_board .notice_board_more {
      text-align: right;
      margin-top: 27px; }
      .notice_board .notice_board_more a {
        font-family: "Didot", serif;
        font-size: 18px;
        color: #5A1F30;
        text-decoration: none;
        position: relative;
        display: inline-block;
        line-height: 1; }
        .notice_board .notice_board_more a:before {
          display: block;
          content: "";
          position: absolute;
          top: calc(50% + 1px);
          left: -28px;
          width: 18px;
          height: 1px;
          background: #5A1F30;
          transition: all 0.3s; }

  .more {
    margin-top: 20px;
    margin-left: 30px;
    text-align: right; }
    .more a {
      font-family: "Didot", serif;
      font-size: 18px;
      color: #461522;
      font-weight: 300;
      text-decoration: none;
      position: relative;
      display: inline-block;
      line-height: 1; }
      .more a:before {
        display: block;
        content: "";
        position: absolute;
        top: calc(50% + 1px);
        left: -28px;
        width: 18px;
        height: 1px;
        background: #461522;
        transition: all 0.3s; }

  #top_page #top_main {
    display: block;
    background-size: cover;
    background-position: 20% center;
    height: 100vh;
    background-image: url(../img/main_img01.png);
    text-align: center;
    position: relative; }
  #top_page #top_main_ttl {
    font-size: 21.8vw;
    color: #fff;
    position: absolute;
    left: 0;
    top: calc(50% - 20vw);
    text-align: right; }
    #top_page #top_main_ttl a {
      text-decoration: none; }
      #top_page #top_main_ttl a h1 {
        color: #fff;
        font-family: "Didot", serif;
        font-weight: 300; }
    #top_page #top_main_ttl .jp {
      display: none; }
  #top_page #top_profile {
    background-image: url(../img/profile_bg01_sp.png);
    background-size: cover;
    background-position: 20% top;
    height: 100vw;
    position: relative; }
    #top_page #top_profile h2 {
      position: absolute;
      left: -0.16em;
      top: 0;
      font-size: 91px;
      letter-spacing: 0;
      color: rgba(255, 255, 255, 0.1);
      font-family: "Didot", serif;
      writing-mode: vertical-rl;
      line-height: 1; }
    #top_page #top_profile #top_profile_box01 {
      position: absolute;
      left: 7vw;
      bottom: 11vw; }
    #top_page #top_profile #top_profile_ttl01 {
      font-size: 24px;
      color: rgba(255, 255, 255, 0.8);
      font-weight: 300; }
    #top_page #top_profile #top_profile_txt01 {
      margin-top: 15px;
      font-size: 16px;
      line-height: 1.4;
      color: rgba(255, 255, 255, 0.7);
      font-weight: 300; }
    #top_page #top_profile .profile_more {
      margin-top: 20px;
      margin-left: 30px;
      font-family: "Didot", serif; }
      #top_page #top_profile .profile_more a {
        font-size: 18px;
        color: rgba(255, 255, 255, 0.7);
        font-weight: 300;
        text-decoration: none;
        position: relative;
        display: inline-block;
        line-height: 1; }
        #top_page #top_profile .profile_more a:before {
          display: block;
          content: "";
          position: absolute;
          top: calc(50% + 1px);
          left: -28px;
          width: 18px;
          height: 1px;
          background: rgba(255, 255, 255, 0.7);
          transition: all 0.3s; }
  #top_page #top_lesson {
    background-position: left center;
    background-repeat: no-repeat;
    background-size: auto 100%;
    background-image: url(../img/lesson_bg.jpg); }
    #top_page #top_lesson .top_lesson_img01 img {
      max-width: 100%; }
    #top_page #top_lesson .top_lesson_inner {
      padding: 60px 0; }
    #top_page #top_lesson .top_lesson_htxt01_outer {
      margin-top: 45px;
      padding: 0 18px; }
      #top_page #top_lesson .top_lesson_htxt01_outer .top_lesson_htxt01 {
        font-size: 70px;
        font-family: "Didot", serif;
        color: #461522;
        font-weight: 300; }
      #top_page #top_lesson .top_lesson_htxt01_outer .top_lesson_htxt02 {
        font-size: 24px;
        color: #461522;
        font-weight: 300; }
    #top_page #top_lesson .top_lesson_txt01 {
      margin-top: 20px;
      font-size: 16px;
      line-height: 1.4;
      color: #333333;
      padding: 0 18px; }
    #top_page #top_lesson .contact_btn01 {
      margin-top: 40px;
      padding: 0 18px;
      text-align: center; }
      #top_page #top_lesson .contact_btn01 a {
        display: inline-block;
        padding: 10px 40px;
        background: linear-gradient(180deg, #683141 0%, #461522 100%);
        color: #fff;
        text-decoration: none;
        font-size: 16px; }

  .sp_pt0, .sp_pv0,
  .sp_pa0 {
    padding-top: 0px !important; }

  .sp_pr0, .sp_ph0,
  .sp_pa0 {
    padding-right: 0px !important; }

  .sp_pb0, .sp_pv0,
  .sp_pa0 {
    padding-bottom: 0px !important; }

  .sp_pl0, .sp_ph0,
  .sp_pa0 {
    padding-left: 0px !important; }

  .sp_mt0, .sp_mv0,
  .sp_ma0 {
    margin-top: 0px !important; }

  .sp_mr0, .sp_mh0,
  .sp_ma0 {
    margin-right: 0px !important; }

  .sp_mb0, .sp_mv0,
  .sp_ma0 {
    margin-bottom: 0px !important; }

  .sp_ml0, .sp_mh0,
  .sp_ma0 {
    margin-left: 0px !important; }

  .sp_pt5, .sp_pv5,
  .sp_pa5 {
    padding-top: 5px !important; }

  .sp_pr5, .sp_ph5,
  .sp_pa5 {
    padding-right: 5px !important; }

  .sp_pb5, .sp_pv5,
  .sp_pa5 {
    padding-bottom: 5px !important; }

  .sp_pl5, .sp_ph5,
  .sp_pa5 {
    padding-left: 5px !important; }

  .sp_mt5, .sp_mv5,
  .sp_ma5 {
    margin-top: 5px !important; }

  .sp_mr5, .sp_mh5,
  .sp_ma5 {
    margin-right: 5px !important; }

  .sp_mb5, .sp_mv5,
  .sp_ma5 {
    margin-bottom: 5px !important; }

  .sp_ml5, .sp_mh5,
  .sp_ma5 {
    margin-left: 5px !important; }

  .sp_pt10, .sp_pv10,
  .sp_pa10 {
    padding-top: 10px !important; }

  .sp_pr10, .sp_ph10,
  .sp_pa10 {
    padding-right: 10px !important; }

  .sp_pb10, .sp_pv10,
  .sp_pa10 {
    padding-bottom: 10px !important; }

  .sp_pl10, .sp_ph10,
  .sp_pa10 {
    padding-left: 10px !important; }

  .sp_mt10, .sp_mv10,
  .sp_ma10 {
    margin-top: 10px !important; }

  .sp_mr10, .sp_mh10,
  .sp_ma10 {
    margin-right: 10px !important; }

  .sp_mb10, .sp_mv10,
  .sp_ma10 {
    margin-bottom: 10px !important; }

  .sp_ml10, .sp_mh10,
  .sp_ma10 {
    margin-left: 10px !important; }

  .sp_pt15, .sp_pv15,
  .sp_pa15 {
    padding-top: 15px !important; }

  .sp_pr15, .sp_ph15,
  .sp_pa15 {
    padding-right: 15px !important; }

  .sp_pb15, .sp_pv15,
  .sp_pa15 {
    padding-bottom: 15px !important; }

  .sp_pl15, .sp_ph15,
  .sp_pa15 {
    padding-left: 15px !important; }

  .sp_mt15, .sp_mv15,
  .sp_ma15 {
    margin-top: 15px !important; }

  .sp_mr15, .sp_mh15,
  .sp_ma15 {
    margin-right: 15px !important; }

  .sp_mb15, .sp_mv15,
  .sp_ma15 {
    margin-bottom: 15px !important; }

  .sp_ml15, .sp_mh15,
  .sp_ma15 {
    margin-left: 15px !important; }

  .sp_pt20, .sp_pv20,
  .sp_pa20 {
    padding-top: 20px !important; }

  .sp_pr20, .sp_ph20,
  .sp_pa20 {
    padding-right: 20px !important; }

  .sp_pb20, .sp_pv20,
  .sp_pa20 {
    padding-bottom: 20px !important; }

  .sp_pl20, .sp_ph20,
  .sp_pa20 {
    padding-left: 20px !important; }

  .sp_mt20, .sp_mv20,
  .sp_ma20 {
    margin-top: 20px !important; }

  .sp_mr20, .sp_mh20,
  .sp_ma20 {
    margin-right: 20px !important; }

  .sp_mb20, .sp_mv20,
  .sp_ma20 {
    margin-bottom: 20px !important; }

  .sp_ml20, .sp_mh20,
  .sp_ma20 {
    margin-left: 20px !important; }

  .sp_pt25, .sp_pv25,
  .sp_pa25 {
    padding-top: 25px !important; }

  .sp_pr25, .sp_ph25,
  .sp_pa25 {
    padding-right: 25px !important; }

  .sp_pb25, .sp_pv25,
  .sp_pa25 {
    padding-bottom: 25px !important; }

  .sp_pl25, .sp_ph25,
  .sp_pa25 {
    padding-left: 25px !important; }

  .sp_mt25, .sp_mv25,
  .sp_ma25 {
    margin-top: 25px !important; }

  .sp_mr25, .sp_mh25,
  .sp_ma25 {
    margin-right: 25px !important; }

  .sp_mb25, .sp_mv25,
  .sp_ma25 {
    margin-bottom: 25px !important; }

  .sp_ml25, .sp_mh25,
  .sp_ma25 {
    margin-left: 25px !important; }

  .sp_pt30, .sp_pv30,
  .sp_pa30 {
    padding-top: 30px !important; }

  .sp_pr30, .sp_ph30,
  .sp_pa30 {
    padding-right: 30px !important; }

  .sp_pb30, .sp_pv30,
  .sp_pa30 {
    padding-bottom: 30px !important; }

  .sp_pl30, .sp_ph30,
  .sp_pa30 {
    padding-left: 30px !important; }

  .sp_mt30, .sp_mv30,
  .sp_ma30 {
    margin-top: 30px !important; }

  .sp_mr30, .sp_mh30,
  .sp_ma30 {
    margin-right: 30px !important; }

  .sp_mb30, .sp_mv30,
  .sp_ma30 {
    margin-bottom: 30px !important; }

  .sp_ml30, .sp_mh30,
  .sp_ma30 {
    margin-left: 30px !important; }

  .sp_pt35, .sp_pv35,
  .sp_pa35 {
    padding-top: 35px !important; }

  .sp_pr35, .sp_ph35,
  .sp_pa35 {
    padding-right: 35px !important; }

  .sp_pb35, .sp_pv35,
  .sp_pa35 {
    padding-bottom: 35px !important; }

  .sp_pl35, .sp_ph35,
  .sp_pa35 {
    padding-left: 35px !important; }

  .sp_mt35, .sp_mv35,
  .sp_ma35 {
    margin-top: 35px !important; }

  .sp_mr35, .sp_mh35,
  .sp_ma35 {
    margin-right: 35px !important; }

  .sp_mb35, .sp_mv35,
  .sp_ma35 {
    margin-bottom: 35px !important; }

  .sp_ml35, .sp_mh35,
  .sp_ma35 {
    margin-left: 35px !important; }

  .sp_pt40, .sp_pv40,
  .sp_pa40 {
    padding-top: 40px !important; }

  .sp_pr40, .sp_ph40,
  .sp_pa40 {
    padding-right: 40px !important; }

  .sp_pb40, .sp_pv40,
  .sp_pa40 {
    padding-bottom: 40px !important; }

  .sp_pl40, .sp_ph40,
  .sp_pa40 {
    padding-left: 40px !important; }

  .sp_mt40, .sp_mv40,
  .sp_ma40 {
    margin-top: 40px !important; }

  .sp_mr40, .sp_mh40,
  .sp_ma40 {
    margin-right: 40px !important; }

  .sp_mb40, .sp_mv40,
  .sp_ma40 {
    margin-bottom: 40px !important; }

  .sp_ml40, .sp_mh40,
  .sp_ma40 {
    margin-left: 40px !important; }

  .sp_pt45, .sp_pv45,
  .sp_pa45 {
    padding-top: 45px !important; }

  .sp_pr45, .sp_ph45,
  .sp_pa45 {
    padding-right: 45px !important; }

  .sp_pb45, .sp_pv45,
  .sp_pa45 {
    padding-bottom: 45px !important; }

  .sp_pl45, .sp_ph45,
  .sp_pa45 {
    padding-left: 45px !important; }

  .sp_mt45, .sp_mv45,
  .sp_ma45 {
    margin-top: 45px !important; }

  .sp_mr45, .sp_mh45,
  .sp_ma45 {
    margin-right: 45px !important; }

  .sp_mb45, .sp_mv45,
  .sp_ma45 {
    margin-bottom: 45px !important; }

  .sp_ml45, .sp_mh45,
  .sp_ma45 {
    margin-left: 45px !important; }

  .sp_pt50, .sp_pv50,
  .sp_pa50 {
    padding-top: 50px !important; }

  .sp_pr50, .sp_ph50,
  .sp_pa50 {
    padding-right: 50px !important; }

  .sp_pb50, .sp_pv50,
  .sp_pa50 {
    padding-bottom: 50px !important; }

  .sp_pl50, .sp_ph50,
  .sp_pa50 {
    padding-left: 50px !important; }

  .sp_mt50, .sp_mv50,
  .sp_ma50 {
    margin-top: 50px !important; }

  .sp_mr50, .sp_mh50,
  .sp_ma50 {
    margin-right: 50px !important; }

  .sp_mb50, .sp_mv50,
  .sp_ma50 {
    margin-bottom: 50px !important; }

  .sp_ml50, .sp_mh50,
  .sp_ma50 {
    margin-left: 50px !important; }

  .sp_pt55, .sp_pv55,
  .sp_pa55 {
    padding-top: 55px !important; }

  .sp_pr55, .sp_ph55,
  .sp_pa55 {
    padding-right: 55px !important; }

  .sp_pb55, .sp_pv55,
  .sp_pa55 {
    padding-bottom: 55px !important; }

  .sp_pl55, .sp_ph55,
  .sp_pa55 {
    padding-left: 55px !important; }

  .sp_mt55, .sp_mv55,
  .sp_ma55 {
    margin-top: 55px !important; }

  .sp_mr55, .sp_mh55,
  .sp_ma55 {
    margin-right: 55px !important; }

  .sp_mb55, .sp_mv55,
  .sp_ma55 {
    margin-bottom: 55px !important; }

  .sp_ml55, .sp_mh55,
  .sp_ma55 {
    margin-left: 55px !important; }

  .sp_pt60, .sp_pv60,
  .sp_pa60 {
    padding-top: 60px !important; }

  .sp_pr60, .sp_ph60,
  .sp_pa60 {
    padding-right: 60px !important; }

  .sp_pb60, .sp_pv60,
  .sp_pa60 {
    padding-bottom: 60px !important; }

  .sp_pl60, .sp_ph60,
  .sp_pa60 {
    padding-left: 60px !important; }

  .sp_mt60, .sp_mv60,
  .sp_ma60 {
    margin-top: 60px !important; }

  .sp_mr60, .sp_mh60,
  .sp_ma60 {
    margin-right: 60px !important; }

  .sp_mb60, .sp_mv60,
  .sp_ma60 {
    margin-bottom: 60px !important; }

  .sp_ml60, .sp_mh60,
  .sp_ma60 {
    margin-left: 60px !important; }

  .sp_pt75, .sp_pv75,
  .sp_pa75 {
    padding-top: 75px !important; }

  .sp_pr75, .sp_ph75,
  .sp_pa75 {
    padding-right: 75px !important; }

  .sp_pb75, .sp_pv75,
  .sp_pa75 {
    padding-bottom: 75px !important; }

  .sp_pl75, .sp_ph75,
  .sp_pa75 {
    padding-left: 75px !important; }

  .sp_mt75, .sp_mv75,
  .sp_ma75 {
    margin-top: 75px !important; }

  .sp_mr75, .sp_mh75,
  .sp_ma75 {
    margin-right: 75px !important; }

  .sp_mb75, .sp_mv75,
  .sp_ma75 {
    margin-bottom: 75px !important; }

  .sp_ml75, .sp_mh75,
  .sp_ma75 {
    margin-left: 75px !important; }

  .sp_pt80, .sp_pv80,
  .sp_pa80 {
    padding-top: 80px !important; }

  .sp_pr80, .sp_ph80,
  .sp_pa80 {
    padding-right: 80px !important; }

  .sp_pb80, .sp_pv80,
  .sp_pa80 {
    padding-bottom: 80px !important; }

  .sp_pl80, .sp_ph80,
  .sp_pa80 {
    padding-left: 80px !important; }

  .sp_mt80, .sp_mv80,
  .sp_ma80 {
    margin-top: 80px !important; }

  .sp_mr80, .sp_mh80,
  .sp_ma80 {
    margin-right: 80px !important; }

  .sp_mb80, .sp_mv80,
  .sp_ma80 {
    margin-bottom: 80px !important; }

  .sp_ml80, .sp_mh80,
  .sp_ma80 {
    margin-left: 80px !important; }

  .sp_pt95, .sp_pv95,
  .sp_pa95 {
    padding-top: 95px !important; }

  .sp_pr95, .sp_ph95,
  .sp_pa95 {
    padding-right: 95px !important; }

  .sp_pb95, .sp_pv95,
  .sp_pa95 {
    padding-bottom: 95px !important; }

  .sp_pl95, .sp_ph95,
  .sp_pa95 {
    padding-left: 95px !important; }

  .sp_mt95, .sp_mv95,
  .sp_ma95 {
    margin-top: 95px !important; }

  .sp_mr95, .sp_mh95,
  .sp_ma95 {
    margin-right: 95px !important; }

  .sp_mb95, .sp_mv95,
  .sp_ma95 {
    margin-bottom: 95px !important; }

  .sp_ml95, .sp_mh95,
  .sp_ma95 {
    margin-left: 95px !important; }

  .sp_pt100, .sp_pv100,
  .sp_pa100 {
    padding-top: 100px !important; }

  .sp_pr100, .sp_ph100,
  .sp_pa100 {
    padding-right: 100px !important; }

  .sp_pb100, .sp_pv100,
  .sp_pa100 {
    padding-bottom: 100px !important; }

  .sp_pl100, .sp_ph100,
  .sp_pa100 {
    padding-left: 100px !important; }

  .sp_mt100, .sp_mv100,
  .sp_ma100 {
    margin-top: 100px !important; }

  .sp_mr100, .sp_mh100,
  .sp_ma100 {
    margin-right: 100px !important; }

  .sp_mb100, .sp_mv100,
  .sp_ma100 {
    margin-bottom: 100px !important; }

  .sp_ml100, .sp_mh100,
  .sp_ma100 {
    margin-left: 100px !important; } }

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