@charset "UTF-8";


/* -----------------------------------------------------


  è±èªãµã¤ã CSS ï¼xhtmlï¼
  æçµæ´æ°ï¼20240528


----------------------------------------------------- */



/* ============= ãµã¤ãå¨ä½ã® è²ãåå®æ°ãå¹ãªã©æå® ============== */

:root {
  --main-min-width:  1160px;    /* ãµã¤ãã®æå°å¹ */

  --base-eizo-color:  #d81416;  /* åºæ¬ã«ã©ã¼ èµ¤ */

  --base-link-color: #1746B8;  /* ãªã³ã¯ã«ã©ã¼ */
}


@media(min-width: 750px){
  a[href^="tel:"]{
    pointer-events: none;
    text-decoration: none;
  }
}

#header_new *,
#footer_new *{
  box-sizing: border-box;
  list-style: none;
}
#header_new li,
#footer_new li{
  list-style: none;
}

#header_new,
#footer_new{
  line-height: 1.6;
}

/* -----------------------------------------------------
     M2 åºæ¬è¨­å®
   ----------------------------------------------------- */

/* ããã©ã«ããã©ã³ããµã¤ãº16px */
.fs12{ font-size: 1.2rem !important; }
.fs13{ font-size: 1.3rem !important; }
.fs14{ font-size: 1.4rem !important; }
.fs16{ font-size: 1.6rem !important; }
.fs17{ font-size: 1.7rem !important; }
.fs18{ font-size: 1.8rem !important; }
.fs24{ font-size: 2.4rem !important; }

.mt5{ margin-top: 5px !important; }
.mt10{ margin-top: 10px !important; }
.mt15{ margin-top: 15px !important; }
.mt20{ margin-top: 20px !important; }
.mt30{ margin-top: 30px !important; }
.mt40{ margin-top: 40px !important; }
.mt50{ margin-top: 50px !important; }
.mt55{ margin-top: 55px !important; }
.mt60{ margin-top: 60px !important; }
.mt70{ margin-top: 70px !important; }
.mt75{ margin-top: 75px !important; }
.mt80{ margin-top: 80px !important; }
.mt90{ margin-top: 90px !important; }
.mt100{ margin-top: 100px !important; }
.mt120{ margin-top: 120px !important; }
.mb10{ margin-bottom: 10px !important; }
.mb20{ margin-bottom: 20px !important; }
.mb30{ margin-bottom: 30px !important; }
.mb40{ margin-bottom: 40px !important; }
.ml15{ margin-left:15px; }
.ml30{ margin-left:30px; }

.pt10{ padding-top: 10px !important; }

.ws-preline{
  white-space: pre-line;
}
.pcObj.globalbtn{
  margin: 0;
}

.txta-c{ text-align: center !important; }
.txta-l{ text-align: left !important; }
.txta-r{ text-align: right !important; }

.vertical-rl{ writing-mode: vertical-rl; }

.bold{ font-weight:bold; }

figure{
  margin: 0;
}
figcaption{
  font-size: 1.4rem;
  padding: 5px;
  text-align: center;
}
.wrap1160{
  max-width: var(--main-min-width);
  width: 100%;
  margin: 0 auto;
}
.wrap980{
  max-width: 980px;
  width: 100%;
  margin: 0 auto;
  padding: 0;
}

/* ------------------------------------
     ãµã¤ãã«å±éã®ã¹ã¿ã¤ã«ã®å®ç¾©
   ------------------------------------ */

.sp{ display: none !important; }
.pc{ display: block !important; }

/* ---------- ãããã¼ ---------- */

#header_new {
  width: 100%;
  background-color: #fff;
  position: fixed;
  z-index: 110;
  top: 0;
  background: #fff;
}
#open_fancybox #header_new,
#open_fancybox #footer_new,
#open_fancybox .sns-list-wrap{
  display: none;
}

#header_new .logo img{
  width: 104px;
}
.header-wrap {
  width: 100%;
  margin: 0 auto;
  padding: 15px 0 0;
}
.head-upper {
  max-width: 1250px;
  width: 100%;
  margin: 0 auto;
  padding: 0;
}

.head-navi {
  min-width: var(--effective-width);
  margin: 0 auto;
  padding: 0;
}

.head-navi ul {
  width: 100%;
  margin: 0 auto;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

.head-navi ul li { 
  width: auto;
  display: inline-block;
  text-align: center;
}

.head-navi ul li a { 
  display: inline-block;
  width: 100%;
  height: 100%;
  padding: 0 30px;
  font-size: 1.5rem;
  font-weight: bold;
  text-decoration: none;
  background: var(--base-eizo-color);
  border: none;
  color: #fff;
  line-height: 36px;
}
.head-navi ul li a:hover {
  color: #ffbfc0;
  transition: all 0.3s ease 0s;
}

.header-wrap{
  width: 100%;
  margin: 0 auto;
}

.header-wrap .flex{
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  position: relative;
  padding: 0 80px;
}
.header-wrap .logo{
  max-width: 104px;
  width: 100%;
  display: block;
  position: relative;
  z-index: 1;
}
.black-bg::after{
  content: '';
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background-color: #000;
  opacity: 0.5;
  display:block;
}
.mega-menu-wrap{
  width: 100%;
  max-width: 1260px;
  height: 75px;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
}
.mega-menu{
  max-width: 710px;
  width: 80%;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  position: absolute;
  top: 50%;
  right: 15px;
  transform: translateY(-50%);
  font-size: 1.4rem;
}
.mega-menu a{
  color: #000;
}
.mega-menu a:hover{
  text-decoration: none;
}
.mega-menu img{
  vertical-align: middle;
}
.mega-menu .country-btn{
  display: flex !important;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  flex: 1;
}
@media screen and (max-width: 750px) {
  .mega-menu .country-btn.pcon{
    display: none !important;
  }
}
.mega-menu .country-btn img{
  padding-right: 5px;
}
.mega-menu ul{
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
}
.mega-menu ul li{
  padding: 0 20px;
}
.mega-menu input{
  width: 161px;
  min-height: 27px;
  margin-right: 5px;
  padding: 0 5px;
  display: inline-block;
}
.black-bg{
  z-index: 2;
}
#navi-wrap .gnavi{
  width: 100%;
  font-size: 1.4rem;
  background: #000;
}

#navi-wrap .gnavi > ul{
  margin: 15px auto 0;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  list-style: none;
}

#navi-wrap .gnavi > ul > li{
  width: 13.5%;
  text-align: center;
}
#navi-wrap .gnavi > ul > li.hmenu-solutions{
  width: 14%;
}
#navi-wrap .gnavi > ul > li.hmenu-products{
  width: 14.5%;
}
#navi-wrap .gnavi > ul > li.hmenu-support{
  width: 13.5%;
}
#navi-wrap .gnavi > ul > li.hmenu-company{
  width: 13.5%;
}
#navi-wrap .gnavi > ul > li.hmenu-ir{
  width: 14%;
}
#navi-wrap .gnavi > ul > li.hmenu-sustainability{
  width: 16.5%;
}
#navi-wrap .gnavi > ul > li.hmenu-recruit{
  width: 14%;
}

#navi-wrap .gnavi > ul > li a{
  width: 100%;
  padding: 10px 20px;
  display: block;
  letter-spacing: 1px;
  position: relative;
}

@media screen and (min-width: 751px) {
  #navi-wrap .gnavi > ul > li.on .menu-name::after{
    content: '';
    position: absolute;
    top: 83%;
    left: 50%;
    transform: translateX(-50%);
    border-bottom: 7px solid #fff;
    border-right: 10px solid transparent;
    border-left: 10px solid transparent;
  }
  #navi-wrap .gnavi > ul > li ul li a:hover{
    text-decoration: none;
    background: #fff;
    color: #000;
  }
  #navi-wrap .gnavi > ul > li a:hover{
    text-decoration: none;
    background: #005da9;
    color: #fff;
  }
}

#navi-wrap .gnavi > ul > li .low-wrap{
  position: absolute;
  left: 0;
  top: 77px;
  margin: 34px 0 0;
  visibility: hidden;
  opacity: 0;
  font-size: 1em;
}
#navi-wrap .gnavi > ul > li.on .low-wrap{
  width: 100%;
  position: absolute;
  top: 77px;
  left: 0;
  visibility: visible;
  opacity: 1;
  transition: 0.6s;
  z-index: 999;
  box-shadow: 0 2px 1px rgba(0, 0, 0, 0.16);
  background: rgba(0, 0, 0, 0.89);
  border-top: 1px solid #fff;
}
#navi-wrap .gnavi > ul > li .low-wrap .wrap1160{
  padding: 50px 0;
  position: relative;
}
#navi-wrap .gnavi > ul > li ul li a{
  width: 90%;
  text-decoration: none;
  color: #fff;
  display: inline-block;
  font-weight: normal;
}
#navi-wrap .gnavi > ul > li ul li a p{
  font-size: 1.5rem;
  padding: 5px;
  color: #191919;
  letter-spacing: 1px;
}

#navi-wrap .gnavi > ul > li ul li a:hover{
  opacity: 0.9;
  transition: 0.3s;
  text-decoration: none;
}
#navi-wrap .gnavi > ul > li a.menu-name {
  line-height: 1em;
  padding: 15px;
  position: relative;
  text-decoration: none;
  color: #fff;
}
.menu-name:hover{
  color: #fff;
  font-weight: bold;
}
/*
.menu-name::before {
  background: #fff;
  content: '';
  width: 100%;
  height: 2px;
  position: absolute;
  left: 0;
  bottom: 0;
  margin: auto;
  transform-origin: right top;
  transform: scale(0, 1);
  transition: transform .3s;
}
.menu-name:hover::before {
  transform-origin: left top;
  transform: scale(1, 1);
}
*/

body.solutions .hmenu-solutions,
body.solutions .hmenu-solutions a:hover,
body.products .hmenu-products,
body.products .hmenu-products a:hover,
body.support .hmenu-support,
body.support .hmenu-support a:hover,
body.company .hmenu-company,
body.company .hmenu-company a:hover,
body.ir .hmenu-ir,
body.ir .hmenu-ir a:hover,
body.sustainability .hmenu-sustainability,
body.sustainability .hmenu-sustainability a:hover,
body.recruit .hmenu-recruit,
body.recruit .hmenu-recruit a:hover{
  background: #005da9;
  font-weight: bold !important;
}
body.solutions .hmenu-solutions a.menu-name,
body.products .hmenu-products a.menu-name,
body.support .hmenu-support a.menu-name,
body.company .hmenu-company a.menu-name,
body.ir .hmenu-ir a.menu-name,
body.sustainability .hmenu-sustainability a.menu-name,
body.recruit .hmenu-recruit a.menu-name{
  font-weight: bold !important;
}
.menu-name:hover{
  background: #005da9;
  transition: 0.4s;
  font-weight: normal;
}
.logo-wrap{
  padding-bottom: 10px;
}
#dropmenu {
  max-width: var(--main-min-width);
  margin: 0 auto;
}
#dropmenu .low{
  width: 100%;
  max-width: 700px;
  padding: 0;
  display:flex;
  flex-wrap: wrap;
  font-size: 1.6rem;
}
#dropmenu .low > li {
  width: 50%;
  text-align: left;
}

/* ãµãã¼ãç¨ã¡ã¬ã¡ãã¥ã¼ */
#dropmenu .hmenu-support .low{
  width: 100%;
  max-width: 100%;
}
#dropmenu .hmenu-support .low > li {
  width: 33.33%;
}

/* è£½åæå ±ç¨ã¡ã¬ã¡ãã¥ã¼ */
#dropmenu .hmenu-products .low2-btn,
#dropmenu .hmenu-products .max-a{
  width: 100%;
}
#dropmenu .hmenu-products span.fs-mini{
  font-size: 1.2rem;
}
#dropmenu .hmenu-products .low2-btn::after {
  position: absolute;
  top: 50%;
  right: 25px;
}

#dropmenu .hmenu-products .low2-btn + .low2-wrap{
  width: 37%;
}
#dropmenu .hmenu-products .low2-btn.open + .low2-wrap{
  width: 36%;
}

#dropmenu .low > li.head-main{
  width: 85%;
  margin-bottom: 20px;
  font-size: 2.8rem;
  line-height: 1;
}
#dropmenu .low > li.head-main a{
  font-weight: bold;
  margin-left: -20px;
}
#dropmenu .hmenu-support .low > li.head-main a,
#dropmenu .hmenu-products .low > li.head-main a,
#dropmenu .hmenu-solutions .low > li.head-main a,
#dropmenu .hmenu-recruit .low > li.head-main a{
  pointer-events: none
}
.sp-icon{
  display: none;
}

/* ãµãã¡ãã¥ã¼éé */
.low2-wrap{
  width: 41%;
  height: 430px;
  position: absolute;
  top: 0;
  right: 0;
  visibility: hidden;
  opacity: 0;
}
.low2-btn.open + .low2-wrap{
  width: 40%;
  height: 430px;
  position: absolute;
  top: 0;
  right: 0;
  visibility: visible;
  opacity: 1;
  transition: 0.8s;
  z-index: 999;
  background: #07234a;
  display: flex;
  flex-wrap: wrap;
  border-left: 1px solid #999;
}
.hmenu-solutions .low2-wrap,
.hmenu-solutions .low2-btn.open + .low2-wrap,
#navi-wrap .gnavi > ul > li.hmenu-solutions .low-wrap .wrap1160{
  height: 450px;
}
.hmenu-products .low2-wrap,
.hmenu-products .low2-btn.open + .low2-wrap,
#navi-wrap .gnavi > ul > li.hmenu-products .low-wrap .wrap1160{
  height: 450px;
}
.hmenu-support .low2-wrap,
.hmenu-support .low2-btn.open + .low2-wrap,
#navi-wrap .gnavi > ul > li.hmenu-support .low-wrap .wrap1160{
  height: 500px;
}
.hmenu-company .low2-wrap,
.hmenu-company .low2-btn.open + .low2-wrap,
#navi-wrap .gnavi > ul > li.hmenu-company .low-wrap .wrap1160{
  height: 520px;
}
.hmenu-ir .low2-wrap,
.hmenu-ir .low2-btn.open + .low2-wrap,
#navi-wrap .gnavi > ul > li.hmenu-ir .low-wrap .wrap1160{
  height: 420px;
}
.hmenu-sustainability .low2-wrap,
.hmenu-sustainability .low2-btn.open + .low2-wrap,
#navi-wrap .gnavi > ul > li.hmenu-sustainability .low-wrap .wrap1160{
  height: 480px;
}
.hmenu-recruit .low2-wrap,
.hmenu-recruit .low2-btn.open + .low2-wrap,
#navi-wrap .gnavi > ul > li.hmenu-recruit .low-wrap .wrap1160{
  height: 500px;
}
.low2-btn::after{
  content: "";
  display: inline-block;
  line-height: 1;
  width: 10px;
  height: 10px;
  border: 0.1em solid currentColor;
  border-left: 0;
  border-bottom: 0;
  box-sizing: border-box;
  transform: translateY(-50%) rotate(45deg);
  position: absolute;
  top: 50%;
  right: 25px;
}
.low2-btn.open + .low2-wrap ul{
  width: 100%;
  padding: 50px 50px;
}
.low2-wrap li a{
  width: 100% !important;
  padding: 4px 8px !important;
}
.low2-wrap li a:hover{
  background: none;
}

.low2-wrap .head-sub{
  margin-bottom: 15px;
  font-size: 1.8rem;
  font-weight: bold;
  border-bottom: 1px solid #999;
}


/* countryéé */

.country-box{
  width: 100%;
  padding: 0;
  position: absolute;
  top: 111px;
  left: 0;
  z-index: 9999999;
  box-shadow: 0 2px 1px rgba(0, 0, 0, 0.16);
  background: rgba(0, 0, 0, 0.89);
  border-top: 1px solid #fff;
  display: none;
}
.country-box .wrap1160 {
  padding: 50px 25px;
  position: relative;
  min-height: 730px;
}
.country-box ul > li.head-main {
  width: 85%;
  margin-bottom: 20px;
  font-size: 2.8rem;
  line-height: 1;
}
.country-box a{
  color: #fff;
}

/* countryãµãã¡ãã¥ã¼éé */

.country-subbox{
  width: 66%;
  height: 670px;
  position: absolute;
  top: 0;
  right: 0;
  visibility: hidden;
  opacity: 0;
}
.country-sub-btn.open + .country-subbox{
  width: 65%;
  height: 730px;
  position: absolute;
  top: 0;
  right: 0;
  visibility: visible;
  opacity: 1;
  transition: 0.8s;
  z-index: 999;
  background: #07234a;
  border-left: 1px solid #999;
}
.country-sub-btn.open + .country-subbox ul{
  width: 100%;
  padding: 50px 50px;
}

.country-subbox .head-sub {
  width: 100% !important;
  margin-bottom: 15px;
  font-size: 1.8rem;
  font-weight: bold;
  border-bottom: 1px solid #999;
}
.country-subbox .head-sub span{
  color: #fff;
  display: inline-block;
  font-weight: normal;
  padding: 4px 8px !important;
  letter-spacing: 1px;
}

.country-sub-btn.open + .country-subbox .two-column{
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.country-sub-btn.open + .country-subbox .two-column ul{
  padding: 0;
}
.country-sub-btn{
  position: relative;
}
.country-sub-btn::after{
  content: "";
  display: inline-block;
  line-height: 1;
  width: 10px;
  height: 10px;
  border: 0.1em solid currentColor;
  border-left: 0;
  border-bottom: 0;
  box-sizing: border-box;
  transform: translateY(-50%) rotate(45deg);
  position: absolute;
  top: 50%;
  right: 25px;
}
.country-sub-btn.open + .country-subbox .two-column > li{
  width: 47%;
}
.country-subbox li a{
  width: 100% !important;
  padding: 3px 8px !important;
}
.country-subbox li a:hover{
  background: none;
}
.country-subbox .head{
  margin-bottom: 10px;
  font-size: 1.8rem;
  font-weight: bold;
  border-bottom: 1px solid #fff;
}
.other-country-area li{
  font-size: 1.6rem;
}
.other-country-area > ul{
  width: 50%;
}
.country-box li a{
  width: 300px;
  padding: 10px 20px;
  display: inline-block;
}

.other-country-area li a:hover{
  background: #fff;
  color: #000;
  text-decoration: none;
  transition: 0.7s;
}

@media screen and (max-width: 750px) {

  #header_new{
    width: 100%;
    margin: 0;
  }
  #header_new strong {
    margin: 0 auto 15px;
    padding: 5px;
    font-size: 1.2rem;
    color: #fff;
    background: var(--base-eizo-color);
  }
  .head-upper{
    margin: 0;
  }
  .head-upper img{
    width: 100%;
  }
  .header-wrap{
    width: 100%;
    margin: 0 auto;
    padding: 0;
    border-bottom: 1px solid #000;
  }
  .header-wrap .flex{
    padding: 0;
  }
  .hwrap-innner,
  .sp-icon{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
  }
  .hwrap-innner{
    padding: 15px;
  }
  .head-upper{
    max-width: 247px;
    width: 48%;
    padding: 0;
  }
  .sp-icon{
    max-width: 90px;
    width: 53%;
    position: relative;
  }
  .country-box{
    height: 100vh;
    overflow-y: scroll;
    top: 78px;
    padding-bottom: 100px;
  }
  .linewrap{
    position: relative;
  }
  .sp-menu {
    width: 50px;
    height: 50px;
    margin: 0;
    padding: 8px 0;
    cursor: pointer;
    text-align: center;
    position: relative;
  }
  .sp-menu.is-active {
    top: 0 !important;
  }
  .sp-menu .line {
    position: absolute;
    top: 0;
    left: 9px;
    display: block;
    width: 30px;
    height: 2px;
    background: #000;
    transition: all 0.3s ease-out;
    z-index: 101;
    padding: 0;
  }
  .sp-menu .line-t { top: 6px; }
  .sp-menu .line-c { top: 17px; }
  .sp-menu .line-b { top: 27px; }

  .sp-menu.is-active .line-t {
    top: 18px;
    transform: rotate(45deg);
  }
  .sp-menu.is-active .line-c {
    opacity: 0;
  }
  .sp-menu.is-active .line-b {
    top: 18px;
    transform: rotate(135deg);
  }

  /*----------- ã°ã­ã¼ãã«ãã -----------*/

  .mega-menu-wrap{
    width: 100%;
    height: 250px;
    position: relative;
    top: 0;
    left: 0;
    transform: translateX(0);
    order: 2;
    background: #000;
  }
  .mega-menu{
    width: 100%;
    padding: 30px 20px 0 35px;
    display: block;
    position: relative;
    top: 0;
    right: 0;
    transform: translateY(0);
    font-size: 1.3rem;
  }
  .mega-menu ul{
    display: block;
  }
  .mega-menu ul li{
    padding: 0;
    margin-bottom: 8px;
  }
  .mega-menu a{
    color: #fff;
  }

  #navi-wrap{
    width: 100%;
    height: 100vh;
    overflow-y: scroll;
    float: right;
    padding: 0;
    background:  #000;
    /*position: fixed;*/
    top: 80px;
    z-index: 100;
    display: none;
    box-shadow: 1px 2px 5px #cdcdcd;
  }
  #navi-wrap .flex-sp{
    display: flex;
    flex-wrap: wrap;
  }
  #navi-wrap .gnavi{
    order: 1;
  }
  #navi-wrap .gnavi a{
    color: #fff;
    display: block;
  }
  #navi-wrap .gnavi ul{
    width: 100%;
    margin: 0;
    padding: 0;
  }
  #navi-wrap .gnavi > ul{
    width: 100%;
    margin: 0 auto;
    padding: 20px 20px 0;
  }
  #navi-wrap .gnavi > ul > li{
    width: 100% !important;
    text-align: left;
    margin: 0;
    border-bottom: 1px solid #606060;
  }
  #navi-wrap .gnavi > ul > li a{
    width: 100%;
    display: block;
    font-size: 1.5rem;
    padding: 10px 17px;
    color: #fff;
    position: relative;
  }
  #navi-wrap .gnavi > ul > li .low-wrap{
    margin: 5px 0 10px;
    padding: 10px;
    position: relative;
    top: 0;
    display: none;
  }
  #navi-wrap .gnavi > ul > li.on .low-wrap{
    width: 100%;
    margin: 5px auto;
    padding: 0 0 10px;
    position: relative;
    top: 0;
    box-shadow: none;
    border: 0;
    background: none;
    transition: 0s;
  }
  #dropmenu .low > li {
    width: 100%;
    margin-bottom: 0 !important;
  }
  /* ã¹ããç¨searchbox */
  #navi-wrap .gnavi > ul > li.search.sp{
    margin: 0;
    padding-bottom: 15px;
  }
  #navi-wrap .gnavi > ul > li.search.sp form{
    display: flex;
    flex-wrap: wrap;
    align-items: center;
  }
  #navi-wrap .gnavi > ul > li.search.sp input{
    border: 0;
    border-radius: 0;
  }
  #search_sp{
    width: 88%;
    padding: 7px 8px;
  }
  #navi-wrap .gnavi > ul > li.search.sp a{
    width: 12%;
    display: inline-block;
    font-size: 1.5rem;
    padding: 0;
    position: relative;
    background: #717071;
    text-align: center;
  }
  #navi-wrap .gnavi > ul > li.search.sp a img{
    width: 30px;
  }

  /* ãµãã¼ãç¨ã¡ã¬ã¡ãã¥ã¼ */
  #dropmenu .hmenu-support .low > li {
    width: 100%;
  }
  /* è£½åæå ±ç¨ã¡ã¬ã¡ãã¥ã¼ */
  #dropmenu .hmenu-products .low2-btn,
  #dropmenu .hmenu-products .max-a{
    width: 100%;
  }
  #dropmenu .hmenu-products .low2-btn::after {
    position: absolute;
    top: 50%;
    right: 5px;
  }
  #dropmenu .low > li.head-main a {
    margin-left: 0;
    font-weight: normal;
  }
  #dropmenu .low > li.head-main a span.sp{
    display: inline-block !important;
  }
  #navi-wrap .gnavi > ul > li ul li a {
    width: 100%;
    color: #fff;
    padding: 6px 0 7px;
    display: block;
    text-decoration: none;
    font-weight: normal;
    text-align: left;
    font-size: 1.3rem;
  }
  #dropmenu .hmenu-products .low2-btn + .low2-wrap,
  #dropmenu .hmenu-products .low2-btn.open + .low2-wrap{
    width: 100%;
  }
  #navi-wrap .gnavi > ul > li ul li:last-child a{
    border-bottom: 0;
  }
  #navi-wrap .gnavi > ul > li ul li a img{
    display: none;
  }
  #navi-wrap .gnavi > ul > li ul li a p{
    font-size: 1.5rem;
    padding: 5px;
    color: #fff;
    letter-spacing: 2px;
  }
  #navi-wrap .gnavi > ul > li ul li a p::after{
    content: "";
    position: absolute;
    right: 14px;
    bottom: 17px;
    display: block;
    width: 10px;
    height: 10px;
    border-top: solid 1px var(--base-eizo-color);
    border-right: solid 1px var(--base-eizo-color);
    transform: rotate(45deg);
  }
  #navi-wrap .gnavi > ul > li ul li a:hover{
    background: none;
    /* color: var(--base-eizo-color);*/
  }
  #navi-wrap .gnavi .menu-name{
    width: 100%;
    padding: 15px 10px 10px 15px;
    position: relative;
  }
  #navi-wrap .gnavi > ul > li:last-child {
    padding-bottom: 5px;
    border-bottom: 1px solid #606060;
  }
  .menu-name::before,  .menu-name:hover::before {
    content: none;
  }
  body.solutions .hmenu-solutions,
  body.solutions .hmenu-solutions a:hover,
  body.products .hmenu-products,
  body.products .hmenu-products a:hover,
  body.support .hmenu-support,
  body.support .hmenu-support a:hover,
  body.company .hmenu-company,
  body.company .hmenu-company a:hover,
  body.ir .hmenu-ir,
  body.ir .hmenu-ir a:hover,
  body.sustainability .hmenu-sustainability,
  body.sustainability .hmenu-sustainability a:hover,
  body.recruit .hmenu-recruit,
  body.recruit .hmenu-recruit a:hover{
    background: none;
  }
  .menu-name:hover{
    background: none;
  }
  #navi-wrap .gnavi .menu-name.open{
    border-bottom: 0;
    padding: 15px 10px 10px 15px;
  }
  #navi-wrap .gnavi .menu-name:not(.link):after{
    content: "";
    position: absolute;
    right: 10px;
    bottom: 16px;
    transition: all 0.2s ease-in-out;
    display: inline-block;
    line-height: 1;
    width: 10px;
    height: 10px;
    border: 0.1em solid currentColor;
    border-left: 0;
    border-bottom: 0;
    box-sizing: border-box;
    transform: translateY(-50%) rotate(135deg);
  }
  #navi-wrap .gnavi .menu-name.open:after{
    position: absolute;
    right: 10px;
    bottom: 5px;
    transform: translateY(-50%) rotate(315deg);
  }
  #navi-wrap .link:after{
    content: "";
    position: absolute;
    right: 14px;
    bottom: 14px;
    display: block;
    width: 10px;
    height: 10px;
    border-top: solid 2px #fff;
    border-right: solid 2px #fff;
    transform: rotate(45deg);
  }
  #dropmenu .low{
    padding: 0;
  }
  #navi-wrap .gnavi > ul > li .low-wrap .wrap1160{
    padding: 10px;
    position: relative;
    min-height: auto;
  }
  body.solutions .hmenu-solutions, body.solutions .hmenu-solutions a:hover, body.products .hmenu-products, body.products .hmenu-products a:hover, body.support .hmenu-support, body.support .hmenu-support a:hover, body.company .hmenu-company, body.company .hmenu-company a:hover, body.ir .hmenu-ir, body.ir .hmenu-ir a:hover, body.sustainability .hmenu-sustainability, body.sustainability .hmenu-sustainability a:hover, body.recruit .hmenu-recruit, body.recruit .hmenu-recruit a:hover{
    background: none;
  }

  .low2-btn::after{
    width: 8px;
    height: 8px;
    transform: translateY(-25%) rotate(135deg);
    position: absolute;
    top: 50%;
    right: 5px;
    transition: all 0.2s ease-in-out;
  }
  .low2-btn.open::after{
    transform: translateY(-50%) rotate(315deg);
  }

  .low2-wrap .head-sub{
    margin: 10px 0 0;
    font-size: 1.6rem;
    font-weight: bold;
    border-bottom: none;
  }
  .low2-btn.open + .low2-wrap{
    border-top: 1px solid #808080;
  }
  .low2-btn.open + .low2-wrap {
    width: 100%;
    height: auto;
    padding: 10px 20px;
    position: relative;
    top: 0;
    right: 0;
    border-left: 0;
    border-right: 0;
  }

  #navi-wrap .gnavi > ul > li.hmenu-solutions .low-wrap .wrap1160,
  #navi-wrap .gnavi > ul > li.hmenu-products .low-wrap .wrap1160,
  #navi-wrap .gnavi > ul > li.hmenu-support .low-wrap .wrap1160,
  #navi-wrap .gnavi > ul > li.hmenu-company .low-wrap .wrap1160,
  #navi-wrap .gnavi > ul > li.hmenu-ir .low-wrap .wrap1160,
  #navi-wrap .gnavi > ul > li.hmenu-sustainability .low-wrap .wrap1160,
  #navi-wrap .gnavi > ul > li.hmenu-recruit .low-wrap .wrap1160,
  .low2-btn.open + .low2-wrap ul{
    width: 100%;
    height: auto;
    padding: 0 15px 15px 32px;
  } 
  .hmenu-solutions .low2-wrap,
  .hmenu-solutions .low2-btn.open + .low2-wrap,
  .hmenu-products .low2-wrap,
  .hmenu-products .low2-btn.open + .low2-wrap,
  .hmenu-support .low2-wrap,
  .hmenu-support .low2-btn.open + .low2-wrap,
  .hmenu-company .low2-wrap,
  .hmenu-company .low2-btn.open + .low2-wrap,
  .hmenu-ir .low2-wrap,
  .hmenu-ir .low2-btn.open + .low2-wrap,
  .hmenu-sustainability .low2-wrap,
  .hmenu-sustainability .low2-btn.open + .low2-wrap,
  .hmenu-recruit .low2-wrap,
  .hmenu-recruit .low2-btn.open + .low2-wrap{
    width: 100%;
    height: auto;
    padding: 0 10px 10px;
  } 
  .other-country-area > ul{
    width: 100%;
  }


  /* countryéé */

  .country-box .wrap1160 {
    padding: 20px 10px !important;
    height: auto;
    min-height: auto;
  }
  .country-box li a{
    width: 100%;
  }
  .country-subbox .head-sub{
    display: none;
  }
  .other-country-area li{
    font-size: 1.4rem;
  }
  .other-country-area > ul > li {
    width: 100% !important;
    text-align: left;
    margin: 0;
    border-bottom: 1px solid #fff;
  }
  .country-sub-btn::after{
    transform: translateY(-50%) rotate(135deg);
    transition: 0.2s;
    right: 15px;
  }
  .country-sub-btn.open:after {
    transform: translateY(-50%) rotate(315deg);
  }
  .country-sub-btn.open + .country-subbox .two-column {
    display: block;
  }
  .country-sub-btn.open + .country-subbox .two-column > li{
    width: 100%;
  }

  .country-sub-btn.open + .country-subbox ul{
    width: 100%;
    height: auto;
    padding: 5px 30px 30px;
    margin: 0;
  } 
  .country-subbox{
    height: auto;
    opacity: 0;

  }
  .country-sub-btn.open + .country-subbox{
    width: 100%;
    height: auto;
    padding: 0;
    position: relative;
    visibility: visible;
    opacity: 1;
    transition: 0s;
    z-index: 999;
    background: none;
    border-left: 0;
    display: none;
  }
  .country-subbox li a{
    padding: 5px 8px!important;
    line-height: 1.7em;
  }
  .other-country-area li a:hover{
    background: none;
    color: #fff;
  }

}

@media screen and (min-width: 751px) and (max-width: 1290px) {

  .head-upper{
    padding: 0 30px;
  }

}


/* ---------- ããã¿ã¼ ---------- */

#back-to-top{
  display: inline-block;
  vertical-align: middle;
  color: #333;
  line-height: 1;
  width: 2.5em;
  height: 2.5em;
  border: 0.1em solid currentColor;
  border-left: 0;
  border-bottom: 0;
  box-sizing: border-box;
  transform: translateY(25%) rotate(-45deg);
  position: absolute;
  right: 0;
}
.sns-list-wrap{
  max-width: 100%;
  width: 100%;
  background: #fff;
}
.sns-list{
  max-width: 460px;
  width: 100%;
  margin: 0 auto;
  padding: 77px 0 60px;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  text-align: center;
  list-style: none;
}
.ir.top .sns-list,
.company.top .sns-list{
  margin: 177px auto 60px;
}
.sns-list li{
  width: 14%;
  list-style: none;
}
.sns-list li img{
  width: 56px;
}
#footer_new{
  background :#000;
  padding: 50px 0 20px;
  font-size: 1.4rem;
}
#footer_new a,
#footer_new span{
  width: auto;
  display: inline-block;
  color: #fff;
  line-height: 2;
  position: relative;
}
#footer_new a:hover{
  text-decoration: underline;
}
#footer_new .main-menu > ul,
#footer_new .flex {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
#footer_new .main-menu .head{
  width: 100%;
  margin-bottom: 15px;
  font-size: 1.8rem;
  font-weight: bold;
  border-bottom: 1px solid #999999;
  line-height: 1;
}
#footer_new .main-menu .head.half{
  width: 50%;
}

/* 3ã¤ã®ãªã¹ã */
#footer_new .main-menu > ul.three > li{
  width: 22%;
  margin-bottom: 60px;
}
#footer_new .main-menu > ul.three > li:nth-child(3),
#footer_new .main-menu > ul.three > li:nth-child(3) ul li.flex ul{
  width: 47%;
}

/* 4ã¤ã®ãªã¹ã */
#footer_new .main-menu > ul.four > li{
  width: 22%;
  margin-bottom: 60px;
}
#footer_new .head a:hover{
  text-decoration: none;
}
#footer_new .head a:after{
  content: '';
  display: inline-block;
  width: 8px;
  height: 8px;
  border: solid 2px currentColor;
  border-top: 0;
  border-left: 0;
  transform: translateX(-25%) rotate(-45deg) skew(8deg, 8deg);
  margin-left: 20px;
  vertical-align: middle;
}
#footer_new ul.onlymenu li{
  width: 22%;
  font-size: 1.6rem;
  margin-bottom: 50px;
}
#footer_new .onlymenu li:not(.other) a:after{
  content: '';
  display: inline-block;
  width: 8px;
  height: 8px;
  border: solid 2px currentColor;
  border-top: 0;
  border-left: 0;
  transform: translateX(-25%) rotate(-45deg) skew(8deg, 8deg);
  margin-left: 20px;
  vertical-align: middle;
}
#footer_new .onlymenu img {
  max-width: 100%;
  width: auto;
  vertical-align: middle;
  display: inline-block;
  padding-left: 15px;
}

/* ãµãã¡ãã¥ã¼ */
#footer_new .sub-menu {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  border-top: 1px solid #fff;
  padding-top: 25px;
}
#footer_new .sub-menu ul{
  width: 65%;
  display: flex;
  flex-wrap: wrap;
}
#footer_new .sub-menu ul li{
  margin-right: 25px;
}
#footer_new .sub-menu ul li:last-child{
  margin-right: 0;
}
#footer_new .sub-menu small{
  width: 35%;
  color: #fff;
  text-align: right;
}

@media screen and (max-width: 750px) {

  #back-to-top{
    width: 2em;
    height: 2em;
    border: 0.15em solid currentColor;
    border-left: 0;
    border-bottom: 0;
  }
  .sns-list{
    width: 88%;
    margin: 80px auto 65px;
    text-align: center;
  }
  .sns-list li img{
    width: 46px;
  }

  #footer_new{
    padding: 0;
  }
  #footer_new .main-menu{
    display: none;
  }
  #footer_new .sub-menu {
    display: block;
    border-top: 0;
    padding-top: 15px;
  }
  #footer_new .sub-menu ul,
  #footer_new .sub-menu small{
    width: 100%;
    display: block;
    text-align: center;
  }
  #footer_new .sub-menu small{
    padding: 50px 0 35px;
  }
  #footer_new .sub-menu ul li{
    width: 100%;
    line-height: 2.3;
  }
  #footer_new .sub-menu ul li a{
    line-height: 2.3;
  }
}

@media screen and (min-width: 751px) and (max-width: 1290px) {

  footer .wrap1160{
    padding: 0 30px;
  }

}

/* --------------------------------------------

 ã¹ãã

-------------------------------------------- */

@media screen and (max-width: 750px) {

  .sp{ display: block !important; }
  .pc{ display: none !important; }

  .wrap1160{
    max-width: 100%;
    width: 100%;
    padding: 25px 40px 0;
  }
  .wrap980{
    max-width: 100%;
    width: 100%;
  }
  .prl20-sp{ padding: 0 20px !important; }


}/* max-width:750px */

/* common.cssã®æã¡æ¶ã */
#container{
  padding: 113px 0 0;
}


/* å°å·ç¨cssè¿½è¨_20240528 */

@media print{

  html {
    font-size: 55%;
  }

  .mega-menu,
  #navi-wrap .gnavi,
  .mega-menu-wrap,
  .language{
    display: none !important;
  }
  .head-upper {
    padding: 0 0 0 30px;
  }
  .header-wrap {
    position: relative;
    padding: 20px 0;
    border-bottom: 5px solid #000;
  }
  #footer_new .wrap1160{
    padding: 0 30px;
  }
  #footer_new {
    background: none;
    padding: 0 0 20px;
  }
  #footer_new .main-menu,
  #footer_new .sub-menu ul,
  .sns-list,
  #back-to-top{
    display: none !important;
  }
  #footer_new .sub-menu small {
    width: 100%;
    color: #000;
    text-align: center;
  }

}
