@charset "utf-8";

.wrap{
  overflow: hidden;
}
body{
    background-color: #fff;
}

/* ----- section-kv ----- */
#top-kv{
        padding: 0;
        z-index: 10;
     width: 100%;
    }


.kv{
    position: relative;
}

.top-kv{
   width: 100%;
   height: calc(100vh - 140px);
   object-fit: cover;
   object-position: center;
   margin: 140px 0 0 0;
}
.kv-wrap{
    position: relative;
}


#top h1{
   font-weight: 600;
   font-size: 46px;
   line-height: 1.4;
   white-space: nowrap;
   color: #1d1d1d;

}
#top .catch-sub{
    display: block;
    font-size: 20px;
       font-weight: 500;
}
#top h1.kv01-h1{
	text-align: center;
	font-size: 38px;
}
img.kv-logo{
	width: 350px;
	display: inline-block!important;
}

.kv-lead{
   font-size: 16px;
   font-weight: 500;
}
.kv-item-name{
    font-size: 36px;
    color: #003F89;
    font-weight: 600;
    margin: -10px 0 0 0;
}
img.kv02-item-img{
   position: absolute;
   transform: translateY(-50%)translateX(-50%);
   top: 60%;
   left: 70%; 
}

img.kv03-item-img{
   position: absolute;
   transform: translateY(-50%)translateX(-50%);
   top: 60%;
   left: 70%; 
}
.catch-copy01{
   top: 40%;
   left: 50%;  
}
.catch-copy02{
   top: 40%;
   left: 30%;  
}
.catch-copy03{
   top: 50%;
   left: 30%;  
}
.catch-copy{
   position: absolute;
   transform: translateY(-50%)translateX(-50%);
   text-align: left;
}
.kv-attention{
	position: absolute;
	font-size: 12px;
	color: #fff;
	bottom: 10px;
	right: 10px;
}

@media screen and (max-width: 1120px) {
.catch-copy02{
   top: 40%;
   left: 50%;  
}

.catch-copy03{
   top: 40%;
   left: 50%;  
}
img.kv02-item-img{
   position: absolute;
   transform: translateY(-50%)translateX(-50%);
   top: 75%;
   left: 50%; 
}

img.kv03-item-img{
   position: absolute;
   transform: translateY(-50%)translateX(-50%);
   top:75%;
   left: 50%; 
}
}

@media screen and (max-width: 767px) {
.top-kv {
    height: 500px;
    margin: 60px 0 0 0;
}
#top h1{
   font-size: 30px;

}
#top h1.kv01-h1{
	font-size: 24px;
}
img.kv-logo{
	width:240px;
}
.kv-item-name {
    font-size: 24px;
    margin: -10px 0 0 0;
}
#top .catch-sub {
    font-size: 15px;
}
.kv-lead {
    font-size: 14px;
    white-space: nowrap;
}
.catch-copy02 {
    left: 50%;
}
img.kv02-item-img {
    width: 60%;
    top: 75%;
    left: 50%;
}
.catch-copy03 {
    top: 40%;
    left: 50%;
}
img.kv03-item-img {
    width: 60%;
    top: 75%;
    left: 50%;
}

}
/* ----- section-top-products ----- */
#top-products{
  padding: 100px 0 ;
  background-image: url(/wp-content/uploads/2024/12/top-bg01.webp);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
   }

#top h2 , #footer-contact h2 {
    font-size: 32px;
    line-height: 1.4;
    font-weight: 600;
    color: #1d1d1d;
    text-align: center;
}
.h2-en{
    font-size: 14px;
    color: #003F89;
    display: block;
    text-align: center;
    font-weight: 500;
}
#top-products ul{
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap:40px;
    margin: 50px 0 0 0;
}
#top-products li{
   width: 250px;
}
a.top-products-item{
   background-color: #fff;
   width: 100%;
   aspect-ratio: 1 / 1;
   display: inline-flex;
   justify-content: center;
   align-items: center;
}


a.top-product-name{
    font-size: 16px;
    font-weight: 500;
    color: #333;
    margin: 8px 0 0 0;
    display: inline-block;
}

.
@media screen and (max-width: 1120px) {

}

@media screen and (max-width: 600px) {
#top-products {
    padding: 50px 0;
}
#top h2 , #footer-contact h2 {
    font-size: 26px;
}
.h2-en{
    font-size: 12px;
}
#top-products ul {
    gap: 6%;
    row-gap: 30px;
    margin: 30px 0 0 0;
}
#top-products li {
    width: 47%;
}
img.top-product-img{
    width:80%;
}
a.top-product-name {
    font-size: 13px;
}
}


/* ----- section-top-news ----- */
#top-news{
  padding: 100px 0 ;

}
.top-news-inner{
    width: 100%;
    background-color: #fff;
    border-radius: 10px;
    padding: 70px;
}
#top-news ul{
    margin: 40px 0 0 0;

}
#top-news li{
    width: 100%;

    border-bottom: 1px solid #ccc;
    padding: 20px 10px;
}
a.top-news{
    display: flex;
    flex-wrap: wrap;
    text-align: left;
}
a.top-news-item{
    width: 100%;
}

a.top-news-item div{
    display: inline-flex;
}
.n-date{
    color:#003F89;
    width: 100px;
    display: inline-block;
}
.n-cat{
    color:#003F89;
    font-size: 14px;
    display: inline-block;
    width: 140px;
    border: 1px solid #003F89;
    text-align: center;
}
.n-title{
    color: #1d1d1d;
    font-weight: 500;
    margin: 0 0 0 20px;
}
a.button01{
    width: 260px;
    height: 50px;
    background-color: #003F89;
    color: #fff;
    display: inline-flex;
    justify-content: center;
    align-items: center;
    margin: 40px 0 0 0;
}
a.button01:hover{
  background-color: #02154A;
}
@media screen and (max-width: 1120px) {
.top-news-item div{
    width: 100%;
}
.n-title{
    width: 100%;
    margin: 10px 0 0 0;
    display: inline-block;
}
}

@media screen and (max-width: 600px) {
#top-news{
  padding: 50px 0 ;

}
#top-news ul{
    margin: 10px 0 0 0;

}


.n-date {
    width: 80px;
}
.n-cat{
    font-size: 12px;
    width: 120px;
    height: 21px;
    display: inline-block;
}
a.button01 {
    width: 220px;
    margin: 30px 0 0 0;
    height:40px;
    margin: 20px 0 0 0;
}
}

/* ----- section-footer-contact ----- */
#footer-contact{
  padding: 80px 0 ;
  background-color: #EDF7FF;
}
.footer-contact-wrap{
    display: flex;
    flex-wrap: wrap;

}
.footer-contact-left{
    text-align: left;
    width: 340px;
    margin: 0 180px 0 0;

}
.footer-contact-left p{
   text-align: center;
}
a.button02{
    width: 340px;
    height: 60px;
    background-color: #39A5E8;
    color: #fff;
    display: inline-flex;
    justify-content: center;
    align-items: center;
    margin: 30px 0 0 0;
}
a.button02:hover{
  background-color: #3D91C6;
}
img.banner01{
    width: 600px;
}


@media screen and (max-width: 1120px) {
.footer-contact-wrap{
    flex-direction: column-reverse;
}
.footer-contact-left {
    width: 100%;
    margin: 40px 0 0 0;
    text-align: center;
}
img.banner01{
    width: 100%;
    max-width: 500px;
}
a.button02{
    width: 260px;
    height: 50px;
    margin: 20px 0 0 0;
}
}

@media screen and (max-width: 600px) {
#footer-contact {
    padding: 40px 0;
}
}
/* ----- footer ----- */
footer{
    padding: 60px 0 ;
    background-color: #003F89;
}
a.f-menu-parent{
    color: #fff;
}

footer li{
    margin: 10px 0 0 0;
}
.footer-wrap{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    position: relative;
}
.footer-left{
    width: 300px;
    text-align: left;
    color: #fff;
}
.copyright{
    position: absolute;
    left: 0;
    bottom: 0;
    color: #fff;
    font-size: 12px;
}
.footer-right{
    display: flex;
    flex-wrap: wrap;
    text-align: left;
}
.footer-right01{
    display: flex;
    flex-wrap: wrap;
    padding: 0 20px;
    border-left: 1px solid #255B9B;
    border-right: 1px solid #255B9B;
}
.footer-right02, .footer-right03{
    padding: 0 20px;
    border-right: 1px solid #255B9B;
}
.f-menu-child-wrap{
    display: flex;
    flex-wrap: wrap;
}
.f-menu-child a{
    margin: 0 0 0 20px;
    font-size: 14px;
    color: #a5aac6;

}

@media screen and (max-width: 1120px) {
.copyright{
    bottom: -40px;
    left: 50%;
    transform: translateX(-50%);
    text-align: center;
    white-space: nowrap;
}
}
@media screen and (max-width: 600px) {
footer{
    padding: 40px 0 60px 0;
    background-color: #003F89;
}
.footer-right{
    margin: 20px 0 0 0;
}

.footer-right01{
    width: 100%;
    padding: 10px 10px 20px 10px;
    border-left: 0;
    border-right: 0;
    border-bottom: 1px solid #255B9B;
}
.footer-right02, .footer-right03{
    width: 50%;
    padding: 10px 10px 20px 10px;
    border-left: 0;
    border-right: 0;
    border-bottom: 1px solid #255B9B;
}
.copyright{
    bottom: -40px;
    left: 50%;
    transform: translateX(-50%);
    text-align: center;
    white-space: nowrap;
}
}