*{
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

.header{
    display: flex;
    height: 70px;
    background-color: rgb(236, 235, 235);
    align-items:center;
    
}

.header_CompanyLogo{
    align-items:center;
    display: flex;
    gap: 15px;
    font-size: 30px;
}

.header_button{
       display: inline-block;
    background-color: rgb(8, 79, 150);
    color: #fff;
    text-decoration: none;
    padding: 10px 20px;
    border-radius: 10px;
    margin-right: 20px;
    border: 1.5px solid rgb(8, 79, 150)
}

.header_button:hover{
    background-color:#fff;
    color:rgb(8, 79, 150);
    border: 1.5px solid rgb(8, 79, 150);
}

.header_CompanyLogo img{
    align-items:center;
    display: flex;
    height: 60px;
    width: auto;
    margin-left: 20px;
}

.header_Menu{
    align-items:center;
    display: flex;
    margin-left: auto;
    gap:40px;
    margin-right: 40px;
    color: black;
    padding: 10px;
}

.header_Menu a {
    color: black;
    text-decoration: none;
    position: relative;
    padding-bottom: 5px;
}

.header_Menu a::after{
    content: '';
    position: absolute;
    width: 100%;
    height: 2px;
    background-color:rgb(8, 79, 150);

    transform-origin: center;
    transform: scaleX(0);
    transition: transform 0.3s;
}

.header_Menu a:hover::after{
    transform: scaleX(1);
}

.main{
    /*
    max-width:1100px;
    width: 90%;
    margin-left: auto;
    margin-right: auto;
    */
    display: flex;
    flex-direction: column;
    align-items: center;
    
}

.text{
     color:rgb(9, 67, 124);
     font-size: 1.25rem;
}

.text2{
     color:rgb(9, 67, 124);
     font-size: 1.25rem;
     font-weight: bold;
}

.container{
    display: flex;
    align-items: center;
    gap: 20px;
}

.Part1{
    display: flex;
    align-items: center;
    margin-top: 20px;
}

.Part1_L{
  flex: 1;
  order: 1;
}

.Part1-title{
    font-size:38px;
    letter-spacing: 0.15em;
    font-weight: bolder;
    margin-bottom: 10px;
    font-family: "corporate-logo", sans-serif;
}

.Part1_blue{
    font-size: 40px;
    color: rgb(8, 79, 150);
}

.Part1_green{
    font-size: 40px;
    color: green;
}

.Part1_R{
    flex: 1;
    order:2;
    display: flex;
    justify-content: flex-end;
    padding-right: 15%;
    margin-right: -40px;
}

/*
.Part1_R img{
    max-width: 100%;
    height: auto;
}
*/

.Part1_R img{
    float: right;
    max-width: none;
    width: 100%;
    margin-right: -110px;
}

.Part1_explain{
    margin-bottom: 30px;
}

.Part1_bottom{
    display: flex;
    gap: 20px;
    margin-top: 50px;
}

.Part1_button1{
    display: inline-block;
    background-color: rgb(8, 79, 150);
    color: #fff;
    text-decoration: none;
    padding: 10px 20px;
    border-radius: 10px;
    margin-right: 20px;
    border: 1.5px solid rgb(8, 79, 150)
  
}

.Part1_button1:hover{
    background-color:#fff;
    color:rgb(8, 79, 150);
    border: 1.5px solid rgb(8, 79, 150);
}

.Part1_button2{
    display: inline-block;
    background-color:#fff;
    color:green;
    text-decoration: none;
    border: 1.5px solid green;
    border-radius: 10px;
    padding: 10px 20px
}

.Part1_button2:hover{
    background-color:green;
    color:#fff;
}


.Part{
    display: flex;
    justify-content: center;
    gap: 30px;
    margin-top: 70px;
}


.Part p{
    width: fit-content;
    margin-left: auto;
    margin-right: auto;
    text-align: left;
}

.box{
    background-color: rgb(243, 240, 240);
    padding: 10px 10px;

    
}

.row{
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 20px;
}

.container2{
    background-color: green;
    color: white;

    width: 25px;
    height: 25px;
    border-radius: 50%;
    font-size: 15px;
    justify-content: center;

    display: flex;
    align-items: center;        /* ← 縦中央 */
    justify-content: center;    /* ← 横中央 */
}

.container2 span {
    transform: translate(0.3px, -0.03px); /*　右と縦にすらす */
}


.row{
    display:flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 20px;   
}

.Part2{
    display: flex;
    margin-top: 30px;
    gap: 30px;
    text-align: left;
}

.Part2 p{
    flex: 1;
}

.Part3{
    margin-top: 30px;
    display: flex;
    gap: 30px;
    text-align: left;
}

.Part3 p{
    flex: 1;
}

.Part4{
    margin-top: 30px;
    display: flex;
    gap: 30px;
    text-align: left;
    margin-right: 20px;
}

.Part4 p{
    flex: 1;
}


.Part5{
    margin-top: 30px;
    display: flex;
    gap: 120px;
    text-align: left;
}

.Part5 p{
    flex: 1;
}

.Part5-3{
    margin-left: 70px;
}

.underline{                             /*下線*/
    border-bottom: 1.35px solid blue;
    padding-bottom: 9px;
}

.footer{
    margin-top: 30px;
}


.footer_button{
    display: inline-block;
    background-color:#fff;
    color:green;
    text-decoration: none;
    border: 1.5px solid green;
    margin: 10px 0;
    border-radius: 10px;
    padding: 10px 20px
}

.footer_button:hover{
    background-color: green;
    color: #fff;
}

.footer-row {
    display: flex;
    justify-content: center; /* 横方向の中央揃え */
    align-items: center;      /* 縦方向の中央揃え ← これが重要 */
    color: white;
    background-color: rgb(4, 86, 44);
    gap: 20px;
}

.footer-row2{
    display: flex;
    justify-content: center;
    padding-top: 10px;
    padding-bottom: 10px;
    background-color: rgb(37, 67, 187);
    color: white
}
