@charset "utf-8";
/* =========================================================================================================================================== */
/*
/* サイト共通デザイン
/*
/* =========================================================================================================================================== */
* {
  box-sizing: border-box;
}

.pc_only   { display: block;  }
.pc_inline { display: inline; }
.sp_only   { display: none;   }
@media screen and (max-width: 767px) {
  .pc_only   { display: none;  }
  .pc_inline { display: none;  }
  .sp_only   { display: block; }
}

html {
  font-size: 62.5%;
  overflow-y:scroll;
}
body{
  position: relative;
  margin: 0;
  font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
  font-size: 16px;
  font-size: 1.6rem; 
  line-height: 1.75;
  color: #555555;
  overflow-x: hidden;
}
body.menu_open {
  overflow: hidden;
}
main {
  display: block;
}
img {
  width: 100%;
  height: auto;
  vertical-align: bottom;
}
a:hover,
a:hover img {
  opacity: 0.7;
}
button {
  cursor: pointer;
  background: none;
  border: none;
  outline: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

input[type="text"],
input[type="password"] {
  font-size: 16px;
  padding-left: 10px;
}


.fade {
  opacity: 0;
  transition: .8s;
  transform: translate(0, 100px);
}
/* 方向＆距離系：重複不可 */
.fade.fade-up-50 {
  transform: translate(0, 50px);
}
.fade.fade-right-50 {
  transform: translate(-50px, 0);
}
.fade.fade-left-50 {
  transform: translate(50px, 0);
}
.fade.fade-down-50 {
  transform: translate(0, -50px);
}
/* 遅れ系 */
.fade.fade-delay {
  transition-delay: .1s;
}
.fade.fade-delay-500 {
  transition-delay: .5s;
}
.fade.fade-delay-800 {
  transition-delay: .8s;
}
.fade.fade-delay-1000 {
  transition-delay: 1s;
}


/* 表示用*/
.fade.fade-in {
  opacity: 1;
  transform: translate(0, 0);
}

/* =========================================================================================================================================== */
/* 【共通部品】
/* =========================================================================================================================================== */
/* H2 */
@media all {
  h2 {
    color: #555555;
    font-weight: bold;
    padding-bottom: 17px;
    font-size: 28px;
    line-height: 31px;
  }
  h2.f20 {
    font-size: 20px;
    line-height: 22px;
    padding-bottom: 10px;
  }
}
@media screen and (max-width:767px) {
  h2 {
    font-size: 20px;
    line-height: 24px;
    padding-bottom: 10px;
  }
  h2.f20 {
    font-size: 16px;
    line-height: 18px;
    padding-bottom: 7px;
  }
}
/*-----------------------------*/
/* 装飾系
/*-----------------------------*/
@media all {
  /* font系 */
  .fs18 {
    font-size: 18px;
  }
  .fw-bold {
    font-weight: bold;
  }

  /* margin系 */
  .mt42 {
    margin-top: 42px;
  }
  .mt18 {
    margin-top: 18px;
  }
  .mb8 {
    margin-bottom: 8px;
  }
  .mb15 {
    margin-bottom: 15px;
  }
  .mb23 {
    margin-bottom: 23px;
  }
  .mb26 {
    margin-bottom: 26px;
  }
  .mb32 {
    margin-bottom: 32px;
  }
  .mb36 {
    margin-bottom: 36px;
  }
  .mb50 {
    margin-bottom: 50px;
  }
  .ml-7 {
    margin-left: -7px;
  }

  /* padding系 */
  .pl20 {
    padding-left: 20px;
  }
  .pl26 {
    padding-left: 26px;
  }
  .pl30 {
    padding-left: 30px;
  }
  /* <!-- 23.06.02 ここから --> */
  .pt7 {
    padding-top: 7px !important;
  }
  /* <!-- 23.06.02 ここまで --> */
}
@media screen and (max-width:767px) {
  /* font系 */
  .fs18 {
    font-size: 16px;
  }

  /* margin系 */
  .mb15 {
    margin-bottom: 15px;
  }
  .mb23 {
    margin-bottom: 16px;
  }
  .mb32 {
    margin-bottom: 20px;
  }
  .mb36 {
    margin-bottom: 28px;
  }
  .mb50 {
    margin-bottom: 40px;
  }

  /* padding系 */
  .pl26 {
    padding-left: 21px;
  }
  .pl30 {
    padding-left: 20px;
  }
}

/* テキスト */
@media all {
  .blk_text {
    font-size: 16px;
    line-height: 24px;
  }
  .blk_text2 {
    font-size: 18px;
    line-height: 26px;
  }
  .blk_text3 {
    font-size: 16px;
    line-height: 26px;
  }
  /* <!-- 23.06.02 ここから --> */
  .blk_text4 {
    font-size: 20px;
    line-height: 30px;
  }
  .blk_text5 {
    font-size: 16px;
    line-height: 26px;
  }
  /* <!-- 23.06.02 ここまで --> */
}
@media screen and (max-width:767px) {
  .blk_text {
    font-size: 14px;
    line-height: 22px;
  }
  .blk_text2 {
    font-size: 14px;
    line-height: 20px;
  }
  .blk_text3 {
    font-size: 14px;
    line-height: 22px;
  }
  /* <!-- 23.06.02 ここから --> */
  .blk_text4 {
    font-size: 16px;
    line-height: 20px;
  }
  .blk_text5 {
    font-size: 14px;
    line-height: 24px;
  }
  /* <!-- 23.06.02 ここまで --> */
}

/* リスト */
@media all {
  .list_1 {
    counter-reset: count;
    font-size: 16px;
    line-height: 24px;
    color: #555555;
  }
  .list_1 > li {
    counter-increment: count;
    position: relative;
    padding-left: 17px;
  }
  .list_1 > li::before {
    content: counter(count)". ";
    position: absolute;
    left: 0;
  }

  .list_2 {
    font-size: 16px;
    line-height: 24px;
  }
  .list_2 > li {
    padding-left: 14px;
    position: relative;
  }
  .list_2 > li::before {
    content: "";
    display: block;
    width: 6px;
    height: 6px;
    background-color: #555555;
    position: absolute;
    top: 8px;
    left: 2px;
  }

  .list_3 {
    font-size: 16px;
    line-height: 24px;
    counter-reset: count;
  }
  .list_3 > li {
    counter-increment: count;
    padding-left: 40px;
    position: relative;
  }
  .list_3 > li::before {
    content: "（"counter(count)"）";
    position: absolute;
    left: 0;
  }

  .list_pdf {
    font-size: 16px;
    line-height: 28px;
    padding-top: 4px;
  }
  .list_pdf li a {
    text-decoration: none;
    color: #006DAC;
    position: relative;
  }

  .li-mb24 > li {
    margin-bottom: 24px;
  }

  .li-mb10 > li {
    margin-bottom: 10px;
  }

}
@media screen and (max-width:767px) {
  .list_1 {
    font-size: 14px;
    line-height: 22px;
  }
  .list_1 li {
    padding-left: 15px;
  }

  .list_2 {
    font-size: 14px;
    line-height: 22px;
  }

 .list_3 {
    font-size: 14px;
    line-height: 22px;
  }
  .list_3 > li {
    padding-left: 29px;
  }
  .list_3 > li::before {
    left: -4px;
  }

  .list_pdf {
    font-size: 14px;
    line-height: 24px;
  }

  .li-mb24 > li {
    margin-bottom: 22px;
  }

  .li-mb10 > li {
    margin-bottom: 10px;
  }

}

/* グループ会社リスト */
@media all {
  section.list_group {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    padding-top: 20px;
  }
  section.list_group article   {
    width: calc((100% - 30px) / 2);
    border: solid 15px #F1F1F1;
    margin-bottom: 30px;
    text-align: center;
    padding: 0 10px;
    padding-top: 50px;
    padding-bottom: 50px;
  }
  section.list_group article .title {
    font-size: 18px;
    font-weight: bold;
    line-height: 18px;
    padding-bottom: 13px;
  }
  section.list_group article .description {
    font-size: 14px;
    line-height: 20px;
    padding-bottom: 24px;
  }
  section.list_group article .brands ul {
  	display: flex;
  	justify-content: center;
  	flex-wrap: wrap;
  }
  section.list_group article .brands ul li {
    margin: 0 23px;
    margin-bottom: 29px;
  }
  section.list_group article .button {
    padding-top: 10px;
  }
  section.list_group article .button a {
    display: block;
    width: 100%;
    max-width: 153px;
    text-align: center;
    height: 28px;
    line-height: 28px;
    position: relative;
    font-size: 12px;
    text-decoration: none;
    color: white;
    margin: 0 auto;
    padding-right: 10px;
    background-color: #333333;
  }
  section.list_group article .button a::before {
    content: "";
    display: block;
    width: 13px;
    height: 1px;
    background-color: white;
    top: 14px;
    right: 24px;
    position: absolute;
  }
  section.list_group article a::after {
    content: "";
    display: block;
    width: 8px;
    height: 1px;
    background-color: white;
    transform: rotate(30deg);
    transform-origin: right bottom;
    position: absolute;
    top: 14px;
    right: 24px;
  }
}
@media screen and (max-width:767px) {
  section.list_group {
    display: block;
  }
  section.list_group article {
    width: 100%;
  }
  section.list_group article .title {
    font-size: 16px;
  }
  section.list_group article .description {
    font-size: 12px;
    line-height: 18px;
  }
}
/* ニュースリスト */
@media all {
  .list_news {
    padding-top: 3px;
  }
  .list_news li {
    border-bottom: solid 1px #DFE1E1;
    height: 97px;
    padding-left: 6px;
  }
  .list_news li:first-child {
    border-top: solid 1px #DFE1E1;
    height: 98px;
  }
  .list_news li a {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    height: 100%;
    font-size: 14px;
    text-decoration: none;
    color: #555555;
  }
  .list_news li a .date {
    width: 115px;
    font-weight: bold;
  }
  .list_news li a .name {
    width: calc(100% - 115px);
    line-height: 18px;
  }
}
@media screen and (max-width:767px) {
  .list_news li {
    height: auto;
    padding-left: 2px;
    padding-right: 9px;
  }
  .list_news li:first-child {
    height: auto;
  }
  .list_news li a {
    display: block;
    padding-top: 11px;
    padding-bottom: 8px;
    line-height: 20px;
  }
  .list_news li a .date {
    width: 100%;
  }
  .list_news li a .name {
    width: 100%;
    line-height: 20px;
  }
}

/* テーブル */
@media all {
  .tbl_copmany {
    display: flex;
    justify-content: flex-start;
    flex-wrap: wrap;
    padding-top: 22px;
  }
  .tbl_copmany .th {
    width: 125px;
    font-size: 14px;
    font-weight: bold;
    line-height: 23px;
    padding-top: 12px;
    padding-bottom: 12px;
    padding-left: 25px;
    border-bottom: solid 1px #D3D3D3;
  }
  .tbl_copmany .td {
    width: calc(100% - 125px);
    font-size: 16px;
    line-height: 23px;
    padding-top: 12px;
    padding-bottom: 12px;
    border-bottom: solid 1px #D3D3D3;
  }
  .tbl_copmany > div:nth-last-child(-n+2){
    border-bottom: none;
  }
  .tbl_copmany .td .brands ul li {
    display: flex;
    justify-content: flex-start;
    flex-wrap: wrap;
  }
  .tbl_copmany .td .brands ul li .name {
    width: 82px;
    font-size: 16px;
    line-height: 24px;
  }
  .tbl_copmany .td .brands ul li .link {
    width: calc(100% - 82px);
    padding-left: 10px;
    position: relative;
    font-size: 16px;
    line-height: 24px;
  }
  .tbl_copmany .td .brands ul li .link a {
    text-decoration: none;
    color: #006DAC;
  }
  .tbl_copmany .td .brands ul li .link::before {
    content: ":";
    position: absolute;
    left: 0;
  }
  .tbl_copmany .td .brands.single ul li .link::before {
  content: none;
  }
  .tbl_copmany .td .brands.single ul li .link {
  padding-left: 0;
  }
  .tbl_copmany .td .history ul li {
    display: flex;
    justify-content: flex-start;
    flex-wrap: wrap;
    font-size: 16px;
    line-height: 22px;
    padding: 4px 0;
  }
  .tbl_copmany .td .history ul li .date {
    width: 115px;
  }
  .tbl_copmany .td .history ul li .title {
    width: calc(100% - 115px);
  }
  .tbl_copmany .td .link-more {
    text-align: left;
    padding-top: 15px;
  }
  .tbl_copmany .td .link-more a {
    color: #006DAC;
    position: relative;
    padding-left: 14px;
    font-weight: bold;
    font-size: 12px;
  }
  .tbl_copmany .td .link-more a::before {
    content: ">";
    transform: rotate(90deg);
    display: inline-block;
    position: absolute;
    left: 0px;
    top: -4px;
  }
  .tbl_copmany .td .link-more a.open::before {
    transform: rotate(-90deg);
  }
  .tbl_copmany .td .officer ul li {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
  }
  .tbl_copmany .td .officer ul li .position {
      width: 126px;
  }
  .tbl_copmany .td .officer ul li .name {
    width: calc(100% - 126px);
  }
  .tbl_copmany .td .history-sales ul li {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
  }
  .tbl_copmany .td .history-sales ul li .date {
    width: 80px;
  }
  .tbl_copmany .td .history-sales ul li .title {
    width: calc(100% - 80px);
  }
}
@media screen and (max-width:767px) {
  .tbl_copmany {
    display: block;
  }
  .tbl_copmany .th {
    width: 100%;
    padding-top: 14px;
    padding-left: 0;
    padding-bottom: 7px;
    line-height: 15px;
    border-bottom: none;
  }
  .tbl_copmany .td {
    padding-top: 0;
    font-size: 14px;
    line-height: 20px;
    padding-bottom: 10px;
    width: 100%;
  }
  .tbl_copmany .td .history ul li {
    display: block;
    font-size: 14px;
    line-height: 22px;
  }
  .tbl_copmany .td .history ul li .date {
    width: 100%;
  }
  .tbl_copmany .td .history ul li .title {
    width: 100%;
    padding-left: 1em;
  }
  .tbl_copmany .td .brands ul li .name {
    font-size: 14px;
    line-height: 22px;
  }
  .tbl_copmany .td .brands ul li .link {
    font-size: 14px;
    line-height: 22px;
  }
  .tbl_copmany .td .link-more {
    text-align: center;
  }
  .tbl_copmany .td .link-more a {
    text-decoration: none;
  }
}

/* =========================================================================================================================================== */
/* 【部品】
/* 名前     : ヘッダー
/* セレクタ : #masthead
/* =========================================================================================================================================== */
@media all {
  #masthead {
    position: fixed;
    display: flex;
    justify-content: flex-start;
    flex-wrap: wrap;
    width: 100%;
    height: 90px;
    padding: 0 50px;
    background-color: #222222;
    z-index: 500;
    top: 0;
  }
  #masthead .logo {
    width: 190px;
    padding-top: 24px;
  }
  #masthead #global-nav {
    margin-left: auto
  }
  #masthead #global-nav ul {
    display: flex;
    justify-content: flex-start;
    flex-wrap: wrap;
    padding-top: 29px;
  }
  #masthead #global-nav ul li {
    margin-right: 39px;
  }
  #masthead #global-nav ul li a {
    color: white;
    text-decoration: none;
    display: block;
  }
  #masthead #global-nav ul li a .en {
    text-align: center;
    font-size: 18px;
    line-height: 18px;
    padding-bottom: 7px;
  }
  #masthead #global-nav ul li a .jp {
    font-size: 12px;
    text-align: center;
    color: #999999;
  }
  #masthead .sns-nav ul {
    display: flex;
    padding-top: 29px;
  }
  #masthead .sns-nav ul li {
    margin-left: 29px;
  }
  #masthead .sns-nav ul li:first-child {
    margin-left: 14px;
  }
  #masthead .sns-nav ul li.instagram { width: 33px; }
  #masthead .sns-nav ul li.facebook  { width: 34px; }
  #masthead .sns-nav ul li.youtube   { width: 112px; padding-top: 5px; }
  #masthead #global-btn {
    display: none;
  }

  /* サブメニュー（共通）*/
  #global-sub .submenu article {
    width: 100%;
    justify-content: center;
    position: fixed;
    top: 90px;
    background-color: #494949;
    overflow: hidden;
    height: 0;
    z-index: 500;
  }
  #global-sub .submenu article .inner {
    width: 100%;
    max-width: 983px;
    margin: 0 auto;
    padding-top: 48px;
  }
  #global-sub .submenu article .inner .title .en {
    font-size: 22px;
    font-weight: bold;
    line-height: 22px;
    padding-bottom: 7.5px;
    color: #a9a9a9;
  }
  #global-sub .submenu article .inner .title .jp {
    font-size: 12px;
    line-height: 12px;
    color: #a8a8a8;
    padding-bottom: 38px;
  }

  /* サブメニュー（CORPORATE）*/
  #global-sub .submenu .corporate .inner .page-menu ul {
    display: flex;
    justify-content: flex-start;
    flex-wrap: wrap;
    padding-bottom: 59px;
  }
  #global-sub .submenu .corporate .inner .page-menu ul li {
    width: 227px;
    height: 61px;
    margin-right: 71px;
    border-bottom: solid 1px #737373;
    position: relative;
  }
  #global-sub .submenu .corporate .inner .page-menu ul li:nth-child(-n+3) {
    height: 62px;
    border-top: solid 1px #737373;
  }
  #global-sub .submenu .corporate .inner .page-menu ul li a {
    color: white;
    font-size: 18px;
    line-height: 60px;
    text-decoration: none;
    display: block;
    padding-left: 41px;
  }
  #global-sub .submenu .corporate .inner .page-menu ul li a:hover {
    background-color: #4f4f4f;
  }
  #global-sub .submenu .corporate .inner .page-menu ul li a::before {
    content: "";
    display: block;
    width: 13px;
    height: 1px;
    background-color: white;
    top: 29px;
    left: 14px;
    position: absolute;
  }
  #global-sub .submenu .corporate .inner .page-menu ul li a::after {
    content: "";
    display: block;
    width: 8px;
    height: 1px;
    background-color: white;
    transform: rotate(30deg);
    transform-origin: right bottom;
    position: absolute;
    top: 29px;
    left: 19px;
  }

  /* サブメニュー（OTHER）*/
  #global-sub .submenu .other .inner {
    padding-bottom: 63px;
  }
  #global-sub .submenu .other .inner .subtitle {
    width: 100%;
    height: 62px;
    border-top: solid 1px #737373;
    border-bottom: solid 1px #737373;
    position: relative;
  }
  #global-sub .submenu .other .inner .subtitle.sp_menu {
    display: none;
  }
  #global-sub .submenu .other .inner .subtitle a {
    line-height: 60px;
    text-decoration: none;
    font-size: 18px;
    color: white;
    padding-left: 52px;
    display: block;
  }
  #global-sub .submenu .other .inner .subtitle a:hover {
    background-color: #4f4f4f;
  }
  #global-sub .submenu .other .inner .subtitle a::before {
    content: "";
    display: block;
    width: 13px;
    height: 1px;
    background-color: white;
    top: 29px;
    left: 18px;
    position: absolute;
  }
  #global-sub .submenu .other .inner .subtitle a::after {
    content: "";
    display: block;
    width: 8px;
    height: 1px;
    background-color: white;
    transform: rotate(30deg);
    transform-origin: right bottom;
    position: absolute;
    top: 29px;
    left: 23px;
  }
  /* <!-- 23.06.20 ここから --> */
  #global-sub .submenu .other .inner .subtitle.type2 a {
    padding-left: 30px;
  }
  #global-sub .submenu .other .inner .subtitle.type2 a::before {
    content: "";
    background-image: url('../img/icon_newwindow_w.png');
    display: block;
    position: absolute;
    width: 16px;
    height: 16px;
    left: 5px;
    top: 11px;
    background-color: #494949;
  }
  #global-sub .submenu .other .inner .subtitle.type2 a::after {
    content: none;
  }
  /* <!-- 23.06.20 ここまで --> */
  #global-sub .submenu .other .inner .group-menu {
    padding-top: 35px;
    padding-bottom: 39px;
  }
  #global-sub .submenu .other .inner .group-menu ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
  }
  #global-sub .submenu .other .inner .group-menu ul li {
    width: calc((100% - 30px) / 3);
    margin-right: 15px;
    margin-bottom: 15px;
    max-width: 317px;
/*    background-color: #5f5f5f; */
    text-align: center;
  }
  #global-sub .submenu .other .inner .group-menu ul li:nth-child(3n) {
    margin-right: 0;
  }
  #global-sub .submenu .other .inner .group-menu ul li a {
    font-size: 14px;
    text-decoration: none;
    line-height: 14px;
    color: white;
    background-color: #5f5f5f;
    position: relative;
    display: block;
    padding-top: 20px;
    height: 107px;
  }
  #global-sub .submenu .other .inner .group-menu ul li .name {
    line-height: 14px;
    padding-bottom: 23px;
  }
  #global-sub .submenu .other .inner .group-menu ul li .name span {
    font-size: 14px;
    text-decoration: none;
    line-height: 14px;
    color: white;
    position: relative;
  }
  #global-sub .submenu .other .inner .group-menu ul li .name span::before {
    content: "";
    display: block;
    width: 13px;
    height: 1px;
    background-color: white;
    top: 6px;
    left: -23px;
    position: absolute;
  }
  #global-sub .submenu .other .inner .group-menu ul li .name span::after {
    content: "";
    display: block;
    width: 8px;
    height: 1px;
    background-color: white;
    transform: rotate(30deg);
    transform-origin: right bottom;
    position: absolute;
    top: 6px;
    left: -18px;
  }
  #global-sub .submenu .other .inner .group-menu ul li .icons {
    display: flex;
    justify-content: center;
    align-items: center;
  }
  #global-sub .submenu .other .inner .group-menu ul li .icons .icon {
    margin: 0 17px;
  }
  #global-sub .submenu .outside,
  #global-sub .submenu .other2,
  #global-sub .submenu .copinfo {
    display: none;
  }
}
@media screen and (max-width:1139px) {
  #masthead {
    height: 60px;
    background-color: #333333;
    padding: 0;
  }
  #masthead .logo {
    margin-left: 18px;
    width: 123px;
    padding-top: 14px;
  }
  #masthead #global-nav {
    display: none;
  }
  #masthead .sns-nav {
    display: none;
  }
  #masthead #global-btn {
    display: block;
    width: 62px;
    height: 100%;
    margin-left: auto;
    position: relative;
    cursor: pointer;
  }
  #masthead #global-btn span {
    display: block;
    width: 22px;
    height: 2px;
    background-color: white;
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    left: 0;
    margin: auto;
  }
  #masthead #global-btn span::before,
  #masthead #global-btn span::after {
    content: "";
    display: block;
    width: 100%;
    height: 2px;
    background-color: white;
    position: absolute;
  }
  #masthead #global-btn span::before {
    top: -8px;
  }
  #masthead #global-btn span::after {
    top: 8px;
  }

  /* サブメニュー（共通）*/
  #global-sub {
    position: fixed;
    top: 60px;
    width: 100%;
    z-index: 500;
  }
  #global-sub .submenu {
    /*height: calc(100vh - 60px); */
    height: 0;
    overflow-y: scroll;
    transition: height 0.5s ease;
  }
  #global-sub .submenu article {
    height: auto;
    position: static;
  }
  #global-sub .submenu article .inner {
    padding: 0 50px;
    padding-top: 38px;
  }
  #global-sub .submenu article .inner .title .en {
    font-size: 16px;
    line-height: 16px;
    padding-bottom: 8px;
  }
  #global-sub .submenu article .inner .title .jp {
    font-size: 12px;
    line-height: 12px;
    padding-bottom: 17px;
  }

  /* サブメニュー（CORPORATE）*/
  #global-sub .submenu .corporate .inner .page-menu ul {
    display: block;
    padding-bottom: 9px;
  }
  #global-sub .submenu .corporate .inner .page-menu ul li {
    width: 100%;
    height: 39px;
  }
  #global-sub .submenu .corporate .inner .page-menu ul li:nth-child(-n+3) {
    border-top: none;
    height: 39px;
  }
  #global-sub .submenu .corporate .inner .page-menu ul li:first-child {
    border-top: solid 1px #737373;
    height: 40px;
  }
  #global-sub .submenu .corporate .inner .page-menu ul li a {
    line-height: 38px;
    font-size: 14px;
    padding-left: 36px;
  }
  #global-sub .submenu .corporate .inner .page-menu ul li a::before {
    width: 11px;
    left: 13px;
    top: 20px;
  }
  #global-sub .submenu .corporate .inner .page-menu ul li a::after {
    top: 20px;
    left: 16px;
  }  
  /* サブメニュー（OTHER）*/
  #global-sub .submenu .other .inner {
    padding-bottom: 44px;
  }
  #global-sub .submenu .other .inner .subtitle {
    border-bottom: none;
    height: 39px;
  }
  #global-sub .submenu .other .inner .subtitle.sp_menu {
    display: block;
  }  
  #global-sub .submenu .other .inner .subtitle a {
    line-height: 38px;
    font-size: 14px;
    padding-left: 36px;
  }
  #global-sub .submenu .other .inner .subtitle a::before {
    width: 11px;
    left: 13px;
    top: 20px;
  }
  #global-sub .submenu .other .inner .subtitle a::after {
    top: 20px;
    left: 16px;
  }  
  #global-sub .submenu .other .inner .subtitle:last-child {
    border-bottom: solid 1px #737373;
    height: 40px;
  }
  #global-sub .submenu .other .inner .group-menu {
    padding: 0;
  }
  #global-sub .submenu .other .inner .group-menu ul {
    display: block;
  }
  #global-sub .submenu .other .inner .group-menu ul li {
    width: 100%;
    max-width: none;
    text-align: left;
    padding-top: 8px;
    padding-left: 55px;
    height: auto;
    background: none;
  }
  #global-sub .submenu .other .inner .group-menu ul li a {
    background: none;
    padding-top: 0;
    height: auto;
  }
  #global-sub .submenu .other .inner .group-menu ul li .name {
    padding-bottom: 12px;
  }
  #global-sub .submenu .other .inner .group-menu ul li .icons {
    justify-content: flex-start;
  }
  #global-sub .submenu .other .inner .group-menu ul li .icons .icon {
    margin: 0;
    margin-right: 32px;
  }
  #global-sub .submenu .other .inner .group-menu ul li:nth-child(4) .icons .icon {
    margin-right: 8px;
  }
  #global-sub .submenu .other .inner .group-menu ul li:last-child {
    margin-bottom: 24px;
  }

  /* サブメニュー（OUTSIDE）*/
  #global-sub .submenu .outside {
    display: block;
  }
  #global-sub .submenu .outside .inner {
    padding-top: 0;
  }
  #global-sub .submenu .outside .inner ul li {
    padding-left: 23px;
    position: relative;
    line-height: 14px;
    padding-bottom: 14px;
  }
  #global-sub .submenu .outside .inner ul li a {
    font-size: 14px;
    line-height: 14px;
    text-decoration: none;
    color: white;
  }
  #global-sub .submenu .outside .inner ul li a::before {
    content: "";
    background-image: url('../img/icon_newwindow_w.png');
    display: block;
    position: absolute;
    width: 16px;
    height: 16px;
    left: 0;
    top: 0;
  }
  #global-sub .submenu .outside .inner ul {
    padding-bottom: 20px;
  }
  #global-sub .submenu .outside .inner ul .has_child {
    display: flex;
    justify-content: start;
  }
  #global-sub .submenu .outside .inner ul .has_child ul {
      margin-left: 20px;
      display: flex;
      margin-right: 0;
      padding-bottom: 0;
  }
  #global-sub .submenu .outside .inner ul .has_child ul li {
      padding-left: 13px;
      padding-bottom: 0;
  }
  #global-sub .submenu .outside .inner ul .has_child ul li a:before {
      content: none;
  }
  #global-sub .submenu .outside .inner ul .has_child .twitter img {
      height: 22px;
  }
  #global-sub .submenu .outside .inner ul .has_child .youtube {
    padding-top: 2px;
  }
  #global-sub .submenu .outside .inner ul .has_child .youtube img {
    height: 18px;
  }


  /* サブメニュー（OTHER2）*/
  #global-sub .submenu .other2 {
    display: block;
  }
  #global-sub .submenu .other2 .inner {
    padding-top: 0;
    padding-bottom: 34px;
  }
  #global-sub .submenu .other2 .inner ul li {
    padding-left: 23px;
    position: relative;
    line-height: 14px;
    padding-bottom: 14px;
  }
  #global-sub .submenu .other2 .inner ul li a {
    font-size: 14px;
    line-height: 14px;
    text-decoration: none;
    color: white;
    position: relative;
  }
  #global-sub .submenu .other2 .inner ul li a::before {
    content: "";
    display: block;
    width: 13px;
    height: 1px;
    background-color: white;
    top: 6px;
    left: -23px;
    position: absolute;
  }
  #global-sub .submenu .other2 .inner ul li a::after {
    content: "";
    display: block;
    width: 8px;
    height: 1px;
    background-color: white;
    transform: rotate(30deg);
    transform-origin: right bottom;
    position: absolute;
    top: 6px;
    left: -18px;
  }

  /* サブメニュー（COPINFO）*/
  #global-sub .submenu .copinfo {
    display: block;
  }
  #global-sub .submenu .copinfo .inner {
    padding-top: 0;
    padding-bottom: 44px;
  }
  #global-sub .submenu .copinfo .inner .logo {
    width: 126px;
    padding-bottom: 12px;
  }
  #global-sub .submenu .copinfo .inner .company_name {
    font-size: 14px;
    font-weight: bold;
    color: #c5c5c5;
    line-height: 14px;
    padding-bottom: 14px;
  }
  #global-sub .submenu .copinfo .inner .zip,
  #global-sub .submenu .copinfo .inner .address,
  #global-sub .submenu .copinfo .inner .telephone {
    font-size: 14px;
    line-height: 14px;
    padding-bottom: 10px;
    color: #c5c5c5;
  }
/* <!-- 23.06.20 ここから --> */
  #global-sub .submenu .copinfo .inner .telephone a {
    color: white;
  }
  #global-sub .submenu .copinfo .inner .contact {
    font-size: 12px;
    line-height: 1;
    padding-bottom: 30px;
  }
  #global-sub .submenu .copinfo .inner .contact a {
    color: white;
  }
  #global-sub .submenu .copinfo .inner .logo_55th {
    max-width: 223px;
  }
/* <!-- 23.06.20 ここまで --> */
}

/* =========================================================================================================================================== */
/* 【部品】
/* 名前     : ページヘッダー
/* セレクタ : #header-page
/* =========================================================================================================================================== */
@media all {
  #header-page {
    width: 100%;
    height: 300px;
    display: block;
    padding: 0 25px;
    padding-top: 117px;
    background-image: url('../img/sub_title_back.png'); 
    background-size: cover;
    background-position: top right;
    position: relative;
  }
  #header-page.type2 {
    padding-top: 87px;
  }

  #header-page .group-title {
    width: 100%;
    max-width: 1200px;
    margin: auto;
    color: #CCCCCC;
    padding-bottom: 30px;
  }
  #header-page .group-title .jp {
    font-size: 12px;
    padding-bottom: 9px;
    line-height: 12px;
  }  
  #header-page .group-title .en {
    font-size: 18px;
    line-height: 18px;
  }

  #header-page .title {
    width: 100%;
    max-width: 1200px;
    margin: 0 auto;
  }
  #header-page .title .en {
    font-size: 18px;
    line-height: 20px;
    color: #CCCCCC;
    padding-bottom: 12px;
  }
  #header-page .title .jp {
    font-size: 34px;
    font-weight: bold;
    color: white;
    line-height: 38px;
  }
}
@media screen and (max-width:767px) {
  #header-page {
    height: 125px;
    padding: 0 25px;
    padding-top: 43px;
  }
  #header-page.type2 {
    padding-top: 26px;
  }

  #header-page .group-title {
    padding-bottom: 9px;
  }
  #header-page .group-title .jp {
    padding-bottom: 6px;
  }
  #header-page .group-title .en {
    font-size: 16px;
    line-height: 16px;
  }

  #header-page .title .en {
    font-size: 14px;
    line-height: 15px;
  }
  #header-page .title .jp {
    font-size: 22px;
    line-height: 24px;
  }
}

/* =========================================================================================================================================== */
/* 【部品】
/* 名前     : フッター
/* セレクタ : #masthead
/* =========================================================================================================================================== */
@media all {
  #mastfoot {
    background-color: #F4F4F4;
  }
  #mastfoot .inner {
    max-width: 1200px;
    margin: 0 auto;
    padding-top: 63px;
    display: flex;
    justify-content: flex-start;
    flex-wrap: wrap;
  }
  #mastfoot .inner .col {
    padding-bottom: 60px;
  }
  #mastfoot .inner .col .menu .title {
    font-size: 14px;
    line-height: 22px;
    font-weight: bold;
  }
  #mastfoot .inner .col .menu ul li {
    font-size: 14px;
    line-height: 28px;
  }
  #mastfoot .inner .col .menu ul {
    padding-top: 4px;
  }
  #mastfoot .inner .col .menu ul li a {
    color: #555555;
    text-decoration: none;
  }
  #mastfoot .inner .col .menu ul li.sub {
    padding-left: 12px;
  }
  #mastfoot .inner .col .menu.bold ul li {
    font-weight: bold;
  }
  #mastfoot .inner .col .menu-outside ul li {
    font-size: 14px;
    line-height: 28px;
    position: relative;
    padding-left: 24px;
    font-weight: bold;
  }
  #mastfoot .inner .col .menu-outside ul li a {
    color: #555555;
    text-decoration: none;
  }
  #mastfoot .inner .col .menu-outside ul li a::before {
    content: "";
    background-image: url('../img/icon_newwindow_g.png');
    display: block;
    position: absolute;
    width: 16px;
    height: 16px;
    left: 0;
    top: 3px;
  }
/* <!-- 23.06.20 ここから --> */
  #mastfoot .inner .col_1 {width: calc((327 / 1200) * 100%);}
  #mastfoot .inner .col_2 {width: calc((130 / 1200) * 100%);}
  #mastfoot .inner .col_3 {width: calc((236 / 1200) * 100%);}
  #mastfoot .inner .col_4 {width: calc((240 / 1200) * 100%);}
  #mastfoot .inner .col_5 {width: calc((260 / 1200) * 100%);}
/* <!-- 23.06.20 ここまで --> */
  #mastfoot .inner .col .menu-outside ul .has_child {
    display: flex;
    justify-content: start;
  }
  #mastfoot .inner .col .menu-outside ul .has_child ul {
      margin-left: 5px;
      display: flex;
      margin-right: 10px;
  }
  #mastfoot .inner .col .menu-outside ul .has_child ul li {
    padding-left: 11px;
  }
  #mastfoot .inner .col .menu-outside ul .has_child ul li a:before {
      content: none;
  }
  #mastfoot .inner .col .menu-outside ul .has_child ul li img{
    vertical-align: middle;
  }
/* <!-- 23.06.20 ここから --> */
  #mastfoot .inner .col .menu-outside ul .has_child .twitter img {
      height: 17px;
  }
  #mastfoot .inner .col .menu-outside ul .has_child .youtube img {
    height: 14px;
  }

  #mastfoot .inner .col_4 .menu-outside ul li {
    font-weight: normal;
  }
/* <!-- 23.06.20 ここまで --> */
  #mastfoot .inner .col_1 .logo {
    width: 134px;
    padding-bottom: 18px;
  }
  #mastfoot .inner .col_1 .company_name {
    font-size: 14px;
    font-weight: bold;
    line-height: 14px;
    padding-bottom: 8px;
  }
  #mastfoot .inner .col_1 .zip, 
  #mastfoot .inner .col_1 .address,
  #mastfoot .inner .col_1 .telephone {
    font-size: 14px;
    line-height: 22px;
  }
/* <!-- 23.06.20 ここから --> */
  #mastfoot .inner .col_1 .banner {
    max-width: 235px;
    margin-top: 30px;
  }
/* <!-- 23.06.20 ここまで --> */

  #mastfoot .inner .col_4 .menu {
    padding-top: 30px;
  }
/* <!-- 23.06.20 ここから --> */
  #mastfoot .inner .col_4 .menu:first-child {
    padding-top: 0;
  }
/* <!-- 23.06.20 ここまで --> */

  #mastfoot .sns-nav {
    display: none;
  }
  #mastfoot .copyright {
    width: 100%;
    min-height: 42px;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 12px;
    color: #999999;
    background-color: #d2d2d2;
  }

  #goTop a {
    position: fixed;
    width: 48px;
    height: 48px;
    right: 50px;
    bottom: 92px;
    background-color: #717171;
    border-radius: 50%;
    cursor: pointer;
    background-image: url('../img/pagetop_arrow_b.png');
    background-repeat: no-repeat;
    background-position: center;
  }
}
@media screen and (max-width:1139px) {
  #mastfoot {
    margin-bottom: 63px;
  }
  #mastfoot .inner {
    display: none;
  }
  #mastfoot .sns-nav {
    display: block;
    padding-top: 16px;
    padding-bottom: 14px;
    background-color: #f4f4f4;
    position: fixed;
    width: 100vw;
    bottom: 0;
  }
  #mastfoot .sns-nav ul {
    display: flex;
    justify-content: center;
  }
  #mastfoot .sns-nav ul li {
    margin: 0 18px;
  }
  #mastfoot .sns-nav ul li.instagram {
    width: 33px;
  }
  #mastfoot .sns-nav ul li.facebook {
    width: 34px;
  }
  #mastfoot .sns-nav ul li.youtube {
    width: 112px;
  }
  #mastfoot .copyright {
    min-height: 30px;
    word-break: break-all;
  }

  #goTop a {
    width: 32px;
    height: 32px;
    background-image: url('../img/pagetop_arrow_s.png');
    right: 21px;
    bottom: 81px;
  }
}

/* =========================================================================================================================================== */
/* 【部品】
/* 名前     : メイン
/* セレクタ : #main
/* =========================================================================================================================================== */
@media all {
  #main {
    min-height: calc(100vh - 415px - 90px);
/*    margin-top: 90px; */
  }
  #main .dummy-header {
    height: 90px;
  }

  /* コンテンツ */
  #content {
    padding: 0 25px;
    padding-top: 100px;
    padding-bottom: 120px;
  }
  #content .inner {
    width: 100%;
    max-width: 1200px;
    margin: 0 auto;
  }
}
@media screen and (max-width:1139px) {
  #main {
    min-height: calc(100vh - 88px - 60px);
/*    margin-top: 60px; */
  }
  #main .dummy-header {
    height: 60px;
  }

  /* コンテンツ */
  #content {
    padding-top: 34px;
    padding-bottom: 40px;
  }
}


/* =========================================================================================================================================== */
/* 【ページ】
/* 名前     : トップページ
/* セレクタ : .top-page 
/* =========================================================================================================================================== */
/**/
@media all {
  .top-page #masthead {
    background-color: transparent;
    transition: background-color 0.3s ease;
  }
  .top-page #masthead:hover {
    background-color: #333333;
  }
  .top-page #masthead.scroll {
    background-color: #333333;
  }
  .top-page #main {
    margin-top: 0;
  }
.top-page #main .dummy-header {
    height: 1px;
  }
}

/* キービジュアル */
@media all {
  .top-page .keyvisual {
    width: 100%;
    min-width: 768px;
    min-height: 500px;
    overflow: hidden;
    position: relative;
    z-index: 0;
    box-sizing: border-box;
    top: -1px;
  }
  .top-page .keyvisual .inner {
    max-width: 2000px;
    min-width: 768px;
    margin: 0 auto;
    overflow: hidden;
    overflow-wrap: break-word;
    box-sizing: border-box;
  }
  .top-page .keyvisual .inner:before{
    content: "";
    display: block;
    width:100%;
    height:100%;
    box-sizing: border-box;
    position: absolute;
    top: 0;
    left:0;
    z-index: 0;
    background-color: rgba(0, 0, 0, 0.3);
    /* background-image: url("../images/pattern.png"); */
    background-position: center center;
    /* background-repeat: repeat; */
  }
  .top-page .keyvisual .inner .video-wrapper {
    width: 100%;
    height: 100%;
    height: 100vh;
    position: relative;
  }
  .top-page .keyvisual .inner .video-wrapper video {
    width: auto;
    height: auto;
    min-height: 100vh;
    min-width: 100vw;
    position: absolute;
    left: 50%;
    top: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    z-index: -1;
  }
  .top-page .keyvisual .inner .image-wrapper {
    display: none;
    width: 100%;
  }
  .top-page .keyvisual .inner .content-wrapper {
    position: absolute;
    width: 100%;
    max-width: 610px;
    right: 60px;
    bottom: 40px;
  }   
  .top-page .keyvisual .inner .scroll-btn {
    position: absolute;
    left: 50%;
    bottom: 2%;
    z-index: 10;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
  }
  .top-page .keyvisual .inner .scroll-btn a {
    text-decoration: none;
    color: white;
    font-weight: 700;
    font-size: 12px;
  }
  .top-page .keyvisual .inner .scroll-btn a .text {
    margin-bottom: -4px;
  }
  .top-page .keyvisual .inner .scroll-btn a .arrow {
    position: relative;
    animation: scroll_animation .5s ease 0s infinite alternate;
  }
  .top-page .keyvisual .inner .scroll-btn a .arrow span {
    display: block;
    width: 25px;
    height: 25px;
    border-bottom: solid 1px white;
    border-left: solid 1px white;
    margin: 0 auto;
    transform: rotate(-45deg);
    /* transform-origin: top center; */
  }
  @keyframes scroll_animation {
    0%   { top: 5px; }
    100% { top: 0px; }
    0%   { top: 5px; }
    100% { top: 0px; }
  }
}
@media screen and (max-width:1139px) {
  .top-page .keyvisual .inner .video-wrapper {
    height: calc(100vh - 60px);
  }
}
@media screen and (max-width:767px) {
  .top-page .keyvisual {
    min-height: auto;
    min-width: auto;
  }
  .top-page .keyvisual .inner {
    min-width: unset;
  }
  .top-page .keyvisual .inner .video-wrapper {
    display: none;
  }
  .top-page .keyvisual .inner .image-wrapper {
    display: block;
  }
  .top-page .keyvisual .inner .content-wrapper {
    width: 60%;
    bottom: 20px;
    right: 30px;
  }
  .top-page .keyvisual .inner .scroll-btn {
    display: none;
  }
}

/* 新型コロナウイルスについて */
@media all {
  .top-page .about-covid19 {
    text-align: center;
    padding: 39px 18px;
    padding-bottom: 60px;
  }
  .top-page .about-covid19 .text {
    line-height: 18px;
  }
  .top-page .about-covid19 .text a {
    text-decoration: none;
    font-size: 14px;
    color: #555555;
  }
}
@media screen and (max-width: 767px){
  .top-page .about-covid19 {
    padding: 20px 18px;
  }
}

/* ブランドリスト */
@media all {
  .top-page .brand-list {
    padding-top: 28px;
    background-color: #f8f8f8;
    padding-bottom: 8px;
  }
  .top-page .brand-list ul {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    align-items: center;
  }
  .top-page .brand-list ul li {
    margin: 0 20px;
    margin-bottom: 20px;
  }
}
@media screen and (max-width:767px) {
  .top-page .brand-list ul {
    width: calc(100% - 40px);
    margin: 0 auto;
    max-width: 388px;
    justify-content: flex-start;
  }
  .top-page .brand-list ul li {
    width: calc(100% / 4) !important;
    margin: 0;
    margin-bottom: 26px;
  }
  .top-page .brand-list ul li img {
    width: auto;
    display: block;
    margin: 0 auto;
  }
  /* <!-- 23.08.11 ここから -->*/
  .top-page .brand-list ul li.bmwmr {
    width: calc(100% / 2) !important;
  }
  /* <!-- 23.08.11 ここまで -->*/
  .top-page .brand-list ul li.dp {
    width: calc(100% / 2) !important;
  }
  .top-page .brand-list ul li.honda    img { width: 56px; }
  .top-page .brand-list ul li.bmw      img { width: 36px; }
  /* <!-- 23.08.11 ここから -->*/
  .top-page .brand-list ul li.dpmr     img { width: 152px; }
  /* <!-- 23.08.11 ここまで -->*/
  .top-page .brand-list ul li.mini     img { width: 67px; }
  .top-page .brand-list ul li.jeep     img { width: 67px; }
  .top-page .brand-list ul li.maserati img { width: 77px; }
  .top-page .brand-list ul li.alfa     img { width: 37px; }
  .top-page .brand-list ul li.abarth   img { width: 34px; }
  .top-page .brand-list ul li.fiat     img { width: 38px; }
  .top-page .brand-list ul li.cpo      img { width: 68px; }
  .top-page .brand-list ul li.dp       img { width: 152px; }
  .top-page .brand-list ul li.dcc      img { width: 37px; }
}

/* ニュース一覧 */
@media all {
  .top-page .news-list .inner {
    width: 100%;
    max-width: 1236px;
    margin: 0 auto;
    overflow: hidden;
    padding: 0 18px;
    padding-top: 60px;
}
  .top-page .news-list .inner .title {
    width: 100%;
    max-width: 250px;
    float: left;
  }
  .top-page .news-list .inner .title .en {
    font-size: 30px;
    line-height: 30px;
    font-weight: bold;
    padding-bottom: 4px;
  }
  .top-page .news-list .inner .title .jp {
    font-size: 14px;
    line-height: 14px;
    padding-bottom: 28px;
  }
  .top-page .news-list .inner ul {
    width: calc(100% - 250px);
    float: right;
    padding-top: 3px;
  }
  .top-page .news-list .inner ul li {
    border-bottom: solid 1px #DFE1E1;
    height: 97px;
    padding-left: 6px;
  }
  .top-page .news-list .inner ul li:first-child {
    border-top: solid 1px #DFE1E1;
    height: 98px;
  }
  .top-page .news-list .inner ul li a {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    height: 100%;
    font-size: 14px;
    text-decoration: none;
    color: #555555;
  }
  .top-page .news-list .inner ul li a .date {
    width: 115px;
    font-weight: bold;
  }
  .top-page .news-list .inner ul li a .name {
    width: calc(100% - 115px);
    line-height: 18px;
  }
  .top-page .news-list .inner .list-btn {
    width: 100%;
    max-width: 250px;
    float: left;
  }
  .top-page .news-list .inner .list-btn a {
    display: block;
    width: 100%;
    max-width: 153px;
    text-align: center;
    height: 28px;
    line-height: 28px;
    position: relative;
    font-size: 12px;
    text-decoration: none;
    color: white;
    background-color: #333333;
  }
  .top-page .news-list .inner .list-btn a::before {
    content: "";
    display: block;
    width: 13px;
    height: 1px;
    background-color: white;
    top: 15px;
    right: 12px;
    position: absolute;
  }
  .top-page .news-list .inner .list-btn a::after {
    content: "";
    display: block;
    width: 8px;
    height: 1px;
    background-color: white;
    transform: rotate(30deg);
    transform-origin: right bottom;
    position: absolute;
    top: 15px;
    right: 12px;
  }
}
@media screen and (max-width:767px) {
  .top-page .news-list .inner {
    padding-top: 27px;
    padding-bottom: 0;
  }
  .top-page .news-list .inner .title {
    float: none;
    max-width: none;
  }
  .top-page .news-list .inner ul {
    float: none;
    width: 100%;
    padding-top: 0;
  }
  .top-page .news-list .inner .title .en {
    font-size: 24px;
    text-align: center;
    line-height: 24px;
    padding-bottom: 3px;
  }
  .top-page .news-list .inner .title .jp {
    font-size: 12px;
    line-height: 12px;
    text-align: center;
    padding-bottom: 14px;
  }
  .top-page .news-list .inner ul li {
    height: auto;
    padding-left: 2px;
    padding-right: 9px;
  }
  .top-page .news-list .inner ul li:first-child {
    height: auto;
  }
  .top-page .news-list .inner ul li a {
    display: block;
    padding-top: 11px;
    padding-bottom: 8px;
    line-height: 20px;
  }
  .top-page .news-list .inner ul li a .date {
    width: 100%;
  }
  .top-page .news-list .inner ul li a .name {
    width: 100%;
    line-height: 20px;
  }
  .top-page .news-list .inner .list-btn {
    float: none;
    max-width: none;
    padding-top: 10px;
  }
  .top-page .news-list .inner .list-btn a {
    margin: 0 auto;
  }
  .top-page .news-list .inner .list-btn a::before {
    width: 11px;
  }
}

/* お客様第一主義 */
@media all {
  .top-page .forcustomer {
    background: rgb(210,210,210);
    background: linear-gradient(90deg, rgba(210,210,210,1) 0%, rgba(210,210,210,1) 50%, rgba(255,255,255,1) 50%, rgba(255,255,255,1) 100%);
    position: relative;
    margin-bottom: 60px;
  }
  .top-page .forcustomer .inner {
    width: 100%;
    max-width: 1400px;
    margin: 0 auto;
    padding-left: 100px;
    border-right: solid 100px #d2d2d2;
    border-top: solid 70px #d2d2d2;
    border-bottom: solid 70px #d2d2d2;
    padding-top: 140px;
    padding-bottom: 160px;
    background-color: white;
    /* position: relative; */
  }
  .top-page .forcustomer .inner .title {
    font-size: 26px;
    font-weight: bold;
    line-height: 29px;
    padding-bottom: 25px;
  }
  .top-page .forcustomer .inner .description {
    font-size: 16px;
    line-height: 34px;
    width: calc(50% + 55px);
  }
  .top-page .forcustomer .image {
    width: calc(50vw - 150px);
    position: absolute;
    bottom: -60px;
    right: 0;
  }
}
@media screen and (max-width:767px) {
  .top-page .forcustomer {
    background: #D2D2D2;
    padding: 22px 20px;
    position: relative;
    padding-bottom: 0;
  }
  .top-page .forcustomer .inner {
    border: none;
    padding: 40px 25px;
    border-bottom: solid 20px #D2D2D2;
  }
  .top-page .forcustomer .inner .title {
    font-size: 20px;
    line-height: 22px;
    text-align: center;
    padding-bottom: 17px;
  }
  .top-page .forcustomer .inner .description {
    width: 100%;
    font-size: 14px;
    line-height: 26px;
  }
  .top-page .forcustomer .image {
    margin-left: -20px;
    width: calc(100% + 40px);
    left: 0;
    position: static;
  }
}

/* グループ会社 */
@media all {
  .top-page .groupcompany {
    padding-top: 95px;
  }
  .top-page .groupcompany .inner {
    width: 100%;
    max-width: 1400px;
    margin: 0 auto;
    padding-right: 100px;
    padding-left: 100px;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    background-image: url('../img/map.png');
    background-size: 500px;
    background-repeat: no-repeat;
  }
  .top-page .groupcompany .inner .summary {
    width: 404px;
    padding-top: 104px;
  }
  .top-page .groupcompany .inner .summary .title .en {
    font-size: 30px;
    font-weight: bold;
    line-height: 33px;
    padding-bottom: 6px;
  }
  .top-page .groupcompany .inner .summary .title .jp {
    font-size: 14px;
    font-weight: bold;
    line-height: 15px;
    padding-bottom: 38px;
    color: #888888;
  }
  .top-page .groupcompany .inner .summary .subtitle {
    font-size: 16px;
    line-height: 32px;
    font-weight: bold;
    color: #C9151E;
  }
  .top-page .groupcompany .inner .summary .description {
    font-size: 14px;
    line-height: 32px;
  }
  .top-page .groupcompany .inner .summary .description .sp {
    display: none;
  }
  /* <!-- 23.08.11 ここから --> */
  .top-page .groupcompany .inner .summary .buttons {
    display: flex;
    justify-content: flex-start;
    flex-wrap: wrap;
    padding-top: 57px;
  }
  .top-page .groupcompany .inner .summary .button {
    width: 100%;
    max-width: 153px;
    margin-right: 15px;
  }
  .top-page .groupcompany .inner .summary .button a {
    display: block;
    width: 100%;
    max-width: 153px;
    text-align: center;
    height: 28px;
    line-height: 28px;
    position: relative;
    text-decoration: none;
    color: white;
    background-color: #333333;
    font-size: 14px;
    font-weight: bold;
  }
  /* <!-- 23.08.11 ここまで --> */
  .top-page .groupcompany .inner .summary .button a::before {
    content: "";
    display: block;
    width: 13px;
    height: 1px;
    background-color: white;
    top: 15px;
    right: 12px;
    position: absolute;
  }
  .top-page .groupcompany .inner .summary .button a::after {
    content: "";
    display: block;
    width: 8px;
    height: 1px;
    background-color: white;
    transform: rotate(30deg);
    transform-origin: right bottom;
    position: absolute;
    top: 15px;
    right: 12px;
  }
  .top-page .groupcompany .inner .group-list {
    width: 750px;
  }
  .top-page .groupcompany .inner .group-list ul li a {
    display: flex;
    justify-content: flex-start;
    flex-wrap: wrap;
    border-bottom: solid 1px #D5D6D6;
    padding-top: 24px;
    padding-bottom: 24px;
    color: #666666;
    text-decoration: none;
  }
  .top-page .groupcompany .inner .group-list ul li:first-child a {
    border-top: solid 1px #D5D6D6;
  }
  .top-page .groupcompany .inner .group-list ul li a .company {
    max-width: calc(100% - 390px);
    width: 100%;
  }
  .top-page .groupcompany .inner .group-list ul li.hondacars        a .company .logo { width: 206px; }
  .top-page .groupcompany .inner .group-list ul li.totobmw          a .company .logo { width: 139px; }
  .top-page .groupcompany .inner .group-list ul li.fivestartoto     a .company .logo { width: 206px; }
  .top-page .groupcompany .inner .group-list ul li.tricoloretoto    a .company .logo { width: 155px; }
  .top-page .groupcompany .inner .group-list ul li.shananbmw        a .company .logo { width: 155px; }
  .top-page .groupcompany .inner .group-list ul li.daiwaautomobiles a .company .logo { width: 203px; }
  .top-page .groupcompany .inner .group-list ul li a .brands {
    width: 100%;
    max-width: 390px;
  }
.top-page .groupcompany .inner .group-list ul li a .brands ul {
    display: flex;
    justify-content: flex-end;
    align-items: center;
    height: 100%;
  }
  .top-page .groupcompany .inner .group-list ul li a .brands ul li {
    margin-right: 50px;
  }
  .top-page .groupcompany .inner .group-list ul li a .company .name {
    font-size: 12px;
    padding-top: 5px;
  }  
}
@media screen and (max-width:1396px) {
  .top-page .groupcompany .inner .group-list {
    width: calc(100% - 434px);
  }
}
@media screen and (max-width:1200px) {
  .top-page .groupcompany {
    padding: 0;
  }
  .top-page .groupcompany .inner {
    padding: 0 20px;
    padding-bottom: 28px;
    max-width: 480px;
    background-size: contain;
    display: block;
  }
  .top-page .groupcompany .inner .summary {
    padding-top: 22px;
    width: 100%;
    padding-bottom: 27px;
  }
  .top-page .groupcompany .inner .summary .title .en {
    font-size: 20px;
    line-height: 22px;
    text-align: center;
  }
  .top-page .groupcompany .inner .summary .title .jp {
    font-size: 12px;
    text-align: center;
    color: #888888;
    padding-bottom: 16px;
  }
  .top-page .groupcompany .inner .summary .subtitle {
    line-height: 26px;
    text-align: center;
  }
  .top-page .groupcompany .inner .summary .description {
    line-height: 26px;
    text-align: center;
  }
  .top-page .groupcompany .inner .summary .description .sp {
    display: block;
  }
  /* <!-- 23.08.11 ここから --> */
  .top-page .groupcompany .inner .summary .buttons {
    justify-content: center;
    padding-top: 20px;
  }
  /*
  .top-page .groupcompany .inner .summary .button {
    padding-top: 20px;
  }
  */
  /* <!-- 23.08.11 ここまで --> */
  .top-page .groupcompany .inner .summary .button a {
    margin: 0 auto;
  }
  .top-page .groupcompany .inner .group-list {
    width: 100%;
  }
  .top-page .groupcompany .inner .group-list ul li a {
    display: block;
    text-align: center;
    padding-top: 15px;
    padding-bottom: 20px;
  }
  .top-page .groupcompany .inner .group-list ul li a .company {
    max-width: none;
  }
  .top-page .groupcompany .inner .group-list ul li:first-child a {
    border-top: solid 1px #D5D6D6;
  }
  .top-page .groupcompany .inner .group-list ul li a .company .logo {
    margin: 0 auto;
  }
  .top-page .groupcompany .inner .group-list ul li a .company .name {
    line-height: 14px;
    padding-top: 11px;
    padding-bottom: 18px;
  }
  .top-page .groupcompany .inner .group-list ul li a .brands {
    max-width: none;
  }
  .top-page .groupcompany .inner .group-list ul li a .brands ul {
    justify-content: center;
  }
  .top-page .groupcompany .inner .group-list ul li a .brands ul li {
    margin: 0 16px;
  }
}

/* バナー */
@media all {
  .top-page .banners {
    padding-top: 96px;
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
  }
  .top-page .banners a {
    display: block;
    width: calc(100% / 2);
  }
  .top-page .banners {
    display: block;
  }

  .top-page .banners .row {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
  }

  .top-page .banners .row.col2 a {
    width: calc(100% / 2);
  }
  .top-page .banners .row.col3 a {
    width: calc(100% / 3);
  }
}
@media screen and (max-width:767px) {
  .top-page .banners {
    padding-top: 0;
  }
  .top-page .banners a {
    width: 100%;
  }
  .top-page .banners .row.col2 a,
  .top-page .banners .row.col3 a {
      width: 100%;
  }
}

/* =========================================================================================================================================== */
/* 【ページ】
/* 名前     : グループについて - 各社紹介
/* セレクタ : .about-group-company
/* =========================================================================================================================================== */
@media all {
  .about-group-company #content .inner {
    max-width: 1060px;
  }
  .about-group-company h1 {
    text-align: center;
    color: #555555;
    font-weight: bold;
    padding-bottom: 31px;
    font-size: 28px;
    line-height: 31px;
  }
  .about-group-company .blk_brands {
  padding-bottom: 46px;
  }
  .about-group-company .blk_brands ul {
    display: flex;
    justify-content: center;
    align-items: center;
  }
  .about-group-company .blk_brands ul li {
    margin: 0 17.5px;
  }
  /* <!-- 23.08.11 ここから --> */
  .about-group-company .blk_button a {
    display: block;
    width: 100%;
    height: 28px;
    line-height: 28px;
    position: relative;
    font-size: 12px;
    text-decoration: none;
    color: white;
    background-color: #333333;
    text-align: left;
    padding-left: 10px;
    max-width: 134px;
    margin-left: 0;
    margin-top: 15px;
    margin-bottom: 15px;
  }
  /* <!-- 23.08.11 ここまで --> */
  .about-group-company .blk_button a::before {
    content: "";
    display: block;
    width: 13px;
    height: 1px;
    background-color: white;
    top: 15px;
    right: 20px;
    position: absolute;
  }
  .about-group-company .blk_button a::after {
    content: "";
    display: block;
    width: 8px;
    height: 1px;
    background-color: white;
    transform: rotate(30deg);
    transform-origin: right bottom;
    position: absolute;
    top: 15px;
    right: 20px;
  }
  .about-group-company section {
    padding-top: 95px;
  }
  .about-group-company section h2 {
    font-size: 28px;
    font-weight: bold;
    line-height: 38px;
    color: #C9151E;
    border-top: solid 1px #C9151E;
    text-align: center;
    padding-top: 28px;
    padding-bottom: 25px;
  }
  .about-group-company section .text {
    font-size: 16px;
    line-height: 26px;
    width: calc(100% - 30px);
    margin:  0 auto;
    max-width: 800px;
    padding-bottom: 25px;
  }
  .about-group-company section .image {
    width: calc(100% - 30px);
    margin: 0 auto;
    max-width: 517px;
  }
}
@media screen and (max-width:767px) {
  .about-group-company h1 {
    font-size: 20px;
    line-height: 24px;
    padding-bottom: 13px;
  }
  .about-group-company .blk_brands {
    padding-bottom: 25px;
  }
  .about-group-company section h2 {
    font-size: 20px;
    line-height: 26px;
    padding-top: 15px;
    padding-bottom: 22px;
  }
  .about-group-company section .text {
    font-size: 14px;
    line-height: 22px;
    padding-bottom: 14px;
  }
}

/* =========================================================================================================================================== */
/* 【ページフッター】
/* 名前     : グループについて - 各社紹介のフッター
/* セレクタ : #footer-groups
/* =========================================================================================================================================== */
@media all {
  #footer-groups ul {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
  }
  #footer-groups ul li {
    width: calc(100% / 6);
    background-size: cover;
    background-position: center;
  }
  #footer-groups ul li.hondacars        { background-image: url('../img/aboutgroup/hondacars/footer-image.png'); }
  #footer-groups ul li.totobmw          { background-image: url('../img/aboutgroup/totobmw/footer-image.png'); }
  #footer-groups ul li.fivestartoto     { background-image: url('../img/aboutgroup/fivestartoto/footer-image.png'); }
  #footer-groups ul li.tricoloretoto    { background-image: url('../img/aboutgroup/tricoloretoto/footer-image.png'); }
  #footer-groups ul li.shananbmw        { background-image: url('../img/aboutgroup/shonanbmw/footer-image.png'); }
  #footer-groups ul li.daiwaautomobiles { background-image: url('../img/aboutgroup/daiwaautomobiles/footer-image.png'); }
  #footer-groups ul li a {
    display: block;
    padding-top: 100%;
    position: relative;
    background-color: rgba(0,0,0,0.5);
    color: white;
  }
  #footer-groups ul li a .box {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    margin: auto;
    text-align: center;
    height: 54px;
  }
  #footer-groups ul li a .box .name {
    font-size: 16px;
    line-height: 18px;
    padding-bottom: 17px;
  }
  #footer-groups ul li a .box .button {
    font-size: 12px;
    line-height: 12px;
    width: 97px;
    margin: 0 auto;
    padding-bottom: 6px;
    border-bottom: solid 1px;
    padding-left: 6px;
    text-align: left;
    position: relative;
  }
  #footer-groups ul li a .box .button::before {
    content: "";
    width: 14px;
    height: 1px;
    display: block;
    background-color: wheat;
    position: absolute;
    bottom: -1px;
    right: 0;
    transform: rotate(30deg);
    transform-origin: right bottom;
  }
}
@media screen and (max-width:1024px) {
  #footer-groups ul li {
    width: calc(100% / 3);
  }
}
@media screen and (max-width:767px) {
  #footer-groups ul li {
    width: calc(100% / 2);
  }
}


/* =========================================================================================================================================== */
/* 【ページ】
/* 名前     : グループについて - 拠点一覧
/* セレクタ : .footer-groups-list
/* =========================================================================================================================================== */
@media all {
  .about-group-list #header-page.type2 {
    height: 820px;
    background: #555555;
  }
  .about-group-list #header-page.type2 .group-title {
    max-width: 1400px;
    z-index: 1;
    position: relative;
  }
  .about-group-list #header-page.type2 .title {
    max-width: 1400px;
    z-index: 1;
    position: relative;
  }

  /* マップ */
  #header-page .map {
    position: absolute;
    top: 38px;
    left: 0;
    right: 0;
    margin: auto;
    width: 100%;
    max-width: 1400px;
  }
  #header-page .map .menu {
    position: absolute;
    width: 100%;
    max-width: 235px;
    top: 232px;
    border: solid 1px #808080;
    z-index: 1;
  }
  #header-page .map .menu ul li {
    border-bottom: solid 1px #a4a4a4;
  }
  #header-page .map .menu ul li:last-child {
    border-bottom: none;
  }
  #header-page .map .menu ul li a {
    display: block;
    width: 100%;
    height: 54px;
    line-height: 54px;
    padding-left: 13px;
    background-color: #686868;
    text-decoration: none;
    font-size: 16px;
    font-weight: bold;
    color: white;
    position: relative;
  }
  #header-page .map .menu ul li a::before {
    content: "";
    display: block;
    width: 13px;
    height: 1px;
    background-color: white;
    top: 27px;
    right: 16px;
    position: absolute;
  }
  #header-page .map .menu ul li a::after {
    content: "";
    display: block;
    width: 8px;
    height: 1px;
    background-color: white;
    transform: rotate(30deg);
    transform-origin: right bottom;
    position: absolute;
    top: 27px;
    right: 16px;
  }
  #header-page .map .menu ul li a:hover {
    background-color: #c9151e;
    opacity: 1;
  }
  #header-page .map .image {
    position: absolute;
    width: 100%;
    max-width: 1100px;
    right: 0;
    top: 0;
  }
  #header-page .map .image ul {
    width: 100%;
    padding-top: calc((726 / 1100) * 100%);
    position: relative;
    background-image: url('../img/aboutgroup/grouplist/map_off.png');
    background-size: contain;
  }
  #header-page .map .image ul li {
    position: absolute;
    top: 0;
    z-index: -1;
  }
  #header-page .map .image ul li.show {
    z-index: auto;
  }



  .about-group-list #content {
    padding: 0;
  }
  .about-group-list #content .inner {
    width: calc(100% - 40px);
  }
  .about-group-list .group-shops article {
    padding-top: 60px;
    padding-bottom: 23px;
  }
  .about-group-list .group-shops article:nth-child(even) {
    background-color: #F4F4F4;
  }
  .about-group-list .group-shops article h2 {
    font-size: 24px;
    line-height: 26px;
    font-weight: bold;
    padding-bottom: 23px;
  }
  .about-group-list .group-shops article .shops ul {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
  }
  .about-group-list .group-shops article .shops ul::after {
    content: "";
    width: calc((100% - 48px) / 3);
  }
  .about-group-list .group-shops article .shops ul li {
    width: calc((100% - 48px) / 3);
    padding-bottom: 37px;
  }
  .about-group-list .group-shops article .shops ul li .brands {
    float: right;
    display: flex;
    padding-top: 17px;
  }
  .about-group-list .group-shops article .shops ul li .brands .brand {
    margin-left: 21px;
  }
  .about-group-list .group-shops article .shops ul li .brands .brand img {
    vertical-align: top;
  }
  .about-group-list .group-shops article .shops ul li .name {
    font-size: 16px;
    line-height: 20px;
    font-weight: bold;
    padding-top: 16px;
  }
  .about-group-list .group-shops article .shops ul li .zip {
    font-size: 14px;
    line-height: 20px;
    padding-top: 9px;
  }
  .about-group-list .group-shops article .shops ul li .address {
    font-size: 14px;
    line-height: 20px;
    padding-bottom: 10px;
  }
  .about-group-list .group-shops article .shops ul li .telephone {
    font-size: 18px;
    line-height: 20px;
    font-weight: bold;
    padding-bottom: 16px;
    position: relative;
    padding-left: 16px;
  }
  .about-group-list .group-shops article .shops ul li .telephone::before{
    content: "";
    background-image: url(../img/aboutgroup/grouplist/icon_tel.png);
    width: 16px;
    height: 16px;
    display: block;
    position: absolute;
    left: 0;
    top: 3px;
  }
  .about-group-list .group-shops article .shops ul li .buttons {
    display: flex;
    justify-content: start;
  }
  .about-group-list .group-shops article .shops ul li .buttons a {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100px;
    height: 28px;
    text-align: center;
    line-height: 28px;
    font-size: 12px;
    text-decoration: none;
    background-color: #333333;
    color: white;
    margin-right: 5px;
  }
  .about-group-list .group-shops article .shops ul li .buttons .map a::before {
    content: "";
    display: block;
    width: 12px;
    height: 12px;
    background-image: url(../img/aboutgroup/grouplist/icon_map_w.png);
    background-repeat: no-repeat;
    background-position: bottom;
    padding-right: 6px;
  }

  /* <!-- 23.08.11 ここから -->*/
  /* アイコン */
  .about-group-list .group-shops article .shops ul li .icons {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    flex-wrap: wrap;
  }

  .about-group-list .group-shops article .shops ul li .icons .left ul {
    display: flex;
    justify-content: flex-start;
    flex-wrap: wrap;
  }

  .about-group-list .group-shops article .shops ul li .icons .left ul li {
    width: auto;
    padding-right: 20px;
    padding-bottom: 0;
    padding-top: 18px;
  }
  .about-group-list .group-shops article .shops ul li .icons .left ul li:last-child {
    padding-right: 0;
  }


  .about-group-list .group-shops article .shops ul li .icons .right .edgms {
    width: 100%;
  }

  .about-group-list .group-shops article .shops ul li .icons .right .edgms img {
    display: block;
    padding-bottom: 6px;
  }
  .about-group-list .group-shops article .shops ul li .icons .right ul {
    display: flex;
    justify-content: flex-end;
    flex-wrap: wrap;
    padding-right: 10px;
  }

  .about-group-list .group-shops article .shops ul li .icons .right ul li {
    width: auto;
    padding-left: 20px;
    padding-bottom: 0;
  }
  /* <!-- 23.08.11 ここまで -->*/
}
@media screen and (max-width:1024px) {
  .about-group-list .group-shops article .shops ul li {
    width: calc((100% - 48px) / 2);
  }
}
@media screen and (max-width:767px) {
  .about-group-list #header-page.type2 {
    height: 422px;
  }

  /* マップ */
  #header-page .map {
    top: 14px;
    padding: 0 25px;
  }
  #header-page .map .menu {
    position: relative;
    top: 102px;
    max-width: none;
  }
  #header-page .map .menu ul li a {
    font-size: 14px;
    height: 38px;
    line-height: 38px;
  }
  #header-page .map .menu ul li a::before {
    top: 19px;
  }
  #header-page .map .menu ul li a::after {
    top: 19px;
  }
  #header-page .map .image {
    width: 163px;
    right: 25px;
  }
  #header-page .map .image ul {
    background-image: url('../img/aboutgroup/grouplist/m_map_off.png');
  }
  #header-page .map .image ul li {
    display: none;
  }
  .about-group-list .group-shops article .shops ul li {
    width: 100%;
  }
}


/* =========================================================================================================================================== */
/* 【ページ】
/* 名前     : 企業情報 - 社長メッセージ
/* セレクタ : .corporate-message
/* =========================================================================================================================================== */
@media all {
  .corporate-message .inner {
    overflow: hidden;
  }
  .corporate-message .message1 {
    font-size: 34px;
    font-weight: bold;
    line-height: 38px;
    color: #C9151E;
    padding-bottom: 12px;
    width: calc(100% - 542px);
  }
  .corporate-message .message2 {
    font-size: 24px;
    font-weight: bold;
    line-height: 26px;
    padding-bottom: 32px;
    width: calc(100% - 542px);
  }
  .corporate-message .message2 .sp {
    display: none;
  }
  .corporate-message .profile {
    float: right;
    margin-top: -55px;
    width: 480px;
  }
  .corporate-message .blk_text3 {
    float: left;
    width: calc(100% - 542px);
  }
  .corporate-message .position {
    width: calc(100% - 542px);
    padding-left: calc(100% - 722px);
  }
  .corporate-message .sign {
    width: calc(100% - 542px);
    padding-left: calc(100% - 722px);
    padding-top: 18px;
  }
}
@media screen and (max-width:1024px) {
  .corporate-message .message1 {
    width: 100%;
  }
  .corporate-message .message2 {
    width: 100%;
  }
  .corporate-message .blk_text3 {
    float: none;
    width: 100%;
  }
  .corporate-message .profile {
    float: none;
    width: 100%;
    max-width: 480px;
    margin: 0 auto;
  }
  .corporate-message .position {
    width: 100%;
    padding-left: calc(100% - 180px);
    padding-top: 22px;
  }
  .corporate-message .sign {
    width: 100%;
    padding-left: calc(100% - 180px);
    padding-top: 10px;
  }
}
@media screen and (max-width:767px) {
  .corporate-message .message1 {
    font-size: 22px;
    line-height: 24px;
    padding-bottom: 8px;
  }
  .corporate-message .message2 {
    font-size: 18px;
    line-height: 22px;
    padding-bottom: 17px;
  }
  .corporate-message .message2 .sp {
    display: block;
  }
}


/* =========================================================================================================================================== */
/* 【ページ】
/* 名前     : 企業情報 - 会社概要
/* セレクタ : .corporate-profile
/* =========================================================================================================================================== */
@media all {
  .corporate-profile .tbl_copmany {
    border-top: solid 1px #e6e6e6;
    padding-top: 0;
  }
  .corporate-profile .tbl_copmany .th {
    width: 270px;
    padding-top: 16px;
    padding-bottom: 14px;
    line-height: 30px;
    border-bottom: solid 1px #e6e6e6;
  }
  .corporate-profile .tbl_copmany .td {
    width: calc(100% - 270px);
    padding-top: 16px;
    padding-bottom: 14px;
    line-height: 30px;
    border-bottom: solid 1px #e6e6e6;
  }
  .corporate-profile .tbl_copmany > div:nth-last-child(-n+2) {
    border-bottom: solid 1px #e6e6e6;
  }
  .corporate-profile .tbl_copmany .td a {
    color: #006dac;
    text-decoration: none;
  }
}
@media screen and (max-width:767px) {
  .corporate-profile .tbl_copmany .th {
    width: 100%;
    padding-bottom: 7px;
    border-bottom: none;
    line-height: 15px;
  }
  .corporate-profile .tbl_copmany .td {
    width: 100%;
    padding-top: 0;
    padding-bottom: 10px;
    line-height: 20px;
  }
  .corporate-profile .tbl_copmany > div:nth-last-child(2) {
    border-bottom: none;
  }
}


/* =========================================================================================================================================== */
/* 【ページ】
/* 名前     : 企業情報 - 沿革
/* セレクタ : .corporate-history
/* =========================================================================================================================================== */
@media all {
  .corporate-history .tbl_copmany {
    padding-top: 0;
    border-top: solid 1px #e6e6e6;
  }
  .corporate-history .tbl_copmany .th {
    width: 154px;
    line-height: 30px;
    padding-top: 15px;
    padding-bottom: 14px;
    border-bottom: solid 1px #e6e6e6;
  }
  .corporate-history .tbl_copmany .td {
    width: calc(100% - 154px);
    line-height: 30px;
    padding-top: 15px;
    padding-bottom: 14px;
    border-bottom: solid 1px #e6e6e6;
  }
  .corporate-history .tbl_copmany .td span {
    display: block;
  }
}
@media screen and (max-width:767px) {
  .corporate-history .tbl_copmany .th {
    width: 100%;
    padding-bottom: 7px;
    line-height: 15px;
    border-bottom: none;
    padding-top: 14px;
  }
  .corporate-history .tbl_copmany .td {
    width: 100%;
    padding-top: 0;
    line-height: 20px;
    padding-bottom: 10px;
  }
  .corporate-history .tbl_copmany .td span {
    padding-bottom: 15px;
  }
}


/* =========================================================================================================================================== */
/* 【ページ】
/* 名前     : 企業情報 - 企業理念
/* セレクタ : .corporate-vision
/* =========================================================================================================================================== */
@media all {
  .corporate-vision .vision {
    padding: 7px;
    position: relative;
    margin-top: 43px;
  }
  .corporate-vision .vision .inner {
    background-color: #F1F1F1;
  }
  .corporate-vision .vision .inner .bg-top,
  .corporate-vision .vision .inner .bg-bottom {
    width: 100%;
  }
  .corporate-vision .vision .inner .bg-top::before,
  .corporate-vision .vision .inner .bg-top::after,
  .corporate-vision .vision .inner .bg-bottom::before,
  .corporate-vision .vision .inner .bg-bottom::after {
    content: "";
    width: 29px;
    height: 29px;
    display: block;
    position: absolute;
    background-color: #AFAFAF;
    z-index: -1;
  }
  .corporate-vision .vision .inner .bg-top::before {
    left: 0;
    top: 0;
  }
  .corporate-vision .vision .inner .bg-top::after {
    right: 0;
    top: 0;
  }
  .corporate-vision .vision .inner .bg-bottom::before {
    left: 0;
    bottom: 0;
  }
  .corporate-vision .vision .inner .bg-bottom::after {
    right: 0;
    bottom: 0;
  }
  .corporate-vision .vision .inner .title {
    font-size: 30px;
    font-weight: bold;
    text-align: center;
    line-height: 33px;
    padding-top: 69px;
    color: #C9151E;
  }
  .corporate-vision .vision .inner .text {
    font-size: 28px;
    line-height: 52px;
    display: flex;
    justify-content: center;
    padding-top: 30px;
    padding-bottom: 66px;
  }

  .corporate-vision .charter {
    padding-top: 75px;
    width: 100%;
    max-width: 490px;
    margin: 0 auto;
  }
  .corporate-vision .charter .title {
    font-size: 28px;
    line-height: 29px;
    text-align: center;
    font-weight: bold;
    max-width: 190px;
    margin: 0 auto;
  }
  .corporate-vision .charter .subtitle {
    font-size: 18px;
    text-align: center;
    font-weight: bold;
    line-height: 24px;
    max-width: 190px;
    margin: 0 auto;
    padding-bottom: 27px;
    border-bottom: solid 1px #646464;
  }
  .corporate-vision .charter ul {
    padding-top: 30px;
    padding-bottom: 44px;
    counter-reset: count;
  }
  .corporate-vision .charter ul li {
    counter-increment: count;
    position: relative;
    padding-left: 57px;
    padding-bottom: 25px;
  }
  .corporate-vision .charter ul li::before {
    content: counter(count);
    display: block;
    position: absolute;
    width: 35px;
    height: 35px;
    border-radius: 50%;
    background-color: #7D7D7D;
    font-size: 24px;
    color: white;
    text-align: center;
    line-height: 35px;
    left: 0;
  }
  .corporate-vision .charter ul li div {
    font-size: 24px;
    line-height: 35px;
  }
  .corporate-vision .charter ul li div.right {
    text-align: right;
  }
}
@media screen and (max-width:767px) {
  .corporate-vision .blk_text2 {
    line-height: 22px;
  }
  .corporate-vision .vision {
    padding: 3px;
  }
  .corporate-vision .vision .inner .title {
    font-size: 20px;
    line-height: 22px;
    padding-top: 49px;
  }
  .corporate-vision .vision .inner .text {
    font-size: 18px;
    line-height: 32px;
    padding: 0 15px;
    padding-top: 12px;
    padding-bottom: 49px;
  }
  
  .corporate-vision .charter .title {
    font-size: 22px;
    line-height: 24px;
  }
  .corporate-vision .charter .subtitle {
    font-size: 14px;
    line-height: 21px;
    padding-bottom: 11px;
  }
  .corporate-vision .charter ul {
    padding-top: 25px;
  }
  .corporate-vision .charter ul li {
    padding-left: 32px;
    padding-bottom: 17px;
  }
  .corporate-vision .charter ul li div {
    font-size: 16px;
    line-height: 25px;
  }
  .corporate-vision .charter ul li::before {
    font-size: 16px;
    line-height: 25px;
    width: 25px;
    height: 25px;
  }
  .corporate-vision .charter {
    max-width: 330px;
  }
}


/* =========================================================================================================================================== */
/* 【ページ】
/* 名前     : 企業情報 - 50年あゆみ
/* セレクタ : .corporate-years_history
/* =========================================================================================================================================== */
@media all {
  .years_history article {
    padding-left: 134px;
    position: relative;
    display: flex;
    padding-bottom: 60px;
    justify-content: space-around;
    flex-wrap: wrap;
    padding-top: 25px;
  }
  .years_history article .year {
    width: 77px;
    height: 77px;
    border-radius: 50%;
    background-color: #BF0000;
    display: flex;
    justify-content: center;
    align-items: center;
    position: absolute;
    left: 0;
    top: 0;
  }
  .years_history article .year .box .number {
    font-size: 20px;
    line-height: 20px;
    font-weight: bold;
    color: white;
    text-align: center;
  }
  .years_history article .year .box .unit {
    font-size: 16px;
    font-weight: bold;
    color: white;
    text-align: center;
    line-height: 20px;
  }
  .years_history article .year::after {
    content: "";
    display: block;
    width: 0;
    height: 0;
    border-left: solid 16px #BF0000;
    border-top: solid 9px transparent;
    border-bottom: solid 9px transparent;
    position: absolute;
    right: -13px;
    top: 29.5px;
  }
  .years_history article::before {
    content: "";
    position: absolute;
    width: 9px;
    height: 100%;
    background-color: #F1F1F1;
    z-index: -1;
    left: 35px;
  }
  .years_history article .w310 {
    width: 100%;
    max-width: 310px;
    flex-shrink: 0;
  }
  .years_history article > div:not(.year) {
    margin-right: 38px;
  }
  .years_history article > div:last-child {
    margin-right: 0;
  }
  .years_history article .text {
    flex: 1 1 0%;
  }
  .years_history article .text .title {
    font-size: 24px;
    font-weight: bold;
    line-height: 26px;
    padding-bottom: 13px;
  }
  .years_history article .text .body {
    font-size: 16px;
    line-height: 24px;
  }
  .years_history article .wfull {
    width: 100%;
    display: flex;
    justify-content: space-between;
    padding-top: 35px;
  }
  .years_history article .wfull .p50 {
    width: calc((100% - 37px) / 2);
  }
}
@media screen and (max-width: 1139px) {
  .years_history article .order1 { order: 1; }
  .years_history article .order2 { order: 2; }
  .years_history article .order3 { order: 3; }
  .years_history article {
      padding-left: 64px;
      padding-bottom: 45px;
      padding-top: 15px;
  }
  .years_history article::before {
      width: 5px;
      left: 22px;
  }
  .years_history article .year {
      width: 50px;
      height: 50px;
  }
  .years_history article .year::after {
      border-left-width: 10px;
      border-top-width: 6px;
      border-bottom-width: 6px;
      right: -7px;
      top: 19px;
  }
  .years_history article .year .box .number {
      font-size: 14px;
      line-height: 16px;
  }
  .years_history article .year .box .unit {
      font-size: 14px;
      line-height: 16px;
  }
  .years_history article > div:not(.year) {
      margin-right: 0;
  }
  .years_history article .text {
      width: 100%;
      flex: 0 1 auto;
      padding-bottom: 16px;
  }
  .years_history article .w310 {
      max-width: none;
      padding-bottom: 16px;
  }
  .years_history article .w310 img {
      width: 100%;
      max-width: 310px;
      margin: 0 auto;
      display: block;
  }
  .years_history article .text .title {
      font-size: 18px;
      line-height: 22px;
      padding-bottom: 8px;
  }
  .years_history article .text .body {
      font-size: 14px;
      line-height: 20px;
  }
  .years_history article .wfull {
    display: block;
    padding-top: 0;
  }
  .years_history article .wfull .p50 {
    width: 100%;
    display: block;
    max-width: 310px;
    margin: 0 auto;
    padding-bottom: 16px;
  }
}


/* =========================================================================================================================================== */
/* 【ページ】
/* 名前     : ニュース - ニュース詳細
/* セレクタ : .news-template
/* =========================================================================================================================================== */
@media all {
  .news-template #content .inner {
    max-width: 980px;
  }

  .news-template #content .date {
    font-size: 16px;
    line-height: 16px;
    padding-bottom: 10px;
  }
  .news-template #content .title {
    font-size: 26px;
    font-weight: bold;
    line-height: 34px;
    padding-bottom: 12px;
    border-bottom: solid 2px #333333;
    margin-bottom: 25px;
  }

  /* コンテンツ幅 */
  .news-template #content .w700 {
    width: 100%;
    max-width: 700px;
    margin-left: auto;
    margin-right: auto;
  }
  .news-template #content .w875 {
    width: 100%;
    max-width: 875px;
    margin-left: auto;
    margin-right: auto;
  }
  .news-template #content .w660-l {
    width: 100%;
    max-width: 660px;
  }

  /* テキスト */
  .news-template #content .text {
    font-size: 16px;
    line-height: 22px;
  }
  .news-template #content .text .red {
    color: #C9151E;
  }
  .news-template #content .text.center {
    text-align: center;
  }
  .news-template #content .text.right {
    text-align: right;
  }
  .news-template #content .text.large {
    font-size: 18px;
    line-height: 30px;
    font-weight: bold;
  }
  .news-template #content .small {
    font-size: 14px;
    line-height: 18px;
  }

  /* 画像 */
  .news-template #content .image.col2 {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  .news-template #content .image.col2 img {
    width: calc((100% - 30px) / 2);
  }
  .news-template #content .w-auto {
    width: 100%;
    text-align: center;
  }
  .news-template #content .w-auto img {
    width: auto;
    max-width: 100%;
  }
  .news-template #content .w-auto-l {
    width: 100%;
  }
  .news-template #content .w-auto-l img {
    width: auto;
    max-width: 100%;
  }

  /* リスト */
  .news-template #content .list {
    font-size: 20px;
    font-weight: bold;
    line-height: 32px;
  }
  .news-template #content .list ul li {
    padding-left: 27px;
    position: relative;
  }
  .news-template #content .list ul li.red {
    color: #C9151E;
  }
  .news-template #content .list ul li::before {
    content: "○";
    position: absolute;
    left: 1px;
  }
  /* リスト2 */
  .news-template #content .list2 ul {
    counter-reset: index;
    font-size: 18px;
    font-weight: bold;
    line-height: 30px;
  }
  .news-template #content .list2 ul li {
    counter-increment: index;
    position: relative;
    padding-left: 30px;
  }
  .news-template #content .list2 ul li::before {
    content: counter(index) ". ";
    position: absolute;left: 0;
  }
  .news-template #content .list2 ul li .sub {
    font-weight: normal;
  }
  /* リスト2 */
  .news-template #content .list3 ul {
    font-size: 16px;
    line-height: 22px;
  }
  .news-template #content .list3 ul li {
    padding-left: 22px;
    position: relative;
    padding-bottom: 8px;
  }
  .news-template #content .list3 ul li::before {
    content: "●";
    position: absolute;
    left: 0;
  }

  /* 注意事項リスト */
  .news-template #content .list-note {
    font-size: 14px;
    line-height: 18px;
  }
  .news-template #content .list-note ul li {
    padding-left: 14px;
    position: relative;
  }
  .news-template #content .list-note ul li::before {
    content: "※";
    position: absolute;
    left: 0;
  }
  .news-template #content .list-note ul li.red {
    color: #C9151E;
  }

  /* ボックス */
  .news-template #content .box {
    background-color: #F1F1F1;
    border: solid 1px #C4C4C4;
    padding: 43px 15px;
  }

  /* テーブル */
  .news-template #content .table {
    display: flex;
    justify-content: flex-start;
    flex-wrap: wrap;
    border-top: solid 1px #E6E6E6;
  }
  .news-template #content .table .th {
    width: 210px;
    font-size: 14px;
    font-weight: bold;
    padding-left: 22px;
    padding-right: 20px;
    line-height: 20px;
    padding-top: 17px;
    padding-bottom: 17px;
    border-bottom: solid 1px #E6E6E6;
    background-color: #6F6F6F;
    color: white;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
  }
  .news-template #content .table .th .small {
    font-size: 12px;
    font-weight: normal;
  }
  .news-template #content .table .td {
    width: calc(100% - 210px);
    border-bottom: solid 1px #E6E6E6;
    font-size: 16px;
    line-height: 22px;
    padding-top: 16px;
    padding-bottom: 16px;
    padding-left: 16px;
  }
  .news-template #content .table .td a {
    color: #006DAC;
  }
  .news-template #content .table .td a.tel {
    font-size: 24px;
    font-weight: bold;
    color: #C9151E;
    text-decoration: none;
}
  .news-template #content .table .td .note ul li {
    padding-left: 16px;
    position: relative;
    font-size: 14px;
  }
  .news-template #content .table .td .note ul li::before {
    content: "※";
    position: absolute;
    left: 0;
  }
  .news-template #content .table .td .square ul li {
    padding-left: 16px;
    position: relative;
  }
  .news-template #content .table .td .square ul li::before {
    content: "■";
    position: absolute;
    left: 0;
  }


  /* テーブル2 */
  .news-template #content .table2 {
    display: flex;
    justify-content: flex-start;
    flex-wrap: wrap;
    border-top: solid 1px #E6E6E6;
  }
  .news-template #content .table2 .th {
    font-size: 14px;
    font-weight: bold;
    padding-left: 22px;
    padding-right: 20px;
    line-height: 20px;
    padding-top: 17px;
    padding-bottom: 17px;
    border-right: solid 1px #FFFFFF;
    background-color: #6F6F6F;
    color: white;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
  }
  .news-template #content .table2 div:nth-child(3n) {
    border-right: none;
  }
  .news-template #content .table2 .td {
    font-size: 16px;
    padding-left: 22px;
    padding-right: 20px;
    line-height: 22px;
    padding-top: 17px;
    padding-bottom: 17px;
    border-right: solid 1px #E6E6E6;
    border-bottom: solid 1px #E6E6E6;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
  }

  .news-template #content .table2 .name {
    width: 30%;
  }
  .news-template #content .table2 .new {
    width: 30%;
  }
  .news-template #content .table2 .position {
    width: 40%;
  }



  /* テーブル */
  .news-template #content .iframe {
    position: relative;
    padding-top: calc(100% * 9 / 16);
  }
  .news-template #content .iframe iframe {
      position: absolute;
      width: 100%;
      height: 100%;
      top: 0;
      left: 0;
  }

}
@media screen and (max-width:767px) {
  .news-template #content .date {
    font-size: 14px;
    line-height: 14px;
    padding-bottom: 8px;
  }

  /* テキスト */
  .news-template #content .title {
    font-size: 18px;
    line-height: 22px;
    padding-bottom: 10px;
    border-bottom: solid 2px #333333;
    margin-bottom: 18px;
  }
  .news-template #content .text {
    font-size: 14px;
    line-height: 20px;
  }
  .news-template #content .text.large {
    font-size: 16px;
    line-height: 24px;
  }
  .news-template #content .small {
    font-size: 12px;
    line-height: 18px;
  }

  /* 画像 */
  .news-template #content .image.col2 img {
    width: 100%;
    margin-bottom: 18px;
  }

  /* リスト */
  .news-template #content .list {
    font-size: 16px;
    line-height: 32px;
  }

  /* 注意事項リスト */
  .news-template #content .list-note {
    font-size: 12px;
    line-height: 18px;
  }

  /* ボックス */
  .news-template #content .box {
    padding-top: 32px;
    padding-bottom: 32px;
  }

  /* テーブル */
  .news-template #content .table .th {
    width: 100%;
    line-height: 16px;
    font-size: 12px;
    padding-left: 14px;
    padding-top: 9px;
    padding-bottom: 9px;
  }
  .news-template #content .table .td {
    width: 100%;
    padding-left: 13px;
    padding-right: 13px;
    font-size: 14px;
    padding-top: 18px;
    padding-bottom: 18px;
  }
  .news-template #content .table .td .note ul li {
    font-size: 12px;
  }
  .news-template #content .table .td a.tel {
      font-size: 20px;
  }


  /* テーブル2 */
  .news-template #content .table2 .th {
    padding-left: 13px;
    padding-right: 13px;
  }
  .news-template #content .table2 .td {
    padding-left: 13px;
    padding-right: 13px;
  }
  .news-template #content .table2 .name {
    width: 35%;
  }

  .news-template #content .table2 .new {
    width: 19%;
  }

  .news-template #content .table2 .position {
    width: 46%;
  }
}

/* <!-- 23.06.02 ここから --> */
/* =========================================================================================================================================== */
/* 【ページ】
/* 名前     : サスティナビリティ
/* セレクタ : .sustinability
/* =========================================================================================================================================== */
@media all {
  .sustinability #content {
    padding-left: 0;
    padding-right: 0;
  }


  .sustinability #content section {
      padding-left: 25px;
      padding-right: 25px;
  }


  .sustinability .content-header h2 {
    text-align: center;
    padding-bottom: 20px;
  }
  .sustinability .content-header .blk_text4 {
      text-align: center;
      padding-bottom: 43px;
  }


  .sustinability .content-header .page-menu ul {
      display: flex;
      justify-content: center;
      flex-wrap: wrap;
  }
  .sustinability .content-header .page-menu ul li {
      width: calc((100% - 24px) / 3);
      max-width: 276px;
      height: 38px;
      margin: 0 6px;
  }
  .sustinability .content-header .page-menu ul li a {
      display: flex;
      width: 100%;
      height: 100%;
      justify-content: center;
      align-items: center;
      background-color: #939393;
      border: solid 1px #c3c3c3;
      color: #FFFFFF;
      text-decoration: none;
  }


  .sustinability .content-box {
      padding-top: 80px;
  }
  .sustinability .content-box:nth-child(odd) {
      background-color: #F4F4F4;
  }
  .sustinability .content-box h2 {
      width: 100%;
      height: 95px;
      display: flex;
      justify-content: center;
      align-items: center;
      background-color: #222222;
      color: #ffffff;
      font-size: 30px;
      line-height: 34px;
      text-align: center;
      /* padding: 13px 0px; */
      margin-bottom: 73px;
      padding-bottom: 0;
  }
  .sustinability .content-box h2 span {
      font-size: 26px;
  }
  .sustinability .content-box .description {
      text-align: center;
      font-size: 24px;
      line-height: 34px;
      font-weight: bold;
      padding-bottom: 45px;
      margin-top: -44px;
  }
  .sustinability .content-box .grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-template-rows: auto auto auto 1fr;
    column-gap: 60px;
    padding-bottom: 90px;
  }
  .sustinability .content-box .grid > *{
      -ms-grid-row-align: flex-start;
      align-self: flex-start;
  }
  .sustinability .content-box .grid h3 {
      grid-column: 1/2;
      border-top: solid 1px #c9151e;
      font-size: 22px;
      line-height: 30px;
      font-weight: bold;
      padding-top: 19px;
      padding-bottom: 13px;
  }
  .sustinability .content-box .grid h3 span {
      color: #c9151e;
  }
  .sustinability .content-box .grid figure {
      grid-column: 2/3;
      grid-row: 1/5;
  }
  .sustinability .content-box .grid .blk_text5 {
      grid-column: 1/2;
      padding-bottom: 24px;
  }
  .sustinability .content-box .grid.reverse .blk_note {
      font-size: 14px;
      padding-bottom: 30px;
  }
  .sustinability .content-box .grid.reverse .blk_note ul li {
      position: relative;
      padding-left: 10px;
  }
  .sustinability .content-box .grid.reverse .blk_note ul li::before {
      content: "";
      display: block;
      width: 6px;
      height: 6px;
      background-color: #555555;
      border-radius: 50%;
      position: absolute;
      left: 0;
      top: 9px;
  }
  .sustinability .content-box .grid .sdgs_icon {
    grid-column: 1/2;
  }
  .sustinability .content-box .grid .sdgs_icon ul {
      display: flex;
      justify-content: flex-start;
      flex-wrap: wrap;
  }
  .sustinability .content-box .grid .sdgs_icon ul li {
      width: 80px;
      margin-right: 15px;
  }
  /* 0628廣川追加 */
  .sustinability .content-box .grid .blk_note {
      font-size: 14px;
      padding-bottom: 30px;
  }
  /* <!-- 23.09.18 ここから --> */
  .sustinability .content-box .grid .blk_note .title {
    font-size: 12px;
    font-weight: bold;
    line-height: 24.5px;
  }
  .sustinability .content-box .grid .blk_note ul:not(:last-child) {
    padding-bottom: 24.5px;
  }
  .sustinability .content-box .grid .blk_note ul li {
      position: relative;
      padding-left: 10px;
      line-height: 20px;
      padding-top: 2px;
      padding-bottom: 2.5px;
  }
  /* <!-- 23.09.18 ここまで --> */
  .sustinability .content-box .grid .blk_note ul li::before {
      content: "";
      display: block;
      width: 6px;
      height: 6px;
      background-color: #555555;
      border-radius: 50%;
      position: absolute;
      left: 0;
      top: 9px;
  }

  /* 偶数 */
  .sustinability .content-box .grid.reverse h3 {
      grid-column: 2/3;
  }
  .sustinability .content-box .grid.reverse figure {
      grid-column: 1/2;
  }
  .sustinability .content-box .grid.reverse .blk_text5 {
      grid-column: 2/3;
  }
  .sustinability .content-box .grid.reverse .sdgs_icon {
    grid-column: 2/3;
  }
}
@media screen and (max-width:767px) {
  .sustinability .content-header h2 {
      font-size: 22px;
      line-height: 28px;
      padding-bottom: 15px;
  }

  .sustinability .content-header .blk_text4 {
      text-align: left;
      padding-bottom: 23px;
  }

  .sustinability .content-header .page-menu ul {
      display: block;
  }

  .sustinability .content-header .page-menu ul li {
      width: 100%;
      max-width: 243px;
      margin: 0 auto;
      height: 32px;
      margin-bottom: 13px;
  }

  .sustinability .content-header .page-menu ul li a {
      font-size: 14px;
  }

  .sustinability .content-box {
      padding-top: 40px;
  }

  .sustinability .content-box h2 {
      height: 63px;
      font-size: 20px;
      line-height: 24px;
      margin-bottom: 40px;
  }

  .sustinability .content-box h2 span {
      font-size: 18px;
  }

  .sustinability .content-box .description {
      font-size: 18px;
      line-height: 24px;
      margin-top: -20px;
      padding-bottom: 28px;
  }

  .sustinability .content-box .grid {
      display: block;
      padding-bottom: 50px;
  }

  .sustinability .content-box .grid h3 {
      font-size: 18px;
      line-height: 22px;
      padding-top: 15px;
      padding-bottom: 20px;
  }

  .sustinability .content-box .grid figure {
      padding-bottom: 21px;
  }

  .sustinability .content-box .grid .blk_text5 {
  }

  .sustinability .content-box .grid .sdgs_icon ul li {
      width: 66px;
      margin-right: 12px;
  }
}
/* <!-- 23.06.02 ここまで --> */