@charset "utf-8";

/*------reset-------*/
*,*::before,*::after{
box-sizing:border-box;
}
html,body,header,footer,main,menu,nav,article,section,aside,address,div,h1,h2,h3,h4,h5,h6,p,span,strong,em,b,i,a,hr,ul,ol,li,dl,dt,dd,figure,figcaption,img,form,fieldset,input,textarea,checkbox,label,select,button,iframe{
margin:0;
padding:0;
border:0;
outline:0;
vertical-align:baseline;
}
ul,ol,li{
list-style:none;
}
html:focus-within{
scroll-behavior:smooth;
}
body{
min-height:100vh;
text-rendering:optimizeSpeed;
line-height:1.5;
}
a:not([class]){
text-decoration-skip-ink:auto;
}
img,picture{
max-width:100%;
display:block;
}
iframe{
display:block;
}
input,button,textarea,select{
font:inherit;
}
table{
border-collapse:collapse;
}
a{
text-decoration:none;
}
address{
font-style:normal;
}
em,i{
font-style:italic;
}
strong{
font-weight:700;
}


/*
@media(prefers-reduced-motion:reduce){
  html:focus-within{
  scroll-behavior:auto;
  }
  *,*::before,*::after{
  animation-duration:.01ms !important;
  animation-iteration-count:1 !important;
  transition-duration:.01ms !important;
  scroll-behavior:auto !important;
  }
}
body,h1,h2,h3,h4,p,figure,blockquote,dl,dd{
margin:0;
}
img{
border:0;
line-height:0;
vertical-align:top;
}
::before,
::after{
content:'';
content:none;
}
*/

/*------common-------*/
html{
}
body{
width:100%;
background:#fff;
text-align:center;
line-height:1.75;
letter-spacing:0.1em;
font-family:'Noto Sans JP',sans-serif;
color:#000;
font-weight:300;
}
/*Noto Sans JP
.weight100{font-weight:100;}thin
.weight200{font-weight:100;}ExtraLight
.weight300{font-weight:300;}Light ★base
.weight400{font-weight:400;}Regular
.weight500{font-weight:500;}Medium ★medium
.weight600{font-weight:600;}SemiBold　
.weight700{font-weight:700;}bold ★semibold
.weight800{font-weight:800;}extrabold
.weight900{font-weight:900;}black
*/
h1,h2,h3,h4,h5,h6{
font-weight:700;
}
h1,h2,h3,h4{
margin:-0.25em 0;
line-height:1.5;
}
input,select,button,textarea{
font-family:inherit;
}
a{
color:#000;
}
a,
a::before,
a::after{
transition:all .3s ease;
}
a:hover{
opacity:0.7;
}
a[href^="tel:"]{
pointer-events:none;
}
@media screen and (max-width:767px){
  a[href^="tel:"]{
  pointer-events:auto;
  }
}
img{
/*max-width:100%;*/
width:100%;
}
/*
hr{
margin:1em 0;
border-bottom:1px #999 solid;
}
.wow {
  animation-fill-mode: forwards;
}
*/
.tl{text-align:left;}
.tc{text-align:center;}
.tr{text-align:right;}
.block{display:block;}
.m_0{margin:0;}
.mt_0{margin-top:0;}
.mb_0{margin-bottom:0;}
.ml_0{margin-left:0;}
.mr_0{margin-right:0;}

/*------switch-------*/
@media screen and (min-width:768px){
  .pc{
  display:inline-block !important;
  }
  .sp{
  display:none !important;
  }
}
@media screen and (max-width:767px){
  .pc{
  display:none !important;
  }
  .sp{
  display:inline-block !important;
  }
}

/*------fontSize-------*/
@media screen and (min-width:768px){
  body,h1,h2,h3,h4,h5,h6,input,select,button,textarea{
  font-size:calc(100vw / (1400 / 16));
  }
}
@media screen and (max-width:767px){
  body,h1,h2,h3,h4,h5,h6,input,select,button,textarea{
  font-size:calc(100vw / (750 / 24));
  }
}

/*------layout------*/
/*memo
pc-design:1400px / 1000px(71.42857=71.4%)
sp-design:750px / 680px(90.66666%=90%)
*/
#container{
display:flex;
flex-flow:column;
min-height:100vh;
width:100%;
}
header,
footer,
main,
aside{
width:100%;
text-align:left;
}
main{
flex:1;
}
#header{
width:100%;
}
.inner{
width:calc(100vw / (1400 / 1000));
margin:0 auto;
}
@media screen and (max-width:767px){
  .inner{
  width:calc(100vw / (750 / 680));
  }
}
#pagetop,
#footer{
width:calc(100vw / (1400 / 1000));
margin:0 auto;
}
@media screen and (max-width:767px){
  #pagetop,
  #footer{
  width:100%;
  }
}



/*------header------*/
header{
/*
position:sticky;
*/
position:relative;
top:0;
left:0;
z-index:100;
}
@media screen and (min-width:768px){
  #header{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  width:calc(100vw / (1400 / 1000));
  height:calc(100vw / (1400 / 100));
  margin:0 auto;
  }
  header .sitename{
  margin-top:calc(100vw / (1400 / 35));
  width:calc(100vw / (1400 / 200));
  }
  header .hnav{
  margin-top:calc(100vw / (1400 / 50));
  }
  header .nav{
  display:flex;
  align-items:flex-start;
  }
  header .nav li{
  display:flex;
  align-items:flex-start;
  }
  header .nav a{
  display:flex;
  align-items:center;
  justify-content:center;
  width:calc(100vw / (1400 / 100));
  height:calc(100vw / (1400 / 30));
  margin:0 calc(100vw / (1400 / 10));
  border-radius:calc(100vw / (1400 / 15));
  background:transparent;
  font-size:calc(100vw / (1400 / 14));
  line-height:1.5;
  font-weight:500;
  color:#231815;
  white-space:nowrap;
  }
  .product header .nav a[href^="/product"],
  .qualitycontrol header .nav a[href^="/qualitycontrol"],
  .aboutus header .nav a[href^="/aboutus"],
  .news header .nav a[href^="/news"],
  .inquiry header .nav a[href^="/inquiry"],
  .recruit header .nav a[href^="/recruit"],
  header .nav a:hover{
  background:#008cd2;
  color:#ffffff;
  opacity:1;
  }
  header .nav li:nth-of-type(5) a{
  width:calc(100vw / (1400 / 120));
  border:1px #000000 solid;
  }
  header .nav li:nth-of-type(5) a:hover{
  border:1px #ffffff solid;
  }
  header .nav_sub{
  display:none;
  }
}
@media screen and (max-width:767px){
  header{
  position:fixed;
  }
  #header{
  }
  header .sitename{
  position:relative;
  display:flex;
  align-items:center;
  width:100vw;
  height:calc(100vw / (750 / 120));
  padding:0 calc(100vw / (750 / 35));
  background: #ffffff;
  z-index:2;
  }
  header .sitename img{
  width:calc(100vw / (750 / 360));
  }
  header .hnav{
  display:block;
  z-index:1;
  }
  header .nav{
  display:flex;
  flex-wrap:wrap;
  }
  header .nav_sub{
  margin-top:-1px;
  background:#ffffff;
  }
  header .nav li{
  width:100%;
  }
  header .nav>li>a{
  border-bottom:1px #ffffff solid;
  }
  header .nav_sub li + li a{
  border-top:1px #cce8f6 solid;
  }
  header .nav a{
  position:relative;
  display:flex;
  align-items:center;
  width:90%;
  height:calc(100vw / (750 / 100));
  margin:0 5%;
  font-size:calc(100vw / (750 / 28));
  line-height:1.2;
  letter-spacing:0.2em;
  font-weight:500;
  color:#008cd2;
  }
  header .nav_sub a{
  height:calc(100vw / (750 / 80));
  padding-left:1em;
  font-size:calc(100vw / (750 / 21));
  letter-spacing:0.1em;
  color:#333333;
  }
  header .nav a::before{
  position:absolute;
  right:0;
  top:50%;
  display:block;
  content:'';
  width:calc(100vw / (750 / 40));
  height:calc(100vw / (750 / 40));
  border-radius:50%;
  border:1px #008cd2 solid;
  background:#ffffff;
  transform: translateY(-50%);
  }
  header .nav .nav_accordion>a::before{
  border:none;
  }
  header .nav_sub a::before{
  right:calc(100vw / (750 / 5));
  width:calc(100vw / (750 / 30));
  height:calc(100vw / (750 / 30));
  }
  header .nav a::after{
  position:absolute;
  right:calc(100vw / (750 / 20));
  top:50%;
  display:block;
  content:'';
  width:0.5em;
  height:0.5em;
  border-right:1px solid #008cd2;
  border-top:1px solid #008cd2;
  transform:translateY(-50%) translateX(40%) rotate(45deg);/*右*/
  }
  header .nav .nav_accordion>a::after{
  transform:translateY(-75%) translateX(50%) rotate(135deg);/*下*/
  }
  header .nav .nav_accordion>a.is-open::after{
  transform:translateY(-25%) translateX(50%) rotate(-45deg);/*上*/
  }
  header .nav_sub a::after{
  width:0.38em;
  height:0.38em;
  transform:translateY(-50%) translateX(40%) rotate(45deg);/*右*/
  }
  header .nav>li:nth-of-type(5){
  order:6;
  }
  header .nav>li:nth-of-type(6){
  order:5;
  }
  header .nav>li:nth-of-type(5) a::before,
  header .nav>li:nth-of-type(5) a::after{
  display:none;
  }
  header .nav>li:nth-of-type(5) a{
  justify-content:center;
  width:calc(100vw / (750 / 240));
  height:calc(100vw / (750 / 60));
  margin:calc(100vw / (750 / 20)) auto;
  padding:0;
  border:1px solid #008cd2;
  border-radius:calc(100vw / (750 / 30));
  background:#ffffff;
  letter-spacing:0.1em;
  font-weight:500;
  }
  header .nav_accordion{
  position:relative;
  }
  header .nav_accordion i{
  position:absolute;
  right:0;
  top:0;
  display:block;
  width:calc(100vw / (750 / 120));
  height:calc(100vw / (750 / 100));
  }
  header .nav_sub{
  display:none;
  }
  header .is-open .nav_sub{
  display:block;
  }
}

/*------headerMenuButton------*/
@media screen and (min-width:768px){
  .menu_btn,
  .menu_ico{
  display:none;
  }
}
@media screen and (max-width:767px){
  .menu_btn{
  display:none;
  }
  .menu_ico{
  position:fixed;
  top:0;
  right:0;
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  justify-content:center;
  width:calc(100vw / (750 / 120));
  height:calc(100vw / (750 / 120));
  padding:0.5em 0;
  transition:all 0.3s;
  z-index:2;
  cursor:pointer;
  font-size:calc(100vw / (750 / 21));
  font-style:normal;
  font-weight:700;
  line-height:1;
  color:#231815;
  }
  .menu_ico i{
  position:relative;
  margin-top:1em;
  }
  .menu_ico i::before,
  .menu_ico i::after{
  content:'';
  position:absolute;
  top:0;
  left:0;
  }
  .menu_ico i,
  .menu_ico i::before,
  .menu_ico i::after{
  display:block;
  width:calc(100vw / (750 / 70));
  height:calc(100vw / (750 / 2));
  background:#000;
  cursor:pointer;
  transition:all 0.3s;
  }
  .menu_ico::after{
  content: 'MENU';
  }
  header input[type="checkbox"]:checked~.menu_ico::after{
  content: 'CLOSE';
  }
  .menu_ico i::before{
  margin-top:calc(100vw / (750 / -18));
  }
  .menu_ico i::after{
  margin-top:calc(100vw / (750 / 18));
  }
  header input[type="checkbox"]:checked~.menu_ico{
  background:#cce8f6;
  }
  header input[type="checkbox"]:checked~.menu_ico i{
  background:transparent;
  }
  header input[type="checkbox"]:checked~.menu_ico i::before,
  header input[type="checkbox"]:checked~.menu_ico i::after{
  margin-top:0;
  }
  header input[type="checkbox"]:checked~.menu_ico i::before{
  transform:rotate(30deg);
  }
  header input[type="checkbox"]:checked~.menu_ico i::after{
  transform:rotate(-30deg);
  }
  .hnav{
  position:fixed;
  left:0;
  top:0;
  width:100%;
  height:100vh;
  padding:calc(100vw / (750 / 120)) 0 1em;
  background:#cce8f6;
  transform:translateX(100%);
  transition:transform 0.5s ease-in-out;
  z-index:1;
  }
  header input[type="checkbox"]:checked~.hnav{
  transform:translateY(0);
  }
}

/*------headerFixed------
header.fixed #header{
height:calc(100vw / (1400 / 80));
padding-top:0;
padding-bottom:0;
background:#fff;
transition:all 0.5s 0.5s ease-in-out;
}
header.fixed .name{
display:none;
}
header.fixed .logo img{
opacity:0;
}
header.fixed .logo{
background:url(../img/logo_realsoft_blue.svg) no-repeat center / calc(100vw / (1400 / 50));
}
@media screen and (min-width:768px){
  header.fixed .hnav{
  flex-direction:row;
  align-items:center;
  }
  header.fixed .nav01{
  margin-right:calc(100vw / (1400 / 20));
  }
  header.fixed [class^="nav"] a{
  font-size:calc(100vw / (1400 / 13));
  }
  header.fixed .nav01 a{
  color:#0058BB;
  }
  header.fixed .nav02 li:nth-of-type(1) a,
  header.fixed .nav02 li:nth-of-type(2) a{
  border:1px #0058BB solid;
  color:#0058BB;
  }
}
@media screen and (max-width:767px){
  header.fixed #header{
  height:calc(100vw / (750 / 100));
  }
  header.fixed .logo{
  background:url(../img/logo_realsoft_blue_sp.svg) no-repeat center / calc(100vw / (750 / 50));
  }
  header.fixed .menu_ico i,
  header.fixed .menu_ico i::before,
  header.fixed .menu_ico i::after{
  background:#0058BB;
  }
}
*/


/*------pagetop-------*/
footer{
position:relative;
}
.pagetop{
z-index:11;
display:block;
position:absolute;
top:calc(100vw / (1400 / -50));
bottom:auto;
right:calc(50% - (100vw / (1400 / 600)));
width:calc(100vw / (1400 / 100));
height:calc(100vw / (1400 / 100));
transform:translateY(0) translateX(50%);
}
.pagetop.fixed{
position:fixed;
top:auto;
bottom:calc(100vw / (1400 / 20));
}
.pagetop a{
position:relative;
display:block;
width:100%;
height:100%;
border-radius:50%;
overflow:hidden;
text-indent:-100vw;
background:rgba(0,0,0,0.5);
}
.pagetop a::after{
position:absolute;
left:50%;
top:50%;
display:block;
content:'';
width:28%;
height:28%;
border-width:calc(100vw / (1400 / 3)) calc(100vw / (1400 / 3)) 0 0;
border-color:#ffffff;
border-style:solid;
transform:rotate(-45deg) translateX(-20%) translateY(-50%);
vertical-align:middle;
}
@media screen and (max-width:767px){
  .pagetop{
  top:calc(100vw / (750 / -50));
  right:calc(50% - (100vw / (750 / 300)));
  width:calc(100vw / (750 / 100));
  height:calc(100vw / (750 / 100));
  }
  .pagetop.fixed{
  bottom:calc(100vw / (750 / 30));
  }
  .pagetop a::after{
  border-width:calc(100vw / (750 / 3)) calc(100vw / (750 / 3)) 0 0;
  }
}



/*------footer-------*/
footer{
background:#f2f9fd;
}
@media screen and (min-width:768px){
  footer{
  padding:calc(100vw / (1400 / 100)) 0 calc(100vw / (1400 / 50));
  }
  .f_address{
  width:36%;
  float:left;
  }
  .f_address .address_logo{
  width:calc(100vw / (1400 / 260));
  }
  .f_address .address_name{
  margin-top:calc(100vw / (1400 / 25));
  font-size:calc(100vw / (1400 / 16));
  line-height:1;
  font-weight:700;
  }
  .f_address .address_add{
  margin-top:calc(100vw / (1400 / 10));
  font-size:calc(100vw / (1400 / 14));
  line-height:1.5;
  }
  .f_inquiry{
  width:36%;
  float:left;
  }
  .f_inquiry .inquiry_txt{
  margin-top:calc(100vw / (1400 / 10));
  font-size:calc(100vw / (1400 / 12));
  line-height:1.5;
  }
  .f_inquiry .inquiry_link{
  margin-top:calc(100vw / (1400 / 15));
  }
  .f_inquiry .inquiry_link a{
  display:block;
  width:calc(100vw / (1400 / 120));
  height:calc(100vw / (1400 / 30));
  border:1px #008cd2 solid;
  border-radius:calc(100vw / (1400 / 15));
  background:transparent;
  text-align:center;
  font-size:calc(100vw / (1400 / 14));
  line-height:1.9;
  color:#008cd2;
  }
  .f_inquiry .inquiry_link a:hover{
  background:#008cd2;
  color:#ffffff;
  opacity:1;
  }
  .f_nav{
  display:flex;
  width:64%;
  float:right;
  }
  .f_nav > ul{
  margin-top:-1em;
  }
  .f_nav [class^="nav"] a{
  font-size:calc(100vw / (1400 / 14));
  line-height:2.5;
  }
  .f_nav [class^="nav"] > li > a{
  }
  .f_nav :not(.nav_sub) > li > a{
  font-weight:700;
  }
  .f_nav [class^="nav"] ul a::before{
  display:inline-block;
  content:'';
  width:0.35em;
  height:0.35em;
  margin-top:-0.3em;
  margin-right:0.5em;
  border-right:1px #000000 solid;
  border-top:1px #000000 solid;
  transform:rotate(45deg);
  vertical-align:middle;
  }
  .f_nav .nav01{
  width:40.625%;
  }
  .f_nav .nav02{
  width:32.8125%;
  }
  .f_nav .nav03{
  width:26.5625%;
  }
  .f_end{
  clear:both;
  display:flex;
  justify-content:space-between;
  padding-top:calc(100vw / (1400 / 100));
  }
  .f_end .endnav .nav{
  display:flex;
  }
  .f_end .endnav li{
  position:relative;
  line-height:1;
  font-size:calc(100vw / (1400 / 12));
  }
  .f_end .endnav li+li::before{
  content: '';
  position: absolute;
  left:0;
  top:0;
  display:block;
  width:1px;
  height:1em;
  background:#000000;
  }
  .f_end .endnav a{
  padding:0 0.5em;
  line-height:1;
  }
  .f_end .copyright{
  font-size:calc(100vw / (1400 / 12));
  line-height:1;
  }
}
@media screen and (max-width:767px){
  footer{
  text-align:center;
  }
  #footer{
  display:flex;
  flex-direction:column;
  }
  .f_contact{order:1;}
  .f_nav{order:2;}
  .f_address{order:3;}
  .f_end{order:4;}
  .f_author{
  width:36%;
  float:left;
  }
  .f_address .address_logo{
  display:none;
  }
  .f_address .address_name{
  margin-top:calc(100vw / (750 / 100));
  font-size:calc(100vw / (750 / 28));
  line-height:1;
  font-weight:700;
  }
  .f_address .address_add{
  margin-top:calc(100vw / (750 / 20));
  font-size:calc(100vw / (750 / 18));
  line-height:1;
  }
  .f_inquiry{
  display:flex;
  flex-direction:column;
  padding:calc(100vw / (750 / 50)) 0 calc(100vw / (750 / 40));
  background:#cce8f6;
  }
  .f_inquiry .inquiry_txt{
  order:2;
  margin-top:calc(100vw / (750 / 20));
  font-size:calc(100vw / (750 / 21));
  line-height:1.7;
  }
  .f_inquiry .inquiry_link{
  order:1;
  margin-top:calc(100vw / (1400 / 15));
  }
  .f_inquiry .inquiry_link a{
  display:block;
  width:calc(100vw / (750 / 240));
  height: calc(100vw / (750 / 60));
  margin:0 auto;
  border:1px #008cd2 solid;
  border-radius:calc(100vw / (750 / 30));
  background:#ffffff;
  text-align:center;
  font-size:calc(100vw / (750 / 28));
  line-height:1.7;
  font-weight:500;
  color:#008cd2;
  }
  .f_inquiry .inquiry_link a:hover{
  background:#008cd2;
  color:#ffffff;
  opacity:1;
  }
  .f_nav{
  display:flex;
  flex-direction:column;
  margin-top:calc(100vw / (750 / 100));
  font-size:calc(100vw / (750 / 28));
  }
  .f_nav a{
  line-height:3;
  font-weight:500;
  }
  .f_nav .nav_sub{
  display:none;
  }
  .f_end{
  margin:calc(100vw / (750 / 60)) 0;
  }
  .f_end .endnav .nav{
  display:none;
  }
  .f_end .copyright{
  font-size:calc(100vw / (750 / 18));
  line-height:1;
  }
}



/*------contents-------*/
.contents{
padding-bottom:calc(100vw / (1400 / 150));
}
@media screen and (max-width:767px){
  .contents{
  padding-bottom:calc(100vw / (750 / 100));
  }
}



/*------Index:mainVsual------*/
.mv{
margin-top:calc(100vw / (1400 / -50));
}
.mv .box_mv{
display:flex;
background:#ffffff;
}
.mv .box_txt{
position:relative;
display:flex;
flex-direction:column;
justify-content:center;
width:calc(100vw / (1400 / 420));
}
.mv .ttl{
width:120%;
margin-right:-20%;
padding-bottom:0;
font-size:calc(100vw / (1400 / 36));
}
.mv .txt{
width:calc(100vw / (1400 / 370));
margin-top:calc(100vw / (1400 / 20));
font-size:calc(100vw / (1400 / 14));
font-weight:700;
}
.mv .box_img{
width:calc(100vw / (1400 / 580));
}
@media screen and (max-width:767px){
  .mv{
  margin-top:calc(100vw / (750 / 120));
  }
  .mv .box_mv{
  flex-direction:column;
  align-items:center;
  }
  .mv .box_txt{
  order:2;
  width:calc(100vw / (750 / 640));
  }
  .mv .ttl{
  width:calc(100vw / (750 / 690));
  margin-top:calc(100vw / (750 / 20));
  margin-right:calc(100vw / (750 / -50));
  font-size:calc(100vw / (750 / 54));
  }
  .mv .ttl.fix{
  letter-spacing:0;
  }
  .mv .txt{
  width:calc(100vw / (750 / 570));
  margin-top:calc(100vw / (750 / 20));
  font-size:calc(100vw / (750 / 21));
  }
  .mv .box_img{
  order:1;
  width:calc(100vw / (750 / 580));
  }
}



/*------IndexSection------*/
[id^="index_sct"]{
margin-top:calc(100vw / (1400 / 60));
}
[id^="index_sct"]::after{
content:'';
display:block;
clear:both;
}
[id^="index_sct"] .ttl_eng{
height:calc(100vw / (1400 / 60));
border-top:1px #000000 solid;
font-size:calc(100vw / (1400 / 14));
font-weight:700;
}
[id^="index_sct"] .box_txt{
float:left;
width:calc(100vw / (1400 / 320));
}
[id^="index_sct"] .ttl{
padding-bottom:calc(100vw / (1400 / 25));
font-size:calc(100vw / (1400 / 28));
}
[id^="index_sct"] .txt{
padding-bottom:calc(100vw / (1400 / 25));
font-size:calc(100vw / (1400 / 14));
}
[id^="index_sct"] .ico{
width:calc(100vw / (1400 / 160));
margin:calc(100vw / (1400 / -20));
}
[id^="index_sct"] .ico img{
}
[id^="index_sct"] .box_list{
float:right;
width:calc(100vw / (1400 / 640));
}
[id^="index_sct"] .list{
display:flex;
flex-wrap:wrap;
width:calc(100vw / (1400 / 660));
margin:calc(100vw / (1400 / -10));
}
[id^="index_sct"] .list li{
position:relative;
width:calc(100vw / (1400 / 200));
height:calc(100vw / (1400 / 200));
margin:calc(100vw / (1400 / 10));
}
[id^="index_sct"] .list img{
}
[id^="index_sct"] .list figcaption{
position:absolute;
left:calc(100vw / (1400 / 10));
bottom:calc(100vw / (1400 / 5));
font-size:calc(100vw / (1400 / 14));
line-height:1.5;
font-weight:500;
}
#index_sct01 .list li:nth-of-type(1) figcaption,
#index_sct01 .list li:nth-of-type(2) figcaption,
#index_sct01 .list li:nth-of-type(3) figcaption,
#index_sct01 .list li:nth-of-type(6) figcaption{
color:#ffffff;
}
#index_sct01 .list .summary{
position:absolute;
left:0;
bottom:0;
width:100%;
height:100%;
padding:2em 1em;
background:rgba(0,0,0,0.5);
font-size:calc(100vw / (1400 / 14));
font-weight:500;
color:#ffffff;
opacity:0;
transition:all .3s ease;
z-index:1;
}
@media(hover:hover){
  #index_sct01 .list a:hover,
  #index_sct01 .list a:hover .summary{
  opacity:1;
  }
}
@media(hover:none){
  #index_sct01 .list a:active,
  #index_sct01 .list a:active .summary{
  opacity:1;
  }
/*
  #index_sct01 .list a.hover,
  #index_sct01 .list a.hover .summary{
  opacity:1;
  }
*/
}
#index_sct03 .box_txt{
width:calc(100vw / (1400 / 180));
}
#index_sct03 .link a{
display:block;
width:calc(100vw / (1400 / 120));
height:calc(100vw / (1400 / 30));
margin:calc(100vw / (1400 / 20)) 0;
padding-top:0.1em;
border:1px #000000 solid;
text-align: center;
font-size:calc(100vw / (1400 / 14));
}
#index_sct03 .box_list,
#newslist .box_list{
border-bottom:1px #000000 dashed;
}
#index_sct03 .box_list{
width:calc(100vw / (1400 / 800));
}
#newslist .box_list{
width:100%;
}
#index_sct03 .list,
#newslist .list{
width:100%;
}
#index_sct03 .list{
margin:calc(100vw / (1400 / 10)) 0 0;
}
#index_sct03 .list li,
#newslist .list li{
width:100%;
height:calc(100vw / (1400 / 50));
margin:0;
border-top:1px #000000 dashed;
}
#index_sct03 .list li a,
#newslist .list li a{
display:flex;
width:100%;
font-size:calc(100vw / (1400 / 14));
line-height:calc(100vw / (1400 / 50));
}
#index_sct03 .list .date,
#newslist .list .date{
flex-shrink:0;
width:calc(100vw / (1400 / 140));
font-weight:700;
}
#index_sct03 .list .summary,
#newslist .list .summary{
overflow:hidden;
}
@media screen and (max-width:767px){
  [id^="index_sct"]{
  margin-top:calc(100vw / (750 / 90));
  }
  [id^="index_sct"] .ttl_eng{
  height:calc(100vw / (750 / 120));
  font-size:calc(100vw / (750 / 28));
  }
  [id^="index_sct"] .box_txt{
  width:100%;
  position:relative;
  }
  [id^="index_sct"] .ttl{
  margin-left:calc(100vw / (750 / 130));
  padding-bottom:calc(100vw / (750 / 50));
  font-size:calc(100vw / (750 / 56));
  }
  [id^="index_sct"] .txt{
  padding-bottom:calc(100vw / (750 / 50));
  font-size:calc(100vw / (750 / 28));
  }
  [id^="index_sct"] .ico{
  position:absolute;
  top:calc(100vw / (750 / -30));
  width:calc(100vw / (750 / 160));
  margin:calc(100vw / (750 / -20));
  }
  [id^="index_sct"] .box_list{
  width:100%;
  }
  [id^="index_sct"] .list{
  width:calc(100% + (100vw / (750 / 15)));
  margin:calc(100vw / (750 / -15));
  }
  [id^="index_sct"] .list li{
  position:relative;
  width:calc(100vw / (750 / 320));
  height:calc(100vw / (750 / 320));
  margin:calc(100vw / (750 / 10));
  }
  [id^="index_sct"] .list figcaption{
  left:calc(100vw / (750 / 15));
  bottom:calc(100vw / (750 / 7.5));
  font-size:calc(100vw / (750 / 21));
  }
  #index_sct01 .list .summary{
  font-size:calc(100vw / (750 / 21));
  }
  #index_sct03 .box_txt{
  width:100%;
  }
  #index_sct03 .link a{
  width:calc(100vw / (750 / 240));
  height:calc(100vw / (750 / 60));
  margin:calc(100vw / (750 / 30)) 0;
  font-size:calc(100vw / (750 / 24));
  line-height:calc(100vw / (750 / 50));
  }
  #index_sct03 .box_list{
  width:100%;
  }
  #newslist .box_list{
  width:100%;
  }
  #index_sct03 .list,
  #newslist .list{
  width:100%;
  }
  #index_sct03 .list{
  margin:calc(100vw / (750 / 15)) 0 0;
  }
  #index_sct03 .list li,
  #newslist .list li{
  height:auto;
  padding:0.5em 0;
  }
  #index_sct03 .list li a,
  #newslist .list li a{
  font-size:calc(100vw / (750 / 24));
  line-height:1.5;
  }
  #index_sct03 .list .date,
  #newslist .list .date{
  width:7.5em;
  }
}



/*------PageTitle(H1)------*/
.title{
height:calc(100vw / (1400 / 320));
margin:calc(100vw / (1400 / -100)) 0 calc(100vw / (1400 / 100));
padding-top:calc(100vw / (1400 / 100));
background:#cce8f6;
}
.title#qctop{
height:calc(100vw / (1400 / 420));
}
.title .inner{
position:relative;
padding-top:calc(100vw / (1400 / 50));
}
.title .ttl_eng{
height:1.75em;
font-size:calc(100vw / (1400 / 14));
font-weight:700;
color:#ffffff;
}
.title .ttl{
padding-top:calc(100vw / (1400 / 8));
padding-bottom:calc(100vw / (1400 / 12));
font-size:calc(100vw / (1400 / 36));
}
.title .catch{
font-size:calc(100vw / (1400 / 18));
font-weight:700;
}
.title .ico{
width:calc(100vw / (1400 / 220));
position:absolute;
right:calc(100vw / (1400 / 20));
top:0;
}
.title .txt{
margin-top:calc(100vw / (1400 / 20));
font-size:calc(100vw / (1400 / 14));
}
@media screen and (max-width:767px){
  .title{
  height:calc(100vw / (750 / 320));
  margin:calc(100vw / (750 / 120)) 0 calc(100vw / (750 / 90));
  padding-top:calc(100vw / (750 / 0));
  }
  .title#qctop{
  height:auto;
  padding-bottom:calc(100vw / (750 / 20));
  }
  .title.base{
  height:calc(100vw / (750 / 280));
  }
  .title .inner{
  padding-top:calc(100vw / (750 / 60));
  }
  .title.base .inner{
  padding-top:calc(100vw / (750 / 80));
  }
  .title .ttl_eng{
  font-size:calc(100vw / (750 / 21));
  }
  .title .ttl{
  padding-top:calc(100vw / (750 / 10));
  padding-bottom:calc(100vw / (750 / 30));
  font-size:calc(100vw / (750 / 48));
  letter-spacing:0.2em;
  }
  .title .catch{
  font-size:calc(100vw / (750 / 21));
  }
  .title .ico{
  width:calc(100vw / (750 / 220));
  right:0;
  top:calc(100vw / (750 / 50));
  }
  .title.base .ico{
  top:calc(100vw / (750 / 30));
  }
  .title .txt{
  margin-top:calc(100vw / (750 / 20));
  font-size:calc(100vw / (750 / 21));
  line-height:1.5;
  }
}



/*------sectionCommon------*/
h2.ttl{
padding-bottom:1.66em;
font-size:calc(100vw / (1400 / 24));
}
.box_pagetitle{
padding-bottom:calc(100vw / (1400 / 60));
}
.box_pagetitle h2.ttl{
padding-bottom:0;
text-align:center;
}
.box_pagetitle h2.ttl+.catch{
margin-top:calc(100vw / (1400 / 20));
text-align:center;
font-size:calc(100vw / (1400 / 14));
font-weight:700;
}
.box_pagetitle .summary{
margin-top:calc(100vw / (1400 / 25));
font-size:calc(100vw / (1400 / 14));
}
h3.ttl{
padding-bottom:1.5em;
font-size:calc(100vw / (1400 / 28));
}
h4.ttl{
font-size:calc(100vw / (1400 / 18));
}
.btn{
display:flex;
align-items:center;
justify-content:center;
width:100%;
}
[class^="btn"] a{
align-items:center;
justify-content:center;
border:1px #008cd2 solid;
background-color:#ffffff;
text-align:center;
line-height:1.5;
font-weight:700;
color:#008cd2;
white-space:nowrap;
cursor:pointer;
}
.btn a{
display:flex;
width:calc(100vw / (1400 / 500));
height:calc(100vw / (1400 / 50));
background-image:url(../img/ico_arw.svg);
background-repeat:no-repeat;
background-position:right calc(100vw / (1400 / 15)) center;
background-size:calc(100vw / (1400 / 7));
}
.btn_rd a{/*角丸ボタン*/
display:inline-flex;
width:auto;
height:calc(100vw / (1400 / 30));
padding:0 calc(100vw / (1400 / 15));
border-radius:calc(100vw / (1400 / 15));
}
.label{
width:100%;
height:calc(100vw / (1400 / 60));
border-top:1px #000000 solid;
font-size:calc(100vw / (1400 / 14));
font-weight:700;
}
@media screen and (max-width:767px){
  h2.ttl{
  font-size:calc(100vw / (750 / 36));
  }
  .box_pagetitle{
  padding-bottom:calc(100vw / (750 / 90));
  }
  .box_pagetitle h2.ttl+.catch{
  margin-top:calc(100vw / (750 / 30));
  font-size:calc(100vw / (750 / 21));
  }
  .box_pagetitle .summary{
  margin-top:calc(100vw / (750 / 37.5));
  font-size:calc(100vw / (750 / 21));
  }
  h3.ttl{
  font-size:calc(100vw / (750 / 42));
  }
  h4.ttl{
  font-size:calc(100vw / (750 / 28));
  }
  .btn a{
  width:100%;
  height:calc(100vw / (750 / 75));
  background-position:right calc(100vw / (750 / 22.5)) center;
  background-size:calc(100vw / (750 /10.5));
  }
  .btn_rd a{
  height:calc(100vw / (750 / 45));
  padding:0 calc(100vw / (750 / 22.5));
  border-radius:calc(100vw / (750 / 22.5));
  }
  .label{
  height:calc(100vw / (750 / 90));
  font-size:calc(100vw / (750 / 21));
  }
}



/*------TextLinkStyle------*/
a.link{
color:#008cd2;
}
a.link:hover{
text-decoration:underline;
}
a.arw{
padding-right:0.8em;
background:#ffffff url(../img/ico_arw.svg) no-repeat right center / 0.375em;
color:#008cd2;
}



/*------TabNavigation------*/
.tab_nav{
margin:calc(100vw / (1400 / -100)) 0 calc(100vw / (1400 / 100));
background:#cce8f6;
border-bottom:1px #000000 solid;
}
.tab_nav .nav{
display:flex;
justify-content:space-around;
width:calc(100vw / (1400 / 1000));
margin:0 auto;
}
.tab_nav .nav li{
width:100%;
}
.tab_nav .nav li+li{
margin-left:-1px;
}
.tab_nav .nav li a{
position:relative;
display:flex;
align-items:center;
justify-content:center;
height:calc(100vw / (1400 / 80));
border-width:1px 1px 0;
border-color:#000000;
border-style:solid;
border-radius:0.625em 0.625em 0 0;
background:#e5f3fa;
text-align:center;
font-size:calc(100vw / (1400 / 16));
line-height:1.5;
font-weight:700;
}
.media .tab_nav .nav li a[href$="/media/"],
.filter .tab_nav .nav li a[href$="/filter/"],
.precision .tab_nav .nav li a[href$="/precision/"],
.peripheral .tab_nav .nav li a[href$="/peripheral/"],
.assembly .tab_nav .nav li a[href$="/assembly/"],
.others .tab_nav .nav li a[href$="/others/"],
.technology .tab_nav .nav li a[href$="/technology/"],
.permission .tab_nav .nav li a[href$="/permission/"],
.quality .tab_nav .nav li a[href$="/quality/"],
.outline .tab_nav .nav li a[href$="/outline/"],
.work .tab_nav .nav li a[href$="/work/"],
.history .tab_nav .nav li a[href$="/history/"],
.philosophy .tab_nav .nav li a[href$="/philosophy/"],
.message .tab_nav .nav li a[href$="/message/"],
.institution .tab_nav .nav li a[href$="/institution/"],
.iso .tab_nav .nav li a[href$="/iso/"]{
background:#ffffff;
opacity:1;
}
.outline .tab_nav .nav li a[href$="/outline/"],
.work .tab_nav .nav li a[href$="/work/"],
.history .tab_nav .nav li a[href$="/history/"],
.philosophy .tab_nav .nav li a[href$="/philosophy/"],
.message .tab_nav .nav li a[href$="/message/"],
.institution .tab_nav .nav li a[href$="/institution/"],
.iso .tab_nav .nav li a[href$="/iso/"]{
pointer-events:none;
}
.tab_nav .nav li a:hover{
background:#ffffff;
opacity:1;
}
.media .tab_nav .nav li a[href$="/media/"]::after,
.filter .tab_nav .nav li a[href$="/filter/"]::after,
.precision .tab_nav .nav li a[href$="/precision/"]::after,
.peripheral .tab_nav .nav li a[href$="/peripheral/"]::after,
.assembly .tab_nav .nav li a[href$="/assembly/"]::after,
.others .tab_nav .nav li a[href$="/others/"]::after,
.technology .tab_nav .nav li a[href$="/technology/"]::after,
.permission .tab_nav .nav li a[href$="/permission/"]::after,
.quality .tab_nav .nav li a[href$="/quality/"]::after,
.outline .tab_nav .nav li a[href$="/outline/"]::after,
.work .tab_nav .nav li a[href$="/work/"]::after,
.history .tab_nav .nav li a[href$="/history/"]::after,
.philosophy .tab_nav .nav li a[href$="/philosophy/"]::after,
.message .tab_nav .nav li a[href$="/message/"]::after,
.institution .tab_nav .nav li a[href$="/institution/"]::after,
.iso .tab_nav .nav li a[href$="/iso/"]::after,
.tab_nav .nav li a:hover::after{
content:'';
position:absolute;
bottom:-1px;
display:block;
width:100%;
height:1px;
background:#ffffff;
opacity:1;
}
@media screen and (max-width:767px){
  .tab_nav{
  margin:calc(100vw / (750 / -120)) 0 calc(100vw / (750 / 150));
  }
  .tab_nav .nav{
  width:calc(100vw / (750 / 730));
  }
  .tab_nav .nav li a{
  height:calc(100vw / (750 / 100));
  font-size:calc(100vw / (750 / 21));
  letter-spacing:0;
  }
}



/*------CategoryList------*/
.category_list .list{
display:flex;
flex-wrap:wrap;
width:100%;
}
.category_list.first_step .list figure,
#category_01 .list figure{
border-radius:50%;
overflow:hidden;
}
.category_list .name{
text-align:center;
font-size:calc(100vw / (1400 / 18));
}
.category_list .name::after{
display:inline-block;
content:'';
width:0.4em;
height:0.4em;
margin-top:-0.2em;
margin-left:0.25em;
border-right:1px #000000 solid;
border-top:1px #000000 solid;
transform:rotate(45deg);
vertical-align:middle;
}
.category_list .subname{
margin-top:calc(100vw / (1400 / 10));
text-align:center;
font-size:calc(100vw / (1400 / 14));
font-weight:700;
}
.category_list .summary{
font-size:calc(100vw / (1400 / 14));
}
@media screen and (min-width:768px){
  .category_list .list li{
  width:30%;
  margin-left:5%;
  }
  .category_list .list li:nth-child(3n+1){
  margin-left:0;
  }
}
@media screen and (max-width:767px){
  .category_list .name{
  font-size:calc(100vw / (750 / 28));
  }
  .category_list .subname{
  margin-top:calc(100vw / (750 / 15));
  font-size:calc(100vw / (750 / 21));
  letter-spacing:0.05em;
  }
  .category_list .summary{
  font-size:calc(100vw / (750 / 21));
  }
  .category_list .list li{
  width:48%;
  margin-left:4%;
  }
  .category_list .list li:nth-child(2n+1){
  margin-left:0;
  }
}



/*------CategoryList(Product,QuolityControl)------*/
[id^="category_"] .category_list .name,
#category_02 .category_list .name{
margin-top:calc(100vw / (1400 / 20));
}
[id^="category_"] .category_list .summary{
margin-top:calc(100vw / (1400 / 15));
}
#category_02 .list li figure{
margin-top:1em;
display:flex;
align-items:flex-start;
justify-content:center;
aspect-ratio:1/1;
width:100%;
height:auto;
overflow:hidden;
}
#category_02 .list li figure img{
/**/object-fit:cover;
/**/aspect-ratio:1/1;
width:auto;
height:100%;
}
@media screen and (min-width:768px){
  #category_01 .list li:nth-child(n+4){
  margin-top:calc(100vw / (1400 / 100));
  }
  #category_02 .list li:nth-child(n+4){
  margin-top:calc(100vw / (1400 / 70));
  }
}
@media screen and (max-width:767px){
  #category_01 .list li:nth-child(n+3){
  margin-top:calc(100vw / (750 / 60));
  }
  #category_02 .list li:nth-child(n+3){
  margin-top:calc(100vw / (750 / 60));
  }
  [id^="category_"] .category_list .name{
  margin-top:calc(100vw / (750 / 30));
  }
  [id^="category_"] .category_list .summary{
  margin-top:calc(100vw / (750 / 22.5));
  }
}



/*------ProductCategory_siblingNavigation------*/
.sibling_nav{
margin-top:calc(100vw / (1400 / 90));
}
.sibling_nav .nav{
display:flex;
flex-wrap:wrap;
justify-content:center;
background:#F1F1F1;
padding:1em 0;
}
.sibling_nav li{
}
.sibling_nav a{
display:inline-block;
padding:0 1em;
font-size:calc(100vw / (1400 / 14));
font-weight:700;
color:#999999;
}
.sibling_nav .current a{
color:#000000;
cursor:default;
pointer-events:none;
}
@media screen and (max-width:767px){
  .sibling_nav{
  margin-top:calc(100vw / (750 / 120));
  }
  .sibling_nav a{
  font-size:calc(100vw / (750 / 21));
  }
}



/*------TableBase------*/
table th,
table td{
padding:0.5em;
border-bottom:1px #b3b3b3 solid;
vertical-align:middle;
text-align:center;
font-weight:300;
}
table th{
background:#e5f3fa;
font-weight:500;
white-space:nowrap;
}
table td{
background:#ffffff;
}
table tr:nth-child(1)>td,
table tr:nth-child(1)>th{
border-top:1px #b3b3b3 solid;
}
table td img{
width:auto;
margin:0 auto;
}
table caption{
font-weight:700;
text-align:right;
margin-top:-1.5em;
}
@media screen and (max-width:767px){
}



/*------ProductDetail------*/
[class^="detail_"]{
}
.detail_top{
}
.detail_cnt{
margin-top:calc(100vw / (1400 / 60));
}
[class^="detail_"] .inner{
display:flex;
flex-wrap:wrap;
justify-content:space-between;
}
.detail_top .box_txt{
width:45%;
order:2;
}
.detail_top .box_img{
width:50%;
order:1;
}
.detail_cnt .box_txt{
width:35%;
}
.detail_cnt .box_cnt{
width:60%;
}
.detail_cnt.column1 .box_txt,
.detail_cnt.column1 .box_cnt{
width:100%;
}
[class^="detail_"] .box_txt{
}
[class^="detail_"] .box_txt .ttl{
font-size:calc(100vw / (1400 / 24));
line-height:1.5;
font-weight:700;
}
[class^="detail_"] .box_txt .txt{
margin-top:1.5em;
font-size:calc(100vw / (1400 / 14));
}
.detail_cnt .box_cnt iframe{
width:100%;
height:auto;
aspect-ratio:16 / 9;
}
.detail_cnt .box_cnt h4{
font-size:calc(100vw / (1400 / 18));
line-height:1.5;
margin-bottom:0.5em;
}
/*
.detail_cnt .box_cnt h4:nth-of-type(n+2){
margin-top:1em;
}
*/
.detail_cnt .box_cnt h4[style="text-align: left;"]{
clear:both;
float:left;
display:inline-block;
width:23.3%;
}
.detail_cnt .box_cnt h4[style="text-align: left;"]+*{
float:left;
display:inline-block;
width:76.7%;
}
.detail_cnt .box_cnt ul li{
margin-left:1.5em;
list-style:disc;
}
.detail_cnt .box_cnt ol li{
margin-left:1.5em;
list-style:decimal;
}
.detail_cnt .box_cnt p,
.detail_cnt .box_cnt ol,
.detail_cnt .box_cnt ul,
.detail_cnt .box_cnt table{
margin-bottom:1.5em;
}
.detail_cnt .box_cnt>*:last-child{
margin-bottom:0;
}
.detail_cnt .box_cnt table{
min-width:100%;
}



@media screen and (min-width:768px){
.detail_cnt .box_cnt img.w50{
width:50%;
}
.detail_cnt .box_cnt img.w60{
width:60%;
}


}
@media screen and (max-width:767px){
  .detail_cnt{
  margin-top:calc(100vw / (750 / 90));
  }
  [class^="detail_"] .inner{
  display:block;
  }
  .detail_top .box_txt{
  width:100%;
  order:2;
  }
  .detail_top .box_img{
  width:100%;
  order:1;
  }
  .detail_cnt .box_txt{
  width:100%;
  }
  .detail_cnt .box_cnt{
  margin-top:2em;
  width:100%;
  }
  [class^="detail_"] .box_txt .ttl{
  font-size:calc(100vw / (750 / 36));
  padding-bottom:0;
  }
  [class^="detail_"] .box_txt .txt{
  margin-top:1.5em;
  font-size:calc(100vw / (750 / 21));
  }
  [class^="detail_"] .box_txt .txt:empty{
  display: none;
  }
  .detail_cnt .box_cnt h4+*{
  margin-top:1em;
  }
  .detail_cnt .box_cnt h4{
  font-size:calc(100vw / (750 / 28));
  line-height:1.5;
  }
  .detail_cnt .box_cnt h4:nth-of-type(n+2){
  margin-top:1em;
  }
  .detail_cnt .box_cnt h4[style="text-align: left;"]{
  clear:both;
  float:none;
  display:inline-block;
  width:100%;
  }
  .detail_cnt .box_cnt h4[style="text-align: left;"]+*{
  float:none;
  display:inline-block;
  width:100%;
  margin-top:1em;
  }
  .detail_cnt div{
  overflow-x:scroll;
  /*width:100%;
  width:calc(100vw / (750 / 680));*/
  }
  .detail_cnt table{
  width:auto;
  }

}

/*------qualitycontrolList------*/
.qualitycontrol_list{
}
.qualitycontrol_list li{
display:flex;
flex-wrap:wrap;
justify-content:space-between;
width:100%;
}
.qualitycontrol_list li+li{
margin-top:calc(100vw / (1400 / 60));
}
.qualitycontrol_list .box_txt{
width:50%;
}
.qualitycontrol_list .sublabel{
padding-bottom:1em;
font-size: calc(100vw / (1400 / 14));
line-height:1;
font-weight:700;
}
.qualitycontrol_list .ttl{
padding-bottom:1em;
}
.qualitycontrol_list .box_txt .list{
font-weight:700;
}
.qualitycontrol_list .box_txt .list+p{
margin-top:2em;
}
.qualitycontrol_list .img{
width:45%;
}
.qualitycontrol_list .btn_rd{
margin-top:1em;
}
@media screen and (max-width:767px){
.qualitycontrol_list li+li{
margin-top:calc(100vw / (750 / 90));
}
.qualitycontrol_list .box_txt{
width:100%;
}
#technology .qualitycontrol_list .box_txt .list .fix{
letter-spacing:0.05em;
}
.qualitycontrol_list .sublabel{
font-size: calc(100vw / (750 / 21));
}
.qualitycontrol_list .img{
width:100%;
margin-top:1.5em;

}

}



/*------qualitycontrolDetail------*/
.box_qualitycontrol .box{
padding-top:calc(100vw / (1400 / 60));
border-top:1px #000000 solid;
}
.box_qualitycontrol .box+.box{
margin-top:calc(100vw / (1400 / 60));
}
.box_qualitycontrol .img{
display:flex;
flex-wrap:wrap;
width:calc(100% + (100vw / (1400 / 20)));
margin:calc(100vw / (1400 / -10));
padding-top:calc(100vw / (1400 / 30));
}
.box_qualitycontrol .img img{
width:auto;
height:calc(100vw / (1400 / 235));
margin:calc(100vw / (1400 / 10));
}
@media screen and (max-width:767px){
  .box_qualitycontrol .box{
  padding-top:calc(100vw / (750 / 90));
  }
  .box_qualitycontrol .box+.box{
  margin-top:calc(100vw / (750 / 90));
  }
  .box_qualitycontrol .img{
  width:calc(100% + (100vw / (750 / 20)));
  margin:calc(100vw / (750 / -10));
  padding-top:calc(100vw / (750 / 30));
  }
  .box_qualitycontrol .img img{
  height:calc(100vw / (750 / 235));
  margin:calc(100vw / (750 / 10));
  }
}



/*------AboutUs------*/
#aboutus{
}
#aboutus .box_txt p+p{
margin-top:1.75em;
}
#aboutus .category_list{
margin-top:calc(100vw / (1400 / 60));
}
#aboutus .category_list .name{
padding-top:calc(100vw / (1400 / 30));
}
@media screen and (min-width:768px){
  #aboutus .box_txt{
  text-align:center;
  }
  #aboutus .category_list li:nth-child(n+4){
  margin-top:calc(100vw / (1400 / 60));
  }
}
@media screen and (max-width:767px){
  #aboutus .category_list{
  margin-top:calc(100vw / (750 / 90));
  }
  #aboutus .category_list li:nth-child(n+3){
  margin-top:calc(100vw / (750 / 90));
  }
  #aboutus .category_list .name{
  padding-top:calc(100vw / (750 / 45));
  }
}



/*------Message------*/
.box_message{
display:flex;
flex-wrap:wrap;
width:100%;
justify-content:space-between;
}
.box_message .box_txt{
width:50%;
}
.box_message .ttl{}
.box_message .txt p+p{
margin-top:1em;
}
.box_message .txt p:last-of-type{
margin-top:1.5em;
font-size:calc(100vw / (1400 / 18));
text-align:right;
}
.box_message .img{
width:45%;
}
@media screen and (max-width:767px){
  .box_message .box_txt{
  width:100%;
  }
  .box_message .txt p:last-of-type{
  font-size:calc(100vw / (750 / 28));
  }
  .box_message .img{
  margin-top:1em;
  display:flex;
  align-items:flex-start;
  justify-content:center;
  aspect-ratio:6/5;
  width:100%;
  height:auto;
  overflow:hidden;
  }
  .box_message .img img{
  object-fit:cover;
  aspect-ratio:1/1;
  width:100%;
  height:auto;
  }
}



/*------Outline------*/
.box_outline table{
width:100%;
}
.box_outline th,
.box_outline td{
padding:0.5em 1em;
}
.box_outline th{
width:30%;
vertical-align:top;
font-weight:500;
}
.box_outline td{
text-align:left;
}
.box_partner{
margin-top:calc(100vw / (1400 / 60));
}
.box_partner .ttl{
font-size:calc(100vw / (1400 / 18));
}
.box_partner .list ul{
display:flex;
flex-wrap:wrap;
width:100%;
}
.box_partner .list li{
width:30%;
margin-left:1.5em;
list-style:disc;
}
.box_partner .list p{
margin-top:1em;
}
@media screen and (max-width:767px){
  .box_partner{
  margin-top:calc(100vw / (750 / 90));
  }
  .box_partner .ttl{
  font-size:calc(100vw / (750 / 28));
  }
  .box_partner .list li{
  width:100%;
  }
}



/*------work------*/
.box_work{
display: flex;
flex-wrap:wrap;
width:100%;
}
.box_work .box{
width:48%;
border:1px #b3b3b3 solid;
}
.box_work .ttl{
margin:0;
padding:0.5em 1em;
background:#e5f3fa;
font-size:calc(100vw / (1400 / 24));
}
.box_work .ttl span{
display:block;
font-size:80%;
}
.box_work .list{
padding:1em;
font-size: calc(100vw / (1400 / 18));
}
.box_work .list li{
margin-left:1.5em;
list-style:disc;
}
@media screen and (min-width:768px){
  .box_work .box:nth-child(2n){
  margin-left:4%;
  }
  .box_work .box:nth-child(n+3){
  margin-top:2em;
  }
}
@media screen and (max-width:767px){
  .box_work .box{
  width:100%;
  }
  .box_work .box:nth-child(n+2){
  margin-top:2em;
  }
  .box_work .ttl{
  font-size:calc(100vw / (750 / 36));
  }
  .box_work .list{
  font-size: calc(100vw / (750 / 28));
  }
}



/*------ISO------*/
.box_iso .txt{
font-size:calc(100vw / (1400 / 18));
}
.box_iso .box{
padding-top:calc(100vw / (1400 / 60));
}
.box_iso .box+.box{
margin-top:calc(100vw / (1400 / 60));
border-top:1px #000000 solid;
}
.box_iso .box::after{
content:'';
display:block;
clear:both;
}
.box_iso .box .img{
width:25%;
float:left;
}
.box_iso .box .ttl{
margin-left:30%;
font-size:calc(100vw / (1400 / 24));
}
.box_iso .box .list{
margin-top:1.5em;
margin-left:30%;
}
.box_iso .box .list li{
margin-left:1.3em;
list-style:decimal;
}
@media screen and (max-width:767px){
  .box_iso .txt{
  font-size:calc(100vw / (750 / 28));
  }
  .box_iso .box{
  padding-top:calc(100vw / (750 / 90));
  }
  .box_iso .box+.box{
  margin-top:calc(100vw / (750 / 90));
  }
  .box_iso .box .img{
  width:30%;
  }
  .box_iso .box .ttl{
  margin-left:33%;
  font-size:calc(100vw / (750 / 36));
  }
  .box_iso .box .list{
  margin-left:35%;
  }
}



/*------institution------*/
.box_map+.box_map{
margin-top:calc(100vw / (1400 / 100));
}
.box_map .map{
aspect-ratio:5/3;
width:100%;
height:auto;
margin-bottom:calc(100vw / (1400 / 20));
}
.box_map .map iframe{
width:100%;
height:100%;
}
.box_map .img{
margin-bottom:calc(100vw / (1400 / 20));
}
.box_map .address{
display:flex;
}
.box_map .address dt{
width:7em;
font-weight:500;
}
@media screen and (max-width:767px){
  .box_map+.box_map{
  margin-top:calc(100vw / (750 / 150));
  }
  .box_map .map{
  margin-bottom:calc(100vw / (750 / 30));
  }
  .box_map .img{
  margin-bottom:calc(100vw / (750 / 30));
  }
  .box_map .address{
  display:block;
  }
}



/*------Philosophy------*/
.philosophy_list .box_cnt+.box_cnt{
margin-top:calc(100vw / (1400 / 100));
}
.philosophy_list .ttl{
padding-bottom:0.5em;
}
.philosophy_list .txt{
font-size:calc(100vw / (1400 / 18));
font-weight:500;
}
.philosophy_list .txt ol{
}
.philosophy_list .txt li{
margin-left:1.5em;
margin-top:0.5em;
list-style:decimal;
line-height:1.5;
}
@media screen and (max-width:767px){
  .philosophy_list .box_cnt+.box_cnt{
  margin-top:calc(100vw / (750 / 150));
  }
  .philosophy_list .txt{
  font-size:calc(100vw / (750 / 27));
  }
}



/*------History------*/
.history_list table{
width:100%;
}
.history_list th,
.history_list td{
padding-left:1em;
text-align:left;
}
.history_list th{
width:16%;
font-weight:500;
white-space:nowrap;
}
.history_list th.taisho{background:rgba(0,140,210,0.1);}
.history_list th.showa{background:rgba(0,140,210,0.2);}
.history_list th.heisei{background:rgba(0,140,210,0.3);}
.history_list th.reiwa{background:rgba(0,140,210,0.4);}
.history_list th .data{
display:inline-block;
width:1.5em;
text-align:center;
}
@media screen and (max-width:767px){
  .history_list th,
  .history_list td{
  padding:0.5em;
  }
  .history_list th{
  width:auto;
  vertical-align:top;
  }
}



/*------newsDetail------*/
#newsdetail .article_body h2.ttl{
line-height:1.5;
}
#newsdetail .article_body .date{
margin-top:1em;
text-align:right;
}
#newsdetail .article_body .cnt{
margin-top:3em;
word-break:break-all;
}
#newsdetail .article_body .cnt a{
color:#008cd2;
}
#newsdetail .article_body .cnt img{
width:auto;
}
#newsdetail .article_body .tag{
magrin-top:2em;
}
#newsdetail .article_body .tag:empty{
display:none;
}



/*------articleNav------*/
.article_nav{
margin-top:3em;
}
.article_nav .nav{
display:flex;
justify-content:space-between;
}
.article_nav .nav li a{
border:1px #000000 solid;
padding:0.25em 0.5em;
}
/*
.article_nav .prev{
justify-self:start;
}
.article_nav .next{
justify-self:end;
}
*/


/*------archiveListPagenation------*/
.pagination{
}
.pagination .page-numbers{
display:flex;
flex-wrap:wrap;
align-items:center;
justify-content:center;
margin-top:5em;
}
.pagination li{
padding:0 0.5em;
}
.pagination li span,
.pagination li a{
display:inline-block;
padding:0.5em;
}
.pagination li a{
color:#999999;
font-weight:500;
}
.pagination li a:hover{
color:#000000;
}
.pagination li .current{
font-weight:700;
}
.pagination li .prev{
margin-right:2em;
}
.pagination li .next{
margin-left:2em;
}



/*------contactForm7------*/
.wpcf7 h3.ttl:nth-of-type(n+2){
padding-top:2em;
}
.wpcf7 table{
width:100%;
}
.wpcf7 th,
.wpcf7 td{
padding:1em 0;
text-align:left;
border-color:#b3b3b3;
}
.wpcf7 th{
width:35%;
padding:2em 1em;
vertical-align:top;
font-weight:500;
background:#ffffff;
}
.wpcf7 .required,
.wpcf7 .free{
margin-left:1em;
font-size:calc(100vw / (1400 / 13));
}
.wpcf7 .required{
color:#c1272d;
}
.wpcf7 input[type="text"],
.wpcf7 input[type="email"],
.wpcf7 input[type="tel"],
.wpcf7 input[type="number"],
.wpcf7 textarea{
width:100%;
height:calc(100vw / (1400 / 40));
margin:0.5em 0;
padding:0.5em 1em;
border:none;
background:#f2f2f2;
font-size:calc(100vw / (1400 / 16));
line-height:1.75;
}
.wpcf7 input[type="number"]{
width:30%;
margin-right:1em;
padding:0 0 0 1em;
}
.wpcf7 textarea{
height:calc(100vw / (1400 / 250));
vertical-align:top;
}
.wpcf7 .wpcf7-list-item{display:block;}
.wpcf7 .wpcf7-list-item-label{margin-left:0.25em;}
.wpcf7 .area_btn p,
.wpcf7 .wpcf7cp-btns{
display:flex;
flex-wrap:wrap;
align-items:center;
justify-content:center;
width:100%;
margin-top:calc(100vw / (1400 / 80));
}
.wpcf7 .area_btn input[type="submit"],
.wpcf7 .wpcf7cp-btns button{
display:flex;
flex-direction:column;
align-items:center;
justify-content:center;
width:calc(100vw / (1400 / 500));
height:calc(100vw / (1400 / 50));
border:1px #008cd2 solid;
background-color:#ffffff;
background-image:url(../img/ico_arw.svg);
background-repeat:no-repeat;
background-position:right calc(100vw / (1400 / 23)) center;
background-size:calc(100vw / (1400 / 6));
font-size:calc(100vw / (1400 / 16));
line-height:1.5;
font-weight:700;
color:#008cd2;
cursor:pointer;
}
.wpcf7 .wpcf7cp-btns button{
width:calc(100vw / (1400 / 300));
margin:0 1em;
}
.wpcf7 button.wpcf7cp-cfm-edit-btn{
background-image:url(../img/ico_arw_rev.svg);
background-position:left calc(100vw / (1400 / 23)) center;
}
.wpcf7 input[type="submit"]:disabled{
background-color:#cccccc;
border-color:#cccccc;
cursor:not-allowed;
}
.wpcf7 #wpcf7cpcnf{
z-index:1;
}
@media screen and (max-width:767px){
  .wpcf7 th,
  .wpcf7 td{
  display:block;
  width:100%;
  }
  .wpcf7 th{
  border-bottom:none;
  }
  .wpcf7 tr:nth-child(1)>td,
  .wpcf7 th{
  border-top:none;
  }
  .wpcf7 th{
  padding:0.5em;
  }
  .wpcf7 td{
  padding:0 0.5em 0.5em;
  }
  .wpcf7 .required,
  .wpcf7 .free{
  font-size:calc(100vw / (750 / 21));
  }
  .wpcf7 input[type="text"],
  .wpcf7 input[type="email"],
  .wpcf7 input[type="tel"],
  .wpcf7 input[type="number"],
  .wpcf7 textarea{
  height:calc(100vw / (750 / 60));
  padding:0.5em;
  font-size:calc(100vw / (750 / 24));
  }
  .wpcf7 input[type="number"]{
  width:60%;
  }
  .wpcf7 textarea{
  height:calc(100vw / (750 / 375));
  }
  .wpcf7 .area_btn,
  .wpcf7 .wpcf7cp-btns{
  margin-top:calc(100vw / (750 / 90));
  }
  .wpcf7 .wpcf7cp-btns{
  justify-content:space-between;
  }
  .wpcf7 .area_btn input[type="submit"],
  .wpcf7 .wpcf7cp-btns button{
  height:calc(100vw / (750 / 75));
  background-position:right calc(100vw / (750 / 34.5)) center;
  background-size:calc(100vw / (750 / 9));
  font-size:calc(100vw / (750 / 24));
  }
  .wpcf7 .area_btn input[type="submit"]{
  width:100%;
  }
  .wpcf7 .wpcf7cp-btns button{
  width:48%;
  margin:0;
  }
  .wpcf7 button.wpcf7cp-cfm-edit-btn{
  background-position:left calc(100vw / (750 / 34.5)) center;
  }
}



/*------recruit,jopAppealpoint------*/
#recruit_top{
width:100%;
margin:calc(100vw / (1400 / -100)) 0 calc(100vw / (1400 / 100));
background:url(../img/recruit/recruit_mv.webp) no-repeat right center / contain;
}
#recruit_top .inner{
display:flex;
align-items:center;
height:calc(100vw / (1400 / 400));
}
#recruit_top .ttl{
padding-bottom:0;
font-size:calc(100vw / (1400 / 32));
}
#recruit_top .ttl .block{
margin:0.5em 0;
}
#recruit .box_txt .box+.box{
margin-top:calc(100vw / (1400 / 80));
}
#recruit .box_txt .ttl{
padding-bottom:1.2em;
font-size:calc(100vw / (1400 / 24));
}
#recruit .box_txt .txt{
font-size:calc(100vw / (1400 / 18));
line-height:2;
}
#job .box_appeal,
#recruit .box_point{
margin-top:calc(100vw / (1400 / 100));
}
#job .box_appeal .list,
#recruit .box_point .list{
display:flex;
justify-content:center;
width:100%;
}
#job .box_appeal li,
#recruit .box_point li{
width:30%;
}
#job .box_appeal li+li,
#recruit .box_point li+li{
margin-left:5%;
}
#job .box_appeal .img,
#recruit .box_point .img{
display:flex;
align-items:center;
justify-content:center;
aspect-ratio:1/1;
width:100%;
height:auto;
margin-bottom:calc(100vw / (1400 / 25));
overflow:hidden;
}
#recruit .box_point .img{
border-radius:50%;
}
#job .box_appeal .img img,
#recruit .box_point .img img{
object-fit:cover;
aspect-ratio:1/1;
width:100%;
height:auto;
}
#recruit .box_point .ttl{
font-size:calc(100vw / (1400 / 18));
}
#recruit .box_appeal .txt,
#recruit .box_point .txt{
margin-top:calc(100vw / (1400 / 20));
font-size:calc(100vw / (1400 / 14));
}
@media screen and (max-width:767px){
  #recruit_top{
  margin:calc(100vw / (750 / -90)) 0 calc(100vw / (750 / 90));
  background-position:right calc(100vw / (750 / -200)) center;
  background-size:auto calc(100vw / (750 / 320));
  }
  #recruit_top .inner{
  height:calc(100vw / (750 / 320));
  }
  #recruit_top .ttl{
  font-size:calc(100vw / (750 / 32));
  }
  #recruit .box_txt .box+.box{
  margin-top:calc(100vw / (750 / 120));
  }
  #recruit .box_txt .ttl{
  font-size:calc(100vw / (750 / 36));
  }
  #recruit .box_txt .txt{
  font-size:calc(100vw / (750 / 28));
  line-height:1.75;
  }
  #job .box_appeal,
  #recruit .box_point{
  margin-top:calc(100vw / (750 / 150));
  }
  #job .box_appeal .list,
  #recruit .box_point .list{
  display:block;
  }
  #job .box_appeal li,
  #recruit .box_point li{
  position:relative;
  display:flex;
  flex-direction:column;
  justify-content:center;
  width:100%;
  min-height:calc(100vw / (750 / 280));
  }
  #job .box_appeal li+li,
  #recruit .box_point li+li{
  margin-left:0;
  margin-top:calc(100vw / (750 / 80));
  }
  #job .box_appeal .img,
  #recruit .box_point .img{
  position:absolute;
  top:50%;
  transform:translateY(-50%);
  width:calc(100vw / (750 / 280));
  margin-bottom:0;
  }
  #recruit .box_point .ttl{
  font-size:calc(100vw / (750 / 28));
  }
  #recruit .box_appeal .txt,
  #recruit .box_point .txt{
  margin-top:1em;
  font-size:calc(100vw / (750 / 24));
  line-height:1.5;
  }
  #job .box_appeal li:nth-child(odd),
  #recruit .box_point li:nth-child(odd){
  padding-left:calc(100vw / (750 / 300));
  }
  #job .box_appeal li:nth-child(even),
  #recruit .box_point li:nth-child(even){
  padding-right:calc(100vw / (750 / 300));
  }
  #job .box_appeal li:nth-child(odd) .img,
  #recruit .box_point li:nth-child(odd) .img{
  left:0;
  }
  #job .box_appeal li:nth-child(even) .img,
  #recruit .box_point li:nth-child(even) .img{
  right:0;
  }
}



/*------jobSummaryList------*/
#job .box_summary{
display:flex;
flex-wrap:wrap;
justify-content:space-between;
width:100%;
}
#job li.box_summary{
position:relative;
margin-top:calc(100vw / (1400 / 100));
}
#job .box_txt{
flex-shrink:0;
width:50%;
padding-bottom:calc(100vw / (1400 / 50));
}
#job .box_txt .ttl{
padding-bottom:0.75em;
}
#job .box_txt .txt{
font-size:calc(100vw / (1400 / 14));
}
#job .box_txt .btn{
position:absolute;
bottom:0;
}
#job .box_img{
width:45%;
}
#job .null{
width:100%;
padding:3em 0;
text-align:center;
}
@media screen and (min-width:768px){
  #job .box_txt .btn{
  width:50%;
  }
}
@media screen and (max-width:767px){
  #job li.box_summary{
  margin-top:calc(100vw / (750 / 150));
  padding-bottom:calc(100vw / (750 / 120));
  }
  #job .box_txt{
  width:100%;
  padding-bottom:1em;
  }
  #job .box_txt .ttl{
  padding-bottom:0.75em;
  }
  #job .box_txt .txt{
  font-size:calc(100vw / (750 / 21));
  }
  #job .box_img{
  width:100%;
  }
}



/*------jobDetail,jopAppealpoint------*/
#job .box_jobdata,
#job .box_appeal{
margin-top:calc(100vw / (1400 / 100));
border-top:1px #000000 solid;
}
#job .box_jobdata table{
width:100%;
}
#job .box_jobdata th{
width:30%;
font-weight:500;
}
#job .box_jobdata td{
text-align:left;
}
#job .article_body .btn{
margin-top:calc(100vw / (1400 / 100));
}
@media screen and (max-width:767px){
  #job .box_jobdata,
  #job .box_appeal{
  margin-top:calc(100vw / (750 / 150));
  }
  #job .article_body .btn{
  margin-top:calc(100vw / (750 / 100));
  }
}



/*------privacy------*/
.box_privacy h3.ttl+*{
margin-top:0;
}
.box_privacy p,
.box_privacy ul,
.box_privacy ol{
margin-top:2em;
}
.box_privacy li+li{
margin-top:1.5em;
}
.box_privacy ol li{
margin-left:2em;
list-style:decimal;
}



/*------statute------*/
.box_statute h3.ttl+*{
margin-top:0;
}
.box_statute h4.ttl{
margin-top:2em;
}
.box_statute p,
.box_statute ul,
.box_statute ol{
margin-top:1em;
}
.box_statute li+li{
margin-top:1em;
}
.box_statute ol li{
margin-left:2em;
list-style:decimal;
}
.box_statute ul li{
margin-left:2em;
list-style:disc;
}
.box_statute .sublist,
.box_statute .sublist li+li{
margin-top:0;
}
.box_statute .sublist{
padding:0;
margin:0;
}
.box_statute .sublist li{
text-indent:-2em;
list-style-type:none;
counter-increment:number;
}
.box_statute .sublist li::before{
content:counter(number)')';
width:2em;
padding-right:0.5em;
display:inline-block;
text-align:right;
}

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

#e404 {
  margin:  calc(100vw / (1400 / 50)) auto;
  text-align: center;
  font-size: calc(100vw / (1400 / 16));
}
#e404  h1 {
  padding-bottom:calc(100vw / (1400 / 40)) ;
  text-align: center;
  font-size: calc(100vw / (1400 / 30));
}
#e404 a{
  text-decoration:underline;
  color:#008cd2;
}


/*------main-------
.thanks{
  padding: 50px 0;
  text-align: center;
}

.thanks h2{
  font-size: 3.375rem;
  line-height: 1.5;
  font-weight: 700;
  color: #003894;
}
.thanks ul{
  width: 500px;
  margin:40px auto;
  display: flex;
  justify-content: space-between;
}
.thanks ul li a{
  display: block;
  width: 230px;
  padding: 10px 0;
  border-radius: 4px;
  background: #003894;
  text-align: center;;
  color: #fff;
  font-size: 1.75rem;
  line-height: 1.5;
  font-weight: 700;
}

@media screen and (max-width:767px){
  .thanks h2{
    font-size: 20px;
    line-height: 1.5;
  font-weight: 700;
  color: #003894;
  }
  .thanks ul{
    width: 100%;
    margin:40px auto;
    display: block;
    text-align: center;
  }
  .thanks ul li a{
    display: block;
    width: 70%;
    margin: 20px auto;
    padding: 15px 0;
    border-radius: 4px;
    background: #003894;
    text-align: center;;
    color: #fff;
    font-size: 1.75rem;
    line-height: 1.5;
    font-weight: 700;
  }
}
*/
