
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@300;400;500;600;700;800;900&family=Noto+Serif+JP:wght@400;500;600;700;900&family=Roboto:wght@300;400;500;700;900&display=swap');

*{
  margin:0;
  padding:0;
  list-style: none;
  box-sizing: border-box;
  text-decoration: none;
  background-size: cover;
  background-position: center;
}

*::before,
*::after{
  background-size: cover;
  background-position: center;
  box-sizing: border-box;
}

html {
  -ms-text-size-adjust: none;
  -webkit-text-size-adjust: none;
}

body{
  font-size: 16px;
  letter-spacing: 0.08em;
  font-family:'メイリオ', 'Meiryo', sans-serif;
  font-family: 'Noto Sans CJK JP' , 'Noto Sans JP'  ,sans-serif;
  -webkit-font-smoothing: antialiased;
  -ms-text-size-adjust: none;
  -webkit-text-size-adjust: none;
  color: #3c2c00;
}

body.fixed {
  width: 100%;
  height: 100%;
  position: fixed!important;
}

img{
  display: block;
  object-position: center;
}

main{
  overflow: hidden;
  padding-top: 150px;
}

main.wrap_main{
  overflow: visible;
}

.serif{
  font-family: 'Noto Serif JP', serif;
}

.hide{
  display: none!important;
}

table{

  border-collapse: collapse;
}

/*
--------------------------------------------------------
共通パーツ
--------------------------------------------------------
*/

.container{
  max-width:1200px;
  margin:0 auto;
}

/*
--------------------------------------------------------
共通パーツ ボタン関係
--------------------------------------------------------
*/
.common_link_button{
  width: 300px;
  height: 76px;
  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;
}

@media(min-width:1025px){
  .common_link_button:hover::before{
    width:100%;
  }
  
}

.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 16px 16px;
  position: absolute;
  right:4px;
  bottom:4px;
  transition-duration: 0.3s;
  transition-delay: 0s;
  z-index: 4;
}
@media(min-width:1025px){
  .common_link_button:hover .button_inner::after{
    transition-delay: 0.2s;
  }
}

.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;
}
@media(min-width:1025px){
  .common_link_button.green:hover{
    color:#fff;
  }
  .common_link_button.green .button_inner:hover::after{
    border-color: transparent transparent #fff transparent;
  }
}/*@media(min-width:1025px){*/


.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;
}
@media(min-width:1025px){
  .common_link_button.orange:hover{
    color:#fff;
  }
  .common_link_button.orange:hover .button_inner::after{
    border-color: transparent transparent #fff transparent;
  }
}/*@media(min-width:1025px){*/



.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;
}
@media(min-width:1025px){
  .common_link_button.orange_gra:hover::before{
    transition-delay:0s;
  }
  .common_link_button.orange_gra:hover::after{
    transition-duration: 0s;
    width:0;
  }
}



/*
--------------------------------------------------------
共通パーツ セクションのタイトルセット
--------------------------------------------------------
*/


.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: 36px;
  font-weight: 600;
  line-height: 1;
  color: #3c2c00;
  margin-bottom: 12px;
  letter-spacing: 0.12em;
}

.common_title_set .en_title{
  font-size: 20px;
  font-weight: 500;
  line-height: 1;
  color: #68a357;

}


/*
--------------------------------------------------------
共通パーツ セクションタイトル(下線オレンジボーダー)
--------------------------------------------------------
*/

.common_bottom_border_title{
  font-family: 'Noto Serif JP', serif;
  font-size: 40px;
  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: 3px;
  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: 34px;
  font-weight: 500;
  line-height: 1.3;
  background-color: #faf9f5;
}

.common_left_border_title::before{
  content:"";
  width: 4px;
  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:1200px;
  margin:72px auto 0;
}


.common_wrap_flex .common_wrap_left{
  position: sticky;
  top: 150px;
  left: 0;
  max-width:300px;
}

.common_wrap_flex .common_wrap_left li{
  display: flex;
  align-items: flex-start;
  font-weight: 500;
  line-height: 1.5;
  color: #8f8977;
  margin-bottom:8px;
  transition-duration: 0.4s;
  cursor: pointer;
}

.common_wrap_flex .common_wrap_left li::before{
  content:"";
  width: 14px;
  height: 14px;
  border-radius: 50%;
  background-color: #f8b500;
  flex-shrink: 0;
  margin-right: 8px;
  transition-duration: 0.4s;
  margin-top: 5px;
  opacity: 0;
}

.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;
}

@media(min-width:1025px){
  .common_wrap_flex .common_wrap_left li:hover{
    color:#3c2c00;
  }
  
  .common_wrap_flex .common_wrap_left li:hover::before{
    opacity: 1;
  }
}

.common_wrap_flex .common_wrap_right{
  width:860px;
  max-width: 100%;
  /* overflow: hidden; */
}

.common_wrap_info_text{
  font-weight: 400;
  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: 34px;
  font-weight: 500;
  line-height: 1.3;
  border-bottom:2px solid #3c2c00;
  padding-bottom: 14px;
}


.common_orange_border_text{
  font-family: 'Noto Serif JP', serif;
  font-size: 24px;
  font-weight: 600;
  line-height: 1;
  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:4px solid #3c2c00;
  margin:24px 0;
}

.common_single_block h3{
  font-family: 'Noto Serif JP', serif;
  font-size: 18px;
  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;
}

.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{

}

.common_news_list li{
  margin-bottom: 20px;
}
.common_news_list li:last-child{
  margin-bottom: 0;
}

.common_news_list .common_news_block{
  position: relative;
  display: block;
  padding-right: 56px;
  padding:24px 56px 24px 30px;
  background-color: #faf9f5;
  transition-duration: 0.4s;
}
.common_news_list .common_news_block:hover{
  background-color: #fffbf0;
}

.common_news_list .common_news_block::after{
  content:"";
  width:12px;
  height:20px;
  background-image: url('../img/common/arrow_right_orange.svg');
  position: absolute;
  right:24px;
  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;
  width:102px;
}

.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: 14px;
  font-weight: 400;
  line-height: 1.75;
  color: #3c2c00;

}


/*
--------------------------------------------------------
共通パーツ サイドバー
--------------------------------------------------------
*/

.common_sidebar{
  width:330px;
}

.common_sidebar .category_area{
  border-radius: 3px;
  border: solid 1px #3c2c00;
}

.common_sidebar .category_head{
  height: 60px;
  background-color: #3c2c00;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 18px;
  font-weight: 500;
  color:#fff;
  line-height: 1;
}

.common_sidebar .category_list li{
  border-bottom:1px solid rgba(60,44,00.14);
}

.common_sidebar .category_list li:last-child{
  border-bottom: none;
}

.common_sidebar .category_list li a{
  display: block;
  transition-duration: 0.4s;
  padding:20px;
  font-weight: 400;
  line-height: 1.2;
  color: #3c2c00;
}

.common_sidebar .category_list li a.active{
  background-color: #fffbf0;
}

@media(min-width:1025px){
  .common_sidebar .category_list li a:hover{
    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: 38px;
  height: 38px;
  background-color: #f8b500;
  border-radius: 50%;
  color: #ffffff;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 20px;
  font-weight: 700;
  line-height: 1;
  margin:0 4px;
}

.common_pagenation a.page-numbers{
  width: 38px;
  height: 38px;
  border-radius: 50%;
  color: #3c2c00;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 20px;
  font-weight: 700;
  line-height: 1;
  margin:0 4px;
  transition-duration: 0.4s;
}


.common_pagenation a.page-numbers:hover{
  background-color: #f8b500;
  color: #ffffff;
}


/*
--------------------------------------------------------
共通パーツ 労務相談Q＆A
--------------------------------------------------------
*/

.common_faq_list{

}

.common_faq_list .common_faq_block{
  margin-bottom: 24px;
  border:2px 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;
  display: block;
  padding:24px 48px 24px 88px;
  line-height: 1.75;
  transition-duration: 0.4s;
  cursor: pointer;
  color: #3c2c00;
}

.common_faq_list .common_faq_block .question_area:hover{
  background-color: rgba(248,181,0,0.28);
}

.common_faq_list .common_faq_block .question_area::before{
  content:"Q";
  padding-bottom: 4px;
  font-family: 'Noto Serif JP', serif;
  width: 50px;
  height: 50px;
  border-radius: 50%;
  background-color: #f8b500;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 20px;
  font-weight: bold;
  line-height: 1;
  color: #fff;
  position: absolute;
  top:16px;
  left:20px;
  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:24px;
  top:0;
  bottom:0;
  margin:auto;
}

.common_faq_list .common_faq_block .qa_category{
  display: flex;
  justify-content: center;
  align-items: center;
  position: absolute;
  top:-2px;
  left:-2px;
  height: 24px;
  background-color: #3c2c00;
  padding:0 10px;
  font-size: 14px;
  font-weight: 500;
  line-height: 1.3;
  color: #fff;
}


/*
--------------------------------------------------------
アニメーション関係
--------------------------------------------------------
*/

.common_hover_opa{
  transition: 0.3s;
}


@media(min-width:1025px){
  .common_hover_opa:hover{
    opacity: 0.7;
  }
}


.js_switch_open{
  cursor: pointer;
}

.js_switch_contents{
  display:none;
}



/*
--------------------------------------------------------
共通セクション　ヘッダー
--------------------------------------------------------
*/

header{
  position: fixed;
  width:100%;
  z-index:100;
  background-color: #fff;
  top:0;
  left:0;
}

header .header_inner{
  padding:0 16px;
}

header .header_logo{
  display: flex;
  align-items: flex-end;
  flex-shrink: 0;
}

header .header_logo img{
  height:66px;
}

header .header_logo .logo_text{
  margin-left: 24px;
  color: #3c2c00;
  font-family: 'Noto Serif JP', serif;
  font-size: 13px;
  line-height: 1.3;
  font-weight: 400;
  padding-bottom: 12px;  
}

header .header_line01{
  border-bottom:2px solid #faf9f5;
}

header .header_line01.close{
  display: none;
}


header .header_line01 .header_flex01{
  height:100px;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

header .header_line01 .header_menu01{
  display: flex;
  justify-content: flex-end;
  align-items: center;
}

header .header_line01 .header_menu01 li{
  margin-left: 10px;
}

header .header_line01 .page_link{
  width: 170px;
  height: 52px;
  background-color: rgba(248,181,0,0.1);
}

header .header_line01 .page_link .button_text{
  font-size: 14px;
  line-height: 1.3;
  text-align: center;
}

header .header_line01 .page_link .button_inner::after{
  border-width: 0 0 10px 10px;
}

header .header_line01 .form_link,
header .header_line01 .contact_link{
  width: 220px;
  height: 62px;
}

header .header_line01 .form_link .button_text,
header .header_line01 .contact_link .button_text{
  font-size: 18px;
  font-weight: bold;
}

header .header_line01 .form_link .button_inner::after,
header .header_line01 .contact_link .button_inner::after{
  border-width: 0 0 12px 12px;
}

header .header_line01 .tel_block{
  display: block;
  pointer-events: none;
  color: #3c2c00;
}

header .header_line01 .tel_block .tel00{
  display: flex;
  justify-content: center;
  align-items: center;
  width:fit-content;
  margin:0 auto;
  height:22px;
  border-radius: 11px;
  background-color: #68a357;
  padding:0 20px;
  font-size: 14px;
  font-weight: 500;
  color:#fff;
}

header .header_line01 .tel_block .tel01{
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 24px;
  font-weight: bold;
  line-height: 1;
  letter-spacing: 0.1em;
}

header .header_line01 .tel_block .tel01::before{
  content:"";
  width: 19px;
  height: 26px;
  background-image: url('../img/common/tel_icon.png');
  margin-right: 5px;
}

header .header_line01 .tel_block .tel02{
  font-size: 12px;
  font-weight: 400;
  line-height: 1;
  margin-top: 2px;
  text-align: center;
  color: #333;
}

header .header_line02{
  position: relative;
}

header .header_line02 .header_flex02{
  display: flex;
  justify-content: space-between;
  align-items: center;
}

header .header_line02 .header_nav02{
  width:100%;
}

header .header_line02 .header_menu02{
  display: flex;
  justify-content: center;
  align-items: center;
}

header .header_line02 .header_menu02 li{
  margin:0 32px;  
  display: flex;
  justify-content: center;
  align-items: center;
}

header .header_line02 .parent_link{
  font-size: 16px;
  font-weight: 400;
  line-height: 1;
  color: #3c2c00;
  height:50px;
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
}

header .header_line02 .parent_link::after{
  content:"";
  width:0;
  height: 3px;
  background-color: #f8b500;
  position: absolute;
  bottom:-1px;
  left:0;
  transition: 0.3s;
  /* opacity: 0; */
}

header .header_line02 .parent_link.active::after{
  width:100%;
}

header .header_line02 .header_menu02 li:hover .parent_link::after{
  width:100%;
}

header .header_line02 .child_menu{
  position: absolute;
  width:100vw;
  padding:40px 0;
  background-color: #fff;
  position: absolute;
  top:100%;
  left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transition: 0.4s;
  opacity: 0;
  pointer-events: none;
  display: flex;
  justify-content: center;
  align-items: center;
}

header .header_line02 .child_menu.show{
  opacity: 1;
  pointer-events: auto;
}

header .header_line02 .child_menu li{
  margin:0 10px;
}

header .header_line02 .child_menu .child_link{
  width: 320px;
  height: 150px;
  position: relative;
  overflow: hidden;
}

header .header_line02 .child_menu .img_blur::before{
  content:"";
  width:100%;
  height:100%;
  background-color:rgba(0,0,0,0.4);
  position: absolute;
  top:0;
  left:0;
  z-index:1;
}

header .header_line02 .child_menu .child_link::after{
  content:"";
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0 0 12px 12px;
  border-color: transparent transparent #fff transparent;
  position: absolute;
  right:3px;
  bottom:3px;
  z-index: 3;
}

header .header_line02 .child_menu .child_link p{
  width:100%;
  display: flex;
  justify-content: center;
  align-items: center;
  padding:0 6px;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  font-size: 18px;
  font-weight: 400;
  line-height: 1.3;
  color: #fff;
  z-index: 3;
}

header .header_line02 .child_menu .child_link img{
  width:100%;
  height:100%;
  object-fit: cover;
  transition-duration: 0.4s;
}

@media(max-width:1600px){
  header .header_logo img{
    height:50px;
  }
  
  header .header_logo .logo_text{
    margin-left: 16px;
    font-size: 12px;
    padding-bottom: 10px;
  }



}/*@media(min-width:1600px){*/


@media(max-width:1400px){
  header .header_line01 .page_link {
    width: 136px;
    height: 42px;
  }

  header .header_line01 .page_link .button_text {
    font-size: 12px;
  }

  header .header_line01 .tel_block .tel01{
  
    font-size: 20px;
  }
  
  header .header_line01 .tel_block .tel01::before{
    width: 19px;
    height: 26px;
  }
  
  header .header_line01 .tel_block .tel02{
    font-size: 11px;
    margin-top: 2px;
  }


}/*@media(min-width:1400px){*/

@media(min-width:1025px){
  header .header_line02 .child_menu .child_link:hover img{
    transform: scale(1.1);
  }
}/*@media(min-width:1025px){*/


.fix_sidebar{
  position: fixed;
  right:0;
  top:170px;
  z-index:50;
}

.fix_sidebar .form_link{
  width: 72px;
  height: 260px;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
  text-align: center;
}

.fix_sidebar .form_link .button_text{
  font-weight: bold;
  font-size: 20px;
  line-height: 1.3;
}

.fix_sidebar .contact_link{
  margin-top: 10px;
  width: 72px;
  height: 260px;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
}

.fix_sidebar .contact_link .button_text{
  font-weight: bold;
  font-size: 20px;
}

.fix_sidebar .contact_link .button_sub_text{
  font-size: 12px;
  font-weight: 500;
  margin-right: 2px;
}


/*
--------------------------------------------------------
共通セクション　フッター
--------------------------------------------------------
*/

.page_top{
  width: 70px;
  height: 70px;
  background-color: #f8b500;
  border-radius: 50%;
  display: flex;
  justify-content: center;
  align-items: center;
  position: fixed;
  right: 80px;
  bottom:40px;
  z-index: 8;
  cursor: pointer;
  transition-duration: 0.4s;
  opacity: 0;
  pointer-events: none;
}

.page_top::after{
  content:"";
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0 6.5px 7px 6.5px;
  border-color: transparent transparent #fff transparent;
}

.page_top.show{
  opacity: 1;
  pointer-events: auto;
}

@media(min-width:1025px){
  .page_top:hover{
    opacity: 0.7;
  }
}

footer{
  padding:72px 0 40px;
  background-color: #fff;
}

footer .footer_logo{
  display: block;
  width:386px;
  
}

footer .footer_logo img{
  width:100%;
}

footer .footer_area01{
  padding:0 0 60px;
  border-bottom:1px solid rgba(60,44,0,0.2);
}


footer .footer_flex01{
  display: flex;
  justify-content: space-between;
  margin-top: 64px;
}

footer .footer_nav{
  display: flex;
  align-items: flex-start;
}

footer .footer_nav ul{
  margin-right: 72px;
}

footer .footer_nav ul:last-child{
  margin-right: 0;
}

footer .footer_nav ul li{
  margin-bottom: 24px;
}

footer .footer_nav ul li:last-child{
  margin-bottom: 0;
}

footer .footer_nav ul li a{
  font-weight: 400;
  line-height: 1;
  color: #3c2c00;
  position: relative;
  padding-bottom: 4px;
  display: flex;
  align-items: center;
  width:fit-content;
}

footer .footer_nav ul li a::after{
  content:"";
  width:0;
  height:3px;
  background-color: #f8b500;
  position: absolute;
  bottom:0;
  left:0;
  transition: 0.3s;
  opacity: 1;
}

@media(min-width:1025px){
  footer .footer_nav ul li a:hover::after{
    width: 100%;
  }
}

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 .button_list{

}

footer .button_list .common_link_button.orange{
  width: 210px;
  height: 40px;
  background-color: rgba(248,181,0,0.1);
  margin-bottom: 12px;
  font-size: 14px;
}

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 8px 8px;
}

footer .footer_area02{
  padding:60px 0 0;
}

footer .footer_flex02{
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
}

footer .office_list{
  display: flex;
  
}

footer .office_block{
  margin-right: 64px;
  
}

footer .office_block:last-child{
  margin-right: 0;
}

footer .office_block p{
  font-weight: 400;
  font-size: 14px;
  line-height: 1.5;
}

footer .office_block .office_name{
  font-size: 16px;
}

footer .office_block .office_adress{
  margin-top: 8px;
} 

footer .office_block .office_tel{
  margin-top: 8px;
}

footer .office_block .office_tel .tel{
  pointer-events: none;
  color:#3c2c00;
}

footer .office_block .office_fax a{
  color:#3c2c00;
  pointer-events: none;
}

footer .kyoshin_link{
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 3px 10px 3px 3px;
  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;

}

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: 64px;
  font-size: 12px;
  line-height: 1;
  text-align: center;
  color: #ababab;
}


/*
--------------------------------------------------------
共通セクション　ページ下部のお問い合わせ
--------------------------------------------------------
*/


.common_contact_section{
  padding:190px 0 100px;
  position: relative;
  overflow: hidden;
}

.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: 1720px;
  height: 383px;
  background-image:url('../img/common/contact_bg.jpg') ;
  position: absolute;
  top:96px;
  left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  z-index:-5;
}

.common_contact_section .sec_title{
  font-size: 60px;
  font-weight: 500;
  line-height: 1;
  text-align: center;
  color: #fff;

}

.common_contact_section .white_box{
  margin-top: 40px;
  padding:60px 0 48px;
  background-color: #fff;
}

.common_contact_section .p01{
  font-size: 24px;
  font-weight: 600;
  line-height: 1.33;
  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;
  margin-top: 40px;
}

.common_contact_section .entry_button{
  width: auto;
  width:480px;
  height: 116px;
}

.common_contact_section .entry_button .button_inner{
  padding:0 20px;
}

.common_contact_section .entry_button .button_text{
  font-size: 24px;
  font-weight: bold;
  line-height: 1;

}

.common_contact_section .entry_button .button_sub_text{
  margin-top: 12px;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 286px;
  height: 26px;
  border-radius: 13px;
  background-color: #fff;
  font-weight: bold;
  color: #f8a401;
}

.common_contact_section .contact_button{
  width:480px;
  height:116px;
  margin-left: 30px;
  background-color: rgba(104,163,87,0.06);
  
}

.common_contact_section .contact_button .button_text{
  font-size: 24px;
  font-weight: bold;
}

.common_contact_section .contact_button .button_sub_text {
  font-weight: 500;
  line-height: 1;
  text-align: center;
  margin-top: 10px;
}

.common_contact_section  .tel_text01{
  margin-top: 24px;
  font-size: 18px;
  line-height: 1;
  display: flex;
  align-items: center;
  justify-content: center;
}

.common_contact_section .tel_text01 span {
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 0 12px;
  height: 26px;
  border-radius: 13px;
  background-color: #453d2a;
  font-weight: 500;
  line-height: 1;
  margin-right: 12px;
  color: #fff;
}

.common_contact_section .line_flex{
  display: flex;
  justify-content: center;
  align-items: center;
  margin-top: 12px;
}

.common_contact_section .tel_block{
  display: flex;
  align-items: center;
}

.common_contact_section .tel_block .tel{
  margin:0 12px 0 32px;
  display: flex;
  align-items: center;
  pointer-events: none;
  font-size: 28px;
  font-weight: 600;
  line-height: 1;
  color: #3c2c00;
}

.common_contact_section .tel_block .tel::before{
  content:"";
  width: 19px;
  height: 26px;
  background-image: url('../img/common/tel_icon.png');
  margin-right: 12px;
}

.common_contact_section .tel_block .tel_text02{
  font-size: 14px;
  line-height: 1;
}

.common_contact_section .line_border{
  width: 1px;
  height: 30px;
  margin:0 24px;
  background-color: #006d3e;
}

.common_contact_section .fax{
  font-size: 28px;
  font-weight: 600;
  line-height: 1;
  color: #3c2c00;
  display: flex;
  align-items: center;
} 

.common_contact_section .fax::before{
  content:"";
  width: 26px;
  height: 26px;
  background-image: url('../img/common/fax_icon.svg');
  margin-right: 16px;
}

.common_contact_section .fax a{
  color: #3c2c00;
  pointer-events: none;
}


/*
--------------------------------------------------------
共通セクション　下層のmv
--------------------------------------------------------
*/

.common_page_mv_section{
  height:240px;
  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: 26px;
  font-weight: 500;
  line-height: 1;
  
} 

.common_page_mv_section .ja_title{
  font-size: 46px;
  font-weight: 600;
  line-height: 1.3;
  margin-top: 16px;
}

/*
--------------------------------------------------------
共通セクション　パンクズ
--------------------------------------------------------
*/

.bread_section{
  padding-top: 30px;
}


.bread_section .bread_list{
  display: flex;
  align-items: center;
  flex-wrap: wrap;
}

.bread_section .bread_list li{
  margin-bottom: 12px;
}

.bread_section .bread_list li a{
  font-weight: 400;
  line-height: 1.3;
  color: #3c2c00;
}

.bread_section .bread_list li span{
  font-weight: 400;
  line-height: 1.3;
  color: #8f8977;
}

.bread_section .bread_list li.arrow{
  margin:0 8px 12px;
  padding-top: 2px;
}

.bread_section .bread_list li.arrow img{
  width:6px;
}

/*
--------------------------------------------------------
共通セクション　ページ下部のリンク一覧
--------------------------------------------------------
*/

.common_link_section01{
  padding: 140px 0 0 0;
}


.common_link_section01 ul{
  display: flex;
  justify-content: space-between;
  margin-top: 60px;
}

.common_link_section01 ul li{
  width:33.3%;
}

.common_link_section01 ul li a{
  position: relative;
  width:100%;
  height:320px;
  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%;
  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: 28px;
  font-weight: 500;
  line-height: 1.2;
}

.common_link_section01 ul li a p span{
  min-width: 130px;
  height: 40px;
  padding:0 3px;
  border-radius: 20px;
  border: solid 1px #faf9f5;
  display: flex;
  justify-content: center;
  align-items: center;
  margin-top: 12px;
}

@media(min-width:1025px){
  .common_link_section01 ul li a:hover img{
    transform: scale(1.1);
  }
}


.common_link_section02{
  padding:72px 0 80px;
  background-color: #f5f3ea;
}

.common_link_section02 ul{
  margin-top: 48px;
  display: flex;
  justify-content: center;
}

.common_link_section02 ul li{
  width: 380px;
  margin-right: 24px;
}

.common_link_section02 ul li:last-child{
  margin-right: 0;
}

.common_link_section02 ul li a{
  position: relative;
  width:100%;
  height:170px;
  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%;
  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: 24px;
  font-weight: 500;
  line-height: 1.2;
}

@media(min-width:1025px){
  .common_link_section02 ul li a:hover img{
    transform: scale(1.1);
  }
}


/*
--------------------------------------------------------
共通セクション 2カラムページ内のお問い合わせブロック
--------------------------------------------------------
*/

.common_min_contact_area{
  margin-top: 96px;
}

.common_min_contact_area .contact_head_text{
  width:fit-content;
  margin:0 auto;
  font-family: 'Noto Serif JP', serif;
  font-size: 32px;
  font-weight: 500;
  line-height: 1.38;
  display: flex;
  justify-content: center;
  border-bottom:3px solid #f8b500;
}

.common_min_contact_area .common_min_contact_box{
  background-image: url('../img/common/contact_block_bg.jpg');
  padding:40px;
  margin-top: 40px;
}

.common_min_contact_box .contact_line01{
  font-family: 'Noto Serif JP', serif;
  font-size: 24px;
  font-weight: 600;
  line-height: 1.33;
  display: flex;
  justify-content: center;
  color: #fff;
}

.common_min_contact_box .contact_border{
  width:100%;
  margin-top: 16px;
}


.common_min_contact_box .contact_link_flex{
  display: flex;
  justify-content: space-between;
  margin-top: 20px;
}

.common_min_contact_box .entry_button{
  width: 376px;
  height: 116px;
}

.common_min_contact_box .entry_button .button_text{
  font-size: 24px;
  font-weight: bold;
  line-height: 1.25;
  text-align: center;
}

.common_min_contact_box .entry_button .button_sub_text{
  min-width: 286px;
  height: 26px;
  margin-top: 8px;
  padding: 0 6px;
  border-radius: 13px;
  background-color: #fff;
  font-size: 16px;
  font-weight: bold;
  letter-spacing: 1;
  color: #f8a401;
  display: flex;
  justify-content: center;
  align-items: center;
}

.common_min_contact_box .contact_button{
  width: 376px;
  height: 116px;
  
}

.common_min_contact_box .contact_button .button_text{
  font-size: 24px;
  font-weight: bold;
}

.common_min_contact_box .contact_button .button_sub_text {
  font-weight: 500;
  line-height: 1;
  text-align: center;
  margin-top: 10px;
}


.common_min_contact_box .tel_text{
  margin-top: 36px;
  font-size: 18px;
  line-height: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  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: 12px;
  color: #453d2a;
}

.common_min_contact_box .tel_flex{
  display: flex;
  justify-content: center;
  align-items: center;
  margin-top: 12px;
}

.common_min_contact_box .tel_flex .tel_block{
  display: flex;
  align-items: center;
}

.common_min_contact_box .tel_flex .tel{
  display: flex;
  align-items: center;
  font-family: 'Noto Serif JP', serif;
  font-size: 28px;
  font-weight: 600;
  line-height: 1;
  color: #fff;
  pointer-events: none;
  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: 14px;
  font-weight: normal;
  line-height: 1;
  color: #fff;
}

.common_min_contact_box .tel_flex .tel_border{
  width: 1px;
  height: 30px;
  margin:0 24px;
  background-color: #fff;

}

.common_min_contact_box .tel_flex .fax{
  display: flex;
  align-items: center;
  font-family: 'Noto Serif JP', serif;
  font-size: 28px;
  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;
}

main.top_main{

}

.top_section{
  
}

.top_mv_section{
  padding:180px 0;
  position: relative;
}

.top_mv_section::before{
  content:"";
  width:100%;
  height:100%;
  background-image: url('../img/top/top_mv.jpg');
  position: absolute;
  top:0;
  left:0;
  z-index:-10;
}

.top_mv_section .mv_container{
  max-width:1310px;
  padding:0 20px;
  margin:0 auto;
}

.top_mv_section .mv_head{
  font-size: 50px;
  font-weight: 600;
  letter-spacing: 2px;
  text-align: left;
  color: #fff;
  line-height: 1;
  font-feature-settings: "palt";
  margin-bottom: 20px;
}

.top_mv_section .mv_head span{
  border-bottom:2px solid #fff;
  display: inline-block;
  padding-bottom: 2px;
}

.top_mv_section .mv_head span:first-child{
  margin-bottom: 26px;
}

.top_mv_section .p01{
  font-size: 17px;
  font-weight: 500;
  line-height: 1.5;
  color: #fff;
  margin-bottom: 32px;
  opacity: 0.6;
}

.top_mv_section .entry_button{
  width: 460px;
  height: 100px;
  margin-top: 32px;
  
}

.top_mv_section .entry_button .button_text{
  font-size: 24px;
  font-weight: bold;
  line-height: 1;
  color: #fff;
}

.top_mv_section .entry_button .button_sub_text{
  margin-top: 10px;
  display: flex;
  justify-content: center;
  align-items: center;
  height: 26px;
  border-radius: 13px;
  background-color: #fff;
  padding:0 36px;
  font-size: 16px;
  font-weight: bold;
  letter-spacing: 1;
  color: #f8a401;
} 

.top_mv_section .contact_button {
  width: 460px;
  height: 100px;
  margin-top: 20px;
}

.top_mv_section .contact_button .button_text{
  font-size: 24px;
  font-weight: bold;
}

.top_mv_section .contact_button .button_sub_text{
  font-weight: 500;
  line-height: 1;
  text-align: center;
  margin-top: 10px;
}

.top_section01{
  padding:140px 0 60px;
  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:1720px;
  width:90%;
  min-width:1025px;
  margin:0 auto;
  position: relative;
  background-color: #fff;
}

.top_section01 .white_box_inner{
  position: relative;
  overflow: hidden;
  padding:110px 0;
} 

.top_section01 .deco_text{
  position: absolute;
  font-family: 'Noto Serif JP', serif;
  font-size: 180px;
  font-weight: 500;
  line-height: 180px;
  letter-spacing: 0.04em;
}

.top_section01 .deco_text01_01,
.top_section01 .deco_text01_02{
  left:-9px;
  top:-120px;
}

.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: -28px;
  bottom:-109px;
}

.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: 56px;
  line-height: 1.75;
  
}

.top_section01 .service_kind{
  margin-top: 56px;
  font-family: 'Noto Serif JP', serif;
  font-size: 28px;
  font-weight: 500;
  letter-spacing: 0.08em;
  display: flex;
  align-items: center;
}

.top_section01 .service_kind::before{
  content:"";
  width: 14px;
  height: 14px;
  border-radius: 50%;
  background-color: #f8b500;
  margin-right: 16px;
}

.top_section01 .service_list{
  margin-top: 24px;
  display: flex;
  justify-content: space-between;
}

.top_section01 .service_block{
  width:370px;
  display: block;
}

.top_section01 .service_block .service_thumb{
  height:250px;
  overflow: hidden;
  position: relative;
}

.top_section01 .service_block .service_thumb::before{
  content:"";
  width:100%;
  height:100%;
  background-color:#000 ;
  position: absolute;
  top:0;
  left:0;
  z-index:1;
  transition: 0.4s;
  opacity: 0;
}

.top_section01 .service_block .service_thumb img{
  width:100%;
  height:100%;
  object-fit: cover;
  transition: 0.4s;
}

@media(min-width:1025px){
  .top_section01 .service_block:hover .service_thumb img{
    transform: scale(1.1);
  }

  .top_section01 .service_block:hover .service_thumb::before{
    opacity: 0.35;
  }
}

.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: 30px;
  height: 30px;
  border: solid 1px #3c2c00;
  border-radius: 50%;
}

.top_section01 .service_block .radi::after{
  content:"";
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 4px 0 4px 7px;
  border-color: transparent transparent transparent #3c2c00;
} 

.top_section01 .service_block .service_ja{
  font-size: 24px;
  font-weight: 400;
  line-height: 1.3;
  color: #3c2c00;

}

.top_section01 .service_block .service_en{
  margin-top: 8px;
  font-size: 12px;
  font-weight: 300;
  line-height: 1.3;
  color: #9d9275;

}

.top_section01 .service_link{
  
  margin:80px auto;
}

.top_section02{
  padding:60px 0 70px;
  position: relative;
}

.top_section02::before{
  content:"";
  width:100%;
  height: 880px;
  background-color: #faf9f5;
  position: absolute;
  top:0;
  left:0;
  z-index:-10;
}

.top_section02 .p01{
  display: flex;
  justify-content: center;
  margin-top: 56px;
  line-height: 1.75;
}

.top_section02 .reason_list{
  max-width:1760px;
  padding:0 20px;
  margin:96px auto 0;
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  flex-wrap: wrap;
}

.top_section02 .reason_block{
  width:830px;
  position: relative;
  display: flex;
  align-items: flex-start;
  background-color: #fff;
}

.top_section02 .reason_block .reason_head{
  width:fit-content;
  background-color: #fff;
  position: absolute;
  left:0;
  right:0;
  top:-32px;
  margin:auto;
  z-index: 2;
}


.top_section02 .reason_block .reason_head_frame{
  position: relative;
}

.top_section02 .reason_block .reason_icon{
  position: absolute;
  width:96px;
  border-radius: 50%;
  top:-32px;
  left:-32px;
}

.top_section02 .reason_block .reason_head_inner{
  width:640px;
  height:85px;
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  overflow: hidden;
}

.top_section02 .reason_block .reason_head_inner::after{
  content:"";
  width:96px;
  height:96px;
  border-radius: 50%;
  background-color: #f8b500;
  position: absolute;
  right:-63px;
  bottom:-65px;
}

.top_section02 .reason_block .reason_head_text{
  font-family: 'Noto Serif JP', serif;
  font-size: 20px;
  font-weight: 600;
  line-height: 1.3;
  text-align: center;
  font-feature-settings: "palt";
  letter-spacing: 0;
}

.top_section02 .reason_block .reason_thumb{
  width:310px;
  height:310px;
  flex-shrink: 0;
  position: relative;
}

.top_section02 .reason_block .reason_thumb img{
  width:100%;
  height:100%;
  object-fit: cover;
}

.top_section02 .reason_block .reason_num{
  font-family: 'Noto Serif JP', serif;
  font-size: 80px;
  font-weight: 500;
  line-height: 1;
  color: #fff;
  opacity: 0.6;
  position: absolute;
  letter-spacing: 0.04em;
  bottom:-6px;
  left:-3px;
  z-index: 2;
}

.top_section02 .reason_block .text_area{
  width:100%;
  padding:96px 40px 0;
}

.top_section02 .reason_block .reason_text{
  line-height: 1.75;
  color: #333;
  /* letter-spacing: 0.16em; */
  font-feature-settings: "palt";
}

.top_section02 .reason_block02{
  /* margin-top: 60px; */
  transform: translateY(60px);
}

.top_section02 .reason_block03{
  margin-top: 130px;
}

.top_section02 .reason_block04{
  margin-top: 130px;
  transform: translateY(60px);
}

@media(max-width:1720px){

  .top_section02::before{
    height:1600px;
  }
  .top_section02 .reason_list{
    flex-direction: column;
    align-items: center;
  }

  .top_section02 .reason_block01{
    /* transform: translateX(-150px); */
  }

  .top_section02 .reason_block02{
    /* transform: translateX(150px) translateY(0); */
    transform: translateY(0);
    margin-top: 100px;
  }

  .top_section02 .reason_block03{
    margin-top: 100px;
    /* transform: translateX(-150px); */
  }

  .top_section02 .reason_block04{
    /* transform: translateX(150px) translateY(0); */
    transform: translateY(0);
    margin-top: 100px;
  }

}/*@media(max-width:1720px){*/

.top_section02 .banner{
  display: block;
  width:100%;
  max-width:1200px;
  margin:190px auto 0;
}

.top_section02 .banner img{
  width:100%;
}

.top_section03{
  padding:70px 0 140px;
}

.top_section03 .p01{
  margin-top: 48px;
  line-height: 1.75;
  text-align: center;
}

.top_section03 .faq_area{
  margin-top: 56px;
}

.top_section03 .faq_tab_list{
  display: flex;
  justify-content: center;
  align-items: flex-start;

}

.top_section03 .faq_tab{
  cursor: pointer;
  transition-duration: 0.4s;
  display: flex;
  justify-content: center;
  align-items: center;
  width:20%;
  height:100px;
  font-family: 'Noto Serif JP', serif;
  font-size: 20px;
  font-weight: 500;
  line-height: 1.6;
  text-align: center;
  border: 2px solid rgba(248,181,0,0.28);
  border-right: none;
  position: relative;
}
.top_section03 .faq_tab:last-child{
  border-right: solid 2px rgba(248,181,0,0.28)
}

.top_section03 .faq_tab.active{
  /* background-color:rgba(248,181,0,0.28); */
  background-color:#f8b500;
  color:#fff;
  pointer-events: none;
}
.top_section03 .faq_tab.active::before{
  content:"";
  width: calc(100% + 2px);
  height: 2px;
  background-color: #f8b500;
  position: absolute;
  bottom:-2px;
  left:-2px;
}
.top_section03 .faq_tab.active::after{
  content:"";
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 15px 10.5px 0 10.5px;
  border-color: #f8b500 transparent transparent transparent;
  position: absolute;
  bottom:-15px;
  left:0;
  right:0;
  margin:auto
}

@media(min-width:1025px){
  .top_section03 .faq_tab:hover{
    background-color:rgba(248,181,0,1);
    color:#fff;
  }
}

.top_section03 .faq_frame{
  margin-top: 72px;
}

.top_section03 .faq_link{
  margin:56px auto 0;
}

.top_section04{
  position: relative;
  padding:140px 0 150px;
}

.top_section04::before{
  content:"";
  width:1720px;
  /* 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-end;
  align-items: flex-start;
}

.top_section04 .left{
  flex-shrink: 0;
  padding-left: 10.4%;
  margin-right: 80px;
}

.top_section04 .left .p01{
  margin-top: 48px;
  line-height: 1.75;
}

.top_section04 .info_link{
  
  margin-top: 72px;
}

.top_section04 .right{
  width:100%;
  width:68%;
  flex-shrink: 1;
  position: relative;
}

.top_section04 .swiper_button_flex{
  display: flex;
  justify-content: center;
  align-items: center;
  position: absolute;
  bottom:-100px;
  right:7.3vw;
}

.top_section04 .swiper_info_button{
  width: 72px;
  height: 72px;
  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;
}
.top_section04 .swiper_info_button::after{
  content:"";
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 7px 0 7px 14px;
  border-color: transparent transparent transparent #3c2c00;
}
.top_section04 .swiper_info_button_prev{
  margin-right: 30px;
  transform: rotateZ(180deg);
}

.top_section04 .info_pagination{
  position: absolute;
  bottom:-72px;
  right: 18.8vw;
  display: flex;
  justify-content: center;
  align-items: center;
}

.top_section04 .info_pagination .swiper-pagination-bullet{
  width:16px;
  height:16px;
  border-radius: 50%;
  margin:0 8px;
  opacity:1;
  background:#fff;
  transition-duration: 0.4s;
}

@media(min-width:1240px){
  .top_section04 .info_pagination .swiper-pagination-bullet:hover{
    background-color: #2a2523;
  }
}


.top_section04 .info_pagination .swiper-pagination-bullet-active{
  opacity:1;
  background-color: #2a2523;
}

.top_section04 .info_slide{
  padding-right: 30px;
  width:fit-content;
}

.top_section04 .info_slide .info_card{
  display: block;
  width: 530px;
  min-height: 298px;
  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:32px 40px;
  border-bottom: 1px solid rgba(248,181,0,0.28);
  font-family: 'Noto Serif JP', serif;
}

.top_section04 .info_card .info_date{
  margin-bottom: 16px;
  font-weight: 300;
  line-height: 1;
}

.top_section04 .info_card .info_title{
  font-size: 22px;
  font-weight: 400;
  line-height: 1.45;
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  min-height: 64px;
}

.top_section04 .info_card .info_body{
  padding:32px 40px 24px;
}

.top_section04 .info_card .info_text{
  font-weight: 400;
  line-height: 1.75;
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
}

@media(max-width:1700px){
  .top_section04 .info_pagination{
    right:24vw;
  }
}

@media(max-width:1400px){
  .top_section04 .left{
    padding-left: 40px;
    margin-right: 24px;
  }
  .top_section04 .info_pagination{
    right:24vw;
  }
}

.top_section05{
  padding:120px 0 140px;
}

.top_section05 .flex{
  display: flex;
  align-items: flex-start;
}

.top_section05 .flex .left{
  flex-shrink: 0;
  padding-right: 80px;
}

.top_section05 .left .p01{
  line-height: 1.75;
  margin-top: 48px;
}

.top_section05 .left .news_link{
  margin-top: 72px;
}

.top_section05 .flex .right{
  width:100%;
  padding-top: 48px;
}



.top_section06{
  padding:40px 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: 1360px;
  margin:0 auto;
  padding:0 20px;
}

.top_section06 .left{
  width:760px;
  background-color: #fff;
  padding:56px 48px 40px;
}

.top_section06 .left .guide_title{
  width:fit-content;
  margin:0 auto;
  font-size: 26px;
  font-weight: 600;
  line-height: 1.23;
  position: relative;
}

.top_section06 .left .guide_title::before{
  content:"";
  width: 100px;
  height: 85px;
  background-image: url('../img/common/kyoshin_logo.png');
  position: absolute;
  left:-116px;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
}

.top_section06 .left .guide_head{
  font-size: 22px;
  line-height: 1.82;
  /* margin-top: 48px; */
  text-align: center;
}

.top_section06 .left .border{
  width: 70px;
  height: 2px;
  margin:12px auto 0;
  background-color: #ea9a3a;
}

.top_section06 .left .guide_text{
  line-height: 2;
  margin-top: 16px;
}

.top_section06 .left .guide_link{
  margin:40px auto 0;
}

.top_section06 .right{
  position: relative;
}

.top_section06 .right .guide01{
  position: absolute;
  width:310px;
  left:56px;
  top:-88px;
}

.top_section06 .right .guide02{
  position: absolute;
  width:180px;
  left:328px;
  bottom:-80px;
}

@media(max-width:1320px){
  .top_section06 .right .guide02{
    left:230px;
  }
}


/*
--------------------------------------------------------
業務紹介
--------------------------------------------------------
*/

body.service_body{
  position: relative;
}

main.service_main{

}

.service_mv_section{
  background-image: url('../img/service/service_mv.jpg');
}

.service_section{
  
}

.service_section01{
  padding:72px 0 100px;
}

.service_section01 p{
  line-height: 1.75;
  text-align: center;
}

.service_section02{
  padding:72px 0;
  background-color: #faf9f5;
}

.service_section02 .flex{
  display: flex;
  justify-content: center;
  align-items: center;
}

.service_section02 .flex .anchor_link{
  cursor: pointer;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 340px;
  height: 76px;
  margin: 0 40px;
  border-radius: 38px;
  border: solid 2px #f8b500;
  background-color: #fff;
  font-family: 'Noto Serif JP', serif;
  font-size: 24px;
  font-weight: 400;
  line-height: 1;
  letter-spacing: 1.92px;
  color: #3c2c00;
  position: relative;
  transition-duration: 0.4s;
}

.service_section02 .flex .anchor_link span{
  width: 30px;
  height: 30px;
  border-radius:50%;
  border: solid 2px #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: 7px 4px 0 4px;
  border-color: #f8b501 transparent transparent transparent;
}

@media(min-width:1025px){
  .service_section02 .flex .anchor_link:hover{
    background-color: #f8b500;
    color:#fff;
  }
}

.service_section03{
  padding:96px 0 90px;
}

.service_section04{
  padding:96px 0 200px;
}


.service_section .service_list{
  margin-top: 96px;
}


.service_section .service_block{
  margin-top: 140px;
  position: relative;
}

.service_section .service_block::after{
  content:"";
  width:100vw;
  height: 282px;
  background-color: #faf9f5;
  z-index:-2;
  position: absolute;
  bottom:-60px;
}

.service_section .service_block:first-child{
  margin-top: 0;
}

.service_section .service_block .service_flex{
  display: flex;
  color:#3c2c00;
}

.service_section .service_block .service_thumb{
  width: 580px;
  height: 380px;
  flex-shrink: 0;
  position: relative;
  overflow: hidden;
}

.service_section .service_block .service_thumb::before{
  content:"";
  width:100%;
  height:100%;
  background-color:#000 ;
  position: absolute;
  top:0;
  left:0;
  z-index:1;
  transition: 0.4s;
  opacity: 0;
}

.service_section .service_block .service_thumb img{
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition-duration: 0.4s;
}

.service_section .service_block .text_area{
  width:100%;
  position: relative;
}

.service_section .service_block .title_flex{
  display: flex;
  align-items: flex-start;
  /* align-items: center; */
}

.service_section .service_block .service_title{
  font-family: 'Noto Serif JP', serif;
  font-size: 28px;
  font-weight: 400;
  line-height: 1.3;
}

.service_section .service_block .radi{
  flex-shrink: 0;
  margin-left: 56px;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  border: solid 1px #3c2c00;
  display: flex;
  justify-content: center;
  align-items: center;
  transition-duration: 0.4s;
}

.service_section .service_block .radi::after{
  content:"";
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 5px 0 5px 9px;
  border-color: transparent transparent transparent #3c2c00;
}

.service_section .service_block .service_text{
  margin-top: 36px;
  font-weight: 400;
  line-height: 2;
  color: #333;
  letter-spacing: 0.12em;
}

.service_section .service_block .deco_text{
  min-width:100%;
  white-space: nowrap;
  position: absolute;
  z-index: -1;
  bottom:0;
  font-family: 'Noto Serif JP', serif;
  font-size: 90px;
  font-weight: 300;
  line-height: 1;
  color: #9d9275;
  opacity: 0.1;
}

.service_section .service_block{

}

.service_section .service_block.row::after{
  left:calc(50% - 285px);
}

.service_section .service_block.row .service_flex{
  flex-direction: row-reverse;
}

.service_section .service_block.row .service_thumb{
  margin-left: 80px;
}

.service_section .service_block.row .deco_text{
  right:0;
}

.service_section .service_block.reverce{

}

.service_section .service_block.reverce::after{
  right:calc(50% - 285px);
}


.service_section .service_block.reverce .service_thumb{
  margin-right: 80px;
  margin-left: 0;
}

.service_section .service_block.reverce .deco_text{
  left:0;
}

@media(min-width:1025px){
  .service_section .service_block:hover .radi{
    transform: translateX(12px);
  }

  .service_section .service_flex:hover .service_thumb img{
    transform: scale(1.1);
  }

  .service_section .service_flex:hover .service_thumb::before{
    opacity: 0.2;
  }

}

/*
--------------------------------------------------------
労働保険事務組合とは？
--------------------------------------------------------
*/

body.kumiai_body{
  position: relative;
}

main.kumiai_main{

}

.kumiai_mv_section{
  background-image: url('../img/kumiai/kumiai_mv.jpg');
}

.kumiai_section{
  
}

.kumiai_section01{
  padding:96px 0 70px;
}

.kumiai_section01 .flex{
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-top: 64px;
}

.kumiai_section01 .flex .thumb{
  width: 580px;
  height: 380px;
  position: relative;
}

.kumiai_section01 .thumb .kumiai01{
  width:100%;
  height:100%;
  object-fit: cover;
}

.kumiai_section01 .thumb .kumiai02{
  width:100%;
  height:100%;
  object-fit: cover;
  position: absolute;
  left:-32px;
  bottom:-32px;
  z-index: -1;
}

.kumiai_section01 .thumb .kumiai03{
  width:220px;
  position: absolute;
  right:-50px;
  bottom:-100px;
  z-index: 1;
}

.kumiai_section01 .text_area{
  width: 498px;
}

.kumiai_section01 .text_area p{
  font-size: 18px;
  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: 170px;
  position: relative;
  padding:64px 16px 56px;
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: #faf9f5;
}

.kumiai_section01 .range_box .head{
  font-family: 'Noto Serif JP', serif;
  font-size: 32px;
  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:36px;
  flex-shrink: 0;
  font-family: 'Noto Serif JP', serif;
  font-size: 20px;
  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;
}


.kumiai_section02{
  padding:96px 0 0;
}


.kumiai_section02 .merit_list{
  margin-top: 48px;
}

.kumiai_section02 .merit_block{
  padding:60px 0;
  position: relative;
  display: flex;
}


.kumiai_section02 .merit_block .text_box{
  width:50%;
  min-height:380px;
  position: relative;
  padding:64px 40px 24px;
}

.kumiai_section02 .merit_block .text_box::before{
  content:"";
  width: 100px;
  height: 4px;
  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: 24px;
  font-size: 50px;
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0;
}

.kumiai_section02 .merit_block .head_flex .merit_title{
  font-size: 28px;
  font-weight: 400;
  line-height: 1.5;
  padding-top: 8px;
}


.kumiai_section02 .merit_block .merit_text{
  margin-top: 40px;
  line-height: 2;
  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{
  width:50%;
}

.kumiai_section02 .merit_block .kumiai_merit01{
  width:450px;
  margin:0 48px 0 auto;
}

.kumiai_section02 .merit_block .kumiai_merit02{
  width:580px;
}

.kumiai_section02 .merit_block .kumiai_merit03{
  width:400px;
  margin:0 72px 0 auto;
}

.kumiai_section02 .merit_block:nth-child(odd){
  
}


.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: row-reverse;
}

.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;
}

main.compensation_main{

}

.compensation_mv_section{
  background-image: url('../img/compensation/compensation_mv.jpg');
}

.compensation_section{
  
}

.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;
  
  background-color: #f4f2ea;
}

.compensation_section table td{
  width:25%;
  padding:12px 0;
  line-height: 1.5;
}

.compensation_section table td.bg_tg{
  background-color: #faf9f5;
  font-weight: 500;
}

.compensation_section table td.bg_tg .remark{
  font-weight: 400;
}

.compensation_section table .mini{
  font-size: 14px;
}

.compensation_section table .medium{
  font-size: 18px;
}

.compensation_section table .big{
  font-size: 20px;
}

.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:88px 0 40px;
}

.compensation_section01 .p01{
  line-height: 2;
  text-align: center;
}

.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: 128px;
  background-color: #faf9f5;
  display: flex;
  justify-content: center;
  align-items: center;
}

.compensation_section02 .info_head_text{
  text-align: center;
  line-height: 1.7;
  position: relative;
}

.compensation_section02 .info_head_text::before{
  content:"";
  width: 100px;
  height: 100px;
  background-image: url('../img/compensation/compensation_icon01.png');
  position: absolute;
  left:-140px;
  top: 50%;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
}

.compensation_section02 .info_head_text span{
  font-size: 20px;
  font-weight: 500;
}

.compensation_section02 .info_body{
  padding:60px 170px;
}

.compensation_section02 .triangle{
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 50px 73px 0 73px;
  border-color: #f8b500 transparent transparent transparent;
  margin:40px auto 0;
}

.compensation_section02 .table_frame01{

}

.compensation_section02 .table_title{
  margin-top: 56px;
  font-family: 'Noto Serif JP', serif;
  font-size: 26px;
  font-weight: 500;
  text-align: center;
  line-height: 1.3;
}

.compensation_section02 .table_frame02{
  margin-top: 40px;
}

.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:32px 24px 24px;
  background-color: #faf9f5;
  display: flex;
  justify-content: center;
  align-items: center;
}

.compensation_section03 .info_head .info_head_text_frame{
  position: relative;
}

.compensation_section03 .info_head .info_head_text_frame::before{
  content:"";
  width:118px;
  height:100px;
  background-image: url('../img/compensation/compensation_icon02.png');
  position: absolute;
  left:-140px;
  top: 50%;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
}

.compensation_section03 .info_head .info_head_text{
  font-size: 20px;
  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: 2.13;
  padding-left: 16px;
  position: relative; 
}

.compensation_section03 .info_head ul li::before{
  content:"・";
  line-height: 2.13;
  position: absolute;
  top:0;
  left:0;
}

.compensation_section03 .info_head ul li span{
  font-weight: 500;
}

.compensation_section03 .info_body{
  padding:60px 170px;
}

/*
--------------------------------------------------------
労働保険事務代行
--------------------------------------------------------
*/

body.labor_body{
  position: relative;
}

main.labor_main{

}

.labor_mv_section{
  background-image: url('../img/labor/labor_mv.jpg');
}

.labor_section{

}


.labor_section01{
  padding-bottom: 140px;
}

.labor_section01 .p01{
  margin-top: 56px;
  font-size: 24px;
  font-weight: 600;
  line-height: 1;
  width:fit-content;
  padding-bottom: 12px;
  border-bottom:2px solid #f8b500;
}

.labor_section01 .flex{
  display: flex;
  margin-top: 32px;

}

.labor_section01 .flex .thumb{
  width:400px;
  flex-shrink: 0;
  margin-left: 32px;
  padding-top: 8px;
}

.labor_section01 .flex .thumb img{
  width:100%;
}

.labor_section01 .flex .text_area{
  width:100%;
} 

.labor_section01 .flex .text_area p+p{
  margin-top: 10px;
}

.labor_section02{
  padding-bottom: 140px;
}


.labor_section02 h3{
  margin-top: 80px;
}

.labor_section02 .head01{
  margin-top: 40px;
}

.labor_section02 .p01{
  margin-top: 24px;
}

.labor_section02 .case_box{
  padding:72px 48px;
  background-color: #faf9f5;
  margin-top: 88px;
  position: relative;
}

.labor_section02 .case_box .case_box_head{
  font-size: 34px;
  font-weight: 500;
  line-height: 1;
  display: flex;
  justify-content: center;
  width:100%;
  position: absolute;
  left:0;
  top:-17px;
}

.labor_section02 .case_block{
  display: flex;
} 

.labor_section02 .case_block .case_thumb{
  width:370px;
  flex-shrink: 0;
}

.labor_section02 .case_block .case_thumb img{
  width:100%;
}

.labor_section02 .case_block .case_text{
  width:100%;
}

.labor_section02 .case_block .case_title{
  font-family: 'Noto Serif JP', serif;
  font-size: 24px;
  font-weight: 500;
  line-height: 1;
  display: flex;
  align-items: center;
}

.labor_section02 .case_block .case_title::before{
  content:"";
  width: 14px;
  height: 14px;
  margin-right: 12px;
  background-color: #3c2c00;
}

.labor_section02 .case_block ul{
  margin-top: 16px;
}

.labor_section02 .case_block ul li{
  line-height: 2;
  display: flex;
}

.labor_section02 .case_block ul li::before{
  content:"・";
  font-size: 16px;
  line-height: 2;
}

.labor_section02 .case_block01 .case_text{
  padding-left: 20px;
}

.labor_section02 .case_block02{
  flex-direction: row-reverse;
  margin-top: 40px;
}

.labor_section02 .case_block02 .case_text{
  padding-right: 20px;
}

.labor_section02 .kind_text01{
  margin-top: 24px;
}

.labor_section02 .kind_box{
  margin-top: 32px;
}

.labor_section02 .kind_box img{
  width:100%;
}

.labor_section02 .flow_box{
  margin-top: 32px;
}

.labor_section02 .flow_box img{
  width:100%;
}

.labor_section03 h3{
  margin-top: 80px;
}

.labor_section03 .head01{
  margin-top: 40px;
}

.labor_section03 .flex{
  display: flex;
  margin-top: 32px;
}

.labor_section03 .flex .thumb{
  width:400px;
  flex-shrink: 0;
  padding-top: 8px;
}

.labor_section03 .flex .thumb img{
  width:100%;
}

.labor_section03 .flex .text_area{
  width:100%;
  padding-left: 30px;
}

.labor_section03 .flex .text_area p+p{
  margin-top: 10px;
}

.labor_section03 .process_text{
  margin-top: 24px;
}

.labor_section03 .process_box{
  margin-top: 28px;
}

.labor_section03 .process_box img{
  width:100%;
}

.labor_section03 .flow_box{
  margin-top: 40px;
}

.labor_section03 .flow_box img{
  width:100%;
}

.labor_section03 .offer_text{
  margin-top: 32px;
}

.labor_section03 .offer_box{
  margin-top: 32px;
}

.labor_section03 .offer_box img{
  width:100%;
}

/*
--------------------------------------------------------
行政機関の調査対応
--------------------------------------------------------
*/

body.agency_body{
  position: relative;
}

main.agency_main{

}

.agency_mv_section{
  background-image: url('../img/agency/agency_mv.jpg');
}

.agency_section{

}


.agency_section01{
  padding-bottom: 140px;
}

.agency_section01 .p01{
  margin-top: 56px;
  font-size: 24px;
  font-weight: 600;
  line-height: 1;
  width:fit-content;
  padding-bottom: 12px;
  border-bottom:2px solid #f8b500;
}

.agency_section01 .flex{
  display: flex;
  margin-top: 32px;
}


.agency_section01 .flex .thumb{
  width:400px;
  flex-shrink: 0;
  padding-top: 6px;
  margin-left: 32px;
}

.agency_section01 .flex .thumb img{
  width:100%;
}

.agency_section01 .flex .text_area{
  width:100%;

}

.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: 120px;
}

.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:0 80px 40px;
  background-color: #faf9f5;
  position: relative;
}

.agency_section02 .example_head{
  font-family: 'Noto Serif JP', serif;
  font-size: 34px;
  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;
}

.agency_section02 .example_list li{
  width:202px;
  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: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{
  height:34px
}
.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;
  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: 22px;
  font-weight: 500;
  line-height: 1;
  text-align: center;
}

.agency_section .document_box .document_list{
  margin-top: 28px;
}

.agency_section .document_box .document_list p{
  display: flex;
  flex-wrap: wrap;
  line-height: 2;
}

.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: 40px;
}

.agency_section03{

}

.agency_section03 h3{
  margin-top: 80px;
}

.agency_section03 .flex{
  display: flex;
  margin-top: 36px;
}

.agency_section03 .flex .thumb{
  width:400px;
  flex-shrink: 0;
  margin-right: 32px;
  padding-top: 6px;
}

.agency_section03 .flex .thumb img{
  width:100%;
}

.agency_section03 .flex .text_area{
  width:100%;
} 

.agency_section03 .example_box{
  margin-top: 56px;
  padding:64px 20px 48px;
  background-color: #faf9f5;
  position: relative;
}

.agency_section03 .example_head{
  font-family: 'Noto Serif JP', serif;
  font-size: 34px;
  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;
}

.agency_section03  ul li{
  display: flex;
  line-height: 2;
  /* font-feature-settings: 'palt'; */
}

.agency_section03  ul li::before{
  content:"・";
  line-height: 2;
}

.agency_section03 .p01{
  margin-top: 24px;
}

.agency_section03 .flow_box{
  margin-top: 40px;

}

.agency_section03 .flow_box img{
  width:100%;
}


/*
--------------------------------------------------------
行政機関の調査対応
--------------------------------------------------------
*/

body.human_body{
  position: relative;
}

main.human_main{

}

.human_mv_section{
  background-image: url('../img/human/human_mv.jpg');
}

.human_section{

}

.human_section01{
  padding:70px 0 70px;
}

.human_section01 .flex{
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  margin-top: 60px;
}

.human_section01 .flex .left{
  width:660px;
  height:340px;
  position: relative;
}

.human_section01 .left .human01{
  width: 400px;
}

.human_section01 .left .human02{
  width:320px;
  position: absolute;
  z-index: 2;
  bottom:0;
  right:0;
}

.human_section01 .flex .right{
  width:430px;
}

.human_section01 .flex .p01{
  font-family: 'Noto Serif JP', serif;
  font-size: 24px;
  font-weight: 600;
  line-height: 1.83;
}

.human_section01 .flex .p02{
  margin-top: 24px;
  line-height: 2;
}

.human_section01 .flex .p01 span{
  border-bottom:2px solid #f8b500;
  padding-bottom: 4px;
}

.human_section01 .plan_head{
  margin-top: 140px;
  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: 34px;
  line-height: 1.3;
}

.human_section01 .plan_head .head_text02{
  margin-top: 12px;
  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:380px;
  min-height:306px;
  border:1px solid rgba(60,44,0,0.14);
  margin-top: 40px;
  padding-bottom: 8px;
}

.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: 50px 73px 0 73px;
  border-color: #f8b500 transparent transparent transparent;
}

.human_section02 .step_block{
  display: flex;
  border: 2px solid #3c2c00;
}

.human_section02 .step_block .step_num{
  width:200px;
  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: 20px;
  font-weight: 500;
  line-height: 1;
}

.human_section02 .step_block .step_num p span{
  margin-left: 10px;
  font-size: 40px;
  line-height: 1;
  padding-bottom: 2px;
}

.human_section02 .step_block .step_text{
  width:100%;
  padding:20px 40px;
  font-size: 18px;
  line-height: 1.56;
}

.human_section02 .qa_banner{
  display: block;
  margin-top: 120px;
}

.human_section02 .qa_banner img{
  width:100%;
}


/*
--------------------------------------------------------
行政機関の調査対応
--------------------------------------------------------
*/

body.enterprise_body{
  position: relative;
}

main.enterprise_main{

}

.enterprise_mv_section{
  background-image: url('../img/enterprise/enterprise_mv.jpg');
}

.enterprise_section{

}


.enterprise_section01{
  padding-bottom: 140px;
}

.enterprise_section01 .p01{
  margin-top: 72px;
}

.enterprise_section01 .p02{
  margin-top: 56px;
}

.enterprise_section01 .p03{
  margin-top: 10px;
}

.enterprise_section01 .flex{
  display: flex;
  margin-top: 40px;
}

.enterprise_section01 .flex{
  display: flex;
}

.enterprise_section01 .flex .thumb{
  width:400px;
  flex-shrink: 0;
  padding-top: 8px;
}

.enterprise_section01 .flex .thumb img{
  width:100%;
}

.enterprise_section01 .flex .text_area{
  width:100%;
} 

.enterprise_section01 .flex01{
  margin-top: 32px;
  flex-direction: row-reverse;
}

.enterprise_section01 .flex01 .thumb{
  margin-left: 32px;
}

.enterprise_section01 .flex02{
  margin-top: 40px;
}

.enterprise_section01 .flex02 .thumb{
  margin-right: 32px;
}


.enterprise_section01 .merit_box{
  margin-top: 140px;
  position: relative;
  padding:64px 24px 56px;
  background-color: #faf9f5;
  display: flex;
  justify-content: center;
  align-items: center;
}

.enterprise_section01 .merit_head{
  font-family: 'Noto Serif JP', serif;
  font-size: 34px;
  font-weight: 500;
  line-height: 1;
  text-align: center;
  position: absolute;
  width:100%;
  top:-17px;
  left:0;
  
}

.enterprise_section01 ul li{
  display: flex;
  margin-bottom: 3px;
}

.enterprise_section01 ul li:last-child{
  margin-bottom: 0;
}

.enterprise_section01 ul li .num{
  width:33px;
  flex-shrink: 0;
  font-family: 'Noto Serif JP', serif;
  font-size: 20px;
  font-weight: 500;
  line-height: 1.5;
  color: #68a357;
}

.enterprise_section01 .angle{
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 50px 73px 0 73px;
  border-color: #f8b500 transparent transparent transparent;
  margin:48px auto 0;
}

.enterprise_section01 .common_min_contact_area{
  margin-top: 64px;
}

.enterprise_section02{
  padding-bottom: 140px;
}

.enterprise_section02 .num_flex{
  display: flex;
  font-family: 'Noto Serif JP', serif;
}

.enterprise_section02 .num_flex .num{
  width:72px;
  font-size: 50px;
  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: 24px;
  font-weight: 600;
  line-height: 1.8;
  
}

.enterprise_section02 .num_flex p span{
  border-bottom: 2px solid #3c2c00;
}

.enterprise_section02 .num_flex02{
  margin-top: 80px;
}

.enterprise_section02 .num_flex03{
  margin-top: 56px;
}

.enterprise_section02 .flex{
  display: flex;
  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:400px;
  flex-shrink: 0;
  margin-left: 32px;
}

.enterprise_section02 .flex table{
  width:100%;
}

.enterprise_section02 .flex table th{
  width:50%;
  background-color: #faf9f5;
  padding:12px 0;
  font-size: 18px;
  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;
  border:1px solid rgba(60,44,0,0.14);
}

.enterprise_section02 .p01{
  margin-top: 72px;
  font-size: 20px;
  font-weight: 500;
  line-height: 1.3;
}

.enterprise_section02 .kind_box{
  margin-top: 24px;
}

.enterprise_section02 .kind_box table{
  width:100%;
}

.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: 120px;
}

.enterprise_section03 .check_frame{
  margin-top: 56px;
}

.enterprise_section03 .check_frame img{
  width:100%;
}

.enterprise_section04{
  padding-bottom: 140px;
}

.enterprise_section04 .p01{
  margin-top: 32px;
}

.enterprise_section04 .list_box{
  margin-top: 32px;
  padding:32px 24px;
  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;
  font-size: 20px;
  font-weight: 500;
  line-height: 1.2;
  color: #68a357;
  flex-shrink: 0;
}

.enterprise_section04 .list_box li p{
  line-height: 1.6;
}

.enterprise_section05{
  padding-bottom: 140px;
}

.enterprise_section05 .p01{
  margin-top: 32px;
}

.enterprise_section05 .cost_box{
  display: flex;
  justify-content: center;
  align-items: center;
  padding:32px 24px;
  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: 46px;
  height: 46px;
  position: relative;
  margin:0 96px;
}

.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:8px;
  height:100%;
}

.enterprise_section05 .cost_box .plus::after{
  width:100%;
  height:8px;
}

.enterprise_section05 .insurance_box{
  margin-top: 40px;
}

.enterprise_section05 .insurance_box img{
  width:100%;
}

.enterprise_section05 .p02{
  margin-top: 40px;
  font-size: 18px;
  line-height: 1.67;
}

.enterprise_section05 .p02 span{
  font-size: 16px;
}

.enterprise_section05 .p03{
  margin-top: 32px;
  line-height: 1.67;
  color: #e63208;
  display: flex;
}

.enterprise_section05 .p03::before{
  content:'※';
  line-height: 1.67;
  color: #e63208;
}

.enterprise_section05 .p03+.p03{
  margin-top: 6px;
}

.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: 24px;
  font-weight: 500;
  line-height: 1;
  color: #fff;
}

.enterprise_section05 .guarantee_head .mark{
  position: absolute;
  width:21px;
  height:21px;
  right:96px;
  top:0;
  bottom:0;
  margin:auto;
}

.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:3px;
}

.enterprise_section05 .guarantee_head .mark_inner::after{
  width:3px;
  height:100%;
}

.enterprise_section05 .guarantee_head.active .mark_inner::after{
  display: none;
}

.enterprise_section05 .guarantee_contents{

}

.enterprise_section05 .guarantee_inner{
  padding:64px 40px;
  background-color: #faf9f5;
}

.enterprise_section05 .guarantee_text01{
  font-size: 26px;
  font-weight: 500;
  line-height: 1;
  display: flex;
  align-items: center;
}

.enterprise_section05 .guarantee_text01::before{
  content:"";
  width: 16px;
  height: 16px;
  background-color: #3c2c00;
  margin-right: 16px;
}

.enterprise_section05 .guarantee_text02{
  margin-top: 32px;
  line-height: 2;
}

.enterprise_section05 .guarantee_text02 + .guarantee_text02{
  margin-top: 10px;
}

.enterprise_section05 .guarantee_table_frame01{
  margin-top: 32px;
}

.enterprise_section05 .guarantee_table_frame01 img{
  width:100%;
}

.enterprise_section05 .guarantee_contents ul{
  margin-top: 32px;
}

.enterprise_section05 .guarantee_contents ul li{
  display: flex;
  line-height: 2;
}

.enterprise_section05 .guarantee_contents ul li::before{
  content:"※";
  line-height: 2;
}

.enterprise_section06{
  padding-bottom: 140px;
}

.enterprise_section06 .p01{
  margin-top: 32px;
}

.enterprise_section06 .guarantee_table_frame02{
  margin-top: 32px;
}

.enterprise_section06 .guarantee_table_frame03{
  margin-top: 60px;
}

.enterprise_section06 table{
  width:100%;
}

.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: 140px;
}

.enterprise_section07 .p01{
  margin-top: 32px;
}

.enterprise_section07 .pay_box{
  margin-top: 32px;
  padding:12px 40px;
  border: solid 1px #3c2c00;

}

.enterprise_section07 .pay_box p{
  line-height: 2;
  display: flex;
}

.enterprise_section07 .pay_box p span{
  line-height: 2;
}

.enterprise_section08{
  padding-bottom: 100px;
}

.enterprise_section08 .flex{
  display: flex;
  margin-top: 40px;
}

.enterprise_section08 .flex .thumb{
  width:400px;
  flex-shrink: 0;
  margin-left: 32px;
  padding-top: 6px;
}

.enterprise_section08 .flex .thumb img{
  width:100%;
}

.enterprise_section08 .flex .text_area{
  width:100%;
}

.enterprise_section08 .p01{
  width:fit-content;
  margin:48px auto 0;
  position: relative;
  font-size: 24px;
  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: 396px;
  height: 80px;
  border-radius: 40px;
  background-color: #68a357;
  /* background-image: linear-gradient(to top, #f8a300, #ffac0c, #f8b500); */
  pointer-events: none;
  margin:14px auto 0;
}

.enterprise_section08 .tel_button p{
  font-family: 'Noto Serif JP', serif;
  font-size: 16px;
  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: 28px;
  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;
}

main.construction_main{

}

.construction_mv_section{
  background-image: url('../img/construction/construction_mv.jpg');
}


.construction_section01{
  padding-bottom: 140px;
}

.construction_section01 .p01{
  margin-top: 56px;
}

.construction_section01 .p02{
  margin-top: 56px;
}

.construction_section01 .flex{
  display: flex;
  margin-top: 40px;
}

.construction_section01 .flex{
  display: flex;
}

.construction_section01 .flex .thumb{
  width:400px;
  flex-shrink: 0;
  padding-top: 8px;
}

.construction_section01 .flex .thumb img{
  width:100%;
}

.construction_section01 .flex .text_area{
  width:100%;
} 

.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: row-reverse;
}

.construction_section01 .flex01 .thumb{
  margin-left: 32px;
}

.construction_section01 .flex02{
  margin-top: 32px;
}

.construction_section01 .flex02 .thumb{
  margin-right: 32px;
}

.construction_section02{
  padding-bottom: 140px;
}

.construction_section02 .p01{
  margin-top: 32px;
}

.construction_section02 .reason_list{
  display: flex;
  justify-content: space-between;
  margin-top: 56px;
}

.construction_section02 .reason_list li{
  width:31.1%;
  display: flex;
  flex-direction: column;
  align-items: center;
}

.construction_section02 .reason_head{
  display: flex;
  justify-content: center;
  align-items: flex-end;
  padding-bottom: 8px;
  font-family: 'Noto Serif JP', serif;
  font-size: 24px;
  font-weight: 600;
  line-height: 1;
  border-bottom:2px solid #3c2c00;
}

.construction_section02 .reason_head span{
  font-size: 50px;
  line-height: 0.8;
  color: #f8b500;
  letter-spacing: 0.06em;
  margin-left: 8px;
}

.construction_section02 .reason_icon{
  min-height:190px;
  padding:4px 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;
}

.construction_section02 .map_box{
  margin-top: 80px;
  height:500px;
  position: relative;
  background-color: #faf9f5;
  display: flex;
  justify-content: center;
  align-items: flex-start;
  padding-top: 56px;
}

.construction_section02 .map_box .map_arrow{
  position: absolute;
  width:140px;
  right:50px;
  top:-140px;
}

.construction_section02 .map_box .map_head{
  font-family: 'Noto Serif JP', serif;
  font-size: 34px;
  font-weight: 500;
  line-height: 1;
  text-align: center;
  position: absolute;
  width:100%;
  top:-17px;
  left:0;
}

.construction_section02 .map_contents{
  position: relative;
  width:361px;
} 

.construction_section02 .map_contents .construction_map{
  width:100%;
}

.construction_section02 .map_contents .map_link{
  position: absolute;
  transition-duration: 0.4s;
}

@media(min-width:1240px){
  .construction_section02 .map_link:hover,
  .construction_section02 area[title="東京労務管理協会"]:hover + .map_link01,
  .construction_section02 area[title="近畿労務管理協会 大阪会"]:hover + .map_link02,
  .construction_section02 area[title="近畿労務管理協会"]:hover + .map_link03,
  .construction_section02 area[title="九州労務管理協会"]:hover + .map_link04{
    opacity: 0.7;
  }

}

.construction_section02 .map_contents .map_link img{
  width:100%;
}

.construction_section02 .map_contents .map_link01{
  width:220px;
  right:-205px;
  top:160px;
}
.construction_section02 .map_contents .map_link02{
  width:300px;
  top:70px;
  right:132px;
}
.construction_section02 .map_contents .map_link03{
  width:319px;
  top:334px;
  right:-110px;
}
.construction_section02 .map_contents .map_link04{
  width:220px;
  top:190px;
  right:355px;
}

.construction_section03{
  padding-bottom: 140px;
}

.construction_section03 .p01{
  margin-top: 32px;
}

.construction_section03 .table_box{
  margin-top: 32px;
}

.construction_section03 table{
  
  width:100%;
}

.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;
  /* height:100px; */
  line-height: 1.38;
  font-feature-settings: 'palt';
  /* letter-spacing: 0.04em; */
}

.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: 18px;
  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;
  height:210px;
  overflow: hidden;
  display: flex;  
}

.construction_section03 .compare_box .compare_bg01{
  position: absolute;
  width:494px;
  top: -36px;
  left: -19px;
}

.construction_section03 .compare_box .compare_bg02{
  position: absolute;
  width: 276px;
  right: -47px;
  top: -70px;
}

.construction_section03 .compare_box .compare_left,
.construction_section03 .compare_box .compare_right{
  width: 50%;
  height:100%;
  position: relative;
  z-index: 3;
}

.construction_section03 .compare_box .compare_left{
  display: flex;
  align-items: flex-end;
}

.construction_section03 .compare_box .compare_left img{
  width:342px;
  margin-left: 58px;
}

.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: 24px;
  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: 32px;
  font-weight: 600;
}

.construction_section03 .compare_box .compare_text02{
  font-weight: 500;
  text-align: left;
  width: fit-content;
  margin:12px auto 0;
}

.construction_section03 .common_min_contact_area {
  margin-top: 130px;
}

.construction_section04{
  padding-bottom: 140px;
}


.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:72px;
  font-size: 50px;
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0;
  white-space: nowrap;
  color: #f8b500;
  flex-shrink: 0;
}

.construction_section04 .num_flex p{
  padding-top: 6px;
  font-size: 20px;
  font-weight: 600;
  line-height: 1.8;
  
}

.construction_section04 .num_flex p span{
  border-bottom: 2px solid #3c2c00;
}

.construction_section04 .num_flex + p{
  margin-top: 20px;
  line-height: 2;
}

.construction_section04 .num_flex + p span{
  font-weight: 500;
  text-decoration: underline;
}

.construction_section04 .range_list{
  display: flex;
  justify-content: space-between;
  margin-top: 24px;
}

.construction_section04 .range_list li{
  width:276px;
  border: 2px solid rgba(60,44,0,0.14);
}

.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: 18px;
  line-height: 1.56;
  font-feature-settings: 'palt';
}

.construction_section04 .range_list .range_angle{
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 36px 53px 0 53px;
  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:56px 80px 40px;
}

.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;
  flex-wrap: wrap;
  gap:20px 40px;
}

.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: 20px;
  font-weight: 500;
  line-height: 1.1;
}

.construction_section04 .range_box .remark{
  width:fit-content;
  margin:24px auto 0;
  display: flex;
  line-height: 1.5;
}

.construction_section04 .range_box .remark::before{
  content:"※";
  line-height: 1.5;
}

.construction_section05{
  padding-bottom: 140px;
}

.construction_section05 .p01{
  margin-top: 32px;
  line-height: 2;
}

.construction_section05 .list_box{
  margin-top: 32px;
  background-color: #faf9f5;
  padding:40px 24px;
  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;
  font-size: 20px;
  font-weight: 500;
  line-height: 1;
  color: #68a357;
  flex-shrink: 0;
}

.construction_section05 .list_box ul li p{
  line-height: 1.5;
  font-feature-settings: 'palt';
}

.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: 140px;
}

.construction_section06 .p01{
  margin-top: 32px;
  line-height: 2;
}

.construction_section06 .table_frame{
  margin-top: 32px;
}

.construction_section06 table{
  width:100%;
}

.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: 34px;
  font-weight: 500;
  line-height: 1;
  display: flex;
  align-items: center;
  margin-top: 80px;
}

.construction_section06 .example_remark{
  margin-top: 32px;
  line-height: 2;
}

.construction_section06 h3::before{
  content:"";
  width: 20px;
  height: 20px;
  background-color: #3c2c00;
  margin-right: 20px;
}

.construction_section06 .exapmle_list{
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  margin-top: 40px;
}

.construction_section06 .exapmle_block{
  width:416px;
  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 32px;
  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;
}

.construction_section06 .exapmle_block .exapmle_bottom p{
  font-size: 20px;
  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: 16px;
  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::before{
  top:-432px;
}

.construction_section06 .exapmle_block02 .construction_example_icon02{
  top:-160px;
  width:120px;
}

.construction_section06 .exapmle_block03{
  width:100%;
  margin-top: 24px;
  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;
}

.construction_section06 .exapmle_block03 .exapmle_bottom .list{
  padding:24px 16px;
}

.construction_section06 .exapmle_block03 .exapmle_bottom .list p{
  display: flex;
  flex-wrap: wrap;
  line-height: 1.8;
  
}

.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: 40px;
}

.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;
  padding:32px 24px;
  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: 46px;
  height: 46px;
  position: relative;
  margin:0 96px;
}

.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:8px;
  height:100%;
}

.construction_section07 .cost_box .plus::after{
  width:100%;
  height:8px;
}


.construction_section07 h3{
  font-family: 'Noto Serif JP', serif;
  font-size: 34px;
  font-weight: 500;
  line-height: 1;
  display: flex;
  align-items: center;
  margin-top: 80px;
}

.construction_section07 h3::before{
  content:"";
  width: 20px;
  height: 20px;
  background-color: #3c2c00;
  margin-right: 20px;
}

.construction_section07 .cost_table_box{
  margin-top: 88px;
}

.construction_section07 .cost_table_contents{
  position: relative;
}

.construction_section07 .cost_table_contents .construction_table{
  width:100%;
}

.construction_section07 .cost_table_contents .construction_table_balloon{
  position: absolute;
  width:150px;
  top:-50px;
  left:-64px;
}

.construction_section07 .remark_list{
  margin-top: 24px;
}

.construction_section07 .remark_list p{
  display: flex;
  line-height: 2;
}

.construction_section07 .remark_list p::before{
  content:"※";
  line-height: 2;
}

.construction_section07 .remark_list p span{
  text-decoration: underline;
}

.construction_section07 .remark_list .red{
  color:#e63208;
  font-weight: 500;
}

.construction_section08{
  padding-bottom: 140px;
}

.construction_section08 .p01{
  margin-top: 32px;
}

.construction_section08 .step_arrow{
  margin:40px auto 0;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 50px 73px 0 73px;
  border-color: #f8b500 transparent transparent transparent;
}

.construction_section08 .step_block{
  display: flex;
  margin-top: 40px;
  border: 2px solid #3c2c00;
}

.construction_section08 .step_num{
  width:100px;
  flex-shrink: 0;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  background-color: #3c2c00;
  font-family: 'Noto Serif JP', serif;
  font-size: 20px;
  font-weight: 500;
  line-height: 1;
  text-align: center;
  color: #fff;

}

.construction_section08 .step_num span{
  font-size: 40px;
  margin-top: 8px;
}

.construction_section08 .step_contents{
  width:100%;
  padding:40px 40px 40px 28px;
}

.construction_section08 .step_head{
  display: flex;
  align-items: center;
  font-size: 24px;
  font-weight: 500;
  line-height: 1.3;
}

.construction_section08 .step_head::before{
  content:"";
  width: 16px;
  height: 16px;
  background-color: #3c2c00;
  margin-right: 12px;
  margin-top: 2px;
}

.construction_section08 .step_text01{
  line-height: 1.67;
  margin-top: 8px;
}

.construction_section08 .step_text02{
  margin-top: 32px;
}

.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:32px 32px 40px;
  background-color: #faf9f5;
}

.construction_section08 .color_box .entry_button{
  width: 376px;
  height: 80px;
  margin:0 auto;
}

.construction_section08 .color_box .entry_button .button_text{
  font-size: 20px;
  font-weight: 700;
}

.construction_section08 .link_table_frame{
  margin-top: 32px;
}

.construction_section08 .link_table{
  width:100%;
}

.construction_section08 .link_table th{
  background-color: #f4f2ea;
  text-align: center;
  font-size: 18px;
  font-weight: 400;
  line-height: 1.22;
  text-align: center;
  border: 1px solid rgba(60,44,0,0.14);
  padding:8px 0;
  background-color: #f4f2ea;

}

.construction_section08 .link_table td{
  padding:8px;
  border: 1px solid rgba(60,44,0,0.14);
  line-height: 1.22;
  font-feature-settings: 'palt';
  background-color: #fff;
}

.construction_section08 .link_table td:first-child{
  /* width: 140px; */
  /* width:125px; */
  font-size: 18px;
  line-height: 1.22;
  text-align: center;
  background-color: #f4f2ea;

}

.construction_section08 .link_table .link_td{
  height:88px;
  width:140px;
}

.construction_section08 .download_link{
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 46px;
  border-radius: 3px;
  transition-duration: 0.4s;
  background-color: #3c2c00;
  font-weight: bold;
  line-height: 1;
  color: #fff;
  position: relative;
  margin:0 auto;
}

.construction_section08 .download_link::after{
  content:"";
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0 0 10px 10px;
  border-color: transparent transparent #fff transparent;
  position: absolute;
  bottom:3px;
  right:3px;
}

@media(min-width:1240px){
  .construction_section08 .download_link:hover{
    opacity: 0.7;
  }
}


.construction_section08 .alert_head{
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 18px;
  font-weight: bold;
  line-height: 1;
}

.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;
  position: relative;
}

.construction_section08 .alert_list li::before{
  content:"・";
  line-height: 1.67;
  position: absolute;
  left:0;
  top:0;
}

.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;
}

.construction_section08 .alert_table{
  width:100%;
}

.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: 140px;
}

.construction_section09 .p01{
  margin-top: 36px;
}

.construction_section09 .calendar_box{
  margin-top: 36px;
}

.construction_section09 .calendar_contents{
  position: relative;
}

.construction_section09 .construction_calendar{
  width:100%;
}

.construction_section09 .calendar_icon01{
  position: absolute;
  width:350px;
  bottom:534px;
  left:-64px;
}

.construction_section09 .calendar_icon02{
  position: absolute;
  width:213px;
  bottom:103px;
  right:-40px;
}

.construction_section10{
  padding-bottom: 140px;
}

.construction_section10 .flex{
  display: flex;
  margin-top: 40px;
}

.construction_section10 .flex .thumb{
  width:400px;
  flex-shrink: 0;
  margin-left: 32px;
  padding-top: 6px;
}

.construction_section10 .flex .thumb img{
  width:100%;
}

.construction_section10 .flex .text_area{
  width:100%;
}

.construction_section10 .p01{
  width:fit-content;
  margin:48px auto 0;
  position: relative;
  font-size: 24px;
  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: 396px;
  height: 80px;
  border-radius: 40px;
  background-color: #68a357;
  pointer-events: none;
  margin:32px auto 0;
}

.construction_section10 .tel_button p{
  font-family: 'Noto Serif JP', serif;
  font-size: 16px;
  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: 28px;
  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: 100px;
}

.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 88px;
  line-height: 1.75;
  transition-duration: 0.4s;
  cursor: pointer;
}

.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: 50px;
  height: 50px;
  border-radius: 50%;
  background-color: #f8b500;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 20px;
  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 40px 24px 88px;
  line-height: 1.75;
  background-color: #faf9f5;

}

.construction_section11 .faq_block .answer_area::before{
  content:"A";
  padding-bottom: 4px;
  font-family: 'Noto Serif JP', serif;
  width: 50px;
  height: 50px;
  border-radius: 50%;
  background-color: #f8b500;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 20px;
  font-weight: bold;
  line-height: 1;
  color: #fff;
  position: absolute;
  top:12px;
  left:20px;
  box-sizing: border-box;
}


/*
--------------------------------------------------------
一人親方特別加入 船員 (大部分は建設業と一緒)
--------------------------------------------------------
*/

body.sailor_body{
  position: relative;
}

main.sailor_main{

}

.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: 423px;
  top: 0;
  left: 0;
}

.sailor_section03 .compare_box .compare_left img.sailor_compare01 {
  width: 337px;
  margin-left: 64px;
}

.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: 200px;
  padding:16px 2px;
  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-feature-settings: 'palt';
}

.sailor_section04 .range_box .box_list .box04{
  width:100%;
}

.sailor_section06 .exapmle_block02::before {
  top: -402px;
}

.sailor_section06 .exapmle_block01 .sailor_example_icon01 {
  top: 28px;
  width: 170px;
}

.sailor_section06 .exapmle_block02 .sailor_example_icon02{
  top: -120px;
  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: 18px;
  font-weight: 500;
}

.sailor_section08 .color_box .sailor_entry_list{
  text-align: center;
  font-weight: 500;
  line-height: 1.5;
}

.sailor_section08 .color_box .sailor_entry_list span{
  display: inline-block;
}

.sailor_section08 .link_list{
  display: flex;
  justify-content: center;
  max-width:620px;
  margin:16px auto 0;
}


.sailor_section08 .link_list .entry_button{
  width: 200px;
  height: 70px;
  margin: 0;
}

.sailor_section08 .link_list .entry_button .button_text{
  font-size: 16px;
  font-weight: bold;
  line-height: 1.38;
  text-align: center;
}

.sailor_section08 .link_list .download_link{
  width: 200px;
  height: 70px;
  text-align: center;
  line-height: 1.38;
  margin: 0;
  margin-left: 24px;
}
/*
--------------------------------------------------------
協会案内
--------------------------------------------------------
*/

body.association_body{
  position: relative;
}

main.association_main{

}

.association_mv_section{
  background-image: url('../img/association/association_mv.jpg');
}


.association_section01{
  padding:72px 0 60px;
}

.association_section01 .p01{
  margin-top: 56px;
  font-size: 24px;
  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: 56px;

}

.association_section01 .p02+.p02{
  margin-top: 8px;
}

.association_section01 .p03{
  margin-top: 20px;
  display: flex;
  justify-content: flex-end;
}

.association_section01 .p03 img{
  width:180px;
}

.association_section02{
  padding:60px 0 70px;
}

.association_section02 .info_list{
  margin-top: 56px;
}

.association_section02 .info_block{
  padding:24px 0;
  display: flex;
  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:21%;
  font-weight: 500;
  line-height: 1.75;
}

.association_section02 .info_block .info_right{
  width:79%;
  padding-left: 6%;
}

.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:30px 0 56px 30px;
  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: 18px;
  line-height: 1.2;
  position: relative;
}

.association_section02 .association_block .association_title::before{
  content:"";
  width: 14px;
  height: 14px;
  background-color: #f8b500;
  border-radius: 50%;
  position: absolute;
  top:4px;
  left:-32px;
}

.association_section02 .association_block .association_info{
  margin-top: 16px;
  font-weight: 400;
  line-height: 1.5;
  color: #3c2c00;
}

.association_section02 .association_block .association_info .tel{
  color: #3c2c00;
  pointer-events: none;
  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;
  margin-top: 16px;
}

.association_section02 .association_block .association_img_frame{
  width:190px;
  height:260px;
  flex-shrink: 0;
  margin-right: 20px;
}

.association_section02 .association_block .association_img_frame img{
  width:100%;
  height:100%;
  object-fit: cover;
  /* object-position: top; */
}

.association_section02 .association_block .association_map_frame{
  width:100%;
  height:260px;
}

.association_section02 .association_block .association_map_frame iframe{
  display: block;
  width:100%;
  height:100%;
}

.association_section03{
  padding:70px 0 140px;
}

.association_section03 .p01{
  margin-top: 72px;
  line-height: 2;
  display: flex;
  justify-content: center;
}

.association_section03 .history_list{
  margin-top: 60px;
  padding-bottom: 120px;
  position: relative;
}

.association_section03 .history_list::before{
  content:"";
  width: 3px;
  height: calc(100% - 45px);
  background-color: #f8b500;
  position: absolute;
  top: 45px;
  left: 268.5px;
  z-index:-1;
}

.association_section03 .history_block{
  display: flex;
  align-items: flex-start;
  margin-top: 60px;
}

.association_section03 .history_block:first-child{
  margin-top: 0;
}

.association_section03 .history_block2007{
  margin-top: 120px;
}

.association_section03 .history_block .year_block{
  flex-shrink: 0;
  width:260px;
  font-family: 'Noto Serif JP', serif;
  font-size: 80px;
  font-weight: 600;
  line-height: 1;
  color: #f8b500;
}

.association_section03 .history_block .radi{
  width: 20px;
  height: 20px;
  border-radius: 50%;
  background-color: #f8b500;
  flex-shrink: 0;
  margin-top: 36px;
}

.association_section03 .history_block .history_info{
  width:100%;
  padding-left: 60px;
  line-height: 2;
}
.association_section03 .history_block .month_block{
  display: flex;
  padding-top: 30px;
}

.association_section03 .history_block .month{
  width:72px;
  flex-shrink: 0;
}



/*
--------------------------------------------------------
求人情報
--------------------------------------------------------
*/

body.recruit_body{
  position: relative;
}

main.recruit_main{

}

.recruit_mv_section{
  background-image: url('../img/recruit/recruit_mv.jpg');
}

.recruit_section{

}

.recruit_section01{
  padding:70px 0 70px;
}

.recruit_section01 .flex{
  display: flex;
  align-items: flex-start;
  justify-content: space-between;

}

.recruit_section01 .flex .left{
  width:660px;
  height:340px;
  position: relative;
  padding-top: 10px;
}

.recruit_section01 .left .recruit01{
  width: 400px;
}

.recruit_section01 .left .recruit02{
  width:320px;
  position: absolute;
  z-index: 2;
  bottom:0;
  right:0;
}

.recruit_section01 .flex .right{
  width:470px;
}

.recruit_section01 .flex .p01{
  font-family: 'Noto Serif JP', serif;
  font-size: 24px;
  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;
}

.recruit_section01 .flex .p02+.p02{
  margin-top: 8px;
}

.recruit_section01 .entry_link{
  width: 300px;
  height: 76px;
  margin:80px auto 0;
}

.recruit_section02{
  padding:70px 0 140px;
}

.recruit_section02 .appli_list{
  margin-top: 56px;
}

.recruit_section02 .appli_block{
  padding:24px 0;
  display: flex;
  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:21%;
  font-weight: 500;
  line-height: 1.75;
}

.recruit_section02 .appli_block .appli_right{
  width:79%;
  padding-left: 6%;
}

.recruit_section02 .appli_block .appli_text{
  line-height: 1.75;
}

.recruit_section02 .appli_block .appli_text + .appli_text{
  margin-top: 8px;
}

.recruit_section02 .appli_block .appli_text a{
  color:#3c2c00;
}

.recruit_section02 .appli_block .dot_ul li{
  display: flex;
  line-height: 1.75;
}

.recruit_section02 .appli_block .dot_ul li::before{
  content:"・";
  line-height: 1.75;
}


.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;
}

main.news_main{

}

.news_mv_section{
  background-image: url('../img/news/news_mv.jpg');
}


.news_section01{
  padding:88px 0 80px;
}

.news_section01 .p01{
  line-height: 1.75;
  text-align: center;
  margin-bottom: 80px;
}

.news_section01 .flex{
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  flex-wrap: wrap;
}

.news_section01 article{
  width:820px;
}

.news_section01 article .news_single_frame{
  padding:64px 96px;
  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;
}



/*
--------------------------------------------------------
労務相談Q＆A一覧
--------------------------------------------------------
*/

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;
}


main.qa_main{

}

.qa_mv_section{
  background-image: url('../img/qa/qa_mv.jpg');
}


.qa_section01{
  padding:88px 0 80px;
}

.qa_section01 .p01{
  margin-bottom: 72px;
  line-height: 1.75;
  text-align: center;
}

.qa_section01 .flex{
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  flex-wrap: wrap;
}

.qa_section01 article{
  width:820px;
}

.qa_section01 .common_faq_list .common_faq_block .question_area{
  padding:36px 48px 24px 80px;
}

.qa_section01 .common_faq_list .common_faq_block .question_area::before{
  width:40px;
  height:40px;
  top:32px;
}

.qa_section01 .qa_single_frame{
  padding:40px 100px 40px;
  background-color: #fff;
}

.qa_section01 .qa_single_frame .qa_category{
  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: 20px;
  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;

}

.qa_section01 .qa_single_frame .contact_block{
  border: solid 1px #3c2c00;
  padding:30px;
  margin-top: 32px;
}

.qa_section01 .qa_single_frame .contact_block .contact_link_flex{
  display: flex;
  justify-content: space-between;
}

.qa_section01 .qa_single_frame .contact_block .entry_button{
  width: 270px;
  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: 270px;
  height: 94px;
  background-color: rgba(104,163,87,0.06);
  
}

.qa_section01 .qa_single_frame .contact_block .contact_button .button_text{
  font-size: 18px;
  font-weight: bold;
}

.qa_section01 .qa_single_frame .contact_block .contact_button .button_sub_text{
  font-weight: 500;
  font-size: 13px;
  margin-top: 6px;
  text-align: center;
}


.qa_section01 .qa_single_frame .contact_block .tel_text{
  font-size: 18px;
  font-style: normal;
  line-height: 1.3;
  display: flex;
  justify-content: center;
  align-items: center;
  margin-top: 24px;

}

.qa_section01 .qa_single_frame .contact_block .tel_text span{
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 0 12px;
  height: 26px;
  border-radius: 13px;
  background-color: #453d2a;
  font-weight: 500;
  line-height: 1;
  margin-right: 12px;
  color: #fff;
}

.qa_section01 .qa_single_frame .contact_block .tel_flex{
  display: flex;
  justify-content: center;
  align-items: flex-start;
  margin-top: 12px;
}

.qa_section01 .qa_single_frame .contact_block .tel{
  position: relative;
  pointer-events: none;
  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: 14px;
  font-weight: normal;
  line-height: 1;
  text-align: center;
  color: #3c2c00;
  padding-left: 32px;
}

.qa_section01 .qa_single_frame .contact_block .tel_border{
  width: 1px;
  height: 32px;
  background-color: #68a357;
  margin:0 16px;
}

.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: 34px;
  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: 20px;
  height: 20px;
  background-color: #3c2c00;
  margin-right: 20px;
}

.qa_section02 .common_faq_list li{
  max-width: 824px;
}

.qa_section02 .common_faq_list .common_faq_block .question_area{
  padding:36px 48px 24px 80px;
  
}

.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;
}


main.information_main{

}

.information_mv_section{
  background-image: url('../img/information/information_mv.jpg');
}


.information_section01{
  padding:88px 0 80px;
}


.information_section01 .p01{
  line-height: 1.75;
  text-align: center;
}

.information_section02{
  padding:80px 0 48px;
  background-color:#faf9f5 ;
}

.information_section02 .information_list{
  display: flex;
  align-items: flex-start;
  flex-wrap: wrap;
}

.information_section02 .information_list li{
  width:380px;
  margin-right: 30px;
  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;
}

@media(min-width:1025px){
  .information_section02 .information_card:hover{
    background-color:#fffbf0;
  }
}

.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: 22px;
  min-height: 65px;
  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:80px 100px;
  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: 24px;
  font-weight: 500;
  line-height: 1.33;
  padding-bottom: 12px;
  border-bottom:3px 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;
}

main.privacy_main{

}

.privacy_mv_section{
  background-image: url('../img/privacy/privacy_mv.jpg');
}


.privacy_section h2{
  font-family: 'Noto Serif JP', serif;
  font-size: 24px;
  font-weight: 600;
  line-height: 1;
  width: fit-content;
  padding-bottom: 12px;
  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: 20px;
  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;
}

.privacy_section .privacy_sub_title{
  display: inline-block;
  font-weight: 500;
  font-size: 18px;
  margin-top: 24px;
  margin-bottom: 4px;
}

.privacy_section .privacy_border{
  height: 1px;
  background-color: #3c2c00;
  margin-top: 24px;
}

.privacy_section01{
  padding:80px 0 120px;
}

.privacy_section01 .block01{
  margin-top: 32px;
}

.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: none;
}

.privacy_section02{
  padding:0 0 80px;
}


/*
--------------------------------------------------------
当サイトについて
--------------------------------------------------------
*/

body.about_body{
  position: relative;
}

main.about_main{

}

.about_mv_section{
  background-image: url('../img/about/about_mv.jpg');
}

.about_section01{
  padding:0 0 80px;
}

.about_section01 .p01{
  text-align: center;
  line-height: 1.75;
  
}

.about_section01 .about_title{
  font-size: 18px;
  font-weight: 500;
  margin-top: 64px;
}

.about_section01 .about_text{
  margin-top: 16px;
  line-height: 1.75;
}

.about_section01 a{
  color:#3c2c00;
}

.about_section01 a.tel{
  pointer-events: none;
}

.about_section01 .table_frame{
  margin-top: 24px;
}

.about_section01 table{
  width:100%;
}

.about_section01 table th,
.about_section01 table td{
  border: 1px solid rgba(60,44,0,0.14);
  padding:12px 16px;
}

.about_section01 table th{
  background-color: #faf9f5;
}



/*
--------------------------------------------------------
サイトマップ
--------------------------------------------------------
*/

body.sitemap_body{
  position: relative;
}

main.sitemap_main{

}

.sitemap_mv_section{
  background-image: url('../img/sitemap/sitemap_mv.jpg');
}

.sitemap_section{

}

.sitemap_section01{
  padding:70px 0 140px;
}

.sitemap_section01 .ul_flex{
  display: flex;
  justify-content: center;
}

.sitemap_section01 .ul_flex .menu_block02{
  margin:0 140px;
}

.sitemap_section01 a{
  transition-duration: 0.4s;
}

@media(min-width:1025px){
  .sitemap_section01 a:hover{
    opacity: 0.7;
  }
}

.sitemap_section01 .parent_list02 + .parent_list02{
  margin-top: 72px;
}

.sitemap_section01 .parent_item{
  margin-top: 32px;
}

.sitemap_section01 .parent_item:first-child{
  margin-top: 0;
}

.sitemap_section01 .parent_link{
  font-weight: 500;
  line-height: 1.3;
  color: #3c2c00;
}

.sitemap_section01 .parent_link span{
  font-weight: 400;
  font-size: 14px;
}

.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;
}

/*
--------------------------------------------------------
404ページ
--------------------------------------------------------
*/

body.page404_body{
  position: relative;
}

main.page404_main{

}

.page404_section01{
  padding:80px 0;
}

.page404_section01 .p01 {
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 32px;
  font-weight: bold;
}

.page404_section01 .p02 {
  display: flex;
  justify-content: center;
  align-items: center;
  line-height: 1.7;
  margin-top: 32px;
}




/*
--------------------------------------------------------
一人親方特別加入申し込みフォーム
--------------------------------------------------------
*/

.application_mv_section{
  background-image: url('../img/application/application_mv.jpg');
}

.form_section01{
  padding:80px 0;
}

.form_section01 .form_txt{
  line-height: 1.75;
  text-align: center;
  margin-bottom: 50px;
}
.form_section01 .form_txt a{
  color: #f8a300;
  font-weight: 700;
  position: relative;
  padding-right: 20px;
  display: inline-block;
  transition: .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: .2s;
}
.form_section01 .form_txt a:hover{
  opacity: .7;
  transition: .2s;
}
.form_section01 .form_txt a:hover::before{
  right: 0;
  transition: .2s;
}

.form_section01 .form_txt.application_txt01{
  margin-bottom: 30px;
}

.form_section01 .form_section01_ttl02{
  margin-top: 50px;
}

.common_oyakata_list {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  margin-top: 30px;
}

.common_oyakata_list.center{
  justify-content: center;
}

.common_oyakata_list li{
  width: 24%;
  margin-top: 20px;
  margin-right: calc((100% - (24% * 4)) / 3);
}

.common_oyakata_list li:nth-of-type(-n + 4){
  margin-top: 0;
}

.common_oyakata_list li:nth-of-type(4n){
  margin-right: 0;
}

@media screen and (max-width:1360px) { 
  .common_oyakata_list li{
    width: 48%;
    margin-right: calc(100% - (48% * 2));
  }
  .common_oyakata_list li:nth-of-type(2n){
    margin-right: 0;
  }
  .common_oyakata_list li:nth-of-type(-n + 4){
    margin-top: 20px;
  }
  .common_oyakata_list li:nth-of-type(-n + 2){
    margin-top: 0;
  }
}


.common_oyakata_list li a{
  width: 100%;
  height: 100%;
  border: solid 1px #333;
  display: block;
  transition: .2s;
}

.common_oyakata_list li a:hover{
  opacity: .7;
  transition: .2s;
}

.common_oyakata_list li a .list_ttl{
  width: 100%;
  font-size: 20px;
  color: #fff;
  font-weight: 700;
  line-height: 1.7;
  letter-spacing: 0.05em;
  padding: 10px;
  background-color: #333;
  text-align: center;
  position: relative;
}

.common_oyakata_list li a .list_ttl::before{
  content: "";
  display: inline-block;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0 0 15px 15px;
  border-color: transparent transparent #fff transparent;
  position: absolute;
  bottom: 5px;
  right: 5px;
  z-index: 1;
}

.common_oyakata_list li a .list_txt{
  width: 100%;
  font-size: 16px;
  color: #3c2c00;
  font-weight: 400;
  line-height: 1.7;
  letter-spacing: 0.05em;
  padding: 20px;
}

.common_oyakata_list li.tokyo a{
  border: solid 1px #D84035;
}
.common_oyakata_list li.tokyo a .list_ttl{
  background-color: #D84035;
}

.common_oyakata_list li.osaka a{
  border: solid 1px #FFA800;
}
.common_oyakata_list li.osaka a .list_ttl{
  background-color: #FFA800;
}

.common_oyakata_list li.kinki a{
  border: solid 1px #315498;
}
.common_oyakata_list li.kinki a .list_ttl{
  background-color: #315498;
}

.common_oyakata_list li.kyusyu a{
  border: solid 1px #68A357;
}
.common_oyakata_list li.kyusyu a .list_ttl{
  background-color: #68A357;
}
/*
--------------------------------------------------------
お問い合わせフォーム
--------------------------------------------------------
*/

.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:80px 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;
}

/*20241115*/
footer .office_block{
  margin-right: 17px;
  
}