@charset "utf-8";



/* ----------------

  Includes

---------------- */



@import "//fonts.googleapis.com/css?family=Barlow:400,500,600,700|Cormorant:600|Roboto:700|Poppins:400,700";

@import "//fonts.googleapis.com/css?family=Noto+Sans+JP:400,700&subset=japanese";



@import "/common/css/base.css?ud=210212";

@import "/common/css/header.css?ud=250820";

@import "/common/css/footer.css?ud=240417";





/* ----------------

  Tool

---------------- */

.bgt {

  background-repeat: no-repeat;

  background-position: center top;

  text-indent: 100%;

  white-space: nowrap;

  overflow: hidden;

}



._csstrans ._op7 {

  transition: opacity .4s cubic-bezier(.165, .84, .44, 1);

}

._op7:hover {

  opacity: 0.65;

}



.right {

  float: right;

}

.left {

  float: left;

}

/*\*/

*+html .clearfix {
  height: 1%;
}

* html .clearfix {
  height: 1%;
}

.clearfix {
  display: block;
}

/**/

.clearfix:after {

  clear: both;

  content: ".";

  display: block;

  height: 0;

  font-size: 0;

  visibility: hidden;

}



.txt_right {

  text-align: right;

}

.txt_center {

  text-align: center;

}

._txt_min {

  font-family: 'Yu Mincho', 'YuMincho', serif;

}



._sup {

  vertical-align: super;

  font-size: 85%;

}



._sub {

  vertical-align: sub;

  font-size: 85%;

}

._str {

  font-weight: 700;

}

._under {

  text-decoration: underline;

}

._ti1 {

  text-indent: -1em;

  padding-left: 1em;

}

._target {

  padding-top: 141px;

  margin-top: -141px;

}

._box_right {

  display: flex;

  flex-direction: row;

  flex-wrap: wrap;

  justify-content: flex-end;

}

._note {

  font-size: 87.5%;

  line-height: 1.4;

}

._ln11 {

  line-height: 1.1;

}

._ln10 {

  line-height: 1.0;

}

._ts85 {

  font-size: 85%;

}

._ls1 {

  letter-spacing: -1px;

}

._ls0 {

  letter-spacing: 0;

}

._italic {

  font-style: italic;

}



a._ul:hover {

  text-decoration: underline;

}

a .el {

  padding-right: 15px;

  position: relative;

}

a .el::after {

  display: block;

  position: absolute;

  top: 2px;

  right: 0;

  width: 13px;

  height: 8px;

  background-image: url(../images/icon_ow.png);

  background-repeat: no-repeat;

  background-position: center top;

  content: '';

}



a ._el {

  position: relative;

}

a ._el::after {

  position: absolute;

  top: 2px;

  right: -15px;

  width: 13px;

  height: 8px;

  background-image: url(../images/icon_ow.png);

  background-repeat: no-repeat;

  background-position: center top;

  content: '';

}

a ._el._aw::after {

  background-image: url(../images/icon_ow_w.png);

}

a:hover ._el._w::after {

  background-image: url(../images/icon_ow_w.png);

}

.linkbox_gray ._el::after {

  background-image: url(../images/icon_ow_g.png);

}

.linkbox_gray:hover ._el::after {

  background-image: url(../images/icon_ow_r.png);

}







.mg-t5 {
  margin-top: 5px;
}

.mg-t10 {
  margin-top: 10px;
}

.mg-t15 {
  margin-top: 15px;
}

.mg-t20 {
  margin-top: 20px;
}

.mg-t25 {
  margin-top: 25px;
}

.mg-t30 {
  margin-top: 30px;
}

.mg-t35 {
  margin-top: 35px;
}

.mg-t40 {
  margin-top: 40px;
}

.mg-t45 {
  margin-top: 45px;
}

.mg-t50 {
  margin-top: 50px;
}

.mg-t55 {
  margin-top: 55px;
}

.mg-t60 {
  margin-top: 60px;
}

.mg-t70 {
  margin-top: 70px;
}

.mg-t80 {
  margin-top: 80px;
}

.mg-t90 {
  margin-top: 90px;
}

.mg-t100 {
  margin-top: 100px;
}

.mg-t125 {
  margin-top: 125px;
}

.mg-b10 {
  margin-bottom: 10px;
}

.mg-b15 {
  margin-bottom: 15px;
}

.mg-b20 {
  margin-bottom: 20px;
}

.mg-b25 {
  margin-bottom: 25px;
}

.mg-b30 {
  margin-bottom: 30px;
}

.mg-b35 {
  margin-bottom: 35px;
}

.mg-b40 {
  margin-bottom: 40px;
}

.mg-b45 {
  margin-bottom: 45px;
}

.mg-b50 {
  margin-bottom: 50px;
}

.mg-b55 {
  margin-bottom: 55px;
}

.mg-b60 {
  margin-bottom: 60px;
}



@media screen and (min-width:768px) {

  .for_sp {

    display: none;

  }

}

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

  .for_pc {

    display: none;

  }



  .mg-t20 {
    margin-top: 15px;
  }

  .mg-t25 {
    margin-top: 18px;
  }

  .mg-t30 {
    margin-top: 21px;
  }

  .mg-t35 {
    margin-top: 24px;
  }

  .mg-t40 {
    margin-top: 27px;
  }

  .mg-t45 {
    margin-top: 30px;
  }

  .mg-t50 {
    margin-top: 33px;
  }

  .mg-t55 {
    margin-top: 36px;
  }

  .mg-t60 {
    margin-top: 40px;
  }

  .mg-t70 {
    margin-top: 43px;
  }

  .mg-t80 {
    margin-top: 46px;
  }

  .mg-t90 {
    margin-top: 50px;
  }

  .mg-t100 {
    margin-top: 55px;
  }

  .mg-t125 {
    margin-top: 60px;
  }

  .mg-b20 {
    margin-bottom: 15px;
  }

  .mg-b25 {
    margin-bottom: 18px;
  }

  .mg-b30 {
    margin-bottom: 21px;
  }

  .mg-b35 {
    margin-bottom: 24px;
  }

  .mg-b40 {
    margin-bottom: 27px;
  }

  .mg-b45 {
    margin-bottom: 30px;
  }

  .mg-b50 {
    margin-bottom: 33px;
  }

  .mg-b55 {
    margin-bottom: 36px;
  }

  .mg-b60 {
    margin-bottom: 40px;
  }

}







/* ----------------

  Layout

---------------- */



body {}

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

  body._spMenuOpen {

    height: 100vh;

    overflow: hidden;

  }

}





#wrapper {

  width: 100%;

}



#container {}



#content {}



.white_bg {

  width: 100% !important;

  background-color: #ffffff;

  border-top: 1px solid #dfdfdf;

  border-bottom: 1px solid #dfdfdf;

}



.l-1550 {

  width: 100%;

  max-width: 1550px;

  margin-right: auto;

  margin-left: auto;

}



.all_box,

.l-1254 {

  width: 100%;

  max-width: 1254px;

  margin-right: auto;

  margin-left: auto;

  padding-right: 32px;

  padding-left: 32px;

}

.all_box {

  display: flex;

  flex-direction: row;

  justify-content: space-between;

  padding-bottom: calc(140 / 1150 * 100%);

}

.layout_1 .all_box {

  display: block;

}

.max-660 {

  max-width: 660px;

  margin-right: auto;

  margin-left: auto;

}

.max-750 {

  max-width: 750px;

  margin-right: auto;

  margin-left: auto;

}



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

  .all_box,

  .l-1254 {

    padding-right: calc(32 / 1254 * 100%);

    padding-left: calc(32 / 1254 * 100%);

  }

}

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

  .all_box {

    flex-wrap: wrap;

  }

}

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

  .sp-100 {

    width: 100%;

    padding-right: 0;

    padding-left: 0;

  }

  .all_box,

  .l-1254 {}

  .all_box {

    display: block;

    padding-right: 0;

    padding-left: 0;

  }

}





/* ---- main ---- */

#main_box {

  width: calc(850 / 1190 * 100%);

}

.layout_1 #main_box {

  width: 100%;

}



#main_box .main_inner {

  padding-right: 28px;

  padding-left: 28px;

}

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

  #main_box {

    width: 100%;

  }

}



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

  #main_box {

    padding-right: calc(8 / 375 * 100%);

    padding-left: calc(8 / 375 * 100%);

  }

  #main_box .main_inner {

    padding-right: calc(8 / 359 * 100%);

    padding-left: calc(8 / 359 * 100%);

  }

}



/* ---- side ---- */

#side_box {

  width: calc(300 / 1190 * 100%);

  margin-top: 72px;

}

#side_box .title>a {

  height: 80px;

  border: 1px rgb(204, 204, 204) solid;

  font-size: 20px;

  font-weight: 700;

  align-items: center;

}



#side_box a {

  display: flex;

  justify-content: flex-start;

  /* align-items: center; */

  position: relative;

  width: 100%;

  height: auto;

  padding-top: 6px;

  padding-right: 32px;

  padding-bottom: 6px;

  padding-left: calc(30 / 300 * 100%);

  border-bottom: 1px rgb(204, 204, 204) solid;

}

#side_box .row2 a {

  /* height: 64px; */

}

#side_box .row3 a {

  /* height: 80px; */

}



._csstrans #side_box a {

  transition: all .4s cubic-bezier(.165, .84, .44, 1);

}

#side_box a::after {

  position: absolute;

  top: 50%;

  right: 16px;

  width: 9px;

  height: 12px;

  background-image: url(../images/arrow_right_g.svg);

  background-repeat: no-repeat;

  background-position: center center;

  background-size: contain;

  transform: translate3d(0, -50%, 0);

  content: '';

}

#side_box .btn_toggle a::after {

  display: none;

}

#side_box a:hover {

  border-color: rgb(208, 18, 27);

}

#side_box a:hover::after {

  background-image: url(../images/arrow_right_r.svg);

}

#side_box a>div {

  display: flex;

  align-items: center;

  min-height: 35px;

  line-height: 1.2;

}

#side_box .menu_grp_d .menu_grp_d a>div {

  min-height: 27px;

}



#side_box .side_menu {

  font-size: 16px;

}

#side_box .side_menu ul {

  display: flex;

  flex-wrap: wrap;

  width: 100%;

}

#side_box .side_menu li {

  width: 100%;

}

#side_box .side_menu>li>a {

  padding-top: 7px;

  padding-bottom: 7px;

  /* height: 50px; */

}

#side_box .side_menu>li.row2>a {

  /* height: 68px; */

}

#side_box .side_menu>li.row3>a {

  /* height: 86px; */

}



#side_box .side_menu .menu_grp .title_pp {

  display: flex;

  justify-content: flex-start;

  align-items: center;

  position: relative;

  width: 100%;

  height: 50px;

  border-bottom: 1px rgb(204, 204, 204) solid;

  padding-right: 32px;

  padding-left: calc(43 / 300 * 100% + 24px);

  font-weight: 700;

  font-size: 16px;

}

#side_box .side_menu .menu_grp .title_pp::before {

  display: block;

  position: absolute;

  top: 50%;

  background-repeat: no-repeat;

  background-position: center center;

  background-size: contain;

  transform: translate3d(0, -50%, 0);

  content: '';

}

#side_box .side_menu .menu_grp .title_pp.health {

  background-color: rgb(253, 237, 233);

  color: rgb(233, 74, 34);

}

#side_box .side_menu .menu_grp .title_pp.health::before {

  left: calc(24 / 300 * 100%);

  width: 32px;

  height: 32px;

  background-image: url(../../sustainability/images/icon_health.svg);

}

#side_box .side_menu .menu_grp .title_pp.innovation {

  background-color: rgb(229, 240, 250);

  color: rgb(0, 104, 207);

}

#side_box .side_menu .menu_grp .title_pp.innovation::before {

  left: calc(29 / 300 * 100%);

  width: 26px;

  height: 31.5px;

  background-image: url(../../sustainability/images/icon_innovation.svg);

}

#side_box .side_menu .menu_grp .title_pp.society {

  background-color: rgb(229, 246, 238);

  color: rgb(0, 165, 89);

}

#side_box .side_menu .menu_grp .title_pp.society::before {

  left: calc(22 / 300 * 100%);

  width: 35.5px;

  height: 28px;

  background-image: url(../../sustainability/images/icon_society.svg);

}

#side_box .side_menu .menu_grp .title_pp.people {

  background-color: rgb(255, 242, 235);

  color: rgb(255, 121, 56);

}

#side_box .side_menu .menu_grp .title_pp.people::before {

  left: calc(23 / 300 * 100%);

  width: 34px;

  height: 25px;

  background-image: url(../../sustainability/images/icon_people.svg);

}







#side_box .side_menu .menu_grp_c>.btn_toggle {

  display: flex;

  justify-content: flex-start;

  align-items: center;

  position: relative;

  width: 100%;

  min-height: 50px;

  border-bottom: 1px rgb(204, 204, 204) solid;

  padding-right: 42px;

  font-size: 16px;

  line-height: 1.2;

}

#side_box .side_menu .menu_grp_c>.btn_toggle:hover {

  border-bottom-color: rgb(208, 18, 27);

}

#side_box .side_menu .menu_grp_c>.btn_toggle.row2 {

  /* height: 68px;*/

}

#side_box .side_menu .menu_grp_c>.btn_toggle.row3 {

  /*height: 86px;*/

}

#side_box .side_menu .menu_grp_c>.btn_toggle .btn_toggle_act {

  display: block;

  position: absolute;

  top: 0;

  right: 0;

  width: 42px;

  height: 100%;

  cursor: pointer;

}

#side_box .side_menu .menu_grp_c>.btn_toggle .btn_toggle_act::after {

  display: block;

  position: absolute;

  top: 50%;

  right: 11px;

  width: 20px;

  height: 20px;

  border-radius: 50%;

  background-color: rgb(255, 192, 0);

  text-align: center;

  font-size: 12px;

  line-height: 20px;

  overflow: hidden;

  transform: translate3d(0, -50%, 0);

  content: '＋';

}

#side_box .side_menu .menu_grp_c>.btn_toggle .btn_toggle_act:hover::after {

  background-color: rgb(208, 18, 27) !important;

  color: rgb(255, 255, 255);

}

#side_box .side_menu .menu_grp_c._open>.btn_toggle {

  /* background-color: rgb(218,218,218); */

}

#side_box .side_menu .menu_grp_c._open>.btn_toggle .btn_toggle_act::after {

  content: '－';

}

#side_box .side_menu .menu_grp_c._open>.btn_toggle:hover::after {

  /* color: rgb(208,18,27); */

}

#side_box .side_menu .menu_grp_c>li:not(:first-of-type) {

  display: none;

}

#side_box .side_menu .menu_grp_c._close>li:not(:first-of-type) {

  display: none;

}

#side_box .side_menu .menu_grp_c._open>li:not(:first-of-type) {

  display: block;

}

#side_box .side_menu .menu_grp_c a {

  padding-left: calc(46 / 300 * 100%);

  font-size: 14px;

}

#side_box .side_menu .menu_grp_c .btn_toggle a {

  border-bottom-style: none;

  padding-top: 9px;

  padding-right: 0;

  padding-bottom: 9px;

  padding-left: calc(30 / 258 * 100%);
  /* 20220316 */

  /* padding-left: calc(30 / 300 * 100%); */

  font-size: 16px;

}

#side_box .side_menu .menu_grp>.menu_grp_c>.btn_toggle {

  /* padding-left: calc(38 / 300 * 100%); */

}

#side_box .side_menu .menu_grp_d {

  display: none;

}

#side_box .side_menu .menu_grp_d>li>a {

  font-size: 13px;

  padding-left: calc(54 / 300 * 100%);

}

#side_box .side_menu .menu_grp_d .menu_grp_d>li>a {

  height: 40px;

  padding-left: calc(64 / 300 * 100%);

}



#side_box .menu_btn_single {}

#side_box .menu_btn_single:hover {}

#side_box .menu_btn_single .ow {}



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

  #side_box {

    width: 100%;

  }

  #side_box .title>a {

    font-size: 18px;

    height: 65px;

  }

  #side_box a {

    padding-left: 30px;

  }

  #side_box .side_menu .menu_grp_c>.btn_toggle {

    /* padding-left: 30px;*/

  }

  #side_box .side_menu .menu_grp .title_pp {

    padding-left: 67px;

  }

  #side_box .side_menu .menu_grp .title_pp.health::before {
    left: 24px;
  }

  #side_box .side_menu .menu_grp .title_pp.innovation::before {
    left: 29px;
  }

  #side_box .side_menu .menu_grp .title_pp.society::before {
    left: 22px;
  }

  #side_box .side_menu .menu_grp .title_pp.people::before {
    left: 23px;
  }

  #side_box .side_menu .menu_grp_c a {

    padding-left: 46px;

  }

  #side_box .side_menu .menu_grp_c .btn_toggle a {

    padding-left: 30px;

  }

  #side_box .side_menu .menu_grp>.menu_grp_c>.btn_toggle {

    /* padding-left: 38px;*/

  }

  #side_box .side_menu .menu_grp_d>li>a {

    font-size: 12px;

    padding-left: 54px;

  }

}



@media screen and (max-width:767px) {}



/* ----------------

  Parts

---------------- */



/* ---- pankuzu ---- */

#pankuzu {

  position: fixed;

  top: 101px;

  left: 0;

  width: 100%;

  background-color: rgb(218, 218, 218);

  z-index: 2500;

}

#pankuzu .pankuzu_inner {

  display: flex;

  justify-content: flex-start;

  align-items: center;

  width: 100%;

  max-width: 1254px;

  height: 40px;

  margin-right: auto;

  margin-left: auto;

  padding-right: 32px;

  padding-left: 32px;

}

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

  #pankuzu .pankuzu_inner {

    padding-right: calc(32 / 1254 * 100%);

    padding-left: calc(32 / 1254 * 100%);

  }

}

#pankuzu .pankuzu_inner>li {

  position: relative;

  font-size: 15.2px;

  line-height: 1;

  color: rgb(113, 113, 113);

}

#pankuzu .pankuzu_inner>li:not(:first-child) {

  margin-left: 14px;

  padding-left: 25px;

}

#pankuzu .pankuzu_inner>li:not(:first-child)::before {

  display: block;

  position: absolute;

  top: 50%;

  left: 0;

  width: 13px;

  height: 15.8px;

  background-image: url(../images/arrow_right_g.svg);

  background-repeat: no-repeat;

  background-position: left center;

  background-size: contain;

  transform: translate3d(0, -50%, 0);

  content: '';

}

#pankuzu .pankuzu_inner>li>a:hover {

  text-decoration: underline;

}



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

  #pankuzu {

    display: none;

  }

}





/* ---- title ---- */

#title {}

#main_box .title_line {

  position: relative;

}

#main_box .page_title {

  display: block;

  margin-top: 72px;

  margin-bottom: 32px;

  border-bottom: 3px rgb(252, 188, 84) solid;

  padding-bottom: 21px;

  font-size: 26px;

  font-weight: 700;

  line-height: 1.2;

}

#main_box .title_line>.notes {

  position: absolute;

  right: 0;

  bottom: -23px;

  font-size: 14px;

}



#main_box .title_line a.report_link {

  display: none;

}

.ir_data_integrated_report #main_box .title_line a.report_link {

  display: block;

  position: absolute;

  top: -10px;

  right: 0;

  border: 1px solid #cccccc;

  padding: 3px 5px 3px 60px;

  font-size: 10px;

  text-align: center;

  transition: all .4s cubic-bezier(.165, .84, .44, 1);

  background-color: rgb(255, 245, 221);

  background-image: url(/common/images/ank_icon.png);

  background-repeat: no-repeat;

  background-position: 10px 0;

  background-size: contain;

}

.ir_data_integrated_report #main_box .title_line a.report_link span {

  display: block;

  font-size: 14px;

  font-weight: 700;

  transition: all .4s cubic-bezier(.165, .84, .44, 1);

}

.ir_data_integrated_report #main_box .title_line a.report_link:hover {

  border-color: rgb(208, 18, 27);

}

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

  .ir_data_integrated_report #main_box .title_line a.report_link {

    position: inherit;

    top: none;

    right: none;

    margin-bottom: 20px;

    padding: 3px 2px 3px 32px;

    background-position: 2px 0;

  }

  .ir_data_integrated_report #main_box .title_line a.report_link span {

    font-size: 11px;

  }

}



#main_box .ttl_l {

  border-bottom: 3px rgb(114, 113, 113) solid;

}

#main_box .ttl_l>span {

  display: block;

  color: rgb(114, 113, 113);

  font-size: 29px;

  font-weight: 700;

}

#main_box .ttl_m {

  font-size: 26.45px;

  font-weight: 700;

  line-height: 28px;

}

#main_box .ttl_m_underbox {

  display: flex;

  flex-direction: row;

  justify-content: flex-end;

  align-items: center;

  height: 28px;

  margin-top: -28px;

}

#main_box .ttl_m_underbox>.ttl_side_link {

  position: relative;

  display: block;

  padding-top: 2px;

  padding-right: 24px;

  font-size: 17.6px;

  line-height: 1;

}

#main_box .ttl_m_underbox>.ttl_side_link:hover {

  text-decoration: underline;

}

#main_box .ttl_m_underbox>.ttl_side_link::before {

  position: absolute;

  top: calc(50% + 2px);

  right: 0;

  display: block;

  width: 10.57px;

  height: 13.6px;

  background-image: url(../images/arrow_right.svg);

  background-repeat: no-repeat;

  background-position: left center;

  background-size: contain;

  transform: translate3d(0, -50%, 0);

  content: '';

}

#main_box .ttl_s {

  margin-top: 36px;

  margin-bottom: 44px;

  border-bottom: 2px rgb(153, 153, 153) solid;

  padding-bottom: 11px;

  line-height: 1.2;

  font-size: 24px;

  font-weight: 700;

}

#main_box .ttl_s.ttl_s_dot {

  border-bottom-style: dotted;

}

#main_box .ttl_s2 {

  border-left: 4px #f7af0d solid;

  padding: 14px 22px 13px;

  background-color: #f4f4f4;

  font-weight: 700;

  font-size: 18px;

  line-height: 1.44;

}

#main_box .ttl_s3 {

  font-weight: 700;

  font-size: 17px;

}

#main_box .ttl_s4 {}

#main_box .ttl_box {

  border: 3px rgb(114, 113, 113) solid;

  padding-top: 5px;

  padding-bottom: 4px;

  text-align: center;

  font-size: 30px;

  color: rgb(114, 113, 113);

}

#main_box .main_inner {}

#main_box .inner_img_title {

  font-weight: 700;

}



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

  #main_box .page_title {

    margin-top: 32px;

    margin-bottom: 24px;

    padding-bottom: 4px;

    font-size: 20px;

  }

  #main_box .title_line>.notes {

    bottom: -20px;

    font-size: 12px;

  }

  #main_box .ttl_s {

    margin-top: 24px;

    margin-bottom: 24px;

    font-size: 18px;

  }

  #main_box .ttl_s2 {

    padding: 9px 14px 8px;

    font-size: 16px;

  }

  #main_box .ttl_s3 {

    font-size: 15px;

  }

  #main_box .ttl_m {

    font-size: 16px;

  }

  #main_box .ttl_m_underbox>.ttl_side_link {

    padding-right: 20px;

    font-size: 13px;

  }

  #main_box .ttl_m_underbox>.ttl_side_link::before {

    height: 12px;

  }

  #main_box .ttl_box {

    border-width: 2px;

    padding-top: 10px;

    padding-bottom: 9px;

    font-size: 20px;

    line-height: 1.2;

  }

  #main_box .ttl_l>span {

    font-size: 19px;

  }

}





/* ---- box ---- */

#main_box .box_gray {

  background-color: #f4f4f4;

  padding: 10px 10px 9px;

}

#main_box .box_gray20 {

  background-color: #f4f4f4;

  padding: 20px;

}



#main_box .linkbox_gray {}

#main_box .linkbox_gray:hover {}

#main_box .linkbox_gray .pdf {}

#main_box .linkbox_gray .icon-ow {}

#main_box .linkbox_gray:hover .icon-ow {}

#main_box .linkbox_gray .icon-zip {}



#main_box .voice {

  border: 3px solid #dbdbdb;

  padding: 17px;

  overflow: hidden;

}

#main_box .voice img {

  width: 150px;

  height: 150px;

  margin: 0 10px 0 0;

  float: left;

}

#main_box .voice .inner h6 {

  line-height: 18px;

  margin: 0 0 15px 0;

  font-size: 120%;

  font-weight: 700;

}

#main_box .voice .inner h6 span {

  display: block;

  font-size: 80%;

}

#main_box .voice .inner p {

  overflow: hidden;

}



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

  #main_box .voice {

    padding: 10px;

  }

  #main_box .voice img {

    width: 75px;

    height: 75px;

    float: none;

  }

  #main_box .voice .inner {

    clear: both;

    margin-top: -80px;

  }

  #main_box .voice .inner h6 {

    padding-left: 85px;

    min-height: 80px;

  }

}



/* ---- news_box ---- */

.date_list_box {}

.date_list_box .date_list_box_i {

  margin-top: 12px;

  border-radius: 6px;

  background-color: rgb(255, 255, 255);

  padding: calc(48 / 1254 * 100%) calc(52 / 1254 * 100%) calc(28 / 1254 * 100%) calc(48 / 1254 * 100%);

}

.date_list_box .date_list_box_i .ttl_news_box {

  font-weight: 700;

  font-size: 21.85px;

}

.date_list_box .date_list_box_i .update_news>li {

  display: block;
  padding-top: 20px;
  padding-bottom: 20px;

  border-bottom: 1px rgb(162, 163, 163) solid;

}

.date_list_box .date_list_box_i .update_news>li:last-child {

  border-bottom-style: none;

}

.date_list_box .date_list_box_i .update_news>li>a {

  display: flex;

  flex-direction: row;

  flex-wrap: nowrap;

  align-items: center;

  position: relative;

  font-size: 15.5px;

  line-height: 30px;

}

.date_list_box .date_list_box_i .update_news>li>a::before {

  position: absolute;

  top: 50%;

  left: 0;

  display: block;

  width: 10.57px;

  height: 13.6px;

  background-image: url(../images/arrow_right.svg);

  background-repeat: no-repeat;

  background-position: left center;

  background-size: contain;

  transform: translate3d(0, -50%, 0);

  content: '';

}

.date_list_box .date_list_box_i .update_news>li>a>.date {

  position: relative;

  width: 150px;

  padding-top: 25px;

  padding-left: 24px;

  padding-bottom: 25px;

}

.date_list_box .date_list_box_i .update_news>li>a>.text {

  width: calc(100% - 151px);

  padding-left: calc(40 / 1254 * 100%);

}

html[lang='en'] .date_list_box .date_list_box_i .update_news>li>a>.date {

  width: 180px;

}

html[lang='en'] .date_list_box .date_list_box_i .update_news>li>a>.text {

  width: calc(100% - 181px);

}

.date_list_box .date_list_box_i .update_news>li>a:hover .text {

  text-decoration: underline;

}



.date_list_box .tag,

.ir_data_list_box .tag {

  display: inline-block;

  padding-right: .5em;

  padding-left: .5em;

  font-size: 12px;

  line-height: 18.6px;

  border: 1px rgb(255, 255, 255) solid;

}

.tag.dydo,

.tag.tag-dydo {

  color: rgb(225, 90, 36);

  border-color: rgb(225, 90, 36);

}

.tag.dydo-ghd,

.tag.tag-ghd {

  color: rgb(102, 102, 102);

  border-color: rgb(102, 102, 102);

}

.tag.tarami,

.tag.tag-tarami {

  color: rgb(235, 83, 3);

  border-color: rgb(235, 83, 3);

}



a .icon_pdf {

  position: relative;

  padding-left: 21px;

}

a .icon_pdf::before {

  position: absolute;

  display: block;

  top: 50%;

  left: 8px;

  width: 13px;

  height: 16px;

  background-image: url(../images/icon_pdf.svg);

  background-repeat: no-repeat;

  background-size: contain;

  transform: translate3d(0, -50%, 0);

  content: '';

}



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

  .date_list_box .date_list_box_i {

    margin-top: 6px;

    padding: 8px;

  }

  .date_list_box .date_list_box_i .update_news>li>a {

    flex-direction: column;

    align-items: flex-start;

    font-size: 14px;

    line-height: 2;

  }

  .date_list_box .date_list_box_i .update_news>li>a>.date {

    width: 100%;

    padding-top: 10px;

    padding-bottom: 0px;

  }

  .date_list_box .date_list_box_i .update_news>li>a>.text {

    width: 100%;

    padding-left: 24px;

    padding-bottom: 12px;

  }

  .date_list_box .date_list_box_i .update_news>li>a>.text>.tag {

    font-size: 10px;

    letter-spacing: -.5px;

  }

  .date_list_box .date_list_box_i .ttl_news_box {

    font-size: 14px;

  }

  html[lang='en'] .date_list_box .date_list_box_i .update_news>li>a>.date {

    width: 100%;

  }

  html[lang='en'] .date_list_box .date_list_box_i .update_news>li>a>.text {

    width: 100%;

  }

}





/* ---- categoly_menu_box ---- */

#main_box .under_categoly_menu_box {

  display: flex;

  flex-wrap: wrap;

  justify-content: space-between;

}

#main_box .under_categoly_menu_box>li {

  width: calc(50% - 10px);

  margin-bottom: 20px;

}

#main_box .under_categoly_menu_box>li>a {

  position: relative;

  display: flex;

  height: 100%;

  border: 1px rgb(153, 153, 153) solid;

  padding-top: 8px;

  padding-right: 40px;

  padding-bottom: 8px;

  padding-left: calc(20 / 387 * 100%);

}

#main_box .under_categoly_menu_box>li>a::after {

  position: absolute;

  top: 50%;

  right: 16px;

  width: 16px;

  height: 21px;

  background-image: url(../images/arrow_right.svg);

  background-repeat: no-repeat;

  background-position: center center;

  background-size: contain;

  transform: translate3d(0, -50%, 0);

  content: '';

}

#main_box .under_categoly_menu_box>li>a:hover {

  text-decoration: underline;

}

#main_box .under_categoly_menu_box>li>a>span {

  display: flex;

  width: 100%;

  min-height: 53px;

  justify-content: flex-start;

  align-items: center;

}

#main_box .under_categoly_menu_box>li>a>span>span {

  display: block;

  font-weight: 700;

  font-size: 19px;

  line-height: 1.25;

}



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

  #main_box .under_categoly_menu_box>li {

    width: 100%;

    margin-bottom: 12px;

  }

  #main_box .under_categoly_menu_box>li>a {

    padding-right: 24px;

  }

  #main_box .under_categoly_menu_box>li>a::after {

    right: 8px;

    width: 11px;

    height: 14px;

  }

  #main_box .under_categoly_menu_box>li>a>span {

    min-height: 36px;

  }

  #main_box .under_categoly_menu_box>li>a>span>span {

    font-size: 14px;

  }



}





/* ---- table ---- */

#main_box .table_dotline_box {

  padding-bottom: 1px;

  border-bottom: 1px rgb(162, 163, 163) solid;

  /*

  background-image: linear-gradient(to right, #999999, #999999 2px, transparent 1px, transparent 4px);

  background-size: 4px 1px;

  background-position: left bottom;

  background-repeat: repeat-x;

  */

}

#main_box table.dotline {

  width: 100%;

}

#main_box table.dotline th,

#main_box table.dotline td {

  padding-top: 11px;

  padding-bottom: 9px;

  border-top: 1px rgb(162, 163, 163) solid;

  /*

  background-image: linear-gradient(to right, #999999, #999999 2px, transparent 1px, transparent 4px);

  background-size: 4px 1px;

  background-position: left top;

  background-repeat: repeat-x;

  */

}



#main_box table.dotline th {

  padding-left: 22px;

  background-color: #f4f4f4;

  font-weight: bold;

}

#main_box table.dotline td {

  width: auto;

  padding-left: 20px;

}

#main_box table.dotline td img {

  vertical-align: text-bottom;

}



/* ---- link ---- */

.linkbox_gray {

  display: flex;

  align-items: center;

  justify-content: center;

  position: relative;

  width: 100%;

  height: 70px;

  margin-right: auto;

  margin-left: auto;

  border: 1px rgb(153, 153, 153) solid;

  padding-right: 48px;

  padding-left: 24px;

  text-align: center;

  font-size: 20px;

  color: rgb(77, 77, 77);

  line-height: 1.4;

}

.linkbox_gray._row3 {

  height: 90px;

}

.linkbox_gray::after {

  position: absolute;

  top: 50%;

  right: 22px;

  display: block;

  width: 13.8px;

  height: 18px;

  background-image: url(../images/arrow_right_g.svg);

  background-repeat: no-repeat;

  background-position: left center;

  background-size: contain;

  transform: translate3d(0, -50%, 0);

  content: '';

}

.linkbox_gray:hover {

  border-color: rgb(208, 18, 27);

  color: rgb(208, 18, 27);

}

.linkbox_gray:hover::after {

  background-image: url(../images/arrow_right_r.svg);

}



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

  .linkbox_gray {

    height: 50px;

    font-size: 14px;

    padding-right: 30px;

    padding-left: 12px;

  }

  .linkbox_gray._row3 {

    height: 70px;

  }

  .linkbox_gray::after {

    right: 12px;

    height: 14px;

  }

}



/* ---- page_top ---- */

#page_top_btn {

  position: fixed;

  right: 48px;

  bottom: -100px;

  width: 50px;

  height: 50px;

  border: 1px rgb(255, 255, 255) solid;

  border-radius: 50%;

  z-index: 2500;

  background-color: rgba(129, 131, 131, 1);

  cursor: pointer;

}

._csstrans #page_top_btn {

  /* transition: background-color .3s cubic-bezier(.165, .84, .44, 1);*/

}

._csstrans #page_top_btn::before {

  transition: top .1s cubic-bezier(.165, .84, .44, 1);

}

#page_top_btn::before {

  display: block;

  position: absolute;

  left: 50%;

  top: 50%;

  width: 14px;

  height: 11px;

  transform: translate3d(-50%, -50%, 0) rotate(180deg);

  background-image: url(../images/arrow_bottom_w.svg);

  background-repeat: no-repeat;

  background-size: contain;

  background-position: center center;

  content: '';

}

#page_top_btn:hover {

  /* background-color: rgba(129, 131, 131,1);*/

}

#page_top_btn:hover::before {

  top: calc(50% - 2px);

}



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

  #page_top_btn {

    right: 24px;

    width: 40px;

    height: 40px;

  }

}







/* ---- footer_social ---- */

.footer_social {

  display: -webkit-box;

  display: -ms-flexbox;

  display: flex;

  -ms-flex-pack: distribute;

  justify-content: space-around;

  margin-right: auto;

  margin-left: auto;

  -webkit-box-align: center;

  -ms-flex-align: center;

  align-items: center;

  padding: 10px 0;

  background-color: #f4f4f4;

}



/*バナー無し

.social_box {

  margin: 0 auto;

}

*/



.social_box {

  margin: 0 auto;

  display: flex;

  justify-content: space-between;

  align-items: center;

  width: 98%;

}



/* ---- バナーあり ---- */

.social_box a:nth-child(1) {

  width: calc(450 / 850 * 100%);

  margin-bottom: 0;

}

.social_box a:nth-child(2) {

  width: calc(400 / 850 * 100%);

  max-width: 400px;

}

/* ---- バナーあり ---- */



.footer_social .title {

  font-size: 1.3rem;

  font-weight: 700;

  margin-top: 7px;

  margin-right: 30px;

}

._csstrans .footer_social a .title {

  transition: opacity .6s cubic-bezier(.165, .84, .44, 1);

}

.footer_social a:hover .title {

  opacity: .7;

}



.footer_social .social_list {

  display: -webkit-box;

  display: -ms-flexbox;

  display: flex;

  -ms-flex-pack: distribute;

  justify-content: center;

  /*バナー無し  justify-content: space-around;*/

}



.footer_social .social_account {

  margin: 0 10px;

  width: 32px;

  height: 32px;

  border-radius: 4px;

  background-color: rgb(224, 224, 224);

  background-image: url(../images/icon_social.png);

  background-size: cover;

}

._csstrans .footer_social a .social_account {

  transition: opacity .6s cubic-bezier(.165, .84, .44, 1);

}

.footer_social a:hover .social_account {

  opacity: .7;

}



.footer_social .social_account.sns_ln {

  background-position: 0 0;

}



.footer_social .social_account.sns_tw {

  background-position: 25% 0;

}



.footer_social .social_account.sns_yt {

  background-position: 50% 0;

}



.footer_social .social_account.sns_ig {

  background-position: 75% 0;

}



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

  /*バナー無し

  .footer_social {

    padding-top: 4.1739%;

    padding-bottom: 4.1739%;

  }

*/

}



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

  /*バナーあり*/

  .footer_social {

    padding-top: 15px;

    padding-bottom: 15px;

  }

  .social_box {

    align-items: flex-end;

  }



  /*バナー無し

  .footer_social {

    padding-top: 56px;

    padding-bottom: 30px;

  }

*/

  .footer_social .social_list {

    position: relative;

  }

  .footer_social .title {

    display: block;

    position: absolute;

    margin: 0;

    top: -32px;

    font-size: 1.2rem;

  }

  .footer_social .social_account {

    width: 42px;

    height: 42px;

    margin: 0 12px;

  }

}



/* ---- footer_social EN ---- */



html[lang="en"] .social_box {

  margin: 0 auto;

  display: block;

  justify-content: space-between;

  align-items: center;

  width: auto;

}





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



  html[lang="en"] .footer_social {

    padding-top: 4.1739%;

    padding-bottom: 4.1739%;

  }



}



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



  html[lang="en"] .social_box {

    width: 100%;

  }

  html[lang="en"] .footer_social .title {

    text-align: center;

  }



  html[lang="en"] .footer_social {

    padding-top: 56px;

    padding-bottom: 30px;

  }



}





/* ---- cookie_dialog ---- */

.cookie_dialog_box {

  position: fixed;

  bottom: 0;

  left: 0;

  width: 100%;

  padding: 20px;

  background-color: rgba(0, 0, 0, .60);

  z-index: 2000;

}

.cookie_dialog_box.cookie_dialog_box2 {

  bottom: 50%;

}

.cookie_dialog_box>div {

  display: flex;

  justify-content: center;

  align-items: center;

  margin: 0 auto;

  width: 100%;

  max-width: 980px;

}

.cookie_dialog_box.cookie_dialog_box2>div {

  max-width: 600px;

  justify-content: space-around;

}

.cookie_dialog_box>div>div>p {

  color: rgb(255, 255, 255);

  font-size: 14px;

  line-height: 1.5;

}

.cookie_dialog_box>div>div>p a {

  text-decoration: underline;

}

.cookie_dialog_box .btn_cookie_accept,

.cookie_dialog_box .btn_cookie_deny {

  width: 140px;

  padding: 8px;

  text-align: center;

  font-weight: 700;

  cursor: pointer;

}

.cookie_dialog_box .btn_cookie_accept {

  background-color: rgb(255, 230, 153);

  margin-left: calc(32 / 980 * 100%);

}

.cookie_dialog_box.cookie_dialog_box2 .btn_cookie_accept,

.cookie_dialog_box.cookie_dialog_box2 .btn_cookie_deny {

  width: 220px;

  font-weight: 400;

  line-height: 1.5;

}

.cookie_dialog_box.cookie_dialog_box2 .btn_cookie_accept {

  margin-left: 0;

}

.cookie_dialog_box .btn_cookie_deny {

  background-color: rgb(192, 0, 0);

  color: rgb(255, 255, 255);

}



span.btn_cookie_accept_deny {

  text-decoration: underline;

  cursor: pointer;

  color: rgb(19, 112, 224);

}



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

  .cookie_dialog_box>div>div>p {

    font-size: 11px;

  }

  .cookie_dialog_box.cookie_dialog_box2 .btn_cookie_accept,

  .cookie_dialog_box.cookie_dialog_box2 .btn_cookie_deny {

    width: 140px;

    font-size: 12px;

  }

}