@media screen and (min-width:900px){
  .pc_hide{
    display: none!important;
  }
}/*@media screen and (min-width:1201px){*/

@media screen and (max-width:899px){
  .pad_hide{
    display: none!important;
  }

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

  
  main.common_blur{
    filter: blur(16px);
  }
  
  footer.common_blur{
    filter: blur(16px);
  }
  

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

  .container{
    width:92%;
    max-width: 660px;
    margin:0 auto;
    padding:0;
  }



  .common_back_title{
    font-size: 114px;
    top: -48px;
    left: 48px;
  }


  /*青色のボタン*/
  .common_blue_button{

    width: 250px;
    height: 52px;
    border-radius: 26px;

    font-size: 17px;
    line-height: 1;
    border:2px solid #0F31A7;
  }


  /*マウスホバーで矢印が動くテキスト*/
  .common_angle_move_link{
    padding-left: 20px;
  }


  /*ニュース一覧*/
  .common_news_list{
    
  }

  .common_news_list .news_block{
    padding:20px 16px;
    min-height: auto;
    flex-direction: column;
  }

  .common_news_list .news_block .news_info{
    display: flex;
    flex-wrap: wrap;
    width: 100%;
  }

  .common_news_list .news_block .news_date{
    width:95px;
    font-size: 14px;
  }

  .common_news_list .news_block .news_cat_area{
    width:auto;
    padding-right: 0;
  }


  .common_news_list .news_block .news_title{
    line-height: 2;
    font-size: 15px;
    width: 100%;
    margin-top: 6px;
  }

  .common_news_list .news_block .thumb{
    flex-shrink: 0;
    margin-left: 0;
    width:56%;
    margin-top: 24px;
    max-width: 300px;
  }

  /*ページネーション*/
  .common_pagenation{
    display: flex;
    justify-content: center;
    align-items: center;
    margin-top: 50px;
    gap:10px;
  }

  .common_pagenation span.current{/*現在のページボタン*/
    width: 45px;
    height: 45px;
    font-size: 18px;
  }

  .common_pagenation a.page-numbers{/*指定のページ移動ボタン*/
    width: 45px;
    height: 45px;
    font-size: 18px;
  }

  .common_pagenation .dots{
    font-size: 18px;
  }



  /*
  ------------------------------------
  ヘッダー
  ------------------------------------
  */

  header{

  }

  header .header_inner{
    padding:0 30px 0 16px
  }

  header .header_flex{
    display: flex;
    justify-content: space-between;
    align-items: center;
    height:60px;
  } 

  header .header_logo{
    width:155px;
  }

  header .header_right{
    display: flex;
    align-items: center;
  }

  header .header_nav{
    display: none;
  }

  header .button_list{
    display: none;
  }

  header .drawer_open{
    cursor: pointer;
    padding:12px 0;
  }


  header .drawer_open_inner{
    display: flex;
    justify-content: space-between;
    flex-direction: column;
    width:40px;
    height:8px;
  }

  header .drawer_open .bar{
    height:2px;
    background-color: #0F31A7;
    border-radius: 1px;
    transition-duration: 0.5s;
  }

  header .drawer_open.active .bar01 {
    transform: translateY(2.8px) rotate(-20deg);
  }

  header .drawer_open.active .bar02 {
    transform: translateY(-2.8px) rotate(20deg);
  }



  #drawer_menu{
    position: fixed;
    top:60px;
    right:0;
    z-index:99;
    width:100%;
    height: calc(100svh - 60px ); 
    opacity: 0;
    pointer-events: none;
    transition-duration: 0.7s;
    background:rgba(255,255,255,0.6);
    overflow-y: scroll;
    scrollbar-width: none; /*Firefox対応のスクロールバー非表示コード*/  
  -ms-overflow-style: none;/*Internet Explore対応のスクロールバー非表示コード*/   
  }

  #drawer_menu::-webkit-scrollbar {  
    display: none; /*Google Chrome、Safari、Microsoft Edge対応のスクロールバー非表示コード*/
  }

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

  #drawer_menu .drawer_inner{
    padding-top: 36px;
    padding-bottom: 24px;
  }

  #drawer_menu .parent_menu{
    width:74%;
    margin:0 auto;
  }

  #drawer_menu .parent_item + .parent_item{
    margin-top: 30px;
  }

  #drawer_menu .parent_link{
    font-weight: bold;
    font-size: 20px;
    line-height: 1.3;
    color: #0f31a7;
  }

  #drawer_menu .child_menu{
    margin-top: 10px;
  }

  #drawer_menu .child_item + .child_item{
    margin-top: 10px;
  }

  #drawer_menu .child_link{
    font-size: 15px;
    line-height: 1.3;
    color: #0f31a7;
  }

  #drawer_menu  .border{
    height:1px;
    background: #C0D8E5;
    width:84%;
    margin:30px auto 20px;
  }

  #drawer_menu .sub_menu{
    width:74%;
    margin:0 auto;
  }
  
  #drawer_menu .sub_menu li + li{
    margin-top: 10px;
  }

  #drawer_menu .sub_menu a{
    font-weight: normal;
    font-size: 14px;
    line-height: 1.3;
    color: #0f31a7;

  }

  #drawer_menu .button_list{
    width: 74%;
    margin:30px auto 0;
  }

  #drawer_menu .button_list .button{
    display: flex;
    justify-content: center;
    align-items: center;
    transition-duration: 0.4s;
    transition-duration: 0.4s;
    font-weight: bold;
    font-size: 15px;
    line-height: 1.5;
    text-align: center;
    color: #fff;
    width: 100%;
    max-width: 300px;
    height: 60px;
    background: transparent;

  }

  #drawer_menu .button_list .button_contact{
    background-color: #0f31a7;
    border: 2px solid #0f31a7;
  }
  
  #drawer_menu .button_list .button_catalog{
    background-color: #80C1E4;
    border: 2px solid #80C1E4;
    margin-top: 10px;
  }

  @media(any-hover:hover){
    #drawer_menu .button_list .button_contact:hover{
      color:#0f31a7;
      background-color: #fff;
    }
    #drawer_menu .button_list .button_catalog:hover{
      color:#80C1E4;
      background-color: #fff;
    }
  }

  #drawer_menu .drawer_logo{
    display: block;
    width:175px;
    margin:30px auto 0;
  }
  #drawer_menu .drawer_logo img{
    width: 100%;
  }

  #drawer_menu .copy{
    margin-top: 20px;
    font-size: 11px;
    line-height: 1.3;
    text-align: center;
    color: #a7a7a7;

  }
  /*
  ------------------------------------
  ページ下部のお問い合わせエリア
  ------------------------------------
  */

  .common_contact_section{
    padding-top: 48px;
    padding-bottom: 48px;
  }

  .common_contact_section .flex{
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap:20px 0;
  }

  .common_contact_section .box{
    width: 365px;
    min-height: 202px;
    margin:0;
    padding-top: 48px;
    padding-bottom: 16px;
    padding-left: 12px;
    padding-right: 12px;
  }


  .common_contact_section .box .front_title{
    font-size: 24px;
  }

  .common_contact_section .box .back_title{

    font-size: 68px;
    top: -24px;
  }

  .common_contact_section .box .box_text{
    margin-top: 12px;
    font-size: 15px;
    line-height: 2;
  }

  .common_contact_section .box .box_angle{
    margin:12px auto 0;
    width:8px;
    height:11px;
  }


  /*
  ------------------------------------
  フッター
  ------------------------------------
  */

  footer{
    position: relative;
  }

  footer::before{
    width:1366px;
    min-width: 100vw;
    height:1161px;
    background-image: url('../img/common/page_bottom_bg.png');
  }

  footer .footer_area01{
    padding-top: 50px;
    padding-bottom: 24px;

  }

  footer .footer_inner{
    max-width: 1200px;
    padding: 0 25px;
    margin:0 auto;
  }

  footer .footer_area01_flex{
    display: flex;
    align-items: center;
    flex-direction: column;
  }

  footer .footer_area01_left{
    padding-left: 0;
    margin-right: 0;
  }

  footer .footer_logo{
    display: block;
    width:245px;
    margin:0 auto;
  }


  footer .company_name{
    text-align: center;
    margin-top: 20px;
    font-size: 23px;
    line-height: 1.2;
    
  } 

  footer .company_address{
    text-align: center;
    margin-top: 6px;
    line-height: 1.4;
    
  }

  footer .button_list{
    display: none;
  }

  footer .footer_area01_right{
    display: none;
  }

  footer .footer_area02{
    padding:20px 0;
  }

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

  footer .footer_area02_left{
    display: none;
  }


  footer .footer_area02_right{
    padding-right: 0
  }

  footer .copy{
    text-align: center;
    font-size: 12px;
    line-height: 1.3;
    color: #fff;
  }
  /*
  ------------------------------------
  トップページ
  ------------------------------------
  */
  body.top_body{
    
  }

  body.top_body #body_wrap::before{
    height:calc(100% - calc(1080 / 1920 * 100vw));
  }

  main.top_main{
    
  }

  .top_section{

  }

  .top_section .sec_title{
    font-size: 36px;
    line-height: 1.3;

  }

  .top_mv_section{
    position: relative;
  }


  .top_service_section{
    padding-top: 102px;
  }

  .top_service_section .service_block{
    padding-top: 0;
    width:100%;
  }

  .top_service_section .service_img_frame{
    width: 100vw;
    margin: 40px calc(50% - 50vw) 0;
    display: flex;
    justify-content: flex-end;
  }

  .top_service_section .service_img{
    position: static;
    width:91.2%;
    max-width: 500px;
  }

  .top_service_section .service_text{
    margin-top: 48px;
    line-height: 2;
  }

  .top_service_section .service_link_line{
    width:88%;
    margin-top: 40px;
    padding-bottom: 5px;
  }

  .top_service_section .service_link_line::after{
    width:100vw;
    height:1px;
  }

  .top_service_section .service_link{
    font-size: 18px;
  }

  .top_products_section{
    padding-top: 140px;
  }


  .top_products_section .p01{
    margin-top: 48px;
    line-height: 2;
  }

  .top_products_section .products_list{
    gap:40px 32px;
    margin-top: 34px;
  }

  .top_products_section .products_item{
    width:300px;
  }


  .top_products_section .products_name{
    margin-top: 10px;
    font-size: 19px;
    line-height: 1;
  } 

  .top_products_section .products_link{
    margin-top: 66px;
  }

  .top_company_section{
    padding-top: 140px;
  } 

  .top_company_section .company_frame{
    display: flex;
    justify-content: flex-end;
  }

  .top_company_section .company_block{
    width:100%;
    position:relative;
    padding-top: 0;
  }


  .top_company_section .company_block .common_back_title {
    left:64px;
  }

  .top_company_section .p01{
    margin-top: 45px;
    line-height: 2;
  }

  .top_company_section .company_link_line{
    width:88%;
    margin-top: 34px;
    padding-bottom: 5px;
  }

  .top_company_section .company_link_line::before{
    width:100vw;
  }


  .top_company_section .company_link{
    font-weight: bold;
    font-size: 18px;
    line-height: 1;
    color: #0f31a7;
  }


  .top_company_section .company_img_frame{
    width: 100vw;
    margin: 40px calc(50% - 50vw) 0;
  }

  .top_company_section .company_img{
    position: static;
    top:0;
    width:91.2%;
    max-width: 500px;
  }

  .top_news_section{
    padding-top: 140px;
    padding-bottom: 60px;
  }

  .top_news_section .news_flex{
    display: flex;
    flex-direction: column;
    align-items:center;
    margin-top: 54px;
  }

  .top_news_section .news_left{
    flex-shrink: 0;
    width:100%;
  }

  .top_news_section .sidebar_select_frame{
    position: relative;
    text-align: center;
    font-weight: normal;
    line-height: 1.3;
    color: #0f31a7;
    width:130px;
    margin:0 auto;
  }
  
  .top_news_section .sidebar_select_frame::after{
    content:'';
    width:11px;
    height:8px;
    background-image: url('../img/common/angle_bottom_blue.svg');
    position: absolute;
    right:0;
    top:6px;
  }
  
  .top_news_section .sidebar_select_open{
    display: flex;
    justify-content: center;
    padding-bottom: 3px;
    border-bottom:1px solid #B3D9EF;
    cursor: pointer;
  }


  .top_news_section .sidebar_select_body{
    position: absolute;
    width:100%;
    top:calc(100% + 1px);
    left:0;
    padding:15px 4px;
    background-color: #fff;
    max-height: 225px;
    overflow-y: scroll;
    transition-duration: 0.4s;
    z-index: 3;
    opacity: 0;
    pointer-events: none;
  }
  
  .top_news_section .sidebar_select_body.show{
    opacity: 1;
    pointer-events: auto;
  }
  
  .top_news_section .sidebar_select_body li{
    text-align: center;
  }

  .top_news_section .sidebar_select_body li + li{
    margin-top:24px;
    
  }
  
  .top_news_section .sidebar_select_body li a{
    font-weight: normal;
    font-size: 15px;
    line-height: 1.3;
    color: #0f31a7;
    
  }


  .top_news_section .news_link_line{
    margin-top:72px;
    padding-bottom: 5px;
    width: 42%;
    display: flex;
    justify-content: flex-end;
  }

  .top_news_section .news_link_line::after{
    width:100vw;
  }

  .top_news_section .news_link{
    font-size: 18px;

  }

  .top_news_section .news_right{
    width: 100%;
    margin-top: 32px;
  }

  /*
  ------------------------------------
  下層共通
  ------------------------------------
  */

  main.page_main{
    padding-top: 60px;
  }



  /*
  ------------------------------------
  パンクズ
  ------------------------------------
  */

  .common_bread_section{
    padding:10px 0 0;
  }

  .common_bread_section .bread_list{
    gap:10px 5px;
  }

  /*
  ------------------------------------
  下層mv
  ------------------------------------
  */

  .page_mv_section{
    padding-top: 50px;
    padding-bottom: 120px;
  }

  .page_mv_section .common_page_title .page_title{
    font-size: 36px;
  }

  .page_mv_section .common_page_title .page_title::before{
    width: 9px;
    margin-right: 16px;
  }

  .page_mv_section .common_page_title .back_title{
    font-size: 90px;
    top: -24px;
    left: 48px;
  }

  /*
  ------------------------------------
  事業概要
  ------------------------------------
  */

  body.business_body{
    
  }

  main.business_main{

  }

  .business_section{

  }


  .business_section01{
    position: relative;

  }

  .business_section01::before{
    width: 1450px;
    height: 1114px;
    top: -340px;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    z-index: -3;
  }

  .business_section01 .sec_title{
    font-size: 28px;
    list-style: 1.5;
  }

  .business_section01 .p01{
    font-size: 16px;
    line-height: 1.8;
    margin-top: 40px;
  }

  .business_section01 .p01 + .p01{
    margin-top: 28px;
  }

  .business_strength_section{
    padding-top: 150px;
  }

  .business_strength_section .sec_title{
    margin-bottom: 40px;
    font-weight: bold;
    font-size: 30px;
    text-align: center;
    color: #0f31a7;
    line-height: 1.3;
  }

  .business_strength_section .strength_area{
    height:557px;
    padding-top: 150px;
    position: relative;
  }

  .business_strength_section .strength_area::before{
    height:100%;
  }

  .business_strength_section .strength_area01::before{
    background-image: url('../img/business/strength_bg01.jpg');
  }
  .business_strength_section .strength_area02::before{
    background-image: url('../img/business/strength_bg02.jpg');
  }


  .business_strength_section .strength_block{
    width:420px;
    margin:0 auto;
  }

  .business_strength_section .strength_block .strength_num{
    font-size: 200px;
    top: -82px;
    left: -100px;
  }

  .business_strength_section .strength_block .strenth_head{
    font-size: 28px;
    line-height: 1.5;
    z-index: 1;
  }

  .business_strength_section .strength_block .strenth_text{
    font-size: 15px;
    line-height: 2;
    margin-top: 30px;
  }

  .business_strength_section .strength_block .strenth_link_line{
    width:302px;
    margin:24px auto 0;
    padding-bottom: 5px;
  }

  .business_strength_section .strength_block .more_link{
    font-size: 18px;
  }

  .business_strength_section .strength_block .more_link::before,
  .business_strength_section .strength_block .more_link::after{
    background-image: url('../img/common/angle_right_white.svg');
  }

  .business_alert_section{
    padding:100px 0;
  }

  .business_alert_section .alert_box{
    border:2px solid #012DAB;
    padding:30px 32px;

  }

  .business_alert_section .alert_head{
    font-size: 21px;
  }

  .business_alert_section .alert_text{
    margin-top: 24px;
    line-height: 1.5;
    text-align: left;
  }

  /*
  ------------------------------------
  事業概要
  ------------------------------------
  */

  body.support_body{
    
  }

  main.support_main{

  }

  .support_section{

  }


  .support_section01{
    position: relative;

  }

  .support_section01 .support_msg{
    font-size: 20px;
    line-height: 1.75;
  }

  .support_section01 .support_list{
    max-width: 1080px;
    margin:80px auto 0;
  }

  .support_section01 .support_block{
    display: flex;
    flex-direction: column;
    align-items:center;
  }

  .support_section01 .support_block + .support_block{
    margin-top: 40px;
  }

  .support_section01 .support_block .support_img{
    width:460px;
    max-width: 100%;
    flex-shrink: 0;
    margin-right: 0;
  }

  .support_section01 .support_block .support_img img{
    width: 100%;
  }

  .support_section01 .support_block .support_text_area{
    width: 100%;
    padding-top: 32px;
  }

  .support_section01 .support_block .support_head{
    font-size: 24px;
    line-height: 1.3;
    padding-bottom: 4px;
  }

  .support_section01 .support_block .support_text{
    margin-top: 14px;
    font-size: 15px;
    line-height: 2.2;
  }

  .support_flow_section{
    padding-top: 146px;
    padding-bottom: 100px;
  }

  .support_flow_section .sec_title{
    font-size: 26px;
    line-height: 1.5;
  }

  .support_flow_section .alert_text{
    font-size: 12px;
    line-height: 1.5;
  }

  .support_flow_section .flow_list{
    display: flex;
    flex-wrap: wrap;
    flex-direction: column;
    align-items: center;
    gap:32px 0;
    margin-top: 30px;
  }

  .support_flow_section .flow_block{
    width:355px;
    display: flex;
    justify-content: center;
    align-items: center;
    min-height: 240px;
    padding:24px 22px;
  }

  .support_flow_section .flow_block::after{
    width:0;
    height:0;
    border-style:solid;
    border-width: 12px 18px 0 18px;
    border-color: #0F31A7 transparent transparent transparent;
    right:0;
    left:0;
    top:auto;
    bottom:-22px;
    margin:auto;
  }

  .support_flow_section .flow_block:last-child::after{
    content:none;
  }

  .support_flow_section .flow_block::before{
    content:none!important;
  }


  .support_flow_section .flow_block .flow_num{
    width: 53px;
    height: 50px;
    font-size: 22px;
    line-height: 1;
  }

  .support_flow_section .flow_block .flow_title{
    font-size: 22px;
    line-height: 1.2;
  }

  .support_flow_section .flow_block .flow_icon{
    height:106px;
  }

  .support_flow_section .flow_block .flow_text{
    font-size: 14px;
    line-height: 1.8;
  }

  .support_flow_section .flow_remark{
    margin-top: 80px;
    font-size: 18px;
    line-height: 1.5;
  }

  .support_flow_section .office_button{
    margin-top: 40px;
  }

  /*
  ------------------------------------
  会社情報 共通
  ------------------------------------
  */
  .common_company_link_section{
    padding-top: 100px;
    padding-bottom: 0;
  }

  .common_company_link_section .link_list{
    max-width: 100%;
    margin:0 auto;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    gap:0;
  }

  .common_company_link_section .link_card{
    width: 50%;
    height:auto;
    aspect-ratio: 1/0.53;
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    padding-right: 0;
    box-shadow: none;
  }


  .common_company_link_section .link_card .en_title{
    display: none;
  }


  .common_company_link_section .link_card .ja_title{
    min-width: 120px;
    position: relative;
    font-weight: bold;
    font-size: 28px;
    line-height: 1;
    color: #fff;
    text-align: center;
  }

  .common_company_link_section .link_card .ja_title::before,
  .common_company_link_section .link_card .ja_title::after{
    content:'';
    width:8px;
    height:11px;
    background-image: url('../img/common/angle_right_white.svg');
    transition-duration: 0.3s;
    position: absolute;
    left:0;
    right:0;
    margin:auto;
    bottom:-28px;
  }

  .common_company_link_section .link_card .ja_title::before{
    opacity: 0;
    transform: translateX(-10px);
  }

  .common_company_link_section .company_card{
    background-image: url('../img/company/card_company_sp.jpg');
  }
  .common_company_link_section .vision_card{
    background-image: url('../img/company/card_vision_sp.jpg');
  }
  .common_company_link_section .profile_card{
    background-image: url('../img/company/card_profile_sp.jpg');
  }
  .common_company_link_section .office_card{
    background-image: url('../img/company/card_office_sp.jpg');
  }
  .common_company_link_section .history_card{
    background-image: url('../img/company/card_history_sp.jpg');
  }

  /*
  ------------------------------------
  会社情報
  ------------------------------------
  */

  body.company_body{
    
  }

  main.company_main{

  }

  .company_section{

  }

  .company_greeting_section{
    position: relative;

  }

  .company_greeting_section .sec_title{
    font-weight: bold;
    font-size: 30px;
    text-align: center;
    line-height: 1.5;
    color: #0f31a7;
  }

  .company_greeting_section .flex{
    display: flex;
    align-items: flex-start;
    margin-top: 56px;
  }

  .company_greeting_section .flex .left{
    display: none;
  }

  .company_greeting_section .president_pic{
    width:100%;
    max-width: 500px;
    margin:24px auto 0;
  }

  .company_greeting_section .flex .right{
    width:100%;
    flex-shrink: 0;
    margin-left: 0;
  }

  .company_greeting_section .president_head{
    font-size: 38px;
    line-height: 1.55;
  }

  .company_greeting_section .president_text{
    margin-top: 24px;
    font-size: 15px;
    line-height: 2.2;
  }

  .company_greeting_section .president_sign{
    margin-top: 5px;
    font-size: 15px;
  }

  .company_greeting_section .president_sign span{
    font-size: 25px;
    margin-left: 15px;
  }


  /*
  ------------------------------------
  経営理念
  ------------------------------------
  */

  body.message_body{
    
  }

  main.message_main{

  }

  .message_section{

  }

  .message_vision_section{

  }

  .message_vision_section .vision_frame{
    padding:0;
  }

  .message_vision_section .vision_title{
    font-size: 30px;
    text-align: center;
  }

  .message_vision_section .vision_catch{
    margin-top: 50px;
    font-size: 32px;
    line-height: 1.5;
    text-align: center;
  }

  .message_vision_section .p01{
    margin-top: 24px;
    line-height: 1.7;
    text-align: center;
  }

  .message_vision_section .vision_card_list{
    display: flex;
    flex-direction: column;
    align-items: center;
    gap:20px 0;
    margin-top: 40px;
  }

  .message_vision_section .vision_card{
    width:100%;
    max-width: 500px;
    padding:32px 16px;
  }

  .message_vision_section .vision_card .vision_card_head{
    font-size: 22px;
    line-height: 1.5;
  }

  .message_vision_section .vision_card .vision_card_head::after{
    width:200px;
    margin-top: 16px;
  }

  .message_vision_section .vision_card .vision_card_text{
    font-size: 15px;
    line-height: 2.2;
    margin-top: 40px;
  }

  /*
  ------------------------------------
  会社概要
  ------------------------------------
  */

  body.profile_body{
    
  }

  main.profile_main{

  }

  .profile_section{

  }

  .profile_section .profile_frame{
    padding:0;
    margin:0 auto;
  }

  .profile_section .profile_title{
    font-size: 30px;
    text-align: center;
  }

  .profile_section .table_frame{
    margin-top: 40px;
  }


  .profile_section th,
  .profile_section td{
    /* border:1px solid #80C1E4; */
  }

  .profile_section th{
    width:26%;
    font-size: 15px;
    padding:20px 12px;
  }

  .profile_section td{
    width: 74%;
    padding:20px 12px;
    font-size: 15px;
    line-height: 1.5;
    
  }

  .profile_section td ul li{
    display: flex;
    align-items: flex-start;
  }

  .profile_section td ul li::before{
    font-size: 15px;
    line-height: 1.5;
  }

  .profile_section .access_area{
    padding-top: 86px;
  }

  .profile_section .access_area .access_head{
    font-size: 30px;
    line-height: 1.5;
    text-align: center;
  }

  .profile_section .access_area .access_flex{
    margin-top: 40px;
    display: flex;
    align-items: center;
    flex-direction: column;
  }

  .profile_section .access_area .access_left{
    flex-shrink: 0;
    width:420px;
    max-width: 100%;
    margin-right: 0;
  }

  .profile_section .access_area .access_left iframe{
    height:300px;
  }


  .profile_section .access_area .access_right{
    width: 100%;
    max-width: 420px;
    margin-top: 24px;
  }


  .profile_section .access_area .access_address{
    line-height: 1.9;
  }

  .profile_section .access_area .access_box{
    margin-top: 16px;
    padding:16px 20px;
  }

  .profile_section .access_area .access_box_head{
    line-height: 1.5;
  }

  .profile_section .access_area .access_box_text{
    margin-top: 20px;
    line-height: 1.75;
  }

  /*
  ------------------------------------
  沿革
  ------------------------------------
  */

  body.history_body{
    
  }

  main.history_main{

  }


  .history_section{
    padding-bottom: 20px;
  }

  .history_section .history_frame{

  }

  .history_section .history_title{
    font-size: 30px;
    text-align: center;
  }

  .history_section .history_list{
    margin-top: 64px;
  }

  .history_section .history_list::before{
    top: 20px;
    left: 106px;
  }


  .history_section .history_line + .history_line{
    margin-top: 41px;
  }

  .history_section .history_line:last-child{
    height:0;
  }

  .history_section .history_year{
    flex-shrink: 0;
    min-width:100px;
    font-weight: bold;
    font-size: 34px;
    color: #80c1e4;
    line-height: 1;
    padding-right: 4px;
  }

  .history_section .history_year span{
    font-size: 18px;
    margin-top: 2px;
    margin-bottom: 4px;
  }

  .history_section .history_year p{
    display: flex;
    align-items: flex-end;
    flex-direction: column;
    width:fit-content;
    
  }

  .history_section .history_radi{
    padding-top:11px;
  }

  .history_section .history_radi span{
    width:13px;
    height:13px;
  }

  .history_section .history_right{
    padding-top: 1px;
    padding-left: 24px;
  }

  .history_section .history_block{
    display: flex;
    align-items: flex-start;
    flex-direction: column;
  }

  .history_section .history_block + .history_block{
    margin-top: 12px;
  }

  .history_section .history_month{
    width:80px;
    text-align: left;
    margin-right: 0;
    font-size: 16px;
    line-height: 1.8;
  }

  .history_section .history_contents{
    font-size: 16px;
    line-height: 1.8;
  } 

  .history_section .history_contents ul li{
    display: flex;
    align-items: flex-start;
  }

  .history_section .history_contents ul li::before{
    content: "\2217";
    margin-bottom: 3px;
    font-weight: bold;
    font-size: 16px;
    line-height: 1.8;
    flex-shrink: 0;
    margin-right: 4px;
  }

  /*
  ------------------------------------
  営業所一覧
  ------------------------------------
  */

  body.office_body{
    
  }

  main.office_main{

  }

  .office_section{
    padding-bottom: 20px;
  }

  .office_section .office_frame{
    max-width: 1050px;
    padding:0;
    margin:0 auto;
  }

  .office_section .office_title{

    font-size: 30px;
    line-height: 1;
    text-align: center;
  }

  .office_section .map_image{
    max-width: 855px;
    margin:40px auto 0;
  }

  .office_section .office_list{
    margin-top: 100px;
    border-left:1px solid #80C1E4;
    border-right:1px solid #80C1E4;
  }

  .office_section .office_list li{
    display: flex;
    align-items: center;
    flex-direction: column;
    padding:0;
    border-bottom:1px solid #80C1E4;
    padding-bottom: 10px;
    text-align: center;
  }
  .office_section .office_list li:first-child{
    border-top:1px solid #80C1E4;
  }

  .office_section .office_list .office_name_frame{
    width: 100%;
    padding:10px 10px;
    flex-shrink: 0;
    background-color: #DBF2FF;
    border-bottom:1px solid #80C1E4;
    margin-bottom: 10px;
  }

  .office_section .office_list .office_name{
    font-size: 17px;
    line-height: 1.3;
  }

  .office_section .office_list .office_google_map{
    margin:0 auto;
    font-size: 14px;
  }

  .office_section .office_list .office_address_frame{
    margin-left: 0;
    flex-shrink: 0;
    width:fit-content;
    padding:0 15px;
  }

  .office_section .office_list .office_address{
    font-size: 14px;
    line-height: 1.78;
  }

  .office_section .office_list .office_contact_frame{
    margin-left: 0;
    flex-shrink: 0;
    width:fit-content;
    padding:0 15px;
  }

  .office_section .office_list .office_contact{
    font-size: 14px;
    line-height: 1.78;
  }

  .office_section .office_list .office_area_frame{
    margin-left: 0;
    padding:0 15px;
  }

  .office_section .office_list .office_area{
    font-size: 14px;
    line-height: 1.78;
    display: block;
    align-items: flex-start;
  }

  .office_section .office_list .office_area .office_area_label{
    flex-shrink: 0;
    display: inline-block;
    white-space: nowrap;
  }

  .office_section .office_list .office_area .office_area_contents{
    display: inline-block;
  }
  /*
  ------------------------------------
  採用情報
  ------------------------------------
  */

  body.recruit_body{
    
  }

  main.recruit_main{

  }

  .recruit_section01{
    padding-bottom: 100px;
  }


  .recruit_section01 .recruit_catch{
    font-size: 36px;
    padding:0 15px;
  }


  .recruit_section01 .flex{
    display: flex;
    flex-direction: column-reverse;
    align-items: center;
    margin-top: 24px;
    padding:0 15px;
  }

  .recruit_section01 .flex .left{
    width:100%;
    flex-shrink: 0;
    margin-right: 0;
    padding-left: 0;
    padding-top: 40px;
  }

  .recruit_section01 .flex .left::before{
    content:none;
  }

  .recruit_section01 .flex .left p{
    font-size: 18px;
    line-height: 1.67;
  }

  .recruit_section01 .flex .left p + p{
    margin-top: 32px;
  }

  .recruit_section01 .flex .right{
    width:100%;
    position: relative;
    z-index: 1;
  }

  .recruit_section01 .flex .right img{
    width:100%;
  }

  .recruit_section01 .recruit_gal_list{
    width: 100vw;
    margin: 48px calc(50% - 50vw) 0;
    display: flex;
    justify-content: center;
  }

  .recruit_section01 .recruit_gal_list li{
    width:33.3%;
  }

  .recruit_section01 .recruit_gal_list li img{
    width:100%;
  }

  .recruit_section01 .recruit_message{
    margin-top: 80px;
    font-weight: bold;
    font-size: 26px;
    line-height: 1.6;
  }

  .recruit_section01 .recruit_border{
    height:80px;
    margin:20px auto 24px;
  }

  .recruit_section01 .recruit_button{
    width:400px;
    height:65px;
    font-size: 20px;
    border-radius: 40px;
  }

  /*
  ------------------------------------
  お知らせ一覧
  ------------------------------------
  */

  body.archive_news_body{
    
  }


  main.archive_news_main{

  }

  .archive_news_section01{
    padding-bottom: 100px;
  }

  .archive_news_section01 .flex{
    display: flex;
    align-items: center;
    flex-direction: column;
  }



  .archive_news_section01 .flex .sidebar{
    flex-shrink: 0;
    padding-left: 0;
    display: flex;
    justify-content: center;
    gap:0 30px;
    margin-right: 0;
  }
  
  .archive_news_section01 .flex .archive_news_article{
    width: 100%;
    max-width: 850px;
    margin-top: 32px;
  }
  
  
  .archive_news_section01 .sidebar .sidebar_select_frame{
    position: relative;
    text-align: center;
    font-weight: normal;
    line-height: 1.3;
    color: #0f31a7;
    width:130px;
    
  }
  
  .archive_news_section01 .sidebar .sidebar_select_frame::after{
    content:'';
    width:11px;
    height:8px;
    background-image: url('../img/common/angle_bottom_blue.svg');
    position: absolute;
    right:0;
    top:6px;
  }
  
  .archive_news_section01 .sidebar .sidebar_select_open{
    display: flex;
    justify-content: center;
    padding-bottom: 3px;
    border-bottom:1px solid #B3D9EF;
    cursor: pointer;
  }


  .archive_news_section01 .sidebar .sidebar_select_body{
    position: absolute;
    width:100%;
    top:calc(100% + 1px);
    left:0;
    padding:15px 4px;
    background-color: #fff;
    max-height: 225px;
    overflow-y: scroll;
    transition-duration: 0.4s;
    z-index: 3;
    opacity: 0;
    pointer-events: none;
  }
  
  .archive_news_section01 .sidebar .sidebar_select_body.show{
    opacity: 1;
    pointer-events: auto;
  }
  
  .archive_news_section01 .sidebar .sidebar_select_body li{
    text-align: center;
  }

  .archive_news_section01 .sidebar .sidebar_select_body li + li{
    margin-top:24px;
    
  }
  
  .archive_news_section01 .sidebar .sidebar_select_body li a{
    font-weight: normal;
    font-size: 15px;
    line-height: 1.3;
    color: #0f31a7;
    
  }


  .archive_news_section01 .sidebar .sidebar_year_area{
    margin-top: 0;
  }

  /*
  ------------------------------------
  お知らせ詳細
  ------------------------------------
  */

  body.single_news_body{
    
  }


  main.single_news_main{

  }

  .single_news_section01{
    padding-bottom: 100px;
  }


  .single_news_section01 .single_news_article{
    margin:0 auto;
  }


  .single_news_section01 .news_info_flex .news_date{
    margin-right: 20px;
    font-size: 14px;
  }

  .single_news_section01 .news_info_flex .news_cat{
    padding:5px 8px;
    font-size: 13px;
    line-height: 1.3;
  }

  .single_news_section01 .news_title{
    margin-top: 12px;
    font-size: 28px;
    line-height: 1.5;
  }

  .single_news_section01 .news_thumb{
    margin-top: 60px;
  }


  .single_news_section01 .archive_news_link{
    margin-top: 80px;
  }

  .single_news_section01 .common_single_frame{
    margin-top: 60px;
  }


  .common_single_frame .wp-block-image{
    margin-top: 32px;
  }

  .common_single_frame h2{
    margin-top: 60px;
    font-size: 24px;
    line-height: 1.6;
    padding-left: 28px;
  }

  .common_single_frame h2::before{
    width: 10px;
    border-radius: 4px 0 0 4px;
  }


  .common_single_frame h3{
    margin-top: 60px;
    font-size: 22px;
    line-height: 1.6;
    padding:16px 24px;
  }

  .common_single_frame h4{
    margin-top: 60px;
    font-size: 21px;
    line-height: 1.8;
    padding:16px 24px;
  }


  .common_single_frame h5{
    margin-top: 60px;
    font-size: 21px;
    line-height: 1.8;
  }

  .common_single_frame h6{
    margin-top: 60px;
    font-size: 18px;
    line-height: 1.8;
  }

  .common_single_frame p{
    margin-top: 30px;
    font-size: 15px;
    line-height: 2.2;
  }


  .common_single_frame ul{
    margin-top: 40px;
    padding-left: 10px;
  }

  .common_single_frame ul li{
    font-size: 15px;
    line-height: 1.5;
    padding-left: 12px;

  }

  .common_single_frame ul li::before{
    width:3px;
    height:3px;
    left:0;
    top:9px;
  }

  .common_single_frame ul li + li{
    margin-top: 12px;
  }

  .common_single_frame ol{
    margin-top: 40px;
    padding-left: 10px;
  }

  .common_single_frame ol li{
    font-size: 15px;
    line-height: 1.5;
    padding-left: 12px;
  }

  .common_single_frame ol li::before {
    content: counter(cnt)".";
    left:-8px;
    top:0;
  }

  .common_single_frame ol li + li{
    margin-top: 8px;
  }

  .common_single_frame .wp-block-table{
    margin-top: 60px;
    overflow-x: scroll;
  }

  .common_single_frame table{
    border-collapse: collapse;
    max-width: none;
    width: 720px;
    margin:0;
  }

  .common_single_frame .wp-block-table thead {
    border-bottom: none;
  }

  .common_single_frame table tr{
    
  }

  .common_single_frame table th{
    padding:12px;
    font-size: 15px;
    line-height: 1.3;
  }

  .common_single_frame table td{
    padding:12px;
    font-size: 14px;
    line-height: 1.5;
  }


  /*
  ------------------------------------
  お問い合わせ
  ------------------------------------
  */

  body.contact_body{
    
  }

  main.contact_main{

  }

  .contact_section01{
    padding-bottom: 100px;
  }


  .contact_section01 .p01{

    font-size: 20px;

  }

  .contact_section01 .p02{
    line-height: 1.5;
    margin-top: 20px;
  }


  .contact_section01 .other_contact_area{
    margin:64px auto 0;
    padding:50px 56px;
  }

  .contact_section01 .other_contact_area .other_contact_text01{
    font-size: 20px;
  }

  .contact_section01 .other_contact_area .flex{
    display: flex;
    justify-content: space-between;
    flex-direction: column;
    align-items: center;
    gap:24px 0;
    margin-top: 50px;
  }

  .contact_section01 .other_contact_area .box{
    width: 360px;
    padding:36px 24px 24px;
  }


  .contact_section01 .other_contact_area .front_text{
    font-size: 18px;
    line-height: 1.5;

  }

  .contact_section01 .other_contact_area .back_text{
    font-size: 60px;
    top: -20px;
  }

  .contact_section01 .other_contact_area .number{
    margin-top: 20px;
    font-size: 32px;
  }

  .contact_section01 .other_contact_area .time{
    margin-top: 6px;
    font-size: 14px;
    line-height: 1.6;
  }

  .contact_section01 .other_contact_area .remark{
    font-size: 12px;
    line-height: 2;
  }

  .common_form_block{
    margin:50px auto 0;
  }

  .common_form_block .form_white_bg{
    padding:50px 24px 0;
    margin-bottom: 50px;
  }

  .common_form_block .form_block_inner{
    max-width: 860px;
    margin:0 auto;
  }

  .common_form_block .form_line + .form_line{
    margin-top: 30px;
  }

  .common_form_block .form_line .form_label{
    font-size: 18px;
  }

  .common_form_block .form_line .form_label.must::after{
    font-size: 13px;
  }

  .common_form_block .form_line .form_input_frame{
    margin-top: 12px;
  }


  .common_form_block .form_line .form_input_frame input[type="text"],
  .common_form_block .form_line .form_input_frame input[type="email"],
  .common_form_block .form_line .form_input_frame input[type="number"],
  .common_form_block .form_line .form_input_frame input[type="tel"],
  .common_form_block .form_line .form_input_frame select{
    height:65px;
    padding:0 20px;
  } 

  .common_form_block .form_line textarea{
    height:300px;
    padding: 20px;
  }

  .common_form_block .form_line select{
    padding-right: 40px;
  }


  .common_form_block .form_line .select_frame::after{
    border-width: 7px 5px 0 5px;
    right:15px;
  }


  .common_form_block .agree_text01 {
    line-height: 1.5;
}

  .common_form_block .agree_flex{
    margin-top: 16px;
  }

  .common_form_block .agree_flex input{
    width:18px;
    height:18px;
  }
  .common_form_block .agree_flex .agree_label{
    font-size: 16px;
    line-height: 1;
    margin-left: 10px;
  }

  .common_form_block .submit_area{
    margin-top: 32px;
  }

  .common_form_block .submit_area .return,
  .common_form_block .submit_area .submit{
    width:250px;
    height:52px;
    border-radius: 26px;
    font-size: 17px;
  }


  /*確認画面*/



  .common_form_block.form_confirm_block .form_line .form_input_frame{
    padding-left: 20px;
  }

  .common_form_block.form_confirm_block .form_white_bg{
    padding-bottom: 64px;
  }


  /*完了画面*/


  .contact_section01 .contact_thanks_text{
    font-size: 20px;
  }

  .contact_section01 .top_link{
    width: 250px;
    height: 52px;
    border-radius: 26px;
    font-size: 17px;
    margin:60px auto 0;
  }


  /*
  ------------------------------------
  カタログダウンロード
  ------------------------------------
  */

  body.download_body{
    
  }


  main.download_main{

  }

  .download_section01{
    padding-bottom: 100px;
  }


  .download_section01 .p01{
    font-size: 20px;
    line-height: 1.75;
  }

  .download_section01 .finish_text01{
    font-size: 20px;
    line-height: 1.75;
  }

  .download_section01 .download_list{
    gap:40px;
    margin-top: 70px;
  }


  .download_section01 .top_link{
    margin:70px auto 0;
  }

  .download_form_block .border_label{
    font-size: 18px;
    padding-bottom: 12px;
  }

  .download_form_block .check_list{
    gap:20px 0;
    margin-top: 20px;
    margin-bottom: 40px;
  }

  .download_form_block .check_list .mwform-checkbox-field{
    width: 50%;
    min-width: 240px;
    margin:0!important;
  }

  .download_form_block .check_list .mwform-checkbox-field label{
    display: flex;
    align-items: center;
  }

  .download_form_block .check_list .mwform-checkbox-field input{
    width:17px;
    height:17px;
    margin-right: 10px;
  }


  /*
  ------------------------------------
  プライバシーポリシー
  ------------------------------------
  */

  body.privacy_body{
    
  }

  main.privacy_main{

  }

  .privacy_section01{
    padding-bottom: 100px;
  }

  main.privacy_main .page_mv_section .common_page_title .back_title {
    line-height: 0.8;
  }

  .privacy_section01 .privacy_frame{
    padding:0 15px;
  }

  .privacy_section01 .privacy_catch{
    font-size: 18px;
    line-height: 1.9;
    text-align: left;
  }

  .privacy_section01 .privacy_contents{
    margin-top: 60px;
  }

  .privacy_section01 .privacy_head{
    font-size: 15px;
    line-height: 1.2;
    padding-bottom: 10px;
  }

  .privacy_section01 .privacy_text{
    margin-top: 10px;
    font-size: 15px;
    line-height: 1.5;
  }

  .privacy_section01 * + .privacy_head{
    margin-top: 40px;
  }

  /*
  ------------------------------------
  利用規約
  ------------------------------------
  */

  body.terms_body{
    
  }

  main.terms_main{

  }

  main.terms_main .page_mv_section .common_page_title .back_title {
    line-height: 0.8;
  }

  .terms_section01{
    padding-bottom: 100px;
  }

  .terms_section01 .terms_frame{
    margin:0 auto;
    padding:0 15px;
  }


  .terms_section01 .terms_catch{
    font-size: 18px;
    line-height: 1.9;
    text-align: left;
  }

  .terms_section01 .terms_contents{
    margin-top: 60px;
  }

  .terms_section01 .terms_head{
    font-size: 15px;
    line-height: 1.2;
    padding-bottom: 10px;
  }

  .terms_section01 .terms_text{
    margin-top: 10px;
    font-size: 15px;
    line-height: 1.5;
  }

  .terms_section01 * + .terms_head{
    margin-top: 40px;
  }

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

  body.sitemap_body{
    
  }


  main.sitemap_main{

  }

  .sitemap_section01{
    padding-bottom: 100px;
  }

  .sitemap_section01 .sitemap_frame{
    padding:0 15px;
  }

  .sitemap_section01 .parent_item{
    padding-bottom: 10px;
  }

  .sitemap_section01 * + .parent_item{
    margin-top: 50px;
  }

  .sitemap_section01 .parent_link{
    font-size: 20px;
    line-height: 1.5;
    padding-left: 24px;
  }

  .sitemap_section01 .parent_link::before,
  .sitemap_section01 .parent_link::after{
    width:11px;
    height:18px;
  }

  .sitemap_section01 .parent_link::before{
    opacity: 0;
    left:-15px;
  }

  .sitemap_section01 .child_menu{
    display: flex;
    flex-wrap: wrap;
    padding-left: 20px;
  }

  .sitemap_section01 .child_item{
    width:50%;
    min-width: 240px;
    margin-top: 24px;
    padding-right: 12px;
  }

  .sitemap_section01 .child_link{
    font-size: 17px;
    line-height: 1.2;
    transition-duration: 0.4s;
  }



  /*
  ------------------------------------
  404
  ------------------------------------
  */

  body.page404_body{
    
  }


  main.page404_main{

  }

  .page404_section01{
    padding-top: 100px;
    padding-bottom: 100px;
  }


  .page404_section01 .p01{
    font-size: 110px;
  }

  .page404_section01 .p02{
    font-size: 50px;
    line-height: 1.3;
    margin-top: 16px;
  }

  .page404_section01 .p03{
    margin-top: 40px;
    font-size: 32px;
    line-height: 1.5;
  }

  .page404_section01 .p04{
    margin-top: 20px;
    line-height: 1.5;
    font-size: 15px;
  }

  .page404_section01 .top_link{
    margin:44px auto 0;
  }


  /*
  ------------------------------------
  製品情報　共通
  ------------------------------------
  */

  .products_section + .products_section{
    padding-top: 100px;
  }


  .products_section .sec_title{
    font-size: 30px;
    line-height: 1.5;
  }


  .products_section .products_download_box{
    margin:100px auto 0;
    border: 2px solid #012dab;
    padding:24px 16px;
  }

  .products_section .products_download_box .products_download_box_head{
    font-size: 21px;
    line-height: 1.5;
  }

  .products_section .products_download_box .products_download_box_text{
    margin-top: 16px;
    font-size: 18px;
    line-height: 1.5;
  }

  .products_section .no_result{
    margin-top: 24px;
  }

  .products_section .left_border_title{
    font-size: 24px;
    line-height: 1.6;
    padding-left: 28px;
    margin-top: 48px;
  }

  .products_section .left_border_title::before{
    width: 10px;
    border-radius: 4px 0 0 4px;
  }


  .products_section .parent_frame{
    margin-top: 32px;
  }

  .products_section .parent_frame + .parent_frame{
    margin-top: 80px;
  }

  .products_section .parent_name{
    min-width: 350px;
    padding:10px 20px;
    font-size: 30px;
    line-height: 1.5;
  }

  .products_section .grand_child_frame{
    margin-top: 20px;
  }

  .products_section .grand_child_frame + .grand_child_frame{
    margin-top: 40px;
  }

  .products_section .products_result_frame{
    max-width: 1066px;
    margin:0 auto;
  }

  .products_section .result_count{
    margin-top: 16px;
    margin-bottom: 48px;
    font-size: 25px;
  }

  /*製品の検索結果一覧*/
  .common_products_list{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    gap:40px 0;
  }

  .common_products_list .products_item{
    width:48.5%;
  }

  @media screen and (max-width:700px){
    .common_products_list{
      flex-direction: column;
      align-items: center;
      gap:40px 0;
    }

    .common_products_list .products_item{
      width:100%;
      max-width: 400px;
    }
  }

  .common_products_list .products_thumb{
    aspect-ratio: 1/0.72;
  }

  .common_products_list .products_name{
    margin-top: 10px;
    font-size: 22px;
  }

  .common_products_list .products_info_list li{
    margin-top: 10px;
  }

  .common_products_list .products_info_list .info_label{
    font-size: 15px;
    line-height: 1.3;
  }

  .common_products_list .products_info_list .info_label::after{
    font-size: 15px;
    line-height: 1.3;
    margin:0 3px;
  }

  .common_products_list .products_info_list .info_label span{
    display: inline-block;
    min-width:90px;
    text-align:justify;
    text-align-last:justify;
  }

  .common_products_list .products_info_list .info_text{
    font-size: 15px;
    line-height: 1.3;
  }

  .common_products_list .products_button{
    margin-top: 15px;
    width: 185px;
    border-radius: 4px;
    padding:4px 8px;
    font-size: 16px;
  }

  .common_products_list .products_button::before{
    width:8px;
    height:11px;
    margin-right: 10px;
  }


  /*製品検索の入力エリア*/
  .common_products_search_frame{
    max-width: 1066px;
    margin: 0 auto;
  }

  .common_products_search_frame .products_search_head{
    padding: 16px 30px;
    font-size: 22px;
    line-height: 1.5;
  }

  .common_products_search_frame .products_search_head::after{
    width:15px;
    height:15px;
  }

  .common_products_search_frame .products_search_head.active::after{
    background-image: url('../img/common/icon_minus_white.svg');
    height:2px;
    border-radius: 1px;
  }

  .common_products_search_frame .products_search_body{
    padding:40px 24px;
  }

  .common_products_search_area{
    max-width: 1000px;
    margin:0 auto;
  }

  .common_products_search_frame .products_search_area01{
    margin-top: 20px;
  }

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

  .common_products_search_frame .keyword_flex .keyword{
    width:250px;
    height:43px;
    padding:0 12px;
    font-size: 18px;
  }

  .common_products_search_frame .keyword_flex .keyword_button{
    width:43px;
    height:43px;
  }

  .common_products_search_frame .keyword_flex .keyword_button img{
    width:26px;
  }

  .common_products_search_frame .products_search_area02{
    margin-top: 30px;
  }

  .common_products_search_frame .search_line + .search_line{
    margin-top: 20px;
  }

  .common_products_search_frame .search_label{
    font-size: 18px;
    gap:6px 10px;
  }

  .common_products_search_frame .search_label span{
    font-size: 15px;
  }

  .common_products_search_frame .search_check_list{
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
  }

  .common_products_search_frame .search_check_list li{
    margin-top: 15px;
    width:50%;
    padding-right: 12px;
    /* min-width: 305px; */
  }

  .common_products_search_frame .search_check_list label{
    font-size: 15px;
    list-style: 1.3;
  }

  .common_products_search_frame .search_check_list .check_box_frame{
    width: 17px;
    height: 17px;
    margin-right: 10px;
    margin-top: 2px;
  }

  .common_products_search_frame .search_check_list input[type="checkbox"]:checked + .check_box_frame::after{
    width:13px;
    height:13px;
  }

  .common_products_search_frame .nozzle_remark{
    margin-top: 16px;
    font-size: 13px;
  }

  .common_products_search_frame .search_select_button{
    width: 300px;
    min-height: 52px;
    border-radius: 26px;
    border:2px solid #012dab;
    padding:4px 8px;
    margin:36px auto 0;
    font-size: 18px;
    line-height: 1.3;
  }

  .products_section02{
    padding-bottom: 100px;
  }

  /*
  ------------------------------------
  製品情報　一覧
  ------------------------------------
  */


  .products_section .parent_term_list{
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-direction: column;
    margin-top: 50px;
    gap:40px 0;
  }


  .products_section .parent_term_list .parent_term_item{
    width: 100%;
    max-width: 400px;
    /* min-width: ; */
  }

  .products_section .parent_term_list .parent_term_card{
    height:auto;
    padding:30px 26px 32px;
  }

  .products_section .parent_term_list .parent_term_name{
    font-size: 22px;
    padding-bottom: 3px;
  }

  .products_section .parent_term_list .parent_term_thumb{
    margin:20px auto 0;
  }

  .products_section .parent_term_list .parent_term_text{
    margin-top: 24px;
    font-size: 15px;
    line-height: 1.8;
  }

  .products_section .parent_term_list .parent_term_button{
    width: 230px;
    height: 45px;
    margin:16px auto 0;
    font-size: 15px;
  }

  /*
  ------------------------------------
  製品情報　大カテゴリー絞り込み
  ------------------------------------
  */

  .products_section .child_term_list{
    max-width: 900px;
    margin:50px auto 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    flex-wrap: wrap;
    gap:60px 0;
  }

  .products_section .child_term_list .child_term_item{
    width:100%;
    max-width: 400px;
  }

  .products_section .child_term_list .child_term_card{
    display: block;
  }

  .products_section .child_term_list .child_term_name_flex{
    display: flex;
    justify-content: space-between;
    padding-bottom: 2px;
    align-items: flex-start;
    border-bottom: 1px solid #0F31A7;
  }

  .products_section .child_term_list .child_term_name{
    font-weight: bold;
    font-size: 22px;
    line-height: 1.5;
  }

  .products_section .child_term_list .child_term_link_text{
    margin-top: 7px;
    font-size: 16px;
    line-height: 1.3;
    padding-left: 20px;
  }

  .products_section .child_term_list .child_term_link_text::before{
    width:8px;
    height:11px;
  }

  .products_section .child_term_list .child_term_thumb{
    margin-top: 10px;
  }

  .products_section .child_term_list .child_term_text{
    margin-top: 10px;
    font-size: 15px;
    line-height: 1.8;
    min-height:auto;
  }

  .products_section .child_term_list .child_term_item_down{
    margin-top: 10px;
  }

  .products_section .child_term_list .name_box{

  }

  .products_section .child_term_list .name_head{
    min-height:46px;
    padding:10px 20px;
    line-height: 1.3;
  }

  .products_section .child_term_list .name_head::after{
    width:15px;
    height:15px;
  }

  .products_section .child_term_list .name_head.active::after{
    height:2px;
    border-radius: 1px;
  }


  .products_section .child_term_list .name_contents{
    padding:20px 30px;
    display: none;
  }

  .products_section .child_term_list .name_list{
    display: flex;
    flex-wrap: wrap;
    gap:20px 0;
  }

  .products_section .child_term_list .name_list li{
    width: 33.3%;
    padding:0 4px;
  }

  .products_section .child_term_list .name_list a{
    text-decoration: underline;
    font-size: 14px;
    line-height: 1.3;
  }


  /*
  ------------------------------------
  製品情報　詳細
  ------------------------------------
  */

  body.single_products_body{
    
  }

  main.single_products_main{

  }

  .single_products_section{
    padding-bottom: 100px;
  }

  .single_products_section .single_products_article{
    max-width: 1066px;
    margin:0 auto;
  }

  .single_products_section .single_products_flex{
    display: flex;
    align-items: flex-start;
    flex-direction: column;
  }

  .single_products_section .single_products_flex + .single_products_flex{
    margin-top: 40px;
  }

  .single_products_section .products_area01{
    width:100%;
  }

  .single_products_section .products_area02{
    flex-shrink: 0;
    margin-left: 0;
    width:100%;
  }

  .single_products_section .products_area03{
    display: none;
  }

  .single_products_section .products_area04{
    width:100%;
  }

  .single_products_section .products_name{
    font-size: 46px;
    line-height: 1.6;
  }

  .single_products_section .products_read_text{
    font-size: 22px;
    line-height:1.5;
  }

  .single_products_section .products_icon_list{
    gap:5px;
    padding-top: 40px;
  }

  .single_products_section .products_icon_list li{
    min-width: 56px;
    min-height: 51px;
    padding:2px 8px;
    border-radius: 6px;
    font-size: 12px;
    line-height: 1.5;
  }

  .single_products_section .products_icon_list li.products_icon_amount{
    letter-spacing: 0.08em;
  }
  .single_products_section .products_icon_list li.products_icon_soda_nozzle{
    line-height: 1.1;
  }

  .single_products_section .products_icon_list li .num01{
    font-size: 19px;
  }
  .single_products_section .products_icon_list li .num02{
    font-size: 18px;
  }
  .single_products_section .products_icon_list li .min{
    font-size: 10px;
  }

  .single_products_section .products_img{
    aspect-ratio: 1/0.75;
    max-width: 500px;
    margin:32px auto 0;
  }
  .single_products_section .products_img img{
    width: 85%;
    height: 90%;
    object-fit: contain;
  }

  .single_products_section .products_drawing{
    aspect-ratio: 1/1;
    max-width: 500px;
    margin: 30px auto 0;
  }

  .single_products_section .products_drawing img{
    width: 85%;
    height: 90%;
    object-fit: contain;
  }

  .single_products_section .products_status{
    padding-top: 40px;
    padding-bottom: 40px;
  }

  .single_products_section .products_min_head{
    font-size: 24px;
    line-height: 1.5;
  }

  .single_products_section .products_info_area{
    margin-bottom: 40px;
  }

  .single_products_section .products_info_list{
    margin-top: 20px;
  }

  .single_products_section .products_info_list li{
    padding:8px 0;
    font-size: 17px;
    line-height: 1.5;
  }


  .single_products_section .products_info_list .products_info_label{
    flex-shrink: 0;
    width:190px;
    padding-right: 12px;
  }

  .single_products_section .products_info_list .products_info_contents{
    width: 100%;
  }

  .single_products_section .products_feature_area{
    margin-top: 40px;
  }

  .single_products_section .products_catch{
    font-size: 19px;
    line-height: 1.5;
  }

  .single_products_section .products_catch::before{
    content:none;
  }

  .single_products_section .products_feature{
    margin-top: 12px;
    font-size: 15px;
    line-height: 1.9;
  }

  .single_products_section .products_download_list{
    margin-top: 40px;
    justify-content: space-between;
    flex-wrap: wrap;
    gap:24px 0;
  }

  .single_products_section .products_download_list li{
    min-width:300px;
    width:48%;
    
  }

  .single_products_section .products_download_list li a{
    padding:6px 0;
    min-height: 82px;
    font-size: 18px;
    border:2px solid #80C1E4;
  }

  .single_products_section .products_download_list li a::before{
    width:19px;
    height:18px;
    margin-right: 10px;
  }


  .single_products_section .products_download_list li a span{
    font-size: 16px;
  }

  .single_products_section .products_alert_box{
    margin:50px auto 0;
    border:2px solid #012DAB;
    padding:30px 24px 32px;
  }

  .single_products_section .products_alert_box .products_alert_head{
    font-size: 21px;
    line-height: 1.5;
  }

  .single_products_section .products_alert_box .products_alert_text{
    line-height: 1.5;
  }

  .single_products_section .products_alert_box .products_alert_text p{
    margin-top: 16px;
  }

  .single_products_section .back_link{
    margin: 60px auto 0;
    
  }




}/*@media screen and (max-width:1200px){*/