/*
SP (maxwidth: 767px) 用 CSS.
madia query は HTML での link タグ属性で指定している.
<link rel="stylesheet" href="/jp/v3/cmn/css/common-small.css" media="screen and (max-width: 767px)">
*/


/*==================================
container
==================================*/
.header {
  width: auto;
}

#main {
  width: auto;
  float: none;
  min-height: 0;
  margin-top: 0;
  padding: 0;
}

.container {
  min-width: 0;
  position: relative;
  overflow: hidden;
  width: 100%;
}

#extra-tools {
  float: none;
  width: auto !important;
  padding: 0 20px 0 20px;
}

.contents-group {
  padding: 134px 20px 0 20px;
  overflow: hidden;
}

#contents {
  width: 100%;
  overflow: hidden;
  min-height: 0;
  padding-top: 0;
}

#contents .wrap {
  width: auto;
}

.container_inner {
  position: relative;
  width: 100%;
}

.js-ready .container_inner {
  left: 0;
}

.csstransitions.js-nav .container_inner {
  left: -100%;
}

.js-ready .container_inner {
  left: 0;
}

.csstransitions.js-ready .container_inner {
  left: 0 !important;
  backface-visibility: hidden;
}

.csstransitions.js-nav .container_inner {
  -webkit-transform: translate(-100%, 0);
  -moz-transform: translate(-100%, 0);
  -ms-transform: translate(-100%, 0);
  -o-transform: translate(-100%, 0);
  transform: translate(-100%, 0);
}

.contents-group {
  float: none;
  width: auto;
}

#extra-tools {
  margin-top: 30px;
}

/*==================================
header
==================================*/

#nav-open-btn img {
  width: 25px;
  height: auto;
}

#nav-close-btn {
  display: block;
  position: absolute;
  left: 18px;
  top: 17px;
}

#nav-close-btn img {
  width: 19px;
  height: 19px;
}

#nav-title {
  padding-top: 15px;
}

#nav-title img {
  width: 68px;
  height: auto;
}

#nav-open-btn {
  display: block;
}
/* megadd
--------------------------------------------------------- */
.mgdd-wrap {
  display: none;
}

/* globalnavi_sub
--------------------------------------------------------- */
.nav-contents .sub_button {
  position: static;
  width: auto;
}

.nav-contents .nav.utility {
  position: static;
}

.nav-contents .nav.utility li.customer {
  border-left: 1px solid #dedede;
  width: 34%;
  border-right: 1px solid #dedede;
}

.nav-contents .nav.utility li.product_info span {
  padding-right: 15px;
  margin-left: -5px;
  background: url(/jp/v3/cmn/img/navigation/ico_menu_outlink.png) 76px 16px
    no-repeat;
}

.nav-contents .nav.utility li.product_info a {
  padding: 3px 0 17px 8px;
}

.nav-contents .nav.utility li img {
  width: auto;
  height: 12px;
}

.nav-contents .nav.utility li.customer img {
  width: auto;
  height: 12px;
}

.nav-contents .nav.utility li.product_info img {
  width: auto;
  height: 14px;
}

.nav-contents .nav.utility li.product_info img {
  width: 75px;
  height: auto;
}

.nav-contents .nav.utility.language li a {
  padding: 0 0;
}

.nav-contents .nav.utility.language li .mark {
  display: none;
}

.nav-contents .nav.utility.language li.english img {
  width: 38px;
  height: auto;
}

.nav-contents .nav.utility.language li.chinese img {
  width: 35px;
  height: auto;
}

.nav-contents .search-box {
  position: relative;
  top: 0;
  left: 0;
  padding: 16px 18px;
  background-color: #dedede;
}

.nav-contents .search-box input[type="text"] {
  box-sizing: border-box;
  height: 33px;
  background-color: #fff;
  width: 100% !important;
  padding: 10px;
  border-radius: 6px;
  font-size: 16px !important;
}

.nav-contents .sub_button {
  position: static;
  padding-bottom: 12px;
}

#nav-area:not(:target) {
  z-index: 1;
}

.nav-contents .search-box input.searchBtn {
  height: auto;
  left: auto;
  right: 26px;
  top: 23px;
  width: 19px;
}

/* globalnavi
--------------------------------------------------------- */
.global-navi {
  background: #fff;
}

#footer-global-navi .global-navi > li > a {
  background-position: 20px 27px;
  border: none !important;
}

.global-navi > li > a {
  text-align: left;
  font-size: 14px;
  border-bottom: none !important;
}

.global-navi li.brands,
.global-navi li.csr,
.global-navi li.sustainability,
.global-navi li.rd,
.global-navi li.culture,
.global-navi li.beauty-art,
.global-navi li.ir,
.global-navi li.company,
.global-navi li.career {
  margin-left: 0px;
}

.global-navi > li > a img {
  height: 15px;
  width: auto;
}

.global-navi .brands a,
.global-navi .csr a,
.global-navi .sustainability a,
.global-navi .rd a,
.global-navi .culture a,
.global-navi .beauty-art a,
.global-navi .ir a,
.global-navi .company a,
.global-navi .career a {
  width: auto;
}

.global-navi li a:hover {
  border: none;
}

#nav-area .global-navi {
  border-top: none;
  margin-top: 0;
}

.global-navi {
  position: static;
  width: auto;
  border-top: 2px solid #000;
  margin-top: 13px;
}

.global-navi li {
  margin-left: 0 !important;
}

/*==================================
megadropdown
==================================*/
.mgdd-wrap {
  display: none !important;
}

.global-navi > li > a:hover img {
  border-bottom: none;
}

/*==================================
aside
==================================*/
#category-title {
  padding: 0 0 18px 0;
  border-bottom: 2px solid #000;
  margin-bottom: 0;
}

#contents .wrap {
  background-image: none;
  margin: 0 auto 0 auto;
}

#aside {
  width: auto;
  margin-left: 0;
  float: none;
}

#ir #aside {
  margin-top: -1px;
}

#sustainability #aside {
  margin-top: -18px;
}

#rd #aside {
  margin-top: -1px;
}

#contents #aside .nav.local {
  padding: 0px 0 0 0;
  background: url(/jp/cmn/img/bg_aside.png) repeat-x 0 0 #c8ded9;
  font-size: 100%;
}

#contents #aside .nav.local li,
#contents #aside .first_nodes dd {
  font-size: 124%;
}

#aside .local-block li:first-child {
  border-top: 1px solid #dedede;
}

#aside .local-block li.governance {
  border-top: none;
}

#contents #aside .nav.local li {
  display: block;
  width: 100%;
  display: table;
}

#contents #aside .nav.local li.community a {
  border-bottom: none;
}

#contents #aside .nav.local li a {
  display: block;
  width: 100%;
  display: table-cell;
  vertical-align: middle;
  height: 54px;
  padding: 0 10px 0 0;
  margin-bottom: 0;
  border-bottom: 1px solid #dedede;
}

#contents #aside .local-block dt {
  padding: 0 10px 7px 10px;
  margin-top: 18px;
  margin-left: 0;
}

#contents #aside .local-block dt {
  background: url(/jp/cmn/img/icon_aside_ctg.gif) no-repeat left 0.6em #fff;
}

.aside-section-line {
  margin-left: 0;
  margin-top: 8px;
  margin-bottom: 30px;
}

#contents #aside .aside-section-line.bottom + .nav.local li:first-child a {
  border-top: 1px solid #dedede;
}

#contents #aside .aside-section-line.top {
  margin-bottom: -29px;
  margin-top: 33px;
}

#contents #aside #aside-csr-iso-section dt {
  margin-left: 0;
  padding-left: 11px;
  padding-bottom: 4px;
  background: url(/jp/cmn/img/icon_aside_ctg.gif) no-repeat left 0.6em #fff;
}

#contents #aside #aside-sustainability-iso-section dt {
  margin-left: 0;
  padding-left: 11px;
  padding-bottom: 4px;
  background: url(/jp/cmn/img/icon_aside_ctg.gif) no-repeat left 0.6em #fff;
}

#contents #aside-csr-iso-section .nav.local {
}

/*==================================
footer
==================================*/
.footer-line {
  display: none;
  margin: 22px 20px 16px 20px;
  border-top: 1px solid #b71932;
}

#footer .wrap .copyright {
  font-size: 83% !important;
}

#footer .wrap .copyright {
  float: none;
}

#footer ul {
  list-style: none;
}

#footer-global-navi {
  display: block;
  width: 100%;
  overflow: hidden;
  position: relative;
}

#sitemap {
  display: none;
}

/*==================================
    topicpath
    ==================================*/
#topicpath {
  display: none;
  visibility: hidden;
  padding-top: 80px;
}

/*==================================
sub_topics
==================================*/
#sub-area {
  width: auto;
}

#news-container {
  width: auto;
  padding: 0;
  float: none;
  position: static;
  padding: 0 20px 0 20px;
  margin-top: 30px;
  display: block;
}

.topics_body {
  clear: both;
  padding: 0 0;
}

.topics_body ul.icon li span.title {
  width: auto;
  clear: both;
  padding: 0;
}

.topics_body ul.subtopic-headline li span.title {
  width: auto;
  clear: both;
  padding: 0;
  margin-top: 5px;
}

.topics_blk {
  min-width: 0;
  max-width: auto;
  padding-top: 0;
}

.topics_blk .blk_header {
  height: 26px;
}

.topics_blk .blk_header h2 {
  top: 0;
}

#careers .topics_blk .blk_header h2 {
  position: relative;
}

#careers .topics_blk .blk_header {
  height: auto;
}

#careers .sub-title {
  margin: 0;
  padding-top: 0;
  font-size: 9px !important;
}

.topics_blk .blk_header .nav li.btn_topics_index {
  bottom: auto;
  top: 3px;
}

.topics_blk .blk_header .nav li.btn_topics_rss {
  bottom: auto;
  top: 0;
}

.topics_body ul.subtopic-headline li {
  border-top: 1px solid #dedede;
  margin: 0;
  padding: 10px 0;
}

.topics_body ul.subtopic-headline li:first-child {
  border-top: none;
}

.topics_body ul.subtopic-headline li span.date {
  width: 90px;
  padding: 0.1em 0;
  color: #818181;
}

.category-index .topics_body ul.subtopic-headline,
.topics_body ul.subtopic-headline {
  padding: 0;
}

.topics_blk .blk_ header .nav li.btn_topics_index {
  right: 27px;
  bottom: 3px;
}

/*==================================
extrabanner
==================================*/
#extra-banner {
  float: none;
  width: auto;
  min-width: 290px;
  padding-left: 0;
  padding-right: 0;
  margin: 0 auto;
}

#extra-banner ul {
  min-width: 290px;
  margin-left: -10px;
  text-align: center;
}

#extra-banner li {
  width: 135px;
  height: auto;
  margin-left: 5px;
  margin-right: 5px;
  margin-bottom: 10px;
  float: none;
  display: inline-block;
}

#extra-banner li img {
  width: 100%;
  height: auto;
}

/*==================================
tools
==================================*/
#tools {
  width: auto;
  height: auto;
  margin-top: 12px;
}

.tools_menu {
  position: static;
  text-align: center;
}

.tools_menu li {
  display: inline-block;
  padding: 5px 17px 5px 11px;
  float: none;
}

.lt-ie8 .tools_menu li {
  display: inline;
  zoom: 1;
}

.tools_menu li:first-child {
  padding-left: 0;
}

.tools_menu li:last-child {
  padding-right: 0;
}

.tools_menu li img {
  width: 26px;
  height: auto;
}

/*==================================
pagetopButton
==================================*/
#float-pagetop {
  display: none !important;
}

#fix-pagetop {
  display: none;
  position: absolute;
  bottom: 186px;
  right: 17px;
  width: 57px;
  height: 68px;
}

#fix-pagetop img {
  width: 100%;
  height: auto;
}

/*==================================
改行（表示させる）
==================================*/
.sp-break {
  display: inline-block;
}

.sub_button-wrapper {
  width: 100%;
}

.global-navi-item.current-nav img {
  border-bottom: none;
}

@media screen and (max-width: 768px) {
  .nav-contents .nav.utility.language li .mark {
    display: none;
  }

  .nav-contents .nav.utility.language li a {
    width: auto;
  }

  #nav-wrap .nav-contents .nav.utility.language li.chinese svg,
  #nav-wrap .nav-contents .nav.utility.language li.english svg {
    height: 13px;
  }
  #footer-global-navi .nav-contents .nav.utility.language li.chinese svg,
  #footer-global-navi .nav-contents .nav.utility.language li.english svg {
    height: 13px;
  }

  #footer .wrap .copyright {
    float: none;
    font-family: "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic Pro", "Yu Gothic",
      YuGothic, sans-serif;
    font-size: 11.1px !important;
  }

  .nav-contents .nav.utility li.newsrelease {
    border-left: 1px solid #dedede;
  }
  .nav-contents .nav.utility li.newsrelease a {
    padding-top: 16px;
    padding-bottom: 16px;
  }
}


/* ----------------------------------------
  header css 2019.11
  author: s-ogino
---------------------------------------- */

#header .header_logo {
  width: 130px;
  margin-bottom: 0;
}

/* ----------------------------------------
  footer css 2019.11
  author: s-ogino
---------------------------------------- */
#footer {
  padding-bottom: 13.333%;
}
#footer .media_list {
  width: 255px;
  margin-bottom: 45px;
}
#footer .media_list svg {
  max-height: 25px;
}
.footer_link_list {
  display: block;
  margin-bottom: 24px;
}
.footer_link_list li {
  margin-bottom: 14px;
}
.footer_link_list li:last-child {
  margin-bottom: 0;
}
.footer_copyright {
  line-height: 1.5;
}
.footer_copyright br { display: block; }

#footer-global-navi {
  font-family: "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic Pro", "Yu Gothic", YuGothic, sans-serif;
}
#footer-global-navi .global-navi .global-navi2 {
  display: none;
}
#footer-global-navi .global-navi li {
  border-bottom: 1px solid #e6e6e6;
}
#footer-global-navi .global-navi li > a {
  display: block;
  width: 100%;
  font-size: 14px;
  padding: 14px 16px 13px 18px;
}
#footer-global-navi .search-box {
  width: 100%;
  height: 65px;
  background: #dedede;
  padding: 16px 18px;
  box-sizing: border-box;
  position: relative;
}
#footer-global-navi .search-box fieldset {
  width: 100%;
  height: 100%;
}
#footer-global-navi .search-box input[type="text"] {
  border: none;
  width: 100%;
  height: 100%;
  background: #FFF;
  border-radius: 6px;
}
#footer-global-navi .search-box .searchBtn {
  width: 19px;
  position: absolute;
  top: 50%;
  right: 26px;
  transform: translate(0, -50%);
  outline: none;
}

/* sub button -------- */
#footer-global-navi .sub_button-wrapper {
  padding: 15px 10px;
  box-sizing: border-box;
}
#footer-global-navi .sub_button {
  display: flex;
  justify-content: space-between;
  padding: 0;
}
#footer-global-navi .sub_button a {
  padding: 10px;
}
#footer-global-navi .language {
  display: flex;
}

/* ----------------------------------------
  recommend for old pages 2019.12
  author: s-ogino
---------------------------------------- */
.recommend {
  width: calc(100% - 40px);
  margin-top: 40px;
}

/* --------------------------------
  IE hack
-------------------------------- */
/* SPサイズのメニュー展開時にスクロールできなくなる */
_:-ms-lang(x), .header_nav-area .nav-contents {
  max-height: calc(100vh - 70px);
}