@charset "UTF-8";
@media (min-width: 901px) {
  .under900 {
    display: none !important;
  }
}
/*@media(min-width:801px){*/
@media (max-width: 900px) {
  .over900 {
    display: none !important;
  }
}
/*@media(max-width:900px){*/
@media (min-width: 768px) {
  .sp_only {
    display: none !important;
  }
}
/*@media(min-width:768px){*/
@media (max-width: 767px) {
  .sp_hide {
    display: none !important;
  }
  main {
    padding-top: 50px;
  }
  /*
  --------------------------------------------------------
  共通パーツ
  --------------------------------------------------------
  */
  .container {
    max-width: 345px;
    margin: 0 auto;
  }
  /*
  --------------------------------------------------------
  共通パーツ ボタン関係
  --------------------------------------------------------
  */
  .common_link_button {
    width: 305px;
    height: 60px;
    position: relative;
    border-radius: 3px;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    overflow: hidden;
    transition-duration: 0.3s;
  }
  .common_link_button::before {
    content: "";
    width: 0;
    height: 100%;
    position: absolute;
    left: 0;
    top: 0;
    z-index: 1;
    transition-duration: 0.3s;
  }
  .common_link_button .button_inner {
    width: 100%;
    height: 100%;
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    z-index: 3;
  }
  .common_link_button .button_inner::after {
    content: "";
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 0 0 9px 9px;
    position: absolute;
    right: 3px;
    bottom: 3px;
    transition-duration: 0.3s;
    transition-delay: 0s;
    z-index: 4;
  }
  .common_link_button .button_text {
    font-weight: 500;
    line-height: 1;
  }
  .common_link_button.green {
    color: #68a357;
    border: solid 2px #68a357;
    background-color: #fff;
    transition: 0.3s;
  }
  .common_link_button.green::before {
    background-color: #68a357;
  }
  .common_link_button.green .button_inner::after {
    border-color: transparent transparent #68a357 transparent;
  }
  .common_link_button.orange {
    color: #3c2c00;
    border: solid 2px #f8b500;
    background-color: #fff;
  }
  .common_link_button.orange::before {
    background-color: #f8b500;
  }
  .common_link_button.orange .button_inner::after {
    border-color: transparent transparent #f8b500 transparent;
  }
  .common_link_button.orange_gra {
    color: #fff;
    background: linear-gradient(to right, #f8a300, #f8b500);
  }
  .common_link_button.orange_gra::before {
    background: linear-gradient(to right, #f8b500, #f8a300);
    transition-delay: 0.3s;
  }
  .common_link_button.orange_gra::after {
    content: "";
    transition-duration: 0.3s;
    width: 100%;
    height: 100%;
    background: linear-gradient(to right, #f8a300, #f8b500);
    position: absolute;
    z-index: 2;
    top: 0;
    left: 0;
  }
  .common_link_button.orange_gra .button_inner::after {
    border-color: transparent transparent #fff transparent;
  }
  /*以上、ボタン関係*/
  /*
  --------------------------------------------------------
  共通パーツ セクションのタイトルセット
  --------------------------------------------------------
  */
  .common_title_set {
    font-family: "Noto Serif JP", serif;
    text-align: center;
  }
  .common_title_set.left_text {
    text-align: left;
  }
  .common_title_set .ja_title {
    font-size: 30px;
    font-weight: 600;
    line-height: 1;
    color: #3c2c00;
    margin-bottom: 10px;
    letter-spacing: 0.12em;
  }
  .common_title_set .en_title {
    font-size: 15px;
    font-weight: 500;
    line-height: 1;
    color: #68a357;
  }
  /*
  --------------------------------------------------------
  共通パーツ セクションタイトル(下線オレンジボーダー)
  --------------------------------------------------------
  */
  .common_bottom_border_title {
    font-family: "Noto Serif JP", serif;
    font-size: 24px;
    font-weight: 500;
    line-height: 1.3;
    color: #3c2c00;
    position: relative;
    padding-bottom: 24px;
    text-align: center;
  }
  .common_bottom_border_title::after {
    content: "";
    width: 70px;
    height: 2px;
    background-color: #f8b500;
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
  }
  /*
  --------------------------------------------------------
  共通パーツ セクションタイトル(横線ボーダー)
  --------------------------------------------------------
  */
  .common_left_border_title {
    position: relative;
    padding: 18px 16px;
    display: flex;
    justify-content: center;
    font-family: "Noto Serif JP", serif;
    font-size: 20px;
    font-weight: 500;
    line-height: 1.3;
    background-color: #faf9f5;
  }
  .common_left_border_title::before {
    content: "";
    width: 3px;
    height: 100%;
    background-color: #3c2c00;
    position: absolute;
    left: 0;
    top: 0;
  }
  /*
  --------------------------------------------------------
  共通パーツ 2カラムページのレイアウト
  --------------------------------------------------------
  */
  .common_wrap_flex {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    flex-wrap: wrap;
    position: relative;
    max-width: 345px;
    margin: 56px auto 0;
  }
  .common_wrap_flex .common_wrap_left {
    position: sticky;
    top: 0;
    left: 0;
    max-width: 100%;
  }
  .common_wrap_flex .common_wrap_left li {
    display: flex;
    align-items: flex-start;
    font-weight: 500;
    line-height: 1.5;
    color: #3c2c00;
    margin-bottom: 8px;
    transition-duration: 0.4s;
    cursor: pointer;
  }
  .common_wrap_flex .common_wrap_left li::before {
    content: none;
  }
  .common_wrap_flex .common_wrap_left li.child {
    margin-left: 16px;
  }
  .common_wrap_flex .common_wrap_left li.active {
    color: #3c2c00;
  }
  .common_wrap_flex .common_wrap_left li.active::before {
    opacity: 1;
  }
  .common_wrap_flex .common_wrap_right {
    width: 100%;
    max-width: 100%;
    /* overflow: hidden; */
  }
  .common_wrap_info_text {
    font-weight: 400;
    font-size: 14px;
    line-height: 2;
    letter-spacing: 0.16em;
    font-feature-settings: "palt";
  }
  .common_wrap_info_text span {
    font-weight: 500;
    background: linear-gradient(to top, rgba(248, 181, 0, 0.32) 0%, rgba(248, 181, 0, 0.32) 40%, transparent 40%, transparent 100%);
  }
  .common_wrap_h3 {
    font-family: "Noto Serif JP", serif;
    font-size: 18px;
    font-weight: 500;
    line-height: 1.3;
    border-bottom: 2px solid #3c2c00;
    padding-bottom: 10px;
  }
  .common_orange_border_text {
    font-family: "Noto Serif JP", serif;
    font-size: 17px;
    font-weight: 600;
    line-height: 1.4;
    width: -moz-fit-content;
    width: fit-content;
    padding-bottom: 12px;
    border-bottom: 2px solid #f8b500;
  }
  /*
  --------------------------------------------------------
  共通パーツ  シングルブロック
  --------------------------------------------------------
  */
  .common_single_block h2 {
    font-family: "Noto Serif JP", serif;
    font-size: 20px;
    font-weight: 500;
    line-height: 1.4;
    padding: 12px 24px;
    background-color: #faf9f5;
    border-left: 2px solid #3c2c00;
    margin: 24px 0;
  }
  .common_single_block h3 {
    font-family: "Noto Serif JP", serif;
    font-size: 17px;
    font-weight: 500;
    line-height: 1.56;
    border-bottom: 1px solid #3c2c00;
    margin: 24px 0;
    padding-bottom: 6px;
  }
  .common_single_block p {
    line-height: 1.75;
    margin: 32px 0;
    font-size: 14px;
  }
  .common_single_block figure {
    margin-top: 32px;
    margin-bottom: 32px;
  }
  .common_single_block ul {
    margin: 24px 0;
    padding-left: 16px;
  }
  .common_single_block ul li {
    list-style-type: disc;
    line-height: 1.75;
    margin-bottom: 4px;
  }
  .common_single_block ul li::marker {
    color: #68a357;
  }
  .common_single_block ol {
    margin: 24px 0;
    padding-left: 20px;
  }
  .common_single_block ol li {
    list-style-type: inside;
    line-height: 1.75;
    margin-bottom: 4px;
  }
  .common_single_block ol li::marker {
    color: #68a357;
  }
  .common_single_block p a {
    color: #3c2c00;
    text-decoration: underline;
  }
  /*
  --------------------------------------------------------
  共通パーツ お知らせ一覧
  --------------------------------------------------------
  */
  .common_news_list li {
    margin-bottom: 16px;
  }
  .common_news_list li:last-child {
    margin-bottom: 0;
  }
  .common_news_list .common_news_block {
    position: relative;
    display: block;
    padding-right: 56px;
    padding: 12px 40px 16px 20px;
    background-color: #faf9f5;
    transition-duration: 0.4s;
  }
  .common_news_list .common_news_block:hover {
    background-color: #faf9f5;
  }
  .common_news_list .common_news_block::after {
    content: "";
    width: 12px;
    height: 20px;
    background-image: url("../img/common/arrow_right_orange.svg");
    position: absolute;
    right: 10px;
    top: 0;
    bottom: 0;
    margin: auto;
  }
  .common_news_list .common_news_block .news_info {
    display: flex;
    align-items: center;
  }
  .common_news_list .common_news_block .news_date {
    font-family: "Noto Serif JP", serif;
    font-size: 14px;
    font-weight: 300;
    line-height: 1;
    color: #8f8f8f;
    letter-spacing: 0.14em;
    min-width: 100px;
    width: auto;
    padding-right: 4px;
  }
  .common_news_list .common_news_block .news_cat {
    min-width: 82px;
    height: 24px;
    padding: 0 2px;
    border-radius: 48px;
    background-color: #68a357;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 14px;
    font-weight: 500;
    line-height: 1;
    color: #fff;
  }
  .common_news_list .common_news_block .news_title {
    margin-top: 4px;
    font-weight: 400;
    line-height: 1.56;
    color: #3c2c00;
  }
  /*
  --------------------------------------------------------
  共通パーツ サイドバー
  --------------------------------------------------------
  */
  .common_sidebar {
    width: 100%;
    margin-top: 64px;
    order: 3;
  }
  .common_sidebar .category_area {
    border-radius: 3px;
    border: solid 1px #3c2c00;
  }
  .common_sidebar .category_head {
    height: 50px;
    background-color: #3c2c00;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 15px;
    font-weight: 500;
    color: #fff;
    line-height: 1;
  }
  .common_sidebar .category_list li {
    border-bottom: 1px solid rgb(60, 44, 0);
  }
  .common_sidebar .category_list li:last-child {
    border-bottom: none;
  }
  .common_sidebar .category_list li a {
    display: block;
    transition-duration: 0.4s;
    padding: 20px 16px;
    font-weight: 400;
    line-height: 1.2;
    color: #3c2c00;
  }
  .common_sidebar .category_list li a.active {
    background-color: #fffbf0;
  }
  /*
  --------------------------------------------------------
  共通パーツ ページネーション
  --------------------------------------------------------
  */
  .common_pagenation {
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    margin-top: 80px;
    font-family: "Noto Serif JP", serif;
  }
  .common_pagenation span.current {
    width: 24px;
    height: 24px;
    background-color: #f8b500;
    border-radius: 50%;
    color: #ffffff;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 16px;
    font-weight: 700;
    line-height: 1;
    margin: 0 4px;
  }
  .common_pagenation a.page-numbers {
    width: 24px;
    height: 24px;
    border-radius: 50%;
    color: #3c2c00;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 20px;
    font-weight: 700;
    line-height: 1;
    margin: 0 8px;
    transition-duration: 0.4s;
  }
  .common_pagenation a.page-numbers:hover {
    background-color: #f8b500;
    color: #ffffff;
  }
  /*
  --------------------------------------------------------
  共通パーツ 労務相談Q＆A
  --------------------------------------------------------
  */
  .common_faq_list .common_faq_block {
    margin-bottom: 16px;
    border: 1px solid rgba(248, 181, 0, 0.28);
  }
  .common_faq_list .common_faq_block:last-child {
    margin-bottom: 0;
  }
  .common_faq_list .common_faq_block .question_area {
    position: relative;
    padding: 20px 40px 20px 60px;
    line-height: 1.56;
    transition-duration: 0.4s;
    cursor: pointer;
  }
  .common_faq_list .common_faq_block .question_area p {
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
  }
  .common_faq_list .common_faq_block .question_area::before {
    content: "Q";
    padding-bottom: 4px;
    font-family: "Noto Serif JP", serif;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background-color: #f8b500;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 16px;
    font-weight: bold;
    line-height: 1;
    color: #fff;
    position: absolute;
    top: 10px;
    left: 10px;
    box-sizing: border-box;
  }
  .common_faq_list .common_faq_block .question_area::after {
    content: "";
    width: 12px;
    height: 20px;
    background-image: url("../img/common/arrow_right_orange.svg");
    position: absolute;
    right: 10px;
    top: 0;
    bottom: 0;
    margin: auto;
  }
  .common_faq_list .common_faq_block .qa_category {
    top: -1px;
    left: -1px;
  }
  /*
  --------------------------------------------------------
  共通セクション　ヘッダー
  --------------------------------------------------------
  */
  header {
    position: fixed;
    width: 100%;
    z-index: 100;
    background-color: #fff;
    top: 0;
    left: 0;
  }
  header .header_inner {
    padding: 0 16px;
  }
  header .header_logo {
    flex-shrink: 0;
  }
  header .header_logo img {
    height: 40px;
  }
  header .header_logo .logo_text {
    display: none;
  }
  header .header_line01 {
    border-bottom: 2px solid #faf9f5;
  }
  header .header_line01.close {
    display: block;
  }
  header .header_line01 .header_flex01 {
    height: 50px;
    display: flex;
    justify-content: space-between;
    align-items: center;
  }
  header .header_line01 .header_nav01 {
    display: none;
  }
  header .drawer_open {
    display: flex;
    justify-content: space-between;
    flex-direction: column;
    width: 25px;
    height: 14px;
    cursor: pointer;
  }
  header .drawer_open .bar {
    height: 1px;
    background-color: #3c2c00;
    transition-duration: 0.4s;
  }
  header .drawer_open.active .bar1 {
    transform: translateY(6.4px) rotate(-45deg);
  }
  header .drawer_open.active .bar2 {
    display: none;
  }
  header .drawer_open.active .bar3 {
    transform: translateY(-6.4px) rotate(45deg);
  }
  header .header_line02 {
    display: none;
  }
  .drawer_menu {
    position: fixed;
    bottom: 0;
    right: -100px;
    z-index: 99;
    width: 100%;
    max-width: 100%;
    height: 100vh;
    /* カスタムプロパティ未対応ブラウザ用のフォールバック */
    height: calc(var(--vh2, 1vh) * 100);
    background-color: #fff;
    transition-duration: 0.4s;
    opacity: 0;
    pointer-events: none;
    padding-top: 50px;
    overflow: hidden;
  }
  .fix_sidebar {
    display: none;
  }
  .fix_bottom_menu {
    position: fixed;
    width: 100%;
    bottom: 0;
    left: 0;
    z-index: 50;
    display: flex;
  }
  .fix_bottom_menu .form_link {
    width: 36.5%;
    /* width:100%; */
    height: 50px;
    display: flex;
    justify-content: center;
    align-items: flex-end;
    padding-bottom: 4px;
    position: relative;
    background-image: linear-gradient(to top, #f8a300, #ffac0c, #f8b500);
    font-size: 14px;
    font-weight: bold;
    line-height: 1;
    color: #fff;
  }
  .fix_bottom_menu .form_link::before {
    content: "";
    width: 21px;
    height: 20.5px;
    background-image: url("../img/common/form_icon_white.svg");
    position: absolute;
    bottom: 23px;
    left: 0;
    right: 0;
    margin: auto;
  }
  .fix_bottom_menu .contact_link {
    width: 36.5%;
    /* width:100%; */
    height: 50px;
    display: flex;
    justify-content: center;
    align-items: flex-end;
    padding-bottom: 4px;
    position: relative;
    background-color: #68a357;
    font-size: 14px;
    font-weight: bold;
    line-height: 1;
    color: #fff;
  }
  .fix_bottom_menu .contact_link::before {
    content: "";
    width: 20px;
    height: 15px;
    background-image: url("../img/common/contact_icon_white.svg");
    position: absolute;
    bottom: 25px;
    left: 0;
    right: 0;
    margin: auto;
  }
  .fix_bottom_menu .tel_link {
    width: 13.3%;
    height: 50px;
    display: flex;
    justify-content: center;
    align-items: flex-end;
    padding-bottom: 4px;
    position: relative;
    background-color: #fff;
    font-size: 14px;
    font-weight: bold;
    line-height: 1;
    color: #68a357;
  }
  .fix_bottom_menu .tel_link::before {
    content: "";
    width: 15px;
    height: 20px;
    background-image: url("../img/common/tel_icon.png");
    position: absolute;
    bottom: 20px;
    left: 0;
    right: 0;
    margin: auto;
  }
  .fix_bottom_menu .page_top_link {
    width: 13.3%;
    height: 50px;
    display: flex;
    justify-content: center;
    align-items: center;
    background-color: #3c2c00;
  }
  .fix_bottom_menu .page_top_link::after {
    content: "";
    width: 23px;
    height: 12px;
    background-image: url("../img/common/arrow_top_white.svg");
  }
  /*
  --------------------------------------------------------
  共通セクション　フッター
  --------------------------------------------------------
  */
  .page_top {
    display: none;
  }
  footer {
    padding: 24px 0 64px;
    overflow: hidden;
  }
  footer .footer_logo {
    display: block;
    width: 250px;
    margin: 0 auto;
  }
  footer .footer_logo img {
    width: 100%;
  }
  footer .footer_area01 {
    padding: 0 0 40px;
    border-bottom: 1px solid rgba(60, 44, 0, 0.2);
  }
  footer .footer_flex01 {
    display: flex;
    justify-content: space-between;
    flex-direction: column-reverse;
    align-items: center;
    flex-wrap: wrap;
    margin-top: 32px;
  }
  footer .footer_nav {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    flex-wrap: wrap;
    width: 100%;
    /* max-width:450px; */
    margin: 0 auto;
  }
  footer .footer_nav ul {
    margin-right: 0;
    width: 45%;
    margin-top: 40px;
  }
  footer .footer_nav ul:last-child {
    margin-right: 0;
  }
  footer .footer_nav ul li {
    margin-bottom: 16px;
  }
  footer .footer_nav ul li:last-child {
    margin-bottom: 0;
  }
  footer .footer_nav ul li a {
    font-weight: 400;
    font-size: 15px;
    line-height: 1;
    color: #3c2c00;
    position: relative;
    padding-bottom: 4px;
    display: flex;
    align-items: center;
    width: -moz-fit-content;
    width: fit-content;
    white-space: nowrap;
    font-feature-settings: "palt";
  }
  footer .footer_nav ul li a.child_link::before {
    content: "";
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 4.5px 0 4.5px 9px;
    border-color: transparent transparent transparent #68a357;
    margin-right: 3px;
  }
  footer .footer_nav ul.ul03 li a, footer .footer_nav ul.ul04 li a {
    font-size: 16px;
  }
  footer .button_list {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    align-items: center;
    width: 100%;
  }
  footer .button_list .common_link_button.orange {
    width: 48%;
    height: 35px;
    background-color: rgba(248, 181, 0, 0.1);
    margin: 0;
    border-width: 1px;
  }
  footer .button_list .common_link_button.orange .button_text {
    font-size: 11px;
    letter-spacing: 0;
    line-height: 1.2;
    text-align: center;
    white-space: nowrap;
  }
  footer .button_list .common_link_button.orange:last-child {
    margin-bottom: 0;
  }
  footer .button_list .common_link_button .button_inner::after {
    border-width: 0 0 7px 7px;
  }
  footer .footer_area02 {
    padding: 40px 0 0;
  }
  footer .footer_flex02 {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-direction: column;
  }
  footer .office_list {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    width: 100%;
  }
  footer .office_block {
    margin-right: 0;
    margin-bottom: 32px;
  }
  footer .office_block:last-child {
    margin-right: 0;
  }
  footer .office_block p {
    font-weight: 400;
    font-size: 12px;
    line-height: 1.5;
  }
  footer .office_block .office_name {
    font-size: 12px;
  }
  footer .office_block .office_adress {
    margin-top: 4px;
  }
  footer .office_block .office_tel {
    margin-top: 4px;
  }
  footer .office_block .office_tel .tel {
    pointer-events: auto;
    color: #3c2c00;
  }
  footer .office_block .office_fax a {
    color: #3c2c00;
    pointer-events: none;
  }
  footer .kyoshin_link {
    width: 210px;
    height: 64px;
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 0;
    border-radius: 3px;
    box-shadow: 0 0 16px 0 rgba(60, 44, 0, 0.1);
    border: solid 1px #fe9a39;
    font-size: 13px;
    font-weight: 600;
    text-align: center;
    line-height: 1.54;
    color: #3c2c00;
    margin-top: 0;
  }
  footer .kyoshin_link::before {
    content: "";
    width: 64px;
    height: 56px;
    background-image: url("../img/common/kyoshin_logo.png");
    margin-right: 2px;
  }
  footer .footer_copy {
    margin-top: 24px;
    font-size: 10px;
    line-height: 1.3;
    text-align: center;
    color: #ababab;
  }
  /*
  --------------------------------------------------------
  共通セクション　ページ下部のお問い合わせ
  --------------------------------------------------------
  */
  .common_contact_section {
    padding: 80px 0 40px;
    position: relative;
  }
  .common_contact_section::before {
    content: "";
    width: 100%;
    height: 100%;
    background-color: #faf9f5;
    position: absolute;
    top: 0;
    left: 0;
    z-index: -10;
  }
  .common_contact_section::after {
    content: "";
    width: 100%;
    height: 210px;
    background-image: url("../img/common/contact_bg.jpg");
    position: absolute;
    top: 40px;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    z-index: -5;
  }
  .common_contact_section .sec_title {
    font-size: 45px;
    font-weight: 500;
    line-height: 1;
    text-align: center;
    color: #fff;
  }
  .common_contact_section .white_box {
    margin-top: 20px;
    padding: 24px 20px 30px;
    background-color: #fff;
  }
  .common_contact_section .p01 {
    font-size: 20px;
    font-weight: 600;
    line-height: 1.6;
    text-align: center;
  }
  .common_contact_section .p01 span {
    border-bottom: 2px solid #f8b500;
  }
  .common_contact_section .button_flex {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    margin-top: 16px;
  }
  .common_contact_section .entry_button {
    width: 100%;
    height: 100px;
  }
  .common_contact_section .entry_button .button_inner {
    padding: 0;
  }
  .common_contact_section .entry_button .button_text {
    font-size: 18px;
    font-weight: bold;
    line-height: 1.2;
    text-align: center;
  }
  .common_contact_section .entry_button .button_sub_text {
    margin-top: 3px;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 216px;
    height: 20px;
    border-radius: 13px;
    background-color: #fff;
    font-weight: bold;
    color: #f8a401;
    font-size: 14px;
  }
  .common_contact_section .contact_button {
    width: 305px;
    height: 60px;
    margin-left: 0;
    margin-top: 16px;
    background-color: rgba(104, 163, 87, 0.06);
  }
  .common_contact_section .contact_button .button_text {
    font-size: 18px;
    font-weight: bold;
  }
  .common_contact_section .contact_button .button_sub_text {
    font-weight: 500;
    line-height: 1;
    text-align: center;
    margin-top: 6px;
    font-size: 12px;
  }
  .common_contact_section .tel_text01 {
    font-size: 16px;
    line-height: 1;
    flex-direction: column;
  }
  .common_contact_section .tel_text01 span {
    margin-bottom: 8px;
  }
  .common_contact_section .line_flex {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    margin-top: 0px;
  }
  .common_contact_section .tel_block {
    display: flex;
    align-items: center;
    flex-direction: column;
  }
  .common_contact_section .tel_block .tel {
    margin: 16px 0 12px;
    display: flex;
    align-items: center;
    pointer-events: auto;
    font-size: 25px;
    font-weight: 600;
    line-height: 1;
    color: #3c2c00;
  }
  .common_contact_section .tel_block .tel::before {
    content: "";
    width: 18px;
    height: 25px;
    background-image: url("../img/common/tel_icon.png");
    margin-right: 8px;
  }
  .common_contact_section .tel_block .tel_text02 {
    font-size: 12px;
    line-height: 1;
  }
  .common_contact_section .line_border {
    width: 100%;
    height: 1px;
    margin: 8px 0 12px;
    background-color: #006d3e;
  }
  .common_contact_section .fax {
    font-size: 25px;
    font-weight: 600;
    line-height: 1;
    color: #3c2c00;
    display: flex;
    align-items: center;
  }
  .common_contact_section .fax::before {
    content: "";
    width: 22px;
    height: 22px;
    background-image: url("../img/common/fax_icon.svg");
    margin-right: 10px;
  }
  .common_contact_section .fax a {
    color: #3c2c00;
    pointer-events: none;
  }
  /*
  --------------------------------------------------------
  共通セクション　下層のmv
  --------------------------------------------------------
  */
  .common_page_mv_section {
    height: 280px;
    display: flex;
    justify-content: center;
    align-items: center;
  }
  .common_page_mv_section .page_title {
    text-align: center;
    color: #fff;
    font-family: "Noto Serif JP", serif;
  }
  .common_page_mv_section .en_title {
    font-size: 20px;
    font-weight: 500;
    line-height: 1;
  }
  .common_page_mv_section .ja_title {
    font-size: 32px;
    font-weight: 600;
    line-height: 1.3;
    margin-top: 16px;
  }
  /*
  --------------------------------------------------------
  共通セクション　パンクズ
  --------------------------------------------------------
  */
  .bread_section {
    padding-top: 24px;
  }
  .bread_section .bread_list {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
  }
  .bread_section .bread_list li {
    margin-bottom: 8px;
  }
  .bread_section .bread_list li a {
    font-weight: 400;
    line-height: 1.3;
    color: #3c2c00;
    font-size: 14px;
  }
  .bread_section .bread_list li span {
    font-weight: 400;
    line-height: 1.3;
    color: #8f8977;
    font-size: 14px;
    margin-bottom: 8px;
  }
  .bread_section .bread_list li.arrow {
    margin: 0 8px 8px;
    padding-top: 2px;
  }
  .bread_section .bread_list li.arrow img {
    width: 5px;
  }
  /*
  --------------------------------------------------------
  共通セクション　ページ下部のリンク一覧
  --------------------------------------------------------
  */
  .common_link_section01 {
    padding: 80px 0 0 0;
  }
  .common_link_section01 ul {
    display: flex;
    justify-content: space-between;
    flex-direction: column;
    align-items: center;
    margin-top: 48px;
  }
  .common_link_section01 ul li {
    width: 100%;
    margin: 1px 0;
  }
  .common_link_section01 ul li a {
    position: relative;
    width: 100%;
    height: 200px;
    overflow: hidden;
    display: block;
  }
  .common_link_section01 ul li a::after {
    content: "";
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.6);
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
  }
  .common_link_section01 ul li a img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
    transition-duration: 0.4s;
  }
  .common_link_section01 ul li a p {
    position: absolute;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    position: absolute;
    z-index: 2;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    color: #fff;
    width: 100%;
    font-family: "Noto Serif JP", serif;
    font-size: 20px;
    font-weight: 500;
    line-height: 1.2;
  }
  .common_link_section01 ul li a p span {
    min-width: 100px;
    height: 32px;
    padding: 0 3px;
    font-size: 14px;
    border-radius: 20px;
    border: solid 1px #faf9f5;
    display: flex;
    justify-content: center;
    align-items: center;
    margin-top: 12px;
  }
  .common_link_section02 {
    padding: 72px 0 80px;
    background-color: #f5f3ea;
  }
  .common_link_section02 ul {
    margin-top: 48px;
    display: flex;
    justify-content: center;
    flex-direction: column;
    align-items: center;
  }
  .common_link_section02 ul li {
    width: 100%;
    margin-right: 0;
    margin-top: 24px;
  }
  .common_link_section02 ul li:first-child {
    margin-top: 0;
  }
  .common_link_section02 ul li:last-child {
    margin-right: 0;
  }
  .common_link_section02 ul li a {
    position: relative;
    width: 100%;
    height: 155px;
    overflow: hidden;
    display: block;
  }
  .common_link_section02 ul li a::after {
    content: "";
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.6);
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
  }
  .common_link_section02 ul li a img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
    transition-duration: 0.4s;
  }
  .common_link_section02 ul li a p {
    position: absolute;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    position: absolute;
    z-index: 2;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    color: #fff;
    width: 100%;
    font-family: "Noto Serif JP", serif;
    font-size: 20px;
    font-weight: 500;
    line-height: 1.2;
  }
  /*
  --------------------------------------------------------
  共通セクション 2カラムページ内のお問い合わせブロック
  --------------------------------------------------------
  */
  .common_min_contact_area {
    margin-top: 96px;
  }
  .common_min_contact_area .contact_head_text {
    width: -moz-fit-content;
    width: fit-content;
    margin: 0 auto;
    font-family: "Noto Serif JP", serif;
    font-size: 18px;
    font-weight: 500;
    line-height: 1.38;
    display: flex;
    justify-content: center;
    border-bottom: 2px solid #f8b500;
  }
  .common_min_contact_area .common_min_contact_box {
    background-image: url("../img/common/contact_block_bg.jpg");
    padding: 24px 20px;
    margin-top: 40px;
  }
  .common_min_contact_box .contact_line01 {
    font-family: "Noto Serif JP", serif;
    font-size: 16px;
    font-weight: 600;
    line-height: 1.33;
    display: flex;
    justify-content: center;
    color: #fff;
    text-align: center;
  }
  .common_min_contact_box .contact_border {
    width: 100%;
    margin-top: 16px;
  }
  .common_min_contact_box .contact_link_flex {
    display: flex;
    justify-content: space-between;
    flex-direction: column;
    align-items: center;
    margin-top: 20px;
  }
  .common_min_contact_box .entry_button {
    width: 100%;
    height: 85px;
  }
  .common_min_contact_box .entry_button .button_text {
    font-size: 19px;
    font-weight: bold;
    line-height: 1.25;
    text-align: center;
  }
  .common_min_contact_box .entry_button .button_sub_text {
    margin-top: 3px;
    display: flex;
    justify-content: center;
    align-items: center;
    min-width: auto;
    width: 216px;
    height: 20px;
    border-radius: 13px;
    background-color: #fff;
    font-weight: bold;
    color: #f8a401;
    font-size: 14px;
  }
  .common_min_contact_box .contact_button {
    margin-top: 24px;
    width: 100%;
    height: 85px;
  }
  .common_min_contact_box .contact_button .button_text {
    font-size: 19px;
    font-weight: bold;
  }
  .common_min_contact_box .contact_button .button_sub_text {
    font-weight: 500;
    line-height: 1;
    text-align: center;
    margin-top: 6px;
    font-size: 12px;
  }
  .common_min_contact_box .tel_text {
    margin-top: 36px;
    font-size: 18px;
    line-height: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    color: #fff;
  }
  .common_min_contact_box .tel_text span {
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 0 12px;
    height: 26px;
    border-radius: 13px;
    background-color: #fff;
    font-weight: 500;
    line-height: 1;
    margin-right: 0;
    margin-bottom: 8px;
    color: #453d2a;
  }
  .common_min_contact_box .tel_flex {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    margin-top: 20px;
  }
  .common_min_contact_box .tel_flex .tel_block {
    display: flex;
    align-items: center;
    flex-direction: column;
  }
  .common_min_contact_box .tel_flex .tel {
    display: flex;
    align-items: center;
    font-family: "Noto Serif JP", serif;
    font-size: 25px;
    font-weight: 600;
    line-height: 1;
    color: #fff;
    pointer-events: auto;
    margin-right: 12px;
    padding-bottom: 3px;
  }
  .common_min_contact_box .tel_flex .tel::before {
    content: "";
    width: 19px;
    height: 26px;
    background-image: url("../img/common/tel_icon_white.svg");
    margin-right: 12px;
  }
  .common_min_contact_box .tel_flex p {
    font-size: 12px;
    font-weight: normal;
    line-height: 1;
    color: #fff;
    margin-top: 8px;
  }
  .common_min_contact_box .tel_flex .tel_border {
    width: 100%;
    height: 1px;
    margin: 12px 0 0;
    background-color: #fff;
  }
  .common_min_contact_box .tel_flex .fax {
    margin-top: 12px;
    display: flex;
    align-items: center;
    font-family: "Noto Serif JP", serif;
    font-size: 25px;
    font-weight: 600;
    line-height: 1;
    color: #fff;
    pointer-events: none;
  }
  .common_min_contact_box .tel_flex .fax a {
    color: #fff;
    pointer-events: none;
  }
  .common_min_contact_box .tel_flex .fax::before {
    content: "";
    width: 26px;
    height: 26px;
    background-image: url("../img/common/fax_icon_white.svg");
    margin-right: 16px;
  }
  /*
  --------------------------------------------------------
  トップページ
  --------------------------------------------------------
  */
  body.top_body {
    position: relative;
  }
  .top_mv_section {
    padding: 90px 0 140px;
    position: relative;
  }
  .top_mv_section::before {
    content: "";
    width: 100%;
    height: 100%;
    background-image: url("../img/top/top_mv_sp.jpg");
    position: absolute;
    top: 0;
    left: 0;
    z-index: -10;
  }
  .top_mv_section .mv_container {
    max-width: 90%;
    padding: 0;
    margin: 0 auto;
  }
  .top_mv_section .mv_head {
    font-size: 30px;
    font-weight: 600;
    letter-spacing: 0;
    text-align: left;
    color: #fff;
    line-height: 1;
    font-feature-settings: "palt";
    margin-bottom: 20px;
    white-space: nowrap;
  }
  .top_mv_section .mv_head span {
    border-bottom: 1px solid #fff;
    display: inline-block;
    padding-bottom: 2px;
  }
  .top_mv_section .mv_head span:first-child {
    margin-bottom: 20px;
  }
  .top_mv_section .p01 {
    font-size: 10px;
    font-weight: 500;
    line-height: 1.5;
    color: #fff;
    margin-bottom: 32px;
    opacity: 0.6;
    transform: scale(0.85);
    transform-origin: left;
    white-space: nowrap;
  }
  .top_mv_section .entry_button {
    width: 300px;
    height: 60px;
    margin-top: 40px;
  }
  .top_mv_section .entry_button .button_text {
    font-size: 17px;
    font-weight: bold;
    line-height: 1;
    color: #fff;
  }
  .top_mv_section .entry_button .button_sub_text {
    margin-top: 5px;
    display: flex;
    justify-content: center;
    align-items: center;
    height: 18px;
    border-radius: 13px;
    background-color: #fff;
    padding: 0 12px;
    font-size: 14px;
    font-weight: bold;
    letter-spacing: 1;
    color: #f8a401;
  }
  .top_mv_section .contact_button {
    width: 300px;
    height: 60px;
    margin-top: 16px;
  }
  .top_mv_section .contact_button .button_text {
    font-size: 17px;
    font-weight: bold;
  }
  .top_mv_section .contact_button .button_sub_text {
    font-weight: 500;
    line-height: 1;
    text-align: center;
    margin-top: 6px;
    font-size: 12px;
  }
  .top_section01 {
    padding: 80px 0 40px;
    position: relative;
  }
  .top_section01::before {
    content: "";
    width: 100%;
    height: 100%;
    background-color: #faf9f5;
    position: absolute;
    top: 0;
    left: 0;
    z-index: -10;
  }
  .top_section01 .white_box {
    max-width: 100%;
    width: 345px;
    min-width: 345px;
    margin: 0 auto;
    position: relative;
    background-color: #fff;
  }
  .top_section01 .white_box_inner {
    position: relative;
    overflow: hidden;
    padding: 56px 20px;
  }
  .top_section01 .deco_text {
    position: absolute;
    font-family: "Noto Serif JP", serif;
    font-size: 80px;
    font-weight: 500;
    line-height: 1;
    letter-spacing: 0.04em;
  }
  .top_section01 .deco_text01_01, .top_section01 .deco_text01_02 {
    left: -4px;
    top: -53px;
  }
  .top_section01 .deco_text01_01 {
    color: #fff;
    z-index: 1;
  }
  .top_section01 .deco_text01_02 {
    color: #faf9f5;
    z-index: 2;
  }
  .top_section01 .deco_text02_01, .top_section01 .deco_text02_02 {
    right: -13px;
    bottom: -48px;
  }
  .top_section01 .deco_text02_01 {
    color: #fff;
    z-index: 1;
  }
  .top_section01 .deco_text02_02 {
    color: #faf9f5;
    z-index: 2;
  }
  .top_section01 .p01 {
    display: flex;
    justify-content: center;
    margin-top: 20px;
    line-height: 1.56;
  }
  .top_section01 .service_kind {
    margin-top: 40px;
    font-size: 20px;
    font-weight: 500;
    letter-spacing: 0.08em;
    display: flex;
    align-items: center;
  }
  .top_section01 .service_kind::before {
    content: "";
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background-color: #f8b500;
    margin-right: 10px;
  }
  .top_section01 .service_list {
    margin-top: 20px;
    display: flex;
    justify-content: space-between;
    flex-direction: column;
  }
  .top_section01 .service_list li {
    width: 100%;
    margin-top: 36px;
  }
  .top_section01 .service_list li:first-child {
    margin-top: 0;
  }
  .top_section01 .service_block {
    width: 100%;
    display: block;
  }
  .top_section01 .service_block .service_thumb {
    height: 205px;
    overflow: hidden;
    position: relative;
  }
  .top_section01 .service_block .service_thumb img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
    transition: 0.4s;
  }
  .top_section01 .service_block .service_flex {
    display: flex;
    justify-content: space-between;
    margin-top: 20px;
  }
  .top_section01 .service_block .title_frame {
    width: 100%;
    padding-right: 24px;
    font-family: "Noto Serif JP", serif;
  }
  .top_section01 .service_block .radi {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-shrink: 0;
    width: 25px;
    height: 25px;
    border: solid 1px #3c2c00;
    border-radius: 50%;
  }
  .top_section01 .service_block .radi::after {
    content: "";
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 3px 0 3px 5.5px;
    border-color: transparent transparent transparent #3c2c00;
  }
  .top_section01 .service_block .service_ja {
    font-size: 19px;
    font-weight: 400;
    line-height: 1.3;
    color: #3c2c00;
  }
  .top_section01 .service_block .service_en {
    margin-top: 6px;
    font-size: 12px;
    font-weight: 300;
    line-height: 1.3;
    color: #9d9275;
  }
  .top_section01 .service_link {
    margin: 40px auto 0;
  }
  .top_section02 {
    padding: 40px 0 0;
    position: relative;
  }
  .top_section02::before {
    content: "";
    width: 100%;
    height: calc(100% - 12px);
    background-color: #faf9f5;
    position: absolute;
    top: 0;
    left: 0;
    z-index: -10;
  }
  .top_section02 .p01 {
    display: flex;
    justify-content: center;
    line-height: 1.75;
    max-width: 345px;
    margin: 20px auto 0;
  }
  .top_section02 .reason_list {
    max-width: 345px;
    padding: 0;
    margin: 32px auto 0;
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    flex-wrap: wrap;
  }
  .top_section02 .reason_block {
    width: 100%;
    position: relative;
    display: flex;
    align-items: flex-start;
    flex-direction: column;
    background-color: transparent;
  }
  .top_section02 .reason_block .reason_head {
    width: 305px;
    background-color: #fff;
    position: relative;
    z-index: 1;
    left: 0;
    right: 0;
    top: auto;
    margin: auto;
  }
  .top_section02 .reason_block .reason_head_frame {
    position: relative;
  }
  .top_section02 .reason_block .reason_icon {
    position: absolute;
    width: 56px;
    border-radius: 50%;
    top: -16px;
    left: -24px;
  }
  .top_section02 .reason_block .reason_head_inner {
    width: 100%;
    height: auto;
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    overflow: hidden;
    padding: 12px;
    min-height: 65px;
  }
  .top_section02 .reason_block .reason_head_inner::after {
    content: "";
    width: 58px;
    height: 58px;
    border-radius: 50%;
    background-color: #f8b500;
    position: absolute;
    right: -35px;
    bottom: -35px;
  }
  .top_section02 .reason_block .reason_head_text {
    font-family: "Noto Serif JP", serif;
    font-size: 19px;
    font-weight: 600;
    line-height: 1.3;
    text-align: center;
    font-feature-settings: "palt";
    letter-spacing: 0;
  }
  .top_section02 .reason_block .reason_thumb {
    width: 100%;
    height: 155px;
    flex-shrink: 0;
    margin-top: -24px;
  }
  .top_section02 .reason_block .reason_thumb img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
  }
  .top_section02 .reason_block .reason_num {
    font-size: 70px;
  }
  .top_section02 .reason_block .text_area {
    width: 100%;
    padding: 24px 20px;
    background-color: #fff;
  }
  .top_section02 .reason_block .reason_text {
    line-height: 1.56;
  }
  .top_section02 .reason_block02 {
    /* margin-top: 60px; */
    transform: translateY(0);
    margin-top: 48px;
  }
  .top_section02 .reason_block03 {
    margin-top: 48px;
  }
  .top_section02 .reason_block04 {
    margin-top: 48px;
    transform: translateY(0);
  }
  .top_section02 .banner {
    display: block;
    width: 100%;
    max-width: 345px;
    margin: 40px auto 0;
  }
  .top_section02 .banner img {
    width: 100%;
  }
  .top_section03 {
    padding: 80px 0 60px;
  }
  .top_section03 .p01 {
    margin-top: 20px;
    line-height: 1.56;
    text-align: left;
  }
  .top_section03 .faq_area {
    margin-top: 24px;
  }
  .top_section03 .faq_tab_list {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    align-items: flex-start;
  }
  .top_section03 .faq_tab {
    cursor: pointer;
    transition-duration: 0.4s;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 48%;
    height: 50px;
    font-family: "Noto Serif JP", serif;
    font-size: 15px;
    font-weight: 500;
    line-height: 1.6;
    text-align: center;
    margin-top: 10px;
    border: 1px solid rgba(248, 181, 0, 0.28);
    position: relative;
  }
  .top_section03 .faq_tab:first-child {
    width: 100%;
    height: 55px;
  }
  .top_section03 .faq_tab:last-child {
    border-right: solid 1px rgba(248, 181, 0, 0.28);
  }
  .top_section03 .faq_tab.active {
    background-color: #f8b500;
    pointer-events: none;
  }
  .top_section03 .faq_tab.active::before {
    content: none;
    width: calc(100% + 2px);
    height: 2px;
    background-color: #f8b500;
    position: absolute;
    bottom: -2px;
    left: -2px;
  }
  .top_section03 .faq_tab.active::after {
    content: none;
  }
  .top_section03 .faq_frame {
    margin-top: 30px;
  }
  .top_section03 .faq_link {
    margin: 30px auto 0;
  }
  .top_section04 {
    position: relative;
    padding: 40px 0 60px;
  }
  .top_section04::before {
    content: "";
    width: 100%;
    /* max-width: */
    height: 100%;
    background-image: url("../img/top/top_info_bg.jpg");
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    z-index: -5;
  }
  .top_section04 .flex {
    display: flex;
    justify-content: flex-start;
    align-items: flex-start;
    flex-direction: column;
    max-width: 345px;
    margin: 0 auto;
  }
  .top_section04 .left {
    flex-shrink: 0;
    padding-left: 0;
    margin-right: 0;
  }
  .top_section04 .left .p01 {
    margin-top: 20px;
    line-height: 1.56;
  }
  .top_section04 .info_link {
    margin: 20px auto 0;
  }
  .top_section04 .right {
    margin-top: 24px;
    width: 100%;
    flex-shrink: 1;
    position: relative;
  }
  .top_section04 .right .swiper_block {
    padding-left: 0;
  }
  .top_section04 .swiper_button_flex {
    display: flex;
    justify-content: flex-end;
    align-items: center;
    position: static;
    bottom: auto;
    right: auto;
    margin-right: 0;
    margin-bottom: 12px;
    /* height:40px; */
  }
  .top_section04 .swiper_info_button {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    border: 1px solid #3c2c00;
    display: flex;
    justify-content: center;
    align-items: center;
    position: static;
    left: auto;
    right: auto;
    top: auto;
    bottom: auto;
    margin-top: 0;
  }
  .top_section04 .swiper_info_button::after {
    content: "";
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 4px 0 4px 8px;
    border-color: transparent transparent transparent #3c2c00;
  }
  .top_section04 .swiper_info_button_prev {
    margin-right: 20px;
    transform: rotateZ(180deg);
  }
  .top_section04 .info_pagination {
    position: static;
    bottom: auto;
    right: auto;
    display: flex;
    justify-content: center;
    align-items: center;
    margin-top: 20px;
    width: 100%;
  }
  .top_section04 .info_pagination .swiper-pagination-bullet {
    width: 10px;
    height: 10px;
    margin: 0 5px;
    opacity: 1;
    background: #fff;
    transition-duration: 0.4s;
  }
  .top_section04 .info_pagination .swiper-pagination-bullet-active {
    opacity: 1;
    background-color: #2a2523;
  }
  .top_section04 .swiper_block {
    width: 375px;
    /* padding:0 20px; */
    margin-left: -15px;
  }
  .top_section04 .info_slide {
    padding: 0 15px;
    width: 375px;
  }
  .top_section04 .info_slide .info_card {
    display: block;
    width: 100%;
    min-height: 240px;
    box-shadow: 0 0 9.6px 0.4px rgba(253, 175, 9, 0.09);
    background-color: #fff;
    transition-duration: 0.4s;
    color: #3c2c00;
  }
  .top_section04 .info_slide .info_card:hover {
    background-color: #fffbf0;
  }
  .top_section04 .info_card .info_head {
    padding: 12px 20px;
    border-bottom: 1px solid rgba(248, 181, 0, 0.28);
    font-family: "Noto Serif JP", serif;
  }
  .top_section04 .info_card .info_date {
    margin-bottom: 12px;
    font-weight: 300;
    line-height: 1;
  }
  .top_section04 .info_card .info_title {
    font-size: 18px;
    font-weight: 400;
    line-height: 1.45;
    min-height: 56px;
  }
  .top_section04 .info_card .info_body {
    padding: 12px 20px;
  }
  .top_section04 .info_card .info_text {
    font-weight: 400;
    line-height: 1.56;
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 4;
  }
  .top_section05 {
    padding: 40px 0 60px;
  }
  .top_section05 .flex {
    display: flex;
    align-items: flex-start;
    flex-direction: column;
  }
  .top_section05 .flex .left {
    flex-shrink: 0;
    padding-right: 0;
  }
  .top_section05 .left .p01 {
    line-height: 1.56;
    margin-top: 20px;
  }
  .top_section05 .news_link {
    margin: 32px auto 0;
  }
  .top_section05 .flex .right {
    width: 100%;
    padding-top: 30px;
  }
  .top_section06 {
    padding: 40px 0 0;
    position: relative;
  }
  .top_section06::before {
    content: "";
    width: 100%;
    height: 100%;
    background-image: url("../img/top/top_guide_bg.jpg");
    position: absolute;
    top: 0;
    left: 0;
    z-index: -10;
  }
  .top_section06 .flex {
    display: flex;
    max-width: 345px;
    margin: 0 auto;
    padding: 0;
    flex-direction: column;
  }
  .top_section06 .left {
    width: 100%;
    background-color: #fff;
    padding: 16px 20px 30px;
  }
  .top_section06 .left .guide_title {
    width: -moz-fit-content;
    width: fit-content;
    margin: 0 auto;
    font-size: 17px;
    font-weight: 600;
    line-height: 1.23;
    position: relative;
    display: flex;
    align-items: center;
  }
  .top_section06 .left .guide_title::before {
    content: "";
    width: 70px;
    height: 60px;
    background-image: url("../img/common/kyoshin_logo.png");
    position: static;
    left: auto;
    top: 0;
    transform: translateY(0);
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    margin-right: 4px;
  }
  .top_section06 .left .guide_head {
    font-size: 19px;
    line-height: 1.42;
    margin-top: 18px;
    text-align: left;
  }
  .top_section06 .left .border {
    width: 70px;
    height: 2px;
    margin: 16px auto 0;
    background-color: #ea9a3a;
  }
  .top_section06 .left .guide_text {
    line-height: 1.56;
    margin-top: 16px;
  }
  .top_section06 .left .guide_link {
    margin: 24px auto 0;
  }
  .top_section06 .right {
    position: relative;
    width: 100%;
    height: 105px;
  }
  .top_section06 .right .guide01 {
    position: absolute;
    width: 170px;
    left: 20px;
    top: 30px;
  }
  .top_section06 .right .guide02 {
    position: absolute;
    width: 100px;
    left: auto;
    bottom: auto;
    right: 20px;
    top: 52px;
  }
  body.top_body .common_contact_section {
    padding-top: 200px;
  }
  body.top_body .common_contact_section::after {
    top: 160px;
  }
  body.service_body {
    position: relative;
  }
  /*
  --------------------------------------------------------
  業務紹介
  --------------------------------------------------------
  */
  .service_mv_section {
    background-image: url("../img/service/service_mv.jpg");
  }
  .service_section01 {
    padding: 40px 0 80px;
  }
  .service_section01 p {
    line-height: 1.75;
    text-align: left;
    /* font-size: 14px; */
  }
  .service_section02 {
    padding: 56px 0;
    background-color: #faf9f5;
  }
  .service_section02 .flex {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
  }
  .service_section02 .flex .anchor_link {
    cursor: pointer;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 280px;
    height: 60px;
    border-radius: 38px;
    border: solid 2px #f8b500;
    background-color: #fff;
    font-family: "Noto Serif JP", serif;
    font-size: 18px;
    font-weight: 400;
    line-height: 1;
    letter-spacing: 1.92px;
    color: #3c2c00;
    position: relative;
    transition-duration: 0.4s;
    margin: 16px 0;
  }
  .service_section02 .flex .anchor_link span {
    width: 24px;
    height: 24px;
    border-radius: 50%;
    border: solid 1px #f8b501;
    background-color: #fff;
    display: flex;
    justify-content: center;
    align-items: center;
    position: absolute;
    right: 20px;
    top: 0;
    bottom: 0;
    margin: auto;
  }
  .service_section02 .flex .anchor_link span::after {
    content: "";
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 5px 3px 0 3px;
    border-color: #f8b501 transparent transparent transparent;
  }
  .service_section03 {
    padding: 80px 0 40px;
  }
  .service_section04 {
    padding: 40px 0 140px;
  }
  .service_section .service_list {
    margin-top: 64px;
  }
  .service_section .service_block {
    max-width: 345px;
    margin: 80px auto 0;
    position: relative;
  }
  .service_section .service_block::after {
    content: "";
    width: 200vw;
    height: calc(100% - 120px);
    background-color: #faf9f5;
    z-index: -2;
    position: absolute;
    bottom: -20px;
  }
  .service_section .service_block:first-child {
    margin-top: 0;
  }
  .service_section .service_block .service_flex {
    display: flex;
    flex-direction: column;
    align-items: center;
    color: #3c2c00;
  }
  .service_section .service_block .service_thumb {
    width: 100%;
    height: 225px;
    flex-shrink: 0;
    position: relative;
    overflow: hidden;
  }
  .service_section .service_block .service_thumb::before {
    content: none;
  }
  .service_section .service_block .service_thumb img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
    transition-duration: 0.4s;
  }
  .service_section .service_block .text_area {
    width: 100%;
    position: relative;
    margin-top: 24px;
  }
  .service_section .service_block .title_flex {
    display: flex;
    align-items: flex-start;
  }
  .service_section .service_block .service_title {
    font-family: "Noto Serif JP", serif;
    font-size: 20px;
    font-weight: 400;
    line-height: 1.3;
  }
  .service_section .service_block .radi {
    flex-shrink: 0;
    margin-left: 16px;
    width: 32px;
    height: 32px;
    border-radius: 50%;
    border: solid 1px #3c2c00;
    display: flex;
    justify-content: center;
    align-items: center;
  }
  .service_section .service_block .radi::after {
    content: "";
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 4px 0 4px 7.5px;
    border-color: transparent transparent transparent #3c2c00;
  }
  .service_section .service_block .service_text {
    margin-top: 24px;
    font-weight: 400;
    line-height: 2;
    color: #333;
    letter-spacing: 0.12em;
    font-size: 14px;
  }
  .service_section .service_block .deco_text {
    display: none;
  }
  .service_section .service_block.row::after {
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
  }
  .service_section .service_block.row .service_flex {
    flex-direction: column;
  }
  .service_section .service_block.row .service_thumb {
    margin-left: 0;
  }
  .service_section .service_block.reverce::after {
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
  }
  .service_section .service_block.reverce .service_thumb {
    margin-right: 0;
    margin-left: 0;
  }
  /*
  --------------------------------------------------------
  労働保険事務組合とは？
  --------------------------------------------------------
  */
  body.kumiai_body {
    position: relative;
  }
  .kumiai_mv_section {
    background-image: url("../img/kumiai/kumiai_mv.jpg");
  }
  .kumiai_section01 {
    padding: 80px 0 40px;
  }
  .kumiai_section01 .flex {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-direction: column;
    margin-top: 48px;
  }
  .kumiai_section01 .flex .thumb {
    width: 100%;
    height: 225px;
    position: relative;
  }
  .kumiai_section01 .thumb .kumiai01 {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
  }
  .kumiai_section01 .thumb .kumiai02 {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
    position: absolute;
    left: -16px;
    bottom: -16px;
    z-index: -1;
  }
  .kumiai_section01 .thumb .kumiai03 {
    width: 130px;
    position: absolute;
    right: -20px;
    bottom: -60px;
    z-index: 1;
  }
  .kumiai_section01 .text_area {
    width: 100%;
    margin-top: 120px;
  }
  .kumiai_section01 .text_area p {
    font-size: 15px;
    font-weight: 400;
    line-height: 2;
  }
  .kumiai_section01 .text_area p span {
    font-weight: 500;
    background: linear-gradient(to top, rgba(248, 181, 0, 0.32) 0%, rgba(248, 181, 0, 0.32) 40%, transparent 40%, transparent 100%);
  }
  .kumiai_section01 .range_box {
    margin-top: 80px;
    position: relative;
    padding: 40px 16px;
    display: flex;
    justify-content: center;
    align-items: center;
    background-color: #faf9f5;
  }
  .kumiai_section01 .range_box .head {
    font-family: "Noto Serif JP", serif;
    font-size: 24px;
    font-weight: 500;
    width: 100%;
    line-height: 1;
    text-align: center;
    color: #3c2c00;
    position: absolute;
    top: -12px;
    left: 0;
  }
  .kumiai_section01 .range_box ul li {
    display: flex;
  }
  .kumiai_section01 .range_box ul li .num {
    width: 32px;
    flex-shrink: 0;
    font-family: "Noto Serif JP", serif;
    font-size: 18px;
    font-weight: bold;
    line-height: 1;
    color: #68a357;
    padding-top: 1px;
  }
  .kumiai_section01 .range_box ul li p {
    line-height: 1.6;
    margin-bottom: 10px;
    font-size: 14px;
  }
  .kumiai_section02 {
    padding: 40px 0 0;
  }
  .kumiai_section02 .merit_list {
    margin-top: 48px;
  }
  .kumiai_section02 .merit_block {
    padding: 24px 0;
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
  }
  .kumiai_section02 .merit_block .text_box {
    width: 100%;
    min-height: auto;
    position: relative;
    padding: 24px 16px;
  }
  .kumiai_section02 .merit_block .text_box::before {
    content: "";
    width: 100px;
    height: 2px;
    background-color: #f8b500;
    position: absolute;
    top: 0;
    left: 0;
  }
  .kumiai_section02 .merit_block .head_flex {
    display: flex;
    font-family: "Noto Serif JP", serif;
  }
  .kumiai_section02 .merit_block .head_flex .num {
    flex-shrink: 0;
    /* width:96px; */
    margin-right: 12px;
    font-size: 32px;
    font-weight: 400;
    line-height: 1;
    letter-spacing: 0;
  }
  .kumiai_section02 .merit_block .head_flex .merit_title {
    font-size: 18px;
    font-weight: 400;
    line-height: 1.5;
    padding-top: 4px;
  }
  .kumiai_section02 .merit_block .merit_text {
    margin-top: 40px;
    line-height: 2;
    font-size: 14px;
    font-feature-settings: "palt";
  }
  .kumiai_section02 .merit_block .merit_text span {
    font-weight: 500;
    background: linear-gradient(to top, rgba(248, 181, 0, 0.32) 0%, rgba(248, 181, 0, 0.32) 40%, transparent 40%, transparent 100%);
  }
  .kumiai_section02 .merit_block .thumb {
    display: none;
  }
  .kumiai_section02 .merit_block .kumiai_merit01, .kumiai_section02 .merit_block .kumiai_merit02, .kumiai_section02 .merit_block .kumiai_merit03 {
    width: 100%;
    margin: 24px auto 0;
  }
  .kumiai_section02 .merit_block:nth-child(odd):before {
    content: "";
    width: 100vw;
    height: 100%;
    background-color: #faf9f5;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    z-index: -3;
  }
  .kumiai_section02 .merit_block:nth-child(odd) .text_box {
    background-color: #fff;
  }
  .kumiai_section02 .merit_block:nth-child(even) {
    flex-direction: column;
  }
  .kumiai_section02 .merit_block:nth-child(even) .text_box {
    background-color: #faf9f5;
  }
  .kumiai_section02 .merit_block02 .text_box {
    padding-top: 40px;
  }
  /*
  --------------------------------------------------------
  民間労災との比較
  --------------------------------------------------------
  */
  body.compensation_body {
    position: relative;
  }
  .compensation_mv_section {
    background-image: url("../img/compensation/compensation_mv.jpg");
  }
  .compensation_section table {
    width: 100%;
  }
  .compensation_section table th, .compensation_section table td {
    border: 1px solid rgba(60, 44, 0, 0.14);
    text-align: center;
    font-feature-settings: "palt";
  }
  .compensation_section table th {
    width: 50%;
    padding: 20px 8px;
    font-weight: 500;
    line-height: 1.25;
    font-size: 14px;
    background-color: #f4f2ea;
  }
  .compensation_section table td {
    width: 25%;
    padding: 12px 0;
    line-height: 1.5;
    font-size: 13px;
    letter-spacing: 0.03em;
  }
  .compensation_section table td.bg_tg {
    background-color: #faf9f5;
    font-weight: 500;
  }
  .compensation_section table td.bg_tg .remark {
    font-weight: 400;
    font-size: 14px;
  }
  .compensation_section table .mini {
    font-size: 12px;
  }
  .compensation_section table .medium {
    font-size: 15px;
  }
  .compensation_section table .big {
    font-size: 17px;
  }
  .compensation_section table .strong {
    font-weight: 500;
  }
  .compensation_section table .red {
    color: #e63208;
  }
  .compensation_section table .border {
    font-weight: 500;
    background: linear-gradient(to top, rgba(248, 181, 0, 0.32) 0%, rgba(248, 181, 0, 0.32) 40%, transparent 40%, transparent 100%);
  }
  .compensation_section01 {
    padding: 64px 0 40px;
  }
  .compensation_section01 .p01 {
    line-height: 1.75;
    text-align: left;
    font-size: 16px;
  }
  .compensation_section02 {
    padding: 40px 0 50px;
  }
  .compensation_section02 .info_block {
    margin-top: 60px;
    border: 1px solid rgba(60, 44, 0, 0.14);
  }
  .compensation_section02 .info_head {
    height: auto;
    background-color: #faf9f5;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    padding: 24px 12px;
  }
  .compensation_section02 .info_head_text {
    text-align: center;
    line-height: 1.5;
    position: relative;
    padding-left: 0;
    font-size: 14px;
  }
  .compensation_section02 .info_head_text::before {
    display: block;
    content: "";
    width: 100px;
    height: 100px;
    background-image: url("../img/compensation/compensation_icon01.png");
    position: static;
    left: 0;
    top: 0;
    transform: translateY(0);
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    margin: 0 auto 24px;
  }
  .compensation_section02 .info_head_text span {
    font-size: 16px;
    font-weight: 500;
  }
  .compensation_section02 .info_body {
    padding: 40px 16px;
  }
  .compensation_section02 .triangle {
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 25px 36px 0 36px;
    border-color: #f8b500 transparent transparent transparent;
    margin: 40px auto 0;
  }
  .compensation_section02 .table_frame01 {
    overflow-x: scroll;
  }
  .compensation_section02 .table_frame01 table {
    width: 680px;
  }
  .compensation_section02 .table_title {
    margin-top: 40px;
    font-family: "Noto Serif JP", serif;
    font-size: 20px;
    font-weight: 500;
    text-align: center;
    line-height: 1.3;
  }
  .compensation_section02 .table_frame02 {
    margin-top: 40px;
    overflow-x: scroll;
  }
  .compensation_section02 .table_frame02 table {
    width: 680px;
  }
  .compensation_section03 {
    padding: 50px 0 0;
  }
  .compensation_section03 .info_block {
    margin-top: 48px;
    border: 1px solid rgba(60, 44, 0, 0.14);
  }
  .compensation_section03 .info_head {
    padding: 24px 12px;
    background-color: #faf9f5;
    display: flex;
    justify-content: center;
    align-items: center;
  }
  .compensation_section03 .info_head .info_head_text_frame {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    padding-left: 0;
  }
  .compensation_section03 .info_head .info_head_text_frame::before {
    display: block;
    content: "";
    width: 118px;
    height: 100px;
    background-image: url("../img/compensation/compensation_icon02.png");
    position: static;
    left: 0;
    top: 0;
    transform: translateY(0);
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
  }
  .compensation_section03 .info_head .info_head_text {
    font-size: 16px;
    font-weight: 500;
    line-height: 1.7;
    text-align: center;
  }
  .compensation_section03 .info_head ul {
    margin-top: 10px;
  }
  .compensation_section03 .info_head ul li {
    line-height: 1.5;
    padding-left: 16px;
    position: relative;
    font-size: 14px;
    margin-bottom: 8px;
  }
  .compensation_section03 .info_head ul li::before {
    content: "・";
    line-height: 1.5;
    position: absolute;
    top: 0;
    left: 0;
  }
  .compensation_section03 .info_head ul li span {
    font-weight: 500;
  }
  .compensation_section03 .info_body {
    padding: 40px 16px;
  }
  .compensation_section03 .table_frame03 {
    overflow-x: scroll;
  }
  .compensation_section03 .table_frame03 table {
    width: 680px;
  }
  /*
  --------------------------------------------------------
  労働保険事務代行
  --------------------------------------------------------
  */
  body.labor_body {
    position: relative;
  }
  .labor_mv_section {
    background-image: url("../img/labor/labor_mv.jpg");
  }
  .labor_section01 {
    padding-bottom: 80px;
  }
  .labor_section01 .p01 {
    margin-top: 40px;
    font-size: 17px;
    font-weight: 600;
    line-height: 1;
    width: -moz-fit-content;
    width: fit-content;
    padding-bottom: 12px;
    border-bottom: 2px solid #f8b500;
  }
  .labor_section01 .flex {
    display: flex;
    margin-top: 32px;
    flex-direction: column-reverse;
    align-items: center;
  }
  .labor_section01 .flex .thumb {
    width: 100%;
    flex-shrink: 0;
    margin-left: 0;
    padding-top: 8px;
  }
  .labor_section01 .flex .thumb img {
    width: 100%;
  }
  .labor_section01 .flex .text_area {
    width: 100%;
    margin-top: 32px;
  }
  .labor_section01 .flex .text_area p + p {
    margin-top: 10px;
  }
  .labor_section02 {
    padding-bottom: 80px;
  }
  .labor_section02 h3 {
    margin-top: 56px;
  }
  .labor_section02 .head01 {
    margin-top: 40px;
  }
  .labor_section02 .p01 {
    margin-top: 24px;
  }
  .labor_section02 .case_box {
    padding: 40px 16px;
    background-color: #faf9f5;
    margin-top: 88px;
    position: relative;
  }
  .labor_section02 .case_box .case_box_head {
    font-size: 21px;
    font-weight: 500;
    line-height: 1;
    display: flex;
    justify-content: center;
    width: 100%;
    position: absolute;
    left: 0;
    top: -14px;
    font-feature-settings: "palt";
  }
  .labor_section02 .case_block {
    display: flex;
    flex-direction: column;
    align-items: center;
  }
  .labor_section02 .case_block .case_thumb {
    width: 100%;
    flex-shrink: 0;
  }
  .labor_section02 .case_block .case_thumb img {
    width: 100%;
  }
  .labor_section02 .case_block .case_text {
    width: 100%;
    margin-top: 32px;
  }
  .labor_section02 .case_block .case_title {
    font-family: "Noto Serif JP", serif;
    font-size: 20px;
    font-weight: 500;
    line-height: 1;
    display: flex;
    align-items: center;
  }
  .labor_section02 .case_block .case_title::before {
    content: "";
    width: 12px;
    height: 12px;
    margin-right: 10px;
    background-color: #3c2c00;
  }
  .labor_section02 .case_block ul {
    margin-top: 16px;
  }
  .labor_section02 .case_block ul li {
    line-height: 1.7;
    display: flex;
    font-size: 14px;
    margin-bottom: 4px;
  }
  .labor_section02 .case_block ul li::before {
    content: "・";
    font-size: 14px;
    line-height: 1.7;
  }
  .labor_section02 .case_block01 .case_text {
    padding-left: 0;
  }
  .labor_section02 .case_block02 {
    flex-direction: column;
    margin-top: 56px;
  }
  .labor_section02 .case_block02 .case_text {
    padding-right: 0;
  }
  .labor_section02 .kind_text01 {
    margin-top: 24px;
  }
  .labor_section02 .kind_box {
    margin-top: 32px;
    overflow-y: scroll;
  }
  .labor_section02 .kind_box img {
    width: 600px;
  }
  .labor_section02 .flow_box {
    margin-top: 32px;
  }
  .labor_section02 .flow_box img {
    width: 600px;
  }
  .labor_section03 h3 {
    margin-top: 56px;
  }
  .labor_section03 .head01 {
    margin-top: 40px;
  }
  .labor_section03 .flex {
    display: flex;
    flex-direction: column;
    align-items: center;
    margin-top: 32px;
  }
  .labor_section03 .flex .thumb {
    width: 100%;
    flex-shrink: 0;
    padding-top: 0;
  }
  .labor_section03 .flex .thumb img {
    width: 100%;
  }
  .labor_section03 .flex .text_area {
    width: 100%;
    padding-left: 0;
    margin-top: 32px;
  }
  .labor_section03 .flex .text_area p + p {
    margin-top: 10px;
  }
  .labor_section03 .process_text {
    margin-top: 24px;
  }
  .labor_section03 .process_box {
    margin-top: 28px;
    overflow-x: scroll;
  }
  .labor_section03 .process_box img {
    width: 600px;
  }
  .labor_section03 .flow_box {
    margin-top: 40px;
    overflow-x: scroll;
  }
  .labor_section03 .flow_box img {
    width: 600px;
  }
  .labor_section03 .offer_text {
    margin-top: 32px;
  }
  .labor_section03 .offer_box {
    margin-top: 32px;
    overflow-x: scroll;
  }
  .labor_section03 .offer_box img {
    width: 600px;
  }
  /*
  --------------------------------------------------------
  行政機関の調査対応
  --------------------------------------------------------
  */
  body.agency_body {
    position: relative;
  }
  .agency_mv_section {
    background-image: url("../img/agency/agency_mv.jpg");
  }
  .agency_section01 {
    padding-bottom: 80px;
  }
  .agency_section01 .p01 {
    margin-top: 40px;
    font-size: 17px;
    font-weight: 600;
    line-height: 1.4;
    width: -moz-fit-content;
    width: fit-content;
    padding-bottom: 12px;
    border-bottom: 2px solid #f8b500;
  }
  .agency_section01 .flex {
    display: flex;
    flex-direction: column-reverse;
    align-items: center;
    margin-top: 32px;
  }
  .agency_section01 .flex .thumb {
    width: 100%;
    flex-shrink: 0;
    padding-top: 6px;
    margin-left: 0;
  }
  .agency_section01 .flex .thumb img {
    width: 100%;
  }
  .agency_section01 .flex .text_area {
    width: 100%;
    margin-top: 32px;
  }
  .agency_section01 .flex .text_area p {
    letter-spacing: 0.16em;
  }
  .agency_section01 .p02 {
    margin-top: 40px;
  }
  .agency_section01 .p03 {
    margin-top: 10px;
  }
  .agency_section02 {
    padding-bottom: 80px;
  }
  .agency_section02 h3 {
    margin-top: 80px;
  }
  .agency_section02 .head01 {
    margin-top: 40px;
  }
  .agency_section02 .p01 {
    margin-top: 24px;
  }
  .agency_section02 .example_box {
    margin-top: 64px;
    padding: 40px 16px;
    background-color: #faf9f5;
    position: relative;
  }
  .agency_section02 .example_head {
    font-family: "Noto Serif JP", serif;
    font-size: 24px;
    font-weight: 500;
    line-height: 1;
    text-align: center;
    position: absolute;
    width: 100%;
    top: -17px;
    left: 0;
  }
  .agency_section02 .example_list {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    flex-direction: column;
    align-items: center;
  }
  .agency_section02 .example_list li {
    /* width:48%; */
    width: 300px;
    margin-top: 36px;
  }
  .agency_section02 .example_list .example_icon {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 54px;
  }
  .agency_section02 .example_list .example_title {
    width: -moz-fit-content;
    width: fit-content;
    min-width: 130px;
    max-width: 100%;
    margin: 0 auto;
    height: 34px;
    border-radius: 17px;
    padding: 0 4px;
    border: solid 1px #3c2c00;
    background-color: #fff;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 20px;
    font-weight: 500;
    line-height: 1;
  }
  .agency_section02 .example_list .example_text {
    font-size: 18px;
    line-height: 1.44;
    text-align: center;
    margin-top: 8px;
  }
  .agency_section02 .example_list .agency_icon01 {
    height: 44px;
  }
  .agency_section02 .example_list .agency_icon02 {
    height: 33px;
  }
  .agency_section02 .example_list .agency_icon03, .agency_section02 .example_list .agency_icon04 {
    height: 34px;
  }
  .agency_section02 .example_list .agency_icon05 {
    height: 39px;
  }
  .agency_section02 .example_list .agency_icon06 {
    height: 31px;
  }
  .agency_section02 .p02 {
    margin-top: 24px;
  }
  .agency_section .document_box {
    padding: 24px 16px;
    display: flex;
    flex-direction: column;
    align-items: center;
    border: 1px solid #3c2c00;
    margin-top: 40px;
  }
  .agency_section .document_box .document_head {
    font-family: "Noto Serif JP", serif;
    font-size: 18px;
    font-weight: 500;
    line-height: 1;
    text-align: center;
  }
  .agency_section .document_box .document_list {
    margin-top: 20px;
  }
  .agency_section .document_box .document_list p {
    display: flex;
    flex-wrap: wrap;
    flex-direction: column;
    line-height: 2;
    font-size: 14px;
  }
  .agency_section .document_box .document_list p span {
    display: inline-block;
    line-height: 2;
  }
  .agency_section .document_box .document_list p span + span {
    margin-left: 0;
  }
  .agency_section03 h3 {
    margin-top: 80px;
  }
  .agency_section03 .flex {
    display: flex;
    flex-direction: column;
    margin-top: 36px;
  }
  .agency_section03 .flex .thumb {
    width: 100%;
    flex-shrink: 0;
    margin-right: 0;
    padding-top: 0;
  }
  .agency_section03 .flex .thumb img {
    width: 100%;
  }
  .agency_section03 .flex .text_area {
    width: 100%;
    margin-top: 32px;
  }
  .agency_section03 .example_box {
    margin-top: 56px;
    padding: 40px 16px;
    background-color: #faf9f5;
    position: relative;
  }
  .agency_section03 .example_head {
    font-family: "Noto Serif JP", serif;
    font-size: 26px;
    font-weight: 500;
    line-height: 1;
    text-align: center;
    position: absolute;
    width: 100%;
    top: -17px;
    left: 0;
  }
  .agency_section03 .list_flex {
    display: flex;
    justify-content: space-between;
    flex-direction: column;
    width: -moz-fit-content;
    width: fit-content;
    margin: 0 auto;
  }
  .agency_section03 ul li {
    display: flex;
    line-height: 1.5;
    font-size: 14px;
    margin-bottom: 8px;
    /* font-feature-settings: 'palt'; */
  }
  .agency_section03 ul li::before {
    content: "・";
    line-height: 1.5;
  }
  .agency_section03 .p01 {
    margin-top: 24px;
  }
  .agency_section03 .flow_box {
    margin-top: 40px;
    overflow-x: scroll;
  }
  .agency_section03 .flow_box img {
    width: 650px;
  }
  /*
  --------------------------------------------------------
    人事・労務相談
  --------------------------------------------------------
  */
  body.human_body {
    position: relative;
  }
  .human_mv_section {
    background-image: url("../img/human/human_mv.jpg");
  }
  .human_section01 {
    padding: 56px 0 40px;
  }
  .human_section01 .flex {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    flex-direction: column;
    align-items: center;
    margin-top: 48px;
  }
  .human_section01 .flex .left {
    width: 100%;
    height: 170px;
    position: relative;
  }
  .human_section01 .left .human01 {
    width: 80%;
  }
  .human_section01 .left .human02 {
    width: 60%;
    position: absolute;
    z-index: 2;
    bottom: -60px;
    right: 0;
  }
  .human_section01 .flex .right {
    width: 100%;
    margin-top: 100px;
  }
  .human_section01 .flex .p01 {
    font-family: "Noto Serif JP", serif;
    font-size: 20px;
    font-weight: 600;
    line-height: 1.83;
  }
  .human_section01 .flex .p01 span {
    border-bottom: 2px solid #f8b500;
    padding-bottom: 4px;
  }
  .human_section01 .flex .p02 {
    margin-top: 24px;
    line-height: 2;
    font-size: 14px;
  }
  .human_section01 .plan_head {
    margin-top: 80px;
    position: relative;
    padding: 24px 16px;
    background-color: #faf9f5;
    font-family: "Noto Serif JP", serif;
    text-align: center;
    font-weight: 500;
  }
  .human_section01 .plan_head:after {
    content: "";
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 31px 30.5px 0 30.5px;
    border-color: #faf9f5 transparent transparent transparent;
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    margin: auto;
  }
  .human_section01 .plan_head .head_text01 {
    font-size: 24px;
    line-height: 1.3;
  }
  .human_section01 .plan_head .head_text02 {
    margin-top: 12px;
    font-size: 14px;
    line-height: 1.5;
  }
  .human_section01 .plan_list {
    margin-top: 16px;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
  }
  .human_section01 .plan_block {
    width: 100%;
    min-height: 200px;
    border: 1px solid rgba(60, 44, 0, 0.14);
    margin-top: 40px;
    padding-bottom: 24px;
  }
  .human_section01 .plan_block .plan_icon img {
    width: 100%;
  }
  .human_section01 .plan_block .plan_text {
    font-size: 18px;
    line-height: 1.67;
    text-align: center;
    padding: 0 8px;
    margin-top: 24px;
  }
  .human_section02 {
    padding: 70px 0 50px;
  }
  .human_section02 .step_list {
    margin-top: 60px;
  }
  .human_section02 .step_list .step_arrow {
    display: block;
    margin: 30px auto;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 25px 36px 0 36px;
    border-color: #f8b500 transparent transparent transparent;
  }
  .human_section02 .step_block {
    display: flex;
    flex-direction: column;
    border: 2px solid #3c2c00;
  }
  .human_section02 .step_block .step_num {
    width: 100%;
    flex-shrink: 0;
    display: flex;
    justify-content: center;
    background-color: #3c2c00;
    padding: 12px 0;
    font-family: "Noto Serif JP", serif;
    color: #fff;
  }
  .human_section02 .step_block .step_num p {
    display: flex;
    align-items: center;
    font-size: 16px;
    font-weight: 500;
    line-height: 1;
  }
  .human_section02 .step_block .step_num p span {
    margin-left: 10px;
    font-size: 32px;
    line-height: 1;
    padding-bottom: 2px;
  }
  .human_section02 .step_block .step_text {
    width: 100%;
    padding: 20px 16px;
    font-size: 16px;
    line-height: 1.56;
  }
  .human_section02 .qa_banner {
    display: block;
    margin-top: 64px;
  }
  .human_section02 .qa_banner img {
    width: 100%;
  }
  /*
  --------------------------------------------------------
  中小企業主の特別加入
  --------------------------------------------------------
  */
  body.enterprise_body {
    position: relative;
  }
  .enterprise_mv_section {
    background-image: url("../img/enterprise/enterprise_mv.jpg");
  }
  .enterprise_section01 {
    padding-bottom: 80px;
  }
  .enterprise_section01 .p01 {
    margin-top: 48px;
  }
  .enterprise_section01 .p02 {
    margin-top: 40px;
  }
  .enterprise_section01 .p03 {
    margin-top: 24px;
  }
  .enterprise_section01 .flex {
    display: flex;
    align-items: center;
    margin-top: 40px;
  }
  .enterprise_section01 .flex .thumb {
    width: 100%;
    flex-shrink: 0;
    padding-top: 8px;
  }
  .enterprise_section01 .flex .thumb img {
    width: 100%;
  }
  .enterprise_section01 .flex .text_area {
    width: 100%;
    margin-top: 32px;
  }
  .enterprise_section01 .flex01 {
    margin-top: 32px;
    flex-direction: column;
  }
  .enterprise_section01 .flex01 .thumb {
    margin-left: 0;
  }
  .enterprise_section01 .flex02 {
    margin-top: 56px;
    flex-direction: column;
  }
  .enterprise_section01 .flex02 .thumb {
    margin-right: 0;
  }
  .enterprise_section01 .merit_box {
    margin-top: 80px;
    position: relative;
    padding: 40px 16px;
    background-color: #faf9f5;
    display: flex;
    justify-content: center;
    align-items: center;
  }
  .enterprise_section01 .merit_head {
    font-family: "Noto Serif JP", serif;
    font-size: 20px;
    font-weight: 500;
    line-height: 1.3;
    text-align: center;
    position: absolute;
    width: 100%;
    top: -16px;
    left: 0;
  }
  .enterprise_section01 ul li {
    display: flex;
    margin-bottom: 3px;
    font-size: 14px;
  }
  .enterprise_section01 ul li:last-child {
    margin-bottom: 0;
  }
  .enterprise_section01 ul li .num {
    width: 32px;
    flex-shrink: 0;
    font-family: "Noto Serif JP", serif;
    font-size: 18px;
    font-weight: 500;
    line-height: 1.5;
    color: #68a357;
  }
  .enterprise_section01 .angle {
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 25px 36px 0 36px;
    border-color: #f8b500 transparent transparent transparent;
    margin: 48px auto 0;
  }
  .enterprise_section01 .common_min_contact_area {
    margin-top: 64px;
  }
  .enterprise_section02 {
    padding-bottom: 80px;
  }
  .enterprise_section02 .num_flex {
    display: flex;
    font-family: "Noto Serif JP", serif;
  }
  .enterprise_section02 .num_flex .num {
    width: 52px;
    font-size: 36px;
    font-weight: 400;
    line-height: 1;
    letter-spacing: 0;
    white-space: nowrap;
    color: #f8b500;
    flex-shrink: 0;
  }
  .enterprise_section02 .num_flex p {
    padding-top: 2px;
    font-size: 18px;
    font-weight: 600;
    line-height: 1.8;
  }
  .enterprise_section02 .num_flex p span {
    border-bottom: 1px solid #3c2c00;
  }
  .enterprise_section02 .num_flex02, .enterprise_section02 .num_flex03 {
    margin-top: 56px;
  }
  .enterprise_section02 .flex {
    display: flex;
    flex-direction: column;
    align-items: center;
    margin-top: 56px;
  }
  .enterprise_section02 .flex .text_area {
    width: 100%;
  }
  .enterprise_section02 .flex .common_wrap_info_text {
    margin-top: 24px;
  }
  .enterprise_section02 .flex .table_frame {
    width: 100%;
    flex-shrink: 0;
    margin-left: 0;
    margin-top: 40px;
  }
  .enterprise_section02 .flex table {
    width: 100%;
  }
  .enterprise_section02 .flex table th {
    width: 50%;
    background-color: #faf9f5;
    padding: 12px 0;
    font-size: 15px;
    font-weight: 400;
    line-height: 1.3;
    text-align: center;
    border: 1px solid rgba(60, 44, 0, 0.14);
  }
  .enterprise_section02 .flex table td {
    height: 60px;
    font-weight: 400;
    line-height: 1.3;
    text-align: center;
    font-size: 14px;
    border: 1px solid rgba(60, 44, 0, 0.14);
  }
  .enterprise_section02 .p01 {
    margin-top: 72px;
    font-size: 18px;
    font-weight: 500;
    line-height: 1.3;
  }
  .enterprise_section02 .kind_box {
    margin-top: 24px;
    overflow-x: scroll;
  }
  .enterprise_section02 .kind_box table {
    width: 650px;
  }
  .enterprise_section02 .kind_box table thead {
    background-color: #faf9f5;
  }
  .enterprise_section02 .kind_box table td, .enterprise_section02 .kind_box table th {
    width: 33.3%;
    padding: 12px 4px;
    border: 1px solid rgba(60, 44, 0, 0.14);
    font-weight: 400;
    line-height: 1.25;
    text-align: center;
  }
  .enterprise_section02 .kind_box table td:first-child, .enterprise_section02 .kind_box table th:first-child {
    background-color: #f4f2ea;
  }
  .enterprise_section03 {
    padding-bottom: 80px;
  }
  .enterprise_section03 .check_frame {
    margin-top: 56px;
  }
  .enterprise_section03 .check_frame img {
    width: 100%;
  }
  .enterprise_section04 {
    padding-bottom: 80px;
  }
  .enterprise_section04 .p01 {
    margin-top: 32px;
  }
  .enterprise_section04 .list_box {
    margin-top: 32px;
    padding: 24px 16px;
    background-color: #faf9f5;
    display: flex;
    justify-content: center;
    align-items: center;
  }
  .enterprise_section04 .list_box li {
    display: flex;
    margin-bottom: 16px;
  }
  .enterprise_section04 .list_box li:last-child {
    margin-bottom: 0;
  }
  .enterprise_section04 .list_box li .mark {
    width: 28px;
    font-family: "Noto Serif JP", serif;
    flex-shrink: 0;
    font-size: 20px;
    font-weight: 500;
    line-height: 1.2;
    color: #68a357;
  }
  .enterprise_section04 .list_box li p {
    line-height: 1.6;
    font-size: 14px;
    padding-top: 3px;
  }
  .enterprise_section05 {
    padding-bottom: 80px;
  }
  .enterprise_section05 .p01 {
    margin-top: 32px;
  }
  .enterprise_section05 .cost_box {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    padding: 24px 16px;
    border: solid 1px #3c2c00;
    margin-top: 32px;
  }
  .enterprise_section05 .cost_box .cost_head {
    width: 130px;
    height: 30px;
    border-radius: 15px;
    border: solid 1px #3c2c00;
    background-color: #faf9f5;
    font-size: 20px;
    font-weight: 500;
    line-height: 1;
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 0 auto;
  }
  .enterprise_section05 .cost_box .cost_text {
    text-align: center;
    margin-top: 8px;
    font-size: 18px;
    line-height: 1.44;
  }
  .enterprise_section05 .cost_box .plus {
    width: 32px;
    height: 32px;
    position: relative;
    margin: 24px 0;
  }
  .enterprise_section05 .cost_box .plus::before, .enterprise_section05 .cost_box .plus::after {
    content: "";
    background-color: #3c2c00;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    border-radius: 3px;
  }
  .enterprise_section05 .cost_box .plus::before {
    width: 5px;
    height: 100%;
  }
  .enterprise_section05 .cost_box .plus::after {
    width: 100%;
    height: 5px;
  }
  .enterprise_section05 .insurance_box {
    margin-top: 40px;
    overflow-x: scroll;
  }
  .enterprise_section05 .insurance_box img {
    width: 650px;
  }
  .enterprise_section05 .p02 {
    margin-top: 40px;
    font-size: 15px;
    line-height: 1.67;
  }
  .enterprise_section05 .p02 span {
    font-size: 14px;
  }
  .enterprise_section05 .p03 {
    margin-top: 24px;
    line-height: 1.67;
    color: #e63208;
    display: flex;
    font-size: 14px;
  }
  .enterprise_section05 .p03::before {
    content: "※";
    line-height: 1.67;
    color: #e63208;
  }
  .enterprise_section05 .p03 + .p03 {
    margin-top: 8px;
  }
  .enterprise_section05 .guarantee_area {
    margin-top: 40px;
  }
  .enterprise_section05 .guarantee_head {
    height: 80px;
    background-color: #3c2c00;
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
    cursor: pointer;
    font-size: 16px;
    font-weight: 500;
    line-height: 1;
    color: #fff;
  }
  .enterprise_section05 .guarantee_head .mark {
    position: static;
    width: 14px;
    height: 14px;
    right: 0;
    top: 0;
    bottom: 0;
    margin: 0;
    margin-left: 12px;
  }
  .enterprise_section05 .guarantee_head .mark_inner {
    width: 100%;
    height: 100%;
    position: relative;
  }
  .enterprise_section05 .guarantee_head .mark_inner::before, .enterprise_section05 .guarantee_head .mark_inner::after {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    background-color: #fff;
  }
  .enterprise_section05 .guarantee_head .mark_inner::before {
    width: 100%;
    height: 2px;
  }
  .enterprise_section05 .guarantee_head .mark_inner::after {
    width: 2px;
    height: 100%;
  }
  .enterprise_section05 .guarantee_head.active .mark_inner::after {
    display: none;
  }
  .enterprise_section05 .guarantee_inner {
    padding: 40px 16px;
    background-color: #faf9f5;
  }
  .enterprise_section05 .guarantee_text01 {
    font-size: 18px;
    font-weight: 500;
    line-height: 1;
    display: flex;
    align-items: center;
  }
  .enterprise_section05 .guarantee_text01::before {
    content: "";
    width: 12px;
    height: 12px;
    background-color: #3c2c00;
    margin-right: 12px;
  }
  .enterprise_section05 .guarantee_text02 {
    margin-top: 32px;
    line-height: 2;
    font-size: 14px;
  }
  .enterprise_section05 .guarantee_text02 + .guarantee_text02 {
    margin-top: 10px;
  }
  .enterprise_section05 .guarantee_table_frame01 {
    margin-top: 32px;
    overflow-x: scroll;
  }
  .enterprise_section05 .guarantee_table_frame01 img {
    width: 650px;
  }
  .enterprise_section05 .guarantee_contents ul {
    margin-top: 32px;
  }
  .enterprise_section05 .guarantee_contents ul li {
    display: flex;
    line-height: 1.5;
    font-size: 14px;
    margin-top: 6px;
  }
  .enterprise_section05 .guarantee_contents ul li::before {
    content: "※";
    line-height: 1.5;
    font-size: 14px;
  }
  .enterprise_section06 {
    padding-bottom: 80px;
  }
  .enterprise_section06 .guarantee_table_frame02 {
    overflow-x: scroll;
  }
  .enterprise_section06 .guarantee_table_frame03 {
    margin-top: 60px;
    overflow-x: scroll;
  }
  .enterprise_section06 table {
    width: 650px;
  }
  .enterprise_section06 table th, .enterprise_section06 table td {
    border: 1px solid rgba(60, 44, 0, 0.14);
  }
  .enterprise_section06 table th {
    font-size: 18px;
    text-align: center;
    line-height: 1;
    padding: 20px 0;
    background-color: #faf9f5;
  }
  .enterprise_section06 table td {
    line-height: 1.75;
    height: 160px;
  }
  .enterprise_section06 table td:first-child {
    padding: 0 12px;
    width: 32%;
    text-align: center;
  }
  .enterprise_section06 table td:last-child {
    padding: 0 40px;
    width: 68%;
  }
  .enterprise_section07 {
    padding-bottom: 80px;
  }
  .enterprise_section07 .p01 {
    margin-top: 32px;
  }
  .enterprise_section07 .pay_box {
    margin-top: 32px;
    padding: 12px 16px;
    border: solid 1px #3c2c00;
  }
  .enterprise_section07 .pay_box p {
    line-height: 1.75;
    display: flex;
    font-size: 14px;
    margin-bottom: 6px;
  }
  .enterprise_section07 .pay_box p span {
    line-height: 1.75;
    font-size: 14px;
  }
  .enterprise_section08 {
    padding-bottom: 80px;
  }
  .enterprise_section08 .flex {
    display: flex;
    flex-direction: column-reverse;
    align-items: center;
    margin-top: 40px;
  }
  .enterprise_section08 .flex .thumb {
    width: 100%;
    flex-shrink: 0;
    margin-left: 0;
    padding-top: 0;
  }
  .enterprise_section08 .flex .thumb img {
    width: 100%;
  }
  .enterprise_section08 .flex .text_area {
    width: 100%;
    margin-top: 32px;
  }
  .enterprise_section08 .p01 {
    width: -moz-fit-content;
    width: fit-content;
    margin: 48px auto 0;
    position: relative;
    font-size: 20px;
    font-weight: 600;
    line-height: 1.33;
    padding-bottom: 20px;
  }
  .enterprise_section08 .p01 img {
    width: 100%;
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
  }
  .enterprise_section08 .tel_button {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 80px;
    border-radius: 40px;
    background-color: #68a357;
    pointer-events: auto;
    margin: 14px auto 0;
  }
  .enterprise_section08 .tel_button p {
    font-family: "Noto Serif JP", serif;
    font-size: 14px;
    font-weight: 700;
    line-height: 1.3;
    text-align: center;
    color: #fff;
    font-feature-settings: "palt";
    letter-spacing: 0;
  }
  .enterprise_section08 .tel_button p span {
    font-size: 24px;
    font-weight: 900;
    letter-spacing: 0.1em;
  }
  .enterprise_section08 .tel_button::before {
    content: "";
    width: 21px;
    height: 28px;
    background-image: url("../img/common/tel_icon_white.svg");
    margin-right: 14px;
  }
  /*
  --------------------------------------------------------
  一人親方特別加入 建設業
  --------------------------------------------------------
  */
  body.construction_body {
    position: relative;
  }
  .construction_mv_section {
    background-image: url("../img/construction/construction_mv.jpg");
  }
  .construction_section01 {
    padding-bottom: 80px;
  }
  .construction_section01 .p01, .construction_section01 .p02 {
    margin-top: 48px;
  }
  .construction_section01 .flex {
    display: flex;
    align-items: center;
    margin-top: 40px;
  }
  .construction_section01 .flex .thumb {
    width: 100%;
    flex-shrink: 0;
    padding-top: 8px;
    margin-left: 0;
  }
  .construction_section01 .flex .thumb img {
    width: 100%;
  }
  .construction_section01 .flex .text_area {
    width: 100%;
    margin-top: 32px;
  }
  .construction_section01 .flex .text_area p {
    letter-spacing: 0.14em;
  }
  .construction_section01 .flex .text_area p + p {
    margin-top: 10px;
  }
  .construction_section01 .flex01 {
    margin-top: 36px;
    flex-direction: column;
  }
  .construction_section01 .flex01 .thumb {
    margin-left: 0;
  }
  .construction_section01 .flex02 {
    margin-top: 48px;
    flex-direction: column;
  }
  .construction_section01 .flex02 .thumb {
    margin-right: 0;
  }
  .construction_section02 {
    padding-bottom: 80px;
  }
  .construction_section02 .p01 {
    margin-top: 32px;
  }
  .construction_section02 .reason_list {
    display: flex;
    justify-content: space-between;
    margin-top: 56px;
    flex-direction: column;
    align-items: center;
  }
  .construction_section02 .reason_list li {
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    margin-top: 32px;
  }
  .construction_section02 .reason_head {
    display: flex;
    justify-content: center;
    align-items: flex-end;
    padding-bottom: 8px;
    font-family: "Noto Serif JP", serif;
    font-size: 18px;
    font-weight: 600;
    line-height: 1;
    border-bottom: 2px solid #3c2c00;
  }
  .construction_section02 .reason_head span {
    font-size: 36px;
    line-height: 0.8;
    color: #f8b500;
    letter-spacing: 0.06em;
    margin-left: 8px;
  }
  .construction_section02 .reason_icon {
    min-height: auto;
    padding: 12px 0;
    display: flex;
    justify-content: center;
    align-items: center;
  }
  .construction_section02 .reason_icon .construction_reason01 {
    height: 110px;
  }
  .construction_section02 .reason_icon .construction_reason02 {
    height: 115px;
  }
  .construction_section02 .reason_icon .construction_reason03 {
    height: 134px;
  }
  .construction_section02 .reason_text {
    line-height: 2;
    font-size: 14px;
  }
  .construction_section02 .map_box {
    margin-top: 120px;
    position: relative;
    background-color: #faf9f5;
    height: auto;
    padding: 60px 6px 32px;
  }
  .construction_section02 .map_box .map_arrow {
    position: absolute;
    width: 80px;
    right: 20px;
    top: -140px;
  }
  .construction_section02 .map_box .map_head {
    font-family: "Noto Serif JP", serif;
    font-size: 24px;
    font-weight: 500;
    line-height: 1;
    text-align: center;
    position: absolute;
    width: 100%;
    top: -12px;
    left: 0;
  }
  .construction_section02 .map_contents {
    display: none;
  }
  .construction_section02 .sp_map_link {
    width: 100%;
    display: block;
  }
  .construction_section02 .sp_map_link img {
    width: 100%;
  }
  .construction_section03 {
    padding-bottom: 80px;
  }
  .construction_section03 .p01 {
    margin-top: 32px;
  }
  .construction_section03 .table_box {
    margin-top: 32px;
    overflow-x: scroll;
  }
  .construction_section03 table {
    width: 650px;
  }
  .construction_section03 table th, .construction_section03 table td {
    width: 33.3%;
    border: 1px solid rgba(60, 44, 0, 0.14);
  }
  .construction_section03 table th {
    font-size: 18px;
    padding: 20px 0;
    background-color: #faf9f5;
  }
  .construction_section03 table td {
    padding: 12px 8px;
    line-height: 1.38;
    font-feature-settings: "palt";
  }
  .construction_section03 table td p {
    position: relative;
    padding-left: 10px;
  }
  .construction_section03 table td p::before {
    content: "・";
    line-height: 1.38;
    position: absolute;
    left: 0;
    top: 0;
  }
  .construction_section03 table td span {
    font-weight: 500;
    background: linear-gradient(to top, rgba(248, 181, 0, 0.32) 0%, rgba(248, 181, 0, 0.32) 40%, transparent 40%, transparent 100%);
  }
  .construction_section03 table td span.min {
    font-size: 12px;
    font-weight: 400;
    background: none;
  }
  .construction_section03 table td:first-child {
    height: 90px;
    font-size: 16px;
    padding: 8px 24px;
  }
  .construction_section03 .compare_angle {
    content: "";
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 0 43px 40px 43px;
    border-color: transparent transparent #ebe8de transparent;
    margin: 20px 100px 0 auto;
  }
  .construction_section03 .compare_box {
    position: relative;
    background-color: #ebe8de;
    padding: 24px 16px 0;
    height: auto;
    overflow: hidden;
    display: flex;
    flex-direction: column-reverse;
    align-items: center;
  }
  .construction_section03 .compare_box .compare_bg01 {
    position: absolute;
    width: 450px;
    top: -36px;
    left: -19px;
  }
  .construction_section03 .compare_box .compare_bg02 {
    display: none;
  }
  .construction_section03 .compare_box .compare_left, .construction_section03 .compare_box .compare_right {
    width: 100%;
    height: auto;
    position: relative;
    z-index: 3;
  }
  .construction_section03 .compare_box .compare_left {
    display: flex;
    align-items: flex-end;
    margin-top: 32px;
  }
  .construction_section03 .compare_box .compare_left img {
    width: 300px;
    margin-left: 0;
  }
  .construction_section03 .compare_box .compare_right {
    display: flex;
    justify-content: center;
    align-items: center;
    font-family: "Noto Serif JP", serif;
  }
  .construction_section03 .compare_box .compare_text01 {
    font-size: 18px;
    font-weight: 500;
    line-height: 1.5;
    text-align: center;
  }
  .construction_section03 .compare_box .compare_text01 .border {
    border-bottom: 2px solid #3c2c00;
  }
  .construction_section03 .compare_box .compare_text01 .num {
    font-size: 24px;
    font-weight: 600;
  }
  .construction_section03 .compare_box .compare_text02 {
    font-size: 14px;
    font-weight: 500;
    width: -moz-fit-content;
    width: fit-content;
    margin: 12px auto 0;
  }
  .construction_section03 .common_min_contact_area {
    margin-top: 80px;
  }
  .construction_section04 {
    padding-bottom: 80px;
  }
  .construction_section04 .num_flex {
    margin-top: 40px;
    display: flex;
    font-family: "Noto Serif JP", serif;
    font-feature-settings: "palt";
  }
  .construction_section04 .num_flex .num {
    width: 52px;
    font-size: 36px;
    font-weight: 400;
    line-height: 1;
    letter-spacing: 0;
    white-space: nowrap;
    color: #f8b500;
    flex-shrink: 0;
  }
  .construction_section04 .num_flex p {
    padding-top: 2px;
    font-size: 18px;
    font-weight: 600;
    line-height: 1.8;
  }
  .construction_section04 .num_flex p span {
    border-bottom: 1px solid #3c2c00;
  }
  .construction_section04 .num_flex + p {
    margin-top: 20px;
    line-height: 2;
    font-size: 14px;
  }
  .construction_section04 .num_flex + p span {
    font-weight: 500;
    text-decoration: underline;
  }
  .construction_section04 .range_list {
    display: flex;
    justify-content: space-between;
    flex-direction: column;
    align-items: center;
    flex-wrap: wrap;
    max-width: 600px;
    margin: 24px auto 0;
  }
  .construction_section04 .range_list li {
    width: 276px;
    border: 2px solid rgba(60, 44, 0, 0.14);
    margin-top: 32px;
  }
  .construction_section04 .range_list .icon_frame {
    height: 120px;
    display: flex;
    justify-content: center;
    align-items: flex-end;
  }
  .construction_section04 .range_list .range_icon01 {
    width: 100px;
  }
  .construction_section04 .range_list .range_icon02 {
    width: 60px;
  }
  .construction_section04 .range_list .range_icon03 {
    width: 150px;
  }
  .construction_section04 .range_list .range_text_frame {
    padding: 4px 12px;
    min-height: 110px;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 15px;
    line-height: 1.56;
    font-feature-settings: "palt";
  }
  .construction_section04 .range_list .range_angle {
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 25px 36px 0 36px;
    border-color: #f8b500 transparent transparent transparent;
    margin: 0 auto;
  }
  .construction_section04 .range_list .range_bottom_area {
    display: flex;
    justify-content: center;
    align-items: center;
    background-color: #ebe8de;
    margin-top: 14px;
    height: 70px;
    font-size: 22px;
    font-weight: 500;
    line-height: 1;
    text-align: center;
  }
  .construction_section04 .range_list .range_bottom_area span {
    font-size: 14px;
    font-feature-settings: "palt";
  }
  .construction_section04 .range_box {
    margin-top: 72px;
    background-color: #faf9f5;
    position: relative;
    padding: 40px 16px;
  }
  .construction_section04 .range_box .range_head {
    font-family: "Noto Serif JP", serif;
    font-size: 30px;
    font-weight: 500;
    line-height: 1;
    text-align: center;
    width: 100%;
    position: absolute;
    left: 0;
    top: -15px;
  }
  .construction_section04 .range_box ul {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 0;
  }
  .construction_section04 .range_box ul li {
    width: 145px;
    height: 57px;
    border-radius: 8px;
    background-color: #ebe8de;
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
    font-size: 18px;
    font-weight: 500;
    line-height: 1.1;
    margin-top: 16px;
  }
  .construction_section04 .range_box .remark {
    width: -moz-fit-content;
    width: fit-content;
    margin: 24px auto 0;
    display: flex;
    line-height: 1.5;
    font-size: 14px;
  }
  .construction_section04 .range_box .remark::before {
    content: "※";
    line-height: 1.5;
  }
  .construction_section05 {
    padding-bottom: 80px;
  }
  .construction_section05 .p01 {
    margin-top: 32px;
    font-size: 14px;
    line-height: 2;
  }
  .construction_section05 .list_box {
    margin-top: 32px;
    padding: 24px 16px;
    background-color: #faf9f5;
    display: flex;
    justify-content: center;
    align-items: center;
  }
  .construction_section05 .list_box ul li {
    display: flex;
    margin-top: 16px;
  }
  .construction_section05 .list_box ul li:first-child {
    margin-top: 0;
  }
  .construction_section05 .list_box ul li .mark {
    width: 28px;
    font-family: "Noto Serif JP", serif;
    flex-shrink: 0;
    font-size: 20px;
    font-weight: 500;
    line-height: 1.2;
    color: #68a357;
  }
  .construction_section05 .list_box ul li p {
    line-height: 1.6;
    font-size: 14px;
    padding-top: 3px;
    letter-spacing: 0.08em;
  }
  .construction_section05 .list_box ul li p span {
    font-weight: 500;
    background: linear-gradient(to top, rgba(248, 181, 0, 0.32) 0%, rgba(248, 181, 0, 0.32) 40%, transparent 40%, transparent 100%);
  }
  .construction_section06 {
    padding-bottom: 80px;
  }
  .construction_section06 .p01 {
    margin-top: 32px;
    line-height: 2;
    font-size: 14px;
  }
  .construction_section06 .table_frame {
    margin-top: 32px;
    overflow-x: scroll;
  }
  .construction_section06 table {
    width: 650px;
  }
  .construction_section06 table th, .construction_section06 table td {
    border: 1px solid rgba(60, 44, 0, 0.14);
  }
  .construction_section06 table th {
    width: 32%;
    height: 140px;
    font-size: 18px;
    font-weight: 400;
    text-align: center;
    background-color: #faf9f5;
  }
  .construction_section06 table td {
    width: 68%;
    padding: 16px 40px;
    line-height: 1.75;
  }
  .construction_section06 table td span {
    font-weight: 500;
    background: linear-gradient(to top, rgba(248, 181, 0, 0.32) 0%, rgba(248, 181, 0, 0.32) 40%, transparent 40%, transparent 100%);
  }
  .construction_section06 h3 {
    font-family: "Noto Serif JP", serif;
    font-size: 24px;
    font-weight: 500;
    line-height: 1;
    display: flex;
    align-items: center;
    margin-top: 80px;
  }
  .construction_section06 h3::before {
    content: "";
    width: 16px;
    height: 16px;
    background-color: #3c2c00;
    margin-right: 16px;
  }
  .construction_section06 .exapmle_list {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    margin-top: 40px;
  }
  .construction_section06 .exapmle_block {
    width: 100%;
    min-height: 390px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    border: 1px solid rgba(60, 44, 0, 0.14);
    overflow: hidden;
    position: relative;
  }
  .construction_section06 .exapmle_block::before {
    content: "";
    width: 550px;
    height: 550px;
    border-radius: 50%;
    background-color: #faf9f5;
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    z-index: -1;
  }
  .construction_section06 .exapmle_block .exapmle_contents01 {
    width: 100%;
    height: 64%;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: center;
  }
  .construction_section06 .exapmle_block .exapmle_contents02 {
    width: 100%;
    height: 30.7%;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: center;
  }
  .construction_section06 .exapmle_block .example_icon {
    position: absolute;
    left: 0;
    right: 0;
    margin: auto;
  }
  .construction_section06 .exapmle_block .exapmle_text {
    padding: 4px 24px;
    line-height: 1.67;
  }
  .construction_section06 .exapmle_block .exapmle_angle {
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 36px 53px 0 53px;
    border-color: #f8b500 transparent transparent transparent;
  }
  .construction_section06 .exapmle_block .exapmle_bottom {
    height: 70px;
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    background-color: #faf9f5;
    white-space: nowrap;
  }
  .construction_section06 .exapmle_block .exapmle_bottom p {
    font-size: 17px;
    line-height: 1.2;
  }
  .construction_section06 .exapmle_block .exapmle_bottom p .border {
    font-weight: 500;
    background: linear-gradient(to top, rgba(248, 181, 0, 0.32) 0%, rgba(248, 181, 0, 0.32) 40%, transparent 40%, transparent 100%);
  }
  .construction_section06 .exapmle_block .exapmle_bottom p .min {
    font-size: 14px;
    font-weight: 400;
  }
  .construction_section06 .exapmle_block .exapmle_bottom .plus {
    margin: 0 10px;
    font-size: 20px;
    font-weight: 500;
  }
  .construction_section06 .exapmle_block01::before {
    top: -385px;
  }
  .construction_section06 .exapmle_block01 .construction_example_icon01 {
    top: 28px;
    width: 170px;
  }
  .construction_section06 .exapmle_block02 {
    margin-top: 24px;
  }
  .construction_section06 .exapmle_block02::before {
    top: -432px;
  }
  .construction_section06 .exapmle_block02 .construction_example_icon02 {
    top: -160px;
    width: 120px;
  }
  .construction_section06 .exapmle_block03 {
    width: 100%;
    height: auto;
    display: block;
  }
  .construction_section06 .exapmle_block03::before {
    top: -370px;
  }
  .construction_section06 .exapmle_block03 .construction_example_icon03 {
    top: 30px;
    width: 303px;
  }
  .construction_section06 .exapmle_block03 .exapmle_contents01 {
    height: auto;
    padding-top: 200px;
  }
  .construction_section06 .exapmle_block03 .exapmle_contents02 {
    height: auto;
  }
  .construction_section06 .exapmle_block03 .icon_frame img {
    /* width:550px; */
    margin: 0 auto;
  }
  .construction_section06 .exapmle_block03 .exapmle_text {
    margin-top: 12px;
  }
  .construction_section06 .exapmle_block03 .exapmle_angle {
    margin: 16px auto 20px;
  }
  .construction_section06 .exapmle_block03 .exapmle_bottom {
    height: auto;
    white-space: normal;
  }
  .construction_section06 .exapmle_block03 .exapmle_bottom .list {
    padding: 24px 16px;
  }
  .construction_section06 .exapmle_block03 .exapmle_bottom .list p {
    display: flex;
    flex-wrap: wrap;
    flex-direction: column;
    line-height: 1.8;
    font-size: 14px;
  }
  .construction_section06 .exapmle_block03 .exapmle_bottom .list .item {
    position: relative;
    padding-left: 16px;
  }
  .construction_section06 .exapmle_block03 .exapmle_bottom .list .item::before {
    content: "・";
    line-height: 1.8;
    position: absolute;
    left: 0;
    top: 0;
  }
  .construction_section06 .exapmle_block03 .exapmle_bottom .list .item + .item {
    margin-left: 0;
  }
  .construction_section06 .exapmle_block03 .exapmle_bottom .list .red {
    color: #e63208;
  }
  .construction_section07 {
    padding-bottom: 110px;
  }
  .construction_section07 .p01 {
    margin-top: 32px;
  }
  .construction_section07 .cost_box {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    padding: 24px 16px;
    border: solid 1px #3c2c00;
    margin-top: 32px;
  }
  .construction_section07 .cost_box .cost_head {
    width: 130px;
    height: 30px;
    border-radius: 15px;
    border: solid 1px #3c2c00;
    background-color: #faf9f5;
    font-size: 20px;
    font-weight: 500;
    line-height: 1;
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 0 auto;
  }
  .construction_section07 .cost_box .cost_text {
    text-align: center;
    margin-top: 8px;
    font-size: 18px;
    line-height: 1.44;
  }
  .construction_section07 .cost_box .plus {
    width: 32px;
    height: 32px;
    position: relative;
    margin: 24px 0;
  }
  .construction_section07 .cost_box .plus::before, .construction_section07 .cost_box .plus::after {
    content: "";
    background-color: #3c2c00;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    border-radius: 3px;
  }
  .construction_section07 .cost_box .plus::before {
    width: 5px;
    height: 100%;
  }
  .construction_section07 .cost_box .plus::after {
    width: 100%;
    height: 5px;
  }
  .construction_section07 h3 {
    font-family: "Noto Serif JP", serif;
    font-size: 24px;
    font-weight: 500;
    line-height: 1;
    display: flex;
    align-items: center;
    margin-top: 80px;
  }
  .construction_section07 h3::before {
    content: "";
    width: 16px;
    height: 16px;
    background-color: #3c2c00;
    margin-right: 16px;
  }
  .construction_section07 .cost_table_box {
    margin-top: 24px;
    overflow-x: scroll;
  }
  .construction_section07 .cost_table_contents {
    position: relative;
    width: 650px;
    padding-top: 64px;
    padding-left: 48px;
  }
  .construction_section07 .cost_table_contents .construction_table {
    width: 100%;
  }
  .construction_section07 .cost_table_contents .construction_table_balloon {
    position: absolute;
    width: 120px;
    top: 24px;
    left: 0px;
  }
  .construction_section07 .remark_list {
    margin-top: 24px;
  }
  .construction_section07 .remark_list p {
    display: flex;
    line-height: 1.75;
    font-size: 14px;
    margin-top: 6px;
  }
  .construction_section07 .remark_list p::before {
    content: "※";
    line-height: 1.75;
  }
  .construction_section07 .remark_list p span {
    text-decoration: underline;
  }
  .construction_section07 .remark_list .red {
    color: #e63208;
    font-weight: 500;
  }
  .construction_section08 {
    padding-bottom: 80px;
  }
  .construction_section08 .p01 {
    margin-top: 32px;
    font-size: 14px;
  }
  .construction_section08 .step_arrow {
    margin: 40px auto 0;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 25px 36px 0 36px;
    border-color: #f8b500 transparent transparent transparent;
  }
  .construction_section08 .step_block {
    display: flex;
    flex-direction: column;
    align-items: center;
    margin-top: 40px;
    border: 2px solid #3c2c00;
  }
  .construction_section08 .step_num {
    width: 100%;
    flex-shrink: 0;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: row;
    background-color: #3c2c00;
    font-family: "Noto Serif JP", serif;
    font-size: 16px;
    font-weight: 500;
    line-height: 1;
    text-align: center;
    color: #fff;
    padding: 8px 0;
  }
  .construction_section08 .step_num span {
    font-size: 32px;
    margin-top: 0;
    padding-bottom: 2px;
    margin-left: 8px;
  }
  .construction_section08 .step_contents {
    width: 100%;
    padding: 24px 16px;
  }
  .construction_section08 .step_head {
    display: flex;
    align-items: center;
    font-size: 18px;
    font-weight: 500;
    line-height: 1.3;
  }
  .construction_section08 .step_head::before {
    content: "";
    width: 12px;
    height: 12px;
    background-color: #3c2c00;
    margin-right: 12px;
    margin-top: 2px;
  }
  .construction_section08 .step_text01 {
    line-height: 1.67;
    margin-top: 8px;
    font-size: 14px;
  }
  .construction_section08 .step_text02 {
    margin-top: 32px;
    font-size: 14px;
  }
  .construction_section08 .step_fax_text {
    line-height: 1.67;
    font-weight: 500;
  }
  .construction_section08 .step_fax_text a {
    color: #3c2c00;
    pointer-events: none;
  }
  .construction_section08 .color_box {
    margin-top: 24px;
    padding: 24px 16px;
    background-color: #faf9f5;
  }
  .construction_section08 .color_box .entry_button {
    width: 100%;
    height: auto;
    margin: 0 auto;
  }
  .construction_section08 .color_box .entry_button .button_text {
    font-size: 20px;
    font-weight: 700;
    line-height: 1.3;
    text-align: center;
    padding: 16px 6px;
  }
  .construction_section08 .link_table_frame {
    margin-top: 20px;
  }
  .construction_section08 .link_table_frame:first-child {
    margin-top: 32px;
  }
  .construction_section08 .link_table {
    width: 100%;
  }
  .construction_section08 .link_table th {
    background-color: #f4f2ea;
    text-align: center;
    font-size: 12px;
    font-weight: 400;
    line-height: 1.33;
    text-align: center;
    border: 1px solid rgba(60, 44, 0, 0.14);
    padding: 6px 0;
    background-color: #f4f2ea;
    width: 50%;
  }
  .construction_section08 .link_table td {
    padding: 12px;
    border: 1px solid rgba(60, 44, 0, 0.14);
    line-height: 1.33;
    font-size: 12px;
    font-feature-settings: "palt";
    background-color: #fff;
    width: 50%;
  }
  .construction_section08 .link_table td:first-child {
    padding: 12px 0;
    border: 1px solid rgba(60, 44, 0, 0.14);
    line-height: 1.33;
    font-size: 12px;
    font-feature-settings: "palt";
    background-color: #fff;
  }
  .construction_section08 .link_table .link_td {
    height: auto;
    width: 50%;
    padding: 16px 0;
  }
  .construction_section08 .download_link {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 95px;
    height: 28px;
    border-radius: 3px;
    transition-duration: 0.4s;
    background-color: #3c2c00;
    font-weight: bold;
    line-height: 1;
    color: #fff;
    position: relative;
    margin: 0 auto;
    font-size: 12px;
  }
  .construction_section08 .download_link::after {
    content: "";
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 0 0 5px 5px;
    border-color: transparent transparent #fff transparent;
    position: absolute;
    bottom: 3px;
    right: 3px;
  }
  .construction_section08 .alert_head {
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 15px;
    font-weight: bold;
    line-height: 1;
    white-space: nowrap;
  }
  .construction_section08 .alert_head::before, .construction_section08 .alert_head::after {
    content: "";
    width: 100px;
    height: 1px;
    background-color: #3c2c00;
  }
  .construction_section08 .alert_head::before {
    margin-right: 24px;
  }
  .construction_section08 .alert_head::after {
    margin-left: 24px;
  }
  .construction_section08 .alert_list {
    margin-top: 16px;
  }
  .construction_section08 .alert_list li {
    line-height: 1.67;
    font-feature-settings: "palt";
    padding-left: 16px;
    font-size: 14px;
    position: relative;
    margin-top: 6px;
  }
  .construction_section08 .alert_list li::before {
    content: "・";
    line-height: 1.67;
    position: absolute;
    left: 0;
    top: 0;
    font-size: 14px;
  }
  .construction_section08 .alert_list li span {
    font-weight: 500;
    background: linear-gradient(to top, rgba(248, 181, 0, 0.32) 0%, rgba(248, 181, 0, 0.32) 40%, transparent 40%, transparent 100%);
  }
  .construction_section08 .alert_table_frame {
    margin-top: 24px;
    overflow-x: scroll;
  }
  .construction_section08 .alert_table {
    width: 650px;
  }
  .construction_section08 .alert_table th {
    height: 80px;
    text-align: center;
    font-weight: 400;
    line-height: 1.25;
    background-color: #faf9f5;
    border: 1px solid rgba(60, 44, 0, 0.14);
    width: 33.3%;
  }
  .construction_section08 .alert_table td {
    padding: 10px 0;
    font-weight: 400;
    line-height: 1.25;
    text-align: center;
    border: 1px solid rgba(60, 44, 0, 0.14);
  }
  .construction_section08 .alert_table th:first-child, .construction_section08 .alert_table td:first-child {
    background-color: #f4f2ea;
  }
  .construction_section09 {
    padding-bottom: 80px;
  }
  .construction_section09 .p01 {
    margin-top: 36px;
    font-size: 14px;
  }
  .construction_section09 .calendar_box {
    margin-top: 36px;
    overflow-x: scroll;
  }
  .construction_section09 .calendar_contents {
    position: relative;
    width: 600px;
  }
  .construction_section09 .construction_calendar {
    width: 100%;
  }
  .construction_section09 .calendar_icon01 {
    position: absolute;
    width: 200px;
    bottom: 380px;
    left: 12px;
  }
  .construction_section09 .calendar_icon02 {
    position: absolute;
    width: 160px;
    bottom: 87px;
    right: 0;
  }
  .construction_section10 {
    padding-bottom: 80px;
  }
  .construction_section10 .flex {
    display: flex;
    flex-direction: column-reverse;
    align-items: center;
    margin-top: 40px;
  }
  .construction_section10 .flex .thumb {
    width: 100%;
    flex-shrink: 0;
    margin-left: 0;
    padding-top: 0;
  }
  .construction_section10 .flex .thumb img {
    width: 100%;
  }
  .construction_section10 .flex .text_area {
    width: 100%;
    margin-top: 32px;
  }
  .construction_section10 .p01 {
    width: -moz-fit-content;
    width: fit-content;
    margin: 48px auto 0;
    position: relative;
    font-size: 20px;
    font-weight: 600;
    line-height: 1.33;
    padding-bottom: 20px;
  }
  .construction_section10 .p01 img {
    width: 100%;
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
  }
  .construction_section10 .tel_button {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 80px;
    border-radius: 40px;
    background-color: #68a357;
    pointer-events: auto;
    margin: 14px auto 0;
  }
  .construction_section10 .tel_button p {
    font-family: "Noto Serif JP", serif;
    font-size: 14px;
    font-weight: 700;
    line-height: 1.3;
    text-align: center;
    color: #fff;
    font-feature-settings: "palt";
    letter-spacing: 0;
  }
  .construction_section10 .tel_button p span {
    font-size: 24px;
    font-weight: 900;
    letter-spacing: 0.1em;
  }
  .construction_section10 .tel_button::before {
    content: "";
    width: 21px;
    height: 28px;
    background-image: url("../img/common/tel_icon_white.svg");
    margin-right: 14px;
  }
  .construction_section11 {
    padding-bottom: 80px;
  }
  .construction_section11 .faq_list {
    margin-top: 56px;
  }
  .construction_section11 .faq_block {
    margin-bottom: 24px;
    border: 2px solid rgba(248, 181, 0, 0.28);
  }
  .construction_section11 .faq_block:last-child {
    margin-bottom: 0;
  }
  .construction_section11 .faq_block .question_area {
    position: relative;
    padding: 24px 48px 24px 72px;
    line-height: 1.75;
    transition-duration: 0.4s;
    cursor: pointer;
    font-size: 14px;
  }
  .construction_section11 .faq_block .question_area:hover {
    background-color: rgba(248, 181, 0, 0.28);
  }
  .construction_section11 .faq_block .question_area::before {
    content: "Q";
    padding-bottom: 4px;
    font-family: "Noto Serif JP", serif;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background-color: #f8b500;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 16px;
    font-weight: bold;
    line-height: 1;
    color: #fff;
    position: absolute;
    top: 12px;
    left: 20px;
    box-sizing: border-box;
  }
  .construction_section11 .faq_block .question_area::after {
    content: "";
    width: 16px;
    height: 16px;
    background-image: url("../img/common/plus_orange.svg");
    position: absolute;
    right: 20px;
    top: 30px;
  }
  .construction_section11 .faq_block .question_area.active::after {
    height: 2px;
    background-image: url("../img/common/minus_orange.svg");
    top: 37px;
  }
  .construction_section11 .faq_block .answer_area {
    position: relative;
    padding: 24px 16px 24px 72px;
    line-height: 1.75;
    background-color: #faf9f5;
    font-size: 14px;
  }
  .construction_section11 .faq_block .answer_area::before {
    content: "A";
    padding-bottom: 4px;
    font-family: "Noto Serif JP", serif;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background-color: #f8b500;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 16px;
    font-weight: bold;
    line-height: 1;
    color: #fff;
    position: absolute;
    top: 12px;
    left: 20px;
    box-sizing: border-box;
  }
  /*
  --------------------------------------------------------
  一人親方特別加入 船員 (大部分は建設業と一緒)
  --------------------------------------------------------
  */
  body.sailor_body {
    position: relative;
  }
  .sailor_mv_section {
    background-image: url("../img/sailor/sailor_mv.jpg");
  }
  .sailor_section02 .reason_icon .sailor_reason01 {
    height: 110px;
  }
  .sailor_section02 .reason_icon .sailor_reason02 {
    height: 115px;
  }
  .sailor_section02 .reason_icon .sailor_reason03 {
    height: 113px;
  }
  .sailor_section02 .target_box {
    margin-top: 16px;
    border: solid 1px #2a2523;
    padding: 12px 20px;
  }
  .sailor_section02 .target_head {
    line-height: 1.63;
  }
  .sailor_section02 .target_list span {
    line-height: 1.63;
    display: inline-block;
    font-feature-settings: "palt";
  }
  .sailor_section03 .compare_box .sailor_bg01 {
    position: absolute;
    width: 330px;
    top: 100px;
    left: 0;
  }
  .sailor_section03 .compare_box .compare_left img.sailor_compare01 {
    width: 240px;
    margin: 0 auto;
  }
  .sailor_section04 .range_list .range_icon01 {
    width: 65px;
  }
  .sailor_section04 .range_list .range_icon02 {
    width: 90px;
  }
  .sailor_section04 .range_list .range_icon03 {
    width: 60px;
  }
  .sailor_section04 .range_box .range_text01 {
    line-height: 2;
    text-align: center;
  }
  .sailor_section04 .range_box .box_list {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
  }
  .sailor_section04 .range_box .box_list .box {
    min-width: 100%;
    padding: 16px;
    border-radius: 8px;
    background-color: #ebe8de;
    margin-top: 20px;
  }
  .sailor_section04 .range_box .box_list .common_wrap_info_text {
    text-align: center;
    line-height: 1.5;
    font-size: 14px;
    font-feature-settings: "palt";
  }
  .sailor_section04 .range_box .box_list .box04 {
    width: 100%;
    font-size: 14px;
  }
  .sailor_section06 .example_remark {
    margin-top: 32px;
    line-height: 2;
  }
  .sailor_section06 .exapmle_block02::before {
    top: -430px;
  }
  .sailor_section06 .exapmle_block01 .sailor_example_icon01 {
    top: 28px;
    width: 170px;
  }
  .sailor_section06 .exapmle_block02 .sailor_example_icon02 {
    top: -160px;
    width: 120px;
  }
  .sailor_section06 .exapmle_block03 .sailor_example_icon03 {
    top: 30px;
    width: 303px;
  }
  .sailor_section08 .color_box .sailor_entry_head {
    text-align: center;
    font-size: 15px;
    font-weight: 500;
  }
  .sailor_section08 .color_box .sailor_entry_list {
    text-align: center;
    font-weight: 500;
    font-size: 14px;
    line-height: 1.5;
  }
  .sailor_section08 .color_box .sailor_entry_list span {
    display: inline-block;
  }
  .sailor_section08 .link_list {
    display: flex;
    justify-content: space-between;
    max-width: 620px;
    margin: 16px auto 0;
    flex-direction: column;
  }
  .sailor_section08 .link_list .entry_button {
    width: 100%;
    height: 70px;
    margin-top: 12px;
  }
  .sailor_section08 .link_list .entry_button .button_text {
    font-size: 15px;
    font-weight: bold;
    line-height: 1.38;
    text-align: center;
  }
  .sailor_section08 .link_list .download_link {
    width: 100%;
    height: 70px;
    text-align: center;
    line-height: 1.38;
    font-size: 15px;
    margin-top: 12px;
    margin-left: 0;
  }
  /*
  --------------------------------------------------------
  介護・家政婦(夫)特別加入 (大部分は船員と一緒)
  --------------------------------------------------------
  */
  .housekeeper_body .housekeeper01 {
    background: linear-gradient(to right, #785a47, #84644e);
  }
  .housekeeper_body .housekeeper01::before {
    content: "";
    transition-duration: 0.3s;
    width: 100%;
    height: 100%;
    background: linear-gradient(to right, #785a47, #84644e);
    position: absolute;
    z-index: 3;
    top: 0;
    left: 0;
  }
  .housekeeper_body .housekeeper01::after {
    background: linear-gradient(to right, #785a47, #84644e);
  }
  .housekeeper_body .housekeeper02 {
    color: #f8a401;
    border: solid 2px #f8a401;
    background-color: #ffffff;
  }
  .housekeeper_body .housekeeper02::before {
    background-color: #f8a401;
  }
  .housekeeper_body .housekeeper02 .button_inner::after {
    border-color: transparent transparent #f8a401 transparent;
  }
  .housekeeper_body .ja_title {
    font-size: 30px;
  }
  /*
  --------------------------------------------------------
  協会案内
  --------------------------------------------------------
  */
  body.association_body {
    position: relative;
  }
  .association_mv_section {
    background-image: url("../img/association/association_mv.jpg");
  }
  .association_section01 {
    padding: 72px 0 40px;
  }
  .association_section01 .p01 {
    margin-top: 40px;
    font-size: 18px;
    font-weight: 600;
    line-height: 2.08;
    text-align: center;
  }
  .association_section01 .p01 span {
    border-bottom: 2px solid #f8b500;
    padding-bottom: 3px;
  }
  .association_section01 .p02 {
    line-height: 2;
    margin-top: 40px;
    font-size: 14px;
  }
  .association_section01 .p02 + .p02 {
    margin-top: 16px;
  }
  .association_section01 .p03 {
    margin-top: 20px;
    display: flex;
    justify-content: flex-end;
  }
  .association_section01 .p03 img {
    width: 180px;
  }
  .association_section02 {
    padding: 40px 0;
  }
  .association_section02 .info_list {
    margin-top: 40px;
  }
  .association_section02 .info_block {
    padding: 24px 0;
    display: flex;
    flex-direction: column;
    position: relative;
    border-bottom: 1px solid rgba(60, 44, 0, 0.14);
  }
  .association_section02 .info_block::before {
    content: "";
    width: 21%;
    height: 1px;
    background-color: #3c2c00;
    position: absolute;
    z-index: 1;
    left: 0;
    bottom: 0;
  }
  .association_section02 .info_block .info_left {
    width: 100%;
    font-weight: 500;
    line-height: 1.75;
  }
  .association_section02 .info_block .info_right {
    width: 100%;
    padding-left: 0;
    margin-top: 16px;
  }
  .association_section02 .info_block .info_text {
    line-height: 1.75;
  }
  .association_section02 .info_block .info_text a {
    color: #3c2c00;
  }
  .association_section02 .info_block .dot_ul li {
    display: flex;
    line-height: 1.75;
  }
  .association_section02 .info_block .dot_ul li::before {
    content: "・";
    line-height: 1.75;
  }
  .association_section02 .association_block {
    padding: 20px 0 32px 20px;
    border-bottom: 1px solid rgba(60, 44, 0, 0.14);
  }
  .association_section02 .association_block:last-child {
    border-bottom: none;
  }
  .association_section02 .association_block .association_title {
    font-size: 15px;
    line-height: 1.2;
    position: relative;
  }
  .association_section02 .association_block .association_title::before {
    content: "";
    width: 12px;
    height: 12px;
    background-color: #f8b500;
    border-radius: 50%;
    position: absolute;
    top: 4px;
    left: -20px;
  }
  .association_section02 .association_block .association_info {
    margin-top: 16px;
    font-weight: 400;
    line-height: 1.5;
    color: #3c2c00;
    font-size: 14px;
  }
  .association_section02 .association_block .association_info .tel {
    color: #3c2c00;
    pointer-events: auto;
    font-weight: 400;
  }
  .association_section02 .association_block .association_info .fax a {
    color: #3c2c00;
    pointer-events: none;
    font-weight: 400;
  }
  .association_section02 .association_block .association_flex {
    display: flex;
    justify-content: space-between;
    flex-direction: column;
    align-items: center;
    margin-top: 16px;
  }
  .association_section02 .association_block .association_img_frame {
    width: 190px;
    /* height:auto; */
    height: 260px;
    flex-shrink: 0;
    margin-right: 0;
  }
  .association_section02 .association_block .association_img_frame img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
  }
  .association_section02 .association_block .association_map_frame {
    width: 100%;
    height: 150px;
    margin-top: 24px;
  }
  .association_section02 .association_block .association_map_frame iframe {
    display: block;
    width: 100%;
    height: 100%;
  }
  .association_section03 {
    padding: 40px 0 80px;
  }
  .association_section03 .p01 {
    margin-top: 48px;
    line-height: 2;
    display: flex;
    justify-content: center;
    font-size: 14px;
  }
  .association_section03 .history_list {
    margin-top: 60px;
    padding-bottom: 80px;
    position: relative;
  }
  .association_section03 .history_list::before {
    content: "";
    width: 2px;
    height: calc(100% - 45px);
    background-color: #f8b500;
    position: absolute;
    top: 16px;
    left: 95px;
    z-index: -1;
  }
  .association_section03 .history_block {
    display: flex;
    align-items: flex-start;
    margin-top: 48px;
  }
  .association_section03 .history_block:first-child {
    margin-top: 0;
  }
  .association_section03 .history_block2007 {
    margin-top: 56px;
  }
  .association_section03 .history_block .year_block {
    flex-shrink: 0;
    width: 90px;
    font-family: "Noto Serif JP", serif;
    font-size: 28px;
    font-weight: 600;
    line-height: 1;
    color: #f8b500;
  }
  .association_section03 .history_block .radi {
    width: 12px;
    height: 12px;
    border-radius: 50%;
    background-color: #f8b500;
    flex-shrink: 0;
    margin-top: 10px;
  }
  .association_section03 .history_block .history_info {
    width: 100%;
    padding-left: 16px;
    line-height: 2;
  }
  .association_section03 .history_block .month_block {
    display: flex;
    padding-top: 2px;
    font-size: 13px;
  }
  .association_section03 .history_block .month {
    width: 42px;
    flex-shrink: 0;
    font-size: 13px;
  }
  /*
  --------------------------------------------------------
  求人情報
  --------------------------------------------------------
  */
  body.recruit_body {
    position: relative;
  }
  .recruit_mv_section {
    background-image: url("../img/recruit/recruit_mv.jpg");
  }
  .recruit_section01 {
    padding: 70px 0 40px;
  }
  .recruit_section01 .flex {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-direction: column;
  }
  .recruit_section01 .flex .left {
    width: 100%;
    height: auto;
    position: relative;
    padding-top: 10px;
  }
  .recruit_section01 .left .recruit01 {
    width: 80%;
  }
  .recruit_section01 .left .recruit02 {
    width: 60%;
    position: absolute;
    z-index: 2;
    bottom: -80px;
    right: 0;
  }
  .recruit_section01 .flex .right {
    width: 100%;
    margin-top: 120px;
  }
  .recruit_section01 .flex .p01 {
    font-family: "Noto Serif JP", serif;
    font-size: 18px;
    font-weight: 600;
    line-height: 1.83;
  }
  .recruit_section01 .flex .p01 span {
    border-bottom: 2px solid #f8b500;
    padding-bottom: 4px;
  }
  .recruit_section01 .flex .p02 {
    margin-top: 20px;
    line-height: 2;
    font-size: 14px;
  }
  .recruit_section01 .flex .p02 + .p02 {
    margin-top: 8px;
  }
  .recruit_section01 .entry_link {
    width: 300px;
    height: 76px;
    margin: 56px auto 0;
  }
  .recruit_section02 {
    padding: 40px 0 80px;
  }
  .recruit_section02 .appli_list {
    margin-top: 48px;
  }
  .recruit_section02 .appli_block {
    padding: 24px 0;
    display: flex;
    flex-direction: column;
    position: relative;
    border-bottom: 1px solid rgba(60, 44, 0, 0.14);
  }
  .recruit_section02 .appli_block::before {
    content: "";
    width: 21%;
    height: 1px;
    background-color: #3c2c00;
    position: absolute;
    z-index: 1;
    left: 0;
    bottom: 0;
  }
  .recruit_section02 .appli_block .appli_left {
    width: 100%;
    font-weight: 500;
    line-height: 1.75;
  }
  .recruit_section02 .appli_block .appli_right {
    width: 100%;
    padding-left: 0;
    margin-top: 12px;
  }
  .recruit_section02 .appli_block .appli_text {
    line-height: 1.75;
    font-size: 14px;
  }
  .recruit_section02 .appli_block .appli_text + .appli_text {
    margin-top: 12px;
  }
  .recruit_section02 .appli_block .appli_text a {
    color: #3c2c00;
  }
  .recruit_section02 .appli_block .dot_ul li {
    display: flex;
    line-height: 1.75;
    font-size: 14px;
  }
  .recruit_section02 .appli_block .dot_ul li::before {
    content: "・";
    line-height: 1.75;
    font-size: 14px;
  }
  .recruit_section02 .entry_link {
    width: 300px;
    height: 76px;
    margin: 56px auto 0;
  }
  /*
  --------------------------------------------------------
  お知らせ
  --------------------------------------------------------
  */
  body.news_body {
    position: relative;
  }
  body.news_single_body::before {
    content: "";
    width: 100%;
    height: 100%;
    background-color: #faf9f5;
    position: absolute;
    top: 0;
    left: 0;
    z-index: -10;
  }
  .news_mv_section {
    background-image: url("../img/news/news_mv.jpg");
  }
  .news_section01 {
    padding: 72px 0 80px;
  }
  .news_section01 .p01 {
    line-height: 1.75;
    text-align: left;
    margin-bottom: 56px;
    font-size: 16px;
  }
  .news_section01 .flex {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    flex-direction: column;
  }
  .news_section01 article {
    width: 100%;
  }
  .news_section01 article .news_single_frame {
    padding: 40px 16px;
    background-color: #fff;
  }
  .news_section01 article .news_single_title {
    font-family: "Noto Serif JP", serif;
    font-weight: 500;
    font-size: 24px;
    line-height: 1.4;
    border-bottom: 1px solid #3c2c00;
    padding-bottom: 8px;
    margin-bottom: 24px;
  }
  .news_section01 .news_link {
    width: 300px;
    height: 76px;
    margin: 80px auto 0;
  }
  .news_section01 body.qa_body {
    position: relative;
  }
  body.qa_single_body::before {
    content: "";
    width: 100%;
    height: 100%;
    background-color: #faf9f5;
    position: absolute;
    top: 0;
    left: 0;
    z-index: -10;
  }
  .qa_mv_section {
    background-image: url("../img/qa/qa_mv.jpg");
  }
  .qa_section01 {
    padding: 64px 0 80px;
  }
  .qa_section01 .p01 {
    margin-bottom: 48px;
    line-height: 1.75;
    font-size: 16px;
    text-align: left;
    /* font-feature-settings: 'palt'; */
  }
  .qa_section01 .flex {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-direction: column;
  }
  .qa_section01 article {
    width: 100%;
  }
  .qa_section01 .common_faq_list .common_faq_block .question_area {
    padding: 36px 36px 24px 64px;
  }
  .qa_section01 .common_faq_list .common_faq_block .question_area::before {
    width: 40px;
    height: 40px;
    top: 32px;
  }
  .qa_section01 .qa_single_frame {
    padding: 40px 16px 40px;
    background-color: #fff;
  }
  .qa_section01 .qa_single_frame .qa_category {
    width: -moz-fit-content;
    width: fit-content;
    max-width: 100%;
    display: flex;
    align-items: center;
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 8px 16px;
    background-color: #3c2c00;
    font-family: "Noto Serif JP", serif;
    font-size: 18px;
    font-weight: normal;
    line-height: 1.3;
    color: #fff;
  }
  .qa_section01 .qa_single_frame .qa_question_area {
    display: flex;
    margin-top: 32px;
  }
  .qa_section01 .qa_single_frame .qa_question_area::before {
    content: "Q";
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background-color: #f8b500;
    display: flex;
    justify-content: center;
    align-items: center;
    margin-right: 20px;
    flex-shrink: 0;
    font-family: "Noto Serif JP", serif;
    font-size: 20px;
    font-weight: bold;
    line-height: 1;
    color: #fff;
    padding-bottom: 4px;
  }
  .qa_section01 .qa_single_frame .qa_question {
    font-family: "Noto Serif JP", serif;
    font-size: 16px;
    font-weight: 500;
    line-height: 1.6;
  }
  .qa_section01 .qa_single_frame .qa_border {
    height: 1px;
    background-color: #3c2c00;
    margin: 20px 0 0;
  }
  .qa_section01 .qa_single_frame .qa_answer_area {
    display: flex;
    margin-top: 12px;
  }
  .qa_section01 .qa_single_frame .qa_answer_area::before {
    content: "A";
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background-color: #3c2c00;
    display: flex;
    justify-content: center;
    align-items: center;
    margin-right: 20px;
    flex-shrink: 0;
    font-family: "Noto Serif JP", serif;
    font-size: 20px;
    font-weight: bold;
    line-height: 1;
    color: #fff;
    padding-bottom: 4px;
  }
  .qa_section01 .qa_single_frame .qa_answer {
    line-height: 1.75;
    padding-top: 4px;
    font-size: 14px;
  }
  .qa_section01 .qa_single_frame .contact_block {
    border: solid 1px #3c2c00;
    padding: 24px 16px;
    margin-top: 32px;
  }
  .qa_section01 .qa_single_frame .contact_block .contact_link_flex {
    display: flex;
    justify-content: space-between;
    flex-direction: column;
  }
  .qa_section01 .qa_single_frame .contact_block .entry_button {
    width: 100%;
    height: 92px;
  }
  .qa_section01 .qa_single_frame .contact_block .entry_button .button_text {
    font-size: 18px;
    font-weight: bold;
    line-height: 1.11;
    text-align: center;
    color: #fff;
  }
  .qa_section01 .qa_single_frame .contact_block .entry_button .button_sub_text {
    width: 209px;
    height: 26px;
    border-radius: 13px;
    background-color: #fff;
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 4px auto 0;
    font-weight: bold;
    line-height: 1;
    color: #f8a401;
  }
  .qa_section01 .qa_single_frame .contact_block .contact_button {
    width: 100%;
    height: 94px;
    background-color: rgba(104, 163, 87, 0.06);
    margin-top: 16px;
  }
  .qa_section01 .qa_single_frame .contact_block .contact_button .button_text {
    font-size: 18px;
    font-weight: bold;
  }
  .qa_section01 .qa_single_frame .contact_block .tel_text {
    font-size: 15px;
    font-style: normal;
    line-height: 1.3;
    display: flex;
    justify-content: center;
    flex-direction: column;
    margin-top: 24px;
  }
  .qa_section01 .qa_single_frame .contact_block .tel_text span {
    margin-right: 0;
    margin-bottom: 8px;
  }
  .qa_section01 .qa_single_frame .contact_block .tel_flex {
    display: flex;
    justify-content: center;
    flex-direction: column;
    align-items: center;
    margin-top: 12px;
  }
  .qa_section01 .qa_single_frame .contact_block .tel {
    position: relative;
    pointer-events: auto;
    font-family: "Noto Serif JP", serif;
    font-size: 28px;
    font-weight: 600;
    line-height: 1;
    color: #3c2c00;
    padding-left: 32px;
  }
  .qa_section01 .qa_single_frame .contact_block .tel::before {
    content: "";
    width: 21px;
    height: 28px;
    background-image: url("../img/common/tel_icon.png");
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
  }
  .qa_section01 .qa_single_frame .contact_block .tel_time {
    font-size: 13px;
    font-weight: normal;
    line-height: 1;
    text-align: center;
    color: #3c2c00;
    padding-left: 32px;
  }
  .qa_section01 .qa_single_frame .contact_block .tel_border {
    width: 100%;
    height: 1px;
    background-color: #68a357;
    margin: 16px 0;
  }
  .qa_section01 .qa_single_frame .contact_block .fax {
    font-family: "Noto Serif JP", serif;
    font-size: 28px;
    font-weight: 600;
    line-height: 1;
    color: #3c2c00;
    display: flex;
    justify-content: center;
    align-items: center;
  }
  .qa_section01 .qa_single_frame .contact_block .fax::before {
    content: "";
    width: 26px;
    height: 26px;
    background-image: url("../img/common/fax_icon.svg");
    margin-right: 12px;
  }
  .qa_section01 .qa_single_frame .contact_block .fax a {
    color: #3c2c00;
    pointer-events: none;
  }
  .qa_section01 .qa_button {
    width: 300px;
    height: 76px;
    margin: 80px auto 0;
  }
  .qa_section02 {
    padding: 80px 0;
    background-color: #fff;
  }
  .qa_section02 h2 {
    font-family: "Noto Serif JP", serif;
    font-size: 24px;
    font-weight: 500;
    line-height: 1;
    text-align: left;
    color: #3c2c00;
    display: flex;
    align-items: center;
    margin-bottom: 36px;
  }
  .qa_section02 h2::before {
    content: "";
    width: 16px;
    height: 16px;
    background-color: #3c2c00;
    margin-right: 16px;
  }
  .qa_section02 .common_faq_list li {
    max-width: 824px;
  }
  .qa_section02 .common_faq_list .common_faq_block .question_area {
    padding: 36px 36px 24px 64px;
  }
  .qa_section02 .common_faq_list .common_faq_block .question_area::before {
    width: 40px;
    height: 40px;
    top: 32px;
  }
  .qa_section02 .common_faq_list .common_faq_block .qa_category {
    background-color: #3c2c00;
  }
  /*
  --------------------------------------------------------
  情報発信一覧
  --------------------------------------------------------
  */
  body.information_body {
    position: relative;
  }
  body.information_single_body::before {
    content: "";
    width: 100%;
    height: 100%;
    background-color: #faf9f5;
    position: absolute;
    top: 0;
    left: 0;
    z-index: -10;
  }
  .information_mv_section {
    background-image: url("../img/information/information_mv.jpg");
  }
  .information_section01 {
    padding: 64px 0 80px;
  }
  .information_section01 .p01 {
    line-height: 1.75;
    font-size: 16px;
    text-align: left;
  }
  .information_section02 {
    padding: 80px 0 48px;
    background-color: #faf9f5;
  }
  .information_section02 .information_list {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    flex-wrap: wrap;
  }
  .information_section02 .information_list li {
    width: 100%;
    margin-right: 0;
    margin-bottom: 40px;
  }
  .information_section02 .information_list li:nth-child(3n) {
    margin-right: 0;
  }
  .information_section02 .information_card {
    display: block;
    min-height: 290px;
    overflow: hidden;
    background-color: #fff;
    transition-duration: 0.4s;
    padding: 32px 20px 24px;
    box-shadow: 0 0 9.6px 0.4px rgba(253, 175, 9, 0.09);
    color: #3c2c00;
    font-weight: 400;
  }
  .information_section02 .information_card .date {
    font-family: "Noto Serif JP", serif;
    line-height: 1;
  }
  .information_section02 .information_card .information_title {
    font-family: "Noto Serif JP", serif;
    font-size: 18px;
    min-height: 55px;
    line-height: 1.45;
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
  }
  .information_section02 .information_card .border {
    width: 100vw;
    margin: 16px calc(50% - 50vw);
    height: 1px;
    background-color: #f8b500;
    opacity: 0.18;
  }
  .information_section02 .information_card .information_text {
    line-height: 1.75;
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 4;
  }
  .information_section02 .information_card .information_text br {
    display: none;
  }
  .single_information_section01 {
    padding: 56px 0 88px;
  }
  .single_information_section01 .information_single_frame {
    padding: 24px 16px;
    background-color: #fff;
  }
  .single_information_section01 .information_single_frame .date {
    font-family: "Noto Serif JP", serif;
    font-size: 18px;
    font-weight: 300;
    line-height: 1;
  }
  .single_information_section01 .information_single_frame .information_title {
    font-family: "Noto Serif JP", serif;
    font-size: 20px;
    font-weight: 500;
    line-height: 1.33;
    padding-bottom: 12px;
    border-bottom: 2px solid #f8b500;
    margin-top: 16px;
    margin-bottom: 16px;
  }
  .single_information_section01 .information_single_frame .information_button {
    width: 300px;
    height: 76px;
    margin: 56px auto 0;
  }
  /*
  --------------------------------------------------------
  個人情報保護方針
  --------------------------------------------------------
  */
  body.privacy_body {
    position: relative;
  }
  .privacy_mv_section {
    background-image: url("../img/privacy/privacy_mv.jpg");
  }
  .privacy_section h2 {
    font-family: "Noto Serif JP", serif;
    font-size: 20px;
    font-weight: 600;
    line-height: 1.4;
    width: -moz-fit-content;
    width: fit-content;
    padding-bottom: 8px;
    border-bottom: 2px solid #f8b500;
  }
  .privacy_section .p01 {
    line-height: 2;
    letter-spacing: 0.16em;
    font-feature-settings: "palt";
    margin-top: 24px;
  }
  .privacy_section .privacy_title {
    font-weight: 500;
    font-size: 18px;
    margin-top: 40px;
  }
  .privacy_section .privacy_text {
    font-weight: 400;
    line-height: 1.75;
    letter-spacing: 0.16em;
    font-feature-settings: "palt";
    margin-top: 8px;
    font-size: 14px;
  }
  .privacy_section .privacy_sub_title {
    display: inline-block;
    font-weight: 500;
    font-size: 16px;
    margin-top: 24px;
    margin-bottom: 4px;
  }
  .privacy_section .privacy_border {
    height: 1px;
    background-color: #3c2c00;
    margin-top: 32px;
  }
  .privacy_section01 {
    padding: 80px 0 80px;
  }
  .privacy_section01 .block01, .privacy_section01 .block02 {
    margin-top: 32px;
  }
  .privacy_section01 .block p {
    line-height: 1.75;
    font-size: 14px;
  }
  .privacy_section a {
    color: #3c2c00;
  }
  .privacy_section a.pdf {
    border-bottom: 1px solid #3c2c00;
  }
  .privacy_section .tel {
    pointer-events: auto;
  }
  .privacy_section02 {
    padding: 0 0 80px;
  }
  /*
  --------------------------------------------------------
  当サイトについて
  --------------------------------------------------------
  */
  body.about_body {
    position: relative;
  }
  .about_mv_section {
    background-image: url("../img/about/about_mv.jpg");
  }
  .about_section01 {
    padding: 0 0 80px;
  }
  .about_section01 .p01 {
    text-align: left;
    line-height: 1.75;
  }
  .about_section01 .about_title {
    font-size: 17px;
    font-weight: 500;
    margin-top: 64px;
  }
  .about_section01 .about_text {
    margin-top: 16px;
    line-height: 1.75;
    font-size: 14px;
  }
  .about_section01 a {
    color: #3c2c00;
  }
  .about_section01 a.tel {
    pointer-events: auto;
  }
  .about_section01 .table_frame {
    margin-top: 24px;
    overflow-x: scroll;
  }
  .about_section01 table {
    width: 650px;
  }
  .about_section01 table th {
    border: 1px solid rgba(60, 44, 0, 0.14);
    padding: 12px 16px;
  }
  .about_section01 table td {
    border: 1px solid rgba(60, 44, 0, 0.14);
    padding: 12px 16px;
    font-size: 14px;
  }
  .about_section01 table th {
    background-color: #faf9f5;
  }
  /*
  --------------------------------------------------------
  サイトマップ
  --------------------------------------------------------
  */
  body.sitemap_body {
    position: relative;
  }
  .sitemap_mv_section {
    background-image: url("../img/sitemap/sitemap_mv.jpg");
  }
  .sitemap_section01 {
    padding: 70px 0 80px;
  }
  .sitemap_section01 .ul_flex {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    flex-direction: column;
    align-items: flex-start;
  }
  .sitemap_section01 .ul_flex .menu_block02 {
    margin: 0;
    margin-top: 64px;
    margin-left: 0;
  }
  .sitemap_section01 a {
    transition-duration: 0.4s;
  }
  .sitemap_section01 .parent_list02 + .parent_list02 {
    margin-top: 72px;
  }
  .sitemap_section01 .parent_item {
    margin-top: 32px;
    width: -moz-fit-content;
    width: fit-content;
  }
  .sitemap_section01 .parent_item:first-child {
    margin-top: 0;
  }
  .sitemap_section01 .parent_link {
    font-weight: 500;
    line-height: 1.3;
    color: #3c2c00;
  }
  .sitemap_section01 .child_list {
    border-top: 1px solid #3c2c00;
    margin-top: 20px;
    padding-top: 20px;
  }
  .sitemap_section01 .child_item {
    margin-top: 32px;
  }
  .sitemap_section01 .child_item:first-child {
    margin-top: 0;
  }
  .sitemap_section01 .child_link {
    display: flex;
    align-items: flex-start;
    font-weight: 500;
    line-height: 1.3;
    color: #3c2c00;
  }
  .sitemap_section01 .child_link::before {
    content: "";
    width: 10px;
    height: 10px;
    background-color: #f8b500;
    border-radius: 50%;
    margin-top: 6px;
    margin-right: 8px;
  }
  .sitemap_section01 .ul_flex .menu_block03 {
    /* display: none; */
  }
  .sitemap_section01 .ul_flex .parent_list03 {
    margin-top: 72px;
  }
  /*
  --------------------------------------------------------
  一人親方特別加入申し込みフォーム
  --------------------------------------------------------
  */
  .application_mv_section {
    background-image: url("../img/application/application_mv.jpg");
  }
  .form_section01 {
    padding: 40px 0;
  }
  .form_section01 .form_txt {
    line-height: 1.75;
    text-align: left;
    margin-bottom: 50px;
  }
  .form_section01 .form_txt a {
    color: #f8a300;
    font-weight: 700;
    position: relative;
    padding-right: 20px;
    display: inline-block;
    transition: 0.2s;
  }
  .form_section01 .form_txt a::before {
    content: "";
    width: 8px;
    height: 8px;
    border-right: solid 2px #f8a300;
    border-bottom: solid 2px #f8a300;
    position: absolute;
    top: 50%;
    right: 5px;
    transform: translateY(-37.5%) rotate(-45deg);
    transition: 0.2s;
  }
  .form_section01 .form_txt a:hover {
    opacity: 0.7;
    transition: 0.2s;
  }
  .form_section01 .form_txt a:hover::before {
    right: 0;
    transition: 0.2s;
  }
  .form_section01 .form_txt.application_txt01 {
    margin-bottom: 30px;
  }
  .form_section01 .form_txt.application_txt02 {
    text-align: center;
  }
  .common_oyakata_list li {
    width: 100%;
    margin-top: 20px !important;
    margin-right: 0;
  }
  .common_oyakata_list li:nth-of-type(1) {
    margin-top: 0 !important;
  }
  /*
  --------------------------------------------------------
  お問い合わせフォーム
  --------------------------------------------------------
  */
  .contact_mv_section {
    background-image: url("../img/contact/contact_mv.jpg");
  }
  /*
  --------------------------------------------------------
  求人応募フォーム
  --------------------------------------------------------
  */
  .entry_mv_section {
    background-image: url("../img/entry/entry_mv.jpg");
  }
  /*
  --------------------------------------------------------
  サンクスページ
  --------------------------------------------------------
  */
  .thanks_section01 {
    padding: 40px 0;
  }
  .thanks_section01 .thanks_txt01 {
    line-height: 1.75;
    text-align: center;
  }
  .thanks_section01 .thanks_btn01 {
    margin-top: 30px;
  }
  .thanks_section01 .thanks_btn01 a {
    margin: 0 auto;
  }
}
/*@media(max-width:767px){*//*# sourceMappingURL=style-sp.css.map */