/* 全体 */
body{
    max-width:1440px;
    width: 100%;
    height: auto;
    margin: 0 auto;
    padding:0;
    font-family: 'Shippori Mincho', serif;
    overflow-x: hidden;
}

/* Newsを表示させる場合は、noneをblockに変更。表示させない時は、blockをnoneに変更してください。*/
.News{
    display: block;
}

/* Header */
header{
    width: 100%;
    height: 90px;
    position: fixed; 
    top: 0; 
    left: 0;
    z-index: 100; 
    background-color: #ffffff; 
}

.header-container{
    width: 90%;
    max-width: 1440px;
    height: 100%;
    margin: 0 auto;
    justify-content: space-between;
    display: flex;
}

.header-left{
    height: 90px;
    display: flex;
    align-items: center;
}

.back_to_top{
    width: auto;
    height: auto;
}

.company_logo{
    width: 109px;
    line-height: 90px;
}

.header-right{
    width:90%;
    line-height: 60px;
    display: flex;
    justify-content: flex-end;
    align-items: center;
    gap: 15px;
}

a.header_Nosotros{
    font-size: 22px;
    color: #000000;
    text-decoration: none;
}

a.header_Nosotros:hover{
    opacity: 0.2;
}

a.header_Productos{
    font-size: 22px;
    color: #000000;
    text-decoration: none;
}

a.header_Productos:hover{
    opacity: 0.2;
}

a.header_Soluciones{
    font-size: 22px;
    color: #000000;
    text-decoration: none;
}

a.header_Soluciones:hover{
    opacity: 0.2;
}

a.header_Carreras{
    font-size: 22px;
    color: #000000;
    text-decoration: none;
}

a.header_Carreras:hover{
    opacity: 0.2;
}

.header_contacto:hover{
    opacity: 0.7;
}

a.contacto_btn,
a.system_btn{
    width: 125px;
    height: 45px;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;

    font-size: 18px;
    color: #fff;
    text-decoration: none;
    background-color: #0a2d88;
    border-radius: 50px;
    line-height: 1;
}

.header_system:hover{
    opacity: 0.7;
}


/* mainvisual */
.mainvisual{
    max-width: 1000px;
    width: 90%;
    margin: 0 auto;
    padding-top: 150px;
}

.mainvisual_wrapper{
    width: 100%;
    height: auto;
}

.mainvisual_title_wrapper{
    width: 100%;
}

H1.welcome{
    font-size: 36px;
    color:#000000;
    margin: 0;
    line-height: 1;
    padding-bottom: 10px;
}

p.company_note{
    font-size: 24px;
    color:#0a2d88;
    margin: 0;
    line-height: 1;
    padding-bottom: 10px;
}

.mainvisual_photos_slide ul{
    padding:0;
    margin: 0;
    list-style: none;
    position: relative;
    height:44vw;
    max-height: 440px;
    overflow: hidden;
}

.mainvisual_photos_slide li{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
}

.mainvisual_photos_slide{
    width:100%;
    height: 44vw;
    max-height: 440px;
    position: relative;
    overflow: visible;
}

.mainvisual_photos_slide img{
    width: 100%;
    height: 44vw;
    max-height: 440px;
    object-fit: cover;
    display: block;
    border-radius:0px 85px 0px 0px;
}


/* News */
.News{
    position: absolute;
    right: -60px;
    bottom: -25px;
    z-index: 9;
    width: 480px;
    height: auto;
    padding: 0;
}

.News:hover{
    transform: scale(1.1);
}

.mainvisual_news_wrapper{
    background-color: #0a2d88;
    width: 100%;
    padding: 14px 20px;
    box-sizing: border-box;
}

.mainvisual_news_link{
    text-decoration: none;
}

.news_top_wrapper{
    display: flex;
    gap: 18px;
    align-items: center;
}

.news_type{
    font-size: 20px;
    color: #ffffff;
    margin: 0;
    line-height: 1.2;
    border: 1px solid #ffffff;
    padding: 2px 8px;
}

.news_date{
    font-size: 20px;
    color: #ffffff;
    margin: 0;
    line-height: 1.2;
}

.mainvisual_news_title{
    font-size: 20px;
    margin: 4px 0 0;
    color: #ffffff;
    line-height: 1.4;
}

.mainvisual_ver02{
    display: none;
}


/* company */
.company{
    max-width: 1000px;
    width:100%;
    height:auto; 
    margin:0 auto;
    padding-top:150px;
}

.section_title{
    width: 100%;
    display:flex;
    align-items: center;
    gap: 20px;
    padding-bottom: 50px;
}

.section_title_text{
    font-size:30px;
    color:#0a2d88;
    margin: 0;
}

.line{
    width:120px;
    height:2px;
    background:#0a2d88;
    display: block;
}

.company_top_wrapper{
    width: 100%;
    height: auto;
    margin: 0 auto;
    display: flex;
    gap: 25px;
    align-items: stretch;
}

.company_photo{
    width: 30%;
    display: flex;
    flex-direction: column;
    gap: 5px;
}

.company01,.company02{
    width: 100%;
    height: auto;
}

.company_detail{
    width: 70%;
    display: flex;
    flex-direction: column;
    justify-content: end;
    gap: 30px;
}

.company_detail_title{
    font-size: 24px;
    color: #000000;
    margin: 0;
    font-weight: normal;
}

.company_detail_text01,.company_detail_text02,.company_detail_text03{
    font-size: 20px;
    color: #000000;
    margin: 0;
    line-height: 1.6;
}

.company_bottom_wrapper{
    width: 100%;
    display: flex;
    flex-direction: column;
    padding-top: 20px;
    align-items: flex-end;
}

.company_bottom_wrapper iframe{
    width: 50%;
    aspect-ratio: 16 / 9;
    height: auto;
}

.make_future_flow{
    color:#0a2d88;
    margin: 0;
}

.company_ver02{
    display: none;
}


/* Toppage _Product */
.Top_Productos{
    max-width: 1000px;
    width:100%;
    height:auto; 
    margin:0 auto;
    padding-top:100px;   
}

.Top_Productos_slide{
    width:100%;
    margin:0 auto;
    padding-bottom: 30px;
}

.Top_Productos_slide img{
    height: auto;
    box-shadow:
        0 2px 8px rgba(0,0,0,0.08),
        6px 6px 12px rgba(0,0,0,0.15);
}

.Top_Productos_slide img:hover{
    transform: scale(1.1); 
}

.slick-slide{
    margin: 0 12px;
}

.slick-dots li{
    margin-bottom: 30px;
}

.slick-dots li button:before{
    font-size: 13px;
    color: #0a2d88;
    opacity: 0.3;
}

.slick-dots li.slick-active button:before{
    color: #0a2d88;
    opacity: 1;
}

.Top_Productos_slide .slick-list{
    padding-bottom: 20px;
}

.view_all_btn{
    width: 130px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto;
    background-color: #0a2d88;
    color: #ffffff;
    border-radius: 10px;
    font-size: 18px;
    box-shadow: 0px 5px 0px 0px #4e4c4c;
    text-decoration: none;
    font-family: 'Shippori Mincho', serif;
}

.view_all_btn:active{
    position: relative;
    top: 6px;
    box-shadow:none;
}

/* Solution */
.Soluciones{
    max-width: 1000px;
    width:100%;
    height:auto; 
    margin:0 auto;
    padding-top:100px;
}

.solution_photos{
    width: 100%;
    height: auto;
    display: block;
}

.solution_photo_top{
    display: flex;
    width: 100%;
    margin: 0 auto;
    gap: 30px;
    justify-content: center;
    padding-bottom: 30px;
}

.solution_photo_bottom{
    display: flex;
    width: 100%;
    margin: 0 auto;
    gap: 30px;
    justify-content: center;
    padding-bottom: 25px;
}

.solution01,.solution02,.solution03,.solution04,.solution05{
    width: 30%;
    height: auto;
    display: block;
}

.solution_img{
    width: 100%;
    height: 210px;
}

.solution_title{
    font-size: 20px;
    color: #000000;
    margin: 0;
    text-align: center;
}

.solution01, .solution02, .solution03, .solution04, .solution05 {
    width: 30%;
    position: relative;
    overflow: hidden;
}

.solution_overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%; /* 185px → 100% に変更 */
    overflow: hidden; /* これを追加 */
    background: rgba(0, 0, 0, 0.6);
    color: #ffffff;
    padding: 15px;
    box-sizing: border-box;
    opacity: 0;
    transition: opacity 0.3s ease;
}

.solution01:hover .solution_overlay,
.solution02:hover .solution_overlay,
.solution03:hover .solution_overlay,
.solution04:hover .solution_overlay,
.solution05:hover .solution_overlay {
    opacity: 1;
}

.solution_overlay_title {
    font-size: 22px;
    margin: 0 0 10px;
}

.solution_overlay ul {
    font-size: 16px;
    padding-left: 20px;
}

.soluciones_ver02{
    display: none;
}


/* Application */
.application{
    display: block;
    width: 100%;
    padding-top: 30px;
}

.application_top{
    display: flex;
    justify-content: space-between;
    align-items: baseline;
}

.application_top_title h2{
    font-size: 20px;
    margin: 0;
}

.application_bottom p{
    font-size: 20px;
    color: #000000;
    margin: 0;
}

.application_bottom{
    display:flex;
    justify-content: space-between;
    align-items: center;
}

.application_list{
    width: 60px;
    height: auto;
}

.application_list:hover{
    transform: scale(1.2);
}

.application iframe {
    width: 50%;
    aspect-ratio: 16 / 9;
    height: auto;
}


/* Certificaciones */
.Certificaciones{
    max-width: 1000px;
    width:100%;
    height:auto; 
    margin:0 auto;
    padding-top:100px;    
}

.marks img{
    width: 80%;
}


/* Contact form */
.contact{
    max-width: 1000px;
    width:100%;
    height:auto; 
    margin:0 auto;
    padding-top:100px;
    padding-bottom: 100px;
}

.contact p{
    margin: 0;
}

form{
    width: 50%;
    margin: 0 auto;
}

.question01,.question02,.question03,.question04,.question05_select-box,.question06{
    padding-bottom: 15px;
} 

.privecypolicy{
    padding-bottom: 50px;
}

.question01 input,.question02 input,.question03 input,.question04 input,.question05_select-box select{
    width: 100%;
    height: 40px;
}

.question06 textarea{
    width: 100%;
    height: 150px;    
}

.question01 p,.question02 p,.question03 p,.question04 p,.question05_select-box,.question06 p{
    font-size: 18px;
}

.question05_select-box select{
    font-size: 18px;
    font-family: 'Shippori Mincho', serif;
}

.privecypolicy{
    display: flex;
}

.privacy{
    display: flex;
}

.sending{
    width: 90px;
    height: 35px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto;
    background-color: #0a2d88;
    color: #ffffff;
    border-radius: 10px;
    font-size: 18px;
    box-shadow: 0px 3px 0px 0px #4e4c4c;
    text-decoration: none;
    font-family: 'Shippori Mincho', serif;
}

.sending:active{
    position: relative;
    top: 6px;
    box-shadow:none;
}

.privacy-link{
    color: #d81d1d;
}

.privacy-link:hover{
    opacity: 0.5;
}

.modal_overlay{
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0,0,0,0.6);
    z-index: 9;
    justify-content: center;
    align-items: center;
}

.modal_content{
    background: #fff;
    padding: 40px;
    width: 60%;
    max-height: 80vh;
    overflow-y: auto;
    position: relative;
}

.modal_close{
    position: absolute;
    top: 15px;
    right: 15px;
    background: none;
    border: none;
    font-size: 20px;
    cursor: pointer;
}

.Policy_title{
    font-weight: bold;
    margin: 0;
}

.Policy_detail{
    margin: 0;
    padding-bottom: 20px;
}

.required{
    color: red;
    margin-left: 4px;
}


/* footer*/
.footer_detail{
    max-width: 1000px;
    width:100%;
    height:auto; 
    margin:0 auto;
    padding-top:70px;
}

.address,.phone,.mail{
    margin: 0;
    display: flex;
    align-items:center;
    gap: 10px;
    
}

.footer_top h2{
    margin: 0;
}

.footer_top{
    padding-bottom: 10px;
}

.footer_middle{
    width: 100%;
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
}

.map{
    width: 500px;
    height: 250px;
}

.facebook,.linkedin{
    width: 60px;
}

.youtube{
    width: 80px;
    padding-right: 7px;
}

.sns {
    width: 100%;
    display: flex; 
    align-items: center; 
    gap: 5px;
    padding-top: 10px;
}

.footer_bottom {
    width: 100vw;
    position: relative;
    left: 50%;
    transform: translateX(-50%);
}

.ashirai02 {
    width: 100%;
    display: block;
}

.footer_bottom {
    width: 100vw;
    position: relative;
    left: 50%;
    transform: translateX(-50%);
}

.footer_bottom p {
    position: absolute;
    bottom: 20px;
    width: 100%;
    text-align: center;
    color: white;
    margin: 0;
    font-size: 12px;
}


/* products.html */
.product{
    max-width: 1000px;
    width:100%;
    height:auto; 
    margin:0 auto; 
    padding-top: 200px;
}

.product_all_wrapper a{
    text-decoration: none;
}

.product_title{
    display: flex;
    justify-content: center;
}

.product_name{
    display: flex;
    align-items: baseline;
    gap: 5px;
}

.product_name h2{
    font-size: 36px;
    margin: 0;
    color: #000000;
}

.product_name p {
    font-size: 20px;
    margin: 0;
    color: #000000;
}

.product_description{
    background-color: #0a2d88;
    text-align: center;
    height: 50px;
    display: flex; 
    align-items: center; 
    justify-content: center; 
}

.product_description p{
    color: #ffffff;
    margin: 0;
    font-family: 'Shippori Mincho', serif;
    font-weight: 600;
    line-height: 1.2;
}

.product_all_wrapper{
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 30px;
    padding-top: 30px;
}

.product_card_top{
    display: flex;
    align-items: baseline;
    justify-content: space-around;
}

.product_card img{
    width: 100%;
    height: 200px;
    object-fit: contain;
    overflow: hidden;
}

.product_description_white{
    background-color: #ffffff;
    border: 2px solid #0a2d88;
    text-align: center;
    height: 50px;  
    display: flex;
    align-items: center;
    justify-content: center; 
}

.product_description_white p{
    color: #0a2d88;
    margin: 0;
    font-family: 'Shippori Mincho', serif;
    font-weight: 600;
    font-size: 17px;
    line-height: 1;
}

.product_card:hover {
    transform: scale(1.1);
}

.product_btns{
    padding-top: 100px;
    padding-bottom: 100px;
    gap: 30px;
    display: flex;
    justify-content: center;
}

.product_btns a{
    margin: 0;
}

.product_btn01{
    width: 200px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto;
    background-color: #0a2d88;
    color: #ffffff;
    border-radius: 10px;
    font-size: 18px;
    box-shadow: 0px 5px 0px 0px #4e4c4c;
    text-decoration: none;
    font-family: 'Shippori Mincho', serif;
}

.product_btn02{
    width: 200px;
    height: 38px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto;
    background-color: #ffffff;
    color:  #0a2d88;
    border: 2px solid #0a2d88;
    border-radius: 10px;
    font-size: 18px;
    box-shadow: 0px 5px 0px 0px #4e4c4c;
    text-decoration: none;
    font-family: 'Shippori Mincho', serif;
}

.product_btn01:active{
    position: relative;
    top: 6px;
    box-shadow:none;
}

.product_btn02:active{
    position: relative;
    top: 6px;
    box-shadow:none;    
}


/* product_each＿All */
.each_main{
    max-width: 1000px;
    width:100%;
    height:auto; 
    margin:0 auto;
    padding-top:130px;
}

.each_header{ 
    padding-left: 5px;
    border-left: 2px solid #0a2d88;
}

.each_title{
    color: #0a2d88;
    margin: 0px;
}

.each_header_detail{
    color: #000000;
    line-height: 1;
    font-size: 22px;
    margin: 0px;
    font-weight: normal;
}

.each_header_01{
    display: flex;
    align-items: center;
}

.each_header_02{
    margin-top: -5px
}

.each_hz{
    margin: 0px;
    background-color:#24a2dd;
    color: #ffffff;
    font-size: 12px; 
    display: flex;
    justify-content: center;
}

.each_series{
    margin: 0px;
    line-height: 1;
}

.each_title_right{
    padding-left: 5px;
}

.each_bombas_photo{
    width: 100%;
    margin: 0 auto;
    text-align: center;
}

.each_section_title{
    width: 100%;
    display:flex;
    align-items: center;
    gap: 20px;
    padding-top: 30px;
    padding-bottom: 5px;
}

.each_title_text{
    font-size:20px;
    color:#000000;
    margin: 0;
    font-weight: 500;
}

.each_line{
    width:60px;
    height:1px;
    background:#000000;
    display: block;
}

.applications_list{
    list-style: none;
    margin: 0;
    padding: 0;
}

.applications_list li{
    position: relative;
    padding-left: 25px;
    font-size: 18px;
    color: #000000;
    line-height: 1.7;
}

.applications_list li::before{
    content: "";
    position: absolute;
    left: 0;
    top: 0.5em;
    width: 10px;
    height: 10px;
    background-color: #0a2d88;
    transform: translateY(15%);
}

.applications_list_photo{
    width: 100%;
    padding-top:20px;
}

.specifications{
    padding-top: 50px;
}

.spec_table{
    width: 90%;
    border-collapse: collapse;
    margin-top: 20px;
}

.spec_table th,
.spec_table td{
    border: 1px solid #000000;
    padding: 6px 10px;
    font-size: 18px;
    text-align: center;
}

.spec_table td:first-child{
    width: 30%;
    background-color: #ffffff;
}

.spec_table td:last-child{
    background-color: #ececec;
}

.spec_table_header th{
    background-color: #4a90c2;
    color: #ffffff;
    font-size: 18px;
}


.peformance_curve_photo,.peformance_specs_photo{
    width: 100%;
    margin: 0 auto;
    padding-top: 20px;
}

.peformance_specs,.peformance_curve{
    padding-top: 50px;
}

.specs_info p{
    font-size: 12px;
    margin: 0px;
}

.specs_info{
    width: 100%;
    padding-left:0px;
    display: flex;
}

.spexs_info_right{
    padding-left: 20px;
}


.product_btn03{
    width: 280px;
    height: 50px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto;
    background-color: #0a2d88;
    color: #ffffff;
    border-radius: 10px;
    font-size: 18px;
    box-shadow: 0px 5px 0px 0px #4e4c4c;
    text-decoration: none;
    font-family: 'Shippori Mincho', serif;
}

.product_btn04{
    width: 250px;
    height: 50px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto;
    background-color: #ffffff;
    color:  #0a2d88;
    border: 1px solid #0a2d88;
    border-radius: 10px;
    font-size: 18px;
    box-shadow: 0px 5px 0px 0px #4e4c4c;
    text-decoration: none;
    font-family: 'Shippori Mincho', serif;
}


.product_btn03:active{
    position: relative;
    top: 6px;
    box-shadow:none;
}



.product_btn04:active{
    position: relative;
    top: 6px;
    box-shadow:none;    
}

/* AL */
.AL_bombas{
    width: 80%;
    padding-top: 30px;
}

/* AN */
.AN_bombas{
    width: 80%;
    padding-top: 30px;
}

/* AFC */
.AFC_bombas{
    width: 80%;
    padding-top: 30px;
}

/* BD */
.peformance_curve_photo_BD{
    width: 60%;
    margin: 0 auto;
    padding-top: 20px;
}

/* HDG */
.peformance_curve_photo_HDG{
    width: 60%;
    margin: 0 auto;
    padding-top: 20px;
}

.peformance_specs_photo_BD{
    width: 100%;
    margin: 0 auto;
    padding-top: 20px;
}

.BD_bombas{
    width: 80%;
    padding-top: 30px;
}

/* FN */
.FN_bombas{
    width: 80%;
    padding-top: 30px;
}

/* GD */
.GD_bombas{
    width: 60%;
    padding-top: 60px;
}

/* GF */
.GF_bombas{
    width: 80%;
    padding-top: 30px;
}

/* HD */
.HD_bombas{
    padding-top: 30px;
    width: 60%;
}

/* HDG */
.HDG_bombas{
    padding-top: 30px;
    width: 80%;
}


/* J */
.J_bombas{
    width: 100%;
}

/* LA */
.peformance_curve_photo_LA{
    width: 60%;
    margin: 0 auto;
    padding-top: 20px;
}

.LA_bombas{
    padding-top: 30px;
    width: 100%;
}

/* POND */
.POND_bombas{
    width: 70%;
    padding-top: 40px;
}

.peformance_curve_photo_POND{
    width: 60%;
    margin: 0 auto;
    padding-top: 20px;
}

.spec-title {
    color: #1F3864;
    font-size: 28px;
    font-weight: 800;
    letter-spacing: 0.5px;
    margin: 0 0 16px 0;
}

.spec-table {
    width: 80%;
    border-collapse: collapse;
    font-size: 18px;
    padding-top: 20px;
    table-layout: fixed;
}

.spec-table col.col-group { 
    width: 15%; 
}

.spec-table col.col-item  { 
    width: 30%; 
}

.spec-table col.col-desc  { 
    width: 50%; 
}

.spec-table th,
.spec-table td {
    border: 1px solid #A6A6A6;
    padding: 7px 10px;
    text-align: left;
    vertical-align: middle;
    color: #262626;
}

.spec-table thead th {
    background: #5B9BD5;
    color: #ffffff;
    font-size: 15px;
    font-weight: 700;
    text-align: center;
    border-color: #ffffff;
}

  /* 左端のグループ列（Limits Of Use / Type / Material） */
.group-cell {
    background: #BDD7EE;
    color: #1F3864;
    text-align: center;
}
  /* 項目名（Model, Discharge, Liquid Temp. など） */
.item-cell {
    background: #ffffff;
    color: #262626;
}

.item-cell-top{
    background:#BDD7EE;
    color: #262626; 
}

  /* Description列の背景色 */
.desc-green {
    background: #E2EFDA;
}
.desc-gray {
    background: #F2F2F2;
}


/* AF */
.tab-switch {
    --tab-color:#0a2d88;
    display: flex;
    flex-wrap: wrap;
    max-width: 90%;
    margin-inline: auto;
    gap: 5px;
    padding-top: 20px;
    }
    
/* AF_タブボタン */
.tab-switch label {
    padding: 1em 0em;
    background:#eee;
    cursor: pointer;
    order: -1; /* 上に表示 */
    text-align: center;
    flex: 1; /* 均等幅 */
    min-width: 60px;
    position: relative;
}

/* AF_ラジオ非表示 */
.tab-switch input {
    display: none;
}

/* AF_コンテンツ非表示 */
.tab-content {
    display: none;
    width: 100%;
    padding: 1.5em 0;
}

/*　AF_選択されたタブ＋コンテンツ表示 */
.tab-switch label:has(:checked) {
    background: var(--tab-color);
    color: #fff;
}
.tab-switch label:has(:checked) + .tab-content {
    display: block;
}

/*AF_吹き出し */
.tab-switch label:has(:checked)::before {
    content: '';
    position: absolute;
    top: calc(100% - 1px);
    left: 50%;
    transform: translateX(-50%);
    width: 18px;
    height: 9px;
    background-color: var(--tab-color);
    clip-path: polygon(0 0, 100% 0, 50% 100%);
    z-index: 1;
}

.AF01_bombas,.AF02_bombas,.AF03_bombas{
    width: 100%;
}

.peformance_curve_photo_AF{
    width: 100%;
    margin: 0 auto;
    padding-top: 50px;
}

/* SA */
.SA_bombas{
    width: 90%;
}

/* SF */
.SF_bombas{
    width: 90%;
}

/* IC */
.IC_bombas{
    width: 80%;
}

/* L */
.L_bombas{
    width: 100%;
}


/* Information */
.information_main{
    padding-top: 120px;
    align-items: center;
}

.information_main_01{
    background-color: #0a2d88;
    height: 450px;
    display: flex;
    flex-direction: column;
    align-items: center;
    color: #FFFFFF;
    width: 100vw;
    position: relative;
    left: 50%;
    right: 50%;
    margin-left: -50vw;
    margin-right: -50vw;
}

.information_title_top{
    display: flex;
    gap: 15px;
    font-size: 20px;  
    align-items: center;
    padding-top: 150px;
}

.information_type{
    border: 1px solid #FFFFFF;
    padding: 2px 4px;
    margin: 0;
}
.post_date{
    margin: 0;
}

.information_title01{
    margin: 0;
    font-weight: normal;
    font-size: clamp(16px, 3vw, 28px);
    white-space: nowrap;
}

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

.information_detail_wrapper{
    z-index: 5;
    width: 50%;
    margin: 0 auto;
    margin-top: -210px;
    background-color: #FFFFFF;
    border:2px solid #000000;
    padding: 40px 20px 20px 20px;
    border-radius: 50px 0px 50px 0px;
}

.information_detail{
    display: flex;
    flex-direction: column;
    width:100%;
    align-items: center; 
}

.information_photo{
    margin: 0 auto;
    width: 100%;
}

.information_photo img{
    width: 80%;
    height: 300px; 
    display: block;
    margin: 0 auto;
}

.information_body{
    width: 80%;
}

.information_body p{
    font-size: 20px;
}


/*　responsive_header_hamburger */
.hamburger{
    display:none;
    width:40px;
    height:40px;
    background:none;
    border:none;
    cursor:pointer;
    position:relative;
    z-index:1001;
}

.hamburger span{
    position:absolute;
    left:8px;
    width:24px;
    height:3px;
    background:#0a2d88;
    transition:.3s;
}

.hamburger span:nth-child(1){
    top:10px;
}

.hamburger span:nth-child(2){
    top:18px;
}

.hamburger span:nth-child(3){
    top:26px;
}

/* × part */

.hamburger.active span:nth-child(1){
    transform:rotate(45deg);
    top:18px;
}

.hamburger.active span:nth-child(2){
    opacity:0;
}

.hamburger.active span:nth-child(3){
    transform:rotate(-45deg);
    top:18px;
}

.whatsapp-btn {
    position: fixed;
    bottom: 80px;
    right: 40px;
    width: 90px;
    height: 90px;
    z-index: 1000;
}

.whatsapp-btn img {
    width: 100%;
    height: 100%;
}

.whatsapp-btn-footer{
    display:none;
}


@media screen and (max-width:1024px){
    .whatsapp-btn {
        display: none;
    }

    .whatsapp-btn-footer {
        width: 50px;
        height: 50px;
    }

    .whatsapp-btn-footer img {
        width: 100%;
        height: 100%;
    }

    .whatsapp-btn-footer{
        display:block;
        padding-left: 20px;
    }

    /*　header */
    .hamburger{
        display:flex;
        align-items:center;
        justify-content:center;
        width:50px;
        height:50px;
        padding:0;
    }

    .header-right{
        display:none;
        position:absolute;
        top:0px;
        left:0;
        width:100%;
        background:#fff;
        flex-direction:column;
        align-items:center;
        gap:15px;
        padding:35px 0;
        box-shadow:0 5px 10px rgba(0,0,0,.1);
        z-index:999;
    }

    .header-right.active{
        display:flex;
    }

    .header-container{
        align-items:center;
    }

    .header-right a{
        font-size:24px;
    }

    a.contacto_btn{
        width:150px;
        height:50px;
    }

    a.system_btn{
        width:150px;
        height:50px;
    }

    .header_contacto{
        margin-bottom:15px;
    }

    /* mainvisual */
    H1.welcome{
        font-size: 30px;
        padding-bottom: 5px;
    }

    p.company_note{
        font-size: 20px;
    }

    .News{
        right: -20px;
        bottom: -40px;
        width: 60%;
        max-width: 400px;
    }

    .news_type,
    .news_date{
        font-size: 16px;
    }

    .mainvisual_news_title{
        font-size: 16px;
    }

    .mainvisual_photos_slide,
    .mainvisual_photos_slide ul{
        height: 37vw;
        width: 100%;
    }

    .mainvisual_photos_slide img{
        height: 37vw;
        width: 100%;
    }


    /*　company */
    .line{
        width: 80px;
        height: 1px;        
    }

    .company{
        width: 90%;
    }

    .company_detail_title{
        font-size: 24px;

    }

    .company_detail_text01,
    .company_detail_text02,
    .company_detail_text03{
        font-size: 20px;
        line-height: 1.5;
    }

    .company_bottom_wrapper{
        padding-top: 40px;
    }

    /* Productos */
    .Top_Productos{
        width: 90%;
    }

    .slick-slide{
        margin: 0 8px;
    }

    .Top_Productos_slide img{
        max-width: 90%;
        height: auto;
        margin: 0 auto;
        display: block;
    }

    .view_all_btn{
        box-shadow: none;
    }

    /* Soluciones */
    .Soluciones{
        width: 90%;
    }

    .soluciones_ver02{
        display: none;
    }

    .solution_title{
        font-weight: normal;
    }

    .application_top_title h2 {
        font-weight: normal;
    }

    .marks img {
        width: 90%;
    }

    .solution_overlay_title{
        font-weight: normal;
        margin: 0;
    }

    /* Certificaciones */
    .Certificaciones{
        width: 90%;
    }

    /* Contacto */
    .contact{
        width: 90%;
    }

    form{
        width: 70%;
    }

    .sending{
        box-shadow: none;
    }

    /* Footer */

    .footer_top h2 {
        font-weight: normal;
    }

    .footer_detail{
        width: 90%;
    }

    .footer_middle{
        flex-wrap: wrap;
        gap: 20px;
    }

    .map{
        width: 50%;
    }

    .ashirai01{
        width: 40%;
    }

    .facebook,.linkedin{
        width: 50px;
    }

    .youtube{
        width: 70px;
        padding-right: 7px;
    }

    /*　Product HTML*/
    .product{
        width: 90%;
    }

    .product_name h2 {
        font-weight: normal;
    }

    .product_btn01,.product_btn02{
        box-shadow: none;
    }

    /*　each-Product HTML*/
    .each_header{
        display: flex;
        flex-direction: column;
    }

    .each_main{
        width: 90%;
    }

    .product_description p{
        font-size: 18px;
        font-weight: normal;
        line-height: 1;
    }

    .product_description_white p{
        font-size: 18px;
        font-weight: normal;
    }

    .tab-switch{
        max-width: 100%;
    }

    .product_btn03,.product_btn04{
        box-shadow: none;
    }

    /* information.html */
    .information_title_top{
        font-size: 18px;
    }

    .information_detail_wrapper{
        width: 60%;
        margin-top: -155px;
        padding: 40px;
    }

    .information_photo img{
        width: 95%;
        height: auto;
    }

    .information_body{
        width: 95%;
    }

    .information_body p{
        font-size: 18px;
        line-height: 1.5;
    }

    .information_main_01{
        height: 400px;
    }
    .product_btn03{
        width: 250px;
        height: 50px;
    }

    .product_btn04{
        height: 48px;
    }
}

@media screen and (max-width:768px){
    /* mainvisual */
    .mainvisual_photos_slide img{
        border-radius: 0px 60px 0px 0px;
    }

    .mainvisual {
        padding-top: 120px;
    }

    .mainvisual_wrapper{
        width:90%;
    }

    H1.welcome {
        font-size: 28px;
        padding-bottom: 5px;
    }

    p.company_note {
        font-size: 18px;
    }

    /* News */
    .News {
        right: -20px;
        bottom: -30px;
        width: 45%;
    }

    .mainvisual_news_wrapper{
        padding: 5px 5px;
    }

    .news_top_wrapper{
        gap: 10px;
    }

    .news_type, .news_date {
        font-size: 14px;
    }

    .mainvisual_news_title{
        font-size: 16px;
    }

    /* Company */
    .company{
        padding-top: 100px;
    }

    .section_title{
        padding-bottom: 30px;
        gap: 10px;
    }

    .line {
        width: 80px;
        height: 1px;
    }

    .section_title_text{
        font-size: 28px;
    }

    .company_top_wrapper{
        flex-direction: column-reverse;
    }

    .company_photo {
        display: flex;
        width: 100%;
        flex-direction: row-reverse;
        justify-content: space-between;
    }

    .company01,
    .company02{
        width: 48%;
    }

    .company_detail{
        width: 100%;
    }

    .company_detail_text01, .company_detail_text02, .company_detail_text03 {
        font-size: 18px;
        line-height: 1.4;
    }

    .company_bottom_wrapper iframe{
        width: 100%;
    }

    /* Top_producto*/
    .Top_Productos_slide img{
        width: 100%;
        max-width: 100%;
        height: auto;
    }

    .slick-dots li button:before{
        font-size: 8px; 
    }

    .view_all_btn {
        font-size: 16px;
        width: 110px;
        height: 35px;
        box-shadow:none;
    }

    .view_all_btn:active{
        top: 4px;
    }

    .Top_Productos_slide img{
        box-shadow:
            0 1px 4px rgba(0,0,0,0.08),
            3px 3px 6px rgba(0,0,0,0.15);
    }


    /* Soluciones*/
    .soluciones_ver01{
        display: none;
    }

    .soluciones_ver02{
        display: block;
        width: 100%;
    }

    .soluciones_group01,.soluciones_group02,.soluciones_group03{
        display: flex;
        justify-content: space-between;
        width: 100%;
        padding-bottom: 20px;
    }

    .solution01,.solution02,.solution03,.solution04,.solution05,.solucion06{
        width: 48%;
    }

    .solucion06{
        display: flex;
        flex-direction: column;
        justify-content: end;
        align-items: end;
    }

    .solution_title{
        font-weight: normal;
    }

    .solution_overlay_title{
        font-weight: normal;
        margin: 0;
    }

    .application_top_title h2{
        font-weight: normal;
    }

    .application_top_title p{
        font-size: 20px;
        margin: 0px;
        line-height: 1;
    }

    .application_top {
        display: flex;
        justify-content: space-between;
        align-items: baseline;
        padding: 30px;
    }

    .application_bottom {
        flex-direction: column;
        align-items: flex-end;
        gap: 20px;
    }

    .application iframe {
        width: 100%;
        aspect-ratio: 16 / 9;
        height: auto;
    }

    /* Contificaciones*/
    .marks img {
        width: 90%;
    }

    /* Contacto*/
    .modal_content{
        padding: 20px;
    }

    .Policy_detail {
        margin: 0;
        padding-bottom: 10px;
    }

    .modal_content h2{
        font-size: 20px;
        margin: 0;
        padding-bottom: 10px;
    }

    .sending{
        font-size: 16px;
        width: 80px;
        height: 35px;
        box-shadow: none;
    }

    .footer_detail{
        padding-top: 30px;
    }

    .footer_top h2{
        font-size: 20px;
        font-weight: normal;
    }

    .map{
        height: 200px;
    }

    .ashirai01{
        width: 50%;
    }

    .footer_middle{
        flex-wrap: nowrap;
    }

    .sns{
        padding-top: 0px;
    }

    .footer_bottom p {
        bottom: 10px;
    }


    /* information.html */
    .information_main{
        padding-top: 0px;
        width: 100%;
    }

    .information_title {
        width: 75%;
        display: flex;
        flex-direction: column;
        align-items: flex-start;
    }

    .information_detail_wrapper {
        width: 70%;
        margin-top: -185px;
        padding: 30px;
    }

    .information_photo img {
        width: 90%;
    }

    .information_body{
        width: 90%;
    }

    .information_body p {
        line-height: 1.3;
        font-size: 18px;
    }

    .product_btn01 {
        font-size: 16px;
        width: 150px;
        height: 35px;
        box-shadow:none;
    }

    .spec_table {
        width: 100%;
    }



    /* Product.html */    
    .product{
        padding-top: 150px;
    }

    .product_all_wrapper{
        grid-template-columns: repeat(2, 1fr);
        gap: 15px;
    }

    .product_name h2 {
        font-size: 28px;
        font-weight: 500;
    }

    .product_description p{
        font-weight: normal;
        line-height: 1;
    }

    .product_card{
        width: 90%;
    }

    .product_card img {
        width: 50%;
    }

    .product_description_white {
        height: 46px;
    }

    .product_description_white p{
        font-size: 16px;
        font-weight: normal;
    }

    .product_card:hover {
        transform: none;
    }

    .product_btns{
        padding-top: 80px;
        padding-bottom: 80px;
        gap: 20px;
    }

    .product_btn02{
        width: 150px;
        height: 33px;
        font-size: 16px;
        box-shadow: none;
    }

    /* AF‥ */
    .each_bombas_photo img{
        width: 90%;
    }

    .tab-switch label{
        padding: 0.6em 0.3em;
        font-size: 14px;
        line-height: 1.3;
    }

    .product_btn03 {
        width: 220px;
        font-size: 15px;
        height: 40px;
        font-weight: normal;
        box-shadow: none;
    }

    .product_btn04{
        font-size: 16px;   
        height: 38px;  
        width: 220px;  
        font-weight: normal;
        box-shadow: none;
    }

    .spexs_info_left{
        width: 50%;
    }

    .each_header_detail{
        font-size: 18px;
    }

    .applications_list li {
        line-height: 1.3;
        font-weight: normal;
        font-size: 16px;
    }


    .each_title_text {
        font-size: 18px;
    }

    .applications_list li::before {
        transform: translateY(-25%);
    }

    .spec_table_header th {
        font-weight: normal;
    }
    
    .spec_table th,.spec_table td{
        font-weight: normal;
        padding: 3px;
        font-size: 16px;
    }

    .spec-table {
        width: 100%;
        font-size: 16px;
    }

    .spec-table thead th {
        font-weight: normal;
        padding: 0;
    }

    .peformance_curve_photo_POND {
        width: 80%;
    }



}

@media screen and (max-width:425px){
    .company_logo{
        width: 79px;
        line-height: 60px;
    }

    .header-right{
        gap: 5px;
    }

    .header-right a {
        font-size: 22px;
    }

    a.contacto_btn {
        width: 120px;
        height: 42px;
        font-size: 18px;
        margin-top: 7px;
    }

    a.system_btn {
        width: 120px;
        height: 42px;
        font-size: 18px;
    }

    /* TOP page_mainvisual */ 
    .mainvisual{
        padding-top: 90px;
    }

    H1.welcome {
        font-size: 22px;
        padding-bottom: 3px;
    }

    p.company_note{
        font-size: 16px;
    }

    .mainvisual_ver01{
        display: none;
    }

    .mainvisual_ver02{
        display: block;
    }

    .mainvisual_photos_slide img{
        height: auto;
        border-radius:0px;
    }

    .mainvisual_photos_slide, .mainvisual_photos_slide ul {
        height: 75vw;
    }

    .News{
        width: 70%;
        bottom: -20px;
        right: -8px;
    }

    .mainvisual_news_wrapper {
        padding: 3px 5px;
        background-color: #ffffff;
        border: 1px solid #0a2d88;
    }

    .mainvisual_news_title{
        margin: 0px;
    }

    .news_type, .news_date {
        font-size: 12px;
    }

    .mainvisual_news_title{
        font-size: 14px;
        margin: 3px 0px 0px 0px;
        color: #0a2d88;
        line-height: 1;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
    }

    .news_type{
        color: #0a2d88;
        border: #0a2d88 1px solid;
    }

    .news_date{
        color: #0a2d88;
    }


    /* Company */
    .company_ver01{
        display: none;
    }
    .company_ver02{
        display: block;
    }

    .company_top_wrapper {
        flex-direction: column;
    }

    .company_top_wrapper {
        gap: 10px;
    }

    .company{
        padding-top: 40px;
    }

    .section_title_text{
        font-size: 20px;
        padding-bottom: 5px;
    }

    .line{
        height: 1px;
        width: 50px;
    }

    .section_title{
        gap: 7px;
        padding-bottom: 10px;
    }

    .company_detail{
        gap: 15px;
    }

    .company_detail_title{
        font-size: 16px;
        line-height: 1.2;
    }

    .company_detail_text01, .company_detail_text02, .company_detail_text03 {
        font-size: 16px;
        line-height: 1.3;
    }

    .company_bottom_wrapper{
        padding-top:20px ;
    }

    .make_future_flow{
        font-size: 20px;
    }

    /* Top_Productos */
    .Top_Productos{
        padding-top: 60px;
    }
    .slick-dots{
        bottom: -10px;
    }

    .slick-dots li {
        margin: 0;
        width: 13px;
    }

    .Top_Productos_slide .slick-list {
        padding-bottom: 5px;
        padding-top: 10px;
    }

    .Top_Productos_slide img{
        box-shadow:
        0 1px 4px rgba(0,0,0,0.08),
        3px 3px 6px rgba(0,0,0,0.15);
    }

    .view_all_btn {
        font-size: 14px;
        width: 100px;
        height: 30px;
        box-shadow: none;
    }

    /* Soluciones */
    .Soluciones{
        padding-top: 60px;
    }

    .solution_img {
        height: auto;
    }

    .solution_title{
        font-size: 16px;
    }

    .solution_overlay_title{
        font-size: 16px;
        margin: 0px;
    }

    .solution_overlay p{
        padding-top: 7px;
        margin: 0;
        line-height: 1;        
    }

    .solution_overlay ul{
        margin: 0;
        padding-top: 5px;
    }

    .solution_overlay li{
        font-size: 14px;
    }

    .solution_overlay{
        padding: 10px;
    }

    .application_top_title h2{
        font-size: 16px;
        padding-bottom: 5px;
    }

    .application_top_title p{
        font-size: 16px;
    }

    .application_list{
        width: 50px;
    }

    /* Soluciones */
    .Certificaciones{
        padding-top: 60px;
    }

    .marks img{
        width: 100%;
    }

    /* Contact */
    .contact {
        padding-top: 60px;
        padding-bottom: 60px;
    }

    form {
        width: 80%;
    }

    .question01 p, .question02 p, .question03 p, .question04 p, .question05_select-box, .question06 p {
        font-size: 16px;
    }

    .question01 input, .question02 input, .question03 input, .question04 input, .question05_select-box select {
        width: 100%;
        height: 25px;
    }

    .question05_select-box select {
        font-size: 16px;
    }

    .privecypolicy {
        padding-bottom: 35px;
    }

    .modal_content {
        padding: 5px;
        width: 90%;
    }

    .modal_content h2 {
        font-size: 16px;
        padding:0 ;       
    }

    .Policy_detail{
        font-size: 14px;
        padding: 0;
        line-height: 1;
    }

    .Policy_title{
        font-size: 14px;
        padding-top:15px;
        line-height: 1;
    }

    .sending {
        font-size: 14px;
        width: 70px;
        height: 30px;
    }

    /* Footer */
    .address{
        line-height: 1;
    }

    .map {
        height: 120px;
        width:50%;
    }

    .ashirai01{
        width: 50%;
    }

    .facebook, .linkedin{
        width: 30px;
    }

    .youtube{
        width: 50px;
        padding-right: 5px;
    }

    .whatsapp-btn-footer{
        width: 30px;
        height: 30px;
        padding-left: 15px;
    }

    .footer_bottom p {
        font-size: 8px;
        bottom: 5px;
    }

    /* information.html */
    .information_title{
        width: 80%;
    }

    .information_detail_wrapper {
        width: 80%;
        margin-top: -195px;
        padding: 20px 10px;
        border: #000000 solid 1px;
        border-radius: 30px 0px 30px 0px;
    }

    .information_photo img {
        width: 90%;
    }

    .information_body{
        width: 90%;
    }

    .information_body p {
        line-height: 1.1;
        font-size: 16px;
    }

    .information_type {
        padding: 1px 2px;
        margin: 0;
    }

    .information_title_top{
        font-size: 14px;
        gap: 8px;
    }

    .product_btns {
        padding-top: 30px;
        padding-bottom: 50px;
    }

    .product_btn01 {
        font-size: 14px;
        width: 120px;
        height: 30px;
        box-shadow: none;
    }

    /* Products.html */
    .product {
        padding-top: 120px;
        width: 95%;
    }

    .product_card_top{
        width: 95%;
    }

    .product_description p {
        font-weight: normal;
        line-height: 1;
        font-size: 14px;
    }

    .product_card {
        width: 100%;
    }

    .product_card img{
        width: 100%;
    }

    .product_all_wrapper {
        gap: 10px;
        padding-top: 30px;
    }

    .product_name {
        gap: 3px;
    }

    .product_name h2 {
        font-size: 20px;
    }

    .product_name p {
        font-size: 16px;
    }

    .product_btns {
        padding-top: 80px;
        padding-bottom: 100px;
    }

    .product_btn02 {
        font-size: 14px;
        width: 130px;
        height: 27px;
        box-shadow: none;
    }

    .product_btns{
        gap: 20px;
    }

    .product_description_white p{
        font-size: 14px;
        font-weight: normal;
    }

    /* each_product */
    .each_main{
        padding-top: 120px;
    }

    .each_header{
        padding-left: 3px;
        margin-bottom: 20px;
    }

    .each_title{
        font-size:26px;
        font-weight: 500
    }

    .each_title_right{
        display: flex;
        gap: 3px;
        padding-left: 8px;
    }

    .each_header_detail {
        font-size: 16px;
    }

    .each_hz{
        padding-right: 2px;
        padding-left: 2px;
    }

    .each_bombas_photo img{
        width: 100%;
    }

    .each_section_title{
        gap: 7px;
    }

    .each_line{
        width: 40px;
    }

    .each_title_text {
        font-size: 16px;
        letter-spacing: -3%;
        line-height: 1;
    }

    .applications_list li {
        padding-left: 15px;
        font-size: 16px;
        line-height: 1.2;
        padding-bottom: 10px;
        font-weight: normal;
    }

    .applications_list li::before {
        transform: translateY(-30%);
    }

    .applications_list_photo {
        padding-top: 0px;
    }

    .specifications {
        padding-top: 20px;
    }

    .spec_table {
        width: 100%;
        margin-top: 10px;
    }

    .spec_table_header th {
        font-size: 16px;
        font-weight: normal;
    }

    .spec_table th{
        border: 0.8px solid #000000;
        padding: 3px 5px;
        font-size: 15px;
        font-weight: normal;
        line-height: 1;
    }

    .spec_table td {
        border: 0.8px solid #000000;
        padding: 5px;
        font-size: 14px;
        font-weight: normal;
        line-height: 1;
    }

    .peformance_specs, .peformance_curve {
        padding-top: 20px;
    }

    .specs_info{
        flex-direction: column;
    }

    .spexs_info_left,.spexs_info_right{
        padding: 0px;
        width: 100%;
    }

    .specs_info p {
        font-size: 11px;
        line-height: 1;
    }

    .product_btn03 {
        width: 180px;
        height: 38px;
        text-align: center;
        line-height: 1;
        box-shadow: none;
        font-size: 14px;
    }

    .product_btn04 {
        height: 38px;
        text-align: center;
        line-height: 1;
        width: 180px;
        box-shadow: none;
        font-size: 14px;
    }

    .product_btns{
        gap: 10px;
        padding-bottom: 20px;
        padding-top: 50px;
    }

    .tab-switch label {
        padding: 0.3em 0.3em;
        font-size: 14px;
        line-height: 1;
        font-weight: normal;
    }

    .spec-table th, .spec-table td {
        font-size: 14px;
        text-align: center;
        line-height: 1;
        padding: 4px;
    }

    td.group-cell{
        padding: 0px;
    }

    .peformance_curve_photo_BD{
        width: 80%;
    }

    .peformance_curve_photo_HDG{
        width: 80%;
    }

    .peformance_curve_photo_LA {
        width: 80%;
    }

    .footer_top h2{
        font-size: 18px;
        font-weight: 500;
    }
}

@media screen and (max-width:400px){
    .product_GD{
        font-size: 12px;
    }

    .information_title01{
        font-size: 14px;
    }

    .whatsapp-btn-footer{
        padding-left: 10px;
    }

}

