@charset "UTF-8";
/* CSS Document */
@media screen and (max-width: 640px) {
  html {
    font-size: 62.5%; }

  body {
    font-size: 14px;
    min-width: 100%; }

  /*   ---  display ---   */
  .pc_display {
    display: none; }

  .sp_display {
    display: inherit; }

  /* 共通設定 */
  /* -------------------------------------------------- */
  img {
    max-width: 100%; }

  .img_100 {
    width: 100%;
    height: auto;
    margin: 0 0 10px 0; }

  .img_100 img {
    width: 100%;
    height: auto; }

  .img_100_pre {
    width: 80%;
    height: auto;
    margin: 0 auto 10px auto; }

  .img_96_pre {
    width: 96%;
    height: auto;
    margin: 0 auto 10px auto; }

  .img_100_pre img {
    width: 100%;
    height: auto; }

  p {
    margin: 0 4% 5px 4%; }

  .sp_text {
    margin: 0 4% 5px 4%; }

  .mrg_b20 {
    margin-bottom: 5px; }

  .wh_50 {
    width: 100%;
    height: auto;
    margin: 0 auto;
    padding: 0; }

  .wh_70_c {
    width: 96%;
    height: auto;
    margin: 0 auto 20px auto;
    padding: 0; }

  .col_table {
    width: 96%;
    height: auto;
    margin: 0 2% 30px 2%;
    padding: 0;
    font-size: 1.2rem; }

  .col_table th {
    background-color: #a59253;
    color: #ffffff;
    padding: 5px;
    border-collapse: 0 0 5px 0;
    box-sizing: border-box;
    white-space: nowrap; }

  .col_table td {
    padding: 5px;
    border-bottom: solid 1px  #a59253;
    box-sizing: border-box;
    border-collapse: 0 0 5px 0; }

  .flex_box {
    display: block; }

  /*----------------------------------------------header*/
  .header {
    width: 100%;
    height: auto;
    margin: 0 auto;
    padding: 10px 0 0 0; }

  .header h1 {
    font-size: 0.6rem;
    line-height: 0.6rem;
    margin: 7px 0 0 55px; }

  .header .header_logo {
    width: 80%;
    display: block;
    position: relative;
    z-index: 1;
    padding: 0; }

  .header .header_logo img {
    width: 100%;
    height: auto; }

  .header .header_right {
    width: 96%;
    height: auto;
    float: left;
    margin: 10px 2% 0 2%; }

  #link_bana {
    width: 10%;
    height: auto;
    right: 0;
    bottom: 10%;
    position: fixed;
    margin: 0;
    padding: 0;
    z-index: 10; }

  /*----------------------------------------------footer*/
  #footer {
    clear: both;
    width: 100%;
    height: auto;
    padding: 10px 0 80px 0;
    background-color: #c5efe0;
    overflow: hidden; }

  #footer_left {
    float: left;
    width: 96%;
    height: auto;
    margin: 0 2% 20px 2%;
    text-align: center; }

  #footer_info {
    width: 50%;
    height: auto;
    margin: 0 auto 30px auto;
    font-size: 1.2rem; }

  #footer_info p {
    float: left;
    clear: both;
    display: inline-table;
    margin: 0 auto;
    line-height: 0.6rem;
    padding: 0; }

  #footer_logo img {
    width: 40%;
    height: auto; }

  #footer_right {
    float: right;
    width: 90%;
    height: auto;
    margin: 0 5%;
    padding: 0; }

  #footer_right ul {
    width: 33%;
    float: left;
    margin: 0 0 20px 0;
    padding: 0;
    font-size: 1.0rem;
    text-align: center; }

  #footer_line_bana_sp {
    display: none; }

  #copyright {
    clear: both;
    width: 100%;
    height: auto;
    text-align: center;
    font-size: 1.0rem;
    margin: 10px 0 5px 0; }

  #gotop {
    clear: both;
    width: 10%;
    height: auto;
    position: fixed;
    bottom: 0;
    right: 0;
    z-index: 20; }

  /*----------------------------------------------contents*/
  .line_bana_sp {
    width: 90%;
    height: auto;
    margin: 0 auto 20px; }
    .line_bana_sp img {
      width: 100%;
      height: auto; }

  .contents_box {
    width: 100%;
    height: auto;
    margin: 0 auto; }

  #bg_2026 {
    width: 100%;
    height: auto;
    background-image: url("../images/bg_2026.png");
    background-size: 100%;
    background-repeat: repeat-y;
    padding: 0 0 40px 0;
    font-family: "Noto Serif JP", serif; }

  /*----------------------------------------------index*/
  .up_contact_btn {
    width: 80%;
    height: auto;
    display: inline-block;
    margin: 20px auto 20px auto;
    position: relative;
    left: 50%;
    transform: translateX(-50%);
    padding: 10px 40px 5px 40px;
    box-sizing: border-box;
    background-color: #fff;
    font-family: source-han-sans-japanese, sans-serif;
    font-size: 20px;
    font-weight: 700;
    color: #a1925a;
    border: solid 4px #a1925a;
    border-radius: 9999px;
    text-align: center;
    overflow: hidden;
    letter-spacing: 0; }
    .up_contact_btn span {
      display: block;
      font-size: 1.2rem;
      font-weight: 300;
      margin-top: 5px; }
    .up_contact_btn:hover {
      background-color: rgba(193, 182, 145, 0.4);
      color: #fff;
      text-shadow: 0 0 3px #7c6f46; }
    .up_contact_btn::before {
      content: "";
      position: absolute;
      top: -50%;
      left: -60%;
      width: 40%;
      height: 200%;
      background: linear-gradient(120deg, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.6) 50%, rgba(255, 255, 255, 0) 100%);
      transform: skewX(-20deg);
      transition: left 0.6s ease; }
    .up_contact_btn:hover::before {
      left: 120%; }

  .m_btn {
    width: 70%;
    height: auto;
    background-color: #fff;
    color: #a1925a;
    position: relative;
    left: 50%;
    transform: translateX(-50%);
    border: solid 2px #a1925a;
    border-radius: 9999px;
    text-align: center;
    position: relative;
    margin-bottom: 20px; }
    .m_btn img {
      width: auto;
      height: 18px;
      margin: auto;
      padding: 6px 0 0 0; }

  .img_ribbon {
    width: 80%;
    height: auto;
    margin: 0 auto 30px auto; }
    .img_ribbon img {
      width: 100%;
      height: auto; }

  #indexbox_01 {
    width: 100%;
    height: auto;
    margin-bottom: 80px;
    padding: 120px 0 0 0;
    position: relative;
    background-image: url("../images/re_indeximg_01.png");
    background-position: center top;
    background-repeat: no-repeat;
    background-size: 60%; }
    #indexbox_01 h2 {
      width: 86%;
      font-size: 22px;
      text-align: center;
      line-height: 1.5;
      text-shadow: 1px 0 0 #fff;
      margin: 100px auto 60px auto;
      font-family: "Noto Serif JP", serif;
      font-weight: 500;
      color: #7c6f46;
      background-color: rgba(255, 255, 255, 0.8);
      padding: 10px;
      box-sizing: border-box; }
    #indexbox_01 #indexbox_01_in1 {
      width: 100%;
      height: auto;
      padding: 140px 0 30px 0;
      background-image: url("../images/re_indeximg_02.png");
      background-position: right top;
      background-size: 80% auto;
      background-repeat: no-repeat;
      display: block;
      gap: 10px; }
    #indexbox_01 #indexbox_01_in2 {
      width: 100%;
      height: auto;
      padding: 140px 0 0 0;
      background-image: url("../images/re_indeximg_03.png");
      background-position: left top;
      background-size: 80% auto;
      background-repeat: no-repeat;
      display: block;
      gap: 10px;
      justify-content: flex-end; }
    #indexbox_01 .indexbox_01_contents {
      width: 80% !important;
      background-color: rgba(255, 255, 255, 0.8);
      border: solid 1px #a1925a;
      padding: 10px 24px;
      margin: 0 auto 10px auto;
      box-shadow: none;
      display: grid;
      grid-template-rows: auto; }
      #indexbox_01 .indexbox_01_contents h3 {
        font-size: 15px;
        line-height: 1.5;
        margin: 0; }
      #indexbox_01 .indexbox_01_contents span {
        width: 100%;
        display: block;
        position: relative;
        padding-left: 2rem;
        box-sizing: border-box; }
        #indexbox_01 .indexbox_01_contents span::before {
          content: "";
          position: absolute;
          left: 0;
          top: 0.75em;
          width: 1.6rem;
          height: 1px;
          background: #000; }

  #indexbox_02 {
    background-image: url("../images/sp/re_indeximg_04.png");
    background-repeat: no-repeat;
    background-position: center 200px;
    background-size: 100%;
    position: relative;
    padding: 0;
    box-sizing: border-box;
    margin-bottom: 60px; }
    #indexbox_02 h3 {
      font-size: 20px;
      line-height: 2;
      text-align: center;
      font-weight: 500;
      margin-bottom: 40px; }
    #indexbox_02 #indexbox_02_contents {
      width: 100%;
      height: auto;
      margin: 0;
      text-align: center; }
      #indexbox_02 #indexbox_02_contents img {
        width: 90%;
        height: auto;
        margin: 140px auto 10px auto; }
      #indexbox_02 #indexbox_02_contents p {
        width: 96%;
        height: auto;
        background-color: rgba(255, 255, 255, 0.6);
        padding: 15px 20px;
        margin: 0 auto 0 auto;
        box-sizing: border-box;
        font-family: source-han-sans-japanese, sans-serif;
        text-align: left; }

  #indexbox_02_2 {
    width: 100%;
    height: auto;
    margin: 0 auto 30px auto;
    background-image: url("../images/re_indeximg_07.png");
    background-repeat: no-repeat;
    background-position: center bottom;
    background-size: 100%;
    padding: 0 0 260px 0; }
    #indexbox_02_2 #indexbox_02_2list h4 {
      width: 96%;
      color: #a1925a;
      font-size: 22px;
      margin-bottom: 10px;
      margin-left: auto; }
    #indexbox_02_2 #indexbox_02_2list ul {
      width: 96%;
      list-style: none;
      margin: 20px 0 0 auto; }
      #indexbox_02_2 #indexbox_02_2list ul li {
        font-size: 14px;
        margin: 0 0 10px 0;
        line-height: 2.0;
        letter-spacing: 1; }
        #indexbox_02_2 #indexbox_02_2list ul li span {
          border-bottom: solid 0.9px #a1925a;
          padding: 0 4px 2px 4px;
          display: inline-block; }

  #indexbox_03 {
    width: 100%;
    height: auto;
    padding: 40px 0 0 0;
    margin-bottom: 30px;
    background-image: url("../images/sp/re_indeximg_08.png");
    background-repeat: no-repeat;
    background-size: 130%;
    background-position: 65% bottom; }
    #indexbox_03 h5 {
      width: 90%;
      font-size: 20px;
      color: #a1925a;
      line-height: 1.5;
      font-weight: 500;
      margin: 0 auto 20px auto; }
    #indexbox_03 p {
      width: 90%;
      height: auto;
      font-family: source-han-sans-japanese, sans-serif;
      font-size: 1.2rem;
      margin: 0 auto 70px 0;
      padding: 0 20px;
      box-sizing: border-box;
      text-shadow: 1px 1px 0 #fff; }

  #indexbox_04 {
    background-image: url("../images/re_index04_bg.png");
    background-size: cover;
    background-repeat: repeat-y;
    padding: 40px 0;
    margin-bottom: 40px; }
    #indexbox_04 h3 {
      width: 96%;
      margin: 40px auto 10px auto;
      text-align: center;
      font-size: 18px;
      font-weight: 400;
      line-height: 1.5; }
    #indexbox_04 #index_ibjlist {
      width: 90%;
      display: block;
      justify-content: space-between;
      margin: 0 auto 40px auto;
      padding: 25px;
      box-sizing: border-box;
      color: #7c6f46;
      background-color: #fff; }
    #indexbox_04 .awardbage_single {
      width: 240px;
      height: auto;
      margin: 10px auto; }
      #indexbox_04 .awardbage_single img {
        width: 100%;
        height: auto; }
    #indexbox_04 .awardbage_set {
      width: 96%;
      height: auto;
      margin: 10px auto; }
      #indexbox_04 .awardbage_set img {
        width: 100%;
        height: auto; }
    #indexbox_04 #indexbox_04copy {
      text-align: center;
      line-height: 2;
      font-size: 18px;
      font-weight: 700;
      color: #7c6f46;
      text-shadow: 0 0 5px #fff;
      margin: 40px 0; }

  #indexbox_05 h4 {
    text-align: center;
    font-size: 20px;
    line-height: 1.5;
    color: #7c6f46;
    margin: 0 0 40px 0; }
  #indexbox_05 #index_congrats_contentsbox {
    width: 90%;
    height: auto;
    margin: 0 auto 50px auto; }
    #indexbox_05 #index_congrats_contentsbox ul {
      width: 100%;
      height: auto;
      margin: 0 auto 40px auto;
      padding: 0;
      list-style: none;
      display: flex;
      flex-wrap: wrap;
      gap: 10px; }
      #indexbox_05 #index_congrats_contentsbox ul li {
        width: calc(50% - 10px);
        padding: 5px 5px 10px 5px;
        box-sizing: border-box;
        border: solid 0.9px #a1925a;
        background-color: #fff;
        text-align: center;
        font-size: 1.0rem; }
        #indexbox_05 #index_congrats_contentsbox ul li .img_center {
          width: 100%;
          aspect-ratio: 1 / 1;
          overflow: hidden; }
          #indexbox_05 #index_congrats_contentsbox ul li .img_center img {
            width: 100%;
            height: 100%;
            margin: 0 0 5px 0;
            object-fit: cover;
            display: block; }
  #indexbox_05 .moretext {
    width: 100%;
    height: auto;
    margin: 5px 0 5px 0;
    padding: 10px 0;
    text-align: center;
    color: #ffffff;
    background-color: #7c6f46;
    font-size: 1.0rem;
    display: block; }

  #indexbox_06 {
    margin-bottom: 100px; }
    #indexbox_06 h4 {
      text-align: center;
      font-size: 20px;
      line-height: 1.5;
      color: #7c6f46;
      margin: 40px 0 20px 0; }
    #indexbox_06 #index_price {
      width: 96%;
      height: auto;
      margin: 40px auto;
      background-image: url("../images/re_index04_bg.png");
      background-size: cover;
      background-repeat: no-repeat;
      padding: 20px;
      box-sizing: border-box; }
      #indexbox_06 #index_price #index_price_wh {
        padding: 10px 10px 20px 10px;
        box-sizing: border-box;
        background-color: #fff;
        display: flex;
        flex-direction: column;
        justify-content: space-between; }
    #indexbox_06 table {
      width: 100%;
      height: auto;
      background-color: #fff;
      border: none;
      font-size: 1.5rem; }
      #indexbox_06 table tbody {
        width: 100%;
        height: auto; }
        #indexbox_06 table tbody tr {
          padding: 0;
          border-bottom: solid 0.9px #7c6f46; }
        #indexbox_06 table tbody th {
          width: 30%;
          padding: 10px 25px;
          box-sizing: border-box;
          text-align: center;
          white-space: nowrap; }
          #indexbox_06 table tbody th[scope="col"] {
            color: #7c6f46;
            font-weight: 600;
            text-align: center; }
          #indexbox_06 table tbody th[scope="row"] {
            font-weight: 600;
            font-size: 1.2rem; }
        #indexbox_06 table tbody td {
          width: 70%;
          padding: 10px 25px;
          box-sizing: border-box;
          text-align: center;
          padding-right: 0; }
      #indexbox_06 table .tableborder_r {
        border-right: solid 1px #7c6f46; }
      #indexbox_06 table .tableborder_b {
        padding: 5px 0;
        border-bottom: none; }
        #indexbox_06 table .tableborder_b th, #indexbox_06 table .tableborder_b td {
          padding: 0; }

  #index_h3 {
    font-size: 1.4rem;
    font-weight: 900;
    margin: 20px 0;
    text-align: center;
    line-height: 1.5; }

  #index_h3 span {
    font-size: 2.0rem;
    color: #ed1e79;
    font-weight: 900; }

  #index_ibjlist {
    width: 90%;
    display: block;
    justify-content: space-between;
    margin: 20px auto;
    padding: 20px 2rem;
    border: solid 5px #c5efe0;
    box-sizing: border-box; }

  #index_ibjlist ul {
    width: auto;
    height: auto;
    margin: 0;
    padding: 0; }

  #index_ibjlist ul li {
    list-style: none;
    background-image: url(../images/indeximg_listmark.png);
    background-repeat: no-repeat;
    background-position: left;
    background-size: 2.0rem;
    padding: 0 0 0 30px;
    font-size: 1.4rem;
    margin: 0 0 5px 0; }

  #index_box01_2 {
    width: 100%;
    height: auto;
    margin: 0 auto 10px auto;
    display: block;
    font-size: 1.6rem;
    line-height: 1.2; }

  #face_01 {
    width: 70%;
    height: auto;
    padding: 0;
    margin: 0 auto 10px;
    box-sizing: border-box; }

  #face_01 img {
    width: 100%;
    height: auto; }

  .index_list {
    margin: 20px 0 10px 0; }

  .index_list li {
    margin: 0 0 15px 0;
    padding: 3px 0 0 20px;
    font-size: 1.6rem;
    font-weight: 400;
    line-height: 1.0;
    background-image: url(../images/listicon_02.png);
    background-repeat: no-repeat;
    background-size: 1.6rem;
    background-position: left; }

  #index_feature {
    width: 100%;
    height: auto;
    display: flex;
    flex-wrap: wrap;
    border: solid 3px #a59253;
    padding: 30px 10px 10px 10px;
    box-sizing: border-box;
    position: relative; }

  #index_feature_title {
    width: 90%;
    top: -10px;
    left: 50%;
    transform: translateX(-50%); }

  #index_feature div {
    width: calc(100% / 3);
    height: auto;
    margin-bottom: 5px;
    text-align: center; }

  #index_feature div img {
    width: 98%;
    height: auto; }

  #index_promise {
    clear: both;
    float: none;
    width: 100%;
    height: auto;
    padding: 10px 10px 10px 10px;
    box-sizing: border-box; }

  #promise_title {
    margin: 0 auto;
    text-align: center; }

  #index_promise ul {
    padding: 0;
    margin: 0;
    list-style: none; }

  #index_promise ul li {
    margin: 0 0 15px 0;
    padding: 3px 0 0 20px;
    font-size: 1.6rem;
    font-weight: 400;
    line-height: 1.0;
    background-image: url(../images/listicon_02.png);
    background-repeat: no-repeat;
    background-size: 1.6rem;
    background-position: left; }

  .index_box02 {
    clear: both;
    width: 100%;
    height: auto;
    padding: 0;
    margin: 0 0 20px 0;
    box-sizing: border-box;
    background-image: none;
    background-color: #c5efe0;
    overflow: hidden; }

  .index_box02 h3 {
    width: 80%;
    margin: 0 10% 10px 10%;
    padding: 0;
    font-size: 1.4rem;
    line-height: 2.0; }

  .index_celebrate {
    width: 100%;
    height: auto;
    margin: 0 auto;
    padding: 0;
    overflow: hidden; }

  .index_celebrate ul {
    width: 100%;
    height: auto;
    margin: 0;
    padding: 0; }

  .index_celebrate ul li {
    width: 46%;
    height: auto;
    float: left;
    list-style: none;
    margin: 0 2% 5px 2%;
    padding: 0 5px;
    box-sizing: border-box; }

  .index_news {
    width: 80%;
    height: auto;
    margin: 0 10% 20px 10%;
    overflow: hidden; }

  .index_news_title {
    float: left;
    width: 20%;
    padding: 50px 80px 0 0;
    box-sizing: border-box; }

  .index_news_list {
    width: 80%;
    margin: 0;
    padding: 0 0 0 80px;
    box-sizing: border-box;
    border-left: solid 1px #92eace; }

  .index_news_list ul {
    margin: 0;
    padding: 0; }

  .index_news_list li {
    width: 80%;
    margin: 0 0 10px 0;
    list-style: none;
    padding: 0 0 10px 20px;
    border-bottom: solid 1px #e2e2e2;
    box-sizing: border-box; }

  .index_news_list li span {
    margin: 0 80px 0 0; }

  .index_news_title {
    float: left;
    width: 100%;
    padding: 0;
    box-sizing: border-box; }

  .index_news_list {
    width: 100%;
    margin: 0 auto;
    padding: 0;
    box-sizing: border-box;
    border-left: none; }

  .index_news_list ul {
    margin: 0;
    padding: 0; }

  .index_news_list li {
    width: 100%;
    margin: 0 0 10px 0;
    list-style: none;
    padding: 0 0 10px 0;
    border-bottom: solid 1px #e2e2e2;
    box-sizing: border-box; }

  .index_news_list li span {
    clear: both;
    display: block;
    margin: 0; }

  .index_news_list .list_days {
    width: 100%;
    display: block;
    float: left;
    margin: 0;
    padding: 0; }

  .index_news_list .index_news_cate {
    width: 100%;
    float: right;
    text-align: right;
    margin: 0 0 2px 0;
    padding: 2px 5px;
    box-sizing: border-box;
    color: #92eace; }

  /*about*/
  .about_pointbox {
    width: 92%;
    height: auto;
    margin: 0 4% 10px 4%;
    columns: 1; }

  .about_pointbox .about_pointcontents {
    width: 100%;
    height: auto;
    margin: 0 0 10px 0;
    border: solid 1px #a38255; }

  .about_pointbox ul {
    margin: 0;
    padding: 0; }

  .about_pointbox ul li {
    width: 98%;
    height: auto;
    margin: 0 0 10px 0;
    padding: 0 0 20px 0;
    float: left;
    list-style: none;
    border: solid 1px #a38255;
    background-image: url(../images/aboutimg_05.png);
    background-repeat: no-repeat;
    background-size: 100%; }

  .about_pointbox ul li h3 {
    text-align: left;
    font-size: 1.6rem;
    margin: 0;
    padding: 15px 10px 0 50px;
    box-sizing: border-box;
    color: #ffffff; }

  /*info*/
  #infoimg_04 {
    width: 100%;
    height: auto;
    text-align: center;
    position: relative;
    z-index: 1;
    margin-bottom: 20px; }

  #infoimg_04 h3 {
    width: 100%;
    height: auto;
    margin: 0;
    padding: 1rem 0;
    background-color: rgba(255, 255, 255, 0.8);
    font-size: 1.8rem;
    line-height: 1.4;
    position: absolute;
    z-index: 3;
    top: 65%;
    left: 0; }

  #info_supportbox {
    width: 96%;
    height: auto;
    margin: 0 auto;
    padding: 100px 0 0 0;
    background-image: url(../images/sp/infoimg_05.png);
    background-repeat: no-repeat;
    background-size: 100%; }

  #info_supportbox .info_supportlist {
    width: 80%;
    height: auto;
    font-size: 1.4rem;
    font-weight: normal;
    background-image: url(../images/listicon_01.png);
    background-repeat: no-repeat;
    line-height: 1.4;
    padding: 0 0 0 40px;
    margin: 0 auto 10px auto; }

  .info_requirebox01 {
    float: none;
    width: 80%;
    height: auto;
    margin: 0 auto 30px auto; }

  .info_requirebox01 th {
    height: auto; }

  .info_requirebox01 td {
    border-bottom: solid 1px #92eace;
    border-spacing: 0;
    padding: 10px 0; }

  .info_requirebox02 {
    float: none;
    width: 80%;
    height: auto;
    margin: 0 auto 30px auto; }

  .info_requirebox02 th {
    height: auto; }

  .info_requirebox02 td {
    border-bottom: solid 1px #92eace;
    border-spacing: 0;
    padding: 10px 0; }

  #info_plan01 {
    width: 96%;
    height: auto;
    margin: 0 auto 10px auto;
    padding: 0 0 30px 0;
    background-image: none; }

  #info_plan01 h4 {
    font-size: 1.6rem;
    margin: 0 0 10px 0;
    line-height: 1.8rem; }

  #info_plan02 {
    width: 96%;
    height: auto;
    margin: 0 auto 10px auto;
    padding: 0 0 30px 0;
    background-image: none; }

  #info_plan02 h4 {
    font-size: 1.8rem;
    margin: 0 0 10px 0;
    line-height: 2.4rem; }

  #info_plan03 {
    width: 96%;
    height: auto;
    margin: 0 auto 10px auto;
    padding: 0 0 30px 0;
    background-image: none; }

  #info_plan03 h4 {
    font-size: 1.8rem;
    margin: 0 0 10px 0;
    line-height: 2.4rem; }

  #info_plan04 {
    width: 96%;
    height: auto;
    margin: 0 auto 10px auto;
    padding: 0 0 30px 0;
    background-image: none; }

  #info_plan04 h4 {
    font-size: 1.8rem;
    margin: 0 0 10px 0;
    line-height: 2.4rem; }

  .plan_table {
    width: 96%;
    height: auto;
    margin: 0 auto 10px auto;
    border-spacing: 0;
    border-top: none;
    border-right: solid 1px #a59253;
    border-left: solid 1px #a59253;
    border-bottom: solid 1px #a59253;
    border-collapse: collapse; }

  .plan_table th {
    width: 40%;
    height: auto;
    background-color: #a59253;
    color: #fff;
    text-align: center;
    border-bottom: solid 1px #fff;
    padding: 0; }

  .plan_table td {
    width: 60%;
    height: auto;
    border-right: solid 1px #a59253;
    padding: 0; }

  .plan_table ul {
    font-size: 1.0rem; }

  .plan_table ul li {
    margin-bottom: 3px; }

  /*flow*/
  #flow_box01 {
    width: 96%;
    height: auto;
    padding: 0 10px 20px 10px;
    margin: 0 auto 5px auto;
    box-sizing: border-box;
    background-image: none;
    line-height: 2.0rem; }

  #flow_box02 {
    width: 96%;
    height: auto;
    padding: 0 10px 20px 10px;
    margin: 0 auto 5px auto;
    box-sizing: border-box;
    background-image: none;
    line-height: 2.0rem; }

  #flow_box03 {
    width: 96%;
    height: auto;
    padding: 0 10px 20px 10px;
    margin: 0 auto 5px auto;
    box-sizing: border-box;
    background-image: none;
    line-height: 2.0rem; }

  #flow_box04 {
    width: 96%;
    height: auto;
    padding: 0 10px 20px 10px;
    margin: 0 auto 5px auto;
    box-sizing: border-box;
    background-image: none;
    line-height: 2.0rem; }

  #flow_box05 {
    width: 96%;
    height: auto;
    padding: 0 10px 20px 10px;
    margin: 0 auto 5px auto;
    box-sizing: border-box;
    background-image: none;
    line-height: 2.0rem; }

  #flow_box05 p {
    width: 100%;
    height: auto; }

  #flow_box06 {
    width: 96%;
    height: auto;
    padding: 0 10px 50px 10px;
    margin: 0 auto 5px auto;
    box-sizing: border-box;
    background-image: none;
    line-height: 2.0rem; }

  /*faq*/
  .faq_q {
    width: 96%;
    height: auto;
    margin: 0 auto;
    padding: 20px;
    box-sizing: border-box;
    border: solid 1px #a59253;
    background-color: #a59253;
    color: #ffffff;
    font-weight: bold; }

  .faq_q:befor {
    content: "Q."; }

  .faq_a {
    width: 96%;
    height: auto;
    margin: 0 auto 30px auto;
    padding: 20px;
    box-sizing: border-box;
    border: solid 1px #a59253;
    background-color: #ffffff; }

  /*archive*/
  ul#archive-list {
    clear: both;
    width: 100%;
    height: auto;
    margin: 15px auto;
    padding: 0; }

  ul#archive-list li {
    display: block;
    list-style: none;
    width: 100%;
    height: auto;
    margin: 0 0 30px 0;
    padding: 0; }

  ul#archive-list li h2 {
    border-top: double 3px #92eace;
    border-bottom: double 3px #92eace;
    font-size: 16px;
    color: #333;
    height: auto;
    margin: 0 0 20px 0;
    padding: 15px 0 15px 20px;
    box-sizing: border-box; }

  ul#archive-list li h2 a {
    color: #333; }

  ul#archive-list time {
    display: block;
    width: 100%;
    height: auto;
    margin-bottom: 30px;
    padding-right: 0;
    box-sizing: border-box;
    text-align: right;
    color: #111; }

  ul#archive-list li .archive_contents {
    overflow: hidden;
    margin-bottom: 20px; }

  ul#archive-list li .firstimg {
    float: none;
    width: 100%;
    height: auto;
    display: block; }

  ul#archive-list li .firstimg img {
    width: 80%;
    height: 80%;
    object-fit: cover; }

  ul#archive-list p {
    float: none;
    width: 100%;
    height: auto;
    margin: 0 0 0 0;
    padding: 0;
    line-height: 2.0; }

  ul#archive-list p a {
    color: #111; }

  /*blog*/
  #blog_contentsbox {
    clear: both;
    width: 100%;
    height: auto;
    margin: 15px auto;
    padding: 0;
    box-sizing: border-box;
    display: block; }

  #blog_contents {
    width: 100%;
    height: auto;
    padding: 40px 20px;
    box-sizing: border-box;
    background-color: #fff;
    border: none;
    box-shadow: none; }

  #blog_contents h2 {
    border-top: double 3px #92eace;
    border-bottom: double 3px #92eace;
    font-size: 16px;
    color: #333;
    height: auto;
    margin: 0 2% 20px 0;
    padding: 15px 0 15px 0;
    text-align: center;
    box-sizing: border-box; }

  #blog_contents time {
    display: block;
    width: 100%;
    height: auto;
    margin-bottom: 30px;
    padding-right: 0;
    box-sizing: border-box;
    text-align: right;
    color: #111; }

  #blog_contents p {
    display: block;
    width: 100%;
    height: auto;
    margin: 0 auto 15px auto; }

  .sidebar_bana {
    width: 80%;
    height: auto;
    margin: 0 auto 20px; }

  .sidebar_bana img {
    width: 100%;
    height: auto; }

  #sidebar .widget-area {
    width: 90%;
    height: auto;
    margin: 0;
    padding: 0 5% 30px 5%;
    box-sizing: border-box; }

  #sidebar h3.widget-title {
    width: 100%;
    height: auto;
    font-size: 14px;
    margin: 0 0 5px 0; }

  #sidebar h3.widget-title::before {
    content: '■';
    color: #92eace; }

  #sidebar .widget-area ul {
    font-size: 12px; }

  #sidebar .widget-area ul li {
    font-size: 12px;
    margin-bottom: 2px; }

  .single_contents {
    margin: 0 0 30px 0; }

  .single_contents .wp-block-image {
    width: 80%;
    height: auto;
    margin: 0 auto 20px auto; }

  #single_contentsbox p img {
    clear: both;
    overflow: hidden;
    max-width: 94%;
    height: auto;
    margin: 15px 3%; }

  .yarpp {
    width: 100%;
    height: auto;
    margin: 40px 0; }

  .yarpp-thumbnail {
    width: 44% !important;
    height: 190px !important;
    min-height: 190px;
    margin: 0 3% 0 auto;
    padding: 10px 10px 60px 10px !important;
    box-sizing: border-box;
    border: solid 1px #92eace !important; }

  .yarpp-thumbnail:hover {
    background-color: #c5efe0; }

  .yarpp-thumbnail img {
    width: 90% !important;
    height: 100px;
    max-width: 90% !important;
    max-height: 100px !important;
    object-fit: cover;
    margin: 0 auto 10px; }

  .yarpp-thumbnail-default img {
    display: block;
    width: 90% !important;
    height: 100px;
    max-width: 90% !important;
    max-height: 100px !important;
    object-fit: cover;
    margin: 0 5% 10px; }

  .yarpp-thumbnail-title {
    width: 90%;
    max-width: 90% !important;
    font-size: 10px !important;
    margin: 0 5%;
    padding-bottom: 10px; }

  #congrats_contentsbox ul li {
    float: none;
    clear: both;
    width: 96%;
    /* 未対応ブラウザ用フォールバック */
    border: solid 1px #ccc;
    margin: 0 2% 15px 2%;
    display: block;
    padding: 15px;
    box-sizing: border-box; }

  #congrats_contentsbox ul li img {
    width: 90%;
    height: auto;
    max-height: 300px;
    margin: 0 auto 10px auto;
    object-fit: cover; }

  .nav-single {
    width: 100%;
    height: auto;
    margin: 0 auto 50px auto;
    overflow: hidden; }

  .nav-previous {
    clear: both;
    width: 100%;
    float: left;
    text-align: left;
    margin: 0 0 5px 5%; }

  .nav-previous a {
    padding: 15px 20px;
    color: #92eace;
    border: none; }

  .nav-next {
    clear: both;
    width: 100%;
    float: left;
    text-align: right;
    margin: 0 5% 0 0; }

  .nav-next a {
    padding: 15px 20px;
    color: #92eace;
    border: none; } }
@media screen and (max-width: 960px) {
  #congrats_contentsbox ul li {
    float: left;
    width: 96%;
    /* 未対応ブラウザ用フォールバック */
    border: solid 1px #ccc;
    margin: 0 2% 15px 2%;
    display: block;
    padding: 15px;
    box-sizing: border-box; }

  #congrats_contentsbox ul li img {
    width: 90%;
    height: auto;
    margin: 0 auto 10px auto;
    object-fit: cover; } }
