@charset "utf-8";
/* CSS Document */

/*base
rewrite*/

      .titbox h2 , .s-txt h2 , .s-txt h3 , .s-txt h4 , .c-linkblock h2 , .nap-box h2 , .c-btn { word-break: auto-phrase;font-family: 'M PLUS Rounded 1c', sans-serif; }
      .s-txt { margin: 0px auto 30px;word-break: normal; }
      .s-txt p { margin: 0 auto 20px; }.s-txt p a { text-decoration: underline; }
      
      .l-heading-primary { font-size: 32px !important; color: #595757; text-align: center;font-weight: bold; line-height: 1.4; margin: 4rem auto 20px;border: none !important; }
      .l-heading-secondary { font-size: 23px !important;padding: 5px 10px;border-left: 5px solid #79b4bc; font-weight: bold; line-height: 1.4; overflow: hidden; clear: both; margin: 4rem auto 20px !important; }
      .l-tertiary { font-size: 19px !important;color: #595757; font-weight: bold; line-height: 1.5; overflow: hidden; margin: 2.5rem 0 10px !important; }
      .l-quaternary { font-size: 17px !important;color: #79b4bc; font-weight: bold; display: inline-block; margin: 0rem 0 0rem !important; }
      .pipe_sp { display: none; }

      /* リンクボタン */
      .c-btn-wrap { display: grid; grid-template-columns: 1fr 1fr; margin-top: 30px; }
      .c-btn { margin: 30px auto; text-align: center; }
      .c-btn a { display: inline-block; letter-spacing: 1px; margin: 0 auto 10px; text-decoration: none;  }
      .c-btn-anchor {width: auto !important;}
      .c-btn a:hover { transition: all 0.2s ease 0s; }
      @media screen and (max-width: 640px) {
      .pipe_sp {display: initial; }
      .br_sp {display: none; }
      /*タイトル スマホのみ*/
      .l-heading-primary {font-size: 21px !important; }
      .l-heading-secondary {font-size: 20px !important; }
      .l-tertiary {font-size: 18px !important; }
      .l-quaternary {font-size: 16px !important; }
      .c-btn a { display: block; width: 96%; }
      }

      /*リンク一覧 共通*/
      .c-linkblock {margin-top: 4rem; padding: 3rem 3rem 1.5rem; border: 1px solid #000; }
      .c-linkblock h2 {font-size: 24px; margin-bottom: 20px; padding-bottom: 10px;color: #79b4bc;border: none; }
      .c-pagelink { padding: 0; margin: 0; list-style: none; counter-reset: list-num; }
      .c-pagelink li { margin: 0 0 10px 0 !important; border-bottom: 1px solid #e1e2e2; transition: background 0.3s ease-in-out; }
      .entry-content ol li { list-style: none; }
      .c-pagelink li a { display: flex; align-items: center; padding: 15px 20px; text-decoration: none !important; }
      .c-pagelink li a::before { content: counter(list-num) "."; counter-increment: list-num; margin-right: 12px; font-weight: bold; flex-shrink: 0; }
      .c-pagelink li:hover { opacity: .7; }

      /* NAP表 */
      .nap-box { margin-top: 4rem; margin-bottom: 0px; box-sizing: border-box;  }
      .nap-box h2 { font-size: 24px; font-weight: bold; margin-bottom: 15px;color: #79b4bc;text-align: center;border: none; }
      .nap-box table { border-collapse: collapse; box-sizing: border-box; width: 100%; }
      .nap-box th { padding: 10px; vertical-align: middle; width: 20%; font-weight: normal; text-align: left; }
      .nap-box td { padding: 10px; vertical-align: middle; width: 80%; }
      .nap-box a { text-decoration: underline; }
      .nap-box a:hover { text-decoration: none; }
      @media screen and (max-width: 640px) {
      .c-linkblock { padding: 2rem 1rem 1rem 1rem; }
      .c-pagelink li a { padding: 12px 15px 10px 15px; }
      .c-linkblock h2,.nap-box h2 { font-size: 20px; }
      .nap-box th, .nap-box td { box-sizing: border-box; display: block; width: 100%; }
      .nap-box th { width: 25%; }
      }

      /*テーブル 共通*/
      .c-s-table { border-collapse: collapse; text-align: left; width: auto; margin: 0; margin-bottom: 30px; width: 100%; clear: both; }
      .c-s-table th { background: #eee; border: 1px solid #ddd; text-align: left; vertical-align: middle; font-weight: bold; padding: 10px; }
      .c-s-table td { border: 1px solid #ddd; vertical-align: middle; padding: 10px; }
      .c-s-table tr:nth-child(odd) { background-color: #f7f7f7; }

      /*Q＆A*/
      .hanakura-faq { margin:0!important; line-height:1.8; }
      .hanakura-faq dt { font-weight:bold; margin-top:0; padding:10px 12px; color:brown; }
      .hanakura-faq dd { margin:0px 0 20px 15px; padding-left:10px; color:darkgreen; }
      .hanakura-faq dt::before { content:"Q."; font-weight:bold; margin-right:6px; color:brown; }
      .hanakura-faq dd::before { content:"A."; font-weight:bold; margin-right:6px; color:darkgreen; }
      
      /*リスト 共通*/
      .c-block ul,.c-block ol {margin: 1em 1em 1.8em 0;padding-left: 30px;vertical-align: top;}.c-block ul li,.c-block ol li {margin-bottom: 1rem;}.c-block ul li {list-style: disc;}.c-block ol li {list-style: decimal;}.c-block ul li:last-of-type,.c-block ol li:last-of-type {}.c-block ul li::marker,.c-block ol li::marker {color: #333;}.c-block td ul {margin: 0;padding-left: 10px;}.c-block td li {padding: 0;margin-bottom: 0;line-height: 1.4;margin-left: 10px;}/*画像 共通*/.img-right-s {float: right;margin: 0 0 4% 4%;width: 35%;border-radius: 20px;}.img-right-s img {vertical-align: middle;height: auto;width: 100%;}@media (max-width: 768px) {.c-s-table {font-size: 13px;}.c-s-table td {padding: 15px 10px;}.c_scrl_x {white-space: nowrap;overflow-x: scroll;display: block;}.c_scrl_x li {margin-left: 10px;}/*画像 スマホのみ*/.img-right-s {float: none;width: 100%;margin: 0 0 4%;}}#breadcrumbs {font-size: 90%;margin: 0 0 20px;text-align: left;word-break: auto-phrase;}
      /*メインバナー画像*/
      .c-head-mv { aspect-ratio: 23 / 7.3; width: 100%; height: auto; margin-top: 0px; margin-bottom: 30px; background-color: #333;background-repeat: no-repeat; background-size: cover; background-position: center; box-sizing: border-box; color: #fff; display: flex; flex-wrap: wrap; justify-content: center; align-items: end; font-weight: bold; line-height: 1.4; position: relative; }.c-head-mv h2 {background: rgba(000,000,000,.4) !important;border: none !important;color: #fff !important;font-size: 20px !important;text-align: left !important;margin: 0 !important;padding: .5em !important;position: relative !important;width: 100% !important;}@media screen and (max-width: 768px) {.c-head-mv {height: auto;padding: 4.5em 0 0 !important;}.c-head-mv h2 {font-size: 14px !important;font-weight: normal !important;}}
    
