
.topics{
  display:block;
overflow: hidden;
  border: 1px solid #000066;
  border-radius: 8px;
  padding: 10px;
}
.topics img{
	width: 90px;
	margin: 0 10px 0 15px;
  float: right;
}
.topics dd{
  font-size: 14pt;
  font-weight: bold;

}
.topics p a{
  font-size: 10pt;
  color: #3784d7;
  float: left;
}
.topics h4{
  font-size: 14pt;
  color: #000066;
}

.t_title_box{
  display: block;
  overflow: hidden;
  margin: 0 10px 0 0;
  width: 31%;
  float: left;
}
.t_img_box{
  display: block;
  overflow: hidden;
  margin: 10px 10px;
  text-align: center;
  float: left;
  width: 31%;
}
.t_img_box img{
  width: 100%;
}
.t_img_box p{
font-size: 10pt;
clear: both;
}
nav.navbar li{
  font-family: sans-serif;
}


{
  color: red;
}
.mt-3{
    margin: 30px 0 0 0;
}
.mt-5{
    margin: 50px 0 0 0;
}
.head_logo img{
    width: 230px;
    margin: -15px 0 0 0;
}
.icon_menu {
    display: block;
    overflow: hidden;
    border: solid 1px #000066;
    border-radius: 10px;
    text-align: center;
    padding: 20px;
    margin: 0 0 20px 0;
  }

  .icon_menu dd {
    font-size: 18pt;
    margin: 0 0 10px 0;
    color: #484741;
  }

  .icon_menu i {
    font-size: 48pt;
    margin: 0 0 10px 0;
    color: #285294;
  }

  .icon_menu p {
    font-size: 11pt;
    color: #484741;
    text-align: left;
    font-family: 'Noto Serif JP', serif;
    font-weight: 500;
  }
  .text-bk{
    color: #fbef05;
  }
.cution{
  font-size: 12pt;
  color: #fff;
}

  .about {
    margin: 50px 0;
  }
  .about_top h2,.pro_top h2,.tech_top h2{
    font-size: 28pt;

  }
  .infomation h2{
    font-size: 28pt;
    text-align: center;
  }
  .infomation p{
    font-size: 12pt;
  }
  .infomation dd{
    display: inline-block;
    font-size: 16pt;
    border-bottom: 2px solid #f22c2c;
    margin: 10px 0;
  }
  .info_ph_box {
    margin: 20px 0 10px 0;
  }

  .info_ph_box img {
    width: 100%;
    border-radius: 8px;
  }

  iframe {
    width: 100%;
    aspect-ratio: 16/9; 
    //アスペクト比（縦横比）を指定
  }

  .about dl,
  .products dl {
    border-left: 12px solid #285294;
    font-size: 22pt;
    padding: 0 0 0 8px;
    margin: 40px 0 10px 0;
  }


.about dl,.mail dl{
    font-size: 22pt;
    margin: 20px 0;
}
.about_top,.tech_top,.pro_top{
    display: block;
    overflow: hidden;
    background-attachment: fixed;
    background-size: cover;
    background-position: center;
    height: 45vh;
    text-align: center;
    padding: 50px 0 0 0;
    margin: 0 0 50px 0;
  }
  .sdgs_top{
    display: block;
    overflow: hidden;
    background-attachment: fixed;
    background-size: cover;
    background-position: center;
    height: 40vh;
    text-align: center;
    padding: 50px 0 0 0;
    margin: 0 0 50px 0;
  }
  .ceo {
    text-align: right;
    padding: 0 10% 0 0;
    margin: 0;
  }

  .ceo img {
    width: 25%;
  }
  .mail_top{
    display: block;
    overflow: hidden;
    background-attachment: fixed;
    background-size: cover;
    background-position: center;
    height: 25vh;
    text-align: center;
    padding: 30px 0 0 0;
    margin: -80px 0 50px 0;
  }
.mail_top h2,.privacy h2{
color: #000;
font-size: 26pt;
  }
  .sdgs_top h2{
    font-size: 32pt;
    color:#fff;
    text-shadow:2px 2px 0 #000, -2px -2px 0 #000,
    -2px 2px 0 #000, 2px -2px 0 #000,
    0px 2px 0 #000,  0 -2px 0 #000,
    -2px 0 0 #000, 2px 0 0 #000;
  }
  .sdgs_top img{
    width: 550px;
    margin: 10px;
  }
  .sdgs_box{
    display: block;
    overflow: hidden;
  }
  .sdgs_box p{
    font-size: 14pt;
  }
  .sdgs_box{
margin: 0 0 30px 0;
  }
  .sdgs_box a{
    color: #3784d7;
  }
  .sdgs_left{
    display: block;
    overflow: hidden;
    float: left;
    width: 50%;
  }
  .sdgs_right{
    display: block;
    overflow: hidden;
    float: right;
    width: 50%;
    margin: 0 0 50px 0;
  }
  .sdgs_left p{
    font-size: 14pt;
  }
  .mail_top p{
    color: #000;
    font-family: 'Noto Serif JP', serif;
    font-size: 14pt;
    font-weight: 500;
    text-align: left;
    padding: 10px 10% 0 10%;
  }
  .mail_top h2,.mail_top p,.privacy h2{
    text-shadow:
    3px 3px 3px #fff, -3px -3px 3px #fff,
     -3px 3px 3px #fff,  3px -3px 3px #fff,
    3px 0px 3px #fff, -3px -0px 3px #fff,
    0px 3px 3px #fff,  0px -3px 3px #fff;
  }
  .about_top{
    background-image: url(../img/titleback_5.jpg);
  }
  .tech_top{
    background-image: url(../img/testimonial_bg_1.jpg); 
  }
  .pro_top{
    background-image: url(../img/titleback_4.jpg); 
  }
  .mail_top{
    background-image: url(../img/bg_mail.jpg); 
  }
  .sdgs_top{
    background-image: url(../img/sdgs_back.gif); 
  }
  .privacy{
    background-attachment: fixed;
    background-size: cover;
    background-position: center;
    height: 10vh;
    text-align: center;
    padding: 30px 0 0 0;
    margin: -80px 0 50px 0;
    background-image: url(../img/testimonial_bg.jpg); 
  }
  .about_top h2,.tech_top h2,.pro_top h2{
    font-size: 32pt;
    color: #000000;
    margin: 0 0 10px 0;
  }

  .about_top p,.products .pro_top p,.tech_top p{
    color: #000000;
    font-family: 'Noto Serif JP', serif;
    font-size: 16pt;
    line-height: 32pt;
    font-weight: 500;
    text-align: left;
    padding: 10px 10% 0 10%;
  }

.products_id{
    display: block;
    overflow: hidden;
    margin: 10px 0 20px 0;
}
.products p{
font-size: 12pt;
margin: 0 0 0 10px;
}


.pro_box{
    display: block;
    overflow: hidden;
    border: solid 1px #888;
    border-radius: 8px;
    margin: 0 0 30px 0;
}
.pro_box img{
    width: 100%;
}

#tech dd{
  font-size: 21pt;
  border-bottom: solid 3px #285294;
}
.tech_box_l{
float: left;
width: 50%;
}
.tech_box_l p{
  font-size: 12pt;
  margin: 10px 5px 0 0;
  }
.tech_box_l li{
font-size: 10pt;
list-style: none;
margin: 10px 0 0 -20px;
}
.tech_box_r{
  width: 50%;
  float: right;
}

.tech_box_r img,.key_box img{
  width: 100%;
  border: solid 1px #888;
  border-radius: 8px;
  margin: 10px 10px 0 5px;
}
.kensa{
  display: block;
  overflow: hidden;
  width: 50%;
  float: left;
  padding: 5px;
  text-align: center;
}
.kensa img{
  width: 100%;
  padding: 5px;
  border: none;
}
.mail_title dd{
font-size: 18pt;
background-color:#285294;
padding: 10px;
margin: 10px 0;
border-radius: 8px;
color: #fff;
}

.foot_info img{
    width: 350px;
}
.foot_info h5.widget-title {
    border-bottom: 1px solid #fff;
}
.foot_info li{
    font-size: 10pt;
    color: #fff;
    margin: 10px 0 10px -10px;
    list-style: none;
}

.foot_info li a{
color: #B8E2F9;
}
.foot_info li a:hover{
    color: #FBE000;
}
.smsize{
  display: none;
}

@media screen and (max-width:767px){
  p{
    font-size: 11pt !important;
  }
  .head_logo img{
      width: 200px;
  }  
  .about_top{
    height: 85vh; 
  }
  .tech_top,.pro_top{
    height: 75vh;
  }
  .about_top p,.tech_top p,.pro_top p{
    font-size: 11pt !important;
    line-height: 24px !important;
  }
  .ceo img{
    width: 40%;
  }
  .products_id dl{
    font-size: 18pt !important;
}
  .foot_info h5{
    margin: 30px 0 10px 0;
  }
  p.copyright{
    font-size: 7pt !important;
  }
 .sdgs_top{
    height: 50vh;
  }
  .sdgs_top h2{
    font-size: 18pt;
  }
  .sdgs_top img{
    width: 350px;
  }
  .sdgs_box{
padding: 10px;
  }
  .sdgs_box h2{
    font-size: 12pt;
  }
  .smsize{
    display: block;
  }
  #tech dd{
    font-size: 16pt;
    margin: 0 0 0 10px;
  }
  .tech_box_l p{
    font-size: 12pt;
    margin: 10px 5px 0 10px;
    }
  .tech_box_l li{
  font-size: 10pt;
  }
  .t_title_box{
    width: 100%;
  }
  .t_img_box{
    width: 47%;
  }
}